{
  "name": "nutanix",
  "displayName": "Nutanix",
  "version": "0.11.0",
  "description": "A Pulumi package for creating and managing Nutanix cloud resources.",
  "keywords": [
    "pulumi",
    "nutanix",
    "category/cloud"
  ],
  "homepage": "https://github.com/pierskarsenbarg/pulumi-nutanix",
  "license": "Apache-2.0",
  "attribution": "This Pulumi package is based on the [`nutanix` Terraform Provider](https://github.com/terraform-providers/terraform-provider-nutanix).",
  "repository": "https://github.com/pierskarsenbarg/pulumi-nutanix",
  "logoUrl": "https://raw.githubusercontent.com/pierskarsenbarg/pulumi-nutanix/main/docs/nutanix-logo.png",
  "pluginDownloadURL": "github://api.github.com/pierskarsenbarg/pulumi-nutanix",
  "publisher": "Piers Karsenbarg",
  "meta": {
    "moduleFormat": "(.*)(?:/[^/]*)"
  },
  "language": {
    "csharp": {
      "packageReferences": {
        "Pulumi": "3.*"
      },
      "compatibility": "tfbridge20",
      "rootNamespace": "PiersKarsenbarg"
    },
    "go": {
      "importBasePath": "github.com/pierskarsenbarg/pulumi-nutanix/sdk/go/nutanix",
      "generateResourceContainerTypes": true,
      "generateExtraInputTypes": true
    },
    "nodejs": {
      "packageName": "@pierskarsenbarg/nutanix",
      "packageDescription": "A Pulumi package for creating and managing Nutanix cloud resources.",
      "readme": "> This provider is a derived work of the [Terraform Provider](https://github.com/terraform-providers/terraform-provider-nutanix)\n> distributed under [MPL 2.0](https://www.mozilla.org/en-US/MPL/2.0/). If you encounter a bug or missing feature,\n> first check the [`pulumi-nutanix` repo](https://github.com/pierskarsenbarg/pulumi-nutanix/issues); however, if that doesn't turn up anything,\n> please consult the source [`terraform-provider-nutanix` repo](https://github.com/terraform-providers/terraform-provider-nutanix/issues).",
      "dependencies": {
        "@pulumi/pulumi": "^3.0.0"
      },
      "devDependencies": {
        "@types/google-protobuf": "^3.15.12",
        "@types/mime": "^2.0.0",
        "@types/node": "^10.0.0"
      },
      "compatibility": "tfbridge20",
      "disableUnionOutputTypes": true
    },
    "python": {
      "requires": {
        "pulumi": ">=3.0.0,<4.0.0"
      },
      "readme": "> This provider is a derived work of the [Terraform Provider](https://github.com/terraform-providers/terraform-provider-nutanix)\n> distributed under [MPL 2.0](https://www.mozilla.org/en-US/MPL/2.0/). If you encounter a bug or missing feature,\n> first check the [`pulumi-nutanix` repo](https://github.com/pierskarsenbarg/pulumi-nutanix/issues); however, if that doesn't turn up anything,\n> please consult the source [`terraform-provider-nutanix` repo](https://github.com/terraform-providers/terraform-provider-nutanix/issues).",
      "compatibility": "tfbridge20",
      "pyproject": {}
    }
  },
  "config": {
    "variables": {
      "endpoint": {
        "type": "string",
        "description": "URL for Nutanix Prism (e.g IP or FQDN for cluster VIP\nnote, this is never the data services VIP, and should not be an\nindividual CVM address, as this would cause calls to fail during\ncluster lifecycle management operations, such as AOS upgrades."
      },
      "foundationEndpoint": {
        "type": "string",
        "description": "endpoint for foundation VM (eg. Foundation VM IP)"
      },
      "foundationPort": {
        "type": "string",
        "description": "Port for foundation VM"
      },
      "insecure": {
        "type": "boolean",
        "description": "Explicitly allow the provider to perform \"insecure\" SSL requests. If omitted,default value is <span pulumi-lang-nodejs=\"`false`\" pulumi-lang-dotnet=\"`False`\" pulumi-lang-go=\"`false`\" pulumi-lang-python=\"`false`\" pulumi-lang-yaml=\"`false`\" pulumi-lang-java=\"`false`\">`false`</span>"
      },
      "ndbEndpoint": {
        "type": "string",
        "description": "endpoint for Era VM (era ip)"
      },
      "ndbPassword": {
        "type": "string"
      },
      "ndbUsername": {
        "type": "string"
      },
      "password": {
        "type": "string",
        "description": "Password for provided user name."
      },
      "port": {
        "type": "string",
        "description": "Port for Nutanix Prism."
      },
      "proxyUrl": {
        "type": "string"
      },
      "sessionAuth": {
        "type": "boolean",
        "description": "Use session authentification instead of basic auth for each request"
      },
      "username": {
        "type": "string",
        "description": "User name for Nutanix Prism. Could be\nlocal cluster auth (e.g. 'admin') or directory auth."
      },
      "waitTimeout": {
        "type": "integer",
        "description": "Set if you know that the creation o update of a resource may take long time (minutes)"
      }
    }
  },
  "types": {
    "nutanix:index/AccessControlPolicyCategory:AccessControlPolicyCategory": {
      "properties": {
        "name": {
          "type": "string",
          "description": "- (Optional) Name of the Access Control Policy.\n"
        },
        "value": {
          "type": "string",
          "description": "- value of the key.\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "name",
            "value"
          ]
        }
      }
    },
    "nutanix:index/AccessControlPolicyContextFilterList:AccessControlPolicyContextFilterList": {
      "properties": {
        "entityFilterExpressionLists": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FAccessControlPolicyContextFilterListEntityFilterExpressionList:AccessControlPolicyContextFilterListEntityFilterExpressionList"
          },
          "description": "A list of Entity filter expressions.\n"
        },
        "scopeFilterExpressionLists": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FAccessControlPolicyContextFilterListScopeFilterExpressionList:AccessControlPolicyContextFilterListScopeFilterExpressionList"
          },
          "description": "- (Optional) Filter the scope of an Access Control Policy.\n"
        }
      },
      "type": "object",
      "required": [
        "entityFilterExpressionLists"
      ],
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "entityFilterExpressionLists",
            "scopeFilterExpressionLists"
          ]
        }
      }
    },
    "nutanix:index/AccessControlPolicyContextFilterListEntityFilterExpressionList:AccessControlPolicyContextFilterListEntityFilterExpressionList": {
      "properties": {
        "leftHandSideEntityType": {
          "type": "string",
          "description": "- (Optional)  The LHS of the filter expression - the entity type.\n"
        },
        "operator": {
          "type": "string",
          "description": "- (Required) The operator in the filter expression.\n"
        },
        "rightHandSide": {
          "$ref": "#/types/nutanix:index%2FAccessControlPolicyContextFilterListEntityFilterExpressionListRightHandSide:AccessControlPolicyContextFilterListEntityFilterExpressionListRightHandSide",
          "description": "- (Required) The right hand side (RHS) of an scope expression.\n"
        }
      },
      "type": "object",
      "required": [
        "operator",
        "rightHandSide"
      ],
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "leftHandSideEntityType",
            "operator",
            "rightHandSide"
          ]
        }
      }
    },
    "nutanix:index/AccessControlPolicyContextFilterListEntityFilterExpressionListRightHandSide:AccessControlPolicyContextFilterListEntityFilterExpressionListRightHandSide": {
      "properties": {
        "categories": {
          "$ref": "#/types/nutanix:index%2FAccessControlPolicyContextFilterListEntityFilterExpressionListRightHandSideCategories:AccessControlPolicyContextFilterListEntityFilterExpressionListRightHandSideCategories",
          "description": "- (Optional) The category values represented as a dictionary of key > list of values.\n"
        },
        "collection": {
          "type": "string",
          "description": "- (Optional)  A representative term for supported groupings of entities. ALL = All the entities of a given kind.\n"
        },
        "uuidLists": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "- (Optional) The explicit list of UUIDs for the given kind.\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "categories",
            "collection",
            "uuidLists"
          ]
        }
      }
    },
    "nutanix:index/AccessControlPolicyContextFilterListEntityFilterExpressionListRightHandSideCategories:AccessControlPolicyContextFilterListEntityFilterExpressionListRightHandSideCategories": {
      "properties": {
        "name": {
          "type": "string",
          "description": "- (Optional) Name of the Access Control Policy.\n"
        },
        "values": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "- value of the key.\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "name",
            "values"
          ]
        }
      }
    },
    "nutanix:index/AccessControlPolicyContextFilterListScopeFilterExpressionList:AccessControlPolicyContextFilterListScopeFilterExpressionList": {
      "properties": {
        "leftHandSide": {
          "type": "string",
          "description": "- (Optional)  The LHS of the filter expression - the scope type.\n"
        },
        "operator": {
          "type": "string",
          "description": "- (Required) The operator of the filter expression.\n"
        },
        "rightHandSide": {
          "$ref": "#/types/nutanix:index%2FAccessControlPolicyContextFilterListScopeFilterExpressionListRightHandSide:AccessControlPolicyContextFilterListScopeFilterExpressionListRightHandSide",
          "description": "- (Required) The right hand side (RHS) of an scope expression.\n"
        }
      },
      "type": "object",
      "required": [
        "leftHandSide",
        "operator",
        "rightHandSide"
      ]
    },
    "nutanix:index/AccessControlPolicyContextFilterListScopeFilterExpressionListRightHandSide:AccessControlPolicyContextFilterListScopeFilterExpressionListRightHandSide": {
      "properties": {
        "categories": {
          "$ref": "#/types/nutanix:index%2FAccessControlPolicyContextFilterListScopeFilterExpressionListRightHandSideCategories:AccessControlPolicyContextFilterListScopeFilterExpressionListRightHandSideCategories",
          "description": "- (Optional) The category values represented as a dictionary of key > list of values.\n"
        },
        "collection": {
          "type": "string",
          "description": "- (Optional)  A representative term for supported groupings of entities. ALL = All the entities of a given kind.\n"
        },
        "uuidLists": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "- (Optional) The explicit list of UUIDs for the given kind.\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "categories",
            "collection",
            "uuidLists"
          ]
        }
      }
    },
    "nutanix:index/AccessControlPolicyContextFilterListScopeFilterExpressionListRightHandSideCategories:AccessControlPolicyContextFilterListScopeFilterExpressionListRightHandSideCategories": {
      "properties": {
        "name": {
          "type": "string",
          "description": "- (Optional) Name of the Access Control Policy.\n"
        },
        "values": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "- value of the key.\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "name",
            "values"
          ]
        }
      }
    },
    "nutanix:index/AccessControlPolicyOwnerReference:AccessControlPolicyOwnerReference": {
      "properties": {
        "kind": {
          "type": "string",
          "description": "- The kind name (Default value: project)(Required).\n"
        },
        "name": {
          "type": "string",
          "description": "- (Optional) Name of the Access Control Policy.\n"
        },
        "uuid": {
          "type": "string",
          "description": "- the UUID(Required).\n"
        }
      },
      "type": "object"
    },
    "nutanix:index/AccessControlPolicyRoleReference:AccessControlPolicyRoleReference": {
      "properties": {
        "kind": {
          "type": "string",
          "description": "- The kind name (Default value: project)(Required).\n"
        },
        "name": {
          "type": "string",
          "description": "- (Optional) Name of the Access Control Policy.\n"
        },
        "uuid": {
          "type": "string",
          "description": "- the UUID(Required).\n"
        }
      },
      "type": "object",
      "required": [
        "kind",
        "uuid"
      ],
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "kind",
            "name",
            "uuid"
          ]
        }
      }
    },
    "nutanix:index/AccessControlPolicyUserGroupReferenceList:AccessControlPolicyUserGroupReferenceList": {
      "properties": {
        "kind": {
          "type": "string",
          "description": "- The kind name (Default value: project)(Required).\n"
        },
        "name": {
          "type": "string",
          "description": "- (Optional) Name of the Access Control Policy.\n"
        },
        "uuid": {
          "type": "string",
          "description": "- the UUID(Required).\n"
        }
      },
      "type": "object",
      "required": [
        "uuid"
      ],
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "kind",
            "name",
            "uuid"
          ]
        }
      }
    },
    "nutanix:index/AccessControlPolicyUserReferenceList:AccessControlPolicyUserReferenceList": {
      "properties": {
        "kind": {
          "type": "string",
          "description": "- The kind name (Default value: project)(Required).\n"
        },
        "name": {
          "type": "string",
          "description": "- (Optional) Name of the Access Control Policy.\n"
        },
        "uuid": {
          "type": "string",
          "description": "- the UUID(Required).\n"
        }
      },
      "type": "object",
      "required": [
        "uuid"
      ],
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "kind",
            "name",
            "uuid"
          ]
        }
      }
    },
    "nutanix:index/AddressGroupIpAddressBlockList:AddressGroupIpAddressBlockList": {
      "properties": {
        "ip": {
          "type": "string",
          "description": "- (Required) IP of the address block\n"
        },
        "prefixLength": {
          "type": "integer",
          "description": "- (Required) Prefix length of address block in int\n\nSee detailed information in [Nutanix Address Groups](https://www.nutanix.dev/api_references/prism-central-v3/#/5ccef53a546a4-create-a-new-address-group).\n"
        }
      },
      "type": "object",
      "required": [
        "ip",
        "prefixLength"
      ]
    },
    "nutanix:index/AddressGroupsV2IpRange:AddressGroupsV2IpRange": {
      "properties": {
        "endIp": {
          "type": "string"
        },
        "startIp": {
          "type": "string"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "endIp",
            "startIp"
          ]
        }
      }
    },
    "nutanix:index/AddressGroupsV2Ipv4Address:AddressGroupsV2Ipv4Address": {
      "properties": {
        "prefixLength": {
          "type": "integer"
        },
        "value": {
          "type": "string"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "prefixLength",
            "value"
          ]
        }
      }
    },
    "nutanix:index/AddressGroupsV2Link:AddressGroupsV2Link": {
      "properties": {
        "href": {
          "type": "string"
        },
        "rel": {
          "type": "string"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "href",
            "rel"
          ]
        }
      }
    },
    "nutanix:index/AssociateCategoryToVolumeGroupV2Category:AssociateCategoryToVolumeGroupV2Category": {
      "properties": {
        "entityType": {
          "type": "string",
          "description": "-(Optional) Type of entity that's represented by this reference. Default value is \"CATEGORY\". Valid values are:\n* \"CATEGORY\".\n\nSee detailed information in [Nutanix Associate/Disassociate category to/from a Volume Group V4](https://developers.nutanix.com/api-reference?namespace=volumes&version=v4.0#tag/VolumeGroups/operation/associateCategory).\n"
        },
        "extId": {
          "type": "string",
          "description": "-(Required) The external identifier of the category.\n"
        },
        "name": {
          "type": "string",
          "description": "-(Optional) Name of entity that's represented by this reference\n"
        },
        "uris": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "-(Optional) URI of entities that's represented by this reference.\n"
        }
      },
      "type": "object",
      "required": [
        "extId"
      ],
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "extId",
            "uris"
          ]
        }
      }
    },
    "nutanix:index/AuthorizationPolicyV2Entity:AuthorizationPolicyV2Entity": {
      "properties": {
        "reserved": {
          "type": "string"
        }
      },
      "type": "object"
    },
    "nutanix:index/AuthorizationPolicyV2Identity:AuthorizationPolicyV2Identity": {
      "properties": {
        "reserved": {
          "type": "string"
        }
      },
      "type": "object"
    },
    "nutanix:index/CategoryV2Association:CategoryV2Association": {
      "properties": {
        "categoryId": {
          "type": "string",
          "description": "External identifier for the given category, used across all v4 apis/entities/resources where categories are referenced.\n"
        },
        "count": {
          "type": "string",
          "description": "Count of associations of a particular type of entity or policy\n"
        },
        "resourceGroup": {
          "type": "string",
          "description": "An enum denoting the resource group.\nResources can be organized into either an entity or a policy.\nValid values are:\n- `POLICY`:  A ResourceGroup denoting a nutanix policy like VM host affinity policy, image placement policy, access control policy, and so on.<br> A category is generally associated with many entities.<br> The policy which is associated with this category, is then applied to those entities which are also associated with the same category.\n- `ENTITY`: A ResourceGroup denoting a nutanix entity like VM, cluster, host, image, and so on.<br> A category is generally associated with many entities.<br> A policy is then applied to these entities through the category.\n"
        },
        "resourceType": {
          "type": "string",
          "description": "An enum denoting the associated resource types. Resource types are further grouped into 2 types - entity or a policy.\nValid values are:\n- `APP`:  A resource of type application.\n- `PROTECTION_RULE`:  A policy or rule of type protection rule.\n- `IMAGE_RATE_LIMIT`: A resource of type rate limit.\n- `MH_VM`: A resource of type Virtual Machine.\n- `BLUEPRINT`:  A resource of type blueprint.\n- `HOST`:  A resource representing the underlying host, the machine hosting the hypervisors and VMs.\n- `IMAGE`:  A resource of type image.\n- `VM_VM_ANTI_AFFINITY_POLICY`:  A policy of type VM-VM anti-affinity; This policy decides that the specified set of VMs are running on different hosts.\n- `ACCESS_CONTROL_POLICY`: A policy or rule of type access control policy or ACP; the rules that decide authorization of users to access an API.\n- `VM_HOST_AFFINITY_POLICY`: A policy of type VM host affinity; The policy decides the affinity between a set of VMs to be run only a specified set of hosts\n- `NGT_POLICY`:  A policy or rule of type NGT policy.\n- `RECOVERY_PLAN`:  A policy or rule of type recovery plan.\n- `MARKETPLACE_ITEM`: A resource of type marketplace item.\n- `CLUSTER`:  A resource of type cluster, usually refers to a PE cluster.\n- `NETWORK_SECURITY_RULE`:  A rule of type network security.\n- `HOST_NIC`:  A resource of type Physical NIC.\n- `ACTION_RULE`:  A policy of type Playbook.\n- `VOLUMEGROUP`:  A resource of type volume group.\n- `REPORT`:  A resource of type report.\n- `STORAGE_POLICY`: A policy or rule of type storage policy.\n- `BUNDLE`:  A resource of type bundle.\n- `QOS_POLICY`: A policy or rule of type QoS policy.\n- `SUBNET`:  A resource of type network subnets.\n- `VM`: A resource of type Virtual Machine.\n- `NETWORK_SECURITY_POLICY`:  A policy of type network security.\n- `POLICY_SCHEMA`:  Policies like user-defined-alerts.\n- `IMAGE_PLACEMENT_POLICY`:  A policy of type image placement.\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "categoryId",
            "count",
            "resourceGroup",
            "resourceType"
          ]
        }
      }
    },
    "nutanix:index/CategoryV2DetailedAssociation:CategoryV2DetailedAssociation": {
      "properties": {
        "categoryId": {
          "type": "string",
          "description": "External identifier for the given category, used across all v4 apis/entities/resources where categories are referenced.\n"
        },
        "resourceGroup": {
          "type": "string",
          "description": "An enum denoting the resource group.\nResources can be organized into either an entity or a policy.\nValid values are:\n- `POLICY`:  A ResourceGroup denoting a nutanix policy like VM host affinity policy, image placement policy, access control policy, and so on.<br> A category is generally associated with many entities.<br> The policy which is associated with this category, is then applied to those entities which are also associated with the same category.\n- `ENTITY`: A ResourceGroup denoting a nutanix entity like VM, cluster, host, image, and so on.<br> A category is generally associated with many entities.<br> A policy is then applied to these entities through the category.\n"
        },
        "resourceId": {
          "type": "string",
          "description": "The UUID of the entity or policy associated with the particular category.\n"
        },
        "resourceType": {
          "type": "string",
          "description": "An enum denoting the associated resource types. Resource types are further grouped into 2 types - entity or a policy.\nValid values are:\n- `APP`:  A resource of type application.\n- `PROTECTION_RULE`:  A policy or rule of type protection rule.\n- `IMAGE_RATE_LIMIT`: A resource of type rate limit.\n- `MH_VM`: A resource of type Virtual Machine.\n- `BLUEPRINT`:  A resource of type blueprint.\n- `HOST`:  A resource representing the underlying host, the machine hosting the hypervisors and VMs.\n- `IMAGE`:  A resource of type image.\n- `VM_VM_ANTI_AFFINITY_POLICY`:  A policy of type VM-VM anti-affinity; This policy decides that the specified set of VMs are running on different hosts.\n- `ACCESS_CONTROL_POLICY`: A policy or rule of type access control policy or ACP; the rules that decide authorization of users to access an API.\n- `VM_HOST_AFFINITY_POLICY`: A policy of type VM host affinity; The policy decides the affinity between a set of VMs to be run only a specified set of hosts\n- `NGT_POLICY`:  A policy or rule of type NGT policy.\n- `RECOVERY_PLAN`:  A policy or rule of type recovery plan.\n- `MARKETPLACE_ITEM`: A resource of type marketplace item.\n- `CLUSTER`:  A resource of type cluster, usually refers to a PE cluster.\n- `NETWORK_SECURITY_RULE`:  A rule of type network security.\n- `HOST_NIC`:  A resource of type Physical NIC.\n- `ACTION_RULE`:  A policy of type Playbook.\n- `VOLUMEGROUP`:  A resource of type volume group.\n- `REPORT`:  A resource of type report.\n- `STORAGE_POLICY`: A policy or rule of type storage policy.\n- `BUNDLE`:  A resource of type bundle.\n- `QOS_POLICY`: A policy or rule of type QoS policy.\n- `SUBNET`:  A resource of type network subnets.\n- `VM`: A resource of type Virtual Machine.\n- `NETWORK_SECURITY_POLICY`:  A policy of type network security.\n- `POLICY_SCHEMA`:  Policies like user-defined-alerts.\n- `IMAGE_PLACEMENT_POLICY`:  A policy of type image placement.\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "categoryId",
            "resourceGroup",
            "resourceId",
            "resourceType"
          ]
        }
      }
    },
    "nutanix:index/ClusterAddNodeV2ConfigParam:ClusterAddNodeV2ConfigParam": {
      "properties": {
        "hipervs": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FClusterAddNodeV2ConfigParamHiperv:ClusterAddNodeV2ConfigParamHiperv"
          },
          "description": "-(Optional) HyperV Credentials.\n"
        },
        "isComputeOnly": {
          "type": "boolean",
          "description": "-(Optional) Indicates whether the node is compute only or not.\n"
        },
        "isNeverSchedulable": {
          "type": "boolean",
          "description": "-(Optional) Indicates whether the node is marked to be never schedulable or not.\n"
        },
        "isNosCompatible": {
          "type": "boolean",
          "description": "-(Optional) Indicates if node is compatible or not.\n"
        },
        "shouldSkipDiscovery": {
          "type": "boolean",
          "description": "-(Optional) Indicates if node discovery need to be skipped or not.\n"
        },
        "shouldSkipImaging": {
          "type": "boolean",
          "description": "-(Optional) Indicates if node imaging needs to be skipped or not.\n"
        },
        "shouldValidateRackAwareness": {
          "type": "boolean",
          "description": "-(Optional) Indicates if rack awareness needs to be validated or not.\n"
        },
        "targetHypervisor": {
          "type": "string",
          "description": "-(Optional) Target hypervisor.\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "hipervs",
            "isComputeOnly",
            "isNeverSchedulable",
            "isNosCompatible",
            "shouldSkipDiscovery",
            "shouldSkipImaging",
            "shouldValidateRackAwareness",
            "targetHypervisor"
          ]
        }
      }
    },
    "nutanix:index/ClusterAddNodeV2ConfigParamHiperv:ClusterAddNodeV2ConfigParamHiperv": {
      "properties": {
        "domainDetails": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FClusterAddNodeV2ConfigParamHipervDomainDetail:ClusterAddNodeV2ConfigParamHipervDomainDetail"
          },
          "description": "-(Optional) UserName and Password model.\n"
        },
        "failoverClusterDetails": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FClusterAddNodeV2ConfigParamHipervFailoverClusterDetail:ClusterAddNodeV2ConfigParamHipervFailoverClusterDetail"
          },
          "description": "-(Optional) UserName and Password model.\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "domainDetails",
            "failoverClusterDetails"
          ]
        }
      }
    },
    "nutanix:index/ClusterAddNodeV2ConfigParamHipervDomainDetail:ClusterAddNodeV2ConfigParamHipervDomainDetail": {
      "properties": {
        "clusterName": {
          "type": "string",
          "description": "-(Optional) Cluster name. This is part of payload for both cluster create & update operations.\n"
        },
        "password": {
          "type": "string",
          "description": "-(Optional) Password.\n"
        },
        "username": {
          "type": "string",
          "description": "-(Optional) Username.\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "clusterName",
            "password",
            "username"
          ]
        }
      }
    },
    "nutanix:index/ClusterAddNodeV2ConfigParamHipervFailoverClusterDetail:ClusterAddNodeV2ConfigParamHipervFailoverClusterDetail": {
      "properties": {
        "clusterName": {
          "type": "string",
          "description": "-(Optional) Cluster name. This is part of payload for both cluster create & update operations.\n"
        },
        "password": {
          "type": "string",
          "description": "-(Optional) Password.\n"
        },
        "username": {
          "type": "string",
          "description": "-(Optional) Username.\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "clusterName",
            "password",
            "username"
          ]
        }
      }
    },
    "nutanix:index/ClusterAddNodeV2NodeParam:ClusterAddNodeV2NodeParam": {
      "properties": {
        "blockLists": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FClusterAddNodeV2NodeParamBlockList:ClusterAddNodeV2NodeParamBlockList"
          },
          "description": "-(Optional) Block list of a cluster.\n"
        },
        "bundleInfos": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FClusterAddNodeV2NodeParamBundleInfo:ClusterAddNodeV2NodeParamBundleInfo"
          },
          "description": "-(Optional) Hypervisor bundle information.\n"
        },
        "computeNodeLists": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FClusterAddNodeV2NodeParamComputeNodeList:ClusterAddNodeV2NodeParamComputeNodeList"
          }
        },
        "hypervSku": {
          "type": "string",
          "description": "-(Optional) Hyperv SKU.\n"
        },
        "hypervisorIsos": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FClusterAddNodeV2NodeParamHypervisorIso:ClusterAddNodeV2NodeParamHypervisorIso"
          },
          "description": "-(Optional) Hypervisor type to md5sum map.\n"
        },
        "nodeLists": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FClusterAddNodeV2NodeParamNodeList:ClusterAddNodeV2NodeParamNodeList"
          },
          "description": "-(Required) List of nodes in a cluster.\n"
        },
        "shouldSkipHostNetworking": {
          "type": "boolean",
          "description": "-(Optional) Indicates if the host networking needs to be skipped or not.\n"
        }
      },
      "type": "object",
      "required": [
        "nodeLists"
      ],
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "blockLists",
            "bundleInfos",
            "computeNodeLists",
            "hypervSku",
            "hypervisorIsos",
            "nodeLists",
            "shouldSkipHostNetworking"
          ]
        }
      }
    },
    "nutanix:index/ClusterAddNodeV2NodeParamBlockList:ClusterAddNodeV2NodeParamBlockList": {
      "properties": {
        "blockId": {
          "type": "string",
          "description": "-(Required) List of nodes in a block.\n"
        },
        "rackName": {
          "type": "string",
          "description": "-(Optional) Indicates if the host networking needs to be skipped or not.\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "blockId",
            "rackName"
          ]
        }
      }
    },
    "nutanix:index/ClusterAddNodeV2NodeParamBundleInfo:ClusterAddNodeV2NodeParamBundleInfo": {
      "properties": {
        "name": {
          "type": "string",
          "description": "-(Optional) Name of the hypervisor bundle.\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "name"
          ]
        }
      }
    },
    "nutanix:index/ClusterAddNodeV2NodeParamComputeNodeList:ClusterAddNodeV2NodeParamComputeNodeList": {
      "properties": {
        "blockId": {
          "type": "string"
        },
        "digitalCertificateMapLists": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FClusterAddNodeV2NodeParamComputeNodeListDigitalCertificateMapList:ClusterAddNodeV2NodeParamComputeNodeListDigitalCertificateMapList"
          }
        },
        "hypervisorHostname": {
          "type": "string"
        },
        "hypervisorIps": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FClusterAddNodeV2NodeParamComputeNodeListHypervisorIp:ClusterAddNodeV2NodeParamComputeNodeListHypervisorIp"
          }
        },
        "ipmiIps": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FClusterAddNodeV2NodeParamComputeNodeListIpmiIp:ClusterAddNodeV2NodeParamComputeNodeListIpmiIp"
          }
        },
        "model": {
          "type": "string"
        },
        "nodePosition": {
          "type": "string"
        },
        "nodeUuid": {
          "type": "string"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "blockId",
            "digitalCertificateMapLists",
            "hypervisorIps",
            "ipmiIps",
            "model",
            "nodePosition",
            "nodeUuid"
          ]
        }
      }
    },
    "nutanix:index/ClusterAddNodeV2NodeParamComputeNodeListDigitalCertificateMapList:ClusterAddNodeV2NodeParamComputeNodeListDigitalCertificateMapList": {
      "properties": {
        "key": {
          "type": "string",
          "description": "-(Optional) Field containing<span pulumi-lang-nodejs=\" digitalCertificateBase64 \" pulumi-lang-dotnet=\" DigitalCertificateBase64 \" pulumi-lang-go=\" digitalCertificateBase64 \" pulumi-lang-python=\" digital_certificate_base64 \" pulumi-lang-yaml=\" digitalCertificateBase64 \" pulumi-lang-java=\" digitalCertificateBase64 \"> digital_certificate_base64 </span>and<span pulumi-lang-nodejs=\" keyManagementServerUuid \" pulumi-lang-dotnet=\" KeyManagementServerUuid \" pulumi-lang-go=\" keyManagementServerUuid \" pulumi-lang-python=\" key_management_server_uuid \" pulumi-lang-yaml=\" keyManagementServerUuid \" pulumi-lang-java=\" keyManagementServerUuid \"> key_management_server_uuid </span>for key management server.\n"
        },
        "value": {
          "type": "string"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "key",
            "value"
          ]
        }
      }
    },
    "nutanix:index/ClusterAddNodeV2NodeParamComputeNodeListHypervisorIp:ClusterAddNodeV2NodeParamComputeNodeListHypervisorIp": {
      "properties": {
        "ipv4s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FClusterAddNodeV2NodeParamComputeNodeListHypervisorIpIpv4:ClusterAddNodeV2NodeParamComputeNodeListHypervisorIpIpv4"
          },
          "description": "-(Optional) An unique address that identifies a device on the internet or a local network in IPv4 format.\n"
        },
        "ipv6s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FClusterAddNodeV2NodeParamComputeNodeListHypervisorIpIpv6:ClusterAddNodeV2NodeParamComputeNodeListHypervisorIpIpv6"
          },
          "description": "-(Optional) An unique address that identifies a device on the internet or a local network in IPv6 format.\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "ipv4s",
            "ipv6s"
          ]
        }
      }
    },
    "nutanix:index/ClusterAddNodeV2NodeParamComputeNodeListHypervisorIpIpv4:ClusterAddNodeV2NodeParamComputeNodeListHypervisorIpIpv4": {
      "properties": {
        "prefixLength": {
          "type": "integer"
        },
        "value": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "value"
      ]
    },
    "nutanix:index/ClusterAddNodeV2NodeParamComputeNodeListHypervisorIpIpv6:ClusterAddNodeV2NodeParamComputeNodeListHypervisorIpIpv6": {
      "properties": {
        "prefixLength": {
          "type": "integer"
        },
        "value": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "value"
      ]
    },
    "nutanix:index/ClusterAddNodeV2NodeParamComputeNodeListIpmiIp:ClusterAddNodeV2NodeParamComputeNodeListIpmiIp": {
      "properties": {
        "ipv4s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FClusterAddNodeV2NodeParamComputeNodeListIpmiIpIpv4:ClusterAddNodeV2NodeParamComputeNodeListIpmiIpIpv4"
          },
          "description": "-(Optional) An unique address that identifies a device on the internet or a local network in IPv4 format.\n"
        },
        "ipv6s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FClusterAddNodeV2NodeParamComputeNodeListIpmiIpIpv6:ClusterAddNodeV2NodeParamComputeNodeListIpmiIpIpv6"
          },
          "description": "-(Optional) An unique address that identifies a device on the internet or a local network in IPv6 format.\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "ipv4s",
            "ipv6s"
          ]
        }
      }
    },
    "nutanix:index/ClusterAddNodeV2NodeParamComputeNodeListIpmiIpIpv4:ClusterAddNodeV2NodeParamComputeNodeListIpmiIpIpv4": {
      "properties": {
        "prefixLength": {
          "type": "integer"
        },
        "value": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "value"
      ]
    },
    "nutanix:index/ClusterAddNodeV2NodeParamComputeNodeListIpmiIpIpv6:ClusterAddNodeV2NodeParamComputeNodeListIpmiIpIpv6": {
      "properties": {
        "prefixLength": {
          "type": "integer"
        },
        "value": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "value"
      ]
    },
    "nutanix:index/ClusterAddNodeV2NodeParamHypervisorIso:ClusterAddNodeV2NodeParamHypervisorIso": {
      "properties": {
        "md5Sum": {
          "type": "string"
        },
        "type": {
          "type": "string",
          "description": "-(Optional) Hypervisor type.\nValid values are:\n- `XEN`: Xen hypervisor.\n- `HYPERV`: Hyper-V hypervisor.\n- `NATIVEHOST`: NativeHost type where AOS runs natively, without hypervisor.\n- `ESX`: ESX hypervisor.\n- `AHV`: AHV hypervisor.\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "md5Sum",
            "type"
          ]
        }
      }
    },
    "nutanix:index/ClusterAddNodeV2NodeParamNodeList:ClusterAddNodeV2NodeParamNodeList": {
      "properties": {
        "blockId": {
          "type": "string",
          "description": "-(Optional) Block ID.\n"
        },
        "currentNetworkInterface": {
          "type": "string",
          "description": "-(Optional) Current network interface of a node.\n"
        },
        "cvmIps": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FClusterAddNodeV2NodeParamNodeListCvmIp:ClusterAddNodeV2NodeParamNodeListCvmIp"
          },
          "description": "-(Optional) An unique address that identifies a device on the internet or a local network in IPv4 or IPv6 format.\n"
        },
        "digitalCertificateMapLists": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FClusterAddNodeV2NodeParamNodeListDigitalCertificateMapList:ClusterAddNodeV2NodeParamNodeListDigitalCertificateMapList"
          },
          "description": "-(Optional) List of objects containing<span pulumi-lang-nodejs=\" digitalCertificateBase64 \" pulumi-lang-dotnet=\" DigitalCertificateBase64 \" pulumi-lang-go=\" digitalCertificateBase64 \" pulumi-lang-python=\" digital_certificate_base64 \" pulumi-lang-yaml=\" digitalCertificateBase64 \" pulumi-lang-java=\" digitalCertificateBase64 \"> digital_certificate_base64 </span>and<span pulumi-lang-nodejs=\" keyManagementServerUuid \" pulumi-lang-dotnet=\" KeyManagementServerUuid \" pulumi-lang-go=\" keyManagementServerUuid \" pulumi-lang-python=\" key_management_server_uuid \" pulumi-lang-yaml=\" keyManagementServerUuid \" pulumi-lang-java=\" keyManagementServerUuid \"> key_management_server_uuid </span>fields for key management server.\n"
        },
        "hypervisorHostname": {
          "type": "string",
          "description": "-(Optional) Name of the host.\n"
        },
        "hypervisorIps": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FClusterAddNodeV2NodeParamNodeListHypervisorIp:ClusterAddNodeV2NodeParamNodeListHypervisorIp"
          },
          "description": "-(Optional) An unique address that identifies a device on the internet or a local network in IPv4 or IPv6 format.\n"
        },
        "hypervisorType": {
          "type": "string",
          "description": "-(Optional) Hypervisor type.\nValid values are:\n- `XEN`: Xen hypervisor.\n- `HYPERV`: Hyper-V hypervisor.\n- `NATIVEHOST`: NativeHost type where AOS runs natively, without hypervisor.\n- `ESX`: ESX hypervisor.\n- `AHV`: AHV hypervisor.\n"
        },
        "hypervisorVersion": {
          "type": "string",
          "description": "-(Optional) Host version of the node.\n"
        },
        "ipmiIps": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FClusterAddNodeV2NodeParamNodeListIpmiIp:ClusterAddNodeV2NodeParamNodeListIpmiIp"
          },
          "description": "-(Optional) An unique address that identifies a device on the internet or a local network in IPv4 or IPv6 format.\n"
        },
        "isLightCompute": {
          "type": "boolean"
        },
        "isRoboMixedHypervisor": {
          "type": "boolean",
          "description": "-(Optional) Is ROBO mixed hypervisor.\n"
        },
        "model": {
          "type": "string",
          "description": "-(Optional) Rackable unit model name.\n"
        },
        "networks": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FClusterAddNodeV2NodeParamNodeListNetwork:ClusterAddNodeV2NodeParamNodeListNetwork"
          },
          "description": "-(Optional) Active and standby uplink information of the target nodes.\n"
        },
        "nodePosition": {
          "type": "string",
          "description": "-(Optional) Node position.\n"
        },
        "nodeUuid": {
          "type": "string",
          "description": "-(Optional) Node UUID.\n"
        },
        "nosVersion": {
          "type": "string",
          "description": "-(Optional) NOS software version of a node.\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "blockId",
            "currentNetworkInterface",
            "cvmIps",
            "digitalCertificateMapLists",
            "hypervisorHostname",
            "hypervisorIps",
            "hypervisorType",
            "hypervisorVersion",
            "ipmiIps",
            "isLightCompute",
            "isRoboMixedHypervisor",
            "model",
            "nodePosition",
            "nodeUuid",
            "nosVersion"
          ]
        }
      }
    },
    "nutanix:index/ClusterAddNodeV2NodeParamNodeListCvmIp:ClusterAddNodeV2NodeParamNodeListCvmIp": {
      "properties": {
        "ipv4s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FClusterAddNodeV2NodeParamNodeListCvmIpIpv4:ClusterAddNodeV2NodeParamNodeListCvmIpIpv4"
          },
          "description": "-(Optional) An unique address that identifies a device on the internet or a local network in IPv4 format.\n"
        },
        "ipv6s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FClusterAddNodeV2NodeParamNodeListCvmIpIpv6:ClusterAddNodeV2NodeParamNodeListCvmIpIpv6"
          },
          "description": "-(Optional) An unique address that identifies a device on the internet or a local network in IPv6 format.\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "ipv4s",
            "ipv6s"
          ]
        }
      }
    },
    "nutanix:index/ClusterAddNodeV2NodeParamNodeListCvmIpIpv4:ClusterAddNodeV2NodeParamNodeListCvmIpIpv4": {
      "properties": {
        "prefixLength": {
          "type": "integer"
        },
        "value": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "value"
      ]
    },
    "nutanix:index/ClusterAddNodeV2NodeParamNodeListCvmIpIpv6:ClusterAddNodeV2NodeParamNodeListCvmIpIpv6": {
      "properties": {
        "prefixLength": {
          "type": "integer"
        },
        "value": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "value"
      ]
    },
    "nutanix:index/ClusterAddNodeV2NodeParamNodeListDigitalCertificateMapList:ClusterAddNodeV2NodeParamNodeListDigitalCertificateMapList": {
      "properties": {
        "key": {
          "type": "string",
          "description": "-(Optional) Field containing<span pulumi-lang-nodejs=\" digitalCertificateBase64 \" pulumi-lang-dotnet=\" DigitalCertificateBase64 \" pulumi-lang-go=\" digitalCertificateBase64 \" pulumi-lang-python=\" digital_certificate_base64 \" pulumi-lang-yaml=\" digitalCertificateBase64 \" pulumi-lang-java=\" digitalCertificateBase64 \"> digital_certificate_base64 </span>and<span pulumi-lang-nodejs=\" keyManagementServerUuid \" pulumi-lang-dotnet=\" KeyManagementServerUuid \" pulumi-lang-go=\" keyManagementServerUuid \" pulumi-lang-python=\" key_management_server_uuid \" pulumi-lang-yaml=\" keyManagementServerUuid \" pulumi-lang-java=\" keyManagementServerUuid \"> key_management_server_uuid </span>for key management server.\n"
        },
        "value": {
          "type": "string"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "key",
            "value"
          ]
        }
      }
    },
    "nutanix:index/ClusterAddNodeV2NodeParamNodeListHypervisorIp:ClusterAddNodeV2NodeParamNodeListHypervisorIp": {
      "properties": {
        "ipv4s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FClusterAddNodeV2NodeParamNodeListHypervisorIpIpv4:ClusterAddNodeV2NodeParamNodeListHypervisorIpIpv4"
          },
          "description": "-(Optional) An unique address that identifies a device on the internet or a local network in IPv4 format.\n"
        },
        "ipv6s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FClusterAddNodeV2NodeParamNodeListHypervisorIpIpv6:ClusterAddNodeV2NodeParamNodeListHypervisorIpIpv6"
          },
          "description": "-(Optional) An unique address that identifies a device on the internet or a local network in IPv6 format.\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "ipv4s",
            "ipv6s"
          ]
        }
      }
    },
    "nutanix:index/ClusterAddNodeV2NodeParamNodeListHypervisorIpIpv4:ClusterAddNodeV2NodeParamNodeListHypervisorIpIpv4": {
      "properties": {
        "prefixLength": {
          "type": "integer"
        },
        "value": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "value"
      ]
    },
    "nutanix:index/ClusterAddNodeV2NodeParamNodeListHypervisorIpIpv6:ClusterAddNodeV2NodeParamNodeListHypervisorIpIpv6": {
      "properties": {
        "prefixLength": {
          "type": "integer"
        },
        "value": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "value"
      ]
    },
    "nutanix:index/ClusterAddNodeV2NodeParamNodeListIpmiIp:ClusterAddNodeV2NodeParamNodeListIpmiIp": {
      "properties": {
        "ipv4s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FClusterAddNodeV2NodeParamNodeListIpmiIpIpv4:ClusterAddNodeV2NodeParamNodeListIpmiIpIpv4"
          },
          "description": "-(Optional) An unique address that identifies a device on the internet or a local network in IPv4 format.\n"
        },
        "ipv6s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FClusterAddNodeV2NodeParamNodeListIpmiIpIpv6:ClusterAddNodeV2NodeParamNodeListIpmiIpIpv6"
          },
          "description": "-(Optional) An unique address that identifies a device on the internet or a local network in IPv6 format.\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "ipv4s",
            "ipv6s"
          ]
        }
      }
    },
    "nutanix:index/ClusterAddNodeV2NodeParamNodeListIpmiIpIpv4:ClusterAddNodeV2NodeParamNodeListIpmiIpIpv4": {
      "properties": {
        "prefixLength": {
          "type": "integer"
        },
        "value": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "value"
      ]
    },
    "nutanix:index/ClusterAddNodeV2NodeParamNodeListIpmiIpIpv6:ClusterAddNodeV2NodeParamNodeListIpmiIpIpv6": {
      "properties": {
        "prefixLength": {
          "type": "integer"
        },
        "value": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "value"
      ]
    },
    "nutanix:index/ClusterAddNodeV2NodeParamNodeListNetwork:ClusterAddNodeV2NodeParamNodeListNetwork": {
      "properties": {
        "name": {
          "type": "string",
          "description": "-(Optional) Name of the uplink.\n"
        },
        "networks": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "-(Optional) List of network types.\n"
        },
        "uplinks": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FClusterAddNodeV2NodeParamNodeListNetworkUplink:ClusterAddNodeV2NodeParamNodeListNetworkUplink"
          },
          "description": "-(Optional) Active and standby uplink information of the target nodes.\n"
        }
      },
      "type": "object"
    },
    "nutanix:index/ClusterAddNodeV2NodeParamNodeListNetworkUplink:ClusterAddNodeV2NodeParamNodeListNetworkUplink": {
      "properties": {
        "actives": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FClusterAddNodeV2NodeParamNodeListNetworkUplinkActive:ClusterAddNodeV2NodeParamNodeListNetworkUplinkActive"
          },
          "description": "-(Optional) Active uplink information.\n"
        },
        "standbies": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FClusterAddNodeV2NodeParamNodeListNetworkUplinkStandby:ClusterAddNodeV2NodeParamNodeListNetworkUplinkStandby"
          },
          "description": "-(Optional) Standby uplink information.\n"
        }
      },
      "type": "object"
    },
    "nutanix:index/ClusterAddNodeV2NodeParamNodeListNetworkUplinkActive:ClusterAddNodeV2NodeParamNodeListNetworkUplinkActive": {
      "properties": {
        "mac": {
          "type": "string",
          "description": "-(Optional) Mac address.\n"
        },
        "name": {
          "type": "string",
          "description": "-(Optional) Interface name.\n"
        },
        "value": {
          "type": "string",
          "description": "-(Optional) Interface value.\n"
        }
      },
      "type": "object"
    },
    "nutanix:index/ClusterAddNodeV2NodeParamNodeListNetworkUplinkStandby:ClusterAddNodeV2NodeParamNodeListNetworkUplinkStandby": {
      "properties": {
        "mac": {
          "type": "string",
          "description": "-(Optional) Mac address.\n"
        },
        "name": {
          "type": "string",
          "description": "-(Optional) Interface name.\n"
        },
        "value": {
          "type": "string",
          "description": "-(Optional) Interface value.\n"
        }
      },
      "type": "object"
    },
    "nutanix:index/ClusterAddNodeV2RemoveNodeParam:ClusterAddNodeV2RemoveNodeParam": {
      "properties": {
        "extraParams": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FClusterAddNodeV2RemoveNodeParamExtraParam:ClusterAddNodeV2RemoveNodeParamExtraParam"
          },
          "description": "-(Optional) Extra parameters for node addition.\n"
        },
        "shouldSkipPrechecks": {
          "type": "boolean",
          "description": "-(Optional) Indicates if prechecks can be skipped for node removal.\n"
        },
        "shouldSkipRemove": {
          "type": "boolean",
          "description": "-(Optional) Indicates if node removal can be skipped.\n"
        }
      },
      "type": "object"
    },
    "nutanix:index/ClusterAddNodeV2RemoveNodeParamExtraParam:ClusterAddNodeV2RemoveNodeParamExtraParam": {
      "properties": {
        "shouldSkipAddCheck": {
          "type": "boolean",
          "description": "-(Optional) Indicates if add check needs to be skipped or not.\n\n\n\n\nSee detailed information in [Nutanix Cluster - Add Node on a Cluster V4](https://developers.nutanix.com/api-reference?namespace=clustermgmt&version=v4.0#tag/Clusters/operation/expandCluster).\n"
        },
        "shouldSkipUpgradeCheck": {
          "type": "boolean",
          "description": "-(Optional) Indicates if upgrade check needs to be skipped or not.\n"
        },
        "skipSpaceCheck": {
          "type": "boolean",
          "description": "-(Optional) Indicates if space check needs to be skipped or not.\n"
        }
      },
      "type": "object"
    },
    "nutanix:index/ClusterV2Config:ClusterV2Config": {
      "properties": {
        "authorizedPublicKeyLists": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FClusterV2ConfigAuthorizedPublicKeyList:ClusterV2ConfigAuthorizedPublicKeyList"
          },
          "description": "- (Optional) Public ssh key details. This is part of payload for cluster update operation only.\n"
        },
        "buildInfos": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FClusterV2ConfigBuildInfo:ClusterV2ConfigBuildInfo"
          },
          "description": "- (Optional) Build information details.\n"
        },
        "clusterArch": {
          "type": "string",
          "description": "- (Optional) Cluster arch.\nValid values are:\n- \"PPC64LE\" PPC64LE cluster architecture type.\n- \"X86_64\" X86_64 cluster architecture type.\n"
        },
        "clusterFunctions": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "- (Optional) Cluster function. This is part of payload for cluster\ncreate operation only (allowed enum values for creation are AOS, ONE_NODE & TWO_NODE only).\nValid values are:\n- \"AOS\"\n- \"PRISM_CENTRAL\"\n- \"CLOUD_DATA_GATEWAY\"\n- \"AFS\"\n- \"ONE_NODE\"\n- \"TWO_NODE\"\n- \"ANALYTICS_PLATFORM\"\n"
        },
        "clusterSoftwareMaps": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FClusterV2ConfigClusterSoftwareMap:ClusterV2ConfigClusterSoftwareMap"
          }
        },
        "encryptionInTransitStatus": {
          "type": "string",
          "description": "- (Optional) Encryption in transit Status.\nValid values are:\n- \"DISABLED\"\tDisabled encryption status.\n- \"ENABLED\"\tEnabled encryption status.\n"
        },
        "encryptionOptions": {
          "type": "array",
          "items": {
            "type": "string"
          }
        },
        "encryptionScopes": {
          "type": "array",
          "items": {
            "type": "string"
          }
        },
        "faultToleranceStates": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FClusterV2ConfigFaultToleranceState:ClusterV2ConfigFaultToleranceState"
          },
          "description": "- (Optional) Fault tolerant state of cluster.\n"
        },
        "hypervisorTypes": {
          "type": "array",
          "items": {
            "type": "string"
          }
        },
        "incarnationId": {
          "type": "integer"
        },
        "isAvailable": {
          "type": "boolean"
        },
        "isLts": {
          "type": "boolean"
        },
        "isPasswordRemoteLoginEnabled": {
          "type": "boolean"
        },
        "isRemoteSupportEnabled": {
          "type": "boolean"
        },
        "operationMode": {
          "type": "string",
          "description": "- (Optional) Cluster operation mode. This is part of payload for cluster\nupdate operation only.\nValid values are:\n- \"OVERRIDE\"\tOverride operation mode.\n- \"STAND_ALONE\"\tStand-alone operation mode.\n- \"SWITCH_TO_TWO_NODE\"\tSwitch to two-node operation mode.\n- \"NORMAL\"\tNormal operation mode.\n- \"READ_ONLY\"\tRead-only operation mode.\n"
        },
        "pulseStatuses": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FClusterV2ConfigPulseStatus:ClusterV2ConfigPulseStatus"
          },
          "description": "- (Optional) Pulse status for a cluster. `supported only for update operations and not available during creation.`\n"
        },
        "redundancyFactor": {
          "type": "integer",
          "description": "- (Optional) Redundancy factor of a cluster. This is part of payload for both cluster create & update operations.\n"
        },
        "timezone": {
          "type": "string"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "authorizedPublicKeyLists",
            "buildInfos",
            "clusterArch",
            "clusterFunctions",
            "clusterSoftwareMaps",
            "encryptionInTransitStatus",
            "encryptionOptions",
            "encryptionScopes",
            "faultToleranceStates",
            "hypervisorTypes",
            "incarnationId",
            "isAvailable",
            "isLts",
            "isPasswordRemoteLoginEnabled",
            "isRemoteSupportEnabled",
            "operationMode",
            "pulseStatuses",
            "redundancyFactor",
            "timezone"
          ]
        }
      }
    },
    "nutanix:index/ClusterV2ConfigAuthorizedPublicKeyList:ClusterV2ConfigAuthorizedPublicKeyList": {
      "properties": {
        "key": {
          "type": "string",
          "description": "Ssh key value.\n"
        },
        "name": {
          "type": "string",
          "description": "Ssh key name.\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "key",
            "name"
          ]
        }
      }
    },
    "nutanix:index/ClusterV2ConfigBuildInfo:ClusterV2ConfigBuildInfo": {
      "properties": {
        "buildType": {
          "type": "string",
          "description": "Software build type.\n"
        },
        "commitId": {
          "type": "string",
          "description": "Commit Id used for version.\n"
        },
        "fullVersion": {
          "type": "string",
          "description": "Full name of software version.\n"
        },
        "shortCommitId": {
          "type": "string",
          "description": "Short commit Id used for version.\n"
        },
        "version": {
          "type": "string",
          "description": "Software version.\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "buildType",
            "commitId",
            "fullVersion",
            "shortCommitId",
            "version"
          ]
        }
      }
    },
    "nutanix:index/ClusterV2ConfigClusterSoftwareMap:ClusterV2ConfigClusterSoftwareMap": {
      "properties": {
        "softwareType": {
          "type": "string"
        },
        "version": {
          "type": "string",
          "description": "Software version.\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "softwareType",
            "version"
          ]
        }
      }
    },
    "nutanix:index/ClusterV2ConfigFaultToleranceState:ClusterV2ConfigFaultToleranceState": {
      "properties": {
        "currentClusterFaultTolerance": {
          "type": "string"
        },
        "currentMaxFaultTolerance": {
          "type": "integer"
        },
        "desiredClusterFaultTolerance": {
          "type": "string"
        },
        "desiredMaxFaultTolerance": {
          "type": "integer"
        },
        "domainAwarenessLevel": {
          "type": "string",
          "description": "Domain awareness level corresponds to unit of cluster group. This is part of payload for both cluster create & update operations.\nValid values are:\n- \"RACK\"\tRack level awareness.\n- \"NODE\"\tNode level awareness.\n- \"BLOCK\"\tBlock level awareness.\n- \"DISK\"\tDisk level awareness.\n"
        },
        "redundancyStatuses": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FClusterV2ConfigFaultToleranceStateRedundancyStatus:ClusterV2ConfigFaultToleranceStateRedundancyStatus"
          }
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "currentClusterFaultTolerance",
            "currentMaxFaultTolerance",
            "desiredClusterFaultTolerance",
            "desiredMaxFaultTolerance",
            "domainAwarenessLevel",
            "redundancyStatuses"
          ]
        }
      }
    },
    "nutanix:index/ClusterV2ConfigFaultToleranceStateRedundancyStatus:ClusterV2ConfigFaultToleranceStateRedundancyStatus": {
      "properties": {
        "isCassandraPreparationDone": {
          "type": "boolean"
        },
        "isZookeeperPreparationDone": {
          "type": "boolean"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "isCassandraPreparationDone",
            "isZookeeperPreparationDone"
          ]
        }
      }
    },
    "nutanix:index/ClusterV2ConfigPulseStatus:ClusterV2ConfigPulseStatus": {
      "properties": {
        "isEnabled": {
          "type": "boolean",
          "description": "- (Optional) Flag to indicate if pulse is enabled or not.\n"
        },
        "piiScrubbingLevel": {
          "type": "string",
          "description": "- (Optional) PII scrubbing level.\nValid values are:\n- \"ALL\" :\tScrub All PII Information from Pulse including data like entity names and IP addresses.\n- \"DEFAULT\":\tDefault PII Scrubbing level. Data like entity names and IP addresses will not be scrubbed from Pulse.\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "isEnabled",
            "piiScrubbingLevel"
          ]
        }
      }
    },
    "nutanix:index/ClusterV2Link:ClusterV2Link": {
      "properties": {
        "href": {
          "type": "string"
        },
        "rel": {
          "type": "string"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "href",
            "rel"
          ]
        }
      }
    },
    "nutanix:index/ClusterV2Network:ClusterV2Network": {
      "properties": {
        "backplanes": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FClusterV2NetworkBackplane:ClusterV2NetworkBackplane"
          },
          "description": "Params associated to the backplane network segmentation. This is part of payload for cluster(create operation only.)\n"
        },
        "externalAddresses": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FClusterV2NetworkExternalAddress:ClusterV2NetworkExternalAddress"
          },
          "description": "An unique address that identifies a device on the internet or a local network in IPv4 or IPv6 format.\n"
        },
        "externalDataServicesIps": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FClusterV2NetworkExternalDataServicesIp:ClusterV2NetworkExternalDataServicesIp"
          },
          "description": "An unique address that identifies a device on the internet or a local network in IPv4 or IPv6 format.\n"
        },
        "externalSubnet": {
          "type": "string"
        },
        "fqdn": {
          "type": "string",
          "description": "Cluster fully qualified domain name. This is part of payload for cluster update operation only.\n"
        },
        "httpProxyLists": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FClusterV2NetworkHttpProxyList:ClusterV2NetworkHttpProxyList"
          },
          "description": "List of HTTP Proxy server configuration needed to access a cluster which is hosted behind a HTTP Proxy to not reveal its identity.\n"
        },
        "httpProxyWhiteLists": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FClusterV2NetworkHttpProxyWhiteList:ClusterV2NetworkHttpProxyWhiteList"
          }
        },
        "internalSubnet": {
          "type": "string"
        },
        "keyManagementServerType": {
          "type": "string",
          "description": "Management server type.\nValid values are:\n- \"PRISM_CENTRAL\"\tPrism Central management server.\n- \"EXTERNAL\"\tExternal management server.\n- \"LOCAL\"\tLocal management server.\n"
        },
        "managementServers": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FClusterV2NetworkManagementServer:ClusterV2NetworkManagementServer"
          },
          "description": "Management server information.\n"
        },
        "masqueradingIps": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FClusterV2NetworkMasqueradingIp:ClusterV2NetworkMasqueradingIp"
          },
          "description": "An unique address that identifies a device on the internet or a local network in IPv4 or IPv6 format.\n"
        },
        "masqueradingPort": {
          "type": "string"
        },
        "nameServerIpLists": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FClusterV2NetworkNameServerIpList:ClusterV2NetworkNameServerIpList"
          },
          "description": "List of name servers on a cluster. This is part of payload for both cluster create & update operations. For create operation, only ipv4 address / fqdn values are supported currently.\n"
        },
        "nfsSubnetWhiteLists": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "NFS subnet whitelist addresses. This is part of payload for cluster update operation only.\n"
        },
        "ntpServerIpLists": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FClusterV2NetworkNtpServerIpList:ClusterV2NetworkNtpServerIpList"
          },
          "description": "List of NTP servers on a cluster. This is part of payload for both cluster create & update operations. For create operation, only ipv4 address / fqdn values are supported currently.\n"
        },
        "smtpServers": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FClusterV2NetworkSmtpServer:ClusterV2NetworkSmtpServer"
          },
          "description": "SMTP servers on a cluster. This is part of payload for cluster update operation only.\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "backplanes",
            "externalAddresses",
            "externalDataServicesIps",
            "externalSubnet",
            "fqdn",
            "httpProxyLists",
            "httpProxyWhiteLists",
            "internalSubnet",
            "keyManagementServerType",
            "managementServers",
            "masqueradingIps",
            "masqueradingPort",
            "nameServerIpLists",
            "nfsSubnetWhiteLists",
            "ntpServerIpLists",
            "smtpServers"
          ]
        }
      }
    },
    "nutanix:index/ClusterV2NetworkBackplane:ClusterV2NetworkBackplane": {
      "properties": {
        "isSegmentationEnabled": {
          "type": "boolean",
          "description": "Flag to indicate if the backplane segmentation needs to be enabled or not.\n"
        },
        "netmasks": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FClusterV2NetworkBackplaneNetmask:ClusterV2NetworkBackplaneNetmask"
          },
          "description": "Netmask configs.\n"
        },
        "subnets": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FClusterV2NetworkBackplaneSubnet:ClusterV2NetworkBackplaneSubnet"
          },
          "description": "Subnet configs.\n"
        },
        "vlanTag": {
          "type": "integer",
          "description": "VLAN Id tagged to the backplane network on the cluster. This is part of cluster create payload.\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "isSegmentationEnabled",
            "netmasks",
            "subnets",
            "vlanTag"
          ]
        }
      }
    },
    "nutanix:index/ClusterV2NetworkBackplaneNetmask:ClusterV2NetworkBackplaneNetmask": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "- (Optional) The prefix length of the network to which this host IPv4 address belongs.\n"
        },
        "value": {
          "type": "string",
          "description": "- (Required) Ip address.\n"
        }
      },
      "type": "object",
      "required": [
        "value"
      ]
    },
    "nutanix:index/ClusterV2NetworkBackplaneSubnet:ClusterV2NetworkBackplaneSubnet": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "- (Optional) The prefix length of the network to which this host IPv4 address belongs.\n"
        },
        "value": {
          "type": "string",
          "description": "- (Required) Ip address.\n"
        }
      },
      "type": "object",
      "required": [
        "value"
      ]
    },
    "nutanix:index/ClusterV2NetworkExternalAddress:ClusterV2NetworkExternalAddress": {
      "properties": {
        "ipv4s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FClusterV2NetworkExternalAddressIpv4:ClusterV2NetworkExternalAddressIpv4"
          },
          "description": "- (Optional) ip address params.\n"
        },
        "ipv6s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FClusterV2NetworkExternalAddressIpv6:ClusterV2NetworkExternalAddressIpv6"
          },
          "description": "- (Optional) Ip address params.\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "ipv4s",
            "ipv6s"
          ]
        }
      }
    },
    "nutanix:index/ClusterV2NetworkExternalAddressIpv4:ClusterV2NetworkExternalAddressIpv4": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "- (Optional) The prefix length of the network to which this host IPv4 address belongs.\n"
        },
        "value": {
          "type": "string",
          "description": "- (Required) Ip address.\n"
        }
      },
      "type": "object",
      "required": [
        "value"
      ]
    },
    "nutanix:index/ClusterV2NetworkExternalAddressIpv6:ClusterV2NetworkExternalAddressIpv6": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "- (Optional) The prefix length of the network to which this host IPv4 address belongs.\n"
        },
        "value": {
          "type": "string",
          "description": "- (Required) Ip address.\n"
        }
      },
      "type": "object",
      "required": [
        "value"
      ]
    },
    "nutanix:index/ClusterV2NetworkExternalDataServicesIp:ClusterV2NetworkExternalDataServicesIp": {
      "properties": {
        "ipv4s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FClusterV2NetworkExternalDataServicesIpIpv4:ClusterV2NetworkExternalDataServicesIpIpv4"
          },
          "description": "- (Optional) ip address params.\n"
        },
        "ipv6s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FClusterV2NetworkExternalDataServicesIpIpv6:ClusterV2NetworkExternalDataServicesIpIpv6"
          },
          "description": "- (Optional) Ip address params.\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "ipv4s",
            "ipv6s"
          ]
        }
      }
    },
    "nutanix:index/ClusterV2NetworkExternalDataServicesIpIpv4:ClusterV2NetworkExternalDataServicesIpIpv4": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "- (Optional) The prefix length of the network to which this host IPv4 address belongs.\n"
        },
        "value": {
          "type": "string",
          "description": "- (Required) Ip address.\n"
        }
      },
      "type": "object",
      "required": [
        "value"
      ]
    },
    "nutanix:index/ClusterV2NetworkExternalDataServicesIpIpv6:ClusterV2NetworkExternalDataServicesIpIpv6": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "- (Optional) The prefix length of the network to which this host IPv4 address belongs.\n"
        },
        "value": {
          "type": "string",
          "description": "- (Required) Ip address.\n"
        }
      },
      "type": "object",
      "required": [
        "value"
      ]
    },
    "nutanix:index/ClusterV2NetworkHttpProxyList:ClusterV2NetworkHttpProxyList": {
      "properties": {
        "ipAddresses": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FClusterV2NetworkHttpProxyListIpAddress:ClusterV2NetworkHttpProxyListIpAddress"
          },
          "description": "- (Optional) An unique address that identifies a device on the internet or a local network in IPv4 or IPv6 format.\n"
        },
        "name": {
          "type": "string",
          "description": "- (Required) HTTP Proxy server name configuration needed to access a cluster which is hosted behind a HTTP Proxy to not reveal its identity.\n"
        },
        "password": {
          "type": "string",
          "description": "- (Optional) HTTP Proxy server password needed to access a cluster which is hosted behind a HTTP Proxy to not reveal its identity.\n",
          "secret": true
        },
        "port": {
          "type": "integer",
          "description": "- (Optional) HTTP Proxy server port configuration needed to access a cluster which is hosted behind a HTTP Proxy to not reveal its identity.\n"
        },
        "proxyTypes": {
          "type": "array",
          "items": {
            "type": "string"
          }
        },
        "username": {
          "type": "string",
          "description": "- (Optional) HTTP Proxy server username needed to access a cluster which is hosted behind a HTTP Proxy to not reveal its identity.\n"
        }
      },
      "type": "object",
      "required": [
        "name"
      ],
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "ipAddresses",
            "name",
            "port",
            "proxyTypes",
            "username"
          ]
        }
      }
    },
    "nutanix:index/ClusterV2NetworkHttpProxyListIpAddress:ClusterV2NetworkHttpProxyListIpAddress": {
      "properties": {
        "ipv4s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FClusterV2NetworkHttpProxyListIpAddressIpv4:ClusterV2NetworkHttpProxyListIpAddressIpv4"
          },
          "description": "- (Optional) ip address params.\n"
        },
        "ipv6s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FClusterV2NetworkHttpProxyListIpAddressIpv6:ClusterV2NetworkHttpProxyListIpAddressIpv6"
          },
          "description": "- (Optional) Ip address params.\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "ipv4s",
            "ipv6s"
          ]
        }
      }
    },
    "nutanix:index/ClusterV2NetworkHttpProxyListIpAddressIpv4:ClusterV2NetworkHttpProxyListIpAddressIpv4": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "- (Optional) The prefix length of the network to which this host IPv4 address belongs.\n"
        },
        "value": {
          "type": "string",
          "description": "- (Required) Ip address.\n"
        }
      },
      "type": "object",
      "required": [
        "value"
      ]
    },
    "nutanix:index/ClusterV2NetworkHttpProxyListIpAddressIpv6:ClusterV2NetworkHttpProxyListIpAddressIpv6": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "- (Optional) The prefix length of the network to which this host IPv4 address belongs.\n"
        },
        "value": {
          "type": "string",
          "description": "- (Required) Ip address.\n"
        }
      },
      "type": "object",
      "required": [
        "value"
      ]
    },
    "nutanix:index/ClusterV2NetworkHttpProxyWhiteList:ClusterV2NetworkHttpProxyWhiteList": {
      "properties": {
        "target": {
          "type": "string",
          "description": "- (Required) Target's identifier which is exempted from going through the configured HTTP Proxy.\n"
        },
        "targetType": {
          "type": "string",
          "description": "- (Optional) Target type.\nValid values are:\n- \"IPV6_ADDRESS\"\tIPV6 address.\n- \"HOST_NAME\"\tName of the host.\n- \"IPV4_ADDRESS\"\tIPV4 address.\n- \"DOMAIN_NAME_SUFFIX\"\tDomain Name Suffix required for http proxy whitelist.\n- \"IPV4_NETWORK_MASK\" Network Mask of the IpV4 family.\n"
        }
      },
      "type": "object",
      "required": [
        "target",
        "targetType"
      ]
    },
    "nutanix:index/ClusterV2NetworkManagementServer:ClusterV2NetworkManagementServer": {
      "properties": {
        "ips": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FClusterV2NetworkManagementServerIp:ClusterV2NetworkManagementServerIp"
          },
          "description": "An unique address that identifies a device on the internet or a local network in IPv4 or IPv6 format.\n"
        },
        "isDrsEnabled": {
          "type": "boolean"
        },
        "isInUse": {
          "type": "boolean"
        },
        "isRegistered": {
          "type": "boolean",
          "description": "Indicates whether it is registered or not.\n"
        },
        "type": {
          "type": "string",
          "description": "Management server type.\nValid values are:\n- \"VCENTER\"\tVcenter management server.\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "ips",
            "isDrsEnabled",
            "isInUse",
            "isRegistered",
            "type"
          ]
        }
      }
    },
    "nutanix:index/ClusterV2NetworkManagementServerIp:ClusterV2NetworkManagementServerIp": {
      "properties": {
        "ipv4s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FClusterV2NetworkManagementServerIpIpv4:ClusterV2NetworkManagementServerIpIpv4"
          },
          "description": "- (Optional) ip address params.\n"
        },
        "ipv6s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FClusterV2NetworkManagementServerIpIpv6:ClusterV2NetworkManagementServerIpIpv6"
          },
          "description": "- (Optional) Ip address params.\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "ipv4s",
            "ipv6s"
          ]
        }
      }
    },
    "nutanix:index/ClusterV2NetworkManagementServerIpIpv4:ClusterV2NetworkManagementServerIpIpv4": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "- (Optional) The prefix length of the network to which this host IPv4 address belongs.\n"
        },
        "value": {
          "type": "string",
          "description": "- (Required) Ip address.\n"
        }
      },
      "type": "object",
      "required": [
        "value"
      ]
    },
    "nutanix:index/ClusterV2NetworkManagementServerIpIpv6:ClusterV2NetworkManagementServerIpIpv6": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "- (Optional) The prefix length of the network to which this host IPv4 address belongs.\n"
        },
        "value": {
          "type": "string",
          "description": "- (Required) Ip address.\n"
        }
      },
      "type": "object",
      "required": [
        "value"
      ]
    },
    "nutanix:index/ClusterV2NetworkMasqueradingIp:ClusterV2NetworkMasqueradingIp": {
      "properties": {
        "ipv4s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FClusterV2NetworkMasqueradingIpIpv4:ClusterV2NetworkMasqueradingIpIpv4"
          },
          "description": "- (Optional) ip address params.\n"
        },
        "ipv6s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FClusterV2NetworkMasqueradingIpIpv6:ClusterV2NetworkMasqueradingIpIpv6"
          },
          "description": "- (Optional) Ip address params.\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "ipv4s",
            "ipv6s"
          ]
        }
      }
    },
    "nutanix:index/ClusterV2NetworkMasqueradingIpIpv4:ClusterV2NetworkMasqueradingIpIpv4": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "- (Optional) The prefix length of the network to which this host IPv4 address belongs.\n"
        },
        "value": {
          "type": "string",
          "description": "- (Required) Ip address.\n"
        }
      },
      "type": "object",
      "required": [
        "value"
      ]
    },
    "nutanix:index/ClusterV2NetworkMasqueradingIpIpv6:ClusterV2NetworkMasqueradingIpIpv6": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "- (Optional) The prefix length of the network to which this host IPv4 address belongs.\n"
        },
        "value": {
          "type": "string",
          "description": "- (Required) Ip address.\n"
        }
      },
      "type": "object",
      "required": [
        "value"
      ]
    },
    "nutanix:index/ClusterV2NetworkNameServerIpList:ClusterV2NetworkNameServerIpList": {
      "properties": {
        "fqdns": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FClusterV2NetworkNameServerIpListFqdn:ClusterV2NetworkNameServerIpListFqdn"
          },
          "description": "- (Optional) A fully qualified domain name that specifies its exact location in the tree hierarchy of the Domain Name System.\n"
        },
        "ipv4s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FClusterV2NetworkNameServerIpListIpv4:ClusterV2NetworkNameServerIpListIpv4"
          },
          "description": "- (Optional) ip address params.\n"
        },
        "ipv6s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FClusterV2NetworkNameServerIpListIpv6:ClusterV2NetworkNameServerIpListIpv6"
          },
          "description": "- (Optional) Ip address params.\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "fqdns",
            "ipv4s",
            "ipv6s"
          ]
        }
      }
    },
    "nutanix:index/ClusterV2NetworkNameServerIpListFqdn:ClusterV2NetworkNameServerIpListFqdn": {
      "properties": {
        "value": {
          "type": "string"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "value"
          ]
        }
      }
    },
    "nutanix:index/ClusterV2NetworkNameServerIpListIpv4:ClusterV2NetworkNameServerIpListIpv4": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "- (Optional) The prefix length of the network to which this host IPv4 address belongs.\n"
        },
        "value": {
          "type": "string",
          "description": "- (Required) Ip address.\n"
        }
      },
      "type": "object",
      "required": [
        "value"
      ]
    },
    "nutanix:index/ClusterV2NetworkNameServerIpListIpv6:ClusterV2NetworkNameServerIpListIpv6": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "- (Optional) The prefix length of the network to which this host IPv4 address belongs.\n"
        },
        "value": {
          "type": "string",
          "description": "- (Required) Ip address.\n"
        }
      },
      "type": "object",
      "required": [
        "value"
      ]
    },
    "nutanix:index/ClusterV2NetworkNtpServerIpList:ClusterV2NetworkNtpServerIpList": {
      "properties": {
        "fqdns": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FClusterV2NetworkNtpServerIpListFqdn:ClusterV2NetworkNtpServerIpListFqdn"
          },
          "description": "- (Optional) A fully qualified domain name that specifies its exact location in the tree hierarchy of the Domain Name System.\n"
        },
        "ipv4s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FClusterV2NetworkNtpServerIpListIpv4:ClusterV2NetworkNtpServerIpListIpv4"
          },
          "description": "- (Optional) ip address params.\n"
        },
        "ipv6s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FClusterV2NetworkNtpServerIpListIpv6:ClusterV2NetworkNtpServerIpListIpv6"
          },
          "description": "- (Optional) Ip address params.\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "fqdns",
            "ipv4s",
            "ipv6s"
          ]
        }
      }
    },
    "nutanix:index/ClusterV2NetworkNtpServerIpListFqdn:ClusterV2NetworkNtpServerIpListFqdn": {
      "properties": {
        "value": {
          "type": "string"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "value"
          ]
        }
      }
    },
    "nutanix:index/ClusterV2NetworkNtpServerIpListIpv4:ClusterV2NetworkNtpServerIpListIpv4": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "- (Optional) The prefix length of the network to which this host IPv4 address belongs.\n"
        },
        "value": {
          "type": "string",
          "description": "- (Required) Ip address.\n"
        }
      },
      "type": "object",
      "required": [
        "value"
      ]
    },
    "nutanix:index/ClusterV2NetworkNtpServerIpListIpv6:ClusterV2NetworkNtpServerIpListIpv6": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "- (Optional) The prefix length of the network to which this host IPv4 address belongs.\n"
        },
        "value": {
          "type": "string",
          "description": "- (Required) Ip address.\n"
        }
      },
      "type": "object",
      "required": [
        "value"
      ]
    },
    "nutanix:index/ClusterV2NetworkSmtpServer:ClusterV2NetworkSmtpServer": {
      "properties": {
        "emailAddress": {
          "type": "string",
          "description": "SMTP email address.\n"
        },
        "servers": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FClusterV2NetworkSmtpServerServer:ClusterV2NetworkSmtpServerServer"
          },
          "description": "SMTP network details.\n"
        },
        "type": {
          "type": "string",
          "description": "Type of SMTP server.\nValid values are:\n- \"PLAIN\"\tPlain type SMTP server.\n- \"STARTTLS\"\tStart TLS type SMTP server.\n- \"SSL\"\tSSL type SMTP server.\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "emailAddress",
            "servers",
            "type"
          ]
        }
      }
    },
    "nutanix:index/ClusterV2NetworkSmtpServerServer:ClusterV2NetworkSmtpServerServer": {
      "properties": {
        "ipAddresses": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FClusterV2NetworkSmtpServerServerIpAddress:ClusterV2NetworkSmtpServerServerIpAddress"
          },
          "description": "An unique address that identifies a device on the internet or a local network in IPv4 or IPv6 format.\n"
        },
        "password": {
          "type": "string",
          "description": "SMTP server password.\n",
          "secret": true
        },
        "port": {
          "type": "integer",
          "description": "SMTP port.\n"
        },
        "username": {
          "type": "string",
          "description": "SMTP server user name.\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "ipAddresses",
            "port",
            "username"
          ]
        }
      }
    },
    "nutanix:index/ClusterV2NetworkSmtpServerServerIpAddress:ClusterV2NetworkSmtpServerServerIpAddress": {
      "properties": {
        "fqdns": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FClusterV2NetworkSmtpServerServerIpAddressFqdn:ClusterV2NetworkSmtpServerServerIpAddressFqdn"
          },
          "description": "- (Optional) A fully qualified domain name that specifies its exact location in the tree hierarchy of the Domain Name System.\n"
        },
        "ipv4s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FClusterV2NetworkSmtpServerServerIpAddressIpv4:ClusterV2NetworkSmtpServerServerIpAddressIpv4"
          },
          "description": "- (Optional) ip address params.\n"
        },
        "ipv6s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FClusterV2NetworkSmtpServerServerIpAddressIpv6:ClusterV2NetworkSmtpServerServerIpAddressIpv6"
          },
          "description": "- (Optional) Ip address params.\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "fqdns",
            "ipv4s",
            "ipv6s"
          ]
        }
      }
    },
    "nutanix:index/ClusterV2NetworkSmtpServerServerIpAddressFqdn:ClusterV2NetworkSmtpServerServerIpAddressFqdn": {
      "properties": {
        "value": {
          "type": "string"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "value"
          ]
        }
      }
    },
    "nutanix:index/ClusterV2NetworkSmtpServerServerIpAddressIpv4:ClusterV2NetworkSmtpServerServerIpAddressIpv4": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "- (Optional) The prefix length of the network to which this host IPv4 address belongs.\n"
        },
        "value": {
          "type": "string",
          "description": "- (Required) Ip address.\n"
        }
      },
      "type": "object",
      "required": [
        "value"
      ]
    },
    "nutanix:index/ClusterV2NetworkSmtpServerServerIpAddressIpv6:ClusterV2NetworkSmtpServerServerIpAddressIpv6": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "- (Optional) The prefix length of the network to which this host IPv4 address belongs.\n"
        },
        "value": {
          "type": "string",
          "description": "- (Required) Ip address.\n"
        }
      },
      "type": "object",
      "required": [
        "value"
      ]
    },
    "nutanix:index/ClusterV2Node:ClusterV2Node": {
      "properties": {
        "nodeLists": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FClusterV2NodeNodeList:ClusterV2NodeNodeList"
          },
          "description": "- (Optional) List of nodes in a cluster.\n"
        },
        "numberOfNodes": {
          "type": "integer"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "nodeLists",
            "numberOfNodes"
          ]
        }
      }
    },
    "nutanix:index/ClusterV2NodeNodeList:ClusterV2NodeNodeList": {
      "properties": {
        "controllerVmIps": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FClusterV2NodeNodeListControllerVmIp:ClusterV2NodeNodeListControllerVmIp"
          },
          "description": "- (Required) An unique address that identifies a device on the internet or a local network in IPv4 or IPv6 format.\n"
        },
        "hostIps": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FClusterV2NodeNodeListHostIp:ClusterV2NodeNodeListHostIp"
          },
          "description": "- (Optional) An unique address that identifies a device on the internet or a local network in IPv4 or IPv6 format.\n"
        },
        "nodeUuid": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "controllerVmIps"
      ],
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "controllerVmIps",
            "hostIps",
            "nodeUuid"
          ]
        }
      }
    },
    "nutanix:index/ClusterV2NodeNodeListControllerVmIp:ClusterV2NodeNodeListControllerVmIp": {
      "properties": {
        "ipv4s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FClusterV2NodeNodeListControllerVmIpIpv4:ClusterV2NodeNodeListControllerVmIpIpv4"
          },
          "description": "- (Optional) ip address params.\n"
        },
        "ipv6s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FClusterV2NodeNodeListControllerVmIpIpv6:ClusterV2NodeNodeListControllerVmIpIpv6"
          },
          "description": "- (Optional) Ip address params.\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "ipv4s",
            "ipv6s"
          ]
        }
      }
    },
    "nutanix:index/ClusterV2NodeNodeListControllerVmIpIpv4:ClusterV2NodeNodeListControllerVmIpIpv4": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "- (Optional) The prefix length of the network to which this host IPv4 address belongs.\n"
        },
        "value": {
          "type": "string",
          "description": "- (Required) Ip address.\n"
        }
      },
      "type": "object",
      "required": [
        "value"
      ]
    },
    "nutanix:index/ClusterV2NodeNodeListControllerVmIpIpv6:ClusterV2NodeNodeListControllerVmIpIpv6": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "- (Optional) The prefix length of the network to which this host IPv4 address belongs.\n"
        },
        "value": {
          "type": "string",
          "description": "- (Required) Ip address.\n"
        }
      },
      "type": "object",
      "required": [
        "value"
      ]
    },
    "nutanix:index/ClusterV2NodeNodeListHostIp:ClusterV2NodeNodeListHostIp": {
      "properties": {
        "ipv4s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FClusterV2NodeNodeListHostIpIpv4:ClusterV2NodeNodeListHostIpIpv4"
          },
          "description": "- (Optional) ip address params.\n"
        },
        "ipv6s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FClusterV2NodeNodeListHostIpIpv6:ClusterV2NodeNodeListHostIpIpv6"
          },
          "description": "- (Optional) Ip address params.\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "ipv4s",
            "ipv6s"
          ]
        }
      }
    },
    "nutanix:index/ClusterV2NodeNodeListHostIpIpv4:ClusterV2NodeNodeListHostIpIpv4": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "- (Optional) The prefix length of the network to which this host IPv4 address belongs.\n"
        },
        "value": {
          "type": "string",
          "description": "- (Required) Ip address.\n"
        }
      },
      "type": "object",
      "required": [
        "value"
      ]
    },
    "nutanix:index/ClusterV2NodeNodeListHostIpIpv6:ClusterV2NodeNodeListHostIpIpv6": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "- (Optional) The prefix length of the network to which this host IPv4 address belongs.\n"
        },
        "value": {
          "type": "string",
          "description": "- (Required) Ip address.\n"
        }
      },
      "type": "object",
      "required": [
        "value"
      ]
    },
    "nutanix:index/ClustersDiscoverUnconfiguredNodesV2IpFilterList:ClustersDiscoverUnconfiguredNodesV2IpFilterList": {
      "properties": {
        "ipv4s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FClustersDiscoverUnconfiguredNodesV2IpFilterListIpv4:ClustersDiscoverUnconfiguredNodesV2IpFilterListIpv4"
          },
          "description": "-(Optional) An unique address that identifies a device on the internet or a local network in IPv4 format.\n"
        },
        "ipv6s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FClustersDiscoverUnconfiguredNodesV2IpFilterListIpv6:ClustersDiscoverUnconfiguredNodesV2IpFilterListIpv6"
          },
          "description": "-(Optional) An unique address that identifies a device on the internet or a local network in IPv6 format.\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "ipv4s",
            "ipv6s"
          ]
        }
      }
    },
    "nutanix:index/ClustersDiscoverUnconfiguredNodesV2IpFilterListIpv4:ClustersDiscoverUnconfiguredNodesV2IpFilterListIpv4": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "-(Optional) The prefix length of the network to which this host IPv4/IPv6 address belongs.\n"
        },
        "value": {
          "type": "string",
          "description": "-(Required) The IPv4/IPv6 address of the host.\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "value"
          ]
        }
      }
    },
    "nutanix:index/ClustersDiscoverUnconfiguredNodesV2IpFilterListIpv6:ClustersDiscoverUnconfiguredNodesV2IpFilterListIpv6": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "-(Optional) The prefix length of the network to which this host IPv4/IPv6 address belongs.\n"
        },
        "value": {
          "type": "string",
          "description": "-(Required) The IPv4/IPv6 address of the host.\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "value"
          ]
        }
      }
    },
    "nutanix:index/ClustersDiscoverUnconfiguredNodesV2UnconfiguredNode:ClustersDiscoverUnconfiguredNodesV2UnconfiguredNode": {
      "properties": {
        "arch": {
          "type": "string",
          "description": "Cluster arch type.\n"
        },
        "attributes": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FClustersDiscoverUnconfiguredNodesV2UnconfiguredNodeAttribute:ClustersDiscoverUnconfiguredNodesV2UnconfiguredNodeAttribute"
          },
          "description": "Attributes of a node.\n"
        },
        "clusterId": {
          "type": "string",
          "description": "Cluster ID.\n"
        },
        "cpuTypes": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "CPU type.\n"
        },
        "currentCvmVlanTag": {
          "type": "string",
          "description": "Current CVM VLAN tag.\n"
        },
        "currentNetworkInterface": {
          "type": "string",
          "description": "Current network interface of a node.\n"
        },
        "cvmIps": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FClustersDiscoverUnconfiguredNodesV2UnconfiguredNodeCvmIp:ClustersDiscoverUnconfiguredNodesV2UnconfiguredNodeCvmIp"
          },
          "description": "CVM IP.\n"
        },
        "foundationVersion": {
          "type": "string",
          "description": "Foundation version.\n"
        },
        "hostType": {
          "type": "string",
          "description": "Host type.\n"
        },
        "hypervisorIps": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FClustersDiscoverUnconfiguredNodesV2UnconfiguredNodeHypervisorIp:ClustersDiscoverUnconfiguredNodesV2UnconfiguredNodeHypervisorIp"
          },
          "description": "Hypervisor IP Address.\n"
        },
        "hypervisorType": {
          "type": "string",
          "description": "Hypervisor type.\n"
        },
        "hypervisorVersion": {
          "type": "string",
          "description": "Host version of the node.\n"
        },
        "interfaceIpv6": {
          "type": "string",
          "description": "Interface IPV6 address.\n"
        },
        "ipmiIps": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FClustersDiscoverUnconfiguredNodesV2UnconfiguredNodeIpmiIp:ClustersDiscoverUnconfiguredNodesV2UnconfiguredNodeIpmiIp"
          },
          "description": "IPMI IP Address.\n"
        },
        "isSecureBooted": {
          "type": "boolean",
          "description": "Secure boot status.\n"
        },
        "nodePosition": {
          "type": "string",
          "description": "Position of a node in a rackable unit.\n"
        },
        "nodeUuid": {
          "type": "string",
          "description": "UUID of the host.\n"
        },
        "nosVersion": {
          "type": "string",
          "description": "NOS software version of a node.\n"
        },
        "rackableUnitMaxNodes": {
          "type": "integer",
          "description": "Maximum number of nodes in rackable-unit.\n"
        },
        "rackableUnitModel": {
          "type": "string",
          "description": "Rackable unit model type.\n"
        },
        "rackableUnitSerial": {
          "type": "string",
          "description": "Rackable unit serial name.\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "arch",
            "attributes",
            "clusterId",
            "cpuTypes",
            "currentCvmVlanTag",
            "currentNetworkInterface",
            "cvmIps",
            "foundationVersion",
            "hostType",
            "hypervisorIps",
            "hypervisorType",
            "hypervisorVersion",
            "interfaceIpv6",
            "ipmiIps",
            "isSecureBooted",
            "nodePosition",
            "nodeUuid",
            "nosVersion",
            "rackableUnitMaxNodes",
            "rackableUnitModel",
            "rackableUnitSerial"
          ]
        }
      }
    },
    "nutanix:index/ClustersDiscoverUnconfiguredNodesV2UnconfiguredNodeAttribute:ClustersDiscoverUnconfiguredNodesV2UnconfiguredNodeAttribute": {
      "properties": {
        "defaultWorkload": {
          "type": "string",
          "description": "Default workload.\n"
        },
        "isModelSupported": {
          "type": "boolean",
          "description": "Indicates whether the model is supported or not.\n"
        },
        "isRoboMixedHypervisor": {
          "type": "boolean",
          "description": "Indicates whether the hypervisor is robo mixed or not.\n"
        },
        "lcmFamily": {
          "type": "string",
          "description": "LCM family name.\n"
        },
        "shouldWorkWith1gNic": {
          "type": "boolean",
          "description": "Indicates if cvm interface can work with 1 GIG NIC or not.\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "defaultWorkload",
            "isModelSupported",
            "isRoboMixedHypervisor",
            "lcmFamily",
            "shouldWorkWith1gNic"
          ]
        }
      }
    },
    "nutanix:index/ClustersDiscoverUnconfiguredNodesV2UnconfiguredNodeCvmIp:ClustersDiscoverUnconfiguredNodesV2UnconfiguredNodeCvmIp": {
      "properties": {
        "ipv4s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FClustersDiscoverUnconfiguredNodesV2UnconfiguredNodeCvmIpIpv4:ClustersDiscoverUnconfiguredNodesV2UnconfiguredNodeCvmIpIpv4"
          },
          "description": "An unique address that identifies a device on the internet or a local network in IPv4 format.\n"
        },
        "ipv6s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FClustersDiscoverUnconfiguredNodesV2UnconfiguredNodeCvmIpIpv6:ClustersDiscoverUnconfiguredNodesV2UnconfiguredNodeCvmIpIpv6"
          },
          "description": "An unique address that identifies a device on the internet or a local network in IPv6 format.\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "ipv4s",
            "ipv6s"
          ]
        }
      }
    },
    "nutanix:index/ClustersDiscoverUnconfiguredNodesV2UnconfiguredNodeCvmIpIpv4:ClustersDiscoverUnconfiguredNodesV2UnconfiguredNodeCvmIpIpv4": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "-(Optional) The prefix length of the network to which this host IPv4/IPv6 address belongs.\n"
        },
        "value": {
          "type": "string",
          "description": "-(Required) The IPv4/IPv6 address of the host.\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "value"
          ]
        }
      }
    },
    "nutanix:index/ClustersDiscoverUnconfiguredNodesV2UnconfiguredNodeCvmIpIpv6:ClustersDiscoverUnconfiguredNodesV2UnconfiguredNodeCvmIpIpv6": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "-(Optional) The prefix length of the network to which this host IPv4/IPv6 address belongs.\n"
        },
        "value": {
          "type": "string",
          "description": "-(Required) The IPv4/IPv6 address of the host.\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "value"
          ]
        }
      }
    },
    "nutanix:index/ClustersDiscoverUnconfiguredNodesV2UnconfiguredNodeHypervisorIp:ClustersDiscoverUnconfiguredNodesV2UnconfiguredNodeHypervisorIp": {
      "properties": {
        "ipv4s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FClustersDiscoverUnconfiguredNodesV2UnconfiguredNodeHypervisorIpIpv4:ClustersDiscoverUnconfiguredNodesV2UnconfiguredNodeHypervisorIpIpv4"
          },
          "description": "An unique address that identifies a device on the internet or a local network in IPv4 format.\n"
        },
        "ipv6s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FClustersDiscoverUnconfiguredNodesV2UnconfiguredNodeHypervisorIpIpv6:ClustersDiscoverUnconfiguredNodesV2UnconfiguredNodeHypervisorIpIpv6"
          },
          "description": "An unique address that identifies a device on the internet or a local network in IPv6 format.\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "ipv4s",
            "ipv6s"
          ]
        }
      }
    },
    "nutanix:index/ClustersDiscoverUnconfiguredNodesV2UnconfiguredNodeHypervisorIpIpv4:ClustersDiscoverUnconfiguredNodesV2UnconfiguredNodeHypervisorIpIpv4": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "-(Optional) The prefix length of the network to which this host IPv4/IPv6 address belongs.\n"
        },
        "value": {
          "type": "string",
          "description": "-(Required) The IPv4/IPv6 address of the host.\n"
        }
      },
      "type": "object",
      "required": [
        "value"
      ]
    },
    "nutanix:index/ClustersDiscoverUnconfiguredNodesV2UnconfiguredNodeHypervisorIpIpv6:ClustersDiscoverUnconfiguredNodesV2UnconfiguredNodeHypervisorIpIpv6": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "-(Optional) The prefix length of the network to which this host IPv4/IPv6 address belongs.\n"
        },
        "value": {
          "type": "string",
          "description": "-(Required) The IPv4/IPv6 address of the host.\n"
        }
      },
      "type": "object",
      "required": [
        "value"
      ]
    },
    "nutanix:index/ClustersDiscoverUnconfiguredNodesV2UnconfiguredNodeIpmiIp:ClustersDiscoverUnconfiguredNodesV2UnconfiguredNodeIpmiIp": {
      "properties": {
        "ipv4s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FClustersDiscoverUnconfiguredNodesV2UnconfiguredNodeIpmiIpIpv4:ClustersDiscoverUnconfiguredNodesV2UnconfiguredNodeIpmiIpIpv4"
          },
          "description": "An unique address that identifies a device on the internet or a local network in IPv4 format.\n"
        },
        "ipv6s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FClustersDiscoverUnconfiguredNodesV2UnconfiguredNodeIpmiIpIpv6:ClustersDiscoverUnconfiguredNodesV2UnconfiguredNodeIpmiIpIpv6"
          },
          "description": "An unique address that identifies a device on the internet or a local network in IPv6 format.\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "ipv4s",
            "ipv6s"
          ]
        }
      }
    },
    "nutanix:index/ClustersDiscoverUnconfiguredNodesV2UnconfiguredNodeIpmiIpIpv4:ClustersDiscoverUnconfiguredNodesV2UnconfiguredNodeIpmiIpIpv4": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "-(Optional) The prefix length of the network to which this host IPv4/IPv6 address belongs.\n"
        },
        "value": {
          "type": "string",
          "description": "-(Required) The IPv4/IPv6 address of the host.\n"
        }
      },
      "type": "object",
      "required": [
        "value"
      ]
    },
    "nutanix:index/ClustersDiscoverUnconfiguredNodesV2UnconfiguredNodeIpmiIpIpv6:ClustersDiscoverUnconfiguredNodesV2UnconfiguredNodeIpmiIpIpv6": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "-(Optional) The prefix length of the network to which this host IPv4/IPv6 address belongs.\n"
        },
        "value": {
          "type": "string",
          "description": "-(Required) The IPv4/IPv6 address of the host.\n"
        }
      },
      "type": "object",
      "required": [
        "value"
      ]
    },
    "nutanix:index/ClustersUnconfiguredNodeNetworksV2NodeList:ClustersUnconfiguredNodeNetworksV2NodeList": {
      "properties": {
        "blockId": {
          "type": "string",
          "description": "-(Optional) Block ID.\n"
        },
        "currentNetworkInterface": {
          "type": "string",
          "description": "-(Optional) Current network interface.\n"
        },
        "cvmIps": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FClustersUnconfiguredNodeNetworksV2NodeListCvmIp:ClustersUnconfiguredNodeNetworksV2NodeListCvmIp"
          },
          "description": "-(Optional) CVM IP.\n"
        },
        "digitalCertificateMapLists": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FClustersUnconfiguredNodeNetworksV2NodeListDigitalCertificateMapList:ClustersUnconfiguredNodeNetworksV2NodeListDigitalCertificateMapList"
          },
          "description": "-(Optional) Digital certificate map list.\n"
        },
        "hypervisorIps": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FClustersUnconfiguredNodeNetworksV2NodeListHypervisorIp:ClustersUnconfiguredNodeNetworksV2NodeListHypervisorIp"
          },
          "description": "-(Optional) Hypervisor IP.\n"
        },
        "hypervisorType": {
          "type": "string",
          "description": "-(Optional) Hypervisor type.\n"
        },
        "hypervisorVersion": {
          "type": "string",
          "description": "-(Optional) Hypervisor version.\n"
        },
        "ipmiIps": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FClustersUnconfiguredNodeNetworksV2NodeListIpmiIp:ClustersUnconfiguredNodeNetworksV2NodeListIpmiIp"
          },
          "description": "-(Optional) IPMI IP.\n"
        },
        "isComputeOnly": {
          "type": "boolean",
          "description": "-(Optional) Is compute only.\n"
        },
        "isLightCompute": {
          "type": "boolean"
        },
        "isRoboMixedHypervisor": {
          "type": "boolean",
          "description": "-(Optional) Is ROBO mixed hypervisor.\n"
        },
        "model": {
          "type": "string",
          "description": "-(Optional) Model name.\n"
        },
        "nodePosition": {
          "type": "string",
          "description": "-(Optional) Node position.\n"
        },
        "nodeUuid": {
          "type": "string",
          "description": "-(Optional) Node UUID.\n"
        },
        "nosVersion": {
          "type": "string",
          "description": "-(Optional) NOS version.\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "blockId",
            "currentNetworkInterface",
            "cvmIps",
            "digitalCertificateMapLists",
            "hypervisorIps",
            "hypervisorType",
            "hypervisorVersion",
            "ipmiIps",
            "isComputeOnly",
            "isLightCompute",
            "isRoboMixedHypervisor",
            "model",
            "nodePosition",
            "nodeUuid",
            "nosVersion"
          ]
        }
      }
    },
    "nutanix:index/ClustersUnconfiguredNodeNetworksV2NodeListCvmIp:ClustersUnconfiguredNodeNetworksV2NodeListCvmIp": {
      "properties": {
        "ipv4s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FClustersUnconfiguredNodeNetworksV2NodeListCvmIpIpv4:ClustersUnconfiguredNodeNetworksV2NodeListCvmIpIpv4"
          },
          "description": "-(Optional) An unique address that identifies a device on the internet or a local network in IPv4 format.\n"
        },
        "ipv6s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FClustersUnconfiguredNodeNetworksV2NodeListCvmIpIpv6:ClustersUnconfiguredNodeNetworksV2NodeListCvmIpIpv6"
          },
          "description": "-(Optional) An unique address that identifies a device on the internet or a local network in IPv6 format.\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "ipv4s",
            "ipv6s"
          ]
        }
      }
    },
    "nutanix:index/ClustersUnconfiguredNodeNetworksV2NodeListCvmIpIpv4:ClustersUnconfiguredNodeNetworksV2NodeListCvmIpIpv4": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "-(Optional) The prefix length of the network to which this host IPv4/IPv6 address belongs.\n"
        },
        "value": {
          "type": "string",
          "description": "-(Required) The IPv4/IPv6 address of the host.\n"
        }
      },
      "type": "object",
      "required": [
        "value"
      ]
    },
    "nutanix:index/ClustersUnconfiguredNodeNetworksV2NodeListCvmIpIpv6:ClustersUnconfiguredNodeNetworksV2NodeListCvmIpIpv6": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "-(Optional) The prefix length of the network to which this host IPv4/IPv6 address belongs.\n"
        },
        "value": {
          "type": "string",
          "description": "-(Required) The IPv4/IPv6 address of the host.\n"
        }
      },
      "type": "object",
      "required": [
        "value"
      ]
    },
    "nutanix:index/ClustersUnconfiguredNodeNetworksV2NodeListDigitalCertificateMapList:ClustersUnconfiguredNodeNetworksV2NodeListDigitalCertificateMapList": {
      "properties": {
        "key": {
          "type": "string",
          "description": "-(Optional) Field containing<span pulumi-lang-nodejs=\" digitalCertificateBase64 \" pulumi-lang-dotnet=\" DigitalCertificateBase64 \" pulumi-lang-go=\" digitalCertificateBase64 \" pulumi-lang-python=\" digital_certificate_base64 \" pulumi-lang-yaml=\" digitalCertificateBase64 \" pulumi-lang-java=\" digitalCertificateBase64 \"> digital_certificate_base64 </span>and<span pulumi-lang-nodejs=\" keyManagementServerUuid \" pulumi-lang-dotnet=\" KeyManagementServerUuid \" pulumi-lang-go=\" keyManagementServerUuid \" pulumi-lang-python=\" key_management_server_uuid \" pulumi-lang-yaml=\" keyManagementServerUuid \" pulumi-lang-java=\" keyManagementServerUuid \"> key_management_server_uuid </span>for key management server.\n"
        },
        "value": {
          "type": "string"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "key",
            "value"
          ]
        }
      }
    },
    "nutanix:index/ClustersUnconfiguredNodeNetworksV2NodeListHypervisorIp:ClustersUnconfiguredNodeNetworksV2NodeListHypervisorIp": {
      "properties": {
        "ipv4s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FClustersUnconfiguredNodeNetworksV2NodeListHypervisorIpIpv4:ClustersUnconfiguredNodeNetworksV2NodeListHypervisorIpIpv4"
          },
          "description": "-(Optional) An unique address that identifies a device on the internet or a local network in IPv4 format.\n"
        },
        "ipv6s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FClustersUnconfiguredNodeNetworksV2NodeListHypervisorIpIpv6:ClustersUnconfiguredNodeNetworksV2NodeListHypervisorIpIpv6"
          },
          "description": "-(Optional) An unique address that identifies a device on the internet or a local network in IPv6 format.\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "ipv4s",
            "ipv6s"
          ]
        }
      }
    },
    "nutanix:index/ClustersUnconfiguredNodeNetworksV2NodeListHypervisorIpIpv4:ClustersUnconfiguredNodeNetworksV2NodeListHypervisorIpIpv4": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "-(Optional) The prefix length of the network to which this host IPv4/IPv6 address belongs.\n"
        },
        "value": {
          "type": "string",
          "description": "-(Required) The IPv4/IPv6 address of the host.\n"
        }
      },
      "type": "object",
      "required": [
        "value"
      ]
    },
    "nutanix:index/ClustersUnconfiguredNodeNetworksV2NodeListHypervisorIpIpv6:ClustersUnconfiguredNodeNetworksV2NodeListHypervisorIpIpv6": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "-(Optional) The prefix length of the network to which this host IPv4/IPv6 address belongs.\n"
        },
        "value": {
          "type": "string",
          "description": "-(Required) The IPv4/IPv6 address of the host.\n"
        }
      },
      "type": "object",
      "required": [
        "value"
      ]
    },
    "nutanix:index/ClustersUnconfiguredNodeNetworksV2NodeListIpmiIp:ClustersUnconfiguredNodeNetworksV2NodeListIpmiIp": {
      "properties": {
        "ipv4s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FClustersUnconfiguredNodeNetworksV2NodeListIpmiIpIpv4:ClustersUnconfiguredNodeNetworksV2NodeListIpmiIpIpv4"
          },
          "description": "-(Optional) An unique address that identifies a device on the internet or a local network in IPv4 format.\n"
        },
        "ipv6s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FClustersUnconfiguredNodeNetworksV2NodeListIpmiIpIpv6:ClustersUnconfiguredNodeNetworksV2NodeListIpmiIpIpv6"
          },
          "description": "-(Optional) An unique address that identifies a device on the internet or a local network in IPv6 format.\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "ipv4s",
            "ipv6s"
          ]
        }
      }
    },
    "nutanix:index/ClustersUnconfiguredNodeNetworksV2NodeListIpmiIpIpv4:ClustersUnconfiguredNodeNetworksV2NodeListIpmiIpIpv4": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "-(Optional) The prefix length of the network to which this host IPv4/IPv6 address belongs.\n"
        },
        "value": {
          "type": "string",
          "description": "-(Required) The IPv4/IPv6 address of the host.\n"
        }
      },
      "type": "object",
      "required": [
        "value"
      ]
    },
    "nutanix:index/ClustersUnconfiguredNodeNetworksV2NodeListIpmiIpIpv6:ClustersUnconfiguredNodeNetworksV2NodeListIpmiIpIpv6": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "-(Optional) The prefix length of the network to which this host IPv4/IPv6 address belongs.\n"
        },
        "value": {
          "type": "string",
          "description": "-(Required) The IPv4/IPv6 address of the host.\n"
        }
      },
      "type": "object",
      "required": [
        "value"
      ]
    },
    "nutanix:index/ClustersUnconfiguredNodeNetworksV2NodesNetworkingDetail:ClustersUnconfiguredNodeNetworksV2NodesNetworkingDetail": {
      "properties": {
        "networkInfos": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FClustersUnconfiguredNodeNetworksV2NodesNetworkingDetailNetworkInfo:ClustersUnconfiguredNodeNetworksV2NodesNetworkingDetailNetworkInfo"
          },
          "description": "- Network information for the given nodes.\n"
        },
        "uplinks": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FClustersUnconfiguredNodeNetworksV2NodesNetworkingDetailUplink:ClustersUnconfiguredNodeNetworksV2NodesNetworkingDetailUplink"
          },
          "description": "- List of uplinks information for each CVM IP.\n"
        },
        "warnings": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "- List of warning messages.\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "networkInfos",
            "uplinks",
            "warnings"
          ]
        }
      }
    },
    "nutanix:index/ClustersUnconfiguredNodeNetworksV2NodesNetworkingDetailNetworkInfo:ClustersUnconfiguredNodeNetworksV2NodesNetworkingDetailNetworkInfo": {
      "properties": {
        "hcis": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FClustersUnconfiguredNodeNetworksV2NodesNetworkingDetailNetworkInfoHci:ClustersUnconfiguredNodeNetworksV2NodesNetworkingDetailNetworkInfoHci"
          },
          "description": "- Network information of HCI nodes.\n"
        },
        "sos": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FClustersUnconfiguredNodeNetworksV2NodesNetworkingDetailNetworkInfoSo:ClustersUnconfiguredNodeNetworksV2NodesNetworkingDetailNetworkInfoSo"
          },
          "description": "- Network information of SO nodes.\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "hcis",
            "sos"
          ]
        }
      }
    },
    "nutanix:index/ClustersUnconfiguredNodeNetworksV2NodesNetworkingDetailNetworkInfoHci:ClustersUnconfiguredNodeNetworksV2NodesNetworkingDetailNetworkInfoHci": {
      "properties": {
        "hypervisorType": {
          "type": "string",
          "description": "- Hypervisor type.\n"
        },
        "name": {
          "type": "string",
          "description": "- Interface name.\n"
        },
        "networks": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "- List of networks for interface.\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "hypervisorType",
            "name",
            "networks"
          ]
        }
      }
    },
    "nutanix:index/ClustersUnconfiguredNodeNetworksV2NodesNetworkingDetailNetworkInfoSo:ClustersUnconfiguredNodeNetworksV2NodesNetworkingDetailNetworkInfoSo": {
      "properties": {
        "hypervisorType": {
          "type": "string",
          "description": "- Hypervisor type.\n"
        },
        "name": {
          "type": "string",
          "description": "- Interface name.\n"
        },
        "networks": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "- List of networks for interface.\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "hypervisorType",
            "name",
            "networks"
          ]
        }
      }
    },
    "nutanix:index/ClustersUnconfiguredNodeNetworksV2NodesNetworkingDetailUplink:ClustersUnconfiguredNodeNetworksV2NodesNetworkingDetailUplink": {
      "properties": {
        "cvmIps": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FClustersUnconfiguredNodeNetworksV2NodesNetworkingDetailUplinkCvmIp:ClustersUnconfiguredNodeNetworksV2NodesNetworkingDetailUplinkCvmIp"
          },
          "description": "- An unique address that identifies a device on the internet or a local network in IPv4 or IPv6 format.\n"
        },
        "uplinkLists": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FClustersUnconfiguredNodeNetworksV2NodesNetworkingDetailUplinkUplinkList:ClustersUnconfiguredNodeNetworksV2NodesNetworkingDetailUplinkUplinkList"
          },
          "description": "- Uplink details for a controller VM.\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "cvmIps",
            "uplinkLists"
          ]
        }
      }
    },
    "nutanix:index/ClustersUnconfiguredNodeNetworksV2NodesNetworkingDetailUplinkCvmIp:ClustersUnconfiguredNodeNetworksV2NodesNetworkingDetailUplinkCvmIp": {
      "properties": {
        "ipv4s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FClustersUnconfiguredNodeNetworksV2NodesNetworkingDetailUplinkCvmIpIpv4:ClustersUnconfiguredNodeNetworksV2NodesNetworkingDetailUplinkCvmIpIpv4"
          },
          "description": "-(Optional) An unique address that identifies a device on the internet or a local network in IPv4 format.\n"
        },
        "ipv6s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FClustersUnconfiguredNodeNetworksV2NodesNetworkingDetailUplinkCvmIpIpv6:ClustersUnconfiguredNodeNetworksV2NodesNetworkingDetailUplinkCvmIpIpv6"
          },
          "description": "-(Optional) An unique address that identifies a device on the internet or a local network in IPv6 format.\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "ipv4s",
            "ipv6s"
          ]
        }
      }
    },
    "nutanix:index/ClustersUnconfiguredNodeNetworksV2NodesNetworkingDetailUplinkCvmIpIpv4:ClustersUnconfiguredNodeNetworksV2NodesNetworkingDetailUplinkCvmIpIpv4": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "-(Optional) The prefix length of the network to which this host IPv4/IPv6 address belongs.\n"
        },
        "value": {
          "type": "string",
          "description": "-(Required) The IPv4/IPv6 address of the host.\n"
        }
      },
      "type": "object",
      "required": [
        "value"
      ]
    },
    "nutanix:index/ClustersUnconfiguredNodeNetworksV2NodesNetworkingDetailUplinkCvmIpIpv6:ClustersUnconfiguredNodeNetworksV2NodesNetworkingDetailUplinkCvmIpIpv6": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "-(Optional) The prefix length of the network to which this host IPv4/IPv6 address belongs.\n"
        },
        "value": {
          "type": "string",
          "description": "-(Required) The IPv4/IPv6 address of the host.\n"
        }
      },
      "type": "object",
      "required": [
        "value"
      ]
    },
    "nutanix:index/ClustersUnconfiguredNodeNetworksV2NodesNetworkingDetailUplinkUplinkList:ClustersUnconfiguredNodeNetworksV2NodesNetworkingDetailUplinkUplinkList": {
      "properties": {
        "mac": {
          "type": "string",
          "description": "- MAC address.\n"
        },
        "name": {
          "type": "string",
          "description": "- Interface name.\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "mac",
            "name"
          ]
        }
      }
    },
    "nutanix:index/DeployTemplatesV2OverrideVmConfigMap:DeployTemplatesV2OverrideVmConfigMap": {
      "properties": {
        "guestCustomizations": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FDeployTemplatesV2OverrideVmConfigMapGuestCustomization:DeployTemplatesV2OverrideVmConfigMapGuestCustomization"
          }
        },
        "memorySizeBytes": {
          "type": "integer"
        },
        "name": {
          "type": "string"
        },
        "nics": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FDeployTemplatesV2OverrideVmConfigMapNic:DeployTemplatesV2OverrideVmConfigMapNic"
          }
        },
        "numCoresPerSocket": {
          "type": "integer"
        },
        "numSockets": {
          "type": "integer"
        },
        "numThreadsPerCore": {
          "type": "integer"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "guestCustomizations"
          ]
        }
      }
    },
    "nutanix:index/DeployTemplatesV2OverrideVmConfigMapGuestCustomization:DeployTemplatesV2OverrideVmConfigMapGuestCustomization": {
      "properties": {
        "configs": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FDeployTemplatesV2OverrideVmConfigMapGuestCustomizationConfig:DeployTemplatesV2OverrideVmConfigMapGuestCustomizationConfig"
          }
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "configs"
          ]
        }
      }
    },
    "nutanix:index/DeployTemplatesV2OverrideVmConfigMapGuestCustomizationConfig:DeployTemplatesV2OverrideVmConfigMapGuestCustomizationConfig": {
      "properties": {
        "cloudInits": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FDeployTemplatesV2OverrideVmConfigMapGuestCustomizationConfigCloudInit:DeployTemplatesV2OverrideVmConfigMapGuestCustomizationConfigCloudInit"
          }
        },
        "syspreps": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FDeployTemplatesV2OverrideVmConfigMapGuestCustomizationConfigSysprep:DeployTemplatesV2OverrideVmConfigMapGuestCustomizationConfigSysprep"
          }
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "cloudInits",
            "syspreps"
          ]
        }
      }
    },
    "nutanix:index/DeployTemplatesV2OverrideVmConfigMapGuestCustomizationConfigCloudInit:DeployTemplatesV2OverrideVmConfigMapGuestCustomizationConfigCloudInit": {
      "properties": {
        "cloudInitScripts": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FDeployTemplatesV2OverrideVmConfigMapGuestCustomizationConfigCloudInitCloudInitScript:DeployTemplatesV2OverrideVmConfigMapGuestCustomizationConfigCloudInitCloudInitScript"
          }
        },
        "datasourceType": {
          "type": "string"
        },
        "metadata": {
          "type": "string"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "cloudInitScripts",
            "metadata"
          ]
        }
      }
    },
    "nutanix:index/DeployTemplatesV2OverrideVmConfigMapGuestCustomizationConfigCloudInitCloudInitScript:DeployTemplatesV2OverrideVmConfigMapGuestCustomizationConfigCloudInitCloudInitScript": {
      "properties": {
        "customKeyValues": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FDeployTemplatesV2OverrideVmConfigMapGuestCustomizationConfigCloudInitCloudInitScriptCustomKeyValue:DeployTemplatesV2OverrideVmConfigMapGuestCustomizationConfigCloudInitCloudInitScriptCustomKeyValue"
          }
        },
        "userDatas": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FDeployTemplatesV2OverrideVmConfigMapGuestCustomizationConfigCloudInitCloudInitScriptUserData:DeployTemplatesV2OverrideVmConfigMapGuestCustomizationConfigCloudInitCloudInitScriptUserData"
          }
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "customKeyValues",
            "userDatas"
          ]
        }
      }
    },
    "nutanix:index/DeployTemplatesV2OverrideVmConfigMapGuestCustomizationConfigCloudInitCloudInitScriptCustomKeyValue:DeployTemplatesV2OverrideVmConfigMapGuestCustomizationConfigCloudInitCloudInitScriptCustomKeyValue": {
      "properties": {
        "keyValuePairs": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FDeployTemplatesV2OverrideVmConfigMapGuestCustomizationConfigCloudInitCloudInitScriptCustomKeyValueKeyValuePair:DeployTemplatesV2OverrideVmConfigMapGuestCustomizationConfigCloudInitCloudInitScriptCustomKeyValueKeyValuePair"
          }
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "keyValuePairs"
          ]
        }
      }
    },
    "nutanix:index/DeployTemplatesV2OverrideVmConfigMapGuestCustomizationConfigCloudInitCloudInitScriptCustomKeyValueKeyValuePair:DeployTemplatesV2OverrideVmConfigMapGuestCustomizationConfigCloudInitCloudInitScriptCustomKeyValueKeyValuePair": {
      "properties": {
        "name": {
          "type": "string"
        },
        "values": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FDeployTemplatesV2OverrideVmConfigMapGuestCustomizationConfigCloudInitCloudInitScriptCustomKeyValueKeyValuePairValue:DeployTemplatesV2OverrideVmConfigMapGuestCustomizationConfigCloudInitCloudInitScriptCustomKeyValueKeyValuePairValue"
          }
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "name",
            "values"
          ]
        }
      }
    },
    "nutanix:index/DeployTemplatesV2OverrideVmConfigMapGuestCustomizationConfigCloudInitCloudInitScriptCustomKeyValueKeyValuePairValue:DeployTemplatesV2OverrideVmConfigMapGuestCustomizationConfigCloudInitCloudInitScriptCustomKeyValueKeyValuePairValue": {
      "properties": {
        "boolean": {
          "type": "boolean"
        },
        "integer": {
          "type": "integer"
        },
        "integerLists": {
          "type": "array",
          "items": {
            "type": "integer"
          }
        },
        "mapOfStrings": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FDeployTemplatesV2OverrideVmConfigMapGuestCustomizationConfigCloudInitCloudInitScriptCustomKeyValueKeyValuePairValueMapOfString:DeployTemplatesV2OverrideVmConfigMapGuestCustomizationConfigCloudInitCloudInitScriptCustomKeyValueKeyValuePairValueMapOfString"
          }
        },
        "object": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          }
        },
        "string": {
          "type": "string"
        },
        "stringLists": {
          "type": "array",
          "items": {
            "type": "string"
          }
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "boolean",
            "integer",
            "integerLists",
            "mapOfStrings",
            "object",
            "string",
            "stringLists"
          ]
        }
      }
    },
    "nutanix:index/DeployTemplatesV2OverrideVmConfigMapGuestCustomizationConfigCloudInitCloudInitScriptCustomKeyValueKeyValuePairValueMapOfString:DeployTemplatesV2OverrideVmConfigMapGuestCustomizationConfigCloudInitCloudInitScriptCustomKeyValueKeyValuePairValueMapOfString": {
      "properties": {
        "map": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          }
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "map"
          ]
        }
      }
    },
    "nutanix:index/DeployTemplatesV2OverrideVmConfigMapGuestCustomizationConfigCloudInitCloudInitScriptUserData:DeployTemplatesV2OverrideVmConfigMapGuestCustomizationConfigCloudInitCloudInitScriptUserData": {
      "properties": {
        "value": {
          "type": "string"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "value"
          ]
        }
      }
    },
    "nutanix:index/DeployTemplatesV2OverrideVmConfigMapGuestCustomizationConfigSysprep:DeployTemplatesV2OverrideVmConfigMapGuestCustomizationConfigSysprep": {
      "properties": {
        "installType": {
          "type": "string"
        },
        "sysprepScripts": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FDeployTemplatesV2OverrideVmConfigMapGuestCustomizationConfigSysprepSysprepScript:DeployTemplatesV2OverrideVmConfigMapGuestCustomizationConfigSysprepSysprepScript"
          }
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "installType",
            "sysprepScripts"
          ]
        }
      }
    },
    "nutanix:index/DeployTemplatesV2OverrideVmConfigMapGuestCustomizationConfigSysprepSysprepScript:DeployTemplatesV2OverrideVmConfigMapGuestCustomizationConfigSysprepSysprepScript": {
      "properties": {
        "customKeyValues": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FDeployTemplatesV2OverrideVmConfigMapGuestCustomizationConfigSysprepSysprepScriptCustomKeyValue:DeployTemplatesV2OverrideVmConfigMapGuestCustomizationConfigSysprepSysprepScriptCustomKeyValue"
          }
        },
        "unattendXmls": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FDeployTemplatesV2OverrideVmConfigMapGuestCustomizationConfigSysprepSysprepScriptUnattendXml:DeployTemplatesV2OverrideVmConfigMapGuestCustomizationConfigSysprepSysprepScriptUnattendXml"
          }
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "customKeyValues",
            "unattendXmls"
          ]
        }
      }
    },
    "nutanix:index/DeployTemplatesV2OverrideVmConfigMapGuestCustomizationConfigSysprepSysprepScriptCustomKeyValue:DeployTemplatesV2OverrideVmConfigMapGuestCustomizationConfigSysprepSysprepScriptCustomKeyValue": {
      "properties": {
        "keyValuePairs": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FDeployTemplatesV2OverrideVmConfigMapGuestCustomizationConfigSysprepSysprepScriptCustomKeyValueKeyValuePair:DeployTemplatesV2OverrideVmConfigMapGuestCustomizationConfigSysprepSysprepScriptCustomKeyValueKeyValuePair"
          }
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "keyValuePairs"
          ]
        }
      }
    },
    "nutanix:index/DeployTemplatesV2OverrideVmConfigMapGuestCustomizationConfigSysprepSysprepScriptCustomKeyValueKeyValuePair:DeployTemplatesV2OverrideVmConfigMapGuestCustomizationConfigSysprepSysprepScriptCustomKeyValueKeyValuePair": {
      "properties": {
        "name": {
          "type": "string"
        },
        "values": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FDeployTemplatesV2OverrideVmConfigMapGuestCustomizationConfigSysprepSysprepScriptCustomKeyValueKeyValuePairValue:DeployTemplatesV2OverrideVmConfigMapGuestCustomizationConfigSysprepSysprepScriptCustomKeyValueKeyValuePairValue"
          }
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "name",
            "values"
          ]
        }
      }
    },
    "nutanix:index/DeployTemplatesV2OverrideVmConfigMapGuestCustomizationConfigSysprepSysprepScriptCustomKeyValueKeyValuePairValue:DeployTemplatesV2OverrideVmConfigMapGuestCustomizationConfigSysprepSysprepScriptCustomKeyValueKeyValuePairValue": {
      "properties": {
        "boolean": {
          "type": "boolean"
        },
        "integer": {
          "type": "integer"
        },
        "integerLists": {
          "type": "array",
          "items": {
            "type": "integer"
          }
        },
        "mapOfStrings": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FDeployTemplatesV2OverrideVmConfigMapGuestCustomizationConfigSysprepSysprepScriptCustomKeyValueKeyValuePairValueMapOfString:DeployTemplatesV2OverrideVmConfigMapGuestCustomizationConfigSysprepSysprepScriptCustomKeyValueKeyValuePairValueMapOfString"
          }
        },
        "object": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          }
        },
        "string": {
          "type": "string"
        },
        "stringLists": {
          "type": "array",
          "items": {
            "type": "string"
          }
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "boolean",
            "integer",
            "integerLists",
            "mapOfStrings",
            "object",
            "string",
            "stringLists"
          ]
        }
      }
    },
    "nutanix:index/DeployTemplatesV2OverrideVmConfigMapGuestCustomizationConfigSysprepSysprepScriptCustomKeyValueKeyValuePairValueMapOfString:DeployTemplatesV2OverrideVmConfigMapGuestCustomizationConfigSysprepSysprepScriptCustomKeyValueKeyValuePairValueMapOfString": {
      "properties": {
        "map": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          }
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "map"
          ]
        }
      }
    },
    "nutanix:index/DeployTemplatesV2OverrideVmConfigMapGuestCustomizationConfigSysprepSysprepScriptUnattendXml:DeployTemplatesV2OverrideVmConfigMapGuestCustomizationConfigSysprepSysprepScriptUnattendXml": {
      "properties": {
        "value": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "value"
      ]
    },
    "nutanix:index/DeployTemplatesV2OverrideVmConfigMapNic:DeployTemplatesV2OverrideVmConfigMapNic": {
      "properties": {
        "backingInfos": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FDeployTemplatesV2OverrideVmConfigMapNicBackingInfo:DeployTemplatesV2OverrideVmConfigMapNicBackingInfo"
          }
        },
        "extId": {
          "type": "string"
        },
        "networkInfos": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FDeployTemplatesV2OverrideVmConfigMapNicNetworkInfo:DeployTemplatesV2OverrideVmConfigMapNicNetworkInfo"
          }
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "extId"
          ]
        }
      }
    },
    "nutanix:index/DeployTemplatesV2OverrideVmConfigMapNicBackingInfo:DeployTemplatesV2OverrideVmConfigMapNicBackingInfo": {
      "properties": {
        "isConnected": {
          "type": "boolean"
        },
        "macAddress": {
          "type": "string"
        },
        "model": {
          "type": "string"
        },
        "numQueues": {
          "type": "integer"
        }
      },
      "type": "object"
    },
    "nutanix:index/DeployTemplatesV2OverrideVmConfigMapNicNetworkInfo:DeployTemplatesV2OverrideVmConfigMapNicNetworkInfo": {
      "properties": {
        "ipv4Configs": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FDeployTemplatesV2OverrideVmConfigMapNicNetworkInfoIpv4Config:DeployTemplatesV2OverrideVmConfigMapNicNetworkInfoIpv4Config"
          }
        },
        "ipv4Infos": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FDeployTemplatesV2OverrideVmConfigMapNicNetworkInfoIpv4Info:DeployTemplatesV2OverrideVmConfigMapNicNetworkInfoIpv4Info"
          }
        },
        "networkFunctionChains": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FDeployTemplatesV2OverrideVmConfigMapNicNetworkInfoNetworkFunctionChain:DeployTemplatesV2OverrideVmConfigMapNicNetworkInfoNetworkFunctionChain"
          }
        },
        "networkFunctionNicType": {
          "type": "string"
        },
        "nicType": {
          "type": "string"
        },
        "shouldAllowUnknownMacs": {
          "type": "boolean"
        },
        "subnets": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FDeployTemplatesV2OverrideVmConfigMapNicNetworkInfoSubnet:DeployTemplatesV2OverrideVmConfigMapNicNetworkInfoSubnet"
          }
        },
        "trunkedVlans": {
          "type": "array",
          "items": {
            "type": "integer"
          }
        },
        "vlanMode": {
          "type": "string"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "ipv4Infos"
          ]
        }
      }
    },
    "nutanix:index/DeployTemplatesV2OverrideVmConfigMapNicNetworkInfoIpv4Config:DeployTemplatesV2OverrideVmConfigMapNicNetworkInfoIpv4Config": {
      "properties": {
        "ipAddresses": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FDeployTemplatesV2OverrideVmConfigMapNicNetworkInfoIpv4ConfigIpAddress:DeployTemplatesV2OverrideVmConfigMapNicNetworkInfoIpv4ConfigIpAddress"
          }
        },
        "secondaryIpAddressLists": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FDeployTemplatesV2OverrideVmConfigMapNicNetworkInfoIpv4ConfigSecondaryIpAddressList:DeployTemplatesV2OverrideVmConfigMapNicNetworkInfoIpv4ConfigSecondaryIpAddressList"
          }
        },
        "shouldAssignIp": {
          "type": "boolean"
        }
      },
      "type": "object"
    },
    "nutanix:index/DeployTemplatesV2OverrideVmConfigMapNicNetworkInfoIpv4ConfigIpAddress:DeployTemplatesV2OverrideVmConfigMapNicNetworkInfoIpv4ConfigIpAddress": {
      "properties": {
        "prefixLength": {
          "type": "integer"
        },
        "value": {
          "type": "string"
        }
      },
      "type": "object"
    },
    "nutanix:index/DeployTemplatesV2OverrideVmConfigMapNicNetworkInfoIpv4ConfigSecondaryIpAddressList:DeployTemplatesV2OverrideVmConfigMapNicNetworkInfoIpv4ConfigSecondaryIpAddressList": {
      "properties": {
        "prefixLength": {
          "type": "integer"
        },
        "value": {
          "type": "string"
        }
      },
      "type": "object"
    },
    "nutanix:index/DeployTemplatesV2OverrideVmConfigMapNicNetworkInfoIpv4Info:DeployTemplatesV2OverrideVmConfigMapNicNetworkInfoIpv4Info": {
      "properties": {
        "learnedIpAddresses": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FDeployTemplatesV2OverrideVmConfigMapNicNetworkInfoIpv4InfoLearnedIpAddress:DeployTemplatesV2OverrideVmConfigMapNicNetworkInfoIpv4InfoLearnedIpAddress"
          }
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "learnedIpAddresses"
          ]
        }
      }
    },
    "nutanix:index/DeployTemplatesV2OverrideVmConfigMapNicNetworkInfoIpv4InfoLearnedIpAddress:DeployTemplatesV2OverrideVmConfigMapNicNetworkInfoIpv4InfoLearnedIpAddress": {
      "properties": {
        "prefixLength": {
          "type": "integer"
        },
        "value": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "value"
      ]
    },
    "nutanix:index/DeployTemplatesV2OverrideVmConfigMapNicNetworkInfoNetworkFunctionChain:DeployTemplatesV2OverrideVmConfigMapNicNetworkInfoNetworkFunctionChain": {
      "properties": {
        "extId": {
          "type": "string"
        }
      },
      "type": "object"
    },
    "nutanix:index/DeployTemplatesV2OverrideVmConfigMapNicNetworkInfoSubnet:DeployTemplatesV2OverrideVmConfigMapNicNetworkInfoSubnet": {
      "properties": {
        "extId": {
          "type": "string"
        }
      },
      "type": "object"
    },
    "nutanix:index/DirectoryServicesV2OpenLdapConfiguration:DirectoryServicesV2OpenLdapConfiguration": {
      "properties": {
        "userConfigurations": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FDirectoryServicesV2OpenLdapConfigurationUserConfiguration:DirectoryServicesV2OpenLdapConfigurationUserConfiguration"
          },
          "description": "-(Required) this field will avoid down migration of data from the hot tier unless the overrides field is specified for the virtual disks.\n"
        },
        "userGroupConfigurations": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FDirectoryServicesV2OpenLdapConfigurationUserGroupConfiguration:DirectoryServicesV2OpenLdapConfigurationUserGroupConfiguration"
          },
          "description": "-(Required) this field will avoid down migration of data from the hot tier unless the overrides field is specified for the virtual disks.\n"
        }
      },
      "type": "object",
      "required": [
        "userConfigurations",
        "userGroupConfigurations"
      ]
    },
    "nutanix:index/DirectoryServicesV2OpenLdapConfigurationUserConfiguration:DirectoryServicesV2OpenLdapConfigurationUserConfiguration": {
      "properties": {
        "userObjectClass": {
          "type": "string",
          "description": "-(Required) Object class in the OpenLDAP system that corresponds to Users.\n"
        },
        "userSearchBase": {
          "type": "string",
          "description": "-(Required) Base DN for User search.\n"
        },
        "usernameAttribute": {
          "type": "string",
          "description": "-(Required) Unique Identifier for each User which can be used in Authentication.\n"
        }
      },
      "type": "object",
      "required": [
        "userObjectClass",
        "userSearchBase",
        "usernameAttribute"
      ]
    },
    "nutanix:index/DirectoryServicesV2OpenLdapConfigurationUserGroupConfiguration:DirectoryServicesV2OpenLdapConfigurationUserGroupConfiguration": {
      "properties": {
        "groupMemberAttribute": {
          "type": "string",
          "description": "-(Required) Attribute in a group that associates Users to the group.\n"
        },
        "groupMemberAttributeValue": {
          "type": "string",
          "description": "-(Required) User attribute value that will be used in group entity to associate User to the group.\n"
        },
        "groupObjectClass": {
          "type": "string",
          "description": "-(Required) Object class in the OpenLDAP system that corresponds to groups.\n"
        },
        "groupSearchBase": {
          "type": "string",
          "description": "-(Required) Base DN for group search.\n"
        }
      },
      "type": "object",
      "required": [
        "groupMemberAttribute",
        "groupMemberAttributeValue",
        "groupObjectClass",
        "groupSearchBase"
      ]
    },
    "nutanix:index/DirectoryServicesV2ServiceAccount:DirectoryServicesV2ServiceAccount": {
      "properties": {
        "password": {
          "type": "string",
          "description": "-(Required) Password to connect to the Directory Service.\n",
          "secret": true
        },
        "username": {
          "type": "string",
          "description": "-(Required) Username to connect to the Directory Service.\n"
        }
      },
      "type": "object",
      "required": [
        "password",
        "username"
      ]
    },
    "nutanix:index/FloatingIpV2Association:FloatingIpV2Association": {
      "properties": {
        "privateIpAssociations": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FFloatingIpV2AssociationPrivateIpAssociation:FloatingIpV2AssociationPrivateIpAssociation"
          },
          "description": "Association of Floating IP with private IP\n- `private_ip_association.vpc_reference`: (Required) VPC in which the private IP exists.\n- `private_ip_association.private_ip`: (Required) An unique address that identifies a device on the internet or a local network in IPv4 or IPv6 format.\n"
        },
        "vmNicAssociations": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FFloatingIpV2AssociationVmNicAssociation:FloatingIpV2AssociationVmNicAssociation"
          },
          "description": "Association of Floating IP with nic\n- `vm_nic_association.vm_nic_reference`: (Required) VM NIC reference.\n- `vm_nic_association.vpc_reference`: (Optional) VPC reference to which the VM NIC subnet belongs.\n"
        }
      },
      "type": "object"
    },
    "nutanix:index/FloatingIpV2AssociationPrivateIpAssociation:FloatingIpV2AssociationPrivateIpAssociation": {
      "properties": {
        "privateIps": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FFloatingIpV2AssociationPrivateIpAssociationPrivateIp:FloatingIpV2AssociationPrivateIpAssociationPrivateIp"
          }
        },
        "vpcReference": {
          "type": "string",
          "description": "VPC reference UUID\n"
        }
      },
      "type": "object",
      "required": [
        "privateIps",
        "vpcReference"
      ]
    },
    "nutanix:index/FloatingIpV2AssociationPrivateIpAssociationPrivateIp:FloatingIpV2AssociationPrivateIpAssociationPrivateIp": {
      "properties": {
        "ipv4s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FFloatingIpV2AssociationPrivateIpAssociationPrivateIpIpv4:FloatingIpV2AssociationPrivateIpAssociationPrivateIpIpv4"
          },
          "description": "Reference to IP Configuration\n"
        },
        "ipv6s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FFloatingIpV2AssociationPrivateIpAssociationPrivateIpIpv6:FloatingIpV2AssociationPrivateIpAssociationPrivateIpIpv6"
          },
          "description": "Reference to IP Configuration\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "ipv4s",
            "ipv6s"
          ]
        }
      }
    },
    "nutanix:index/FloatingIpV2AssociationPrivateIpAssociationPrivateIpIpv4:FloatingIpV2AssociationPrivateIpAssociationPrivateIpIpv4": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "Prefix length of the network to which this host IPv4 address belongs. Default value is 32.\n"
        },
        "value": {
          "type": "string",
          "description": "value of address\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "prefixLength",
            "value"
          ]
        }
      }
    },
    "nutanix:index/FloatingIpV2AssociationPrivateIpAssociationPrivateIpIpv6:FloatingIpV2AssociationPrivateIpAssociationPrivateIpIpv6": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "Prefix length of the network to which this host IPv4 address belongs. Default value is 32.\n"
        },
        "value": {
          "type": "string",
          "description": "value of address\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "prefixLength",
            "value"
          ]
        }
      }
    },
    "nutanix:index/FloatingIpV2AssociationVmNicAssociation:FloatingIpV2AssociationVmNicAssociation": {
      "properties": {
        "vmNicReference": {
          "type": "string",
          "description": "VM NIC reference.\n"
        },
        "vpcReference": {
          "type": "string",
          "description": "VPC reference UUID\n"
        }
      },
      "type": "object",
      "required": [
        "vmNicReference"
      ],
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "vmNicReference",
            "vpcReference"
          ]
        }
      }
    },
    "nutanix:index/FloatingIpV2ExternalSubnet:FloatingIpV2ExternalSubnet": {
      "properties": {
        "bridgeName": {
          "type": "string"
        },
        "clusterName": {
          "type": "string"
        },
        "clusterReference": {
          "type": "string"
        },
        "description": {
          "type": "string",
          "description": "Description for the Floating IP.\n"
        },
        "dhcpOptions": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FFloatingIpV2ExternalSubnetDhcpOption:FloatingIpV2ExternalSubnetDhcpOption"
          }
        },
        "dynamicIpAddresses": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FFloatingIpV2ExternalSubnetDynamicIpAddress:FloatingIpV2ExternalSubnetDynamicIpAddress"
          }
        },
        "extId": {
          "type": "string"
        },
        "hypervisorType": {
          "type": "string"
        },
        "ipConfigs": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FFloatingIpV2ExternalSubnetIpConfig:FloatingIpV2ExternalSubnetIpConfig"
          }
        },
        "ipPrefix": {
          "type": "string"
        },
        "ipUsages": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FFloatingIpV2ExternalSubnetIpUsage:FloatingIpV2ExternalSubnetIpUsage"
          }
        },
        "isAdvancedNetworking": {
          "type": "boolean"
        },
        "isExternal": {
          "type": "boolean"
        },
        "isNatEnabled": {
          "type": "boolean"
        },
        "links": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FFloatingIpV2ExternalSubnetLink:FloatingIpV2ExternalSubnetLink"
          },
          "description": "A HATEOAS style link for the response. Each link contains a user-friendly name identifying the link and an address for retrieving the particular resource.\n"
        },
        "migrationState": {
          "type": "string"
        },
        "name": {
          "type": "string",
          "description": "Name of the floating IP.\n"
        },
        "networkFunctionChainReference": {
          "type": "string"
        },
        "networkId": {
          "type": "integer"
        },
        "reservedIpAddresses": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FFloatingIpV2ExternalSubnetReservedIpAddress:FloatingIpV2ExternalSubnetReservedIpAddress"
          }
        },
        "subnetType": {
          "type": "string"
        },
        "virtualSwitchReference": {
          "type": "string"
        },
        "virtualSwitches": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FFloatingIpV2ExternalSubnetVirtualSwitch:FloatingIpV2ExternalSubnetVirtualSwitch"
          }
        },
        "vpcReference": {
          "type": "string",
          "description": "VPC reference UUID\n"
        },
        "vpcs": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FFloatingIpV2ExternalSubnetVpc:FloatingIpV2ExternalSubnetVpc"
          },
          "description": "Networking common base object\n"
        }
      },
      "type": "object",
      "required": [
        "extId"
      ],
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "bridgeName",
            "clusterName",
            "clusterReference",
            "description",
            "dhcpOptions",
            "dynamicIpAddresses",
            "extId",
            "hypervisorType",
            "ipConfigs",
            "ipPrefix",
            "ipUsages",
            "isAdvancedNetworking",
            "isExternal",
            "isNatEnabled",
            "links",
            "migrationState",
            "name",
            "networkFunctionChainReference",
            "networkId",
            "reservedIpAddresses",
            "subnetType",
            "virtualSwitchReference",
            "virtualSwitches",
            "vpcReference",
            "vpcs"
          ]
        }
      }
    },
    "nutanix:index/FloatingIpV2ExternalSubnetDhcpOption:FloatingIpV2ExternalSubnetDhcpOption": {
      "properties": {
        "bootFileName": {
          "type": "string"
        },
        "domainName": {
          "type": "string"
        },
        "domainNameServers": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FFloatingIpV2ExternalSubnetDhcpOptionDomainNameServer:FloatingIpV2ExternalSubnetDhcpOptionDomainNameServer"
          }
        },
        "ntpServers": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FFloatingIpV2ExternalSubnetDhcpOptionNtpServer:FloatingIpV2ExternalSubnetDhcpOptionNtpServer"
          }
        },
        "searchDomains": {
          "type": "array",
          "items": {
            "type": "string"
          }
        },
        "tftpServerName": {
          "type": "string"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "bootFileName",
            "domainName",
            "domainNameServers",
            "ntpServers",
            "searchDomains",
            "tftpServerName"
          ]
        }
      }
    },
    "nutanix:index/FloatingIpV2ExternalSubnetDhcpOptionDomainNameServer:FloatingIpV2ExternalSubnetDhcpOptionDomainNameServer": {
      "properties": {
        "ipv4s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FFloatingIpV2ExternalSubnetDhcpOptionDomainNameServerIpv4:FloatingIpV2ExternalSubnetDhcpOptionDomainNameServerIpv4"
          },
          "description": "Reference to IP Configuration\n"
        },
        "ipv6s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FFloatingIpV2ExternalSubnetDhcpOptionDomainNameServerIpv6:FloatingIpV2ExternalSubnetDhcpOptionDomainNameServerIpv6"
          },
          "description": "Reference to IP Configuration\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "ipv4s",
            "ipv6s"
          ]
        }
      }
    },
    "nutanix:index/FloatingIpV2ExternalSubnetDhcpOptionDomainNameServerIpv4:FloatingIpV2ExternalSubnetDhcpOptionDomainNameServerIpv4": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "Prefix length of the network to which this host IPv4 address belongs. Default value is 32.\n"
        },
        "value": {
          "type": "string",
          "description": "value of address\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "prefixLength",
            "value"
          ]
        }
      }
    },
    "nutanix:index/FloatingIpV2ExternalSubnetDhcpOptionDomainNameServerIpv6:FloatingIpV2ExternalSubnetDhcpOptionDomainNameServerIpv6": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "Prefix length of the network to which this host IPv4 address belongs. Default value is 32.\n"
        },
        "value": {
          "type": "string",
          "description": "value of address\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "prefixLength",
            "value"
          ]
        }
      }
    },
    "nutanix:index/FloatingIpV2ExternalSubnetDhcpOptionNtpServer:FloatingIpV2ExternalSubnetDhcpOptionNtpServer": {
      "properties": {
        "ipv4s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FFloatingIpV2ExternalSubnetDhcpOptionNtpServerIpv4:FloatingIpV2ExternalSubnetDhcpOptionNtpServerIpv4"
          },
          "description": "Reference to IP Configuration\n"
        },
        "ipv6s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FFloatingIpV2ExternalSubnetDhcpOptionNtpServerIpv6:FloatingIpV2ExternalSubnetDhcpOptionNtpServerIpv6"
          },
          "description": "Reference to IP Configuration\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "ipv4s",
            "ipv6s"
          ]
        }
      }
    },
    "nutanix:index/FloatingIpV2ExternalSubnetDhcpOptionNtpServerIpv4:FloatingIpV2ExternalSubnetDhcpOptionNtpServerIpv4": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "Prefix length of the network to which this host IPv4 address belongs. Default value is 32.\n"
        },
        "value": {
          "type": "string",
          "description": "value of address\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "prefixLength",
            "value"
          ]
        }
      }
    },
    "nutanix:index/FloatingIpV2ExternalSubnetDhcpOptionNtpServerIpv6:FloatingIpV2ExternalSubnetDhcpOptionNtpServerIpv6": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "Prefix length of the network to which this host IPv4 address belongs. Default value is 32.\n"
        },
        "value": {
          "type": "string",
          "description": "value of address\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "prefixLength",
            "value"
          ]
        }
      }
    },
    "nutanix:index/FloatingIpV2ExternalSubnetDynamicIpAddress:FloatingIpV2ExternalSubnetDynamicIpAddress": {
      "properties": {
        "ipv4s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FFloatingIpV2ExternalSubnetDynamicIpAddressIpv4:FloatingIpV2ExternalSubnetDynamicIpAddressIpv4"
          },
          "description": "Reference to IP Configuration\n"
        },
        "ipv6s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FFloatingIpV2ExternalSubnetDynamicIpAddressIpv6:FloatingIpV2ExternalSubnetDynamicIpAddressIpv6"
          },
          "description": "Reference to IP Configuration\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "ipv4s",
            "ipv6s"
          ]
        }
      }
    },
    "nutanix:index/FloatingIpV2ExternalSubnetDynamicIpAddressIpv4:FloatingIpV2ExternalSubnetDynamicIpAddressIpv4": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "Prefix length of the network to which this host IPv4 address belongs. Default value is 32.\n"
        },
        "value": {
          "type": "string",
          "description": "value of address\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "prefixLength",
            "value"
          ]
        }
      }
    },
    "nutanix:index/FloatingIpV2ExternalSubnetDynamicIpAddressIpv6:FloatingIpV2ExternalSubnetDynamicIpAddressIpv6": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "Prefix length of the network to which this host IPv4 address belongs. Default value is 32.\n"
        },
        "value": {
          "type": "string",
          "description": "value of address\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "prefixLength",
            "value"
          ]
        }
      }
    },
    "nutanix:index/FloatingIpV2ExternalSubnetIpConfig:FloatingIpV2ExternalSubnetIpConfig": {
      "properties": {
        "ipv4s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FFloatingIpV2ExternalSubnetIpConfigIpv4:FloatingIpV2ExternalSubnetIpConfigIpv4"
          },
          "description": "Reference to IP Configuration\n"
        },
        "ipv6s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FFloatingIpV2ExternalSubnetIpConfigIpv6:FloatingIpV2ExternalSubnetIpConfigIpv6"
          },
          "description": "Reference to IP Configuration\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "ipv4s",
            "ipv6s"
          ]
        }
      }
    },
    "nutanix:index/FloatingIpV2ExternalSubnetIpConfigIpv4:FloatingIpV2ExternalSubnetIpConfigIpv4": {
      "properties": {
        "defaultGatewayIps": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FFloatingIpV2ExternalSubnetIpConfigIpv4DefaultGatewayIp:FloatingIpV2ExternalSubnetIpConfigIpv4DefaultGatewayIp"
          }
        },
        "dhcpServerAddresses": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FFloatingIpV2ExternalSubnetIpConfigIpv4DhcpServerAddress:FloatingIpV2ExternalSubnetIpConfigIpv4DhcpServerAddress"
          }
        },
        "ipSubnets": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FFloatingIpV2ExternalSubnetIpConfigIpv4IpSubnet:FloatingIpV2ExternalSubnetIpConfigIpv4IpSubnet"
          }
        },
        "poolLists": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FFloatingIpV2ExternalSubnetIpConfigIpv4PoolList:FloatingIpV2ExternalSubnetIpConfigIpv4PoolList"
          }
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "defaultGatewayIps",
            "dhcpServerAddresses",
            "ipSubnets",
            "poolLists"
          ]
        }
      }
    },
    "nutanix:index/FloatingIpV2ExternalSubnetIpConfigIpv4DefaultGatewayIp:FloatingIpV2ExternalSubnetIpConfigIpv4DefaultGatewayIp": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "Prefix length of the network to which this host IPv4 address belongs. Default value is 32.\n"
        },
        "value": {
          "type": "string",
          "description": "value of address\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "prefixLength",
            "value"
          ]
        }
      }
    },
    "nutanix:index/FloatingIpV2ExternalSubnetIpConfigIpv4DhcpServerAddress:FloatingIpV2ExternalSubnetIpConfigIpv4DhcpServerAddress": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "Prefix length of the network to which this host IPv4 address belongs. Default value is 32.\n"
        },
        "value": {
          "type": "string",
          "description": "value of address\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "prefixLength",
            "value"
          ]
        }
      }
    },
    "nutanix:index/FloatingIpV2ExternalSubnetIpConfigIpv4IpSubnet:FloatingIpV2ExternalSubnetIpConfigIpv4IpSubnet": {
      "properties": {
        "ips": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FFloatingIpV2ExternalSubnetIpConfigIpv4IpSubnetIp:FloatingIpV2ExternalSubnetIpConfigIpv4IpSubnetIp"
          }
        },
        "prefixLength": {
          "type": "integer",
          "description": "Prefix length of the network to which this host IPv4 address belongs. Default value is 32.\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "ips",
            "prefixLength"
          ]
        }
      }
    },
    "nutanix:index/FloatingIpV2ExternalSubnetIpConfigIpv4IpSubnetIp:FloatingIpV2ExternalSubnetIpConfigIpv4IpSubnetIp": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "Prefix length of the network to which this host IPv4 address belongs. Default value is 32.\n"
        },
        "value": {
          "type": "string",
          "description": "value of address\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "prefixLength",
            "value"
          ]
        }
      }
    },
    "nutanix:index/FloatingIpV2ExternalSubnetIpConfigIpv4PoolList:FloatingIpV2ExternalSubnetIpConfigIpv4PoolList": {
      "properties": {
        "endIps": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FFloatingIpV2ExternalSubnetIpConfigIpv4PoolListEndIp:FloatingIpV2ExternalSubnetIpConfigIpv4PoolListEndIp"
          }
        },
        "startIps": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FFloatingIpV2ExternalSubnetIpConfigIpv4PoolListStartIp:FloatingIpV2ExternalSubnetIpConfigIpv4PoolListStartIp"
          }
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "endIps",
            "startIps"
          ]
        }
      }
    },
    "nutanix:index/FloatingIpV2ExternalSubnetIpConfigIpv4PoolListEndIp:FloatingIpV2ExternalSubnetIpConfigIpv4PoolListEndIp": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "Prefix length of the network to which this host IPv4 address belongs. Default value is 32.\n"
        },
        "value": {
          "type": "string",
          "description": "value of address\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "prefixLength",
            "value"
          ]
        }
      }
    },
    "nutanix:index/FloatingIpV2ExternalSubnetIpConfigIpv4PoolListStartIp:FloatingIpV2ExternalSubnetIpConfigIpv4PoolListStartIp": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "Prefix length of the network to which this host IPv4 address belongs. Default value is 32.\n"
        },
        "value": {
          "type": "string",
          "description": "value of address\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "prefixLength",
            "value"
          ]
        }
      }
    },
    "nutanix:index/FloatingIpV2ExternalSubnetIpConfigIpv6:FloatingIpV2ExternalSubnetIpConfigIpv6": {
      "properties": {
        "defaultGatewayIps": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FFloatingIpV2ExternalSubnetIpConfigIpv6DefaultGatewayIp:FloatingIpV2ExternalSubnetIpConfigIpv6DefaultGatewayIp"
          }
        },
        "dhcpServerAddresses": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FFloatingIpV2ExternalSubnetIpConfigIpv6DhcpServerAddress:FloatingIpV2ExternalSubnetIpConfigIpv6DhcpServerAddress"
          }
        },
        "ipSubnets": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FFloatingIpV2ExternalSubnetIpConfigIpv6IpSubnet:FloatingIpV2ExternalSubnetIpConfigIpv6IpSubnet"
          }
        },
        "poolLists": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FFloatingIpV2ExternalSubnetIpConfigIpv6PoolList:FloatingIpV2ExternalSubnetIpConfigIpv6PoolList"
          }
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "defaultGatewayIps",
            "dhcpServerAddresses",
            "ipSubnets",
            "poolLists"
          ]
        }
      }
    },
    "nutanix:index/FloatingIpV2ExternalSubnetIpConfigIpv6DefaultGatewayIp:FloatingIpV2ExternalSubnetIpConfigIpv6DefaultGatewayIp": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "Prefix length of the network to which this host IPv4 address belongs. Default value is 32.\n"
        },
        "value": {
          "type": "string",
          "description": "value of address\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "prefixLength",
            "value"
          ]
        }
      }
    },
    "nutanix:index/FloatingIpV2ExternalSubnetIpConfigIpv6DhcpServerAddress:FloatingIpV2ExternalSubnetIpConfigIpv6DhcpServerAddress": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "Prefix length of the network to which this host IPv4 address belongs. Default value is 32.\n"
        },
        "value": {
          "type": "string",
          "description": "value of address\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "prefixLength",
            "value"
          ]
        }
      }
    },
    "nutanix:index/FloatingIpV2ExternalSubnetIpConfigIpv6IpSubnet:FloatingIpV2ExternalSubnetIpConfigIpv6IpSubnet": {
      "properties": {
        "ips": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FFloatingIpV2ExternalSubnetIpConfigIpv6IpSubnetIp:FloatingIpV2ExternalSubnetIpConfigIpv6IpSubnetIp"
          }
        },
        "prefixLength": {
          "type": "integer",
          "description": "Prefix length of the network to which this host IPv4 address belongs. Default value is 32.\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "ips",
            "prefixLength"
          ]
        }
      }
    },
    "nutanix:index/FloatingIpV2ExternalSubnetIpConfigIpv6IpSubnetIp:FloatingIpV2ExternalSubnetIpConfigIpv6IpSubnetIp": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "Prefix length of the network to which this host IPv4 address belongs. Default value is 32.\n"
        },
        "value": {
          "type": "string",
          "description": "value of address\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "prefixLength",
            "value"
          ]
        }
      }
    },
    "nutanix:index/FloatingIpV2ExternalSubnetIpConfigIpv6PoolList:FloatingIpV2ExternalSubnetIpConfigIpv6PoolList": {
      "properties": {
        "endIps": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FFloatingIpV2ExternalSubnetIpConfigIpv6PoolListEndIp:FloatingIpV2ExternalSubnetIpConfigIpv6PoolListEndIp"
          }
        },
        "startIps": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FFloatingIpV2ExternalSubnetIpConfigIpv6PoolListStartIp:FloatingIpV2ExternalSubnetIpConfigIpv6PoolListStartIp"
          }
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "endIps",
            "startIps"
          ]
        }
      }
    },
    "nutanix:index/FloatingIpV2ExternalSubnetIpConfigIpv6PoolListEndIp:FloatingIpV2ExternalSubnetIpConfigIpv6PoolListEndIp": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "Prefix length of the network to which this host IPv4 address belongs. Default value is 32.\n"
        },
        "value": {
          "type": "string",
          "description": "value of address\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "prefixLength",
            "value"
          ]
        }
      }
    },
    "nutanix:index/FloatingIpV2ExternalSubnetIpConfigIpv6PoolListStartIp:FloatingIpV2ExternalSubnetIpConfigIpv6PoolListStartIp": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "Prefix length of the network to which this host IPv4 address belongs. Default value is 32.\n"
        },
        "value": {
          "type": "string",
          "description": "value of address\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "prefixLength",
            "value"
          ]
        }
      }
    },
    "nutanix:index/FloatingIpV2ExternalSubnetIpUsage:FloatingIpV2ExternalSubnetIpUsage": {
      "properties": {
        "ipPoolUsages": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FFloatingIpV2ExternalSubnetIpUsageIpPoolUsage:FloatingIpV2ExternalSubnetIpUsageIpPoolUsage"
          }
        },
        "numAssignedIps": {
          "type": "integer"
        },
        "numFreeIps": {
          "type": "integer"
        },
        "numMacs": {
          "type": "integer"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "ipPoolUsages",
            "numAssignedIps",
            "numFreeIps",
            "numMacs"
          ]
        }
      }
    },
    "nutanix:index/FloatingIpV2ExternalSubnetIpUsageIpPoolUsage:FloatingIpV2ExternalSubnetIpUsageIpPoolUsage": {
      "properties": {
        "numFreeIps": {
          "type": "integer"
        },
        "numTotalIps": {
          "type": "integer"
        },
        "ranges": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FFloatingIpV2ExternalSubnetIpUsageIpPoolUsageRange:FloatingIpV2ExternalSubnetIpUsageIpPoolUsageRange"
          }
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "numFreeIps",
            "numTotalIps",
            "ranges"
          ]
        }
      }
    },
    "nutanix:index/FloatingIpV2ExternalSubnetIpUsageIpPoolUsageRange:FloatingIpV2ExternalSubnetIpUsageIpPoolUsageRange": {
      "properties": {
        "endIps": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FFloatingIpV2ExternalSubnetIpUsageIpPoolUsageRangeEndIp:FloatingIpV2ExternalSubnetIpUsageIpPoolUsageRangeEndIp"
          }
        },
        "startIps": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FFloatingIpV2ExternalSubnetIpUsageIpPoolUsageRangeStartIp:FloatingIpV2ExternalSubnetIpUsageIpPoolUsageRangeStartIp"
          }
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "endIps",
            "startIps"
          ]
        }
      }
    },
    "nutanix:index/FloatingIpV2ExternalSubnetIpUsageIpPoolUsageRangeEndIp:FloatingIpV2ExternalSubnetIpUsageIpPoolUsageRangeEndIp": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "Prefix length of the network to which this host IPv4 address belongs. Default value is 32.\n"
        },
        "value": {
          "type": "string",
          "description": "value of address\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "prefixLength",
            "value"
          ]
        }
      }
    },
    "nutanix:index/FloatingIpV2ExternalSubnetIpUsageIpPoolUsageRangeStartIp:FloatingIpV2ExternalSubnetIpUsageIpPoolUsageRangeStartIp": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "Prefix length of the network to which this host IPv4 address belongs. Default value is 32.\n"
        },
        "value": {
          "type": "string",
          "description": "value of address\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "prefixLength",
            "value"
          ]
        }
      }
    },
    "nutanix:index/FloatingIpV2ExternalSubnetLink:FloatingIpV2ExternalSubnetLink": {
      "properties": {
        "href": {
          "type": "string"
        },
        "rel": {
          "type": "string"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "href",
            "rel"
          ]
        }
      }
    },
    "nutanix:index/FloatingIpV2ExternalSubnetReservedIpAddress:FloatingIpV2ExternalSubnetReservedIpAddress": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "Prefix length of the network to which this host IPv4 address belongs. Default value is 32.\n"
        },
        "value": {
          "type": "string",
          "description": "value of address\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "prefixLength",
            "value"
          ]
        }
      }
    },
    "nutanix:index/FloatingIpV2ExternalSubnetVirtualSwitch:FloatingIpV2ExternalSubnetVirtualSwitch": {
      "properties": {
        "bondMode": {
          "type": "boolean"
        },
        "clusters": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FFloatingIpV2ExternalSubnetVirtualSwitchCluster:FloatingIpV2ExternalSubnetVirtualSwitchCluster"
          }
        },
        "description": {
          "type": "string",
          "description": "Description for the Floating IP.\n"
        },
        "extId": {
          "type": "string"
        },
        "hasDeploymentError": {
          "type": "boolean"
        },
        "isDefault": {
          "type": "boolean"
        },
        "links": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FFloatingIpV2ExternalSubnetVirtualSwitchLink:FloatingIpV2ExternalSubnetVirtualSwitchLink"
          },
          "description": "A HATEOAS style link for the response. Each link contains a user-friendly name identifying the link and an address for retrieving the particular resource.\n"
        },
        "metadatas": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FFloatingIpV2ExternalSubnetVirtualSwitchMetadata:FloatingIpV2ExternalSubnetVirtualSwitchMetadata"
          },
          "description": "Metadata associated with this resource.\n"
        },
        "mtu": {
          "type": "integer"
        },
        "name": {
          "type": "string",
          "description": "Name of the floating IP.\n"
        },
        "tenantId": {
          "type": "string",
          "description": "A globally unique identifier that represents the tenant that owns this entity.\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "bondMode",
            "clusters",
            "description",
            "extId",
            "hasDeploymentError",
            "isDefault",
            "links",
            "metadatas",
            "mtu",
            "name",
            "tenantId"
          ]
        }
      }
    },
    "nutanix:index/FloatingIpV2ExternalSubnetVirtualSwitchCluster:FloatingIpV2ExternalSubnetVirtualSwitchCluster": {
      "properties": {
        "extId": {
          "type": "string"
        },
        "gatewayIpAddresses": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FFloatingIpV2ExternalSubnetVirtualSwitchClusterGatewayIpAddress:FloatingIpV2ExternalSubnetVirtualSwitchClusterGatewayIpAddress"
          }
        },
        "hosts": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FFloatingIpV2ExternalSubnetVirtualSwitchClusterHost:FloatingIpV2ExternalSubnetVirtualSwitchClusterHost"
          }
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "extId",
            "gatewayIpAddresses",
            "hosts"
          ]
        }
      }
    },
    "nutanix:index/FloatingIpV2ExternalSubnetVirtualSwitchClusterGatewayIpAddress:FloatingIpV2ExternalSubnetVirtualSwitchClusterGatewayIpAddress": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "Prefix length of the network to which this host IPv4 address belongs. Default value is 32.\n"
        },
        "value": {
          "type": "string",
          "description": "value of address\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "prefixLength",
            "value"
          ]
        }
      }
    },
    "nutanix:index/FloatingIpV2ExternalSubnetVirtualSwitchClusterHost:FloatingIpV2ExternalSubnetVirtualSwitchClusterHost": {
      "properties": {
        "extId": {
          "type": "string"
        },
        "hostNics": {
          "type": "array",
          "items": {
            "type": "string"
          }
        },
        "internalBridgeName": {
          "type": "string"
        },
        "ipAddresses": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FFloatingIpV2ExternalSubnetVirtualSwitchClusterHostIpAddress:FloatingIpV2ExternalSubnetVirtualSwitchClusterHostIpAddress"
          }
        },
        "routeTable": {
          "type": "integer"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "extId",
            "hostNics",
            "internalBridgeName",
            "ipAddresses",
            "routeTable"
          ]
        }
      }
    },
    "nutanix:index/FloatingIpV2ExternalSubnetVirtualSwitchClusterHostIpAddress:FloatingIpV2ExternalSubnetVirtualSwitchClusterHostIpAddress": {
      "properties": {
        "ips": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FFloatingIpV2ExternalSubnetVirtualSwitchClusterHostIpAddressIp:FloatingIpV2ExternalSubnetVirtualSwitchClusterHostIpAddressIp"
          }
        },
        "prefixLength": {
          "type": "integer",
          "description": "Prefix length of the network to which this host IPv4 address belongs. Default value is 32.\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "ips",
            "prefixLength"
          ]
        }
      }
    },
    "nutanix:index/FloatingIpV2ExternalSubnetVirtualSwitchClusterHostIpAddressIp:FloatingIpV2ExternalSubnetVirtualSwitchClusterHostIpAddressIp": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "Prefix length of the network to which this host IPv4 address belongs. Default value is 32.\n"
        },
        "value": {
          "type": "string",
          "description": "value of address\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "prefixLength",
            "value"
          ]
        }
      }
    },
    "nutanix:index/FloatingIpV2ExternalSubnetVirtualSwitchLink:FloatingIpV2ExternalSubnetVirtualSwitchLink": {
      "properties": {
        "href": {
          "type": "string"
        },
        "rel": {
          "type": "string"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "href",
            "rel"
          ]
        }
      }
    },
    "nutanix:index/FloatingIpV2ExternalSubnetVirtualSwitchMetadata:FloatingIpV2ExternalSubnetVirtualSwitchMetadata": {
      "properties": {
        "categoryIds": {
          "type": "array",
          "items": {
            "type": "array",
            "items": {
              "$ref": "pulumi.json#/Any"
            }
          }
        },
        "ownerReferenceId": {
          "type": "string"
        },
        "ownerUserName": {
          "type": "string"
        },
        "projectName": {
          "type": "string"
        },
        "projectReferenceId": {
          "type": "string"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "categoryIds",
            "ownerReferenceId",
            "ownerUserName",
            "projectName",
            "projectReferenceId"
          ]
        }
      }
    },
    "nutanix:index/FloatingIpV2ExternalSubnetVpc:FloatingIpV2ExternalSubnetVpc": {
      "properties": {
        "commonDhcpOptions": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FFloatingIpV2ExternalSubnetVpcCommonDhcpOption:FloatingIpV2ExternalSubnetVpcCommonDhcpOption"
          }
        },
        "description": {
          "type": "string",
          "description": "Description for the Floating IP.\n"
        },
        "extId": {
          "type": "string"
        },
        "externalRoutingDomainReference": {
          "type": "string"
        },
        "externalSubnets": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FFloatingIpV2ExternalSubnetVpcExternalSubnet:FloatingIpV2ExternalSubnetVpcExternalSubnet"
          }
        },
        "externallyRoutablePrefixes": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FFloatingIpV2ExternalSubnetVpcExternallyRoutablePrefix:FloatingIpV2ExternalSubnetVpcExternallyRoutablePrefix"
          }
        },
        "links": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FFloatingIpV2ExternalSubnetVpcLink:FloatingIpV2ExternalSubnetVpcLink"
          },
          "description": "A HATEOAS style link for the response. Each link contains a user-friendly name identifying the link and an address for retrieving the particular resource.\n"
        },
        "metadatas": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FFloatingIpV2ExternalSubnetVpcMetadata:FloatingIpV2ExternalSubnetVpcMetadata"
          },
          "description": "Metadata associated with this resource.\n"
        },
        "name": {
          "type": "string",
          "description": "Name of the floating IP.\n"
        },
        "snatIps": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FFloatingIpV2ExternalSubnetVpcSnatIp:FloatingIpV2ExternalSubnetVpcSnatIp"
          }
        },
        "tenantId": {
          "type": "string",
          "description": "A globally unique identifier that represents the tenant that owns this entity.\n"
        },
        "vpcType": {
          "type": "string"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "commonDhcpOptions",
            "description",
            "extId",
            "externalRoutingDomainReference",
            "externalSubnets",
            "externallyRoutablePrefixes",
            "links",
            "metadatas",
            "name",
            "snatIps",
            "tenantId",
            "vpcType"
          ]
        }
      }
    },
    "nutanix:index/FloatingIpV2ExternalSubnetVpcCommonDhcpOption:FloatingIpV2ExternalSubnetVpcCommonDhcpOption": {
      "properties": {
        "domainNameServers": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FFloatingIpV2ExternalSubnetVpcCommonDhcpOptionDomainNameServer:FloatingIpV2ExternalSubnetVpcCommonDhcpOptionDomainNameServer"
          }
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "domainNameServers"
          ]
        }
      }
    },
    "nutanix:index/FloatingIpV2ExternalSubnetVpcCommonDhcpOptionDomainNameServer:FloatingIpV2ExternalSubnetVpcCommonDhcpOptionDomainNameServer": {
      "properties": {
        "ipv4s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FFloatingIpV2ExternalSubnetVpcCommonDhcpOptionDomainNameServerIpv4:FloatingIpV2ExternalSubnetVpcCommonDhcpOptionDomainNameServerIpv4"
          },
          "description": "Reference to IP Configuration\n"
        },
        "ipv6s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FFloatingIpV2ExternalSubnetVpcCommonDhcpOptionDomainNameServerIpv6:FloatingIpV2ExternalSubnetVpcCommonDhcpOptionDomainNameServerIpv6"
          },
          "description": "Reference to IP Configuration\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "ipv4s",
            "ipv6s"
          ]
        }
      }
    },
    "nutanix:index/FloatingIpV2ExternalSubnetVpcCommonDhcpOptionDomainNameServerIpv4:FloatingIpV2ExternalSubnetVpcCommonDhcpOptionDomainNameServerIpv4": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "Prefix length of the network to which this host IPv4 address belongs. Default value is 32.\n"
        },
        "value": {
          "type": "string",
          "description": "value of address\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "prefixLength",
            "value"
          ]
        }
      }
    },
    "nutanix:index/FloatingIpV2ExternalSubnetVpcCommonDhcpOptionDomainNameServerIpv6:FloatingIpV2ExternalSubnetVpcCommonDhcpOptionDomainNameServerIpv6": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "Prefix length of the network to which this host IPv4 address belongs. Default value is 32.\n"
        },
        "value": {
          "type": "string",
          "description": "value of address\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "prefixLength",
            "value"
          ]
        }
      }
    },
    "nutanix:index/FloatingIpV2ExternalSubnetVpcExternalSubnet:FloatingIpV2ExternalSubnetVpcExternalSubnet": {
      "properties": {
        "activeGatewayCount": {
          "type": "integer"
        },
        "activeGatewayNodes": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FFloatingIpV2ExternalSubnetVpcExternalSubnetActiveGatewayNode:FloatingIpV2ExternalSubnetVpcExternalSubnetActiveGatewayNode"
          }
        },
        "externalIps": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FFloatingIpV2ExternalSubnetVpcExternalSubnetExternalIp:FloatingIpV2ExternalSubnetVpcExternalSubnetExternalIp"
          }
        },
        "gatewayNodes": {
          "type": "array",
          "items": {
            "type": "string"
          }
        },
        "subnetReference": {
          "type": "string"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "activeGatewayCount",
            "activeGatewayNodes",
            "externalIps",
            "gatewayNodes",
            "subnetReference"
          ]
        }
      }
    },
    "nutanix:index/FloatingIpV2ExternalSubnetVpcExternalSubnetActiveGatewayNode:FloatingIpV2ExternalSubnetVpcExternalSubnetActiveGatewayNode": {
      "properties": {
        "nodeId": {
          "type": "string"
        },
        "nodeIpAddresses": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FFloatingIpV2ExternalSubnetVpcExternalSubnetActiveGatewayNodeNodeIpAddress:FloatingIpV2ExternalSubnetVpcExternalSubnetActiveGatewayNodeNodeIpAddress"
          }
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "nodeId",
            "nodeIpAddresses"
          ]
        }
      }
    },
    "nutanix:index/FloatingIpV2ExternalSubnetVpcExternalSubnetActiveGatewayNodeNodeIpAddress:FloatingIpV2ExternalSubnetVpcExternalSubnetActiveGatewayNodeNodeIpAddress": {
      "properties": {
        "ipv4s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FFloatingIpV2ExternalSubnetVpcExternalSubnetActiveGatewayNodeNodeIpAddressIpv4:FloatingIpV2ExternalSubnetVpcExternalSubnetActiveGatewayNodeNodeIpAddressIpv4"
          },
          "description": "Reference to IP Configuration\n"
        },
        "ipv6s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FFloatingIpV2ExternalSubnetVpcExternalSubnetActiveGatewayNodeNodeIpAddressIpv6:FloatingIpV2ExternalSubnetVpcExternalSubnetActiveGatewayNodeNodeIpAddressIpv6"
          },
          "description": "Reference to IP Configuration\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "ipv4s",
            "ipv6s"
          ]
        }
      }
    },
    "nutanix:index/FloatingIpV2ExternalSubnetVpcExternalSubnetActiveGatewayNodeNodeIpAddressIpv4:FloatingIpV2ExternalSubnetVpcExternalSubnetActiveGatewayNodeNodeIpAddressIpv4": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "Prefix length of the network to which this host IPv4 address belongs. Default value is 32.\n"
        },
        "value": {
          "type": "string",
          "description": "value of address\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "prefixLength",
            "value"
          ]
        }
      }
    },
    "nutanix:index/FloatingIpV2ExternalSubnetVpcExternalSubnetActiveGatewayNodeNodeIpAddressIpv6:FloatingIpV2ExternalSubnetVpcExternalSubnetActiveGatewayNodeNodeIpAddressIpv6": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "Prefix length of the network to which this host IPv4 address belongs. Default value is 32.\n"
        },
        "value": {
          "type": "string",
          "description": "value of address\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "prefixLength",
            "value"
          ]
        }
      }
    },
    "nutanix:index/FloatingIpV2ExternalSubnetVpcExternalSubnetExternalIp:FloatingIpV2ExternalSubnetVpcExternalSubnetExternalIp": {
      "properties": {
        "ipv4s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FFloatingIpV2ExternalSubnetVpcExternalSubnetExternalIpIpv4:FloatingIpV2ExternalSubnetVpcExternalSubnetExternalIpIpv4"
          },
          "description": "Reference to IP Configuration\n"
        },
        "ipv6s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FFloatingIpV2ExternalSubnetVpcExternalSubnetExternalIpIpv6:FloatingIpV2ExternalSubnetVpcExternalSubnetExternalIpIpv6"
          },
          "description": "Reference to IP Configuration\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "ipv4s",
            "ipv6s"
          ]
        }
      }
    },
    "nutanix:index/FloatingIpV2ExternalSubnetVpcExternalSubnetExternalIpIpv4:FloatingIpV2ExternalSubnetVpcExternalSubnetExternalIpIpv4": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "Prefix length of the network to which this host IPv4 address belongs. Default value is 32.\n"
        },
        "value": {
          "type": "string",
          "description": "value of address\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "prefixLength",
            "value"
          ]
        }
      }
    },
    "nutanix:index/FloatingIpV2ExternalSubnetVpcExternalSubnetExternalIpIpv6:FloatingIpV2ExternalSubnetVpcExternalSubnetExternalIpIpv6": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "Prefix length of the network to which this host IPv4 address belongs. Default value is 32.\n"
        },
        "value": {
          "type": "string",
          "description": "value of address\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "prefixLength",
            "value"
          ]
        }
      }
    },
    "nutanix:index/FloatingIpV2ExternalSubnetVpcExternallyRoutablePrefix:FloatingIpV2ExternalSubnetVpcExternallyRoutablePrefix": {
      "properties": {
        "ipv4s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FFloatingIpV2ExternalSubnetVpcExternallyRoutablePrefixIpv4:FloatingIpV2ExternalSubnetVpcExternallyRoutablePrefixIpv4"
          },
          "description": "Reference to IP Configuration\n"
        },
        "ipv6s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FFloatingIpV2ExternalSubnetVpcExternallyRoutablePrefixIpv6:FloatingIpV2ExternalSubnetVpcExternallyRoutablePrefixIpv6"
          },
          "description": "Reference to IP Configuration\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "ipv4s",
            "ipv6s"
          ]
        }
      }
    },
    "nutanix:index/FloatingIpV2ExternalSubnetVpcExternallyRoutablePrefixIpv4:FloatingIpV2ExternalSubnetVpcExternallyRoutablePrefixIpv4": {
      "properties": {
        "ips": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FFloatingIpV2ExternalSubnetVpcExternallyRoutablePrefixIpv4Ip:FloatingIpV2ExternalSubnetVpcExternallyRoutablePrefixIpv4Ip"
          }
        },
        "prefixLength": {
          "type": "integer",
          "description": "Prefix length of the network to which this host IPv4 address belongs. Default value is 32.\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "ips",
            "prefixLength"
          ]
        }
      }
    },
    "nutanix:index/FloatingIpV2ExternalSubnetVpcExternallyRoutablePrefixIpv4Ip:FloatingIpV2ExternalSubnetVpcExternallyRoutablePrefixIpv4Ip": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "Prefix length of the network to which this host IPv4 address belongs. Default value is 32.\n"
        },
        "value": {
          "type": "string",
          "description": "value of address\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "prefixLength",
            "value"
          ]
        }
      }
    },
    "nutanix:index/FloatingIpV2ExternalSubnetVpcExternallyRoutablePrefixIpv6:FloatingIpV2ExternalSubnetVpcExternallyRoutablePrefixIpv6": {
      "properties": {
        "ips": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FFloatingIpV2ExternalSubnetVpcExternallyRoutablePrefixIpv6Ip:FloatingIpV2ExternalSubnetVpcExternallyRoutablePrefixIpv6Ip"
          }
        },
        "prefixLength": {
          "type": "integer",
          "description": "Prefix length of the network to which this host IPv4 address belongs. Default value is 32.\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "ips",
            "prefixLength"
          ]
        }
      }
    },
    "nutanix:index/FloatingIpV2ExternalSubnetVpcExternallyRoutablePrefixIpv6Ip:FloatingIpV2ExternalSubnetVpcExternallyRoutablePrefixIpv6Ip": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "Prefix length of the network to which this host IPv4 address belongs. Default value is 32.\n"
        },
        "value": {
          "type": "string",
          "description": "value of address\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "prefixLength",
            "value"
          ]
        }
      }
    },
    "nutanix:index/FloatingIpV2ExternalSubnetVpcLink:FloatingIpV2ExternalSubnetVpcLink": {
      "properties": {
        "href": {
          "type": "string"
        },
        "rel": {
          "type": "string"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "href",
            "rel"
          ]
        }
      }
    },
    "nutanix:index/FloatingIpV2ExternalSubnetVpcMetadata:FloatingIpV2ExternalSubnetVpcMetadata": {
      "properties": {
        "categoryIds": {
          "type": "array",
          "items": {
            "type": "array",
            "items": {
              "$ref": "pulumi.json#/Any"
            }
          }
        },
        "ownerReferenceId": {
          "type": "string"
        },
        "ownerUserName": {
          "type": "string"
        },
        "projectName": {
          "type": "string"
        },
        "projectReferenceId": {
          "type": "string"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "categoryIds",
            "ownerReferenceId",
            "ownerUserName",
            "projectName",
            "projectReferenceId"
          ]
        }
      }
    },
    "nutanix:index/FloatingIpV2ExternalSubnetVpcSnatIp:FloatingIpV2ExternalSubnetVpcSnatIp": {
      "properties": {
        "ipv4s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FFloatingIpV2ExternalSubnetVpcSnatIpIpv4:FloatingIpV2ExternalSubnetVpcSnatIpIpv4"
          },
          "description": "Reference to IP Configuration\n"
        },
        "ipv6s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FFloatingIpV2ExternalSubnetVpcSnatIpIpv6:FloatingIpV2ExternalSubnetVpcSnatIpIpv6"
          },
          "description": "Reference to IP Configuration\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "ipv4s",
            "ipv6s"
          ]
        }
      }
    },
    "nutanix:index/FloatingIpV2ExternalSubnetVpcSnatIpIpv4:FloatingIpV2ExternalSubnetVpcSnatIpIpv4": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "Prefix length of the network to which this host IPv4 address belongs. Default value is 32.\n"
        },
        "value": {
          "type": "string",
          "description": "value of address\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "prefixLength",
            "value"
          ]
        }
      }
    },
    "nutanix:index/FloatingIpV2ExternalSubnetVpcSnatIpIpv6:FloatingIpV2ExternalSubnetVpcSnatIpIpv6": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "Prefix length of the network to which this host IPv4 address belongs. Default value is 32.\n"
        },
        "value": {
          "type": "string",
          "description": "value of address\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "prefixLength",
            "value"
          ]
        }
      }
    },
    "nutanix:index/FloatingIpV2FloatingIp:FloatingIpV2FloatingIp": {
      "properties": {
        "ipv4s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FFloatingIpV2FloatingIpIpv4:FloatingIpV2FloatingIpIpv4"
          },
          "description": "Reference to IP Configuration\n"
        },
        "ipv6s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FFloatingIpV2FloatingIpIpv6:FloatingIpV2FloatingIpIpv6"
          },
          "description": "Reference to IP Configuration\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "ipv4s",
            "ipv6s"
          ]
        }
      }
    },
    "nutanix:index/FloatingIpV2FloatingIpIpv4:FloatingIpV2FloatingIpIpv4": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "Prefix length of the network to which this host IPv4 address belongs. Default value is 32.\n"
        },
        "value": {
          "type": "string",
          "description": "value of address\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "prefixLength",
            "value"
          ]
        }
      }
    },
    "nutanix:index/FloatingIpV2FloatingIpIpv6:FloatingIpV2FloatingIpIpv6": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "Prefix length of the network to which this host IPv4 address belongs. Default value is 32.\n"
        },
        "value": {
          "type": "string",
          "description": "value of address\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "prefixLength",
            "value"
          ]
        }
      }
    },
    "nutanix:index/FloatingIpV2Link:FloatingIpV2Link": {
      "properties": {
        "href": {
          "type": "string"
        },
        "rel": {
          "type": "string"
        }
      },
      "type": "object"
    },
    "nutanix:index/FloatingIpV2Metadata:FloatingIpV2Metadata": {
      "properties": {
        "categoryIds": {
          "type": "array",
          "items": {
            "type": "array",
            "items": {
              "$ref": "pulumi.json#/Any"
            }
          }
        },
        "ownerReferenceId": {
          "type": "string"
        },
        "ownerUserName": {
          "type": "string"
        },
        "projectName": {
          "type": "string"
        },
        "projectReferenceId": {
          "type": "string"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "categoryIds",
            "ownerReferenceId",
            "ownerUserName",
            "projectName",
            "projectReferenceId"
          ]
        }
      }
    },
    "nutanix:index/FloatingIpV2VmNic:FloatingIpV2VmNic": {
      "properties": {
        "privateIp": {
          "type": "string"
        }
      },
      "type": "object"
    },
    "nutanix:index/FloatingIpV2Vpc:FloatingIpV2Vpc": {
      "properties": {
        "commonDhcpOptions": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FFloatingIpV2VpcCommonDhcpOption:FloatingIpV2VpcCommonDhcpOption"
          }
        },
        "description": {
          "type": "string",
          "description": "Description for the Floating IP.\n"
        },
        "extId": {
          "type": "string"
        },
        "externalRoutingDomainReference": {
          "type": "string"
        },
        "externalSubnets": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FFloatingIpV2VpcExternalSubnet:FloatingIpV2VpcExternalSubnet"
          }
        },
        "externallyRoutablePrefixes": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FFloatingIpV2VpcExternallyRoutablePrefix:FloatingIpV2VpcExternallyRoutablePrefix"
          }
        },
        "links": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FFloatingIpV2VpcLink:FloatingIpV2VpcLink"
          },
          "description": "A HATEOAS style link for the response. Each link contains a user-friendly name identifying the link and an address for retrieving the particular resource.\n"
        },
        "metadatas": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FFloatingIpV2VpcMetadata:FloatingIpV2VpcMetadata"
          },
          "description": "Metadata associated with this resource.\n"
        },
        "name": {
          "type": "string",
          "description": "Name of the floating IP.\n"
        },
        "snatIps": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FFloatingIpV2VpcSnatIp:FloatingIpV2VpcSnatIp"
          }
        },
        "tenantId": {
          "type": "string",
          "description": "A globally unique identifier that represents the tenant that owns this entity.\n"
        },
        "vpcType": {
          "type": "string"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "commonDhcpOptions",
            "description",
            "extId",
            "externalRoutingDomainReference",
            "externalSubnets",
            "externallyRoutablePrefixes",
            "links",
            "metadatas",
            "name",
            "snatIps",
            "tenantId",
            "vpcType"
          ]
        }
      }
    },
    "nutanix:index/FloatingIpV2VpcCommonDhcpOption:FloatingIpV2VpcCommonDhcpOption": {
      "properties": {
        "domainNameServers": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FFloatingIpV2VpcCommonDhcpOptionDomainNameServer:FloatingIpV2VpcCommonDhcpOptionDomainNameServer"
          }
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "domainNameServers"
          ]
        }
      }
    },
    "nutanix:index/FloatingIpV2VpcCommonDhcpOptionDomainNameServer:FloatingIpV2VpcCommonDhcpOptionDomainNameServer": {
      "properties": {
        "ipv4s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FFloatingIpV2VpcCommonDhcpOptionDomainNameServerIpv4:FloatingIpV2VpcCommonDhcpOptionDomainNameServerIpv4"
          },
          "description": "Reference to IP Configuration\n"
        },
        "ipv6s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FFloatingIpV2VpcCommonDhcpOptionDomainNameServerIpv6:FloatingIpV2VpcCommonDhcpOptionDomainNameServerIpv6"
          },
          "description": "Reference to IP Configuration\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "ipv4s",
            "ipv6s"
          ]
        }
      }
    },
    "nutanix:index/FloatingIpV2VpcCommonDhcpOptionDomainNameServerIpv4:FloatingIpV2VpcCommonDhcpOptionDomainNameServerIpv4": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "Prefix length of the network to which this host IPv4 address belongs. Default value is 32.\n"
        },
        "value": {
          "type": "string",
          "description": "value of address\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "prefixLength",
            "value"
          ]
        }
      }
    },
    "nutanix:index/FloatingIpV2VpcCommonDhcpOptionDomainNameServerIpv6:FloatingIpV2VpcCommonDhcpOptionDomainNameServerIpv6": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "Prefix length of the network to which this host IPv4 address belongs. Default value is 32.\n"
        },
        "value": {
          "type": "string",
          "description": "value of address\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "prefixLength",
            "value"
          ]
        }
      }
    },
    "nutanix:index/FloatingIpV2VpcExternalSubnet:FloatingIpV2VpcExternalSubnet": {
      "properties": {
        "activeGatewayCount": {
          "type": "integer"
        },
        "activeGatewayNodes": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FFloatingIpV2VpcExternalSubnetActiveGatewayNode:FloatingIpV2VpcExternalSubnetActiveGatewayNode"
          }
        },
        "externalIps": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FFloatingIpV2VpcExternalSubnetExternalIp:FloatingIpV2VpcExternalSubnetExternalIp"
          }
        },
        "gatewayNodes": {
          "type": "array",
          "items": {
            "type": "string"
          }
        },
        "subnetReference": {
          "type": "string"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "activeGatewayCount",
            "activeGatewayNodes",
            "externalIps",
            "gatewayNodes",
            "subnetReference"
          ]
        }
      }
    },
    "nutanix:index/FloatingIpV2VpcExternalSubnetActiveGatewayNode:FloatingIpV2VpcExternalSubnetActiveGatewayNode": {
      "properties": {
        "nodeId": {
          "type": "string"
        },
        "nodeIpAddresses": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FFloatingIpV2VpcExternalSubnetActiveGatewayNodeNodeIpAddress:FloatingIpV2VpcExternalSubnetActiveGatewayNodeNodeIpAddress"
          }
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "nodeId",
            "nodeIpAddresses"
          ]
        }
      }
    },
    "nutanix:index/FloatingIpV2VpcExternalSubnetActiveGatewayNodeNodeIpAddress:FloatingIpV2VpcExternalSubnetActiveGatewayNodeNodeIpAddress": {
      "properties": {
        "ipv4s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FFloatingIpV2VpcExternalSubnetActiveGatewayNodeNodeIpAddressIpv4:FloatingIpV2VpcExternalSubnetActiveGatewayNodeNodeIpAddressIpv4"
          },
          "description": "Reference to IP Configuration\n"
        },
        "ipv6s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FFloatingIpV2VpcExternalSubnetActiveGatewayNodeNodeIpAddressIpv6:FloatingIpV2VpcExternalSubnetActiveGatewayNodeNodeIpAddressIpv6"
          },
          "description": "Reference to IP Configuration\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "ipv4s",
            "ipv6s"
          ]
        }
      }
    },
    "nutanix:index/FloatingIpV2VpcExternalSubnetActiveGatewayNodeNodeIpAddressIpv4:FloatingIpV2VpcExternalSubnetActiveGatewayNodeNodeIpAddressIpv4": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "Prefix length of the network to which this host IPv4 address belongs. Default value is 32.\n"
        },
        "value": {
          "type": "string",
          "description": "value of address\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "prefixLength",
            "value"
          ]
        }
      }
    },
    "nutanix:index/FloatingIpV2VpcExternalSubnetActiveGatewayNodeNodeIpAddressIpv6:FloatingIpV2VpcExternalSubnetActiveGatewayNodeNodeIpAddressIpv6": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "Prefix length of the network to which this host IPv4 address belongs. Default value is 32.\n"
        },
        "value": {
          "type": "string",
          "description": "value of address\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "prefixLength",
            "value"
          ]
        }
      }
    },
    "nutanix:index/FloatingIpV2VpcExternalSubnetExternalIp:FloatingIpV2VpcExternalSubnetExternalIp": {
      "properties": {
        "ipv4s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FFloatingIpV2VpcExternalSubnetExternalIpIpv4:FloatingIpV2VpcExternalSubnetExternalIpIpv4"
          },
          "description": "Reference to IP Configuration\n"
        },
        "ipv6s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FFloatingIpV2VpcExternalSubnetExternalIpIpv6:FloatingIpV2VpcExternalSubnetExternalIpIpv6"
          },
          "description": "Reference to IP Configuration\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "ipv4s",
            "ipv6s"
          ]
        }
      }
    },
    "nutanix:index/FloatingIpV2VpcExternalSubnetExternalIpIpv4:FloatingIpV2VpcExternalSubnetExternalIpIpv4": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "Prefix length of the network to which this host IPv4 address belongs. Default value is 32.\n"
        },
        "value": {
          "type": "string",
          "description": "value of address\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "prefixLength",
            "value"
          ]
        }
      }
    },
    "nutanix:index/FloatingIpV2VpcExternalSubnetExternalIpIpv6:FloatingIpV2VpcExternalSubnetExternalIpIpv6": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "Prefix length of the network to which this host IPv4 address belongs. Default value is 32.\n"
        },
        "value": {
          "type": "string",
          "description": "value of address\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "prefixLength",
            "value"
          ]
        }
      }
    },
    "nutanix:index/FloatingIpV2VpcExternallyRoutablePrefix:FloatingIpV2VpcExternallyRoutablePrefix": {
      "properties": {
        "ipv4s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FFloatingIpV2VpcExternallyRoutablePrefixIpv4:FloatingIpV2VpcExternallyRoutablePrefixIpv4"
          },
          "description": "Reference to IP Configuration\n"
        },
        "ipv6s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FFloatingIpV2VpcExternallyRoutablePrefixIpv6:FloatingIpV2VpcExternallyRoutablePrefixIpv6"
          },
          "description": "Reference to IP Configuration\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "ipv4s",
            "ipv6s"
          ]
        }
      }
    },
    "nutanix:index/FloatingIpV2VpcExternallyRoutablePrefixIpv4:FloatingIpV2VpcExternallyRoutablePrefixIpv4": {
      "properties": {
        "ips": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FFloatingIpV2VpcExternallyRoutablePrefixIpv4Ip:FloatingIpV2VpcExternallyRoutablePrefixIpv4Ip"
          }
        },
        "prefixLength": {
          "type": "integer",
          "description": "Prefix length of the network to which this host IPv4 address belongs. Default value is 32.\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "ips",
            "prefixLength"
          ]
        }
      }
    },
    "nutanix:index/FloatingIpV2VpcExternallyRoutablePrefixIpv4Ip:FloatingIpV2VpcExternallyRoutablePrefixIpv4Ip": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "Prefix length of the network to which this host IPv4 address belongs. Default value is 32.\n"
        },
        "value": {
          "type": "string",
          "description": "value of address\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "prefixLength",
            "value"
          ]
        }
      }
    },
    "nutanix:index/FloatingIpV2VpcExternallyRoutablePrefixIpv6:FloatingIpV2VpcExternallyRoutablePrefixIpv6": {
      "properties": {
        "ips": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FFloatingIpV2VpcExternallyRoutablePrefixIpv6Ip:FloatingIpV2VpcExternallyRoutablePrefixIpv6Ip"
          }
        },
        "prefixLength": {
          "type": "integer",
          "description": "Prefix length of the network to which this host IPv4 address belongs. Default value is 32.\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "ips",
            "prefixLength"
          ]
        }
      }
    },
    "nutanix:index/FloatingIpV2VpcExternallyRoutablePrefixIpv6Ip:FloatingIpV2VpcExternallyRoutablePrefixIpv6Ip": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "Prefix length of the network to which this host IPv4 address belongs. Default value is 32.\n"
        },
        "value": {
          "type": "string",
          "description": "value of address\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "prefixLength",
            "value"
          ]
        }
      }
    },
    "nutanix:index/FloatingIpV2VpcLink:FloatingIpV2VpcLink": {
      "properties": {
        "href": {
          "type": "string"
        },
        "rel": {
          "type": "string"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "href",
            "rel"
          ]
        }
      }
    },
    "nutanix:index/FloatingIpV2VpcMetadata:FloatingIpV2VpcMetadata": {
      "properties": {
        "categoryIds": {
          "type": "array",
          "items": {
            "type": "array",
            "items": {
              "$ref": "pulumi.json#/Any"
            }
          }
        },
        "ownerReferenceId": {
          "type": "string"
        },
        "ownerUserName": {
          "type": "string"
        },
        "projectName": {
          "type": "string"
        },
        "projectReferenceId": {
          "type": "string"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "categoryIds",
            "ownerReferenceId",
            "ownerUserName",
            "projectName",
            "projectReferenceId"
          ]
        }
      }
    },
    "nutanix:index/FloatingIpV2VpcSnatIp:FloatingIpV2VpcSnatIp": {
      "properties": {
        "ipv4s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FFloatingIpV2VpcSnatIpIpv4:FloatingIpV2VpcSnatIpIpv4"
          },
          "description": "Reference to IP Configuration\n"
        },
        "ipv6s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FFloatingIpV2VpcSnatIpIpv6:FloatingIpV2VpcSnatIpIpv6"
          },
          "description": "Reference to IP Configuration\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "ipv4s",
            "ipv6s"
          ]
        }
      }
    },
    "nutanix:index/FloatingIpV2VpcSnatIpIpv4:FloatingIpV2VpcSnatIpIpv4": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "Prefix length of the network to which this host IPv4 address belongs. Default value is 32.\n"
        },
        "value": {
          "type": "string",
          "description": "value of address\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "prefixLength",
            "value"
          ]
        }
      }
    },
    "nutanix:index/FloatingIpV2VpcSnatIpIpv6:FloatingIpV2VpcSnatIpIpv6": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "Prefix length of the network to which this host IPv4 address belongs. Default value is 32.\n"
        },
        "value": {
          "type": "string",
          "description": "value of address\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "prefixLength",
            "value"
          ]
        }
      }
    },
    "nutanix:index/FoundationCentralImageClusterClusterStatus:FoundationCentralImageClusterClusterStatus": {
      "properties": {
        "aggregatePercentComplete": {
          "type": "number"
        },
        "clusterCreationStarted": {
          "type": "boolean"
        },
        "clusterProgressDetails": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FFoundationCentralImageClusterClusterStatusClusterProgressDetail:FoundationCentralImageClusterClusterStatusClusterProgressDetail"
          }
        },
        "currentFoundationIp": {
          "type": "string"
        },
        "foundationSessionId": {
          "type": "string"
        },
        "imagingStopped": {
          "type": "boolean"
        },
        "intentPickedUp": {
          "type": "boolean"
        },
        "nodeProgressDetails": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FFoundationCentralImageClusterClusterStatusNodeProgressDetail:FoundationCentralImageClusterClusterStatusNodeProgressDetail"
          }
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "aggregatePercentComplete",
            "clusterCreationStarted",
            "clusterProgressDetails",
            "currentFoundationIp",
            "foundationSessionId",
            "imagingStopped",
            "intentPickedUp",
            "nodeProgressDetails"
          ]
        }
      }
    },
    "nutanix:index/FoundationCentralImageClusterClusterStatusClusterProgressDetail:FoundationCentralImageClusterClusterStatusClusterProgressDetail": {
      "properties": {
        "clusterName": {
          "type": "string",
          "description": "Name of the cluster.\n"
        },
        "messageLists": {
          "type": "array",
          "items": {
            "type": "string"
          }
        },
        "percentComplete": {
          "type": "number"
        },
        "status": {
          "type": "string"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "clusterName",
            "messageLists",
            "percentComplete",
            "status"
          ]
        }
      }
    },
    "nutanix:index/FoundationCentralImageClusterClusterStatusNodeProgressDetail:FoundationCentralImageClusterClusterStatusNodeProgressDetail": {
      "properties": {
        "imagedNodeUuid": {
          "type": "string",
          "description": "UUID of the node.\n"
        },
        "imagingStopped": {
          "type": "boolean"
        },
        "intentPickedUp": {
          "type": "boolean"
        },
        "messageLists": {
          "type": "array",
          "items": {
            "type": "string"
          }
        },
        "percentComplete": {
          "type": "number"
        },
        "status": {
          "type": "string"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "imagedNodeUuid",
            "imagingStopped",
            "intentPickedUp",
            "messageLists",
            "percentComplete",
            "status"
          ]
        }
      }
    },
    "nutanix:index/FoundationCentralImageClusterCommonNetworkSettings:FoundationCentralImageClusterCommonNetworkSettings": {
      "properties": {
        "cvmDnsServers": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "List of dns servers for the cvms in the cluster.\n"
        },
        "cvmNtpServers": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "List of ntp servers for the cvms in the cluster.\n"
        },
        "hypervisorDnsServers": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "List of dns servers for the hypervisors in the cluster.\n"
        },
        "hypervisorNtpServers": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "List of ntp servers for the hypervisors in the cluster.\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "cvmDnsServers",
            "cvmNtpServers",
            "hypervisorDnsServers",
            "hypervisorNtpServers"
          ]
        }
      }
    },
    "nutanix:index/FoundationCentralImageClusterFoundationInitConfig:FoundationCentralImageClusterFoundationInitConfig": {
      "properties": {
        "blocks": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FFoundationCentralImageClusterFoundationInitConfigBlock:FoundationCentralImageClusterFoundationInitConfigBlock"
          }
        },
        "clusters": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FFoundationCentralImageClusterFoundationInitConfigCluster:FoundationCentralImageClusterFoundationInitConfigCluster"
          }
        },
        "cvmGateway": {
          "type": "string",
          "description": "Gateway of the cvm.\n"
        },
        "cvmNetmask": {
          "type": "string",
          "description": "Netmask of the cvm.\n"
        },
        "dnsServers": {
          "type": "string"
        },
        "hypervProductKey": {
          "type": "string",
          "description": "Product key for hyperv isos. Required only if the hypervisor type is hyperv and product key is mandatory (ex: for volume license).\n"
        },
        "hypervSku": {
          "type": "string",
          "description": "SKU of hyperv to be installed if<span pulumi-lang-nodejs=\" hypervisorType \" pulumi-lang-dotnet=\" HypervisorType \" pulumi-lang-go=\" hypervisorType \" pulumi-lang-python=\" hypervisor_type \" pulumi-lang-yaml=\" hypervisorType \" pulumi-lang-java=\" hypervisorType \"> hypervisor_type </span>is hyperv.\n"
        },
        "hypervisorGateway": {
          "type": "string",
          "description": "Gateway of the hypervisor.\n"
        },
        "hypervisorIsoUrl": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          }
        },
        "hypervisorIsos": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FFoundationCentralImageClusterFoundationInitConfigHypervisorIso:FoundationCentralImageClusterFoundationInitConfigHypervisorIso"
          },
          "description": "Details of the hypervisor iso. Required for deploying node with AOS >= 6.8\n"
        },
        "hypervisorNetmask": {
          "type": "string",
          "description": "Netmask of the hypervisor.\n"
        },
        "ipmiGateway": {
          "type": "string",
          "description": "Gateway of the ipmi.\n"
        },
        "ipmiNetmask": {
          "type": "string",
          "description": "Netmask of the ipmi.\n"
        },
        "nosPackageUrls": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FFoundationCentralImageClusterFoundationInitConfigNosPackageUrl:FoundationCentralImageClusterFoundationInitConfigNosPackageUrl"
          }
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "blocks",
            "clusters",
            "cvmGateway",
            "cvmNetmask",
            "dnsServers",
            "hypervProductKey",
            "hypervSku",
            "hypervisorGateway",
            "hypervisorIsoUrl",
            "hypervisorIsos",
            "hypervisorNetmask",
            "ipmiGateway",
            "ipmiNetmask",
            "nosPackageUrls"
          ]
        }
      }
    },
    "nutanix:index/FoundationCentralImageClusterFoundationInitConfigBlock:FoundationCentralImageClusterFoundationInitConfigBlock": {
      "properties": {
        "blockId": {
          "type": "string"
        },
        "nodes": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FFoundationCentralImageClusterFoundationInitConfigBlockNode:FoundationCentralImageClusterFoundationInitConfigBlockNode"
          }
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "blockId",
            "nodes"
          ]
        }
      }
    },
    "nutanix:index/FoundationCentralImageClusterFoundationInitConfigBlockNode:FoundationCentralImageClusterFoundationInitConfigBlockNode": {
      "properties": {
        "cvmIp": {
          "type": "string",
          "description": "IP address to be set for the cvm on the node.\n"
        },
        "cvmVlanId": {
          "type": "integer",
          "description": "Vlan tag of the cvm, if the cvm is on a vlan.\n"
        },
        "fcImagedNodeUuid": {
          "type": "string"
        },
        "hardwareAttributesOverride": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          },
          "description": "Hardware attributes override json for the node.\n"
        },
        "hypervisor": {
          "type": "string"
        },
        "hypervisorHostname": {
          "type": "string",
          "description": "Name to be set for the hypervisor host.\n"
        },
        "hypervisorIp": {
          "type": "string",
          "description": "IP address to be set for the hypervisor on the node.\n"
        },
        "imageNow": {
          "type": "boolean",
          "description": "True, if the node should be imaged, False, otherwise.\n"
        },
        "ipmiIp": {
          "type": "string",
          "description": "IP address to be set for the ipmi of the node.\n"
        },
        "ipv6Address": {
          "type": "string"
        },
        "nodePosition": {
          "type": "string"
        },
        "nodeSerial": {
          "type": "string"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "cvmIp",
            "cvmVlanId",
            "fcImagedNodeUuid",
            "hardwareAttributesOverride",
            "hypervisor",
            "hypervisorHostname",
            "hypervisorIp",
            "imageNow",
            "ipmiIp",
            "ipv6Address",
            "nodePosition",
            "nodeSerial"
          ]
        }
      }
    },
    "nutanix:index/FoundationCentralImageClusterFoundationInitConfigCluster:FoundationCentralImageClusterFoundationInitConfigCluster": {
      "properties": {
        "clusterExternalIp": {
          "type": "string",
          "description": "External management ip of the cluster.\n"
        },
        "clusterInitNow": {
          "type": "boolean"
        },
        "clusterInitSuccessful": {
          "type": "boolean"
        },
        "clusterMembers": {
          "type": "array",
          "items": {
            "type": "string"
          }
        },
        "clusterName": {
          "type": "string",
          "description": "Name of the cluster.\n"
        },
        "cvmDnsServers": {
          "type": "string",
          "description": "List of dns servers for the cvms in the cluster.\n"
        },
        "cvmNtpServers": {
          "type": "string",
          "description": "List of ntp servers for the cvms in the cluster.\n"
        },
        "redundancyFactor": {
          "type": "integer",
          "description": "Redundancy factor of the cluster.\n"
        },
        "timezone": {
          "type": "string",
          "description": "Timezone to be set on the cluster.\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "clusterExternalIp",
            "clusterInitNow",
            "clusterInitSuccessful",
            "clusterMembers",
            "clusterName",
            "cvmDnsServers",
            "cvmNtpServers",
            "redundancyFactor",
            "timezone"
          ]
        }
      }
    },
    "nutanix:index/FoundationCentralImageClusterFoundationInitConfigHypervisorIso:FoundationCentralImageClusterFoundationInitConfigHypervisorIso": {
      "properties": {
        "hypervisorType": {
          "type": "string"
        },
        "sha256sum": {
          "type": "string",
          "description": "sha256sum of the hypervisor iso.\n"
        },
        "url": {
          "type": "string",
          "description": "URL to download hypervisor iso. Required only if imaging is needed.\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "hypervisorType",
            "sha256sum",
            "url"
          ]
        }
      }
    },
    "nutanix:index/FoundationCentralImageClusterFoundationInitConfigNosPackageUrl:FoundationCentralImageClusterFoundationInitConfigNosPackageUrl": {
      "properties": {
        "sha256sum": {
          "type": "string",
          "description": "sha256sum of the hypervisor iso.\n"
        },
        "url": {
          "type": "string",
          "description": "URL to download hypervisor iso. Required only if imaging is needed.\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "sha256sum",
            "url"
          ]
        }
      }
    },
    "nutanix:index/FoundationCentralImageClusterHypervisorIsoDetails:FoundationCentralImageClusterHypervisorIsoDetails": {
      "properties": {
        "hypervProductKey": {
          "type": "string",
          "description": "Product key for hyperv isos. Required only if the hypervisor type is hyperv and product key is mandatory (ex: for volume license).\n"
        },
        "hypervSku": {
          "type": "string",
          "description": "SKU of hyperv to be installed if<span pulumi-lang-nodejs=\" hypervisorType \" pulumi-lang-dotnet=\" HypervisorType \" pulumi-lang-go=\" hypervisorType \" pulumi-lang-python=\" hypervisor_type \" pulumi-lang-yaml=\" hypervisorType \" pulumi-lang-java=\" hypervisorType \"> hypervisor_type </span>is hyperv.\n"
        },
        "sha256sum": {
          "type": "string",
          "description": "sha256sum of the hypervisor iso.\n"
        },
        "url": {
          "type": "string",
          "description": "URL to download hypervisor iso. Required only if imaging is needed.\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "hypervProductKey",
            "hypervSku",
            "sha256sum"
          ]
        }
      }
    },
    "nutanix:index/FoundationCentralImageClusterHypervisorIsos:FoundationCentralImageClusterHypervisorIsos": {
      "properties": {
        "hypervProductKey": {
          "type": "string",
          "description": "Product key for hyperv isos. Required only if the hypervisor type is hyperv and product key is mandatory (ex: for volume license).\n"
        },
        "hypervSku": {
          "type": "string",
          "description": "SKU of hyperv to be installed if<span pulumi-lang-nodejs=\" hypervisorType \" pulumi-lang-dotnet=\" HypervisorType \" pulumi-lang-go=\" hypervisorType \" pulumi-lang-python=\" hypervisor_type \" pulumi-lang-yaml=\" hypervisorType \" pulumi-lang-java=\" hypervisorType \"> hypervisor_type </span>is hyperv.\n"
        },
        "hypervisorType": {
          "type": "string"
        },
        "sha256sum": {
          "type": "string",
          "description": "sha256sum of the hypervisor iso.\n"
        },
        "url": {
          "type": "string",
          "description": "URL to download hypervisor iso. Required only if imaging is needed.\n"
        }
      },
      "type": "object"
    },
    "nutanix:index/FoundationCentralImageClusterNodeList:FoundationCentralImageClusterNodeList": {
      "properties": {
        "cvmGateway": {
          "type": "string",
          "description": "Gateway of the cvm.\n"
        },
        "cvmIp": {
          "type": "string",
          "description": "IP address to be set for the cvm on the node.\n"
        },
        "cvmNetmask": {
          "type": "string",
          "description": "Netmask of the cvm.\n"
        },
        "cvmRamGb": {
          "type": "integer",
          "description": "Amount of memory to be assigned for the cvm.\n"
        },
        "cvmVlanId": {
          "type": "integer",
          "description": "Vlan tag of the cvm, if the cvm is on a vlan.\n"
        },
        "hardwareAttributesOverride": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          },
          "description": "Hardware attributes override json for the node.\n"
        },
        "hypervisorGateway": {
          "type": "string",
          "description": "Gateway of the hypervisor.\n"
        },
        "hypervisorHostname": {
          "type": "string",
          "description": "Name to be set for the hypervisor host.\n"
        },
        "hypervisorIp": {
          "type": "string",
          "description": "IP address to be set for the hypervisor on the node.\n"
        },
        "hypervisorNetmask": {
          "type": "string",
          "description": "Netmask of the hypervisor.\n"
        },
        "hypervisorType": {
          "type": "string"
        },
        "imageNow": {
          "type": "boolean",
          "description": "True, if the node should be imaged, False, otherwise.\n"
        },
        "imagedNodeUuid": {
          "type": "string",
          "description": "UUID of the node.\n"
        },
        "ipmiGateway": {
          "type": "string",
          "description": "Gateway of the ipmi.\n"
        },
        "ipmiIp": {
          "type": "string",
          "description": "IP address to be set for the ipmi of the node.\n"
        },
        "ipmiNetmask": {
          "type": "string",
          "description": "Netmask of the ipmi.\n"
        },
        "rdmaPassthrough": {
          "type": "boolean",
          "description": "Passthrough RDMA nic to CVM if possible, default to false.\n"
        },
        "useExistingNetworkSettings": {
          "type": "boolean",
          "description": "Decides whether to use the existing network settings for the node. If True, the existing network settings of the node will be used during cluster creation. If False, then client must provide new network settings. If all nodes are booted in phoenix, this field is, by default, considered to be False.\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "cvmGateway",
            "cvmIp",
            "cvmVlanId",
            "hardwareAttributesOverride",
            "hypervisorGateway",
            "hypervisorHostname",
            "hypervisorIp",
            "hypervisorNetmask",
            "imageNow",
            "imagedNodeUuid",
            "ipmiGateway",
            "ipmiIp"
          ]
        }
      }
    },
    "nutanix:index/FoundationImageNodesBlock:FoundationImageNodesBlock": {
      "properties": {
        "blockId": {
          "type": "string",
          "description": "- Block ID.\n",
          "willReplaceOnChanges": true
        },
        "nodes": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FFoundationImageNodesBlockNode:FoundationImageNodesBlockNode"
          },
          "willReplaceOnChanges": true
        }
      },
      "type": "object",
      "required": [
        "nodes"
      ]
    },
    "nutanix:index/FoundationImageNodesBlockNode:FoundationImageNodesBlockNode": {
      "properties": {
        "bondLacpRate": {
          "type": "string",
          "description": "- (Required if node is lacp configured) slow or fast if lacp if being used at the switch\n",
          "willReplaceOnChanges": true
        },
        "bondMode": {
          "type": "string",
          "description": "- (Required if node is capable) dynamic if using LACP, static for LAG\n",
          "willReplaceOnChanges": true
        },
        "bondUplinks": {
          "type": "string",
          "description": "- MAC Addresses of NICs in a team/bond\n",
          "willReplaceOnChanges": true
        },
        "clusterId": {
          "type": "string",
          "description": "- ID of cluster.\n",
          "willReplaceOnChanges": true
        },
        "currentCvmVlanTag": {
          "type": "integer",
          "description": "- Current CVM vlan tag. 0 Value with remove vlan tag.\n",
          "willReplaceOnChanges": true
        },
        "currentNetworkInterface": {
          "type": "string",
          "description": "- CVM current network interface.\n",
          "willReplaceOnChanges": true
        },
        "cvmGbRam": {
          "type": "integer",
          "description": "- RAM capacity of CVM in GB.\n",
          "willReplaceOnChanges": true
        },
        "cvmIp": {
          "type": "string",
          "willReplaceOnChanges": true
        },
        "cvmNumVcpus": {
          "type": "integer",
          "description": "- Number of CVM vcpus.\n",
          "willReplaceOnChanges": true
        },
        "deviceHint": {
          "type": "string",
          "description": "- use <span pulumi-lang-nodejs=\"\"vmInstaller\"\" pulumi-lang-dotnet=\"\"VmInstaller\"\" pulumi-lang-go=\"\"vmInstaller\"\" pulumi-lang-python=\"\"vm_installer\"\" pulumi-lang-yaml=\"\"vmInstaller\"\" pulumi-lang-java=\"\"vmInstaller\"\">\"vm_installer\"</span> to enable CVM imaging from standalone.\n",
          "willReplaceOnChanges": true
        },
        "exludeBootSerial": {
          "type": "string",
          "description": "- serial of boot device to be excluded (used by NX G6 platforms)\n",
          "willReplaceOnChanges": true
        },
        "hypervisor": {
          "type": "string",
          "willReplaceOnChanges": true
        },
        "hypervisorHostname": {
          "type": "string",
          "description": "- (Required) Hypervisor Hostname.\n",
          "willReplaceOnChanges": true
        },
        "hypervisorIp": {
          "type": "string",
          "description": "- (Required) Hypervisor IP address.\n",
          "willReplaceOnChanges": true
        },
        "imageDelay": {
          "type": "integer",
          "description": "- Imaging delay.\n",
          "willReplaceOnChanges": true
        },
        "imageNow": {
          "type": "boolean",
          "description": "- (Optional, Default = true) If the node should be imaged now.\n",
          "willReplaceOnChanges": true
        },
        "imageSuccessful": {
          "type": "boolean",
          "willReplaceOnChanges": true
        },
        "ipmiConfigureNow": {
          "type": "boolean",
          "description": "- Whether IPMI should be configured.\n",
          "willReplaceOnChanges": true
        },
        "ipmiGateway": {
          "type": "string",
          "description": "- (Required incase using IPMI based imaging either here or outside blocks) IPMI gateway for this node\n",
          "willReplaceOnChanges": true
        },
        "ipmiIp": {
          "type": "string",
          "description": "- (Required) IPMI IP address.\n",
          "willReplaceOnChanges": true
        },
        "ipmiMac": {
          "type": "string",
          "description": "- IPMI MAC address.\n",
          "willReplaceOnChanges": true
        },
        "ipmiNetmask": {
          "type": "string",
          "description": "- (Required incase using IPMI based imaging either here or outside blocks) IPMI netmask for this node\n",
          "willReplaceOnChanges": true
        },
        "ipmiPassword": {
          "type": "string",
          "description": "- (Required incase using IPMI based imaging either here or outside blocks) IPMI username\n",
          "willReplaceOnChanges": true
        },
        "ipmiUser": {
          "type": "string",
          "description": "- (Required incase using IPMI based imaging either here or outside blocks) IPMI password\n",
          "willReplaceOnChanges": true
        },
        "ipv6Address": {
          "type": "string",
          "description": "- (Required when<span pulumi-lang-nodejs=\" deviceHint \" pulumi-lang-dotnet=\" DeviceHint \" pulumi-lang-go=\" deviceHint \" pulumi-lang-python=\" device_hint \" pulumi-lang-yaml=\" deviceHint \" pulumi-lang-java=\" deviceHint \"> device_hint </span>= <span pulumi-lang-nodejs=\"\"vmInstaller\"\" pulumi-lang-dotnet=\"\"VmInstaller\"\" pulumi-lang-go=\"\"vmInstaller\"\" pulumi-lang-python=\"\"vm_installer\"\" pulumi-lang-yaml=\"\"vmInstaller\"\" pulumi-lang-java=\"\"vmInstaller\"\">\"vm_installer\"</span> for imaging using node's existing cvm for imaging) IPV6 address.\n",
          "willReplaceOnChanges": true
        },
        "ipv6Interface": {
          "type": "string",
          "description": "- (Required when<span pulumi-lang-nodejs=\" deviceHint \" pulumi-lang-dotnet=\" DeviceHint \" pulumi-lang-go=\" deviceHint \" pulumi-lang-python=\" device_hint \" pulumi-lang-yaml=\" deviceHint \" pulumi-lang-java=\" deviceHint \"> device_hint </span>= <span pulumi-lang-nodejs=\"\"vmInstaller\"\" pulumi-lang-dotnet=\"\"VmInstaller\"\" pulumi-lang-go=\"\"vmInstaller\"\" pulumi-lang-python=\"\"vm_installer\"\" pulumi-lang-yaml=\"\"vmInstaller\"\" pulumi-lang-java=\"\"vmInstaller\"\">\"vm_installer\"</span> for imaging using node's existing cvm for imaging) ipv6 interface.\n",
          "willReplaceOnChanges": true
        },
        "mitigateLowBootSpace": {
          "type": "boolean",
          "description": "- relocate bootbank files to make space for phoenix files.\n",
          "willReplaceOnChanges": true
        },
        "nodePosition": {
          "type": "string",
          "description": "- (Required) Position of the node in the block.\n",
          "willReplaceOnChanges": true
        },
        "nodeSerial": {
          "type": "string",
          "description": "- serial number of the node.\n",
          "willReplaceOnChanges": true
        },
        "rdmaMacAddr": {
          "type": "string",
          "description": "- mac address of nic to be used for rdma\n",
          "willReplaceOnChanges": true
        },
        "rdmaPassthrough": {
          "type": "boolean",
          "description": "- (Required if node is capable) passthru RDMA nic to CVM if possible, default to false\n",
          "willReplaceOnChanges": true
        },
        "ucsmManagedMode": {
          "type": "string",
          "description": "- UCSM Managed mode.\n",
          "willReplaceOnChanges": true
        },
        "ucsmNodeSerial": {
          "type": "string",
          "description": "- UCSM node serial.\n",
          "willReplaceOnChanges": true
        },
        "ucsmParams": {
          "$ref": "#/types/nutanix:index%2FFoundationImageNodesBlockNodeUcsmParams:FoundationImageNodesBlockNodeUcsmParams",
          "description": "- Object of UCSM parameters.\n* `ucsm_params.native_vlan` :- If the vlan is native.\n* `ucsm_params.keep_ucsm_settings` :- Whether UCSM settings should be kept.\n* `ucsm_params.mac_pool` :- Mac address pool.\n* `ucsm_params.vlan_name` :- Name of vlan.\n",
          "willReplaceOnChanges": true
        },
        "vswitches": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FFoundationImageNodesBlockNodeVswitch:FoundationImageNodesBlockNodeVswitch"
          },
          "willReplaceOnChanges": true
        }
      },
      "type": "object",
      "required": [
        "hypervisorHostname",
        "hypervisorIp",
        "nodePosition"
      ]
    },
    "nutanix:index/FoundationImageNodesBlockNodeUcsmParams:FoundationImageNodesBlockNodeUcsmParams": {
      "properties": {
        "keepUcsmSettings": {
          "type": "boolean",
          "willReplaceOnChanges": true
        },
        "macPool": {
          "type": "string",
          "willReplaceOnChanges": true
        },
        "nativeVlan": {
          "type": "boolean",
          "willReplaceOnChanges": true
        },
        "vlanName": {
          "type": "string",
          "willReplaceOnChanges": true
        }
      },
      "type": "object"
    },
    "nutanix:index/FoundationImageNodesBlockNodeVswitch:FoundationImageNodesBlockNodeVswitch": {
      "properties": {
        "bondMode": {
          "type": "string",
          "description": "- (Required if node is capable) dynamic if using LACP, static for LAG\n",
          "willReplaceOnChanges": true
        },
        "lacp": {
          "type": "string",
          "willReplaceOnChanges": true
        },
        "mtu": {
          "type": "integer",
          "willReplaceOnChanges": true
        },
        "name": {
          "type": "string",
          "willReplaceOnChanges": true
        },
        "otherConfigs": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "willReplaceOnChanges": true
        },
        "uplinks": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "willReplaceOnChanges": true
        }
      },
      "type": "object"
    },
    "nutanix:index/FoundationImageNodesCluster:FoundationImageNodesCluster": {
      "properties": {
        "backplaneNetmask": {
          "type": "string",
          "description": "- Backplane netmask.\n",
          "willReplaceOnChanges": true
        },
        "backplaneSubnet": {
          "type": "string",
          "description": "- Backplane subnet address.\n",
          "willReplaceOnChanges": true
        },
        "backplaneVlan": {
          "type": "string",
          "description": "- Backplane vlan.\n",
          "willReplaceOnChanges": true
        },
        "clusterExternalIp": {
          "type": "string",
          "description": "- External IP of the cluster.\n",
          "willReplaceOnChanges": true
        },
        "clusterInitNow": {
          "type": "boolean",
          "description": "- (Optional, Default = true) If cluster should be created.\n",
          "willReplaceOnChanges": true
        },
        "clusterInitSuccessful": {
          "type": "boolean",
          "description": "- If cluster initialization was successful.\n",
          "willReplaceOnChanges": true
        },
        "clusterMembers": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "- (Required) Members in the cluster.\n",
          "willReplaceOnChanges": true
        },
        "clusterName": {
          "type": "string",
          "description": "- (Required) Name of the cluster.\n",
          "willReplaceOnChanges": true
        },
        "cvmDnsServers": {
          "type": "string",
          "description": "- DNS servers of CVM.\n",
          "willReplaceOnChanges": true
        },
        "cvmNtpServers": {
          "type": "string",
          "description": "- NTP servers of CVM.\n",
          "willReplaceOnChanges": true
        },
        "enableNs": {
          "type": "boolean",
          "description": "- If network segmentation should be enabled.\n",
          "willReplaceOnChanges": true
        },
        "hypervisorNtpServers": {
          "type": "string",
          "description": "- NTP servers of hypervisor.\n",
          "willReplaceOnChanges": true
        },
        "redundancyFactor": {
          "type": "integer",
          "description": "- (Required) Cluster Redundancy Factor.\n",
          "willReplaceOnChanges": true
        },
        "singleNodeCluster": {
          "type": "boolean",
          "description": "- If it is a single node cluster.\n",
          "willReplaceOnChanges": true
        },
        "timezone": {
          "type": "string",
          "description": "- Set timezone for every CVM\n",
          "willReplaceOnChanges": true
        }
      },
      "type": "object",
      "required": [
        "clusterMembers",
        "clusterName",
        "redundancyFactor"
      ]
    },
    "nutanix:index/FoundationImageNodesClusterUrl:FoundationImageNodesClusterUrl": {
      "properties": {
        "clusterName": {
          "type": "string",
          "description": "- (Required) Name of the cluster.\n"
        },
        "clusterUrl": {
          "type": "string"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "clusterName",
            "clusterUrl"
          ]
        }
      }
    },
    "nutanix:index/FoundationImageNodesEosMetadata:FoundationImageNodesEosMetadata": {
      "properties": {
        "accountNames": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "- arrya of account names\n",
          "willReplaceOnChanges": true
        },
        "configId": {
          "type": "string",
          "description": "- Id of the Eos config uploaded in foundation GUI.\n",
          "willReplaceOnChanges": true
        },
        "email": {
          "type": "string",
          "description": "- Email address of the user who downloaded Eos config.\n",
          "willReplaceOnChanges": true
        }
      },
      "type": "object"
    },
    "nutanix:index/FoundationImageNodesFcSettings:FoundationImageNodesFcSettings": {
      "properties": {
        "fcMetadata": {
          "$ref": "#/types/nutanix:index%2FFoundationImageNodesFcSettingsFcMetadata:FoundationImageNodesFcSettingsFcMetadata",
          "description": "- Foundation Central metadata which will be transferred to the newly imaged node.\n* `fc_metadata.fc_ip` :- IP address of foundation central.\n* `fc_metadata.api_key` :-<span pulumi-lang-nodejs=\" apiKey \" pulumi-lang-dotnet=\" ApiKey \" pulumi-lang-go=\" apiKey \" pulumi-lang-python=\" api_key \" pulumi-lang-yaml=\" apiKey \" pulumi-lang-java=\" apiKey \"> api_key </span>which the node uses to register itself with foundation central.\n",
          "willReplaceOnChanges": true
        },
        "foundationCentral": {
          "type": "boolean",
          "description": "- If this attribute is set to True, FC workflow will be invoked.\n",
          "willReplaceOnChanges": true
        }
      },
      "type": "object",
      "required": [
        "fcMetadata",
        "foundationCentral"
      ]
    },
    "nutanix:index/FoundationImageNodesFcSettingsFcMetadata:FoundationImageNodesFcSettingsFcMetadata": {
      "properties": {
        "apiKey": {
          "type": "string",
          "willReplaceOnChanges": true
        },
        "fcIp": {
          "type": "string",
          "willReplaceOnChanges": true
        }
      },
      "type": "object",
      "required": [
        "apiKey",
        "fcIp"
      ]
    },
    "nutanix:index/FoundationImageNodesHypervisorIso:FoundationImageNodesHypervisorIso": {
      "properties": {
        "esx": {
          "$ref": "#/types/nutanix:index%2FFoundationImageNodesHypervisorIsoEsx:FoundationImageNodesHypervisorIsoEsx",
          "description": "- Details of hypervisor ISO of type esx.\n"
        },
        "hyperv": {
          "$ref": "#/types/nutanix:index%2FFoundationImageNodesHypervisorIsoHyperv:FoundationImageNodesHypervisorIsoHyperv",
          "description": "- Details of hypervisor ISO of type hyperv.\n",
          "willReplaceOnChanges": true
        },
        "kvm": {
          "$ref": "#/types/nutanix:index%2FFoundationImageNodesHypervisorIsoKvm:FoundationImageNodesHypervisorIsoKvm",
          "description": "- Details of hypervisor ISO of type kvm.\n",
          "willReplaceOnChanges": true
        },
        "xen": {
          "$ref": "#/types/nutanix:index%2FFoundationImageNodesHypervisorIsoXen:FoundationImageNodesHypervisorIsoXen",
          "description": "- Details of hypervisor ISO of type xen.\n",
          "willReplaceOnChanges": true
        }
      },
      "type": "object"
    },
    "nutanix:index/FoundationImageNodesHypervisorIsoEsx:FoundationImageNodesHypervisorIsoEsx": {
      "properties": {
        "checksum": {
          "type": "string",
          "description": "- (Required) Filename of hypervisor ISO.\n",
          "willReplaceOnChanges": true
        },
        "filename": {
          "type": "string",
          "description": "- (Required) Checksum for ISO file.\n",
          "willReplaceOnChanges": true
        }
      },
      "type": "object",
      "required": [
        "checksum",
        "filename"
      ]
    },
    "nutanix:index/FoundationImageNodesHypervisorIsoHyperv:FoundationImageNodesHypervisorIsoHyperv": {
      "properties": {
        "checksum": {
          "type": "string",
          "description": "- (Required) Filename of hypervisor ISO.\n",
          "willReplaceOnChanges": true
        },
        "filename": {
          "type": "string",
          "description": "- (Required) Checksum for ISO file.\n",
          "willReplaceOnChanges": true
        }
      },
      "type": "object",
      "required": [
        "checksum",
        "filename"
      ]
    },
    "nutanix:index/FoundationImageNodesHypervisorIsoKvm:FoundationImageNodesHypervisorIsoKvm": {
      "properties": {
        "checksum": {
          "type": "string",
          "description": "- (Required) Filename of hypervisor ISO.\n",
          "willReplaceOnChanges": true
        },
        "filename": {
          "type": "string",
          "description": "- (Required) Checksum for ISO file.\n",
          "willReplaceOnChanges": true
        }
      },
      "type": "object",
      "required": [
        "checksum",
        "filename"
      ]
    },
    "nutanix:index/FoundationImageNodesHypervisorIsoXen:FoundationImageNodesHypervisorIsoXen": {
      "properties": {
        "checksum": {
          "type": "string",
          "description": "- (Required) Filename of hypervisor ISO.\n",
          "willReplaceOnChanges": true
        },
        "filename": {
          "type": "string",
          "description": "- (Required) Checksum for ISO file.\n",
          "willReplaceOnChanges": true
        }
      },
      "type": "object",
      "required": [
        "checksum",
        "filename"
      ]
    },
    "nutanix:index/FoundationImageNodesTests:FoundationImageNodesTests": {
      "properties": {
        "runNcc": {
          "type": "boolean",
          "description": "- Whether NCC checks should run.\n",
          "willReplaceOnChanges": true
        },
        "runSyscheck": {
          "type": "boolean",
          "description": "- Whether system checks should run.\n",
          "willReplaceOnChanges": true
        }
      },
      "type": "object"
    },
    "nutanix:index/FoundationIpmiConfigBlock:FoundationIpmiConfigBlock": {
      "properties": {
        "blockId": {
          "type": "string",
          "description": "- (Optional) Block Id\n"
        },
        "nodes": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FFoundationIpmiConfigBlockNode:FoundationIpmiConfigBlockNode"
          },
          "description": "- (Required) array of nodes for ipmi config.\n",
          "willReplaceOnChanges": true
        }
      },
      "type": "object",
      "required": [
        "nodes"
      ]
    },
    "nutanix:index/FoundationIpmiConfigBlockNode:FoundationIpmiConfigBlockNode": {
      "properties": {
        "ipmiConfigureNow": {
          "type": "boolean",
          "description": "- (Required) Whether IPMI should be configured. Should be kept true to configure\n",
          "willReplaceOnChanges": true
        },
        "ipmiConfigureSuccessful": {
          "type": "boolean",
          "description": "- Whether IPMI was successfully configured.\n"
        },
        "ipmiIp": {
          "type": "string",
          "description": "- IPMI IP address.\n",
          "willReplaceOnChanges": true
        },
        "ipmiMac": {
          "type": "string",
          "description": "- (Required) IPMI mac address.\n",
          "willReplaceOnChanges": true
        },
        "ipmiMessage": {
          "type": "string",
          "description": "- IPMI configuration status message if any.\n"
        }
      },
      "type": "object",
      "required": [
        "ipmiConfigureNow",
        "ipmiIp",
        "ipmiMac"
      ],
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "ipmiConfigureNow",
            "ipmiConfigureSuccessful",
            "ipmiIp",
            "ipmiMac",
            "ipmiMessage"
          ]
        }
      }
    },
    "nutanix:index/ImageCategory:ImageCategory": {
      "properties": {
        "name": {
          "type": "string",
          "description": "- (Required) The name for the image.\n"
        },
        "value": {
          "type": "string"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "name",
            "value"
          ]
        }
      }
    },
    "nutanix:index/ImageClusterReference:ImageClusterReference": {
      "properties": {
        "kind": {
          "type": "string",
          "description": "- The kind name (Default value: project)(Required).\n"
        },
        "name": {
          "type": "string",
          "description": "- (Required) The name for the image.\n"
        },
        "uuid": {
          "type": "string",
          "description": "- the UUID(Required).\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "kind",
            "name",
            "uuid"
          ]
        }
      }
    },
    "nutanix:index/ImageCurrentClusterReferenceList:ImageCurrentClusterReferenceList": {
      "properties": {
        "kind": {
          "type": "string",
          "description": "- The kind name (Default value: project)(Required).\n"
        },
        "name": {
          "type": "string",
          "description": "- (Required) The name for the image.\n"
        },
        "uuid": {
          "type": "string",
          "description": "- the UUID(Required).\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "kind",
            "name",
            "uuid"
          ]
        }
      }
    },
    "nutanix:index/ImageDataSourceReference:ImageDataSourceReference": {
      "properties": {
        "kind": {
          "type": "string",
          "description": "- The kind name (Default value: project)(Required).\n"
        },
        "uuid": {
          "type": "string",
          "description": "- the UUID(Required).\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "kind",
            "uuid"
          ]
        }
      }
    },
    "nutanix:index/ImagePlacementPolicyV2ClusterEntityFilter:ImagePlacementPolicyV2ClusterEntityFilter": {
      "properties": {
        "categoryExtIds": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "Array of strings\n\n\nSee detailed information in [Nutanix Create Image Placement Policies V4](https://developers.nutanix.com/api-reference?namespace=vmm&version=v4.0#tag/ImagePlacementPolicies/operation/createPlacementPolicy)\n"
        },
        "type": {
          "type": "string",
          "description": "Filter matching type. Valid values \"CATEGORIES_MATCH_ALL\", \"CATEGORIES_MATCH_ANY\"\n"
        }
      },
      "type": "object",
      "required": [
        "type"
      ],
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "categoryExtIds",
            "type"
          ]
        }
      }
    },
    "nutanix:index/ImagePlacementPolicyV2ImageEntityFilter:ImagePlacementPolicyV2ImageEntityFilter": {
      "properties": {
        "categoryExtIds": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "Array of strings\n"
        },
        "type": {
          "type": "string",
          "description": "Filter matching type. Valid values \"CATEGORIES_MATCH_ALL\", \"CATEGORIES_MATCH_ANY\"\n"
        }
      },
      "type": "object",
      "required": [
        "type"
      ],
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "categoryExtIds",
            "type"
          ]
        }
      }
    },
    "nutanix:index/ImagesV2Checksum:ImagesV2Checksum": {
      "properties": {
        "hexDigest": {
          "type": "string"
        },
        "objectType": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "hexDigest",
        "objectType"
      ]
    },
    "nutanix:index/ImagesV2PlacementPolicyStatus:ImagesV2PlacementPolicyStatus": {
      "properties": {
        "complianceStatus": {
          "type": "string"
        },
        "conflictingPolicyExtIds": {
          "type": "array",
          "items": {
            "type": "string"
          }
        },
        "enforcedClusterExtIds": {
          "type": "array",
          "items": {
            "type": "string"
          }
        },
        "enforcementMode": {
          "type": "string"
        },
        "placementPolicyExtId": {
          "type": "string"
        },
        "policyClusterExtIds": {
          "type": "array",
          "items": {
            "type": "string"
          }
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "complianceStatus",
            "conflictingPolicyExtIds",
            "enforcedClusterExtIds",
            "enforcementMode",
            "placementPolicyExtId",
            "policyClusterExtIds"
          ]
        }
      }
    },
    "nutanix:index/ImagesV2Source:ImagesV2Source": {
      "properties": {
        "objectLiteSources": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FImagesV2SourceObjectLiteSource:ImagesV2SourceObjectLiteSource"
          }
        },
        "urlSources": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FImagesV2SourceUrlSource:ImagesV2SourceUrlSource"
          }
        },
        "vmDiskSources": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FImagesV2SourceVmDiskSource:ImagesV2SourceVmDiskSource"
          }
        }
      },
      "type": "object"
    },
    "nutanix:index/ImagesV2SourceObjectLiteSource:ImagesV2SourceObjectLiteSource": {
      "properties": {
        "key": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "key"
      ]
    },
    "nutanix:index/ImagesV2SourceUrlSource:ImagesV2SourceUrlSource": {
      "properties": {
        "basicAuths": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FImagesV2SourceUrlSourceBasicAuth:ImagesV2SourceUrlSourceBasicAuth"
          }
        },
        "shouldAllowInsecureUrl": {
          "type": "boolean"
        },
        "url": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "url"
      ]
    },
    "nutanix:index/ImagesV2SourceUrlSourceBasicAuth:ImagesV2SourceUrlSourceBasicAuth": {
      "properties": {
        "password": {
          "type": "string"
        },
        "username": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "password",
        "username"
      ]
    },
    "nutanix:index/ImagesV2SourceVmDiskSource:ImagesV2SourceVmDiskSource": {
      "properties": {
        "extId": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "extId"
      ]
    },
    "nutanix:index/KarbonClusterActivePassiveConfig:KarbonClusterActivePassiveConfig": {
      "properties": {
        "externalIpv4Address": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "externalIpv4Address"
      ]
    },
    "nutanix:index/KarbonClusterCniConfig:KarbonClusterCniConfig": {
      "properties": {
        "calicoConfig": {
          "$ref": "#/types/nutanix:index%2FKarbonClusterCniConfigCalicoConfig:KarbonClusterCniConfigCalicoConfig",
          "description": "- (Optional) Configuration of the calico CNI provider.\n* `calico_config.ip_pool_config`: - (Optional) List of IP pools to be configured/managed by calico.\n* `calico_config.ip_pool_config.cidr`: - (Optional) IP range to use for this pool, it should fall within pod cidr.\n",
          "willReplaceOnChanges": true
        },
        "flannelConfigs": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FKarbonClusterCniConfigFlannelConfig:KarbonClusterCniConfigFlannelConfig"
          },
          "description": "- (Optional) Configuration of the flannel container network interface (CNI) provider.\n",
          "willReplaceOnChanges": true
        },
        "nodeCidrMaskSize": {
          "type": "integer",
          "description": "- (Optional) The size of the subnet from the<span pulumi-lang-nodejs=\" podIpv4Cidr \" pulumi-lang-dotnet=\" PodIpv4Cidr \" pulumi-lang-go=\" podIpv4Cidr \" pulumi-lang-python=\" pod_ipv4_cidr \" pulumi-lang-yaml=\" podIpv4Cidr \" pulumi-lang-java=\" podIpv4Cidr \"> pod_ipv4_cidr </span>assigned to each host. A value of 24 would allow up to 255 pods per node.\n"
        },
        "podIpv4Cidr": {
          "type": "string",
          "description": "- (Optional) CIDR for pods in the cluster.\n"
        },
        "serviceIpv4Cidr": {
          "type": "string",
          "description": "- (Optional) Classless inter-domain routing (CIDR) for k8s services in the cluster.\n"
        }
      },
      "type": "object"
    },
    "nutanix:index/KarbonClusterCniConfigCalicoConfig:KarbonClusterCniConfigCalicoConfig": {
      "properties": {
        "ipPoolConfigs": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FKarbonClusterCniConfigCalicoConfigIpPoolConfig:KarbonClusterCniConfigCalicoConfigIpPoolConfig"
          },
          "willReplaceOnChanges": true
        }
      },
      "type": "object"
    },
    "nutanix:index/KarbonClusterCniConfigCalicoConfigIpPoolConfig:KarbonClusterCniConfigCalicoConfigIpPoolConfig": {
      "properties": {
        "cidr": {
          "type": "string",
          "willReplaceOnChanges": true
        }
      },
      "type": "object"
    },
    "nutanix:index/KarbonClusterCniConfigFlannelConfig:KarbonClusterCniConfigFlannelConfig": {
      "type": "object"
    },
    "nutanix:index/KarbonClusterEtcdNodePool:KarbonClusterEtcdNodePool": {
      "properties": {
        "ahvConfig": {
          "$ref": "#/types/nutanix:index%2FKarbonClusterEtcdNodePoolAhvConfig:KarbonClusterEtcdNodePoolAhvConfig",
          "description": "- (Optional) VM configuration in AHV. **Note:** Updates to this attribute forces new resource creation.\n* `ahv_config.cpu`: - (Required) The number of VCPUs allocated for each VM on the PE cluster.\n* `ahv_config.disk_mib`: - (Optional) Size of local storage for each VM on the PE cluster in MiB.\n* `ahv_config.memory_mib`: - (Optional) Memory allocated for each VM on the PE cluster in MiB.\n* `ahv_config.network_uuid`: - (Required) The UUID of the network for the VMs deployed with this resource configuration.\n* `ahv_config.prism_element_cluster_uuid`: - (Required) The unique universal identifier (UUID) of the Prism Element cluster used to deploy VMs for this node pool.\n",
          "willReplaceOnChanges": true
        },
        "name": {
          "type": "string",
          "description": "- (Optional) Unique name of the node pool. **Note:** Updates to this attribute forces new resource creation.\n",
          "willReplaceOnChanges": true
        },
        "nodeOsVersion": {
          "type": "string",
          "description": "- (Required) The version of the node OS image. **Note:** Updates to this attribute forces new resource creation.\n",
          "willReplaceOnChanges": true
        },
        "nodes": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FKarbonClusterEtcdNodePoolNode:KarbonClusterEtcdNodePoolNode"
          },
          "description": "- List of the deployed nodes in the node pool.\n* `nodes.hostname`: - Hostname of the deployed node.\n* `nodes.ipv4_address`: - IP of the deployed node.\n"
        },
        "numInstances": {
          "type": "integer",
          "description": "- (Required) Number of nodes in the node pool. **Note:** Updates to etcd or master node pool forces new resource creation.\n",
          "willReplaceOnChanges": true
        }
      },
      "type": "object",
      "required": [
        "nodeOsVersion",
        "numInstances"
      ],
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "nodeOsVersion",
            "nodes",
            "numInstances"
          ]
        }
      }
    },
    "nutanix:index/KarbonClusterEtcdNodePoolAhvConfig:KarbonClusterEtcdNodePoolAhvConfig": {
      "properties": {
        "cpu": {
          "type": "integer"
        },
        "diskMib": {
          "type": "integer"
        },
        "memoryMib": {
          "type": "integer"
        },
        "networkUuid": {
          "type": "string"
        },
        "prismElementClusterUuid": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "networkUuid",
        "prismElementClusterUuid"
      ]
    },
    "nutanix:index/KarbonClusterEtcdNodePoolNode:KarbonClusterEtcdNodePoolNode": {
      "properties": {
        "hostname": {
          "type": "string"
        },
        "ipv4Address": {
          "type": "string"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "hostname",
            "ipv4Address"
          ]
        }
      }
    },
    "nutanix:index/KarbonClusterExternalLbConfig:KarbonClusterExternalLbConfig": {
      "properties": {
        "externalIpv4Address": {
          "type": "string"
        },
        "masterNodesConfigs": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FKarbonClusterExternalLbConfigMasterNodesConfig:KarbonClusterExternalLbConfigMasterNodesConfig"
          }
        }
      },
      "type": "object",
      "required": [
        "externalIpv4Address",
        "masterNodesConfigs"
      ]
    },
    "nutanix:index/KarbonClusterExternalLbConfigMasterNodesConfig:KarbonClusterExternalLbConfigMasterNodesConfig": {
      "properties": {
        "ipv4Address": {
          "type": "string"
        },
        "nodePoolName": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "ipv4Address"
      ]
    },
    "nutanix:index/KarbonClusterMasterNodePool:KarbonClusterMasterNodePool": {
      "properties": {
        "ahvConfig": {
          "$ref": "#/types/nutanix:index%2FKarbonClusterMasterNodePoolAhvConfig:KarbonClusterMasterNodePoolAhvConfig",
          "description": "- (Optional) VM configuration in AHV. **Note:** Updates to this attribute forces new resource creation.\n* `ahv_config.cpu`: - (Required) The number of VCPUs allocated for each VM on the PE cluster.\n* `ahv_config.disk_mib`: - (Optional) Size of local storage for each VM on the PE cluster in MiB.\n* `ahv_config.memory_mib`: - (Optional) Memory allocated for each VM on the PE cluster in MiB.\n* `ahv_config.network_uuid`: - (Required) The UUID of the network for the VMs deployed with this resource configuration.\n* `ahv_config.prism_element_cluster_uuid`: - (Required) The unique universal identifier (UUID) of the Prism Element cluster used to deploy VMs for this node pool.\n",
          "willReplaceOnChanges": true
        },
        "name": {
          "type": "string",
          "description": "- (Optional) Unique name of the node pool. **Note:** Updates to this attribute forces new resource creation.\n",
          "willReplaceOnChanges": true
        },
        "nodeOsVersion": {
          "type": "string",
          "description": "- (Required) The version of the node OS image. **Note:** Updates to this attribute forces new resource creation.\n",
          "willReplaceOnChanges": true
        },
        "nodes": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FKarbonClusterMasterNodePoolNode:KarbonClusterMasterNodePoolNode"
          },
          "description": "- List of the deployed nodes in the node pool.\n* `nodes.hostname`: - Hostname of the deployed node.\n* `nodes.ipv4_address`: - IP of the deployed node.\n"
        },
        "numInstances": {
          "type": "integer",
          "description": "- (Required) Number of nodes in the node pool. **Note:** Updates to etcd or master node pool forces new resource creation.\n",
          "willReplaceOnChanges": true
        }
      },
      "type": "object",
      "required": [
        "nodeOsVersion",
        "numInstances"
      ],
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "nodeOsVersion",
            "nodes",
            "numInstances"
          ]
        }
      }
    },
    "nutanix:index/KarbonClusterMasterNodePoolAhvConfig:KarbonClusterMasterNodePoolAhvConfig": {
      "properties": {
        "cpu": {
          "type": "integer"
        },
        "diskMib": {
          "type": "integer"
        },
        "memoryMib": {
          "type": "integer"
        },
        "networkUuid": {
          "type": "string"
        },
        "prismElementClusterUuid": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "networkUuid",
        "prismElementClusterUuid"
      ]
    },
    "nutanix:index/KarbonClusterMasterNodePoolNode:KarbonClusterMasterNodePoolNode": {
      "properties": {
        "hostname": {
          "type": "string"
        },
        "ipv4Address": {
          "type": "string"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "hostname",
            "ipv4Address"
          ]
        }
      }
    },
    "nutanix:index/KarbonClusterPrivateRegistry:KarbonClusterPrivateRegistry": {
      "properties": {
        "registryName": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "registryName"
      ]
    },
    "nutanix:index/KarbonClusterSingleMasterConfig:KarbonClusterSingleMasterConfig": {
      "type": "object"
    },
    "nutanix:index/KarbonClusterStorageClassConfig:KarbonClusterStorageClassConfig": {
      "properties": {
        "name": {
          "type": "string",
          "description": "- (Required) The name of the storage class.\n",
          "willReplaceOnChanges": true
        },
        "reclaimPolicy": {
          "type": "string",
          "description": "Reclaim policy for persistent volumes provisioned using the specified storage class.\n* `volumes_config.#.file_system` - (Optional) Karbon uses either the ext4 or xfs file-system on the volume disk.\n* `volumes_config.#.flash_mode` - (Optional) Pins the persistent volumes to the flash tier in case of a <span pulumi-lang-nodejs=\"`true`\" pulumi-lang-dotnet=\"`True`\" pulumi-lang-go=\"`true`\" pulumi-lang-python=\"`true`\" pulumi-lang-yaml=\"`true`\" pulumi-lang-java=\"`true`\">`true`</span> value.\n* `volumes_config.#.password` - (Required) The password of the Prism Element user that the API calls use to provision volumes.\n* `volumes_config.#.prism_element_cluster_uuid` - (Required) The universally unique identifier (UUID) of the Prism Element cluster.\n* `volumes_config.#.storage_container` - (Required) Name of the storage container the storage container uses to provision volumes.\n* `volumes_config.#.username` - (Required) Username of the Prism Element user that the API calls use to provision volumes.\n\n**Note:** Updates to this attribute forces new resource creation.\n"
        },
        "volumesConfig": {
          "$ref": "#/types/nutanix:index%2FKarbonClusterStorageClassConfigVolumesConfig:KarbonClusterStorageClassConfigVolumesConfig",
          "willReplaceOnChanges": true
        }
      },
      "type": "object",
      "required": [
        "volumesConfig"
      ]
    },
    "nutanix:index/KarbonClusterStorageClassConfigVolumesConfig:KarbonClusterStorageClassConfigVolumesConfig": {
      "properties": {
        "fileSystem": {
          "type": "string"
        },
        "flashMode": {
          "type": "boolean"
        },
        "password": {
          "type": "string",
          "secret": true
        },
        "prismElementClusterUuid": {
          "type": "string"
        },
        "storageContainer": {
          "type": "string"
        },
        "username": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "password",
        "prismElementClusterUuid",
        "storageContainer",
        "username"
      ]
    },
    "nutanix:index/KarbonClusterWorkerNodePool:KarbonClusterWorkerNodePool": {
      "properties": {
        "ahvConfig": {
          "$ref": "#/types/nutanix:index%2FKarbonClusterWorkerNodePoolAhvConfig:KarbonClusterWorkerNodePoolAhvConfig",
          "description": "- (Optional) VM configuration in AHV. **Note:** Updates to this attribute forces new resource creation.\n* `ahv_config.cpu`: - (Required) The number of VCPUs allocated for each VM on the PE cluster.\n* `ahv_config.disk_mib`: - (Optional) Size of local storage for each VM on the PE cluster in MiB.\n* `ahv_config.memory_mib`: - (Optional) Memory allocated for each VM on the PE cluster in MiB.\n* `ahv_config.network_uuid`: - (Required) The UUID of the network for the VMs deployed with this resource configuration.\n* `ahv_config.prism_element_cluster_uuid`: - (Required) The unique universal identifier (UUID) of the Prism Element cluster used to deploy VMs for this node pool.\n",
          "willReplaceOnChanges": true
        },
        "name": {
          "type": "string",
          "description": "- (Optional) Unique name of the node pool. **Note:** Updates to this attribute forces new resource creation.\n",
          "willReplaceOnChanges": true
        },
        "nodeOsVersion": {
          "type": "string",
          "description": "- (Required) The version of the node OS image. **Note:** Updates to this attribute forces new resource creation.\n",
          "willReplaceOnChanges": true
        },
        "nodes": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FKarbonClusterWorkerNodePoolNode:KarbonClusterWorkerNodePoolNode"
          },
          "description": "- List of the deployed nodes in the node pool.\n* `nodes.hostname`: - Hostname of the deployed node.\n* `nodes.ipv4_address`: - IP of the deployed node.\n"
        },
        "numInstances": {
          "type": "integer",
          "description": "- (Required) Number of nodes in the node pool. **Note:** Updates to etcd or master node pool forces new resource creation.\n"
        }
      },
      "type": "object",
      "required": [
        "nodeOsVersion",
        "numInstances"
      ],
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "nodeOsVersion",
            "nodes",
            "numInstances"
          ]
        }
      }
    },
    "nutanix:index/KarbonClusterWorkerNodePoolAhvConfig:KarbonClusterWorkerNodePoolAhvConfig": {
      "properties": {
        "cpu": {
          "type": "integer"
        },
        "diskMib": {
          "type": "integer"
        },
        "memoryMib": {
          "type": "integer"
        },
        "networkUuid": {
          "type": "string"
        },
        "prismElementClusterUuid": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "networkUuid",
        "prismElementClusterUuid"
      ]
    },
    "nutanix:index/KarbonClusterWorkerNodePoolNode:KarbonClusterWorkerNodePoolNode": {
      "properties": {
        "hostname": {
          "type": "string"
        },
        "ipv4Address": {
          "type": "string"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "hostname",
            "ipv4Address"
          ]
        }
      }
    },
    "nutanix:index/KarbonWorkerNodepoolAhvConfig:KarbonWorkerNodepoolAhvConfig": {
      "properties": {
        "cpu": {
          "type": "integer",
          "description": "- (Required) The number of VCPUs allocated for each VM on the PE cluster.\n"
        },
        "diskMib": {
          "type": "integer",
          "description": "- (Optional) Size of local storage for each VM on the PE cluster in MiB.\n"
        },
        "iscsiNetworkUuid": {
          "type": "string",
          "description": "VM network UUID for isolating iscsi data traffic.\n"
        },
        "memoryMib": {
          "type": "integer",
          "description": "- (Optional) Memory allocated for each VM on the PE cluster in MiB.\n"
        },
        "networkUuid": {
          "type": "string",
          "description": "- (Required) The UUID of the network for the VMs deployed with this resource configuration.\n"
        },
        "prismElementClusterUuid": {
          "type": "string",
          "description": "- (Optional) The unique universal identifier (UUID) of the Prism Element\n"
        }
      },
      "type": "object",
      "required": [
        "networkUuid"
      ],
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "iscsiNetworkUuid",
            "networkUuid",
            "prismElementClusterUuid"
          ]
        }
      }
    },
    "nutanix:index/KarbonWorkerNodepoolNode:KarbonWorkerNodepoolNode": {
      "properties": {
        "hostname": {
          "type": "string",
          "description": "hostname of node\n"
        },
        "ipv4Address": {
          "type": "string",
          "description": "ipv4 address of node\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "hostname",
            "ipv4Address"
          ]
        }
      }
    },
    "nutanix:index/LcmPrechecksV2EntityUpdateSpec:LcmPrechecksV2EntityUpdateSpec": {
      "properties": {
        "entityUuid": {
          "type": "string",
          "description": "UUID of the LCM entity.\n"
        },
        "toVersion": {
          "type": "string",
          "description": "Version to upgrade to.\n\nSee detailed information in [Nutanix LCM Prechecks v4](https://developers.nutanix.com/api-reference?namespace=lifecycle&version=v4.0#tag/Prechecks/operation/performPrechecks)\n"
        }
      },
      "type": "object",
      "required": [
        "entityUuid",
        "toVersion"
      ]
    },
    "nutanix:index/LcmPrechecksV2ManagementServer:LcmPrechecksV2ManagementServer": {
      "properties": {
        "hypervisorType": {
          "type": "string",
          "description": "Type of Hypervisor present in the cluster. Enum Values:\n* \"HYPERV\" : Hyper-V Hypervisor.\n* \"ESX\" : ESX Hypervisor.\n* \"AHV\" : Nutanix AHV Hypervisor.\n"
        },
        "ip": {
          "type": "string",
          "description": "IP address of the management server.\n"
        },
        "password": {
          "type": "string",
          "description": "Password to login to the management server.\n"
        },
        "username": {
          "type": "string",
          "description": "Username to login to the management server.\n"
        }
      },
      "type": "object",
      "required": [
        "hypervisorType",
        "ip",
        "password",
        "username"
      ]
    },
    "nutanix:index/LcmUpgradeV2EntityUpdateSpec:LcmUpgradeV2EntityUpdateSpec": {
      "properties": {
        "entityUuid": {
          "type": "string",
          "description": "UUID of the LCM entity.\n"
        },
        "toVersion": {
          "type": "string",
          "description": "Version to upgrade to.\n\n\nSee detailed information in [Nutanix LCM Upgrade v4](https://developers.nutanix.com/api-reference?namespace=lifecycle&version=v4.0#tag/Upgrades/operation/performUpgrade).\n"
        }
      },
      "type": "object",
      "required": [
        "entityUuid",
        "toVersion"
      ]
    },
    "nutanix:index/LcmUpgradeV2ManagementServer:LcmUpgradeV2ManagementServer": {
      "properties": {
        "hypervisorType": {
          "type": "string",
          "description": "Type of Hypervisor present in the cluster. Enum Values:\n* \"HYPERV\" : Hyper-V Hypervisor.\n* \"ESX\" : ESX Hypervisor.\n* \"AHV\" : Nutanix AHV Hypervisor.\n"
        },
        "ip": {
          "type": "string",
          "description": "IP address of the management server.\n"
        },
        "password": {
          "type": "string",
          "description": "Password to login to the management server.\n"
        },
        "username": {
          "type": "string",
          "description": "Username to login to the management server.\n"
        }
      },
      "type": "object",
      "required": [
        "hypervisorType",
        "ip",
        "password",
        "username"
      ]
    },
    "nutanix:index/NdbCloneActionargument:NdbCloneActionargument": {
      "properties": {
        "name": {
          "type": "string",
          "description": "- (Required) name of argument\n"
        },
        "value": {
          "type": "string",
          "description": "- (Required) value for argument\n"
        }
      },
      "type": "object",
      "required": [
        "name",
        "value"
      ]
    },
    "nutanix:index/NdbCloneDatabaseNode:NdbCloneDatabaseNode": {
      "properties": {
        "accessLevel": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          }
        },
        "databaseId": {
          "type": "string"
        },
        "databaseStatus": {
          "type": "string"
        },
        "dateCreated": {
          "type": "string",
          "description": "date created for clone\n"
        },
        "dateModified": {
          "type": "string",
          "description": "last modified date for clone\n"
        },
        "dbserver": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          }
        },
        "dbserverId": {
          "type": "string",
          "description": "Specify if you want to create a database server. This value can be set to true or false as required.\n"
        },
        "description": {
          "type": "string",
          "description": "database instance description\n"
        },
        "id": {
          "type": "string"
        },
        "infos": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FNdbCloneDatabaseNodeInfo:NdbCloneDatabaseNodeInfo"
          },
          "description": "info of clone\n"
        },
        "name": {
          "type": "string",
          "description": "database instance name\n"
        },
        "primary": {
          "type": "boolean"
        },
        "properties": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FNdbCloneDatabaseNodeProperty:NdbCloneDatabaseNodeProperty"
          },
          "description": "List of all the properties\n"
        },
        "protectionDomainId": {
          "type": "string"
        },
        "protectionDomains": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FNdbCloneDatabaseNodeProtectionDomain:NdbCloneDatabaseNodeProtectionDomain"
          }
        },
        "softwareInstallationId": {
          "type": "string"
        },
        "status": {
          "type": "string",
          "description": "status of clone\n"
        },
        "tags": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FNdbCloneDatabaseNodeTag:NdbCloneDatabaseNodeTag"
          },
          "description": "allows you to assign metadata to entities (clones, time machines, databases, and database servers) by using tags.\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "accessLevel",
            "databaseId",
            "databaseStatus",
            "dateCreated",
            "dateModified",
            "dbserver",
            "dbserverId",
            "description",
            "id",
            "infos",
            "name",
            "primary",
            "properties",
            "protectionDomainId",
            "protectionDomains",
            "softwareInstallationId",
            "status",
            "tags"
          ]
        }
      }
    },
    "nutanix:index/NdbCloneDatabaseNodeInfo:NdbCloneDatabaseNodeInfo": {
      "properties": {
        "info": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          },
          "description": "info of clone\n"
        },
        "secureInfo": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          }
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "info",
            "secureInfo"
          ]
        }
      }
    },
    "nutanix:index/NdbCloneDatabaseNodeProperty:NdbCloneDatabaseNodeProperty": {
      "properties": {
        "description": {
          "type": "string",
          "description": "database instance description\n"
        },
        "name": {
          "type": "string",
          "description": "database instance name\n"
        },
        "refId": {
          "type": "string"
        },
        "secure": {
          "type": "boolean"
        },
        "value": {
          "type": "string",
          "description": "- (Required) value for argument\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "description",
            "name",
            "refId",
            "secure",
            "value"
          ]
        }
      }
    },
    "nutanix:index/NdbCloneDatabaseNodeProtectionDomain:NdbCloneDatabaseNodeProtectionDomain": {
      "properties": {
        "assocEntities": {
          "type": "array",
          "items": {
            "type": "string"
          }
        },
        "cloudId": {
          "type": "string"
        },
        "dateCreated": {
          "type": "string",
          "description": "date created for clone\n"
        },
        "dateModified": {
          "type": "string",
          "description": "last modified date for clone\n"
        },
        "description": {
          "type": "string",
          "description": "database instance description\n"
        },
        "eraCreated": {
          "type": "boolean"
        },
        "id": {
          "type": "string"
        },
        "name": {
          "type": "string",
          "description": "database instance name\n"
        },
        "ownerId": {
          "type": "string"
        },
        "primaryHost": {
          "type": "string"
        },
        "properties": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FNdbCloneDatabaseNodeProtectionDomainProperty:NdbCloneDatabaseNodeProtectionDomainProperty"
          },
          "description": "List of all the properties\n"
        },
        "status": {
          "type": "string",
          "description": "status of clone\n"
        },
        "type": {
          "type": "string",
          "description": "type of clone\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "assocEntities",
            "cloudId",
            "dateCreated",
            "dateModified",
            "description",
            "eraCreated",
            "id",
            "name",
            "ownerId",
            "primaryHost",
            "properties",
            "status",
            "type"
          ]
        }
      }
    },
    "nutanix:index/NdbCloneDatabaseNodeProtectionDomainProperty:NdbCloneDatabaseNodeProtectionDomainProperty": {
      "properties": {
        "description": {
          "type": "string",
          "description": "database instance description\n"
        },
        "name": {
          "type": "string",
          "description": "database instance name\n"
        },
        "refId": {
          "type": "string"
        },
        "secure": {
          "type": "boolean"
        },
        "value": {
          "type": "string",
          "description": "- (Required) value for argument\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "description",
            "name",
            "refId",
            "secure",
            "value"
          ]
        }
      }
    },
    "nutanix:index/NdbCloneDatabaseNodeTag:NdbCloneDatabaseNodeTag": {
      "properties": {
        "entityId": {
          "type": "string"
        },
        "entityType": {
          "type": "string"
        },
        "tagId": {
          "type": "string"
        },
        "tagName": {
          "type": "string"
        },
        "value": {
          "type": "string",
          "description": "- (Required) value for argument\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "entityId",
            "entityType",
            "tagId",
            "tagName",
            "value"
          ]
        }
      }
    },
    "nutanix:index/NdbCloneInfo:NdbCloneInfo": {
      "properties": {
        "bpgConfigs": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FNdbCloneInfoBpgConfig:NdbCloneInfoBpgConfig"
          }
        },
        "secureInfo": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          }
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "bpgConfigs",
            "secureInfo"
          ]
        }
      }
    },
    "nutanix:index/NdbCloneInfoBpgConfig:NdbCloneInfoBpgConfig": {
      "properties": {
        "bpgDbParams": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FNdbCloneInfoBpgConfigBpgDbParam:NdbCloneInfoBpgConfigBpgDbParam"
          }
        },
        "storages": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FNdbCloneInfoBpgConfigStorage:NdbCloneInfoBpgConfigStorage"
          }
        },
        "vmProperties": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FNdbCloneInfoBpgConfigVmProperty:NdbCloneInfoBpgConfigVmProperty"
          }
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "bpgDbParams",
            "storages",
            "vmProperties"
          ]
        }
      }
    },
    "nutanix:index/NdbCloneInfoBpgConfigBpgDbParam:NdbCloneInfoBpgConfigBpgDbParam": {
      "properties": {
        "effectiveCacheSize": {
          "type": "string"
        },
        "maintenanceWorkMem": {
          "type": "string"
        },
        "maxParallelWorkersPerGather": {
          "type": "string"
        },
        "maxWorkerProcesses": {
          "type": "string"
        },
        "sharedBuffers": {
          "type": "string"
        },
        "workMem": {
          "type": "string"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "effectiveCacheSize",
            "maintenanceWorkMem",
            "maxParallelWorkersPerGather",
            "maxWorkerProcesses",
            "sharedBuffers",
            "workMem"
          ]
        }
      }
    },
    "nutanix:index/NdbCloneInfoBpgConfigStorage:NdbCloneInfoBpgConfigStorage": {
      "properties": {
        "archiveStorages": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FNdbCloneInfoBpgConfigStorageArchiveStorage:NdbCloneInfoBpgConfigStorageArchiveStorage"
          }
        },
        "dataDisks": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FNdbCloneInfoBpgConfigStorageDataDisk:NdbCloneInfoBpgConfigStorageDataDisk"
          }
        },
        "logDisks": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FNdbCloneInfoBpgConfigStorageLogDisk:NdbCloneInfoBpgConfigStorageLogDisk"
          }
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "archiveStorages",
            "dataDisks",
            "logDisks"
          ]
        }
      }
    },
    "nutanix:index/NdbCloneInfoBpgConfigStorageArchiveStorage:NdbCloneInfoBpgConfigStorageArchiveStorage": {
      "properties": {
        "size": {
          "type": "number"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "size"
          ]
        }
      }
    },
    "nutanix:index/NdbCloneInfoBpgConfigStorageDataDisk:NdbCloneInfoBpgConfigStorageDataDisk": {
      "properties": {
        "count": {
          "type": "number"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "count"
          ]
        }
      }
    },
    "nutanix:index/NdbCloneInfoBpgConfigStorageLogDisk:NdbCloneInfoBpgConfigStorageLogDisk": {
      "properties": {
        "count": {
          "type": "number"
        },
        "size": {
          "type": "number"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "count",
            "size"
          ]
        }
      }
    },
    "nutanix:index/NdbCloneInfoBpgConfigVmProperty:NdbCloneInfoBpgConfigVmProperty": {
      "properties": {
        "dirtyBackgroundRatio": {
          "type": "number"
        },
        "dirtyExpireCentisecs": {
          "type": "number"
        },
        "dirtyRatio": {
          "type": "number"
        },
        "dirtyWritebackCentisecs": {
          "type": "number"
        },
        "nrHugepages": {
          "type": "number"
        },
        "overcommitMemory": {
          "type": "number"
        },
        "swappiness": {
          "type": "number"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "dirtyBackgroundRatio",
            "dirtyExpireCentisecs",
            "dirtyRatio",
            "dirtyWritebackCentisecs",
            "nrHugepages",
            "overcommitMemory",
            "swappiness"
          ]
        }
      }
    },
    "nutanix:index/NdbCloneLcmConfig:NdbCloneLcmConfig": {
      "properties": {
        "databaseLcmConfigs": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FNdbCloneLcmConfigDatabaseLcmConfig:NdbCloneLcmConfigDatabaseLcmConfig"
          }
        }
      },
      "type": "object"
    },
    "nutanix:index/NdbCloneLcmConfigDatabaseLcmConfig:NdbCloneLcmConfigDatabaseLcmConfig": {
      "properties": {
        "expiryDetails": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FNdbCloneLcmConfigDatabaseLcmConfigExpiryDetail:NdbCloneLcmConfigDatabaseLcmConfigExpiryDetail"
          }
        },
        "refreshDetails": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FNdbCloneLcmConfigDatabaseLcmConfigRefreshDetail:NdbCloneLcmConfigDatabaseLcmConfigRefreshDetail"
          }
        }
      },
      "type": "object"
    },
    "nutanix:index/NdbCloneLcmConfigDatabaseLcmConfigExpiryDetail:NdbCloneLcmConfigDatabaseLcmConfigExpiryDetail": {
      "properties": {
        "deleteDatabase": {
          "type": "boolean"
        },
        "expireInDays": {
          "type": "integer"
        },
        "expiryDateTimezone": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "expiryDateTimezone"
      ]
    },
    "nutanix:index/NdbCloneLcmConfigDatabaseLcmConfigRefreshDetail:NdbCloneLcmConfigDatabaseLcmConfigRefreshDetail": {
      "properties": {
        "refreshDateTimezone": {
          "type": "string"
        },
        "refreshInDays": {
          "type": "integer"
        },
        "refreshTime": {
          "type": "string"
        }
      },
      "type": "object"
    },
    "nutanix:index/NdbCloneLinkedDatabase:NdbCloneLinkedDatabase": {
      "properties": {
        "databaseName": {
          "type": "string",
          "description": "database name\n"
        },
        "databaseStatus": {
          "type": "string"
        },
        "dateCreated": {
          "type": "string",
          "description": "date created for clone\n"
        },
        "dateModified": {
          "type": "string",
          "description": "last modified date for clone\n"
        },
        "description": {
          "type": "string",
          "description": "database instance description\n"
        },
        "id": {
          "type": "string"
        },
        "infos": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FNdbCloneLinkedDatabaseInfo:NdbCloneLinkedDatabaseInfo"
          },
          "description": "info of clone\n"
        },
        "metric": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          },
          "description": "Stores storage info regarding size, allocatedSize, usedSize and unit of calculation that seems to have been fetched from PRISM.\n"
        },
        "name": {
          "type": "string",
          "description": "database instance name\n"
        },
        "parentDatabaseId": {
          "type": "string"
        },
        "parentLinkedDatabaseId": {
          "type": "string"
        },
        "snapshotId": {
          "type": "string",
          "description": "snapshot id from where clone is created\n"
        },
        "status": {
          "type": "string",
          "description": "status of clone\n"
        },
        "timezone": {
          "type": "string"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "databaseName",
            "databaseStatus",
            "dateCreated",
            "dateModified",
            "description",
            "id",
            "infos",
            "metric",
            "name",
            "parentDatabaseId",
            "parentLinkedDatabaseId",
            "snapshotId",
            "status",
            "timezone"
          ]
        }
      }
    },
    "nutanix:index/NdbCloneLinkedDatabaseInfo:NdbCloneLinkedDatabaseInfo": {
      "properties": {
        "info": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          },
          "description": "info of clone\n"
        },
        "secureInfo": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          }
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "info",
            "secureInfo"
          ]
        }
      }
    },
    "nutanix:index/NdbCloneNode:NdbCloneNode": {
      "properties": {
        "computeProfileId": {
          "type": "string",
          "description": "specify compute profile id\n"
        },
        "dbserverId": {
          "type": "string",
          "description": "dberver id\n"
        },
        "networkProfileId": {
          "type": "string",
          "description": "specify network profile id\n"
        },
        "newDbServerTimeZone": {
          "type": "string",
          "description": "dbserver time zone\n"
        },
        "nxClusterId": {
          "type": "string",
          "description": "cluster id\n"
        },
        "properties": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FNdbCloneNodeProperty:NdbCloneNodeProperty"
          },
          "description": "properties of vm\n"
        },
        "vmName": {
          "type": "string",
          "description": "name for the database server VM.\n"
        }
      },
      "type": "object"
    },
    "nutanix:index/NdbCloneNodeProperty:NdbCloneNodeProperty": {
      "properties": {
        "name": {
          "type": "string",
          "description": "database instance name\n"
        },
        "value": {
          "type": "string",
          "description": "- (Required) value for argument\n"
        }
      },
      "type": "object"
    },
    "nutanix:index/NdbClonePostgresqlInfo:NdbClonePostgresqlInfo": {
      "properties": {
        "dbPassword": {
          "type": "string",
          "description": "password of the postgres superuser.\n",
          "secret": true
        },
        "dbserverDescription": {
          "type": "string",
          "description": "description for the dbserver.\n"
        },
        "postCloneCmd": {
          "type": "string",
          "description": "OS command that you want to run after the instance is created.\n"
        },
        "preCloneCmd": {
          "type": "string",
          "description": "OS command that you want to run before the instance is created.\n"
        },
        "vmName": {
          "type": "string",
          "description": "name for the database server VM.\n"
        }
      },
      "type": "object",
      "required": [
        "dbPassword",
        "vmName"
      ]
    },
    "nutanix:index/NdbCloneProperty:NdbCloneProperty": {
      "properties": {
        "name": {
          "type": "string",
          "description": "database instance name\n"
        },
        "value": {
          "type": "string",
          "description": "- (Required) value for argument\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "name",
            "value"
          ]
        }
      }
    },
    "nutanix:index/NdbCloneTag:NdbCloneTag": {
      "properties": {
        "entityId": {
          "type": "string"
        },
        "entityType": {
          "type": "string"
        },
        "tagId": {
          "type": "string"
        },
        "tagName": {
          "type": "string"
        },
        "value": {
          "type": "string",
          "description": "- (Required) value for argument\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "entityId",
            "entityType",
            "tagId",
            "tagName",
            "value"
          ]
        }
      }
    },
    "nutanix:index/NdbCloneTimeMachine:NdbCloneTimeMachine": {
      "properties": {
        "accessLevel": {
          "type": "string"
        },
        "clone": {
          "type": "boolean",
          "description": "cloned or not\n"
        },
        "clones": {
          "type": "string"
        },
        "clustered": {
          "type": "boolean",
          "description": "clone will be clustered or not\n"
        },
        "database": {
          "type": "string"
        },
        "databaseId": {
          "type": "string"
        },
        "dateCreated": {
          "type": "string",
          "description": "date created for clone\n"
        },
        "dateModified": {
          "type": "string",
          "description": "last modified date for clone\n"
        },
        "description": {
          "type": "string",
          "description": "database instance description\n"
        },
        "eaStatus": {
          "type": "string"
        },
        "id": {
          "type": "string"
        },
        "metric": {
          "type": "string",
          "description": "Stores storage info regarding size, allocatedSize, usedSize and unit of calculation that seems to have been fetched from PRISM.\n"
        },
        "name": {
          "type": "string",
          "description": "database instance name\n"
        },
        "properties": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FNdbCloneTimeMachineProperty:NdbCloneTimeMachineProperty"
          },
          "description": "List of all the properties\n"
        },
        "scheduleId": {
          "type": "string"
        },
        "schedules": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FNdbCloneTimeMachineSchedule:NdbCloneTimeMachineSchedule"
          }
        },
        "scope": {
          "type": "string"
        },
        "slaId": {
          "type": "string"
        },
        "slaUpdateInProgress": {
          "type": "boolean"
        },
        "slaUpdateMetadata": {
          "type": "string"
        },
        "slas": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FNdbCloneTimeMachineSla:NdbCloneTimeMachineSla"
          }
        },
        "sourceNxClusters": {
          "type": "array",
          "items": {
            "type": "string"
          }
        },
        "status": {
          "type": "string",
          "description": "status of clone\n"
        },
        "tags": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FNdbCloneTimeMachineTag:NdbCloneTimeMachineTag"
          },
          "description": "allows you to assign metadata to entities (clones, time machines, databases, and database servers) by using tags.\n"
        },
        "type": {
          "type": "string",
          "description": "type of clone\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "accessLevel",
            "clone",
            "clones",
            "clustered",
            "database",
            "databaseId",
            "dateCreated",
            "dateModified",
            "description",
            "eaStatus",
            "id",
            "metric",
            "name",
            "properties",
            "scheduleId",
            "schedules",
            "scope",
            "slaId",
            "slaUpdateInProgress",
            "slaUpdateMetadata",
            "slas",
            "sourceNxClusters",
            "status",
            "tags",
            "type"
          ]
        }
      }
    },
    "nutanix:index/NdbCloneTimeMachineProperty:NdbCloneTimeMachineProperty": {
      "properties": {
        "description": {
          "type": "string",
          "description": "database instance description\n"
        },
        "name": {
          "type": "string",
          "description": "database instance name\n"
        },
        "refId": {
          "type": "string"
        },
        "secure": {
          "type": "boolean"
        },
        "value": {
          "type": "string",
          "description": "- (Required) value for argument\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "description",
            "name",
            "refId",
            "secure",
            "value"
          ]
        }
      }
    },
    "nutanix:index/NdbCloneTimeMachineSchedule:NdbCloneTimeMachineSchedule": {
      "properties": {
        "continuousSchedules": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FNdbCloneTimeMachineScheduleContinuousSchedule:NdbCloneTimeMachineScheduleContinuousSchedule"
          }
        },
        "dailySchedules": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FNdbCloneTimeMachineScheduleDailySchedule:NdbCloneTimeMachineScheduleDailySchedule"
          }
        },
        "dateCreated": {
          "type": "string",
          "description": "date created for clone\n"
        },
        "dateModified": {
          "type": "string",
          "description": "last modified date for clone\n"
        },
        "description": {
          "type": "string",
          "description": "database instance description\n"
        },
        "globalPolicy": {
          "type": "boolean"
        },
        "id": {
          "type": "string"
        },
        "monthlySchedules": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FNdbCloneTimeMachineScheduleMonthlySchedule:NdbCloneTimeMachineScheduleMonthlySchedule"
          }
        },
        "name": {
          "type": "string",
          "description": "database instance name\n"
        },
        "ownerId": {
          "type": "string"
        },
        "quartelySchedules": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FNdbCloneTimeMachineScheduleQuartelySchedule:NdbCloneTimeMachineScheduleQuartelySchedule"
          }
        },
        "referenceCount": {
          "type": "integer"
        },
        "snapshotTimeOfDays": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FNdbCloneTimeMachineScheduleSnapshotTimeOfDay:NdbCloneTimeMachineScheduleSnapshotTimeOfDay"
          }
        },
        "startTime": {
          "type": "string"
        },
        "systemPolicy": {
          "type": "boolean"
        },
        "timeZone": {
          "type": "string",
          "description": "timezone\n"
        },
        "uniqueName": {
          "type": "string"
        },
        "weeklySchedules": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FNdbCloneTimeMachineScheduleWeeklySchedule:NdbCloneTimeMachineScheduleWeeklySchedule"
          }
        },
        "yearlySchedules": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FNdbCloneTimeMachineScheduleYearlySchedule:NdbCloneTimeMachineScheduleYearlySchedule"
          }
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "continuousSchedules",
            "dailySchedules",
            "dateCreated",
            "dateModified",
            "description",
            "globalPolicy",
            "id",
            "monthlySchedules",
            "name",
            "ownerId",
            "quartelySchedules",
            "referenceCount",
            "snapshotTimeOfDays",
            "startTime",
            "systemPolicy",
            "timeZone",
            "uniqueName",
            "weeklySchedules",
            "yearlySchedules"
          ]
        }
      }
    },
    "nutanix:index/NdbCloneTimeMachineScheduleContinuousSchedule:NdbCloneTimeMachineScheduleContinuousSchedule": {
      "properties": {
        "enabled": {
          "type": "boolean"
        },
        "logBackupInterval": {
          "type": "integer"
        },
        "snapshotsPerDay": {
          "type": "integer"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "enabled",
            "logBackupInterval",
            "snapshotsPerDay"
          ]
        }
      }
    },
    "nutanix:index/NdbCloneTimeMachineScheduleDailySchedule:NdbCloneTimeMachineScheduleDailySchedule": {
      "properties": {
        "enabled": {
          "type": "boolean"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "enabled"
          ]
        }
      }
    },
    "nutanix:index/NdbCloneTimeMachineScheduleMonthlySchedule:NdbCloneTimeMachineScheduleMonthlySchedule": {
      "properties": {
        "dayOfMonth": {
          "type": "integer"
        },
        "enabled": {
          "type": "boolean"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "dayOfMonth",
            "enabled"
          ]
        }
      }
    },
    "nutanix:index/NdbCloneTimeMachineScheduleQuartelySchedule:NdbCloneTimeMachineScheduleQuartelySchedule": {
      "properties": {
        "dayOfMonth": {
          "type": "integer"
        },
        "enabled": {
          "type": "boolean"
        },
        "startMonth": {
          "type": "string"
        },
        "startMonthValue": {
          "type": "string"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "dayOfMonth",
            "enabled",
            "startMonth",
            "startMonthValue"
          ]
        }
      }
    },
    "nutanix:index/NdbCloneTimeMachineScheduleSnapshotTimeOfDay:NdbCloneTimeMachineScheduleSnapshotTimeOfDay": {
      "properties": {
        "extra": {
          "type": "boolean"
        },
        "hours": {
          "type": "integer"
        },
        "minutes": {
          "type": "integer"
        },
        "seconds": {
          "type": "integer"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "extra",
            "hours",
            "minutes",
            "seconds"
          ]
        }
      }
    },
    "nutanix:index/NdbCloneTimeMachineScheduleWeeklySchedule:NdbCloneTimeMachineScheduleWeeklySchedule": {
      "properties": {
        "dayOfWeek": {
          "type": "string"
        },
        "dayOfWeekValue": {
          "type": "string"
        },
        "enabled": {
          "type": "boolean"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "dayOfWeek",
            "dayOfWeekValue",
            "enabled"
          ]
        }
      }
    },
    "nutanix:index/NdbCloneTimeMachineScheduleYearlySchedule:NdbCloneTimeMachineScheduleYearlySchedule": {
      "properties": {
        "dayOfMonth": {
          "type": "integer"
        },
        "enabled": {
          "type": "boolean"
        },
        "month": {
          "type": "string"
        },
        "monthValue": {
          "type": "string"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "dayOfMonth",
            "enabled",
            "month",
            "monthValue"
          ]
        }
      }
    },
    "nutanix:index/NdbCloneTimeMachineSla:NdbCloneTimeMachineSla": {
      "properties": {
        "continuousRetention": {
          "type": "integer"
        },
        "currentActiveFrequency": {
          "type": "string"
        },
        "dailyRetention": {
          "type": "integer"
        },
        "dateCreated": {
          "type": "string",
          "description": "date created for clone\n"
        },
        "dateModified": {
          "type": "string",
          "description": "last modified date for clone\n"
        },
        "description": {
          "type": "string",
          "description": "database instance description\n"
        },
        "id": {
          "type": "string"
        },
        "monthlyRetention": {
          "type": "integer"
        },
        "name": {
          "type": "string",
          "description": "database instance name\n"
        },
        "ownerId": {
          "type": "string"
        },
        "pitrEnabled": {
          "type": "boolean"
        },
        "quarterlyRetention": {
          "type": "integer"
        },
        "referenceCount": {
          "type": "integer"
        },
        "systemSla": {
          "type": "boolean"
        },
        "uniqueName": {
          "type": "string"
        },
        "weeklyRetention": {
          "type": "integer"
        },
        "yearlyRetention": {
          "type": "integer"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "continuousRetention",
            "currentActiveFrequency",
            "dailyRetention",
            "dateCreated",
            "dateModified",
            "description",
            "id",
            "monthlyRetention",
            "name",
            "ownerId",
            "pitrEnabled",
            "quarterlyRetention",
            "referenceCount",
            "systemSla",
            "uniqueName",
            "weeklyRetention",
            "yearlyRetention"
          ]
        }
      }
    },
    "nutanix:index/NdbCloneTimeMachineTag:NdbCloneTimeMachineTag": {
      "properties": {
        "entityId": {
          "type": "string"
        },
        "entityType": {
          "type": "string"
        },
        "tagId": {
          "type": "string"
        },
        "tagName": {
          "type": "string"
        },
        "value": {
          "type": "string",
          "description": "- (Required) value for argument\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "entityId",
            "entityType",
            "tagId",
            "tagName",
            "value"
          ]
        }
      }
    },
    "nutanix:index/NdbClusterAgentNetworkInfo:NdbClusterAgentNetworkInfo": {
      "properties": {
        "dns": {
          "type": "string",
          "description": "string of DNS servers(comma separted).\n"
        },
        "ntp": {
          "type": "string",
          "description": "string of NTP servers(comma separted).\n"
        }
      },
      "type": "object"
    },
    "nutanix:index/NdbClusterEntityCount:NdbClusterEntityCount": {
      "properties": {
        "dbServers": {
          "type": "integer"
        },
        "engineCounts": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FNdbClusterEntityCountEngineCount:NdbClusterEntityCountEngineCount"
          }
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "dbServers",
            "engineCounts"
          ]
        }
      }
    },
    "nutanix:index/NdbClusterEntityCountEngineCount:NdbClusterEntityCountEngineCount": {
      "properties": {
        "mariadbDatabases": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FNdbClusterEntityCountEngineCountMariadbDatabase:NdbClusterEntityCountEngineCountMariadbDatabase"
          }
        },
        "mongodbDatabases": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FNdbClusterEntityCountEngineCountMongodbDatabase:NdbClusterEntityCountEngineCountMongodbDatabase"
          }
        },
        "mysqlDatabases": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FNdbClusterEntityCountEngineCountMysqlDatabase:NdbClusterEntityCountEngineCountMysqlDatabase"
          }
        },
        "oracleDatabases": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FNdbClusterEntityCountEngineCountOracleDatabase:NdbClusterEntityCountEngineCountOracleDatabase"
          }
        },
        "postgresDatabases": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FNdbClusterEntityCountEngineCountPostgresDatabase:NdbClusterEntityCountEngineCountPostgresDatabase"
          }
        },
        "saphanaDatabases": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FNdbClusterEntityCountEngineCountSaphanaDatabase:NdbClusterEntityCountEngineCountSaphanaDatabase"
          }
        },
        "sqlserverDatabases": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FNdbClusterEntityCountEngineCountSqlserverDatabase:NdbClusterEntityCountEngineCountSqlserverDatabase"
          }
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "mariadbDatabases",
            "mongodbDatabases",
            "mysqlDatabases",
            "oracleDatabases",
            "postgresDatabases",
            "saphanaDatabases",
            "sqlserverDatabases"
          ]
        }
      }
    },
    "nutanix:index/NdbClusterEntityCountEngineCountMariadbDatabase:NdbClusterEntityCountEngineCountMariadbDatabase": {
      "properties": {
        "profiles": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FNdbClusterEntityCountEngineCountMariadbDatabaseProfile:NdbClusterEntityCountEngineCountMariadbDatabaseProfile"
          }
        },
        "timeMachines": {
          "type": "integer"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "profiles",
            "timeMachines"
          ]
        }
      }
    },
    "nutanix:index/NdbClusterEntityCountEngineCountMariadbDatabaseProfile:NdbClusterEntityCountEngineCountMariadbDatabaseProfile": {
      "properties": {
        "compute": {
          "type": "integer"
        },
        "databaseParameter": {
          "type": "integer"
        },
        "network": {
          "type": "integer"
        },
        "software": {
          "type": "integer"
        },
        "storage": {
          "type": "integer"
        },
        "windowsDomain": {
          "type": "integer"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "compute",
            "databaseParameter",
            "network",
            "software",
            "storage",
            "windowsDomain"
          ]
        }
      }
    },
    "nutanix:index/NdbClusterEntityCountEngineCountMongodbDatabase:NdbClusterEntityCountEngineCountMongodbDatabase": {
      "properties": {
        "profiles": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FNdbClusterEntityCountEngineCountMongodbDatabaseProfile:NdbClusterEntityCountEngineCountMongodbDatabaseProfile"
          }
        },
        "timeMachines": {
          "type": "integer"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "profiles",
            "timeMachines"
          ]
        }
      }
    },
    "nutanix:index/NdbClusterEntityCountEngineCountMongodbDatabaseProfile:NdbClusterEntityCountEngineCountMongodbDatabaseProfile": {
      "properties": {
        "compute": {
          "type": "integer"
        },
        "databaseParameter": {
          "type": "integer"
        },
        "network": {
          "type": "integer"
        },
        "software": {
          "type": "integer"
        },
        "storage": {
          "type": "integer"
        },
        "windowsDomain": {
          "type": "integer"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "compute",
            "databaseParameter",
            "network",
            "software",
            "storage",
            "windowsDomain"
          ]
        }
      }
    },
    "nutanix:index/NdbClusterEntityCountEngineCountMysqlDatabase:NdbClusterEntityCountEngineCountMysqlDatabase": {
      "properties": {
        "profiles": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FNdbClusterEntityCountEngineCountMysqlDatabaseProfile:NdbClusterEntityCountEngineCountMysqlDatabaseProfile"
          }
        },
        "timeMachines": {
          "type": "integer"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "profiles",
            "timeMachines"
          ]
        }
      }
    },
    "nutanix:index/NdbClusterEntityCountEngineCountMysqlDatabaseProfile:NdbClusterEntityCountEngineCountMysqlDatabaseProfile": {
      "properties": {
        "compute": {
          "type": "integer"
        },
        "databaseParameter": {
          "type": "integer"
        },
        "network": {
          "type": "integer"
        },
        "software": {
          "type": "integer"
        },
        "storage": {
          "type": "integer"
        },
        "windowsDomain": {
          "type": "integer"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "compute",
            "databaseParameter",
            "network",
            "software",
            "storage",
            "windowsDomain"
          ]
        }
      }
    },
    "nutanix:index/NdbClusterEntityCountEngineCountOracleDatabase:NdbClusterEntityCountEngineCountOracleDatabase": {
      "properties": {
        "profiles": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FNdbClusterEntityCountEngineCountOracleDatabaseProfile:NdbClusterEntityCountEngineCountOracleDatabaseProfile"
          }
        },
        "timeMachines": {
          "type": "integer"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "profiles",
            "timeMachines"
          ]
        }
      }
    },
    "nutanix:index/NdbClusterEntityCountEngineCountOracleDatabaseProfile:NdbClusterEntityCountEngineCountOracleDatabaseProfile": {
      "properties": {
        "compute": {
          "type": "integer"
        },
        "databaseParameter": {
          "type": "integer"
        },
        "network": {
          "type": "integer"
        },
        "software": {
          "type": "integer"
        },
        "storage": {
          "type": "integer"
        },
        "windowsDomain": {
          "type": "integer"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "compute",
            "databaseParameter",
            "network",
            "software",
            "storage",
            "windowsDomain"
          ]
        }
      }
    },
    "nutanix:index/NdbClusterEntityCountEngineCountPostgresDatabase:NdbClusterEntityCountEngineCountPostgresDatabase": {
      "properties": {
        "profiles": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FNdbClusterEntityCountEngineCountPostgresDatabaseProfile:NdbClusterEntityCountEngineCountPostgresDatabaseProfile"
          }
        },
        "timeMachines": {
          "type": "integer"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "profiles",
            "timeMachines"
          ]
        }
      }
    },
    "nutanix:index/NdbClusterEntityCountEngineCountPostgresDatabaseProfile:NdbClusterEntityCountEngineCountPostgresDatabaseProfile": {
      "properties": {
        "compute": {
          "type": "integer"
        },
        "databaseParameter": {
          "type": "integer"
        },
        "network": {
          "type": "integer"
        },
        "software": {
          "type": "integer"
        },
        "storage": {
          "type": "integer"
        },
        "windowsDomain": {
          "type": "integer"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "compute",
            "databaseParameter",
            "network",
            "software",
            "storage",
            "windowsDomain"
          ]
        }
      }
    },
    "nutanix:index/NdbClusterEntityCountEngineCountSaphanaDatabase:NdbClusterEntityCountEngineCountSaphanaDatabase": {
      "properties": {
        "profiles": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FNdbClusterEntityCountEngineCountSaphanaDatabaseProfile:NdbClusterEntityCountEngineCountSaphanaDatabaseProfile"
          }
        },
        "timeMachines": {
          "type": "integer"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "profiles",
            "timeMachines"
          ]
        }
      }
    },
    "nutanix:index/NdbClusterEntityCountEngineCountSaphanaDatabaseProfile:NdbClusterEntityCountEngineCountSaphanaDatabaseProfile": {
      "properties": {
        "compute": {
          "type": "integer"
        },
        "databaseParameter": {
          "type": "integer"
        },
        "network": {
          "type": "integer"
        },
        "software": {
          "type": "integer"
        },
        "storage": {
          "type": "integer"
        },
        "windowsDomain": {
          "type": "integer"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "compute",
            "databaseParameter",
            "network",
            "software",
            "storage",
            "windowsDomain"
          ]
        }
      }
    },
    "nutanix:index/NdbClusterEntityCountEngineCountSqlserverDatabase:NdbClusterEntityCountEngineCountSqlserverDatabase": {
      "properties": {
        "profiles": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FNdbClusterEntityCountEngineCountSqlserverDatabaseProfile:NdbClusterEntityCountEngineCountSqlserverDatabaseProfile"
          }
        },
        "timeMachines": {
          "type": "integer"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "profiles",
            "timeMachines"
          ]
        }
      }
    },
    "nutanix:index/NdbClusterEntityCountEngineCountSqlserverDatabaseProfile:NdbClusterEntityCountEngineCountSqlserverDatabaseProfile": {
      "properties": {
        "compute": {
          "type": "integer"
        },
        "databaseParameter": {
          "type": "integer"
        },
        "network": {
          "type": "integer"
        },
        "software": {
          "type": "integer"
        },
        "storage": {
          "type": "integer"
        },
        "windowsDomain": {
          "type": "integer"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "compute",
            "databaseParameter",
            "network",
            "software",
            "storage",
            "windowsDomain"
          ]
        }
      }
    },
    "nutanix:index/NdbClusterNetworksInfo:NdbClusterNetworksInfo": {
      "properties": {
        "accessTypes": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "VLAN access types for which you want to configure network segmentation. Supports [PRISM, DSIP, DBSERVER ]. \nPrism Element: Select this VLAN access type to configure a VLAN that the NDB agent VM can use to communicate with Prism.\nPrism iSCSI Data Service. Select this VLAN access type to configure a VLAN that the agent VM can use to make connection requests to the iSCSI data services IP.\nDBServer Access from NDB server. Select this VLAN access type to configure a VLAN that is used for communications between the NDB agent VM and the database server VM on the newly registered NDB server cluster.\n"
        },
        "networkInfos": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FNdbClusterNetworksInfoNetworkInfo:NdbClusterNetworksInfoNetworkInfo"
          },
          "description": "network segmentation to segment the network traffic\n"
        },
        "type": {
          "type": "string",
          "description": "type of vlan. Supported [DHCP, Static, IPAM]\n"
        }
      },
      "type": "object"
    },
    "nutanix:index/NdbClusterNetworksInfoNetworkInfo:NdbClusterNetworksInfoNetworkInfo": {
      "properties": {
        "gateway": {
          "type": "string",
          "description": "gateway of agent network\n"
        },
        "staticIp": {
          "type": "string",
          "description": "static ip of agent network\n"
        },
        "subnetMask": {
          "type": "string",
          "description": "subnet mask of agent network\n"
        },
        "vlanName": {
          "type": "string",
          "description": "vlan name\n"
        }
      },
      "type": "object"
    },
    "nutanix:index/NdbClusterProperty:NdbClusterProperty": {
      "properties": {
        "description": {
          "type": "string",
          "description": "description of cluster\n"
        },
        "name": {
          "type": "string",
          "description": "name of the cluster to be registered\n"
        },
        "refId": {
          "type": "string"
        },
        "secure": {
          "type": "boolean"
        },
        "value": {
          "type": "string"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "description",
            "name",
            "refId",
            "secure",
            "value"
          ]
        }
      }
    },
    "nutanix:index/NdbClusterResourceConfig:NdbClusterResourceConfig": {
      "properties": {
        "memoryThresholdPercentage": {
          "type": "number"
        },
        "storageThresholdPercentage": {
          "type": "number"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "memoryThresholdPercentage",
            "storageThresholdPercentage"
          ]
        }
      }
    },
    "nutanix:index/NdbDatabaseActionargument:NdbDatabaseActionargument": {
      "properties": {
        "name": {
          "type": "string",
          "description": "- (Required) name of argument\n"
        },
        "value": {
          "type": "string",
          "description": "- (Required) value for argument\n"
        }
      },
      "type": "object",
      "required": [
        "name",
        "value"
      ]
    },
    "nutanix:index/NdbDatabaseClusterInfo:NdbDatabaseClusterInfo": {
      "properties": {
        "clusterIpInfos": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FNdbDatabaseClusterInfoClusterIpInfo:NdbDatabaseClusterInfoClusterIpInfo"
          }
        }
      },
      "type": "object",
      "required": [
        "clusterIpInfos"
      ]
    },
    "nutanix:index/NdbDatabaseClusterInfoClusterIpInfo:NdbDatabaseClusterInfoClusterIpInfo": {
      "properties": {
        "ipInfos": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FNdbDatabaseClusterInfoClusterIpInfoIpInfo:NdbDatabaseClusterInfoClusterIpInfoIpInfo"
          },
          "description": "- (Optional) IP infos for custom network profile.\n"
        },
        "nxClusterId": {
          "type": "string",
          "description": "- (Optional) cluster id.\n"
        }
      },
      "type": "object",
      "required": [
        "nxClusterId"
      ]
    },
    "nutanix:index/NdbDatabaseClusterInfoClusterIpInfoIpInfo:NdbDatabaseClusterInfoClusterIpInfoIpInfo": {
      "properties": {
        "ipAddresses": {
          "type": "array",
          "items": {
            "type": "string"
          }
        },
        "ipType": {
          "type": "string"
        }
      },
      "type": "object"
    },
    "nutanix:index/NdbDatabaseDatabaseNode:NdbDatabaseDatabaseNode": {
      "properties": {
        "accessLevel": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          }
        },
        "databaseId": {
          "type": "string"
        },
        "databaseStatus": {
          "type": "string"
        },
        "dateCreated": {
          "type": "string"
        },
        "dateModified": {
          "type": "string"
        },
        "dbserver": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          }
        },
        "dbserverId": {
          "type": "string"
        },
        "description": {
          "type": "string",
          "description": "- (Optional) The description\n"
        },
        "id": {
          "type": "string"
        },
        "infos": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FNdbDatabaseDatabaseNodeInfo:NdbDatabaseDatabaseNodeInfo"
          }
        },
        "name": {
          "type": "string",
          "description": "- (Required) Name of the instance.\n"
        },
        "primary": {
          "type": "boolean"
        },
        "properties": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FNdbDatabaseDatabaseNodeProperty:NdbDatabaseDatabaseNodeProperty"
          },
          "description": "List of all the properties\n"
        },
        "protectionDomainId": {
          "type": "string"
        },
        "protectionDomains": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FNdbDatabaseDatabaseNodeProtectionDomain:NdbDatabaseDatabaseNodeProtectionDomain"
          }
        },
        "softwareInstallationId": {
          "type": "string"
        },
        "status": {
          "type": "string"
        },
        "tags": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FNdbDatabaseDatabaseNodeTag:NdbDatabaseDatabaseNodeTag"
          },
          "description": "- (Optional) tags\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "accessLevel",
            "databaseId",
            "databaseStatus",
            "dateCreated",
            "dateModified",
            "dbserver",
            "dbserverId",
            "description",
            "id",
            "infos",
            "name",
            "primary",
            "properties",
            "protectionDomainId",
            "protectionDomains",
            "softwareInstallationId",
            "status",
            "tags"
          ]
        }
      }
    },
    "nutanix:index/NdbDatabaseDatabaseNodeInfo:NdbDatabaseDatabaseNodeInfo": {
      "properties": {
        "info": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          }
        },
        "secureInfo": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          }
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "info",
            "secureInfo"
          ]
        }
      }
    },
    "nutanix:index/NdbDatabaseDatabaseNodeProperty:NdbDatabaseDatabaseNodeProperty": {
      "properties": {
        "description": {
          "type": "string",
          "description": "- (Optional) The description\n"
        },
        "name": {
          "type": "string",
          "description": "- (Required) Name of the instance.\n"
        },
        "refId": {
          "type": "string"
        },
        "secure": {
          "type": "boolean"
        },
        "value": {
          "type": "string",
          "description": "- (Required) value for argument\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "description",
            "name",
            "refId",
            "secure",
            "value"
          ]
        }
      }
    },
    "nutanix:index/NdbDatabaseDatabaseNodeProtectionDomain:NdbDatabaseDatabaseNodeProtectionDomain": {
      "properties": {
        "assocEntities": {
          "type": "array",
          "items": {
            "type": "string"
          }
        },
        "cloudId": {
          "type": "string"
        },
        "dateCreated": {
          "type": "string"
        },
        "dateModified": {
          "type": "string"
        },
        "description": {
          "type": "string",
          "description": "- (Optional) The description\n"
        },
        "eraCreated": {
          "type": "boolean"
        },
        "id": {
          "type": "string"
        },
        "name": {
          "type": "string",
          "description": "- (Required) Name of the instance.\n"
        },
        "ownerId": {
          "type": "string"
        },
        "primaryHost": {
          "type": "string"
        },
        "properties": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FNdbDatabaseDatabaseNodeProtectionDomainProperty:NdbDatabaseDatabaseNodeProtectionDomainProperty"
          },
          "description": "List of all the properties\n"
        },
        "status": {
          "type": "string"
        },
        "type": {
          "type": "string"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "assocEntities",
            "cloudId",
            "dateCreated",
            "dateModified",
            "description",
            "eraCreated",
            "id",
            "name",
            "ownerId",
            "primaryHost",
            "properties",
            "status",
            "type"
          ]
        }
      }
    },
    "nutanix:index/NdbDatabaseDatabaseNodeProtectionDomainProperty:NdbDatabaseDatabaseNodeProtectionDomainProperty": {
      "properties": {
        "description": {
          "type": "string",
          "description": "- (Optional) The description\n"
        },
        "name": {
          "type": "string",
          "description": "- (Required) Name of the instance.\n"
        },
        "refId": {
          "type": "string"
        },
        "secure": {
          "type": "boolean"
        },
        "value": {
          "type": "string",
          "description": "- (Required) value for argument\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "description",
            "name",
            "refId",
            "secure",
            "value"
          ]
        }
      }
    },
    "nutanix:index/NdbDatabaseDatabaseNodeTag:NdbDatabaseDatabaseNodeTag": {
      "properties": {
        "entityId": {
          "type": "string"
        },
        "entityType": {
          "type": "string"
        },
        "tagId": {
          "type": "string"
        },
        "tagName": {
          "type": "string"
        },
        "value": {
          "type": "string",
          "description": "- (Required) value for argument\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "entityId",
            "entityType",
            "tagId",
            "tagName",
            "value"
          ]
        }
      }
    },
    "nutanix:index/NdbDatabaseInfo:NdbDatabaseInfo": {
      "properties": {
        "bpgConfigs": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FNdbDatabaseInfoBpgConfig:NdbDatabaseInfoBpgConfig"
          }
        },
        "secureInfo": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          }
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "bpgConfigs",
            "secureInfo"
          ]
        }
      }
    },
    "nutanix:index/NdbDatabaseInfoBpgConfig:NdbDatabaseInfoBpgConfig": {
      "properties": {
        "bpgDbParams": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FNdbDatabaseInfoBpgConfigBpgDbParam:NdbDatabaseInfoBpgConfigBpgDbParam"
          }
        },
        "storages": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FNdbDatabaseInfoBpgConfigStorage:NdbDatabaseInfoBpgConfigStorage"
          }
        },
        "vmProperties": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FNdbDatabaseInfoBpgConfigVmProperty:NdbDatabaseInfoBpgConfigVmProperty"
          }
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "bpgDbParams",
            "storages",
            "vmProperties"
          ]
        }
      }
    },
    "nutanix:index/NdbDatabaseInfoBpgConfigBpgDbParam:NdbDatabaseInfoBpgConfigBpgDbParam": {
      "properties": {
        "effectiveCacheSize": {
          "type": "string"
        },
        "maintenanceWorkMem": {
          "type": "string"
        },
        "maxParallelWorkersPerGather": {
          "type": "string"
        },
        "maxWorkerProcesses": {
          "type": "string"
        },
        "sharedBuffers": {
          "type": "string"
        },
        "workMem": {
          "type": "string"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "effectiveCacheSize",
            "maintenanceWorkMem",
            "maxParallelWorkersPerGather",
            "maxWorkerProcesses",
            "sharedBuffers",
            "workMem"
          ]
        }
      }
    },
    "nutanix:index/NdbDatabaseInfoBpgConfigStorage:NdbDatabaseInfoBpgConfigStorage": {
      "properties": {
        "archiveStorages": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FNdbDatabaseInfoBpgConfigStorageArchiveStorage:NdbDatabaseInfoBpgConfigStorageArchiveStorage"
          }
        },
        "dataDisks": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FNdbDatabaseInfoBpgConfigStorageDataDisk:NdbDatabaseInfoBpgConfigStorageDataDisk"
          }
        },
        "logDisks": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FNdbDatabaseInfoBpgConfigStorageLogDisk:NdbDatabaseInfoBpgConfigStorageLogDisk"
          }
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "archiveStorages",
            "dataDisks",
            "logDisks"
          ]
        }
      }
    },
    "nutanix:index/NdbDatabaseInfoBpgConfigStorageArchiveStorage:NdbDatabaseInfoBpgConfigStorageArchiveStorage": {
      "properties": {
        "size": {
          "type": "number"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "size"
          ]
        }
      }
    },
    "nutanix:index/NdbDatabaseInfoBpgConfigStorageDataDisk:NdbDatabaseInfoBpgConfigStorageDataDisk": {
      "properties": {
        "count": {
          "type": "number"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "count"
          ]
        }
      }
    },
    "nutanix:index/NdbDatabaseInfoBpgConfigStorageLogDisk:NdbDatabaseInfoBpgConfigStorageLogDisk": {
      "properties": {
        "count": {
          "type": "number"
        },
        "size": {
          "type": "number"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "count",
            "size"
          ]
        }
      }
    },
    "nutanix:index/NdbDatabaseInfoBpgConfigVmProperty:NdbDatabaseInfoBpgConfigVmProperty": {
      "properties": {
        "dirtyBackgroundRatio": {
          "type": "number"
        },
        "dirtyExpireCentisecs": {
          "type": "number"
        },
        "dirtyRatio": {
          "type": "number"
        },
        "dirtyWritebackCentisecs": {
          "type": "number"
        },
        "nrHugepages": {
          "type": "number"
        },
        "overcommitMemory": {
          "type": "number"
        },
        "swappiness": {
          "type": "number"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "dirtyBackgroundRatio",
            "dirtyExpireCentisecs",
            "dirtyRatio",
            "dirtyWritebackCentisecs",
            "nrHugepages",
            "overcommitMemory",
            "swappiness"
          ]
        }
      }
    },
    "nutanix:index/NdbDatabaseLcmConfig:NdbDatabaseLcmConfig": {
      "properties": {
        "expiryDetails": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FNdbDatabaseLcmConfigExpiryDetail:NdbDatabaseLcmConfigExpiryDetail"
          }
        },
        "postDeleteCommands": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FNdbDatabaseLcmConfigPostDeleteCommand:NdbDatabaseLcmConfigPostDeleteCommand"
          }
        },
        "preDeleteCommands": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FNdbDatabaseLcmConfigPreDeleteCommand:NdbDatabaseLcmConfigPreDeleteCommand"
          }
        },
        "refreshDetails": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FNdbDatabaseLcmConfigRefreshDetail:NdbDatabaseLcmConfigRefreshDetail"
          }
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "expiryDetails",
            "postDeleteCommands",
            "preDeleteCommands",
            "refreshDetails"
          ]
        }
      }
    },
    "nutanix:index/NdbDatabaseLcmConfigExpiryDetail:NdbDatabaseLcmConfigExpiryDetail": {
      "properties": {
        "deleteDatabase": {
          "type": "boolean"
        },
        "deleteTimeMachine": {
          "type": "boolean",
          "description": "- (Optional) Delete the database's Time Machine (snapshots/logs) from the NDB. Default value is true\n"
        },
        "deleteVm": {
          "type": "boolean"
        },
        "effectiveTimestamp": {
          "type": "string"
        },
        "expireInDays": {
          "type": "integer"
        },
        "expiryDateTimezone": {
          "type": "string"
        },
        "expiryTimestamp": {
          "type": "string"
        },
        "remindBeforeInDays": {
          "type": "integer"
        },
        "userCreated": {
          "type": "boolean"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "deleteDatabase",
            "deleteTimeMachine",
            "deleteVm",
            "effectiveTimestamp",
            "expireInDays",
            "expiryDateTimezone",
            "expiryTimestamp",
            "remindBeforeInDays",
            "userCreated"
          ]
        }
      }
    },
    "nutanix:index/NdbDatabaseLcmConfigPostDeleteCommand:NdbDatabaseLcmConfigPostDeleteCommand": {
      "properties": {
        "command": {
          "type": "string"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "command"
          ]
        }
      }
    },
    "nutanix:index/NdbDatabaseLcmConfigPreDeleteCommand:NdbDatabaseLcmConfigPreDeleteCommand": {
      "properties": {
        "command": {
          "type": "string"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "command"
          ]
        }
      }
    },
    "nutanix:index/NdbDatabaseLcmConfigRefreshDetail:NdbDatabaseLcmConfigRefreshDetail": {
      "properties": {
        "lastRefreshDate": {
          "type": "string"
        },
        "nextRefreshDate": {
          "type": "string"
        },
        "refreshDateTimezone": {
          "type": "string"
        },
        "refreshInDays": {
          "type": "integer"
        },
        "refreshInHours": {
          "type": "integer"
        },
        "refreshInMonths": {
          "type": "integer"
        },
        "refreshTime": {
          "type": "string"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "lastRefreshDate",
            "nextRefreshDate",
            "refreshDateTimezone",
            "refreshInDays",
            "refreshInHours",
            "refreshInMonths",
            "refreshTime"
          ]
        }
      }
    },
    "nutanix:index/NdbDatabaseLinkedDatabase:NdbDatabaseLinkedDatabase": {
      "properties": {
        "databaseName": {
          "type": "string"
        },
        "databaseStatus": {
          "type": "string"
        },
        "dateCreated": {
          "type": "string"
        },
        "dateModified": {
          "type": "string"
        },
        "description": {
          "type": "string",
          "description": "- (Optional) The description\n"
        },
        "id": {
          "type": "string"
        },
        "infos": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FNdbDatabaseLinkedDatabaseInfo:NdbDatabaseLinkedDatabaseInfo"
          }
        },
        "metric": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          }
        },
        "name": {
          "type": "string",
          "description": "- (Required) Name of the instance.\n"
        },
        "parentDatabaseId": {
          "type": "string"
        },
        "parentLinkedDatabaseId": {
          "type": "string"
        },
        "snapshotId": {
          "type": "string"
        },
        "status": {
          "type": "string"
        },
        "timezone": {
          "type": "string"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "databaseName",
            "databaseStatus",
            "dateCreated",
            "dateModified",
            "description",
            "id",
            "infos",
            "metric",
            "name",
            "parentDatabaseId",
            "parentLinkedDatabaseId",
            "snapshotId",
            "status",
            "timezone"
          ]
        }
      }
    },
    "nutanix:index/NdbDatabaseLinkedDatabaseInfo:NdbDatabaseLinkedDatabaseInfo": {
      "properties": {
        "info": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          }
        },
        "secureInfo": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          }
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "info",
            "secureInfo"
          ]
        }
      }
    },
    "nutanix:index/NdbDatabaseMaintenanceTasks:NdbDatabaseMaintenanceTasks": {
      "properties": {
        "maintenanceWindowId": {
          "type": "string"
        },
        "tasks": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FNdbDatabaseMaintenanceTasksTask:NdbDatabaseMaintenanceTasksTask"
          }
        }
      },
      "type": "object"
    },
    "nutanix:index/NdbDatabaseMaintenanceTasksTask:NdbDatabaseMaintenanceTasksTask": {
      "properties": {
        "postCommand": {
          "type": "string"
        },
        "preCommand": {
          "type": "string"
        },
        "taskType": {
          "type": "string"
        }
      },
      "type": "object"
    },
    "nutanix:index/NdbDatabaseNode:NdbDatabaseNode": {
      "properties": {
        "computeprofileid": {
          "type": "string",
          "description": "- (Optional) compute profile id\n"
        },
        "dbserverid": {
          "type": "string",
          "description": "- (Optional) Database server ID required for existing VM\n"
        },
        "ipInfos": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FNdbDatabaseNodeIpInfo:NdbDatabaseNodeIpInfo"
          },
          "description": "- (Optional) IP infos for custom network profile.\n"
        },
        "networkprofileid": {
          "type": "string",
          "description": "- (Required) network profile ID\n"
        },
        "nxClusterId": {
          "type": "string",
          "description": "- (Optional) cluster id.\n"
        },
        "properties": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FNdbDatabaseNodeProperty:NdbDatabaseNodeProperty"
          },
          "description": "- (Optional) list of additional properties\n"
        },
        "vmname": {
          "type": "string",
          "description": "- (Required) name of vm\n"
        }
      },
      "type": "object",
      "required": [
        "vmname"
      ]
    },
    "nutanix:index/NdbDatabaseNodeIpInfo:NdbDatabaseNodeIpInfo": {
      "properties": {
        "ipAddresses": {
          "type": "array",
          "items": {
            "type": "string"
          }
        },
        "ipType": {
          "type": "string"
        }
      },
      "type": "object"
    },
    "nutanix:index/NdbDatabaseNodeProperty:NdbDatabaseNodeProperty": {
      "properties": {
        "name": {
          "type": "string",
          "description": "- (Required) Name of the instance.\n"
        },
        "value": {
          "type": "string",
          "description": "- (Required) value for argument\n"
        }
      },
      "type": "object",
      "required": [
        "name",
        "value"
      ]
    },
    "nutanix:index/NdbDatabasePostgresqlInfo:NdbDatabasePostgresqlInfo": {
      "properties": {
        "allocatePgHugepage": {
          "type": "boolean",
          "description": "- (Optional) allocate huge page. Default: false\n"
        },
        "authMethod": {
          "type": "string",
          "description": "- (Optional) auth methods. Default: md5\n"
        },
        "autoTuneStagingDrive": {
          "type": "boolean",
          "description": "- (Optional) enable auto tuning of staging drive. Default: false\n"
        },
        "clusterDatabase": {
          "type": "boolean",
          "description": "- (Optional) if clustered database. Default: false\n"
        },
        "databaseNames": {
          "type": "string",
          "description": "- (Required) name of initial database to be created\n"
        },
        "databaseSize": {
          "type": "string",
          "description": "- (Required) initial database size\n"
        },
        "dbPassword": {
          "type": "string",
          "description": "- (Required) database instance password\n",
          "secret": true
        },
        "haInstance": {
          "$ref": "#/types/nutanix:index%2FNdbDatabasePostgresqlInfoHaInstance:NdbDatabasePostgresqlInfoHaInstance",
          "description": "- (Optional) High Availability instance\n"
        },
        "listenerPort": {
          "type": "string",
          "description": "- (Required) listener port for database instance\n"
        },
        "postCreateScript": {
          "type": "string",
          "description": "- (Optional) post instance create script\n"
        },
        "preCreateScript": {
          "type": "string",
          "description": "- (Optional) pre instance create script\n"
        }
      },
      "type": "object",
      "required": [
        "databaseNames",
        "databaseSize",
        "dbPassword",
        "listenerPort"
      ]
    },
    "nutanix:index/NdbDatabasePostgresqlInfoHaInstance:NdbDatabasePostgresqlInfoHaInstance": {
      "properties": {
        "archiveWalExpireDays": {
          "type": "integer",
          "description": "- (Optional) archive wal expire days. Default is set to -1\n"
        },
        "backupPolicy": {
          "type": "string",
          "description": "- (Optional) backup policy for instance. Default is <span pulumi-lang-nodejs=\"\"primaryOnly\"\" pulumi-lang-dotnet=\"\"PrimaryOnly\"\" pulumi-lang-go=\"\"primaryOnly\"\" pulumi-lang-python=\"\"primary_only\"\" pulumi-lang-yaml=\"\"primaryOnly\"\" pulumi-lang-java=\"\"primaryOnly\"\">\"primary_only\"</span>\n"
        },
        "clusterDescription": {
          "type": "string"
        },
        "clusterName": {
          "type": "string",
          "description": "- (Required) cluster name\n"
        },
        "deployHaproxy": {
          "type": "boolean",
          "description": "- (Optional) HA proxy node. Default is set to false\n"
        },
        "enablePeerAuth": {
          "type": "boolean",
          "description": "- (Optional) enable peer auth . Default is set to false.\n"
        },
        "enableSynchronousMode": {
          "type": "boolean",
          "description": "- (Optional) enable synchronous mode. Default is set to true\n"
        },
        "failoverMode": {
          "type": "string",
          "description": "- (Optional) failover mode of nodes.\n"
        },
        "nodeType": {
          "type": "string",
          "description": "- (Optional) node type of instance. Default is set to database\n"
        },
        "patroniClusterName": {
          "type": "string",
          "description": "- (Required) patroni cluster name\n"
        },
        "provisionVirtualIp": {
          "type": "boolean",
          "description": "- (Optional) provisional virtual ip. Default is set to true\n"
        },
        "proxyReadPort": {
          "type": "string",
          "description": "-  (Required) proxy read port\n"
        },
        "proxyWritePort": {
          "type": "string",
          "description": "- (Required) proxy write port\n"
        }
      },
      "type": "object",
      "required": [
        "clusterName",
        "patroniClusterName",
        "proxyReadPort",
        "proxyWritePort"
      ]
    },
    "nutanix:index/NdbDatabaseProperty:NdbDatabaseProperty": {
      "properties": {
        "name": {
          "type": "string",
          "description": "- (Required) Name of the instance.\n"
        },
        "value": {
          "type": "string",
          "description": "- (Required) value for argument\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "name",
            "value"
          ]
        }
      }
    },
    "nutanix:index/NdbDatabaseRestoreDatabaseNode:NdbDatabaseRestoreDatabaseNode": {
      "properties": {
        "accessLevel": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          }
        },
        "databaseId": {
          "type": "string",
          "description": "database id\n"
        },
        "databaseStatus": {
          "type": "string"
        },
        "dateCreated": {
          "type": "string",
          "description": "date created for db instance\n"
        },
        "dateModified": {
          "type": "string",
          "description": "date modified for instance\n"
        },
        "dbserver": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          }
        },
        "dbserverId": {
          "type": "string"
        },
        "description": {
          "type": "string",
          "description": "description of database instance\n"
        },
        "id": {
          "type": "string"
        },
        "infos": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FNdbDatabaseRestoreDatabaseNodeInfo:NdbDatabaseRestoreDatabaseNodeInfo"
          },
          "description": "info of instance\n"
        },
        "name": {
          "type": "string",
          "description": "Name of database instance\n"
        },
        "primary": {
          "type": "boolean"
        },
        "properties": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FNdbDatabaseRestoreDatabaseNodeProperty:NdbDatabaseRestoreDatabaseNodeProperty"
          },
          "description": "properties of database created\n"
        },
        "protectionDomainId": {
          "type": "string"
        },
        "protectionDomains": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FNdbDatabaseRestoreDatabaseNodeProtectionDomain:NdbDatabaseRestoreDatabaseNodeProtectionDomain"
          }
        },
        "softwareInstallationId": {
          "type": "string"
        },
        "status": {
          "type": "string",
          "description": "status of instance\n"
        },
        "tags": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FNdbDatabaseRestoreDatabaseNodeTag:NdbDatabaseRestoreDatabaseNodeTag"
          },
          "description": "allows you to assign metadata to entities (clones, time machines, databases, and database servers) by using tags.\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "accessLevel",
            "databaseId",
            "databaseStatus",
            "dateCreated",
            "dateModified",
            "dbserver",
            "dbserverId",
            "description",
            "id",
            "infos",
            "name",
            "primary",
            "properties",
            "protectionDomainId",
            "protectionDomains",
            "softwareInstallationId",
            "status",
            "tags"
          ]
        }
      }
    },
    "nutanix:index/NdbDatabaseRestoreDatabaseNodeInfo:NdbDatabaseRestoreDatabaseNodeInfo": {
      "properties": {
        "info": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          },
          "description": "info of instance\n"
        },
        "secureInfo": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          }
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "info",
            "secureInfo"
          ]
        }
      }
    },
    "nutanix:index/NdbDatabaseRestoreDatabaseNodeProperty:NdbDatabaseRestoreDatabaseNodeProperty": {
      "properties": {
        "description": {
          "type": "string",
          "description": "description of database instance\n"
        },
        "name": {
          "type": "string",
          "description": "Name of database instance\n"
        },
        "refId": {
          "type": "string"
        },
        "secure": {
          "type": "boolean"
        },
        "value": {
          "type": "string"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "description",
            "name",
            "refId",
            "secure",
            "value"
          ]
        }
      }
    },
    "nutanix:index/NdbDatabaseRestoreDatabaseNodeProtectionDomain:NdbDatabaseRestoreDatabaseNodeProtectionDomain": {
      "properties": {
        "assocEntities": {
          "type": "array",
          "items": {
            "type": "string"
          }
        },
        "cloudId": {
          "type": "string"
        },
        "dateCreated": {
          "type": "string",
          "description": "date created for db instance\n"
        },
        "dateModified": {
          "type": "string",
          "description": "date modified for instance\n"
        },
        "description": {
          "type": "string",
          "description": "description of database instance\n"
        },
        "eraCreated": {
          "type": "boolean"
        },
        "id": {
          "type": "string"
        },
        "name": {
          "type": "string",
          "description": "Name of database instance\n"
        },
        "ownerId": {
          "type": "string"
        },
        "primaryHost": {
          "type": "string"
        },
        "properties": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FNdbDatabaseRestoreDatabaseNodeProtectionDomainProperty:NdbDatabaseRestoreDatabaseNodeProtectionDomainProperty"
          },
          "description": "properties of database created\n"
        },
        "status": {
          "type": "string",
          "description": "status of instance\n"
        },
        "type": {
          "type": "string",
          "description": "type of database\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "assocEntities",
            "cloudId",
            "dateCreated",
            "dateModified",
            "description",
            "eraCreated",
            "id",
            "name",
            "ownerId",
            "primaryHost",
            "properties",
            "status",
            "type"
          ]
        }
      }
    },
    "nutanix:index/NdbDatabaseRestoreDatabaseNodeProtectionDomainProperty:NdbDatabaseRestoreDatabaseNodeProtectionDomainProperty": {
      "properties": {
        "description": {
          "type": "string",
          "description": "description of database instance\n"
        },
        "name": {
          "type": "string",
          "description": "Name of database instance\n"
        },
        "refId": {
          "type": "string"
        },
        "secure": {
          "type": "boolean"
        },
        "value": {
          "type": "string"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "description",
            "name",
            "refId",
            "secure",
            "value"
          ]
        }
      }
    },
    "nutanix:index/NdbDatabaseRestoreDatabaseNodeTag:NdbDatabaseRestoreDatabaseNodeTag": {
      "properties": {
        "entityId": {
          "type": "string"
        },
        "entityType": {
          "type": "string"
        },
        "tagId": {
          "type": "string"
        },
        "tagName": {
          "type": "string"
        },
        "value": {
          "type": "string"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "entityId",
            "entityType",
            "tagId",
            "tagName",
            "value"
          ]
        }
      }
    },
    "nutanix:index/NdbDatabaseRestoreInfo:NdbDatabaseRestoreInfo": {
      "properties": {
        "bpgConfigs": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FNdbDatabaseRestoreInfoBpgConfig:NdbDatabaseRestoreInfoBpgConfig"
          }
        },
        "secureInfo": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          }
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "bpgConfigs",
            "secureInfo"
          ]
        }
      }
    },
    "nutanix:index/NdbDatabaseRestoreInfoBpgConfig:NdbDatabaseRestoreInfoBpgConfig": {
      "properties": {
        "bpgDbParams": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FNdbDatabaseRestoreInfoBpgConfigBpgDbParam:NdbDatabaseRestoreInfoBpgConfigBpgDbParam"
          }
        },
        "storages": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FNdbDatabaseRestoreInfoBpgConfigStorage:NdbDatabaseRestoreInfoBpgConfigStorage"
          }
        },
        "vmProperties": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FNdbDatabaseRestoreInfoBpgConfigVmProperty:NdbDatabaseRestoreInfoBpgConfigVmProperty"
          }
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "bpgDbParams",
            "storages",
            "vmProperties"
          ]
        }
      }
    },
    "nutanix:index/NdbDatabaseRestoreInfoBpgConfigBpgDbParam:NdbDatabaseRestoreInfoBpgConfigBpgDbParam": {
      "properties": {
        "effectiveCacheSize": {
          "type": "string"
        },
        "maintenanceWorkMem": {
          "type": "string"
        },
        "maxParallelWorkersPerGather": {
          "type": "string"
        },
        "maxWorkerProcesses": {
          "type": "string"
        },
        "sharedBuffers": {
          "type": "string"
        },
        "workMem": {
          "type": "string"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "effectiveCacheSize",
            "maintenanceWorkMem",
            "maxParallelWorkersPerGather",
            "maxWorkerProcesses",
            "sharedBuffers",
            "workMem"
          ]
        }
      }
    },
    "nutanix:index/NdbDatabaseRestoreInfoBpgConfigStorage:NdbDatabaseRestoreInfoBpgConfigStorage": {
      "properties": {
        "archiveStorages": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FNdbDatabaseRestoreInfoBpgConfigStorageArchiveStorage:NdbDatabaseRestoreInfoBpgConfigStorageArchiveStorage"
          }
        },
        "dataDisks": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FNdbDatabaseRestoreInfoBpgConfigStorageDataDisk:NdbDatabaseRestoreInfoBpgConfigStorageDataDisk"
          }
        },
        "logDisks": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FNdbDatabaseRestoreInfoBpgConfigStorageLogDisk:NdbDatabaseRestoreInfoBpgConfigStorageLogDisk"
          }
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "archiveStorages",
            "dataDisks",
            "logDisks"
          ]
        }
      }
    },
    "nutanix:index/NdbDatabaseRestoreInfoBpgConfigStorageArchiveStorage:NdbDatabaseRestoreInfoBpgConfigStorageArchiveStorage": {
      "properties": {
        "size": {
          "type": "number"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "size"
          ]
        }
      }
    },
    "nutanix:index/NdbDatabaseRestoreInfoBpgConfigStorageDataDisk:NdbDatabaseRestoreInfoBpgConfigStorageDataDisk": {
      "properties": {
        "count": {
          "type": "number"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "count"
          ]
        }
      }
    },
    "nutanix:index/NdbDatabaseRestoreInfoBpgConfigStorageLogDisk:NdbDatabaseRestoreInfoBpgConfigStorageLogDisk": {
      "properties": {
        "count": {
          "type": "number"
        },
        "size": {
          "type": "number"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "count",
            "size"
          ]
        }
      }
    },
    "nutanix:index/NdbDatabaseRestoreInfoBpgConfigVmProperty:NdbDatabaseRestoreInfoBpgConfigVmProperty": {
      "properties": {
        "dirtyBackgroundRatio": {
          "type": "number"
        },
        "dirtyExpireCentisecs": {
          "type": "number"
        },
        "dirtyRatio": {
          "type": "number"
        },
        "dirtyWritebackCentisecs": {
          "type": "number"
        },
        "nrHugepages": {
          "type": "number"
        },
        "overcommitMemory": {
          "type": "number"
        },
        "swappiness": {
          "type": "number"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "dirtyBackgroundRatio",
            "dirtyExpireCentisecs",
            "dirtyRatio",
            "dirtyWritebackCentisecs",
            "nrHugepages",
            "overcommitMemory",
            "swappiness"
          ]
        }
      }
    },
    "nutanix:index/NdbDatabaseRestoreLcmConfig:NdbDatabaseRestoreLcmConfig": {
      "properties": {
        "expiryDetails": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FNdbDatabaseRestoreLcmConfigExpiryDetail:NdbDatabaseRestoreLcmConfigExpiryDetail"
          }
        },
        "postDeleteCommands": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FNdbDatabaseRestoreLcmConfigPostDeleteCommand:NdbDatabaseRestoreLcmConfigPostDeleteCommand"
          }
        },
        "preDeleteCommands": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FNdbDatabaseRestoreLcmConfigPreDeleteCommand:NdbDatabaseRestoreLcmConfigPreDeleteCommand"
          }
        },
        "refreshDetails": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FNdbDatabaseRestoreLcmConfigRefreshDetail:NdbDatabaseRestoreLcmConfigRefreshDetail"
          }
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "expiryDetails",
            "postDeleteCommands",
            "preDeleteCommands",
            "refreshDetails"
          ]
        }
      }
    },
    "nutanix:index/NdbDatabaseRestoreLcmConfigExpiryDetail:NdbDatabaseRestoreLcmConfigExpiryDetail": {
      "properties": {
        "deleteDatabase": {
          "type": "boolean"
        },
        "deleteTimeMachine": {
          "type": "boolean"
        },
        "deleteVm": {
          "type": "boolean"
        },
        "effectiveTimestamp": {
          "type": "string"
        },
        "expireInDays": {
          "type": "integer"
        },
        "expiryDateTimezone": {
          "type": "string"
        },
        "expiryTimestamp": {
          "type": "string"
        },
        "remindBeforeInDays": {
          "type": "integer"
        },
        "userCreated": {
          "type": "boolean"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "deleteDatabase",
            "deleteTimeMachine",
            "deleteVm",
            "effectiveTimestamp",
            "expireInDays",
            "expiryDateTimezone",
            "expiryTimestamp",
            "remindBeforeInDays",
            "userCreated"
          ]
        }
      }
    },
    "nutanix:index/NdbDatabaseRestoreLcmConfigPostDeleteCommand:NdbDatabaseRestoreLcmConfigPostDeleteCommand": {
      "properties": {
        "command": {
          "type": "string"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "command"
          ]
        }
      }
    },
    "nutanix:index/NdbDatabaseRestoreLcmConfigPreDeleteCommand:NdbDatabaseRestoreLcmConfigPreDeleteCommand": {
      "properties": {
        "command": {
          "type": "string"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "command"
          ]
        }
      }
    },
    "nutanix:index/NdbDatabaseRestoreLcmConfigRefreshDetail:NdbDatabaseRestoreLcmConfigRefreshDetail": {
      "properties": {
        "lastRefreshDate": {
          "type": "string"
        },
        "nextRefreshDate": {
          "type": "string"
        },
        "refreshDateTimezone": {
          "type": "string"
        },
        "refreshInDays": {
          "type": "integer"
        },
        "refreshInHours": {
          "type": "integer"
        },
        "refreshInMonths": {
          "type": "integer"
        },
        "refreshTime": {
          "type": "string"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "lastRefreshDate",
            "nextRefreshDate",
            "refreshDateTimezone",
            "refreshInDays",
            "refreshInHours",
            "refreshInMonths",
            "refreshTime"
          ]
        }
      }
    },
    "nutanix:index/NdbDatabaseRestoreLinkedDatabase:NdbDatabaseRestoreLinkedDatabase": {
      "properties": {
        "databaseName": {
          "type": "string",
          "description": "name of database\n"
        },
        "databaseStatus": {
          "type": "string"
        },
        "dateCreated": {
          "type": "string",
          "description": "date created for db instance\n"
        },
        "dateModified": {
          "type": "string",
          "description": "date modified for instance\n"
        },
        "description": {
          "type": "string",
          "description": "description of database instance\n"
        },
        "id": {
          "type": "string"
        },
        "infos": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FNdbDatabaseRestoreLinkedDatabaseInfo:NdbDatabaseRestoreLinkedDatabaseInfo"
          },
          "description": "info of instance\n"
        },
        "metric": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          },
          "description": "Stores storage info regarding size, allocatedSize, usedSize and unit of calculation that seems to have been fetched from PRISM.\n"
        },
        "name": {
          "type": "string",
          "description": "Name of database instance\n"
        },
        "parentDatabaseId": {
          "type": "string",
          "description": "parent database id\n"
        },
        "parentLinkedDatabaseId": {
          "type": "string"
        },
        "snapshotId": {
          "type": "string",
          "description": "snapshot id from you want to use for restoring the instance\n"
        },
        "status": {
          "type": "string",
          "description": "status of instance\n"
        },
        "timezone": {
          "type": "string"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "databaseName",
            "databaseStatus",
            "dateCreated",
            "dateModified",
            "description",
            "id",
            "infos",
            "metric",
            "name",
            "parentDatabaseId",
            "parentLinkedDatabaseId",
            "snapshotId",
            "status",
            "timezone"
          ]
        }
      }
    },
    "nutanix:index/NdbDatabaseRestoreLinkedDatabaseInfo:NdbDatabaseRestoreLinkedDatabaseInfo": {
      "properties": {
        "info": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          },
          "description": "info of instance\n"
        },
        "secureInfo": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          }
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "info",
            "secureInfo"
          ]
        }
      }
    },
    "nutanix:index/NdbDatabaseRestoreProperty:NdbDatabaseRestoreProperty": {
      "properties": {
        "name": {
          "type": "string",
          "description": "Name of database instance\n"
        },
        "value": {
          "type": "string"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "name",
            "value"
          ]
        }
      }
    },
    "nutanix:index/NdbDatabaseRestoreTag:NdbDatabaseRestoreTag": {
      "properties": {
        "entityId": {
          "type": "string"
        },
        "entityType": {
          "type": "string"
        },
        "tagId": {
          "type": "string"
        },
        "tagName": {
          "type": "string"
        },
        "value": {
          "type": "string"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "entityId",
            "entityType",
            "tagId",
            "tagName",
            "value"
          ]
        }
      }
    },
    "nutanix:index/NdbDatabaseRestoreTimeMachine:NdbDatabaseRestoreTimeMachine": {
      "properties": {
        "accessLevel": {
          "type": "string"
        },
        "clone": {
          "type": "boolean",
          "description": "whether instance is cloned or not\n"
        },
        "clones": {
          "type": "string"
        },
        "clustered": {
          "type": "boolean"
        },
        "database": {
          "type": "string"
        },
        "databaseId": {
          "type": "string",
          "description": "database id\n"
        },
        "dateCreated": {
          "type": "string",
          "description": "date created for db instance\n"
        },
        "dateModified": {
          "type": "string",
          "description": "date modified for instance\n"
        },
        "description": {
          "type": "string",
          "description": "description of database instance\n"
        },
        "eaStatus": {
          "type": "string"
        },
        "id": {
          "type": "string"
        },
        "metric": {
          "type": "string",
          "description": "Stores storage info regarding size, allocatedSize, usedSize and unit of calculation that seems to have been fetched from PRISM.\n"
        },
        "name": {
          "type": "string",
          "description": "Name of database instance\n"
        },
        "properties": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FNdbDatabaseRestoreTimeMachineProperty:NdbDatabaseRestoreTimeMachineProperty"
          },
          "description": "properties of database created\n"
        },
        "scheduleId": {
          "type": "string"
        },
        "schedules": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FNdbDatabaseRestoreTimeMachineSchedule:NdbDatabaseRestoreTimeMachineSchedule"
          }
        },
        "scope": {
          "type": "string"
        },
        "slaId": {
          "type": "string"
        },
        "slaUpdateInProgress": {
          "type": "boolean"
        },
        "slaUpdateMetadata": {
          "type": "string"
        },
        "slas": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FNdbDatabaseRestoreTimeMachineSla:NdbDatabaseRestoreTimeMachineSla"
          }
        },
        "sourceNxClusters": {
          "type": "array",
          "items": {
            "type": "string"
          }
        },
        "status": {
          "type": "string",
          "description": "status of instance\n"
        },
        "tags": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FNdbDatabaseRestoreTimeMachineTag:NdbDatabaseRestoreTimeMachineTag"
          },
          "description": "allows you to assign metadata to entities (clones, time machines, databases, and database servers) by using tags.\n"
        },
        "type": {
          "type": "string",
          "description": "type of database\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "accessLevel",
            "clone",
            "clones",
            "clustered",
            "database",
            "databaseId",
            "dateCreated",
            "dateModified",
            "description",
            "eaStatus",
            "id",
            "metric",
            "name",
            "properties",
            "scheduleId",
            "schedules",
            "scope",
            "slaId",
            "slaUpdateInProgress",
            "slaUpdateMetadata",
            "slas",
            "sourceNxClusters",
            "status",
            "tags",
            "type"
          ]
        }
      }
    },
    "nutanix:index/NdbDatabaseRestoreTimeMachineProperty:NdbDatabaseRestoreTimeMachineProperty": {
      "properties": {
        "description": {
          "type": "string",
          "description": "description of database instance\n"
        },
        "name": {
          "type": "string",
          "description": "Name of database instance\n"
        },
        "refId": {
          "type": "string"
        },
        "secure": {
          "type": "boolean"
        },
        "value": {
          "type": "string"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "description",
            "name",
            "refId",
            "secure",
            "value"
          ]
        }
      }
    },
    "nutanix:index/NdbDatabaseRestoreTimeMachineSchedule:NdbDatabaseRestoreTimeMachineSchedule": {
      "properties": {
        "continuousSchedules": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FNdbDatabaseRestoreTimeMachineScheduleContinuousSchedule:NdbDatabaseRestoreTimeMachineScheduleContinuousSchedule"
          }
        },
        "dailySchedules": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FNdbDatabaseRestoreTimeMachineScheduleDailySchedule:NdbDatabaseRestoreTimeMachineScheduleDailySchedule"
          }
        },
        "dateCreated": {
          "type": "string",
          "description": "date created for db instance\n"
        },
        "dateModified": {
          "type": "string",
          "description": "date modified for instance\n"
        },
        "description": {
          "type": "string",
          "description": "description of database instance\n"
        },
        "globalPolicy": {
          "type": "boolean"
        },
        "id": {
          "type": "string"
        },
        "monthlySchedules": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FNdbDatabaseRestoreTimeMachineScheduleMonthlySchedule:NdbDatabaseRestoreTimeMachineScheduleMonthlySchedule"
          }
        },
        "name": {
          "type": "string",
          "description": "Name of database instance\n"
        },
        "ownerId": {
          "type": "string"
        },
        "quartelySchedules": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FNdbDatabaseRestoreTimeMachineScheduleQuartelySchedule:NdbDatabaseRestoreTimeMachineScheduleQuartelySchedule"
          }
        },
        "referenceCount": {
          "type": "integer"
        },
        "snapshotTimeOfDays": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FNdbDatabaseRestoreTimeMachineScheduleSnapshotTimeOfDay:NdbDatabaseRestoreTimeMachineScheduleSnapshotTimeOfDay"
          }
        },
        "startTime": {
          "type": "string"
        },
        "systemPolicy": {
          "type": "boolean"
        },
        "timeZone": {
          "type": "string",
          "description": "timezone on which instance is created xw\n"
        },
        "uniqueName": {
          "type": "string"
        },
        "weeklySchedules": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FNdbDatabaseRestoreTimeMachineScheduleWeeklySchedule:NdbDatabaseRestoreTimeMachineScheduleWeeklySchedule"
          }
        },
        "yearlySchedules": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FNdbDatabaseRestoreTimeMachineScheduleYearlySchedule:NdbDatabaseRestoreTimeMachineScheduleYearlySchedule"
          }
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "continuousSchedules",
            "dailySchedules",
            "dateCreated",
            "dateModified",
            "description",
            "globalPolicy",
            "id",
            "monthlySchedules",
            "name",
            "ownerId",
            "quartelySchedules",
            "referenceCount",
            "snapshotTimeOfDays",
            "startTime",
            "systemPolicy",
            "timeZone",
            "uniqueName",
            "weeklySchedules",
            "yearlySchedules"
          ]
        }
      }
    },
    "nutanix:index/NdbDatabaseRestoreTimeMachineScheduleContinuousSchedule:NdbDatabaseRestoreTimeMachineScheduleContinuousSchedule": {
      "properties": {
        "enabled": {
          "type": "boolean"
        },
        "logBackupInterval": {
          "type": "integer"
        },
        "snapshotsPerDay": {
          "type": "integer"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "enabled",
            "logBackupInterval",
            "snapshotsPerDay"
          ]
        }
      }
    },
    "nutanix:index/NdbDatabaseRestoreTimeMachineScheduleDailySchedule:NdbDatabaseRestoreTimeMachineScheduleDailySchedule": {
      "properties": {
        "enabled": {
          "type": "boolean"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "enabled"
          ]
        }
      }
    },
    "nutanix:index/NdbDatabaseRestoreTimeMachineScheduleMonthlySchedule:NdbDatabaseRestoreTimeMachineScheduleMonthlySchedule": {
      "properties": {
        "dayOfMonth": {
          "type": "integer"
        },
        "enabled": {
          "type": "boolean"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "dayOfMonth",
            "enabled"
          ]
        }
      }
    },
    "nutanix:index/NdbDatabaseRestoreTimeMachineScheduleQuartelySchedule:NdbDatabaseRestoreTimeMachineScheduleQuartelySchedule": {
      "properties": {
        "dayOfMonth": {
          "type": "integer"
        },
        "enabled": {
          "type": "boolean"
        },
        "startMonth": {
          "type": "string"
        },
        "startMonthValue": {
          "type": "string"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "dayOfMonth",
            "enabled",
            "startMonth",
            "startMonthValue"
          ]
        }
      }
    },
    "nutanix:index/NdbDatabaseRestoreTimeMachineScheduleSnapshotTimeOfDay:NdbDatabaseRestoreTimeMachineScheduleSnapshotTimeOfDay": {
      "properties": {
        "extra": {
          "type": "boolean"
        },
        "hours": {
          "type": "integer"
        },
        "minutes": {
          "type": "integer"
        },
        "seconds": {
          "type": "integer"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "extra",
            "hours",
            "minutes",
            "seconds"
          ]
        }
      }
    },
    "nutanix:index/NdbDatabaseRestoreTimeMachineScheduleWeeklySchedule:NdbDatabaseRestoreTimeMachineScheduleWeeklySchedule": {
      "properties": {
        "dayOfWeek": {
          "type": "string"
        },
        "dayOfWeekValue": {
          "type": "string"
        },
        "enabled": {
          "type": "boolean"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "dayOfWeek",
            "dayOfWeekValue",
            "enabled"
          ]
        }
      }
    },
    "nutanix:index/NdbDatabaseRestoreTimeMachineScheduleYearlySchedule:NdbDatabaseRestoreTimeMachineScheduleYearlySchedule": {
      "properties": {
        "dayOfMonth": {
          "type": "integer"
        },
        "enabled": {
          "type": "boolean"
        },
        "month": {
          "type": "string"
        },
        "monthValue": {
          "type": "string"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "dayOfMonth",
            "enabled",
            "month",
            "monthValue"
          ]
        }
      }
    },
    "nutanix:index/NdbDatabaseRestoreTimeMachineSla:NdbDatabaseRestoreTimeMachineSla": {
      "properties": {
        "continuousRetention": {
          "type": "integer"
        },
        "currentActiveFrequency": {
          "type": "string"
        },
        "dailyRetention": {
          "type": "integer"
        },
        "dateCreated": {
          "type": "string",
          "description": "date created for db instance\n"
        },
        "dateModified": {
          "type": "string",
          "description": "date modified for instance\n"
        },
        "description": {
          "type": "string",
          "description": "description of database instance\n"
        },
        "id": {
          "type": "string"
        },
        "monthlyRetention": {
          "type": "integer"
        },
        "name": {
          "type": "string",
          "description": "Name of database instance\n"
        },
        "ownerId": {
          "type": "string"
        },
        "pitrEnabled": {
          "type": "boolean"
        },
        "quarterlyRetention": {
          "type": "integer"
        },
        "referenceCount": {
          "type": "integer"
        },
        "systemSla": {
          "type": "boolean"
        },
        "uniqueName": {
          "type": "string"
        },
        "weeklyRetention": {
          "type": "integer"
        },
        "yearlyRetention": {
          "type": "integer"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "continuousRetention",
            "currentActiveFrequency",
            "dailyRetention",
            "dateCreated",
            "dateModified",
            "description",
            "id",
            "monthlyRetention",
            "name",
            "ownerId",
            "pitrEnabled",
            "quarterlyRetention",
            "referenceCount",
            "systemSla",
            "uniqueName",
            "weeklyRetention",
            "yearlyRetention"
          ]
        }
      }
    },
    "nutanix:index/NdbDatabaseRestoreTimeMachineTag:NdbDatabaseRestoreTimeMachineTag": {
      "properties": {
        "entityId": {
          "type": "string"
        },
        "entityType": {
          "type": "string"
        },
        "tagId": {
          "type": "string"
        },
        "tagName": {
          "type": "string"
        },
        "value": {
          "type": "string"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "entityId",
            "entityType",
            "tagId",
            "tagName",
            "value"
          ]
        }
      }
    },
    "nutanix:index/NdbDatabaseScaleDatabaseNode:NdbDatabaseScaleDatabaseNode": {
      "properties": {
        "accessLevel": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          }
        },
        "databaseId": {
          "type": "string"
        },
        "databaseStatus": {
          "type": "string"
        },
        "dateCreated": {
          "type": "string",
          "description": "date created for db instance\n"
        },
        "dateModified": {
          "type": "string",
          "description": "date modified for instance\n"
        },
        "dbserver": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          }
        },
        "dbserverId": {
          "type": "string"
        },
        "description": {
          "type": "string",
          "description": "description of database instance\n"
        },
        "id": {
          "type": "string"
        },
        "infos": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FNdbDatabaseScaleDatabaseNodeInfo:NdbDatabaseScaleDatabaseNodeInfo"
          },
          "description": "info of instance\n"
        },
        "name": {
          "type": "string",
          "description": "Name of database instance\n"
        },
        "primary": {
          "type": "boolean"
        },
        "properties": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FNdbDatabaseScaleDatabaseNodeProperty:NdbDatabaseScaleDatabaseNodeProperty"
          },
          "description": "properties of database created\n"
        },
        "protectionDomainId": {
          "type": "string"
        },
        "protectionDomains": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FNdbDatabaseScaleDatabaseNodeProtectionDomain:NdbDatabaseScaleDatabaseNodeProtectionDomain"
          }
        },
        "softwareInstallationId": {
          "type": "string"
        },
        "status": {
          "type": "string",
          "description": "status of instance\n"
        },
        "tags": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FNdbDatabaseScaleDatabaseNodeTag:NdbDatabaseScaleDatabaseNodeTag"
          },
          "description": "allows you to assign metadata to entities (clones, time machines, databases, and database servers) by using tags.\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "accessLevel",
            "databaseId",
            "databaseStatus",
            "dateCreated",
            "dateModified",
            "dbserver",
            "dbserverId",
            "description",
            "id",
            "infos",
            "name",
            "primary",
            "properties",
            "protectionDomainId",
            "protectionDomains",
            "softwareInstallationId",
            "status",
            "tags"
          ]
        }
      }
    },
    "nutanix:index/NdbDatabaseScaleDatabaseNodeInfo:NdbDatabaseScaleDatabaseNodeInfo": {
      "properties": {
        "info": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          },
          "description": "info of instance\n"
        },
        "secureInfo": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          }
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "info",
            "secureInfo"
          ]
        }
      }
    },
    "nutanix:index/NdbDatabaseScaleDatabaseNodeProperty:NdbDatabaseScaleDatabaseNodeProperty": {
      "properties": {
        "description": {
          "type": "string",
          "description": "description of database instance\n"
        },
        "name": {
          "type": "string",
          "description": "Name of database instance\n"
        },
        "refId": {
          "type": "string"
        },
        "secure": {
          "type": "boolean"
        },
        "value": {
          "type": "string"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "description",
            "name",
            "refId",
            "secure",
            "value"
          ]
        }
      }
    },
    "nutanix:index/NdbDatabaseScaleDatabaseNodeProtectionDomain:NdbDatabaseScaleDatabaseNodeProtectionDomain": {
      "properties": {
        "assocEntities": {
          "type": "array",
          "items": {
            "type": "string"
          }
        },
        "cloudId": {
          "type": "string"
        },
        "dateCreated": {
          "type": "string",
          "description": "date created for db instance\n"
        },
        "dateModified": {
          "type": "string",
          "description": "date modified for instance\n"
        },
        "description": {
          "type": "string",
          "description": "description of database instance\n"
        },
        "eraCreated": {
          "type": "boolean"
        },
        "id": {
          "type": "string"
        },
        "name": {
          "type": "string",
          "description": "Name of database instance\n"
        },
        "ownerId": {
          "type": "string"
        },
        "primaryHost": {
          "type": "string"
        },
        "properties": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FNdbDatabaseScaleDatabaseNodeProtectionDomainProperty:NdbDatabaseScaleDatabaseNodeProtectionDomainProperty"
          },
          "description": "properties of database created\n"
        },
        "status": {
          "type": "string",
          "description": "status of instance\n"
        },
        "type": {
          "type": "string",
          "description": "type of database\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "assocEntities",
            "cloudId",
            "dateCreated",
            "dateModified",
            "description",
            "eraCreated",
            "id",
            "name",
            "ownerId",
            "primaryHost",
            "properties",
            "status",
            "type"
          ]
        }
      }
    },
    "nutanix:index/NdbDatabaseScaleDatabaseNodeProtectionDomainProperty:NdbDatabaseScaleDatabaseNodeProtectionDomainProperty": {
      "properties": {
        "description": {
          "type": "string",
          "description": "description of database instance\n"
        },
        "name": {
          "type": "string",
          "description": "Name of database instance\n"
        },
        "refId": {
          "type": "string"
        },
        "secure": {
          "type": "boolean"
        },
        "value": {
          "type": "string"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "description",
            "name",
            "refId",
            "secure",
            "value"
          ]
        }
      }
    },
    "nutanix:index/NdbDatabaseScaleDatabaseNodeTag:NdbDatabaseScaleDatabaseNodeTag": {
      "properties": {
        "entityId": {
          "type": "string"
        },
        "entityType": {
          "type": "string"
        },
        "tagId": {
          "type": "string"
        },
        "tagName": {
          "type": "string"
        },
        "value": {
          "type": "string"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "entityId",
            "entityType",
            "tagId",
            "tagName",
            "value"
          ]
        }
      }
    },
    "nutanix:index/NdbDatabaseScaleInfo:NdbDatabaseScaleInfo": {
      "properties": {
        "bpgConfigs": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FNdbDatabaseScaleInfoBpgConfig:NdbDatabaseScaleInfoBpgConfig"
          }
        },
        "secureInfo": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          }
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "bpgConfigs",
            "secureInfo"
          ]
        }
      }
    },
    "nutanix:index/NdbDatabaseScaleInfoBpgConfig:NdbDatabaseScaleInfoBpgConfig": {
      "properties": {
        "bpgDbParams": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FNdbDatabaseScaleInfoBpgConfigBpgDbParam:NdbDatabaseScaleInfoBpgConfigBpgDbParam"
          }
        },
        "storages": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FNdbDatabaseScaleInfoBpgConfigStorage:NdbDatabaseScaleInfoBpgConfigStorage"
          }
        },
        "vmProperties": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FNdbDatabaseScaleInfoBpgConfigVmProperty:NdbDatabaseScaleInfoBpgConfigVmProperty"
          }
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "bpgDbParams",
            "storages",
            "vmProperties"
          ]
        }
      }
    },
    "nutanix:index/NdbDatabaseScaleInfoBpgConfigBpgDbParam:NdbDatabaseScaleInfoBpgConfigBpgDbParam": {
      "properties": {
        "effectiveCacheSize": {
          "type": "string"
        },
        "maintenanceWorkMem": {
          "type": "string"
        },
        "maxParallelWorkersPerGather": {
          "type": "string"
        },
        "maxWorkerProcesses": {
          "type": "string"
        },
        "sharedBuffers": {
          "type": "string"
        },
        "workMem": {
          "type": "string"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "effectiveCacheSize",
            "maintenanceWorkMem",
            "maxParallelWorkersPerGather",
            "maxWorkerProcesses",
            "sharedBuffers",
            "workMem"
          ]
        }
      }
    },
    "nutanix:index/NdbDatabaseScaleInfoBpgConfigStorage:NdbDatabaseScaleInfoBpgConfigStorage": {
      "properties": {
        "archiveStorages": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FNdbDatabaseScaleInfoBpgConfigStorageArchiveStorage:NdbDatabaseScaleInfoBpgConfigStorageArchiveStorage"
          }
        },
        "dataDisks": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FNdbDatabaseScaleInfoBpgConfigStorageDataDisk:NdbDatabaseScaleInfoBpgConfigStorageDataDisk"
          }
        },
        "logDisks": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FNdbDatabaseScaleInfoBpgConfigStorageLogDisk:NdbDatabaseScaleInfoBpgConfigStorageLogDisk"
          }
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "archiveStorages",
            "dataDisks",
            "logDisks"
          ]
        }
      }
    },
    "nutanix:index/NdbDatabaseScaleInfoBpgConfigStorageArchiveStorage:NdbDatabaseScaleInfoBpgConfigStorageArchiveStorage": {
      "properties": {
        "size": {
          "type": "number"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "size"
          ]
        }
      }
    },
    "nutanix:index/NdbDatabaseScaleInfoBpgConfigStorageDataDisk:NdbDatabaseScaleInfoBpgConfigStorageDataDisk": {
      "properties": {
        "count": {
          "type": "number"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "count"
          ]
        }
      }
    },
    "nutanix:index/NdbDatabaseScaleInfoBpgConfigStorageLogDisk:NdbDatabaseScaleInfoBpgConfigStorageLogDisk": {
      "properties": {
        "count": {
          "type": "number"
        },
        "size": {
          "type": "number"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "count",
            "size"
          ]
        }
      }
    },
    "nutanix:index/NdbDatabaseScaleInfoBpgConfigVmProperty:NdbDatabaseScaleInfoBpgConfigVmProperty": {
      "properties": {
        "dirtyBackgroundRatio": {
          "type": "number"
        },
        "dirtyExpireCentisecs": {
          "type": "number"
        },
        "dirtyRatio": {
          "type": "number"
        },
        "dirtyWritebackCentisecs": {
          "type": "number"
        },
        "nrHugepages": {
          "type": "number"
        },
        "overcommitMemory": {
          "type": "number"
        },
        "swappiness": {
          "type": "number"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "dirtyBackgroundRatio",
            "dirtyExpireCentisecs",
            "dirtyRatio",
            "dirtyWritebackCentisecs",
            "nrHugepages",
            "overcommitMemory",
            "swappiness"
          ]
        }
      }
    },
    "nutanix:index/NdbDatabaseScaleLcmConfig:NdbDatabaseScaleLcmConfig": {
      "properties": {
        "expiryDetails": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FNdbDatabaseScaleLcmConfigExpiryDetail:NdbDatabaseScaleLcmConfigExpiryDetail"
          }
        },
        "postDeleteCommands": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FNdbDatabaseScaleLcmConfigPostDeleteCommand:NdbDatabaseScaleLcmConfigPostDeleteCommand"
          }
        },
        "preDeleteCommands": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FNdbDatabaseScaleLcmConfigPreDeleteCommand:NdbDatabaseScaleLcmConfigPreDeleteCommand"
          }
        },
        "refreshDetails": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FNdbDatabaseScaleLcmConfigRefreshDetail:NdbDatabaseScaleLcmConfigRefreshDetail"
          }
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "expiryDetails",
            "postDeleteCommands",
            "preDeleteCommands",
            "refreshDetails"
          ]
        }
      }
    },
    "nutanix:index/NdbDatabaseScaleLcmConfigExpiryDetail:NdbDatabaseScaleLcmConfigExpiryDetail": {
      "properties": {
        "deleteDatabase": {
          "type": "boolean"
        },
        "deleteTimeMachine": {
          "type": "boolean"
        },
        "deleteVm": {
          "type": "boolean"
        },
        "effectiveTimestamp": {
          "type": "string"
        },
        "expireInDays": {
          "type": "integer"
        },
        "expiryDateTimezone": {
          "type": "string"
        },
        "expiryTimestamp": {
          "type": "string"
        },
        "remindBeforeInDays": {
          "type": "integer"
        },
        "userCreated": {
          "type": "boolean"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "deleteDatabase",
            "deleteTimeMachine",
            "deleteVm",
            "effectiveTimestamp",
            "expireInDays",
            "expiryDateTimezone",
            "expiryTimestamp",
            "remindBeforeInDays",
            "userCreated"
          ]
        }
      }
    },
    "nutanix:index/NdbDatabaseScaleLcmConfigPostDeleteCommand:NdbDatabaseScaleLcmConfigPostDeleteCommand": {
      "properties": {
        "command": {
          "type": "string"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "command"
          ]
        }
      }
    },
    "nutanix:index/NdbDatabaseScaleLcmConfigPreDeleteCommand:NdbDatabaseScaleLcmConfigPreDeleteCommand": {
      "properties": {
        "command": {
          "type": "string"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "command"
          ]
        }
      }
    },
    "nutanix:index/NdbDatabaseScaleLcmConfigRefreshDetail:NdbDatabaseScaleLcmConfigRefreshDetail": {
      "properties": {
        "lastRefreshDate": {
          "type": "string"
        },
        "nextRefreshDate": {
          "type": "string"
        },
        "refreshDateTimezone": {
          "type": "string"
        },
        "refreshInDays": {
          "type": "integer"
        },
        "refreshInHours": {
          "type": "integer"
        },
        "refreshInMonths": {
          "type": "integer"
        },
        "refreshTime": {
          "type": "string"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "lastRefreshDate",
            "nextRefreshDate",
            "refreshDateTimezone",
            "refreshInDays",
            "refreshInHours",
            "refreshInMonths",
            "refreshTime"
          ]
        }
      }
    },
    "nutanix:index/NdbDatabaseScaleLinkedDatabase:NdbDatabaseScaleLinkedDatabase": {
      "properties": {
        "databaseName": {
          "type": "string",
          "description": "name of database\n"
        },
        "databaseStatus": {
          "type": "string"
        },
        "dateCreated": {
          "type": "string",
          "description": "date created for db instance\n"
        },
        "dateModified": {
          "type": "string",
          "description": "date modified for instance\n"
        },
        "description": {
          "type": "string",
          "description": "description of database instance\n"
        },
        "id": {
          "type": "string"
        },
        "infos": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FNdbDatabaseScaleLinkedDatabaseInfo:NdbDatabaseScaleLinkedDatabaseInfo"
          },
          "description": "info of instance\n"
        },
        "metric": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          },
          "description": "Stores storage info regarding size, allocatedSize, usedSize and unit of calculation that seems to have been fetched from PRISM.\n"
        },
        "name": {
          "type": "string",
          "description": "Name of database instance\n"
        },
        "parentDatabaseId": {
          "type": "string",
          "description": "parent database id\n"
        },
        "parentLinkedDatabaseId": {
          "type": "string"
        },
        "snapshotId": {
          "type": "string"
        },
        "status": {
          "type": "string",
          "description": "status of instance\n"
        },
        "timezone": {
          "type": "string"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "databaseName",
            "databaseStatus",
            "dateCreated",
            "dateModified",
            "description",
            "id",
            "infos",
            "metric",
            "name",
            "parentDatabaseId",
            "parentLinkedDatabaseId",
            "snapshotId",
            "status",
            "timezone"
          ]
        }
      }
    },
    "nutanix:index/NdbDatabaseScaleLinkedDatabaseInfo:NdbDatabaseScaleLinkedDatabaseInfo": {
      "properties": {
        "info": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          },
          "description": "info of instance\n"
        },
        "secureInfo": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          }
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "info",
            "secureInfo"
          ]
        }
      }
    },
    "nutanix:index/NdbDatabaseScaleProperty:NdbDatabaseScaleProperty": {
      "properties": {
        "name": {
          "type": "string",
          "description": "Name of database instance\n"
        },
        "value": {
          "type": "string"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "name",
            "value"
          ]
        }
      }
    },
    "nutanix:index/NdbDatabaseScaleTag:NdbDatabaseScaleTag": {
      "properties": {
        "entityId": {
          "type": "string"
        },
        "entityType": {
          "type": "string"
        },
        "tagId": {
          "type": "string"
        },
        "tagName": {
          "type": "string"
        },
        "value": {
          "type": "string"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "entityId",
            "entityType",
            "tagId",
            "tagName",
            "value"
          ]
        }
      }
    },
    "nutanix:index/NdbDatabaseScaleTimeMachine:NdbDatabaseScaleTimeMachine": {
      "properties": {
        "accessLevel": {
          "type": "string"
        },
        "clone": {
          "type": "boolean",
          "description": "whether instance is cloned or not\n"
        },
        "clones": {
          "type": "string"
        },
        "clustered": {
          "type": "boolean"
        },
        "database": {
          "type": "string"
        },
        "databaseId": {
          "type": "string"
        },
        "dateCreated": {
          "type": "string",
          "description": "date created for db instance\n"
        },
        "dateModified": {
          "type": "string",
          "description": "date modified for instance\n"
        },
        "description": {
          "type": "string",
          "description": "description of database instance\n"
        },
        "eaStatus": {
          "type": "string"
        },
        "id": {
          "type": "string"
        },
        "metric": {
          "type": "string",
          "description": "Stores storage info regarding size, allocatedSize, usedSize and unit of calculation that seems to have been fetched from PRISM.\n"
        },
        "name": {
          "type": "string",
          "description": "Name of database instance\n"
        },
        "properties": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FNdbDatabaseScaleTimeMachineProperty:NdbDatabaseScaleTimeMachineProperty"
          },
          "description": "properties of database created\n"
        },
        "scheduleId": {
          "type": "string"
        },
        "schedules": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FNdbDatabaseScaleTimeMachineSchedule:NdbDatabaseScaleTimeMachineSchedule"
          }
        },
        "scope": {
          "type": "string"
        },
        "slaId": {
          "type": "string"
        },
        "slaUpdateInProgress": {
          "type": "boolean"
        },
        "slaUpdateMetadata": {
          "type": "string"
        },
        "slas": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FNdbDatabaseScaleTimeMachineSla:NdbDatabaseScaleTimeMachineSla"
          }
        },
        "sourceNxClusters": {
          "type": "array",
          "items": {
            "type": "string"
          }
        },
        "status": {
          "type": "string",
          "description": "status of instance\n"
        },
        "tags": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FNdbDatabaseScaleTimeMachineTag:NdbDatabaseScaleTimeMachineTag"
          },
          "description": "allows you to assign metadata to entities (clones, time machines, databases, and database servers) by using tags.\n"
        },
        "type": {
          "type": "string",
          "description": "type of database\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "accessLevel",
            "clone",
            "clones",
            "clustered",
            "database",
            "databaseId",
            "dateCreated",
            "dateModified",
            "description",
            "eaStatus",
            "id",
            "metric",
            "name",
            "properties",
            "scheduleId",
            "schedules",
            "scope",
            "slaId",
            "slaUpdateInProgress",
            "slaUpdateMetadata",
            "slas",
            "sourceNxClusters",
            "status",
            "tags",
            "type"
          ]
        }
      }
    },
    "nutanix:index/NdbDatabaseScaleTimeMachineProperty:NdbDatabaseScaleTimeMachineProperty": {
      "properties": {
        "description": {
          "type": "string",
          "description": "description of database instance\n"
        },
        "name": {
          "type": "string",
          "description": "Name of database instance\n"
        },
        "refId": {
          "type": "string"
        },
        "secure": {
          "type": "boolean"
        },
        "value": {
          "type": "string"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "description",
            "name",
            "refId",
            "secure",
            "value"
          ]
        }
      }
    },
    "nutanix:index/NdbDatabaseScaleTimeMachineSchedule:NdbDatabaseScaleTimeMachineSchedule": {
      "properties": {
        "continuousSchedules": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FNdbDatabaseScaleTimeMachineScheduleContinuousSchedule:NdbDatabaseScaleTimeMachineScheduleContinuousSchedule"
          }
        },
        "dailySchedules": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FNdbDatabaseScaleTimeMachineScheduleDailySchedule:NdbDatabaseScaleTimeMachineScheduleDailySchedule"
          }
        },
        "dateCreated": {
          "type": "string",
          "description": "date created for db instance\n"
        },
        "dateModified": {
          "type": "string",
          "description": "date modified for instance\n"
        },
        "description": {
          "type": "string",
          "description": "description of database instance\n"
        },
        "globalPolicy": {
          "type": "boolean"
        },
        "id": {
          "type": "string"
        },
        "monthlySchedules": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FNdbDatabaseScaleTimeMachineScheduleMonthlySchedule:NdbDatabaseScaleTimeMachineScheduleMonthlySchedule"
          }
        },
        "name": {
          "type": "string",
          "description": "Name of database instance\n"
        },
        "ownerId": {
          "type": "string"
        },
        "quartelySchedules": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FNdbDatabaseScaleTimeMachineScheduleQuartelySchedule:NdbDatabaseScaleTimeMachineScheduleQuartelySchedule"
          }
        },
        "referenceCount": {
          "type": "integer"
        },
        "snapshotTimeOfDays": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FNdbDatabaseScaleTimeMachineScheduleSnapshotTimeOfDay:NdbDatabaseScaleTimeMachineScheduleSnapshotTimeOfDay"
          }
        },
        "startTime": {
          "type": "string"
        },
        "systemPolicy": {
          "type": "boolean"
        },
        "timeZone": {
          "type": "string",
          "description": "timezone on which instance is created xw\n"
        },
        "uniqueName": {
          "type": "string"
        },
        "weeklySchedules": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FNdbDatabaseScaleTimeMachineScheduleWeeklySchedule:NdbDatabaseScaleTimeMachineScheduleWeeklySchedule"
          }
        },
        "yearlySchedules": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FNdbDatabaseScaleTimeMachineScheduleYearlySchedule:NdbDatabaseScaleTimeMachineScheduleYearlySchedule"
          }
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "continuousSchedules",
            "dailySchedules",
            "dateCreated",
            "dateModified",
            "description",
            "globalPolicy",
            "id",
            "monthlySchedules",
            "name",
            "ownerId",
            "quartelySchedules",
            "referenceCount",
            "snapshotTimeOfDays",
            "startTime",
            "systemPolicy",
            "timeZone",
            "uniqueName",
            "weeklySchedules",
            "yearlySchedules"
          ]
        }
      }
    },
    "nutanix:index/NdbDatabaseScaleTimeMachineScheduleContinuousSchedule:NdbDatabaseScaleTimeMachineScheduleContinuousSchedule": {
      "properties": {
        "enabled": {
          "type": "boolean"
        },
        "logBackupInterval": {
          "type": "integer"
        },
        "snapshotsPerDay": {
          "type": "integer"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "enabled",
            "logBackupInterval",
            "snapshotsPerDay"
          ]
        }
      }
    },
    "nutanix:index/NdbDatabaseScaleTimeMachineScheduleDailySchedule:NdbDatabaseScaleTimeMachineScheduleDailySchedule": {
      "properties": {
        "enabled": {
          "type": "boolean"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "enabled"
          ]
        }
      }
    },
    "nutanix:index/NdbDatabaseScaleTimeMachineScheduleMonthlySchedule:NdbDatabaseScaleTimeMachineScheduleMonthlySchedule": {
      "properties": {
        "dayOfMonth": {
          "type": "integer"
        },
        "enabled": {
          "type": "boolean"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "dayOfMonth",
            "enabled"
          ]
        }
      }
    },
    "nutanix:index/NdbDatabaseScaleTimeMachineScheduleQuartelySchedule:NdbDatabaseScaleTimeMachineScheduleQuartelySchedule": {
      "properties": {
        "dayOfMonth": {
          "type": "integer"
        },
        "enabled": {
          "type": "boolean"
        },
        "startMonth": {
          "type": "string"
        },
        "startMonthValue": {
          "type": "string"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "dayOfMonth",
            "enabled",
            "startMonth",
            "startMonthValue"
          ]
        }
      }
    },
    "nutanix:index/NdbDatabaseScaleTimeMachineScheduleSnapshotTimeOfDay:NdbDatabaseScaleTimeMachineScheduleSnapshotTimeOfDay": {
      "properties": {
        "extra": {
          "type": "boolean"
        },
        "hours": {
          "type": "integer"
        },
        "minutes": {
          "type": "integer"
        },
        "seconds": {
          "type": "integer"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "extra",
            "hours",
            "minutes",
            "seconds"
          ]
        }
      }
    },
    "nutanix:index/NdbDatabaseScaleTimeMachineScheduleWeeklySchedule:NdbDatabaseScaleTimeMachineScheduleWeeklySchedule": {
      "properties": {
        "dayOfWeek": {
          "type": "string"
        },
        "dayOfWeekValue": {
          "type": "string"
        },
        "enabled": {
          "type": "boolean"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "dayOfWeek",
            "dayOfWeekValue",
            "enabled"
          ]
        }
      }
    },
    "nutanix:index/NdbDatabaseScaleTimeMachineScheduleYearlySchedule:NdbDatabaseScaleTimeMachineScheduleYearlySchedule": {
      "properties": {
        "dayOfMonth": {
          "type": "integer"
        },
        "enabled": {
          "type": "boolean"
        },
        "month": {
          "type": "string"
        },
        "monthValue": {
          "type": "string"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "dayOfMonth",
            "enabled",
            "month",
            "monthValue"
          ]
        }
      }
    },
    "nutanix:index/NdbDatabaseScaleTimeMachineSla:NdbDatabaseScaleTimeMachineSla": {
      "properties": {
        "continuousRetention": {
          "type": "integer"
        },
        "currentActiveFrequency": {
          "type": "string"
        },
        "dailyRetention": {
          "type": "integer"
        },
        "dateCreated": {
          "type": "string",
          "description": "date created for db instance\n"
        },
        "dateModified": {
          "type": "string",
          "description": "date modified for instance\n"
        },
        "description": {
          "type": "string",
          "description": "description of database instance\n"
        },
        "id": {
          "type": "string"
        },
        "monthlyRetention": {
          "type": "integer"
        },
        "name": {
          "type": "string",
          "description": "Name of database instance\n"
        },
        "ownerId": {
          "type": "string"
        },
        "pitrEnabled": {
          "type": "boolean"
        },
        "quarterlyRetention": {
          "type": "integer"
        },
        "referenceCount": {
          "type": "integer"
        },
        "systemSla": {
          "type": "boolean"
        },
        "uniqueName": {
          "type": "string"
        },
        "weeklyRetention": {
          "type": "integer"
        },
        "yearlyRetention": {
          "type": "integer"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "continuousRetention",
            "currentActiveFrequency",
            "dailyRetention",
            "dateCreated",
            "dateModified",
            "description",
            "id",
            "monthlyRetention",
            "name",
            "ownerId",
            "pitrEnabled",
            "quarterlyRetention",
            "referenceCount",
            "systemSla",
            "uniqueName",
            "weeklyRetention",
            "yearlyRetention"
          ]
        }
      }
    },
    "nutanix:index/NdbDatabaseScaleTimeMachineTag:NdbDatabaseScaleTimeMachineTag": {
      "properties": {
        "entityId": {
          "type": "string"
        },
        "entityType": {
          "type": "string"
        },
        "tagId": {
          "type": "string"
        },
        "tagName": {
          "type": "string"
        },
        "value": {
          "type": "string"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "entityId",
            "entityType",
            "tagId",
            "tagName",
            "value"
          ]
        }
      }
    },
    "nutanix:index/NdbDatabaseSnapshotLcmConfig:NdbDatabaseSnapshotLcmConfig": {
      "properties": {
        "expiryDetails": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FNdbDatabaseSnapshotLcmConfigExpiryDetail:NdbDatabaseSnapshotLcmConfigExpiryDetail"
          }
        },
        "postDeleteCommands": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FNdbDatabaseSnapshotLcmConfigPostDeleteCommand:NdbDatabaseSnapshotLcmConfigPostDeleteCommand"
          }
        },
        "preDeleteCommands": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FNdbDatabaseSnapshotLcmConfigPreDeleteCommand:NdbDatabaseSnapshotLcmConfigPreDeleteCommand"
          }
        },
        "refreshDetails": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FNdbDatabaseSnapshotLcmConfigRefreshDetail:NdbDatabaseSnapshotLcmConfigRefreshDetail"
          }
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "expiryDetails",
            "postDeleteCommands",
            "preDeleteCommands",
            "refreshDetails"
          ]
        }
      }
    },
    "nutanix:index/NdbDatabaseSnapshotLcmConfigExpiryDetail:NdbDatabaseSnapshotLcmConfigExpiryDetail": {
      "properties": {
        "deleteDatabase": {
          "type": "boolean"
        },
        "deleteTimeMachine": {
          "type": "boolean"
        },
        "deleteVm": {
          "type": "boolean"
        },
        "effectiveTimestamp": {
          "type": "string"
        },
        "expireInDays": {
          "type": "integer"
        },
        "expiryDateTimezone": {
          "type": "string",
          "description": "Default is set to Asia/Calcutta\n"
        },
        "expiryTimestamp": {
          "type": "string"
        },
        "remindBeforeInDays": {
          "type": "integer"
        },
        "userCreated": {
          "type": "boolean"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "deleteDatabase",
            "deleteTimeMachine",
            "deleteVm",
            "effectiveTimestamp",
            "expireInDays",
            "expiryDateTimezone",
            "expiryTimestamp",
            "remindBeforeInDays",
            "userCreated"
          ]
        }
      }
    },
    "nutanix:index/NdbDatabaseSnapshotLcmConfigPostDeleteCommand:NdbDatabaseSnapshotLcmConfigPostDeleteCommand": {
      "properties": {
        "command": {
          "type": "string"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "command"
          ]
        }
      }
    },
    "nutanix:index/NdbDatabaseSnapshotLcmConfigPreDeleteCommand:NdbDatabaseSnapshotLcmConfigPreDeleteCommand": {
      "properties": {
        "command": {
          "type": "string"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "command"
          ]
        }
      }
    },
    "nutanix:index/NdbDatabaseSnapshotLcmConfigRefreshDetail:NdbDatabaseSnapshotLcmConfigRefreshDetail": {
      "properties": {
        "lastRefreshDate": {
          "type": "string"
        },
        "nextRefreshDate": {
          "type": "string"
        },
        "refreshDateTimezone": {
          "type": "string"
        },
        "refreshInDays": {
          "type": "integer"
        },
        "refreshInHours": {
          "type": "integer"
        },
        "refreshInMonths": {
          "type": "integer"
        },
        "refreshTime": {
          "type": "string"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "lastRefreshDate",
            "nextRefreshDate",
            "refreshDateTimezone",
            "refreshInDays",
            "refreshInHours",
            "refreshInMonths",
            "refreshTime"
          ]
        }
      }
    },
    "nutanix:index/NdbDatabaseSnapshotProperty:NdbDatabaseSnapshotProperty": {
      "properties": {
        "description": {
          "type": "string",
          "description": "description of snapshot\n"
        },
        "name": {
          "type": "string",
          "description": "Snapshot name. Default value is era_manual_snapshot.\n"
        },
        "refId": {
          "type": "string"
        },
        "secure": {
          "type": "boolean"
        },
        "value": {
          "type": "string"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "description",
            "name",
            "refId",
            "secure",
            "value"
          ]
        }
      }
    },
    "nutanix:index/NdbDatabaseSnapshotTag:NdbDatabaseSnapshotTag": {
      "properties": {
        "entityId": {
          "type": "string"
        },
        "entityType": {
          "type": "string"
        },
        "tagId": {
          "type": "string"
        },
        "tagName": {
          "type": "string"
        },
        "value": {
          "type": "string"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "entityId",
            "entityType",
            "tagId",
            "tagName",
            "value"
          ]
        }
      }
    },
    "nutanix:index/NdbDatabaseTag:NdbDatabaseTag": {
      "properties": {
        "entityId": {
          "type": "string"
        },
        "entityType": {
          "type": "string"
        },
        "tagId": {
          "type": "string"
        },
        "tagName": {
          "type": "string"
        },
        "value": {
          "type": "string",
          "description": "- (Required) value for argument\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "entityId",
            "entityType",
            "tagId",
            "tagName",
            "value"
          ]
        }
      }
    },
    "nutanix:index/NdbDatabaseTimeMachine:NdbDatabaseTimeMachine": {
      "properties": {
        "accessLevel": {
          "type": "string"
        },
        "clone": {
          "type": "boolean"
        },
        "clones": {
          "type": "string"
        },
        "clustered": {
          "type": "boolean",
          "description": "- (Optional) If clustered database. Default: false\n"
        },
        "database": {
          "type": "string"
        },
        "databaseId": {
          "type": "string"
        },
        "dateCreated": {
          "type": "string"
        },
        "dateModified": {
          "type": "string"
        },
        "description": {
          "type": "string",
          "description": "- (Optional) The description\n"
        },
        "eaStatus": {
          "type": "string"
        },
        "id": {
          "type": "string"
        },
        "metric": {
          "type": "string"
        },
        "name": {
          "type": "string",
          "description": "- (Required) Name of the instance.\n"
        },
        "properties": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FNdbDatabaseTimeMachineProperty:NdbDatabaseTimeMachineProperty"
          },
          "description": "List of all the properties\n"
        },
        "scheduleId": {
          "type": "string"
        },
        "schedules": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FNdbDatabaseTimeMachineSchedule:NdbDatabaseTimeMachineSchedule"
          },
          "description": "- (Optional) schedule for snapshots\n"
        },
        "scope": {
          "type": "string"
        },
        "slaId": {
          "type": "string"
        },
        "slaUpdateInProgress": {
          "type": "boolean"
        },
        "slaUpdateMetadata": {
          "type": "string"
        },
        "slas": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FNdbDatabaseTimeMachineSla:NdbDatabaseTimeMachineSla"
          }
        },
        "sourceNxClusters": {
          "type": "array",
          "items": {
            "type": "string"
          }
        },
        "status": {
          "type": "string"
        },
        "tags": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FNdbDatabaseTimeMachineTag:NdbDatabaseTimeMachineTag"
          },
          "description": "- (Optional) tags\n"
        },
        "type": {
          "type": "string"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "accessLevel",
            "clone",
            "clones",
            "clustered",
            "database",
            "databaseId",
            "dateCreated",
            "dateModified",
            "description",
            "eaStatus",
            "id",
            "metric",
            "name",
            "properties",
            "scheduleId",
            "schedules",
            "scope",
            "slaId",
            "slaUpdateInProgress",
            "slaUpdateMetadata",
            "slas",
            "sourceNxClusters",
            "status",
            "tags",
            "type"
          ]
        }
      }
    },
    "nutanix:index/NdbDatabaseTimeMachineProperty:NdbDatabaseTimeMachineProperty": {
      "properties": {
        "description": {
          "type": "string",
          "description": "- (Optional) The description\n"
        },
        "name": {
          "type": "string",
          "description": "- (Required) Name of the instance.\n"
        },
        "refId": {
          "type": "string"
        },
        "secure": {
          "type": "boolean"
        },
        "value": {
          "type": "string",
          "description": "- (Required) value for argument\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "description",
            "name",
            "refId",
            "secure",
            "value"
          ]
        }
      }
    },
    "nutanix:index/NdbDatabaseTimeMachineSchedule:NdbDatabaseTimeMachineSchedule": {
      "properties": {
        "continuousSchedules": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FNdbDatabaseTimeMachineScheduleContinuousSchedule:NdbDatabaseTimeMachineScheduleContinuousSchedule"
          }
        },
        "dailySchedules": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FNdbDatabaseTimeMachineScheduleDailySchedule:NdbDatabaseTimeMachineScheduleDailySchedule"
          }
        },
        "dateCreated": {
          "type": "string"
        },
        "dateModified": {
          "type": "string"
        },
        "description": {
          "type": "string",
          "description": "- (Optional) The description\n"
        },
        "globalPolicy": {
          "type": "boolean"
        },
        "id": {
          "type": "string"
        },
        "monthlySchedules": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FNdbDatabaseTimeMachineScheduleMonthlySchedule:NdbDatabaseTimeMachineScheduleMonthlySchedule"
          }
        },
        "name": {
          "type": "string",
          "description": "- (Required) Name of the instance.\n"
        },
        "ownerId": {
          "type": "string"
        },
        "quartelySchedules": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FNdbDatabaseTimeMachineScheduleQuartelySchedule:NdbDatabaseTimeMachineScheduleQuartelySchedule"
          }
        },
        "referenceCount": {
          "type": "integer"
        },
        "snapshotTimeOfDays": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FNdbDatabaseTimeMachineScheduleSnapshotTimeOfDay:NdbDatabaseTimeMachineScheduleSnapshotTimeOfDay"
          }
        },
        "startTime": {
          "type": "string"
        },
        "systemPolicy": {
          "type": "boolean"
        },
        "timeZone": {
          "type": "string"
        },
        "uniqueName": {
          "type": "string"
        },
        "weeklySchedules": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FNdbDatabaseTimeMachineScheduleWeeklySchedule:NdbDatabaseTimeMachineScheduleWeeklySchedule"
          }
        },
        "yearlySchedules": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FNdbDatabaseTimeMachineScheduleYearlySchedule:NdbDatabaseTimeMachineScheduleYearlySchedule"
          }
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "continuousSchedules",
            "dailySchedules",
            "dateCreated",
            "dateModified",
            "description",
            "globalPolicy",
            "id",
            "monthlySchedules",
            "name",
            "ownerId",
            "quartelySchedules",
            "referenceCount",
            "snapshotTimeOfDays",
            "startTime",
            "systemPolicy",
            "timeZone",
            "uniqueName",
            "weeklySchedules",
            "yearlySchedules"
          ]
        }
      }
    },
    "nutanix:index/NdbDatabaseTimeMachineScheduleContinuousSchedule:NdbDatabaseTimeMachineScheduleContinuousSchedule": {
      "properties": {
        "enabled": {
          "type": "boolean"
        },
        "logBackupInterval": {
          "type": "integer"
        },
        "snapshotsPerDay": {
          "type": "integer"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "enabled",
            "logBackupInterval",
            "snapshotsPerDay"
          ]
        }
      }
    },
    "nutanix:index/NdbDatabaseTimeMachineScheduleDailySchedule:NdbDatabaseTimeMachineScheduleDailySchedule": {
      "properties": {
        "enabled": {
          "type": "boolean"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "enabled"
          ]
        }
      }
    },
    "nutanix:index/NdbDatabaseTimeMachineScheduleMonthlySchedule:NdbDatabaseTimeMachineScheduleMonthlySchedule": {
      "properties": {
        "dayOfMonth": {
          "type": "integer"
        },
        "enabled": {
          "type": "boolean"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "dayOfMonth",
            "enabled"
          ]
        }
      }
    },
    "nutanix:index/NdbDatabaseTimeMachineScheduleQuartelySchedule:NdbDatabaseTimeMachineScheduleQuartelySchedule": {
      "properties": {
        "dayOfMonth": {
          "type": "integer"
        },
        "enabled": {
          "type": "boolean"
        },
        "startMonth": {
          "type": "string"
        },
        "startMonthValue": {
          "type": "string"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "dayOfMonth",
            "enabled",
            "startMonth",
            "startMonthValue"
          ]
        }
      }
    },
    "nutanix:index/NdbDatabaseTimeMachineScheduleSnapshotTimeOfDay:NdbDatabaseTimeMachineScheduleSnapshotTimeOfDay": {
      "properties": {
        "extra": {
          "type": "boolean"
        },
        "hours": {
          "type": "integer",
          "description": "- (Required) hours\n"
        },
        "minutes": {
          "type": "integer",
          "description": "- (Required) minutes\n"
        },
        "seconds": {
          "type": "integer",
          "description": "- (Required) seconds\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "extra",
            "hours",
            "minutes",
            "seconds"
          ]
        }
      }
    },
    "nutanix:index/NdbDatabaseTimeMachineScheduleWeeklySchedule:NdbDatabaseTimeMachineScheduleWeeklySchedule": {
      "properties": {
        "dayOfWeek": {
          "type": "string"
        },
        "dayOfWeekValue": {
          "type": "string"
        },
        "enabled": {
          "type": "boolean"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "dayOfWeek",
            "dayOfWeekValue",
            "enabled"
          ]
        }
      }
    },
    "nutanix:index/NdbDatabaseTimeMachineScheduleYearlySchedule:NdbDatabaseTimeMachineScheduleYearlySchedule": {
      "properties": {
        "dayOfMonth": {
          "type": "integer"
        },
        "enabled": {
          "type": "boolean"
        },
        "month": {
          "type": "string",
          "description": "- (Required) month for snapshot\n"
        },
        "monthValue": {
          "type": "string"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "dayOfMonth",
            "enabled",
            "month",
            "monthValue"
          ]
        }
      }
    },
    "nutanix:index/NdbDatabaseTimeMachineSla:NdbDatabaseTimeMachineSla": {
      "properties": {
        "continuousRetention": {
          "type": "integer"
        },
        "currentActiveFrequency": {
          "type": "string"
        },
        "dailyRetention": {
          "type": "integer"
        },
        "dateCreated": {
          "type": "string"
        },
        "dateModified": {
          "type": "string"
        },
        "description": {
          "type": "string",
          "description": "- (Optional) The description\n"
        },
        "id": {
          "type": "string"
        },
        "monthlyRetention": {
          "type": "integer"
        },
        "name": {
          "type": "string",
          "description": "- (Required) Name of the instance.\n"
        },
        "ownerId": {
          "type": "string"
        },
        "pitrEnabled": {
          "type": "boolean"
        },
        "quarterlyRetention": {
          "type": "integer"
        },
        "referenceCount": {
          "type": "integer"
        },
        "systemSla": {
          "type": "boolean"
        },
        "uniqueName": {
          "type": "string"
        },
        "weeklyRetention": {
          "type": "integer"
        },
        "yearlyRetention": {
          "type": "integer"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "continuousRetention",
            "currentActiveFrequency",
            "dailyRetention",
            "dateCreated",
            "dateModified",
            "description",
            "id",
            "monthlyRetention",
            "name",
            "ownerId",
            "pitrEnabled",
            "quarterlyRetention",
            "referenceCount",
            "systemSla",
            "uniqueName",
            "weeklyRetention",
            "yearlyRetention"
          ]
        }
      }
    },
    "nutanix:index/NdbDatabaseTimeMachineTag:NdbDatabaseTimeMachineTag": {
      "properties": {
        "entityId": {
          "type": "string"
        },
        "entityType": {
          "type": "string"
        },
        "tagId": {
          "type": "string"
        },
        "tagName": {
          "type": "string"
        },
        "value": {
          "type": "string",
          "description": "- (Required) value for argument\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "entityId",
            "entityType",
            "tagId",
            "tagName",
            "value"
          ]
        }
      }
    },
    "nutanix:index/NdbDatabaseTimemachineinfo:NdbDatabaseTimemachineinfo": {
      "properties": {
        "autotunelogdrive": {
          "type": "boolean",
          "description": "- (Optional) enable auto tune log drive. Default: true\n"
        },
        "description": {
          "type": "string",
          "description": "- (Optional) description of time machine\n"
        },
        "name": {
          "type": "string",
          "description": "- (Required) name of time machine\n"
        },
        "schedule": {
          "$ref": "#/types/nutanix:index%2FNdbDatabaseTimemachineinfoSchedule:NdbDatabaseTimemachineinfoSchedule",
          "description": "- (Optional) schedule for snapshots\n"
        },
        "slaDetails": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FNdbDatabaseTimemachineinfoSlaDetail:NdbDatabaseTimemachineinfoSlaDetail"
          },
          "description": "-  (optional) SLA details for HA instance\n"
        },
        "slaid": {
          "type": "string",
          "description": "- (Optional) SLA ID for single instance\n"
        },
        "tags": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FNdbDatabaseTimemachineinfoTag:NdbDatabaseTimemachineinfoTag"
          },
          "description": "- (Optional) tags\n"
        }
      },
      "type": "object",
      "required": [
        "name",
        "schedule"
      ],
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "name",
            "schedule",
            "tags"
          ]
        }
      }
    },
    "nutanix:index/NdbDatabaseTimemachineinfoSchedule:NdbDatabaseTimemachineinfoSchedule": {
      "properties": {
        "continuousschedule": {
          "$ref": "#/types/nutanix:index%2FNdbDatabaseTimemachineinfoScheduleContinuousschedule:NdbDatabaseTimemachineinfoScheduleContinuousschedule",
          "description": "- (Optional) snapshot freq and log config\n"
        },
        "monthlyschedule": {
          "$ref": "#/types/nutanix:index%2FNdbDatabaseTimemachineinfoScheduleMonthlyschedule:NdbDatabaseTimemachineinfoScheduleMonthlyschedule",
          "description": "- (Optional) monthly snapshot config\n"
        },
        "quartelyschedule": {
          "$ref": "#/types/nutanix:index%2FNdbDatabaseTimemachineinfoScheduleQuartelyschedule:NdbDatabaseTimemachineinfoScheduleQuartelyschedule",
          "description": "- (Optional) quaterly snapshot config\n"
        },
        "snapshottimeofday": {
          "$ref": "#/types/nutanix:index%2FNdbDatabaseTimemachineinfoScheduleSnapshottimeofday:NdbDatabaseTimemachineinfoScheduleSnapshottimeofday",
          "description": "- (Optional) daily snapshot config\n"
        },
        "weeklyschedule": {
          "$ref": "#/types/nutanix:index%2FNdbDatabaseTimemachineinfoScheduleWeeklyschedule:NdbDatabaseTimemachineinfoScheduleWeeklyschedule",
          "description": "- (Optional) weekly snapshot config\n"
        },
        "yearlyschedule": {
          "$ref": "#/types/nutanix:index%2FNdbDatabaseTimemachineinfoScheduleYearlyschedule:NdbDatabaseTimemachineinfoScheduleYearlyschedule",
          "description": "- (Optional) yearly snapshot config\n"
        }
      },
      "type": "object"
    },
    "nutanix:index/NdbDatabaseTimemachineinfoScheduleContinuousschedule:NdbDatabaseTimemachineinfoScheduleContinuousschedule": {
      "properties": {
        "enabled": {
          "type": "boolean",
          "description": "- (Required) to enable\n"
        },
        "logbackupinterval": {
          "type": "integer",
          "description": "- (Required) log catchup interval for database\n"
        },
        "snapshotsperday": {
          "type": "integer",
          "description": "- (Required) num of snapshots per day\n"
        }
      },
      "type": "object",
      "required": [
        "enabled",
        "logbackupinterval",
        "snapshotsperday"
      ]
    },
    "nutanix:index/NdbDatabaseTimemachineinfoScheduleMonthlyschedule:NdbDatabaseTimemachineinfoScheduleMonthlyschedule": {
      "properties": {
        "dayofmonth": {
          "type": "integer",
          "description": "- (Required) day of month to take snapshot\n"
        },
        "enabled": {
          "type": "boolean",
          "description": "- (Required) to enable\n"
        }
      },
      "type": "object",
      "required": [
        "dayofmonth",
        "enabled"
      ]
    },
    "nutanix:index/NdbDatabaseTimemachineinfoScheduleQuartelyschedule:NdbDatabaseTimemachineinfoScheduleQuartelyschedule": {
      "properties": {
        "dayofmonth": {
          "type": "integer",
          "description": "- (Required) month's day for snapshot\n"
        },
        "enabled": {
          "type": "boolean",
          "description": "- (Required) to enable\n"
        },
        "startmonth": {
          "type": "string",
          "description": "- (Required) quarter start month\n"
        }
      },
      "type": "object",
      "required": [
        "dayofmonth",
        "enabled",
        "startmonth"
      ]
    },
    "nutanix:index/NdbDatabaseTimemachineinfoScheduleSnapshottimeofday:NdbDatabaseTimemachineinfoScheduleSnapshottimeofday": {
      "properties": {
        "hours": {
          "type": "integer",
          "description": "- (Required) hours\n"
        },
        "minutes": {
          "type": "integer",
          "description": "- (Required) minutes\n"
        },
        "seconds": {
          "type": "integer",
          "description": "- (Required) seconds\n"
        }
      },
      "type": "object",
      "required": [
        "hours",
        "minutes",
        "seconds"
      ]
    },
    "nutanix:index/NdbDatabaseTimemachineinfoScheduleWeeklyschedule:NdbDatabaseTimemachineinfoScheduleWeeklyschedule": {
      "properties": {
        "dayofweek": {
          "type": "string",
          "description": "- (Required) day of week to take snaphsot. Eg. \"WEDNESDAY\"\n"
        },
        "enabled": {
          "type": "boolean",
          "description": "- (Required) to enable\n"
        }
      },
      "type": "object",
      "required": [
        "dayofweek",
        "enabled"
      ]
    },
    "nutanix:index/NdbDatabaseTimemachineinfoScheduleYearlyschedule:NdbDatabaseTimemachineinfoScheduleYearlyschedule": {
      "properties": {
        "dayofmonth": {
          "type": "integer",
          "description": "- (Required) day of month to take snapshot\n"
        },
        "enabled": {
          "type": "boolean",
          "description": "- (Required) to enable\n"
        },
        "month": {
          "type": "string",
          "description": "- (Required) month for snapshot\n"
        }
      },
      "type": "object",
      "required": [
        "dayofmonth",
        "enabled",
        "month"
      ]
    },
    "nutanix:index/NdbDatabaseTimemachineinfoSlaDetail:NdbDatabaseTimemachineinfoSlaDetail": {
      "properties": {
        "primarySlas": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FNdbDatabaseTimemachineinfoSlaDetailPrimarySla:NdbDatabaseTimemachineinfoSlaDetailPrimarySla"
          },
          "description": "- (Required) primary sla details\n* `primary_sla.sla_id` :- (Required) sla id\n* `primary_sla.nx_cluster_ids` -: (Optioanl) cluster ids\n"
        }
      },
      "type": "object"
    },
    "nutanix:index/NdbDatabaseTimemachineinfoSlaDetailPrimarySla:NdbDatabaseTimemachineinfoSlaDetailPrimarySla": {
      "properties": {
        "nxClusterIds": {
          "type": "array",
          "items": {
            "type": "string"
          }
        },
        "slaId": {
          "type": "string",
          "description": "description of SLA ID.\n"
        }
      },
      "type": "object",
      "required": [
        "slaId"
      ]
    },
    "nutanix:index/NdbDatabaseTimemachineinfoTag:NdbDatabaseTimemachineinfoTag": {
      "properties": {
        "entityId": {
          "type": "string"
        },
        "entityType": {
          "type": "string"
        },
        "tagId": {
          "type": "string"
        },
        "tagName": {
          "type": "string"
        },
        "value": {
          "type": "string",
          "description": "- (Required) value for argument\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "entityId",
            "entityType",
            "tagId",
            "tagName",
            "value"
          ]
        }
      }
    },
    "nutanix:index/NdbDbserverVmCredential:NdbDbserverVmCredential": {
      "properties": {
        "label": {
          "type": "string"
        },
        "password": {
          "type": "string"
        },
        "username": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "password",
        "username"
      ]
    },
    "nutanix:index/NdbDbserverVmMaintenanceTasks:NdbDbserverVmMaintenanceTasks": {
      "properties": {
        "maintenanceWindowId": {
          "type": "string",
          "description": "Associate an existing maintenance window id. NDB starts OS patching or database patching as per the schedule defined in the maintenance window.\n"
        },
        "tasks": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FNdbDbserverVmMaintenanceTasksTask:NdbDbserverVmMaintenanceTasksTask"
          },
          "description": "Tasks for the maintenance.\n* `tasks.task_type`: use this option if you want NDB to perform database patching or OS patching automatically. Supports [ OS_PATCHING, DB_PATCHING ].\n* `tasks.pre_command`: add pre (operating system and database patching) commands.\n* `tasks.post_command`:add post (operating system and database patching) commands.\n"
        }
      },
      "type": "object"
    },
    "nutanix:index/NdbDbserverVmMaintenanceTasksTask:NdbDbserverVmMaintenanceTasksTask": {
      "properties": {
        "postCommand": {
          "type": "string"
        },
        "preCommand": {
          "type": "string"
        },
        "taskType": {
          "type": "string"
        }
      },
      "type": "object"
    },
    "nutanix:index/NdbDbserverVmPostgresDatabase:NdbDbserverVmPostgresDatabase": {
      "properties": {
        "clientPublicKey": {
          "type": "string",
          "description": "use SSH public keys to access the database server VM.\n"
        },
        "vmName": {
          "type": "string",
          "description": "name for the database server VM.\n"
        }
      },
      "type": "object",
      "required": [
        "vmName"
      ]
    },
    "nutanix:index/NdbDbserverVmProperty:NdbDbserverVmProperty": {
      "properties": {
        "name": {
          "type": "string",
          "description": "name of the dbserver vm\n"
        },
        "value": {
          "type": "string"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "name",
            "value"
          ]
        }
      }
    },
    "nutanix:index/NdbDbserverVmTag:NdbDbserverVmTag": {
      "properties": {
        "entityId": {
          "type": "string"
        },
        "entityType": {
          "type": "string"
        },
        "tagId": {
          "type": "string"
        },
        "tagName": {
          "type": "string"
        },
        "value": {
          "type": "string"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "entityId",
            "entityType",
            "tagId",
            "tagName",
            "value"
          ]
        }
      }
    },
    "nutanix:index/NdbLinkedDatabasesInfo:NdbLinkedDatabasesInfo": {
      "properties": {
        "infos": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FNdbLinkedDatabasesInfoInfo:NdbLinkedDatabasesInfoInfo"
          }
        },
        "secureInfo": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          }
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "infos",
            "secureInfo"
          ]
        }
      }
    },
    "nutanix:index/NdbLinkedDatabasesInfoInfo:NdbLinkedDatabasesInfoInfo": {
      "properties": {
        "createdBy": {
          "type": "string"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "createdBy"
          ]
        }
      }
    },
    "nutanix:index/NdbMaintenanceTaskEntityTaskAssociation:NdbMaintenanceTaskEntityTaskAssociation": {
      "properties": {
        "accessLevel": {
          "type": "string",
          "description": "access level of tasks\n"
        },
        "dateCreated": {
          "type": "string",
          "description": "created date of task\n"
        },
        "dateModified": {
          "type": "string",
          "description": "modified date of task\n"
        },
        "description": {
          "type": "string",
          "description": "description of maintenance window\n"
        },
        "entity": {
          "type": "string"
        },
        "entityId": {
          "type": "string",
          "description": "entity id\n"
        },
        "entityType": {
          "type": "string",
          "description": "type of the entity. i.e. DBSERVER\n"
        },
        "id": {
          "type": "string",
          "description": "id of maintenance window\n"
        },
        "maintenanceWindowId": {
          "type": "string",
          "description": "maintenance window id which has to be associated\n"
        },
        "maintenanceWindowOwnerId": {
          "type": "string",
          "description": "maintenance window owner id\n"
        },
        "name": {
          "type": "string",
          "description": "name of of maintenance window\n"
        },
        "ownerId": {
          "type": "string",
          "description": "owner id of task\n"
        },
        "payloads": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FNdbMaintenanceTaskEntityTaskAssociationPayload:NdbMaintenanceTaskEntityTaskAssociationPayload"
          },
          "description": "list of pre post commands of OS or DB task\n"
        },
        "properties": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FNdbMaintenanceTaskEntityTaskAssociationProperty:NdbMaintenanceTaskEntityTaskAssociationProperty"
          },
          "description": "properties of task\n"
        },
        "status": {
          "type": "string",
          "description": "status of task\n"
        },
        "tags": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FNdbMaintenanceTaskEntityTaskAssociationTag:NdbMaintenanceTaskEntityTaskAssociationTag"
          },
          "description": "tags of task\n"
        },
        "taskType": {
          "type": "string",
          "description": "type of the task. OS or DB\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "accessLevel",
            "dateCreated",
            "dateModified",
            "description",
            "entity",
            "entityId",
            "entityType",
            "id",
            "maintenanceWindowId",
            "maintenanceWindowOwnerId",
            "name",
            "ownerId",
            "payloads",
            "properties",
            "status",
            "tags",
            "taskType"
          ]
        }
      }
    },
    "nutanix:index/NdbMaintenanceTaskEntityTaskAssociationPayload:NdbMaintenanceTaskEntityTaskAssociationPayload": {
      "properties": {
        "prePostCommands": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FNdbMaintenanceTaskEntityTaskAssociationPayloadPrePostCommand:NdbMaintenanceTaskEntityTaskAssociationPayloadPrePostCommand"
          },
          "description": "Pre Post command of Task\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "prePostCommands"
          ]
        }
      }
    },
    "nutanix:index/NdbMaintenanceTaskEntityTaskAssociationPayloadPrePostCommand:NdbMaintenanceTaskEntityTaskAssociationPayloadPrePostCommand": {
      "properties": {
        "postCommand": {
          "type": "string",
          "description": "post command of task\n"
        },
        "preCommand": {
          "type": "string",
          "description": "pre command of task\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "postCommand",
            "preCommand"
          ]
        }
      }
    },
    "nutanix:index/NdbMaintenanceTaskEntityTaskAssociationProperty:NdbMaintenanceTaskEntityTaskAssociationProperty": {
      "properties": {
        "name": {
          "type": "string",
          "description": "name of of maintenance window\n"
        },
        "value": {
          "type": "string"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "name",
            "value"
          ]
        }
      }
    },
    "nutanix:index/NdbMaintenanceTaskEntityTaskAssociationTag:NdbMaintenanceTaskEntityTaskAssociationTag": {
      "properties": {
        "entityId": {
          "type": "string",
          "description": "entity id\n"
        },
        "entityType": {
          "type": "string",
          "description": "type of the entity. i.e. DBSERVER\n"
        },
        "tagId": {
          "type": "string"
        },
        "tagName": {
          "type": "string"
        },
        "value": {
          "type": "string"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "entityId",
            "entityType",
            "tagId",
            "tagName",
            "value"
          ]
        }
      }
    },
    "nutanix:index/NdbMaintenanceTaskTask:NdbMaintenanceTaskTask": {
      "properties": {
        "postCommand": {
          "type": "string",
          "description": "command that you want to run after patching the OS/DB\n"
        },
        "preCommand": {
          "type": "string",
          "description": "command that you want to run before patching the OS/DB\n"
        },
        "taskType": {
          "type": "string",
          "description": "type of task. Supports [ \"OS_PATCHING\", \"DB_PATCHING\" ]\n"
        }
      },
      "type": "object"
    },
    "nutanix:index/NdbMaintenanceWindowEntityTaskAssoc:NdbMaintenanceWindowEntityTaskAssoc": {
      "properties": {
        "accessLevel": {
          "type": "string",
          "description": "access level\n"
        },
        "dateCreated": {
          "type": "string",
          "description": "created date of maintenance window\n"
        },
        "dateModified": {
          "type": "string",
          "description": "modified date of maintenance window\n"
        },
        "description": {
          "type": "string",
          "description": "Description for maintenance window\n"
        },
        "entity": {
          "type": "string"
        },
        "entityId": {
          "type": "string"
        },
        "entityType": {
          "type": "string"
        },
        "id": {
          "type": "string"
        },
        "maintenanceWindowId": {
          "type": "string"
        },
        "maintenanceWindowOwnerId": {
          "type": "string"
        },
        "name": {
          "type": "string",
          "description": "Name for the maintenance window.\n"
        },
        "ownerId": {
          "type": "string",
          "description": "owner id of maintenance window\n"
        },
        "payloads": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FNdbMaintenanceWindowEntityTaskAssocPayload:NdbMaintenanceWindowEntityTaskAssocPayload"
          }
        },
        "properties": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FNdbMaintenanceWindowEntityTaskAssocProperty:NdbMaintenanceWindowEntityTaskAssocProperty"
          },
          "description": "properties of maintenance window\n"
        },
        "status": {
          "type": "string",
          "description": "status of maintennace window\n"
        },
        "tags": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FNdbMaintenanceWindowEntityTaskAssocTag:NdbMaintenanceWindowEntityTaskAssocTag"
          },
          "description": "tags of maintenance window\n"
        },
        "taskType": {
          "type": "string"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "accessLevel",
            "dateCreated",
            "dateModified",
            "description",
            "entity",
            "entityId",
            "entityType",
            "id",
            "maintenanceWindowId",
            "maintenanceWindowOwnerId",
            "name",
            "ownerId",
            "payloads",
            "properties",
            "status",
            "tags",
            "taskType"
          ]
        }
      }
    },
    "nutanix:index/NdbMaintenanceWindowEntityTaskAssocPayload:NdbMaintenanceWindowEntityTaskAssocPayload": {
      "properties": {
        "prePostCommands": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FNdbMaintenanceWindowEntityTaskAssocPayloadPrePostCommand:NdbMaintenanceWindowEntityTaskAssocPayloadPrePostCommand"
          }
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "prePostCommands"
          ]
        }
      }
    },
    "nutanix:index/NdbMaintenanceWindowEntityTaskAssocPayloadPrePostCommand:NdbMaintenanceWindowEntityTaskAssocPayloadPrePostCommand": {
      "properties": {
        "postCommand": {
          "type": "string"
        },
        "preCommand": {
          "type": "string"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "postCommand",
            "preCommand"
          ]
        }
      }
    },
    "nutanix:index/NdbMaintenanceWindowEntityTaskAssocProperty:NdbMaintenanceWindowEntityTaskAssocProperty": {
      "properties": {
        "name": {
          "type": "string",
          "description": "Name for the maintenance window.\n"
        },
        "value": {
          "type": "string"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "name",
            "value"
          ]
        }
      }
    },
    "nutanix:index/NdbMaintenanceWindowEntityTaskAssocTag:NdbMaintenanceWindowEntityTaskAssocTag": {
      "properties": {
        "entityId": {
          "type": "string"
        },
        "entityType": {
          "type": "string"
        },
        "tagId": {
          "type": "string"
        },
        "tagName": {
          "type": "string"
        },
        "value": {
          "type": "string"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "entityId",
            "entityType",
            "tagId",
            "tagName",
            "value"
          ]
        }
      }
    },
    "nutanix:index/NdbMaintenanceWindowProperty:NdbMaintenanceWindowProperty": {
      "properties": {
        "name": {
          "type": "string",
          "description": "Name for the maintenance window.\n"
        },
        "value": {
          "type": "string"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "name",
            "value"
          ]
        }
      }
    },
    "nutanix:index/NdbMaintenanceWindowSchedule:NdbMaintenanceWindowSchedule": {
      "properties": {
        "dayOfWeek": {
          "type": "string",
          "description": "Day of the week to trigger maintenance window. Supports [ MONDAY, TUESDAY, WEDNESDAY, THURSDAY, FRIDAY, SATURDAY, SUNDAY ]\n"
        },
        "duration": {
          "type": "integer",
          "description": "duration in hours. Default is 2\n"
        },
        "hour": {
          "type": "integer"
        },
        "minute": {
          "type": "integer"
        },
        "recurrence": {
          "type": "string",
          "description": "Supported values [ MONTHLY, WEEKLY ]\n"
        },
        "startTime": {
          "type": "string",
          "description": "start time for maintenance window to trigger\n"
        },
        "threshold": {
          "type": "string"
        },
        "timezone": {
          "type": "string",
          "description": "timezone . Default is Asia/Calcutta .\n"
        },
        "weekOfMonth": {
          "type": "integer",
          "description": "week of the month. Supports [1, 2, 3, 4] .\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "dayOfWeek",
            "duration",
            "hour",
            "minute",
            "recurrence",
            "threshold",
            "timezone",
            "weekOfMonth"
          ]
        }
      }
    },
    "nutanix:index/NdbMaintenanceWindowTag:NdbMaintenanceWindowTag": {
      "properties": {
        "entityId": {
          "type": "string"
        },
        "entityType": {
          "type": "string"
        },
        "tagId": {
          "type": "string"
        },
        "tagName": {
          "type": "string"
        },
        "value": {
          "type": "string"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "entityId",
            "entityType",
            "tagId",
            "tagName",
            "value"
          ]
        }
      }
    },
    "nutanix:index/NdbNetworkIpPool:NdbNetworkIpPool": {
      "properties": {
        "addresses": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FNdbNetworkIpPoolAddress:NdbNetworkIpPoolAddress"
          }
        },
        "endIp": {
          "type": "string",
          "description": "ending IP address range for new database servers\n"
        },
        "id": {
          "type": "string"
        },
        "modifiedBy": {
          "type": "string"
        },
        "startIp": {
          "type": "string",
          "description": "starting IP address range for new database servers\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "addresses",
            "endIp",
            "id",
            "modifiedBy",
            "startIp"
          ]
        }
      }
    },
    "nutanix:index/NdbNetworkIpPoolAddress:NdbNetworkIpPoolAddress": {
      "properties": {
        "ip": {
          "type": "string"
        },
        "status": {
          "type": "string"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "ip",
            "status"
          ]
        }
      }
    },
    "nutanix:index/NdbNetworkPropertiesMap:NdbNetworkPropertiesMap": {
      "properties": {
        "vlanGateway": {
          "type": "string"
        },
        "vlanPrimaryDns": {
          "type": "string"
        },
        "vlanSecondaryDns": {
          "type": "string"
        },
        "vlanSubnetMask": {
          "type": "string"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "vlanGateway",
            "vlanPrimaryDns",
            "vlanSecondaryDns",
            "vlanSubnetMask"
          ]
        }
      }
    },
    "nutanix:index/NdbNetworkProperty:NdbNetworkProperty": {
      "properties": {
        "name": {
          "type": "string",
          "description": "Name of the vlan to be attached in NDB\n"
        },
        "secure": {
          "type": "boolean"
        },
        "value": {
          "type": "string"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "name",
            "secure",
            "value"
          ]
        }
      }
    },
    "nutanix:index/NdbProfileClusterAvailability:NdbProfileClusterAvailability": {
      "properties": {
        "dateCreated": {
          "type": "string"
        },
        "dateModified": {
          "type": "string"
        },
        "nxClusterId": {
          "type": "string",
          "description": "cluster on which profile created\n"
        },
        "ownerId": {
          "type": "string"
        },
        "profileId": {
          "type": "string"
        },
        "status": {
          "type": "string",
          "description": "status of profile\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "dateCreated",
            "dateModified",
            "nxClusterId",
            "ownerId",
            "profileId",
            "status"
          ]
        }
      }
    },
    "nutanix:index/NdbProfileComputeProfile:NdbProfileComputeProfile": {
      "properties": {
        "corePerCpu": {
          "type": "string",
          "description": "number of cores per vCPU for the database server VM.\n"
        },
        "cpus": {
          "type": "string",
          "description": "number of vCPUs for the database server VM.\n"
        },
        "memorySize": {
          "type": "string",
          "description": "amount of memory for the database server VM.\n"
        }
      },
      "type": "object"
    },
    "nutanix:index/NdbProfileDatabaseParameterProfile:NdbProfileDatabaseParameterProfile": {
      "properties": {
        "postgresDatabases": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FNdbProfileDatabaseParameterProfilePostgresDatabase:NdbProfileDatabaseParameterProfilePostgresDatabase"
          },
          "description": "Database parameters suuported for postgress.\n* `postgres_database.max_connections`: (Optional) Determines the maximum number of concurrent connections to the database server. The default is set to 100\n* `postgres_database.max_replication_slots`: (Optional) Specifies the maximum number of replication slots that the server can support. The default is zero.<span pulumi-lang-nodejs=\" walLevel \" pulumi-lang-dotnet=\" WalLevel \" pulumi-lang-go=\" walLevel \" pulumi-lang-python=\" wal_level \" pulumi-lang-yaml=\" walLevel \" pulumi-lang-java=\" walLevel \"> wal_level </span>must be set to archive or higher to allow replication slots to be used. Setting it to a lower value than the number of currently existing replication slots will prevent the server from starting.\n* `postgres_database.effective_io_concurrency`: (Optional) Sets the number of concurrent disk I/O operations that PostgreSQL expects can be executed simultaneously. Raising this value will increase the number of I/O operations that any individual PostgreSQL session attempts to initiate in parallel.\n* `postgres_database.timezone`: (Optional) Sets the time zone for displaying and interpreting time stamps. Defult is UTC .\n* `postgres_database.max_prepared_transactions`: (Optional) Sets the maximum number of transactions that can be in the prepared state simultaneously. Setting this parameter to zero (which is the default) disables the prepared-transaction feature.\n* `postgres_database.max_locks_per_transaction`: (Optional) This parameter controls the average number of object locks allocated for each transaction; individual transactions can lock more objects as long as the locks of all transactions fit in the lock table. Default is 64.\n* `postgres_database.max_wal_senders`: (Optional) Specifies the maximum number of concurrent connections from standby servers or streaming base backup clients (i.e., the maximum number of simultaneously running WAL sender processes). The default is 10.\n* `postgres_database.max_worker_processes`: (Optional) Sets the maximum number of background processes that the system can support. The default is 8.\n* `postgres_database.min_wal_size`: (Optional) As long as WAL disk usage stays below this setting, old WAL files are always recycled for future use at a checkpoint, rather than removed. This can be used to ensure that enough WAL space is reserved to handle spikes in WAL usage, for example when running large batch jobs. The default is 80 MB.\n* `postgres_database.max_wal_size`: (Optional) Maximum size to let the WAL grow to between automatic WAL checkpoints. The default is 1 GB\n* `postgres_database.checkpoint_timeout`: (Optional) Sets the maximum time between automatic WAL checkpoints . High Value gives Good Performance, but takes More Recovery Time, Reboot time. can reduce the I/O load on your system, especially when using large values for shared_buffers. Default is 5min\n* `postgres_database.autovacuum`: (Optional) Controls whether the server should run the autovacuum launcher daemon. This is on by default; however,<span pulumi-lang-nodejs=\" trackCounts \" pulumi-lang-dotnet=\" TrackCounts \" pulumi-lang-go=\" trackCounts \" pulumi-lang-python=\" track_counts \" pulumi-lang-yaml=\" trackCounts \" pulumi-lang-java=\" trackCounts \"> track_counts </span>must also be enabled for autovacuum to work.\n* `postgres_database.checkpoint_completion_target`: (Optional)\nSpecifies the target of checkpoint completion, as a fraction of total time between checkpoints. Time spent flushing dirty buffers during checkpoint, as fraction of checkpoint interval . Formula - (checkpoint_timeout - 2min) / checkpoint_timeout. The default is 0.5.\n* `postgres_database.autovacuum_freeze_max_age`: (Optional) Age at which to autovacuum a table to prevent transaction ID wraparound. Default is 200000000\n* `postgres_database.autovacuum_vacuum_threshold`: (Optional) Min number of row updates before vacuum. Minimum number of tuple updates or deletes prior to vacuum. Take value in KB. Default is 50 .\n* `postgres_database.autovacuum_vacuum_scale_factor`: (Optional) Number of tuple updates or deletes prior to vacuum as a fraction of reltuples. Default is 0.2\n* `postgres_database.autovacuum_work_mem`: (Optional) Sets the maximum memory to be used by each autovacuum worker process. Unit is in KB. Default is -1\n* `postgres_database.autovacuum_max_workers`: (Optional) Sets the maximum number of simultaneously running autovacuum worker processes. Default is 3\n* `postgres_database.autovacuum_vacuum_cost_delay`: (Optional) Vacuum cost delay in milliseconds, for autovacuum. Specifies the cost delay value that will be used in automatic VACUUM operation. Default is 2ms\n* `postgres_database.wal_buffers`: (Optional)\nSets the number of disk-page buffers in shared memory for WAL. The amount of shared memory used for WAL data that has not yet been written to disk. The default is -1.\n* `postgres_database.synchronous_commit`: (Optional) Sets the current transaction's synchronization level. Specifies whether transaction commit will wait for WAL records to be written to disk before the command returns a success indication to the client. Default is on.\n* `postgres_database.random_page_cost`: (Optional) Sets the planner's estimate of the cost of a nonsequentially fetched disk page. Sets the planner's estimate of the cost of a non-sequentially-fetched disk page. The default is 4.0.\n* `postgres_database.wal_keep_segments`: (Optional) Sets the number of WAL files held for standby servers, Specifies the minimum number of past log file segments kept in the<span pulumi-lang-nodejs=\" pgWal \" pulumi-lang-dotnet=\" PgWal \" pulumi-lang-go=\" pgWal \" pulumi-lang-python=\" pg_wal \" pulumi-lang-yaml=\" pgWal \" pulumi-lang-java=\" pgWal \"> pg_wal </span>directory. Default is 700 .\n"
        }
      },
      "type": "object"
    },
    "nutanix:index/NdbProfileDatabaseParameterProfilePostgresDatabase:NdbProfileDatabaseParameterProfilePostgresDatabase": {
      "properties": {
        "autovacuum": {
          "type": "string"
        },
        "autovacuumFreezeMaxAge": {
          "type": "string"
        },
        "autovacuumMaxWorkers": {
          "type": "string"
        },
        "autovacuumVacuumCostDelay": {
          "type": "string"
        },
        "autovacuumVacuumScaleFactor": {
          "type": "string"
        },
        "autovacuumVacuumThreshold": {
          "type": "string"
        },
        "autovacuumWorkMem": {
          "type": "string"
        },
        "checkpointCompletionTarget": {
          "type": "string"
        },
        "checkpointTimeout": {
          "type": "string"
        },
        "effectiveIoConcurrency": {
          "type": "string"
        },
        "maxConnections": {
          "type": "string"
        },
        "maxLocksPerTransaction": {
          "type": "string"
        },
        "maxPreparedTransactions": {
          "type": "string"
        },
        "maxReplicationSlots": {
          "type": "string"
        },
        "maxWalSenders": {
          "type": "string"
        },
        "maxWalSize": {
          "type": "string"
        },
        "maxWorkerProcesses": {
          "type": "string"
        },
        "minWalSize": {
          "type": "string"
        },
        "randomPageCost": {
          "type": "string"
        },
        "synchronousCommit": {
          "type": "string"
        },
        "timezone": {
          "type": "string"
        },
        "walBuffers": {
          "type": "string"
        },
        "walKeepSegments": {
          "type": "string"
        }
      },
      "type": "object"
    },
    "nutanix:index/NdbProfileNetworkProfile:NdbProfileNetworkProfile": {
      "properties": {
        "postgresDatabases": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FNdbProfileNetworkProfilePostgresDatabase:NdbProfileNetworkProfilePostgresDatabase"
          },
          "description": "Postgres Info to create network profile\n\n* `postgres_database.single_instance`: (Optional) Info for postgres database to create single instance network profile.\n* `postgres_database.single_instance.vlan_name`: (Required) specify the VLAN to provide the IP address used to connect the database from the public network.\n* `postgres_database.single_instance.enable_ip_address_selection`: (Optional) If Advanced Network Segmentation is enabled, then this vLAN needs to be a static vLAN and needs to be true.\n\n* `postgres_database.ha_instance`: (Optional) Info for craeting Network profile for HA instance\n* `postgres_database.ha_instance.vlan_name`: (Required) specify the VLANs for network\n* `postgres_database.ha_instance.cluster_name`: (Required) specify the cluster name associated with given VLANs\n* `postgres_database.ha_instance.cluster_id`: (Optional) specify the cluster ids associated with given VLANs\n* `postgres_database.ha_instance.num_of_clusters`: (Required) number of cluster attached to network profile\n"
        },
        "topology": {
          "type": "string",
          "description": "Topology supported for network profile. Allowed values are \"cluster\" and \"single\"\n"
        },
        "versionClusterAssociations": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FNdbProfileNetworkProfileVersionClusterAssociation:NdbProfileNetworkProfileVersionClusterAssociation"
          },
          "description": "cluster associated with VLAN. this is used with Single instance for postgres database.\n* `version_cluster_association.nx_cluster_id`: (Required) cluster id for associated VLAN.\n"
        }
      },
      "type": "object",
      "required": [
        "topology"
      ]
    },
    "nutanix:index/NdbProfileNetworkProfilePostgresDatabase:NdbProfileNetworkProfilePostgresDatabase": {
      "properties": {
        "haInstances": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FNdbProfileNetworkProfilePostgresDatabaseHaInstance:NdbProfileNetworkProfilePostgresDatabaseHaInstance"
          }
        },
        "singleInstances": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FNdbProfileNetworkProfilePostgresDatabaseSingleInstance:NdbProfileNetworkProfilePostgresDatabaseSingleInstance"
          }
        }
      },
      "type": "object"
    },
    "nutanix:index/NdbProfileNetworkProfilePostgresDatabaseHaInstance:NdbProfileNetworkProfilePostgresDatabaseHaInstance": {
      "properties": {
        "clusterIds": {
          "type": "array",
          "items": {
            "type": "string"
          }
        },
        "clusterNames": {
          "type": "array",
          "items": {
            "type": "string"
          }
        },
        "numOfClusters": {
          "type": "string"
        },
        "vlanNames": {
          "type": "array",
          "items": {
            "type": "string"
          }
        }
      },
      "type": "object"
    },
    "nutanix:index/NdbProfileNetworkProfilePostgresDatabaseSingleInstance:NdbProfileNetworkProfilePostgresDatabaseSingleInstance": {
      "properties": {
        "enableIpAddressSelection": {
          "type": "string"
        },
        "vlanName": {
          "type": "string"
        }
      },
      "type": "object"
    },
    "nutanix:index/NdbProfileNetworkProfileVersionClusterAssociation:NdbProfileNetworkProfileVersionClusterAssociation": {
      "properties": {
        "nxClusterId": {
          "type": "string",
          "description": "cluster on which profile created\n"
        }
      },
      "type": "object",
      "required": [
        "nxClusterId"
      ]
    },
    "nutanix:index/NdbProfileSoftwareProfile:NdbProfileSoftwareProfile": {
      "properties": {
        "availableClusterIds": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "specify Nutanix clusters where this profile is available.\n"
        },
        "postgresDatabases": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FNdbProfileSoftwareProfilePostgresDatabase:NdbProfileSoftwareProfilePostgresDatabase"
          },
          "description": "Software profile info about postgres database.\n* `postgres_database.source_dbserver_id`: source dbserver id where postgress software will be installed.\n* `postgres_database.base_profile_version_name`: name for the software profile version.\n* `postgres_database.base_profile_version_description`: description for the software profile version.\n* `postgres_database.os_notes`: a note to provide additional information about the operating system\n* `postgres_database.db_software_notes`: a note to provide additional information about the database software.\n"
        },
        "topology": {
          "type": "string",
          "description": "Topology of software profile. Allowed values are \"cluster\" and \"single\"\n"
        }
      },
      "type": "object",
      "required": [
        "topology"
      ]
    },
    "nutanix:index/NdbProfileSoftwareProfilePostgresDatabase:NdbProfileSoftwareProfilePostgresDatabase": {
      "properties": {
        "baseProfileVersionDescription": {
          "type": "string"
        },
        "baseProfileVersionName": {
          "type": "string"
        },
        "dbSoftwareNotes": {
          "type": "string"
        },
        "osNotes": {
          "type": "string"
        },
        "sourceDbserverId": {
          "type": "string"
        }
      },
      "type": "object"
    },
    "nutanix:index/NdbProfileVersion:NdbProfileVersion": {
      "properties": {
        "dbVersion": {
          "type": "string"
        },
        "deprecated": {
          "type": "boolean"
        },
        "description": {
          "type": "string",
          "description": "Description of profile\n"
        },
        "engineType": {
          "type": "string",
          "description": "Engine Type of database\n"
        },
        "id": {
          "type": "string"
        },
        "name": {
          "type": "string",
          "description": "Name of profile\n"
        },
        "owner": {
          "type": "string",
          "description": "owner  of profile\n"
        },
        "profileId": {
          "type": "string"
        },
        "properties": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FNdbProfileVersionProperty:NdbProfileVersionProperty"
          }
        },
        "propertiesMap": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          }
        },
        "published": {
          "type": "boolean",
          "description": "Publish for all users\n"
        },
        "status": {
          "type": "string",
          "description": "status of profile\n"
        },
        "systemProfile": {
          "type": "boolean"
        },
        "topology": {
          "type": "string"
        },
        "type": {
          "type": "string"
        },
        "version": {
          "type": "string"
        },
        "versionClusterAssociations": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FNdbProfileVersionVersionClusterAssociation:NdbProfileVersionVersionClusterAssociation"
          },
          "description": "cluster associated with VLAN. this is used with Single instance for postgres database.\n* `version_cluster_association.nx_cluster_id`: (Required) cluster id for associated VLAN.\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "dbVersion",
            "deprecated",
            "description",
            "engineType",
            "id",
            "name",
            "owner",
            "profileId",
            "properties",
            "propertiesMap",
            "published",
            "status",
            "systemProfile",
            "topology",
            "type",
            "version",
            "versionClusterAssociations"
          ]
        }
      }
    },
    "nutanix:index/NdbProfileVersionProperty:NdbProfileVersionProperty": {
      "properties": {
        "name": {
          "type": "string",
          "description": "Name of profile\n"
        },
        "secure": {
          "type": "boolean"
        },
        "value": {
          "type": "string"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "name",
            "secure",
            "value"
          ]
        }
      }
    },
    "nutanix:index/NdbProfileVersionVersionClusterAssociation:NdbProfileVersionVersionClusterAssociation": {
      "properties": {
        "dateCreated": {
          "type": "string"
        },
        "dateModified": {
          "type": "string"
        },
        "nxClusterId": {
          "type": "string",
          "description": "cluster on which profile created\n"
        },
        "optimizedForProvisioning": {
          "type": "boolean"
        },
        "ownerId": {
          "type": "string"
        },
        "profileVersionId": {
          "type": "string"
        },
        "properties": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FNdbProfileVersionVersionClusterAssociationProperty:NdbProfileVersionVersionClusterAssociationProperty"
          }
        },
        "status": {
          "type": "string",
          "description": "status of profile\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "dateCreated",
            "dateModified",
            "nxClusterId",
            "optimizedForProvisioning",
            "ownerId",
            "profileVersionId",
            "properties",
            "status"
          ]
        }
      }
    },
    "nutanix:index/NdbProfileVersionVersionClusterAssociationProperty:NdbProfileVersionVersionClusterAssociationProperty": {
      "properties": {
        "name": {
          "type": "string",
          "description": "Name of profile\n"
        },
        "secure": {
          "type": "boolean"
        },
        "value": {
          "type": "string"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "name",
            "secure",
            "value"
          ]
        }
      }
    },
    "nutanix:index/NdbRegisterDatabaseActionargument:NdbRegisterDatabaseActionargument": {
      "properties": {
        "name": {
          "type": "string",
          "description": "- (Required) name of argument\n"
        },
        "value": {
          "type": "string",
          "description": "- (Required) value for argument\n"
        }
      },
      "type": "object",
      "required": [
        "name",
        "value"
      ]
    },
    "nutanix:index/NdbRegisterDatabaseDatabaseNode:NdbRegisterDatabaseDatabaseNode": {
      "properties": {
        "accessLevel": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          }
        },
        "databaseId": {
          "type": "string"
        },
        "databaseStatus": {
          "type": "string",
          "description": "status of database\n"
        },
        "dateCreated": {
          "type": "string",
          "description": "date created for db instance\n"
        },
        "dateModified": {
          "type": "string",
          "description": "date modified for instance\n"
        },
        "dbserver": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          }
        },
        "dbserverId": {
          "type": "string"
        },
        "description": {
          "type": "string",
          "description": "description\n"
        },
        "id": {
          "type": "string"
        },
        "infos": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FNdbRegisterDatabaseDatabaseNodeInfo:NdbRegisterDatabaseDatabaseNodeInfo"
          },
          "description": "info of instance\n"
        },
        "name": {
          "type": "string",
          "description": "Name of database instance\n"
        },
        "primary": {
          "type": "boolean"
        },
        "properties": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FNdbRegisterDatabaseDatabaseNodeProperty:NdbRegisterDatabaseDatabaseNodeProperty"
          },
          "description": "properties of database created\n"
        },
        "protectionDomainId": {
          "type": "string"
        },
        "protectionDomains": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FNdbRegisterDatabaseDatabaseNodeProtectionDomain:NdbRegisterDatabaseDatabaseNodeProtectionDomain"
          }
        },
        "softwareInstallationId": {
          "type": "string"
        },
        "status": {
          "type": "string",
          "description": "status of instance\n"
        },
        "tags": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FNdbRegisterDatabaseDatabaseNodeTag:NdbRegisterDatabaseDatabaseNodeTag"
          },
          "description": "tags\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "accessLevel",
            "databaseId",
            "databaseStatus",
            "dateCreated",
            "dateModified",
            "dbserver",
            "dbserverId",
            "description",
            "id",
            "infos",
            "name",
            "primary",
            "properties",
            "protectionDomainId",
            "protectionDomains",
            "softwareInstallationId",
            "status",
            "tags"
          ]
        }
      }
    },
    "nutanix:index/NdbRegisterDatabaseDatabaseNodeInfo:NdbRegisterDatabaseDatabaseNodeInfo": {
      "properties": {
        "info": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          },
          "description": "info of instance\n"
        },
        "secureInfo": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          }
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "info",
            "secureInfo"
          ]
        }
      }
    },
    "nutanix:index/NdbRegisterDatabaseDatabaseNodeProperty:NdbRegisterDatabaseDatabaseNodeProperty": {
      "properties": {
        "description": {
          "type": "string",
          "description": "description\n"
        },
        "name": {
          "type": "string",
          "description": "Name of database instance\n"
        },
        "refId": {
          "type": "string"
        },
        "secure": {
          "type": "boolean"
        },
        "value": {
          "type": "string",
          "description": "- (Required) value for argument\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "description",
            "name",
            "refId",
            "secure",
            "value"
          ]
        }
      }
    },
    "nutanix:index/NdbRegisterDatabaseDatabaseNodeProtectionDomain:NdbRegisterDatabaseDatabaseNodeProtectionDomain": {
      "properties": {
        "assocEntities": {
          "type": "array",
          "items": {
            "type": "string"
          }
        },
        "cloudId": {
          "type": "string"
        },
        "dateCreated": {
          "type": "string",
          "description": "date created for db instance\n"
        },
        "dateModified": {
          "type": "string",
          "description": "date modified for instance\n"
        },
        "description": {
          "type": "string",
          "description": "description\n"
        },
        "eraCreated": {
          "type": "boolean"
        },
        "id": {
          "type": "string"
        },
        "name": {
          "type": "string",
          "description": "Name of database instance\n"
        },
        "ownerId": {
          "type": "string"
        },
        "primaryHost": {
          "type": "string"
        },
        "properties": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FNdbRegisterDatabaseDatabaseNodeProtectionDomainProperty:NdbRegisterDatabaseDatabaseNodeProtectionDomainProperty"
          },
          "description": "properties of database created\n"
        },
        "status": {
          "type": "string",
          "description": "status of instance\n"
        },
        "type": {
          "type": "string",
          "description": "type of database\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "assocEntities",
            "cloudId",
            "dateCreated",
            "dateModified",
            "description",
            "eraCreated",
            "id",
            "name",
            "ownerId",
            "primaryHost",
            "properties",
            "status",
            "type"
          ]
        }
      }
    },
    "nutanix:index/NdbRegisterDatabaseDatabaseNodeProtectionDomainProperty:NdbRegisterDatabaseDatabaseNodeProtectionDomainProperty": {
      "properties": {
        "description": {
          "type": "string",
          "description": "description\n"
        },
        "name": {
          "type": "string",
          "description": "Name of database instance\n"
        },
        "refId": {
          "type": "string"
        },
        "secure": {
          "type": "boolean"
        },
        "value": {
          "type": "string",
          "description": "- (Required) value for argument\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "description",
            "name",
            "refId",
            "secure",
            "value"
          ]
        }
      }
    },
    "nutanix:index/NdbRegisterDatabaseDatabaseNodeTag:NdbRegisterDatabaseDatabaseNodeTag": {
      "properties": {
        "entityId": {
          "type": "string"
        },
        "entityType": {
          "type": "string"
        },
        "tagId": {
          "type": "string"
        },
        "tagName": {
          "type": "string"
        },
        "value": {
          "type": "string",
          "description": "- (Required) value for argument\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "entityId",
            "entityType",
            "tagId",
            "tagName",
            "value"
          ]
        }
      }
    },
    "nutanix:index/NdbRegisterDatabaseInfo:NdbRegisterDatabaseInfo": {
      "properties": {
        "bpgConfigs": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FNdbRegisterDatabaseInfoBpgConfig:NdbRegisterDatabaseInfoBpgConfig"
          }
        },
        "secureInfo": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          }
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "bpgConfigs",
            "secureInfo"
          ]
        }
      }
    },
    "nutanix:index/NdbRegisterDatabaseInfoBpgConfig:NdbRegisterDatabaseInfoBpgConfig": {
      "properties": {
        "bpgDbParams": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FNdbRegisterDatabaseInfoBpgConfigBpgDbParam:NdbRegisterDatabaseInfoBpgConfigBpgDbParam"
          }
        },
        "storages": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FNdbRegisterDatabaseInfoBpgConfigStorage:NdbRegisterDatabaseInfoBpgConfigStorage"
          }
        },
        "vmProperties": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FNdbRegisterDatabaseInfoBpgConfigVmProperty:NdbRegisterDatabaseInfoBpgConfigVmProperty"
          }
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "bpgDbParams",
            "storages",
            "vmProperties"
          ]
        }
      }
    },
    "nutanix:index/NdbRegisterDatabaseInfoBpgConfigBpgDbParam:NdbRegisterDatabaseInfoBpgConfigBpgDbParam": {
      "properties": {
        "effectiveCacheSize": {
          "type": "string"
        },
        "maintenanceWorkMem": {
          "type": "string"
        },
        "maxParallelWorkersPerGather": {
          "type": "string"
        },
        "maxWorkerProcesses": {
          "type": "string"
        },
        "sharedBuffers": {
          "type": "string"
        },
        "workMem": {
          "type": "string"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "effectiveCacheSize",
            "maintenanceWorkMem",
            "maxParallelWorkersPerGather",
            "maxWorkerProcesses",
            "sharedBuffers",
            "workMem"
          ]
        }
      }
    },
    "nutanix:index/NdbRegisterDatabaseInfoBpgConfigStorage:NdbRegisterDatabaseInfoBpgConfigStorage": {
      "properties": {
        "archiveStorages": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FNdbRegisterDatabaseInfoBpgConfigStorageArchiveStorage:NdbRegisterDatabaseInfoBpgConfigStorageArchiveStorage"
          }
        },
        "dataDisks": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FNdbRegisterDatabaseInfoBpgConfigStorageDataDisk:NdbRegisterDatabaseInfoBpgConfigStorageDataDisk"
          }
        },
        "logDisks": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FNdbRegisterDatabaseInfoBpgConfigStorageLogDisk:NdbRegisterDatabaseInfoBpgConfigStorageLogDisk"
          }
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "archiveStorages",
            "dataDisks",
            "logDisks"
          ]
        }
      }
    },
    "nutanix:index/NdbRegisterDatabaseInfoBpgConfigStorageArchiveStorage:NdbRegisterDatabaseInfoBpgConfigStorageArchiveStorage": {
      "properties": {
        "size": {
          "type": "number"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "size"
          ]
        }
      }
    },
    "nutanix:index/NdbRegisterDatabaseInfoBpgConfigStorageDataDisk:NdbRegisterDatabaseInfoBpgConfigStorageDataDisk": {
      "properties": {
        "count": {
          "type": "number"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "count"
          ]
        }
      }
    },
    "nutanix:index/NdbRegisterDatabaseInfoBpgConfigStorageLogDisk:NdbRegisterDatabaseInfoBpgConfigStorageLogDisk": {
      "properties": {
        "count": {
          "type": "number"
        },
        "size": {
          "type": "number"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "count",
            "size"
          ]
        }
      }
    },
    "nutanix:index/NdbRegisterDatabaseInfoBpgConfigVmProperty:NdbRegisterDatabaseInfoBpgConfigVmProperty": {
      "properties": {
        "dirtyBackgroundRatio": {
          "type": "number"
        },
        "dirtyExpireCentisecs": {
          "type": "number"
        },
        "dirtyRatio": {
          "type": "number"
        },
        "dirtyWritebackCentisecs": {
          "type": "number"
        },
        "nrHugepages": {
          "type": "number"
        },
        "overcommitMemory": {
          "type": "number"
        },
        "swappiness": {
          "type": "number"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "dirtyBackgroundRatio",
            "dirtyExpireCentisecs",
            "dirtyRatio",
            "dirtyWritebackCentisecs",
            "nrHugepages",
            "overcommitMemory",
            "swappiness"
          ]
        }
      }
    },
    "nutanix:index/NdbRegisterDatabaseLcmConfig:NdbRegisterDatabaseLcmConfig": {
      "properties": {
        "expiryDetails": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FNdbRegisterDatabaseLcmConfigExpiryDetail:NdbRegisterDatabaseLcmConfigExpiryDetail"
          }
        },
        "postDeleteCommands": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FNdbRegisterDatabaseLcmConfigPostDeleteCommand:NdbRegisterDatabaseLcmConfigPostDeleteCommand"
          }
        },
        "preDeleteCommands": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FNdbRegisterDatabaseLcmConfigPreDeleteCommand:NdbRegisterDatabaseLcmConfigPreDeleteCommand"
          }
        },
        "refreshDetails": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FNdbRegisterDatabaseLcmConfigRefreshDetail:NdbRegisterDatabaseLcmConfigRefreshDetail"
          }
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "expiryDetails",
            "postDeleteCommands",
            "preDeleteCommands",
            "refreshDetails"
          ]
        }
      }
    },
    "nutanix:index/NdbRegisterDatabaseLcmConfigExpiryDetail:NdbRegisterDatabaseLcmConfigExpiryDetail": {
      "properties": {
        "deleteDatabase": {
          "type": "boolean"
        },
        "deleteTimeMachine": {
          "type": "boolean",
          "description": "- (Optional) Delete the database's Time Machine (snapshots/logs) from the NDB. Default value is true\n"
        },
        "deleteVm": {
          "type": "boolean"
        },
        "effectiveTimestamp": {
          "type": "string"
        },
        "expireInDays": {
          "type": "integer"
        },
        "expiryDateTimezone": {
          "type": "string"
        },
        "expiryTimestamp": {
          "type": "string"
        },
        "remindBeforeInDays": {
          "type": "integer"
        },
        "userCreated": {
          "type": "boolean"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "deleteDatabase",
            "deleteTimeMachine",
            "deleteVm",
            "effectiveTimestamp",
            "expireInDays",
            "expiryDateTimezone",
            "expiryTimestamp",
            "remindBeforeInDays",
            "userCreated"
          ]
        }
      }
    },
    "nutanix:index/NdbRegisterDatabaseLcmConfigPostDeleteCommand:NdbRegisterDatabaseLcmConfigPostDeleteCommand": {
      "properties": {
        "command": {
          "type": "string"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "command"
          ]
        }
      }
    },
    "nutanix:index/NdbRegisterDatabaseLcmConfigPreDeleteCommand:NdbRegisterDatabaseLcmConfigPreDeleteCommand": {
      "properties": {
        "command": {
          "type": "string"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "command"
          ]
        }
      }
    },
    "nutanix:index/NdbRegisterDatabaseLcmConfigRefreshDetail:NdbRegisterDatabaseLcmConfigRefreshDetail": {
      "properties": {
        "lastRefreshDate": {
          "type": "string"
        },
        "nextRefreshDate": {
          "type": "string"
        },
        "refreshDateTimezone": {
          "type": "string"
        },
        "refreshInDays": {
          "type": "integer"
        },
        "refreshInHours": {
          "type": "integer"
        },
        "refreshInMonths": {
          "type": "integer"
        },
        "refreshTime": {
          "type": "string"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "lastRefreshDate",
            "nextRefreshDate",
            "refreshDateTimezone",
            "refreshInDays",
            "refreshInHours",
            "refreshInMonths",
            "refreshTime"
          ]
        }
      }
    },
    "nutanix:index/NdbRegisterDatabaseLinkedDatabase:NdbRegisterDatabaseLinkedDatabase": {
      "properties": {
        "databaseName": {
          "type": "string",
          "description": "name of database\n"
        },
        "databaseStatus": {
          "type": "string",
          "description": "status of database\n"
        },
        "dateCreated": {
          "type": "string",
          "description": "date created for db instance\n"
        },
        "dateModified": {
          "type": "string",
          "description": "date modified for instance\n"
        },
        "description": {
          "type": "string",
          "description": "description\n"
        },
        "id": {
          "type": "string"
        },
        "infos": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FNdbRegisterDatabaseLinkedDatabaseInfo:NdbRegisterDatabaseLinkedDatabaseInfo"
          },
          "description": "info of instance\n"
        },
        "metric": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          },
          "description": "Stores storage info regarding size, allocatedSize, usedSize and unit of calculation that seems to have been fetched from PRISM.\n"
        },
        "name": {
          "type": "string",
          "description": "Name of database instance\n"
        },
        "parentDatabaseId": {
          "type": "string",
          "description": "parent database id\n"
        },
        "parentLinkedDatabaseId": {
          "type": "string"
        },
        "snapshotId": {
          "type": "string"
        },
        "status": {
          "type": "string",
          "description": "status of instance\n"
        },
        "timezone": {
          "type": "string"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "databaseName",
            "databaseStatus",
            "dateCreated",
            "dateModified",
            "description",
            "id",
            "infos",
            "metric",
            "name",
            "parentDatabaseId",
            "parentLinkedDatabaseId",
            "snapshotId",
            "status",
            "timezone"
          ]
        }
      }
    },
    "nutanix:index/NdbRegisterDatabaseLinkedDatabaseInfo:NdbRegisterDatabaseLinkedDatabaseInfo": {
      "properties": {
        "info": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          },
          "description": "info of instance\n"
        },
        "secureInfo": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          }
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "info",
            "secureInfo"
          ]
        }
      }
    },
    "nutanix:index/NdbRegisterDatabasePostgressInfo:NdbRegisterDatabasePostgressInfo": {
      "properties": {
        "allowMultipleDatabases": {
          "type": "boolean",
          "description": "allow multiple databases. Default is true\n"
        },
        "backupPolicy": {
          "type": "string",
          "description": "backup policy of database. Default is prefer_secondary.\n"
        },
        "dbName": {
          "type": "string",
          "description": "name of the database server VM on which the instance you want to register is running.\n"
        },
        "dbPassword": {
          "type": "string",
          "description": "database password\n",
          "secret": true
        },
        "dbUser": {
          "type": "string",
          "description": "username of the NDB drive user account that has sudo access.\n"
        },
        "listenerPort": {
          "type": "string",
          "description": "listner port of database\n"
        },
        "postgresSoftwareHome": {
          "type": "string",
          "description": "path to the PostgreSQL home directory in which the PostgreSQL software is installed.\n"
        },
        "softwareHome": {
          "type": "string",
          "description": "path to the directory in which the PostgreSQL software is installed.\n"
        },
        "switchLog": {
          "type": "boolean",
          "description": "switch log of database. Default is true\n"
        },
        "vmIp": {
          "type": "string",
          "description": "VM IP of the database server VM on which the instance you want to register is running.\n"
        }
      },
      "type": "object",
      "required": [
        "dbName",
        "dbPassword",
        "listenerPort",
        "postgresSoftwareHome"
      ]
    },
    "nutanix:index/NdbRegisterDatabaseProperty:NdbRegisterDatabaseProperty": {
      "properties": {
        "name": {
          "type": "string",
          "description": "Name of database instance\n"
        },
        "value": {
          "type": "string",
          "description": "- (Required) value for argument\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "name",
            "value"
          ]
        }
      }
    },
    "nutanix:index/NdbRegisterDatabaseTag:NdbRegisterDatabaseTag": {
      "properties": {
        "entityId": {
          "type": "string"
        },
        "entityType": {
          "type": "string"
        },
        "tagId": {
          "type": "string"
        },
        "tagName": {
          "type": "string"
        },
        "value": {
          "type": "string",
          "description": "- (Required) value for argument\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "entityId",
            "entityType",
            "tagId",
            "tagName",
            "value"
          ]
        }
      }
    },
    "nutanix:index/NdbRegisterDatabaseTimeMachine:NdbRegisterDatabaseTimeMachine": {
      "properties": {
        "accessLevel": {
          "type": "string"
        },
        "clone": {
          "type": "boolean",
          "description": "whether instance is cloned or not\n"
        },
        "clones": {
          "type": "string"
        },
        "clustered": {
          "type": "boolean",
          "description": "clustered or not. Default is false\n"
        },
        "database": {
          "type": "string"
        },
        "databaseId": {
          "type": "string"
        },
        "dateCreated": {
          "type": "string",
          "description": "date created for db instance\n"
        },
        "dateModified": {
          "type": "string",
          "description": "date modified for instance\n"
        },
        "description": {
          "type": "string",
          "description": "description\n"
        },
        "eaStatus": {
          "type": "string"
        },
        "id": {
          "type": "string"
        },
        "metric": {
          "type": "string",
          "description": "Stores storage info regarding size, allocatedSize, usedSize and unit of calculation that seems to have been fetched from PRISM.\n"
        },
        "name": {
          "type": "string",
          "description": "Name of database instance\n"
        },
        "properties": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FNdbRegisterDatabaseTimeMachineProperty:NdbRegisterDatabaseTimeMachineProperty"
          },
          "description": "properties of database created\n"
        },
        "scheduleId": {
          "type": "string"
        },
        "schedules": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FNdbRegisterDatabaseTimeMachineSchedule:NdbRegisterDatabaseTimeMachineSchedule"
          },
          "description": "- (Optional) schedule for snapshots\n"
        },
        "scope": {
          "type": "string"
        },
        "slaId": {
          "type": "string"
        },
        "slaUpdateInProgress": {
          "type": "boolean"
        },
        "slaUpdateMetadata": {
          "type": "string"
        },
        "slas": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FNdbRegisterDatabaseTimeMachineSla:NdbRegisterDatabaseTimeMachineSla"
          }
        },
        "sourceNxClusters": {
          "type": "array",
          "items": {
            "type": "string"
          }
        },
        "status": {
          "type": "string",
          "description": "status of instance\n"
        },
        "tags": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FNdbRegisterDatabaseTimeMachineTag:NdbRegisterDatabaseTimeMachineTag"
          },
          "description": "tags\n"
        },
        "type": {
          "type": "string",
          "description": "type of database\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "accessLevel",
            "clone",
            "clones",
            "clustered",
            "database",
            "databaseId",
            "dateCreated",
            "dateModified",
            "description",
            "eaStatus",
            "id",
            "metric",
            "name",
            "properties",
            "scheduleId",
            "schedules",
            "scope",
            "slaId",
            "slaUpdateInProgress",
            "slaUpdateMetadata",
            "slas",
            "sourceNxClusters",
            "status",
            "tags",
            "type"
          ]
        }
      }
    },
    "nutanix:index/NdbRegisterDatabaseTimeMachineInfo:NdbRegisterDatabaseTimeMachineInfo": {
      "properties": {
        "autotunelogdrive": {
          "type": "boolean",
          "description": "- (Optional) enable auto tune log drive. Default: true\n"
        },
        "description": {
          "type": "string",
          "description": "- (Optional) description of time machine\n"
        },
        "name": {
          "type": "string",
          "description": "- (Required) name of time machine\n"
        },
        "schedule": {
          "$ref": "#/types/nutanix:index%2FNdbRegisterDatabaseTimeMachineInfoSchedule:NdbRegisterDatabaseTimeMachineInfoSchedule",
          "description": "- (Optional) schedule for snapshots\n"
        },
        "slaDetails": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FNdbRegisterDatabaseTimeMachineInfoSlaDetail:NdbRegisterDatabaseTimeMachineInfoSlaDetail"
          },
          "description": "-  (optional) SLA details for HA instance\n"
        },
        "slaid": {
          "type": "string",
          "description": "- (Optional) SLA ID for single instance\n"
        },
        "tags": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FNdbRegisterDatabaseTimeMachineInfoTag:NdbRegisterDatabaseTimeMachineInfoTag"
          },
          "description": "- (Optional) tags\n"
        }
      },
      "type": "object",
      "required": [
        "name",
        "schedule"
      ],
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "name",
            "schedule",
            "tags"
          ]
        }
      }
    },
    "nutanix:index/NdbRegisterDatabaseTimeMachineInfoSchedule:NdbRegisterDatabaseTimeMachineInfoSchedule": {
      "properties": {
        "continuousschedule": {
          "$ref": "#/types/nutanix:index%2FNdbRegisterDatabaseTimeMachineInfoScheduleContinuousschedule:NdbRegisterDatabaseTimeMachineInfoScheduleContinuousschedule",
          "description": "- (Optional) snapshot freq and log config\n"
        },
        "monthlyschedule": {
          "$ref": "#/types/nutanix:index%2FNdbRegisterDatabaseTimeMachineInfoScheduleMonthlyschedule:NdbRegisterDatabaseTimeMachineInfoScheduleMonthlyschedule",
          "description": "- (Optional) monthly snapshot config\n"
        },
        "quartelyschedule": {
          "$ref": "#/types/nutanix:index%2FNdbRegisterDatabaseTimeMachineInfoScheduleQuartelyschedule:NdbRegisterDatabaseTimeMachineInfoScheduleQuartelyschedule",
          "description": "- (Optional) quaterly snapshot config\n"
        },
        "snapshottimeofday": {
          "$ref": "#/types/nutanix:index%2FNdbRegisterDatabaseTimeMachineInfoScheduleSnapshottimeofday:NdbRegisterDatabaseTimeMachineInfoScheduleSnapshottimeofday",
          "description": "- (Optional) daily snapshot config\n"
        },
        "weeklyschedule": {
          "$ref": "#/types/nutanix:index%2FNdbRegisterDatabaseTimeMachineInfoScheduleWeeklyschedule:NdbRegisterDatabaseTimeMachineInfoScheduleWeeklyschedule",
          "description": "- (Optional) weekly snapshot config\n"
        },
        "yearlyschedule": {
          "$ref": "#/types/nutanix:index%2FNdbRegisterDatabaseTimeMachineInfoScheduleYearlyschedule:NdbRegisterDatabaseTimeMachineInfoScheduleYearlyschedule",
          "description": "- (Optional) yearly snapshot config\n"
        }
      },
      "type": "object"
    },
    "nutanix:index/NdbRegisterDatabaseTimeMachineInfoScheduleContinuousschedule:NdbRegisterDatabaseTimeMachineInfoScheduleContinuousschedule": {
      "properties": {
        "enabled": {
          "type": "boolean"
        },
        "logbackupinterval": {
          "type": "integer"
        },
        "snapshotsperday": {
          "type": "integer"
        }
      },
      "type": "object",
      "required": [
        "enabled",
        "logbackupinterval",
        "snapshotsperday"
      ]
    },
    "nutanix:index/NdbRegisterDatabaseTimeMachineInfoScheduleMonthlyschedule:NdbRegisterDatabaseTimeMachineInfoScheduleMonthlyschedule": {
      "properties": {
        "dayofmonth": {
          "type": "integer"
        },
        "enabled": {
          "type": "boolean"
        }
      },
      "type": "object",
      "required": [
        "dayofmonth",
        "enabled"
      ]
    },
    "nutanix:index/NdbRegisterDatabaseTimeMachineInfoScheduleQuartelyschedule:NdbRegisterDatabaseTimeMachineInfoScheduleQuartelyschedule": {
      "properties": {
        "dayofmonth": {
          "type": "integer"
        },
        "enabled": {
          "type": "boolean"
        },
        "startmonth": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "dayofmonth",
        "enabled",
        "startmonth"
      ]
    },
    "nutanix:index/NdbRegisterDatabaseTimeMachineInfoScheduleSnapshottimeofday:NdbRegisterDatabaseTimeMachineInfoScheduleSnapshottimeofday": {
      "properties": {
        "hours": {
          "type": "integer"
        },
        "minutes": {
          "type": "integer"
        },
        "seconds": {
          "type": "integer"
        }
      },
      "type": "object",
      "required": [
        "hours",
        "minutes",
        "seconds"
      ]
    },
    "nutanix:index/NdbRegisterDatabaseTimeMachineInfoScheduleWeeklyschedule:NdbRegisterDatabaseTimeMachineInfoScheduleWeeklyschedule": {
      "properties": {
        "dayofweek": {
          "type": "string"
        },
        "enabled": {
          "type": "boolean"
        }
      },
      "type": "object",
      "required": [
        "dayofweek",
        "enabled"
      ]
    },
    "nutanix:index/NdbRegisterDatabaseTimeMachineInfoScheduleYearlyschedule:NdbRegisterDatabaseTimeMachineInfoScheduleYearlyschedule": {
      "properties": {
        "dayofmonth": {
          "type": "integer"
        },
        "enabled": {
          "type": "boolean"
        },
        "month": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "dayofmonth",
        "enabled",
        "month"
      ]
    },
    "nutanix:index/NdbRegisterDatabaseTimeMachineInfoSlaDetail:NdbRegisterDatabaseTimeMachineInfoSlaDetail": {
      "properties": {
        "primarySlas": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FNdbRegisterDatabaseTimeMachineInfoSlaDetailPrimarySla:NdbRegisterDatabaseTimeMachineInfoSlaDetailPrimarySla"
          },
          "description": "- (Required) primary sla details\n* `primary_sla.sla_id` :- (Required) sla id\n* `primary_sla.nx_cluster_ids` -: (Optioanl) cluster ids\n"
        }
      },
      "type": "object"
    },
    "nutanix:index/NdbRegisterDatabaseTimeMachineInfoSlaDetailPrimarySla:NdbRegisterDatabaseTimeMachineInfoSlaDetailPrimarySla": {
      "properties": {
        "nxClusterIds": {
          "type": "array",
          "items": {
            "type": "string"
          }
        },
        "slaId": {
          "type": "string",
          "description": "description of SLA ID.\n"
        }
      },
      "type": "object",
      "required": [
        "slaId"
      ]
    },
    "nutanix:index/NdbRegisterDatabaseTimeMachineInfoTag:NdbRegisterDatabaseTimeMachineInfoTag": {
      "properties": {
        "entityId": {
          "type": "string"
        },
        "entityType": {
          "type": "string"
        },
        "tagId": {
          "type": "string"
        },
        "tagName": {
          "type": "string"
        },
        "value": {
          "type": "string",
          "description": "- (Required) value for argument\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "entityId",
            "entityType",
            "tagId",
            "tagName",
            "value"
          ]
        }
      }
    },
    "nutanix:index/NdbRegisterDatabaseTimeMachineProperty:NdbRegisterDatabaseTimeMachineProperty": {
      "properties": {
        "description": {
          "type": "string",
          "description": "description\n"
        },
        "name": {
          "type": "string",
          "description": "Name of database instance\n"
        },
        "refId": {
          "type": "string"
        },
        "secure": {
          "type": "boolean"
        },
        "value": {
          "type": "string",
          "description": "- (Required) value for argument\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "description",
            "name",
            "refId",
            "secure",
            "value"
          ]
        }
      }
    },
    "nutanix:index/NdbRegisterDatabaseTimeMachineSchedule:NdbRegisterDatabaseTimeMachineSchedule": {
      "properties": {
        "continuousSchedules": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FNdbRegisterDatabaseTimeMachineScheduleContinuousSchedule:NdbRegisterDatabaseTimeMachineScheduleContinuousSchedule"
          }
        },
        "dailySchedules": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FNdbRegisterDatabaseTimeMachineScheduleDailySchedule:NdbRegisterDatabaseTimeMachineScheduleDailySchedule"
          }
        },
        "dateCreated": {
          "type": "string",
          "description": "date created for db instance\n"
        },
        "dateModified": {
          "type": "string",
          "description": "date modified for instance\n"
        },
        "description": {
          "type": "string",
          "description": "description\n"
        },
        "globalPolicy": {
          "type": "boolean"
        },
        "id": {
          "type": "string"
        },
        "monthlySchedules": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FNdbRegisterDatabaseTimeMachineScheduleMonthlySchedule:NdbRegisterDatabaseTimeMachineScheduleMonthlySchedule"
          }
        },
        "name": {
          "type": "string",
          "description": "Name of database instance\n"
        },
        "ownerId": {
          "type": "string"
        },
        "quartelySchedules": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FNdbRegisterDatabaseTimeMachineScheduleQuartelySchedule:NdbRegisterDatabaseTimeMachineScheduleQuartelySchedule"
          }
        },
        "referenceCount": {
          "type": "integer"
        },
        "snapshotTimeOfDays": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FNdbRegisterDatabaseTimeMachineScheduleSnapshotTimeOfDay:NdbRegisterDatabaseTimeMachineScheduleSnapshotTimeOfDay"
          }
        },
        "startTime": {
          "type": "string"
        },
        "systemPolicy": {
          "type": "boolean"
        },
        "timeZone": {
          "type": "string",
          "description": "timezone on which instance is created xw\n"
        },
        "uniqueName": {
          "type": "string"
        },
        "weeklySchedules": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FNdbRegisterDatabaseTimeMachineScheduleWeeklySchedule:NdbRegisterDatabaseTimeMachineScheduleWeeklySchedule"
          }
        },
        "yearlySchedules": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FNdbRegisterDatabaseTimeMachineScheduleYearlySchedule:NdbRegisterDatabaseTimeMachineScheduleYearlySchedule"
          }
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "continuousSchedules",
            "dailySchedules",
            "dateCreated",
            "dateModified",
            "description",
            "globalPolicy",
            "id",
            "monthlySchedules",
            "name",
            "ownerId",
            "quartelySchedules",
            "referenceCount",
            "snapshotTimeOfDays",
            "startTime",
            "systemPolicy",
            "timeZone",
            "uniqueName",
            "weeklySchedules",
            "yearlySchedules"
          ]
        }
      }
    },
    "nutanix:index/NdbRegisterDatabaseTimeMachineScheduleContinuousSchedule:NdbRegisterDatabaseTimeMachineScheduleContinuousSchedule": {
      "properties": {
        "enabled": {
          "type": "boolean"
        },
        "logBackupInterval": {
          "type": "integer"
        },
        "snapshotsPerDay": {
          "type": "integer"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "enabled",
            "logBackupInterval",
            "snapshotsPerDay"
          ]
        }
      }
    },
    "nutanix:index/NdbRegisterDatabaseTimeMachineScheduleDailySchedule:NdbRegisterDatabaseTimeMachineScheduleDailySchedule": {
      "properties": {
        "enabled": {
          "type": "boolean"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "enabled"
          ]
        }
      }
    },
    "nutanix:index/NdbRegisterDatabaseTimeMachineScheduleMonthlySchedule:NdbRegisterDatabaseTimeMachineScheduleMonthlySchedule": {
      "properties": {
        "dayOfMonth": {
          "type": "integer"
        },
        "enabled": {
          "type": "boolean"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "dayOfMonth",
            "enabled"
          ]
        }
      }
    },
    "nutanix:index/NdbRegisterDatabaseTimeMachineScheduleQuartelySchedule:NdbRegisterDatabaseTimeMachineScheduleQuartelySchedule": {
      "properties": {
        "dayOfMonth": {
          "type": "integer"
        },
        "enabled": {
          "type": "boolean"
        },
        "startMonth": {
          "type": "string"
        },
        "startMonthValue": {
          "type": "string"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "dayOfMonth",
            "enabled",
            "startMonth",
            "startMonthValue"
          ]
        }
      }
    },
    "nutanix:index/NdbRegisterDatabaseTimeMachineScheduleSnapshotTimeOfDay:NdbRegisterDatabaseTimeMachineScheduleSnapshotTimeOfDay": {
      "properties": {
        "extra": {
          "type": "boolean"
        },
        "hours": {
          "type": "integer"
        },
        "minutes": {
          "type": "integer"
        },
        "seconds": {
          "type": "integer"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "extra",
            "hours",
            "minutes",
            "seconds"
          ]
        }
      }
    },
    "nutanix:index/NdbRegisterDatabaseTimeMachineScheduleWeeklySchedule:NdbRegisterDatabaseTimeMachineScheduleWeeklySchedule": {
      "properties": {
        "dayOfWeek": {
          "type": "string"
        },
        "dayOfWeekValue": {
          "type": "string"
        },
        "enabled": {
          "type": "boolean"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "dayOfWeek",
            "dayOfWeekValue",
            "enabled"
          ]
        }
      }
    },
    "nutanix:index/NdbRegisterDatabaseTimeMachineScheduleYearlySchedule:NdbRegisterDatabaseTimeMachineScheduleYearlySchedule": {
      "properties": {
        "dayOfMonth": {
          "type": "integer"
        },
        "enabled": {
          "type": "boolean"
        },
        "month": {
          "type": "string"
        },
        "monthValue": {
          "type": "string"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "dayOfMonth",
            "enabled",
            "month",
            "monthValue"
          ]
        }
      }
    },
    "nutanix:index/NdbRegisterDatabaseTimeMachineSla:NdbRegisterDatabaseTimeMachineSla": {
      "properties": {
        "continuousRetention": {
          "type": "integer"
        },
        "currentActiveFrequency": {
          "type": "string"
        },
        "dailyRetention": {
          "type": "integer"
        },
        "dateCreated": {
          "type": "string",
          "description": "date created for db instance\n"
        },
        "dateModified": {
          "type": "string",
          "description": "date modified for instance\n"
        },
        "description": {
          "type": "string",
          "description": "description\n"
        },
        "id": {
          "type": "string"
        },
        "monthlyRetention": {
          "type": "integer"
        },
        "name": {
          "type": "string",
          "description": "Name of database instance\n"
        },
        "ownerId": {
          "type": "string"
        },
        "pitrEnabled": {
          "type": "boolean"
        },
        "quarterlyRetention": {
          "type": "integer"
        },
        "referenceCount": {
          "type": "integer"
        },
        "systemSla": {
          "type": "boolean"
        },
        "uniqueName": {
          "type": "string"
        },
        "weeklyRetention": {
          "type": "integer"
        },
        "yearlyRetention": {
          "type": "integer"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "continuousRetention",
            "currentActiveFrequency",
            "dailyRetention",
            "dateCreated",
            "dateModified",
            "description",
            "id",
            "monthlyRetention",
            "name",
            "ownerId",
            "pitrEnabled",
            "quarterlyRetention",
            "referenceCount",
            "systemSla",
            "uniqueName",
            "weeklyRetention",
            "yearlyRetention"
          ]
        }
      }
    },
    "nutanix:index/NdbRegisterDatabaseTimeMachineTag:NdbRegisterDatabaseTimeMachineTag": {
      "properties": {
        "entityId": {
          "type": "string"
        },
        "entityType": {
          "type": "string"
        },
        "tagId": {
          "type": "string"
        },
        "tagName": {
          "type": "string"
        },
        "value": {
          "type": "string",
          "description": "- (Required) value for argument\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "entityId",
            "entityType",
            "tagId",
            "tagName",
            "value"
          ]
        }
      }
    },
    "nutanix:index/NdbRegisterDbserverCredential:NdbRegisterDbserverCredential": {
      "properties": {
        "label": {
          "type": "string"
        },
        "password": {
          "type": "string",
          "description": "password of the NDB drive user account. Conflicts with ssh_key.\n"
        },
        "username": {
          "type": "string",
          "description": "username of the NDB drive user account that has sudo access\n"
        }
      },
      "type": "object",
      "required": [
        "password",
        "username"
      ]
    },
    "nutanix:index/NdbRegisterDbserverPostgresDatabase:NdbRegisterDbserverPostgresDatabase": {
      "properties": {
        "listenerPort": {
          "type": "string",
          "description": "listener port of db server\n"
        },
        "postgresSoftwareHome": {
          "type": "string",
          "description": "path to the PostgreSQL home directory in which the PostgreSQL software is installed\n"
        }
      },
      "type": "object"
    },
    "nutanix:index/NdbRegisterDbserverProperty:NdbRegisterDbserverProperty": {
      "properties": {
        "name": {
          "type": "string",
          "description": "Name of db server vm. Should be used in Update Method only.\n"
        },
        "value": {
          "type": "string"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "name",
            "value"
          ]
        }
      }
    },
    "nutanix:index/NdbRegisterDbserverTag:NdbRegisterDbserverTag": {
      "properties": {
        "entityId": {
          "type": "string"
        },
        "entityType": {
          "type": "string"
        },
        "tagId": {
          "type": "string"
        },
        "tagName": {
          "type": "string"
        },
        "value": {
          "type": "string"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "entityId",
            "entityType",
            "tagId",
            "tagName",
            "value"
          ]
        }
      }
    },
    "nutanix:index/NdbScaleDatabaseDatabaseNode:NdbScaleDatabaseDatabaseNode": {
      "properties": {
        "accessLevel": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          }
        },
        "databaseId": {
          "type": "string"
        },
        "databaseStatus": {
          "type": "string"
        },
        "dateCreated": {
          "type": "string",
          "description": "date created for db instance\n"
        },
        "dateModified": {
          "type": "string",
          "description": "date modified for instance\n"
        },
        "dbserver": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          }
        },
        "dbserverId": {
          "type": "string"
        },
        "description": {
          "type": "string",
          "description": "description of database instance\n"
        },
        "id": {
          "type": "string"
        },
        "infos": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FNdbScaleDatabaseDatabaseNodeInfo:NdbScaleDatabaseDatabaseNodeInfo"
          },
          "description": "info of instance\n"
        },
        "name": {
          "type": "string",
          "description": "Name of database instance\n"
        },
        "primary": {
          "type": "boolean"
        },
        "properties": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FNdbScaleDatabaseDatabaseNodeProperty:NdbScaleDatabaseDatabaseNodeProperty"
          },
          "description": "properties of database created\n"
        },
        "protectionDomainId": {
          "type": "string"
        },
        "protectionDomains": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FNdbScaleDatabaseDatabaseNodeProtectionDomain:NdbScaleDatabaseDatabaseNodeProtectionDomain"
          }
        },
        "softwareInstallationId": {
          "type": "string"
        },
        "status": {
          "type": "string",
          "description": "status of instance\n"
        },
        "tags": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FNdbScaleDatabaseDatabaseNodeTag:NdbScaleDatabaseDatabaseNodeTag"
          },
          "description": "allows you to assign metadata to entities (clones, time machines, databases, and database servers) by using tags.\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "accessLevel",
            "databaseId",
            "databaseStatus",
            "dateCreated",
            "dateModified",
            "dbserver",
            "dbserverId",
            "description",
            "id",
            "infos",
            "name",
            "primary",
            "properties",
            "protectionDomainId",
            "protectionDomains",
            "softwareInstallationId",
            "status",
            "tags"
          ]
        }
      }
    },
    "nutanix:index/NdbScaleDatabaseDatabaseNodeInfo:NdbScaleDatabaseDatabaseNodeInfo": {
      "properties": {
        "info": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          },
          "description": "info of instance\n"
        },
        "secureInfo": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          }
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "info",
            "secureInfo"
          ]
        }
      }
    },
    "nutanix:index/NdbScaleDatabaseDatabaseNodeProperty:NdbScaleDatabaseDatabaseNodeProperty": {
      "properties": {
        "description": {
          "type": "string",
          "description": "description of database instance\n"
        },
        "name": {
          "type": "string",
          "description": "Name of database instance\n"
        },
        "refId": {
          "type": "string"
        },
        "secure": {
          "type": "boolean"
        },
        "value": {
          "type": "string"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "description",
            "name",
            "refId",
            "secure",
            "value"
          ]
        }
      }
    },
    "nutanix:index/NdbScaleDatabaseDatabaseNodeProtectionDomain:NdbScaleDatabaseDatabaseNodeProtectionDomain": {
      "properties": {
        "assocEntities": {
          "type": "array",
          "items": {
            "type": "string"
          }
        },
        "cloudId": {
          "type": "string"
        },
        "dateCreated": {
          "type": "string",
          "description": "date created for db instance\n"
        },
        "dateModified": {
          "type": "string",
          "description": "date modified for instance\n"
        },
        "description": {
          "type": "string",
          "description": "description of database instance\n"
        },
        "eraCreated": {
          "type": "boolean"
        },
        "id": {
          "type": "string"
        },
        "name": {
          "type": "string",
          "description": "Name of database instance\n"
        },
        "ownerId": {
          "type": "string"
        },
        "primaryHost": {
          "type": "string"
        },
        "properties": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FNdbScaleDatabaseDatabaseNodeProtectionDomainProperty:NdbScaleDatabaseDatabaseNodeProtectionDomainProperty"
          },
          "description": "properties of database created\n"
        },
        "status": {
          "type": "string",
          "description": "status of instance\n"
        },
        "type": {
          "type": "string",
          "description": "type of database\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "assocEntities",
            "cloudId",
            "dateCreated",
            "dateModified",
            "description",
            "eraCreated",
            "id",
            "name",
            "ownerId",
            "primaryHost",
            "properties",
            "status",
            "type"
          ]
        }
      }
    },
    "nutanix:index/NdbScaleDatabaseDatabaseNodeProtectionDomainProperty:NdbScaleDatabaseDatabaseNodeProtectionDomainProperty": {
      "properties": {
        "description": {
          "type": "string",
          "description": "description of database instance\n"
        },
        "name": {
          "type": "string",
          "description": "Name of database instance\n"
        },
        "refId": {
          "type": "string"
        },
        "secure": {
          "type": "boolean"
        },
        "value": {
          "type": "string"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "description",
            "name",
            "refId",
            "secure",
            "value"
          ]
        }
      }
    },
    "nutanix:index/NdbScaleDatabaseDatabaseNodeTag:NdbScaleDatabaseDatabaseNodeTag": {
      "properties": {
        "entityId": {
          "type": "string"
        },
        "entityType": {
          "type": "string"
        },
        "tagId": {
          "type": "string"
        },
        "tagName": {
          "type": "string"
        },
        "value": {
          "type": "string"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "entityId",
            "entityType",
            "tagId",
            "tagName",
            "value"
          ]
        }
      }
    },
    "nutanix:index/NdbScaleDatabaseInfo:NdbScaleDatabaseInfo": {
      "properties": {
        "bpgConfigs": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FNdbScaleDatabaseInfoBpgConfig:NdbScaleDatabaseInfoBpgConfig"
          }
        },
        "secureInfo": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          }
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "bpgConfigs",
            "secureInfo"
          ]
        }
      }
    },
    "nutanix:index/NdbScaleDatabaseInfoBpgConfig:NdbScaleDatabaseInfoBpgConfig": {
      "properties": {
        "bpgDbParams": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FNdbScaleDatabaseInfoBpgConfigBpgDbParam:NdbScaleDatabaseInfoBpgConfigBpgDbParam"
          }
        },
        "storages": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FNdbScaleDatabaseInfoBpgConfigStorage:NdbScaleDatabaseInfoBpgConfigStorage"
          }
        },
        "vmProperties": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FNdbScaleDatabaseInfoBpgConfigVmProperty:NdbScaleDatabaseInfoBpgConfigVmProperty"
          }
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "bpgDbParams",
            "storages",
            "vmProperties"
          ]
        }
      }
    },
    "nutanix:index/NdbScaleDatabaseInfoBpgConfigBpgDbParam:NdbScaleDatabaseInfoBpgConfigBpgDbParam": {
      "properties": {
        "effectiveCacheSize": {
          "type": "string"
        },
        "maintenanceWorkMem": {
          "type": "string"
        },
        "maxParallelWorkersPerGather": {
          "type": "string"
        },
        "maxWorkerProcesses": {
          "type": "string"
        },
        "sharedBuffers": {
          "type": "string"
        },
        "workMem": {
          "type": "string"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "effectiveCacheSize",
            "maintenanceWorkMem",
            "maxParallelWorkersPerGather",
            "maxWorkerProcesses",
            "sharedBuffers",
            "workMem"
          ]
        }
      }
    },
    "nutanix:index/NdbScaleDatabaseInfoBpgConfigStorage:NdbScaleDatabaseInfoBpgConfigStorage": {
      "properties": {
        "archiveStorages": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FNdbScaleDatabaseInfoBpgConfigStorageArchiveStorage:NdbScaleDatabaseInfoBpgConfigStorageArchiveStorage"
          }
        },
        "dataDisks": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FNdbScaleDatabaseInfoBpgConfigStorageDataDisk:NdbScaleDatabaseInfoBpgConfigStorageDataDisk"
          }
        },
        "logDisks": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FNdbScaleDatabaseInfoBpgConfigStorageLogDisk:NdbScaleDatabaseInfoBpgConfigStorageLogDisk"
          }
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "archiveStorages",
            "dataDisks",
            "logDisks"
          ]
        }
      }
    },
    "nutanix:index/NdbScaleDatabaseInfoBpgConfigStorageArchiveStorage:NdbScaleDatabaseInfoBpgConfigStorageArchiveStorage": {
      "properties": {
        "size": {
          "type": "number"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "size"
          ]
        }
      }
    },
    "nutanix:index/NdbScaleDatabaseInfoBpgConfigStorageDataDisk:NdbScaleDatabaseInfoBpgConfigStorageDataDisk": {
      "properties": {
        "count": {
          "type": "number"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "count"
          ]
        }
      }
    },
    "nutanix:index/NdbScaleDatabaseInfoBpgConfigStorageLogDisk:NdbScaleDatabaseInfoBpgConfigStorageLogDisk": {
      "properties": {
        "count": {
          "type": "number"
        },
        "size": {
          "type": "number"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "count",
            "size"
          ]
        }
      }
    },
    "nutanix:index/NdbScaleDatabaseInfoBpgConfigVmProperty:NdbScaleDatabaseInfoBpgConfigVmProperty": {
      "properties": {
        "dirtyBackgroundRatio": {
          "type": "number"
        },
        "dirtyExpireCentisecs": {
          "type": "number"
        },
        "dirtyRatio": {
          "type": "number"
        },
        "dirtyWritebackCentisecs": {
          "type": "number"
        },
        "nrHugepages": {
          "type": "number"
        },
        "overcommitMemory": {
          "type": "number"
        },
        "swappiness": {
          "type": "number"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "dirtyBackgroundRatio",
            "dirtyExpireCentisecs",
            "dirtyRatio",
            "dirtyWritebackCentisecs",
            "nrHugepages",
            "overcommitMemory",
            "swappiness"
          ]
        }
      }
    },
    "nutanix:index/NdbScaleDatabaseLcmConfig:NdbScaleDatabaseLcmConfig": {
      "properties": {
        "expiryDetails": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FNdbScaleDatabaseLcmConfigExpiryDetail:NdbScaleDatabaseLcmConfigExpiryDetail"
          }
        },
        "postDeleteCommands": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FNdbScaleDatabaseLcmConfigPostDeleteCommand:NdbScaleDatabaseLcmConfigPostDeleteCommand"
          }
        },
        "preDeleteCommands": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FNdbScaleDatabaseLcmConfigPreDeleteCommand:NdbScaleDatabaseLcmConfigPreDeleteCommand"
          }
        },
        "refreshDetails": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FNdbScaleDatabaseLcmConfigRefreshDetail:NdbScaleDatabaseLcmConfigRefreshDetail"
          }
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "expiryDetails",
            "postDeleteCommands",
            "preDeleteCommands",
            "refreshDetails"
          ]
        }
      }
    },
    "nutanix:index/NdbScaleDatabaseLcmConfigExpiryDetail:NdbScaleDatabaseLcmConfigExpiryDetail": {
      "properties": {
        "deleteDatabase": {
          "type": "boolean"
        },
        "deleteTimeMachine": {
          "type": "boolean"
        },
        "deleteVm": {
          "type": "boolean"
        },
        "effectiveTimestamp": {
          "type": "string"
        },
        "expireInDays": {
          "type": "integer"
        },
        "expiryDateTimezone": {
          "type": "string"
        },
        "expiryTimestamp": {
          "type": "string"
        },
        "remindBeforeInDays": {
          "type": "integer"
        },
        "userCreated": {
          "type": "boolean"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "deleteDatabase",
            "deleteTimeMachine",
            "deleteVm",
            "effectiveTimestamp",
            "expireInDays",
            "expiryDateTimezone",
            "expiryTimestamp",
            "remindBeforeInDays",
            "userCreated"
          ]
        }
      }
    },
    "nutanix:index/NdbScaleDatabaseLcmConfigPostDeleteCommand:NdbScaleDatabaseLcmConfigPostDeleteCommand": {
      "properties": {
        "command": {
          "type": "string"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "command"
          ]
        }
      }
    },
    "nutanix:index/NdbScaleDatabaseLcmConfigPreDeleteCommand:NdbScaleDatabaseLcmConfigPreDeleteCommand": {
      "properties": {
        "command": {
          "type": "string"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "command"
          ]
        }
      }
    },
    "nutanix:index/NdbScaleDatabaseLcmConfigRefreshDetail:NdbScaleDatabaseLcmConfigRefreshDetail": {
      "properties": {
        "lastRefreshDate": {
          "type": "string"
        },
        "nextRefreshDate": {
          "type": "string"
        },
        "refreshDateTimezone": {
          "type": "string"
        },
        "refreshInDays": {
          "type": "integer"
        },
        "refreshInHours": {
          "type": "integer"
        },
        "refreshInMonths": {
          "type": "integer"
        },
        "refreshTime": {
          "type": "string"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "lastRefreshDate",
            "nextRefreshDate",
            "refreshDateTimezone",
            "refreshInDays",
            "refreshInHours",
            "refreshInMonths",
            "refreshTime"
          ]
        }
      }
    },
    "nutanix:index/NdbScaleDatabaseLinkedDatabase:NdbScaleDatabaseLinkedDatabase": {
      "properties": {
        "databaseName": {
          "type": "string",
          "description": "name of database\n"
        },
        "databaseStatus": {
          "type": "string"
        },
        "dateCreated": {
          "type": "string",
          "description": "date created for db instance\n"
        },
        "dateModified": {
          "type": "string",
          "description": "date modified for instance\n"
        },
        "description": {
          "type": "string",
          "description": "description of database instance\n"
        },
        "id": {
          "type": "string"
        },
        "infos": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FNdbScaleDatabaseLinkedDatabaseInfo:NdbScaleDatabaseLinkedDatabaseInfo"
          },
          "description": "info of instance\n"
        },
        "metric": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          },
          "description": "Stores storage info regarding size, allocatedSize, usedSize and unit of calculation that seems to have been fetched from PRISM.\n"
        },
        "name": {
          "type": "string",
          "description": "Name of database instance\n"
        },
        "parentDatabaseId": {
          "type": "string",
          "description": "parent database id\n"
        },
        "parentLinkedDatabaseId": {
          "type": "string"
        },
        "snapshotId": {
          "type": "string"
        },
        "status": {
          "type": "string",
          "description": "status of instance\n"
        },
        "timezone": {
          "type": "string"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "databaseName",
            "databaseStatus",
            "dateCreated",
            "dateModified",
            "description",
            "id",
            "infos",
            "metric",
            "name",
            "parentDatabaseId",
            "parentLinkedDatabaseId",
            "snapshotId",
            "status",
            "timezone"
          ]
        }
      }
    },
    "nutanix:index/NdbScaleDatabaseLinkedDatabaseInfo:NdbScaleDatabaseLinkedDatabaseInfo": {
      "properties": {
        "info": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          },
          "description": "info of instance\n"
        },
        "secureInfo": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          }
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "info",
            "secureInfo"
          ]
        }
      }
    },
    "nutanix:index/NdbScaleDatabaseProperty:NdbScaleDatabaseProperty": {
      "properties": {
        "name": {
          "type": "string",
          "description": "Name of database instance\n"
        },
        "value": {
          "type": "string"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "name",
            "value"
          ]
        }
      }
    },
    "nutanix:index/NdbScaleDatabaseTag:NdbScaleDatabaseTag": {
      "properties": {
        "entityId": {
          "type": "string"
        },
        "entityType": {
          "type": "string"
        },
        "tagId": {
          "type": "string"
        },
        "tagName": {
          "type": "string"
        },
        "value": {
          "type": "string"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "entityId",
            "entityType",
            "tagId",
            "tagName",
            "value"
          ]
        }
      }
    },
    "nutanix:index/NdbScaleDatabaseTimeMachine:NdbScaleDatabaseTimeMachine": {
      "properties": {
        "accessLevel": {
          "type": "string"
        },
        "clone": {
          "type": "boolean",
          "description": "whether instance is cloned or not\n"
        },
        "clones": {
          "type": "string"
        },
        "clustered": {
          "type": "boolean"
        },
        "database": {
          "type": "string"
        },
        "databaseId": {
          "type": "string"
        },
        "dateCreated": {
          "type": "string",
          "description": "date created for db instance\n"
        },
        "dateModified": {
          "type": "string",
          "description": "date modified for instance\n"
        },
        "description": {
          "type": "string",
          "description": "description of database instance\n"
        },
        "eaStatus": {
          "type": "string"
        },
        "id": {
          "type": "string"
        },
        "metric": {
          "type": "string",
          "description": "Stores storage info regarding size, allocatedSize, usedSize and unit of calculation that seems to have been fetched from PRISM.\n"
        },
        "name": {
          "type": "string",
          "description": "Name of database instance\n"
        },
        "properties": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FNdbScaleDatabaseTimeMachineProperty:NdbScaleDatabaseTimeMachineProperty"
          },
          "description": "properties of database created\n"
        },
        "scheduleId": {
          "type": "string"
        },
        "schedules": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FNdbScaleDatabaseTimeMachineSchedule:NdbScaleDatabaseTimeMachineSchedule"
          }
        },
        "scope": {
          "type": "string"
        },
        "slaId": {
          "type": "string"
        },
        "slaUpdateInProgress": {
          "type": "boolean"
        },
        "slaUpdateMetadata": {
          "type": "string"
        },
        "slas": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FNdbScaleDatabaseTimeMachineSla:NdbScaleDatabaseTimeMachineSla"
          }
        },
        "sourceNxClusters": {
          "type": "array",
          "items": {
            "type": "string"
          }
        },
        "status": {
          "type": "string",
          "description": "status of instance\n"
        },
        "tags": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FNdbScaleDatabaseTimeMachineTag:NdbScaleDatabaseTimeMachineTag"
          },
          "description": "allows you to assign metadata to entities (clones, time machines, databases, and database servers) by using tags.\n"
        },
        "type": {
          "type": "string",
          "description": "type of database\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "accessLevel",
            "clone",
            "clones",
            "clustered",
            "database",
            "databaseId",
            "dateCreated",
            "dateModified",
            "description",
            "eaStatus",
            "id",
            "metric",
            "name",
            "properties",
            "scheduleId",
            "schedules",
            "scope",
            "slaId",
            "slaUpdateInProgress",
            "slaUpdateMetadata",
            "slas",
            "sourceNxClusters",
            "status",
            "tags",
            "type"
          ]
        }
      }
    },
    "nutanix:index/NdbScaleDatabaseTimeMachineProperty:NdbScaleDatabaseTimeMachineProperty": {
      "properties": {
        "description": {
          "type": "string",
          "description": "description of database instance\n"
        },
        "name": {
          "type": "string",
          "description": "Name of database instance\n"
        },
        "refId": {
          "type": "string"
        },
        "secure": {
          "type": "boolean"
        },
        "value": {
          "type": "string"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "description",
            "name",
            "refId",
            "secure",
            "value"
          ]
        }
      }
    },
    "nutanix:index/NdbScaleDatabaseTimeMachineSchedule:NdbScaleDatabaseTimeMachineSchedule": {
      "properties": {
        "continuousSchedules": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FNdbScaleDatabaseTimeMachineScheduleContinuousSchedule:NdbScaleDatabaseTimeMachineScheduleContinuousSchedule"
          }
        },
        "dailySchedules": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FNdbScaleDatabaseTimeMachineScheduleDailySchedule:NdbScaleDatabaseTimeMachineScheduleDailySchedule"
          }
        },
        "dateCreated": {
          "type": "string",
          "description": "date created for db instance\n"
        },
        "dateModified": {
          "type": "string",
          "description": "date modified for instance\n"
        },
        "description": {
          "type": "string",
          "description": "description of database instance\n"
        },
        "globalPolicy": {
          "type": "boolean"
        },
        "id": {
          "type": "string"
        },
        "monthlySchedules": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FNdbScaleDatabaseTimeMachineScheduleMonthlySchedule:NdbScaleDatabaseTimeMachineScheduleMonthlySchedule"
          }
        },
        "name": {
          "type": "string",
          "description": "Name of database instance\n"
        },
        "ownerId": {
          "type": "string"
        },
        "quartelySchedules": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FNdbScaleDatabaseTimeMachineScheduleQuartelySchedule:NdbScaleDatabaseTimeMachineScheduleQuartelySchedule"
          }
        },
        "referenceCount": {
          "type": "integer"
        },
        "snapshotTimeOfDays": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FNdbScaleDatabaseTimeMachineScheduleSnapshotTimeOfDay:NdbScaleDatabaseTimeMachineScheduleSnapshotTimeOfDay"
          }
        },
        "startTime": {
          "type": "string"
        },
        "systemPolicy": {
          "type": "boolean"
        },
        "timeZone": {
          "type": "string",
          "description": "timezone on which instance is created xw\n"
        },
        "uniqueName": {
          "type": "string"
        },
        "weeklySchedules": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FNdbScaleDatabaseTimeMachineScheduleWeeklySchedule:NdbScaleDatabaseTimeMachineScheduleWeeklySchedule"
          }
        },
        "yearlySchedules": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FNdbScaleDatabaseTimeMachineScheduleYearlySchedule:NdbScaleDatabaseTimeMachineScheduleYearlySchedule"
          }
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "continuousSchedules",
            "dailySchedules",
            "dateCreated",
            "dateModified",
            "description",
            "globalPolicy",
            "id",
            "monthlySchedules",
            "name",
            "ownerId",
            "quartelySchedules",
            "referenceCount",
            "snapshotTimeOfDays",
            "startTime",
            "systemPolicy",
            "timeZone",
            "uniqueName",
            "weeklySchedules",
            "yearlySchedules"
          ]
        }
      }
    },
    "nutanix:index/NdbScaleDatabaseTimeMachineScheduleContinuousSchedule:NdbScaleDatabaseTimeMachineScheduleContinuousSchedule": {
      "properties": {
        "enabled": {
          "type": "boolean"
        },
        "logBackupInterval": {
          "type": "integer"
        },
        "snapshotsPerDay": {
          "type": "integer"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "enabled",
            "logBackupInterval",
            "snapshotsPerDay"
          ]
        }
      }
    },
    "nutanix:index/NdbScaleDatabaseTimeMachineScheduleDailySchedule:NdbScaleDatabaseTimeMachineScheduleDailySchedule": {
      "properties": {
        "enabled": {
          "type": "boolean"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "enabled"
          ]
        }
      }
    },
    "nutanix:index/NdbScaleDatabaseTimeMachineScheduleMonthlySchedule:NdbScaleDatabaseTimeMachineScheduleMonthlySchedule": {
      "properties": {
        "dayOfMonth": {
          "type": "integer"
        },
        "enabled": {
          "type": "boolean"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "dayOfMonth",
            "enabled"
          ]
        }
      }
    },
    "nutanix:index/NdbScaleDatabaseTimeMachineScheduleQuartelySchedule:NdbScaleDatabaseTimeMachineScheduleQuartelySchedule": {
      "properties": {
        "dayOfMonth": {
          "type": "integer"
        },
        "enabled": {
          "type": "boolean"
        },
        "startMonth": {
          "type": "string"
        },
        "startMonthValue": {
          "type": "string"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "dayOfMonth",
            "enabled",
            "startMonth",
            "startMonthValue"
          ]
        }
      }
    },
    "nutanix:index/NdbScaleDatabaseTimeMachineScheduleSnapshotTimeOfDay:NdbScaleDatabaseTimeMachineScheduleSnapshotTimeOfDay": {
      "properties": {
        "extra": {
          "type": "boolean"
        },
        "hours": {
          "type": "integer"
        },
        "minutes": {
          "type": "integer"
        },
        "seconds": {
          "type": "integer"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "extra",
            "hours",
            "minutes",
            "seconds"
          ]
        }
      }
    },
    "nutanix:index/NdbScaleDatabaseTimeMachineScheduleWeeklySchedule:NdbScaleDatabaseTimeMachineScheduleWeeklySchedule": {
      "properties": {
        "dayOfWeek": {
          "type": "string"
        },
        "dayOfWeekValue": {
          "type": "string"
        },
        "enabled": {
          "type": "boolean"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "dayOfWeek",
            "dayOfWeekValue",
            "enabled"
          ]
        }
      }
    },
    "nutanix:index/NdbScaleDatabaseTimeMachineScheduleYearlySchedule:NdbScaleDatabaseTimeMachineScheduleYearlySchedule": {
      "properties": {
        "dayOfMonth": {
          "type": "integer"
        },
        "enabled": {
          "type": "boolean"
        },
        "month": {
          "type": "string"
        },
        "monthValue": {
          "type": "string"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "dayOfMonth",
            "enabled",
            "month",
            "monthValue"
          ]
        }
      }
    },
    "nutanix:index/NdbScaleDatabaseTimeMachineSla:NdbScaleDatabaseTimeMachineSla": {
      "properties": {
        "continuousRetention": {
          "type": "integer"
        },
        "currentActiveFrequency": {
          "type": "string"
        },
        "dailyRetention": {
          "type": "integer"
        },
        "dateCreated": {
          "type": "string",
          "description": "date created for db instance\n"
        },
        "dateModified": {
          "type": "string",
          "description": "date modified for instance\n"
        },
        "description": {
          "type": "string",
          "description": "description of database instance\n"
        },
        "id": {
          "type": "string"
        },
        "monthlyRetention": {
          "type": "integer"
        },
        "name": {
          "type": "string",
          "description": "Name of database instance\n"
        },
        "ownerId": {
          "type": "string"
        },
        "pitrEnabled": {
          "type": "boolean"
        },
        "quarterlyRetention": {
          "type": "integer"
        },
        "referenceCount": {
          "type": "integer"
        },
        "systemSla": {
          "type": "boolean"
        },
        "uniqueName": {
          "type": "string"
        },
        "weeklyRetention": {
          "type": "integer"
        },
        "yearlyRetention": {
          "type": "integer"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "continuousRetention",
            "currentActiveFrequency",
            "dailyRetention",
            "dateCreated",
            "dateModified",
            "description",
            "id",
            "monthlyRetention",
            "name",
            "ownerId",
            "pitrEnabled",
            "quarterlyRetention",
            "referenceCount",
            "systemSla",
            "uniqueName",
            "weeklyRetention",
            "yearlyRetention"
          ]
        }
      }
    },
    "nutanix:index/NdbScaleDatabaseTimeMachineTag:NdbScaleDatabaseTimeMachineTag": {
      "properties": {
        "entityId": {
          "type": "string"
        },
        "entityType": {
          "type": "string"
        },
        "tagId": {
          "type": "string"
        },
        "tagName": {
          "type": "string"
        },
        "value": {
          "type": "string"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "entityId",
            "entityType",
            "tagId",
            "tagName",
            "value"
          ]
        }
      }
    },
    "nutanix:index/NdbSoftwareVersionProfilePostgresDatabase:NdbSoftwareVersionProfilePostgresDatabase": {
      "properties": {
        "dbSoftwareNotes": {
          "type": "string",
          "description": "db software notes\n"
        },
        "osNotes": {
          "type": "string",
          "description": "os notes for software profile\n"
        },
        "sourceDbserverId": {
          "type": "string",
          "description": "source dbserver id\n"
        }
      },
      "type": "object"
    },
    "nutanix:index/NdbSoftwareVersionProfileProperty:NdbSoftwareVersionProfileProperty": {
      "properties": {
        "name": {
          "type": "string",
          "description": "Name of profile\n"
        },
        "secure": {
          "type": "boolean",
          "description": "secure or not\n"
        },
        "value": {
          "type": "string",
          "description": "value of property\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "name",
            "secure",
            "value"
          ]
        }
      }
    },
    "nutanix:index/NdbSoftwareVersionProfileVersionClusterAssociation:NdbSoftwareVersionProfileVersionClusterAssociation": {
      "properties": {
        "dateCreated": {
          "type": "string",
          "description": "date created of profile\n"
        },
        "dateModified": {
          "type": "string",
          "description": "date modified of profile\n"
        },
        "nxClusterId": {
          "type": "string",
          "description": "nutanix cluster id\n"
        },
        "optimizedForProvisioning": {
          "type": "boolean",
          "description": "version optimized for provisioning\n"
        },
        "ownerId": {
          "type": "string",
          "description": "owner id\n"
        },
        "profileVersionId": {
          "type": "string",
          "description": "profile version id\n"
        },
        "properties": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FNdbSoftwareVersionProfileVersionClusterAssociationProperty:NdbSoftwareVersionProfileVersionClusterAssociationProperty"
          },
          "description": "properties of software profile\n"
        },
        "status": {
          "type": "string",
          "description": "status of profile. Allowed Values are \"deprecated\", \"published\", \"unpublished\"\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "dateCreated",
            "dateModified",
            "nxClusterId",
            "optimizedForProvisioning",
            "ownerId",
            "profileVersionId",
            "properties",
            "status"
          ]
        }
      }
    },
    "nutanix:index/NdbSoftwareVersionProfileVersionClusterAssociationProperty:NdbSoftwareVersionProfileVersionClusterAssociationProperty": {
      "properties": {
        "name": {
          "type": "string",
          "description": "Name of profile\n"
        },
        "secure": {
          "type": "boolean",
          "description": "secure or not\n"
        },
        "value": {
          "type": "string",
          "description": "value of property\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "name",
            "secure",
            "value"
          ]
        }
      }
    },
    "nutanix:index/NdbStretchedVlanMetadata:NdbStretchedVlanMetadata": {
      "properties": {
        "gateway": {
          "type": "string"
        },
        "subnetMask": {
          "type": "string"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "gateway",
            "subnetMask"
          ]
        }
      }
    },
    "nutanix:index/NdbStretchedVlanVlansList:NdbStretchedVlanVlansList": {
      "properties": {
        "clusterId": {
          "type": "string",
          "description": "cluster id where network is present\n"
        },
        "id": {
          "type": "string",
          "description": "network id\n"
        },
        "managed": {
          "type": "boolean",
          "description": "network managed by NDB or not\n"
        },
        "name": {
          "type": "string",
          "description": "name for the stretched VLAN\n"
        },
        "properties": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FNdbStretchedVlanVlansListProperty:NdbStretchedVlanVlansListProperty"
          },
          "description": "properties of network\n"
        },
        "propertiesMaps": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FNdbStretchedVlanVlansListPropertiesMap:NdbStretchedVlanVlansListPropertiesMap"
          },
          "description": "properties map of network\n"
        },
        "stretchedVlanId": {
          "type": "string",
          "description": "stretched vlan id\n"
        },
        "type": {
          "type": "string",
          "description": "type of vlan. static VLANs that are managed in NDB can be added to a stretched VLAN.\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "clusterId",
            "id",
            "managed",
            "name",
            "properties",
            "propertiesMaps",
            "stretchedVlanId",
            "type"
          ]
        }
      }
    },
    "nutanix:index/NdbStretchedVlanVlansListPropertiesMap:NdbStretchedVlanVlansListPropertiesMap": {
      "properties": {
        "vlanGateway": {
          "type": "string",
          "description": "gateway of vlan\n"
        },
        "vlanPrimaryDns": {
          "type": "string",
          "description": "primary dns of vlan\n"
        },
        "vlanSecondaryDns": {
          "type": "string",
          "description": "secondary dns of vlan\n"
        },
        "vlanSubnetMask": {
          "type": "string",
          "description": "subnet mask of vlan\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "vlanGateway",
            "vlanPrimaryDns",
            "vlanSecondaryDns",
            "vlanSubnetMask"
          ]
        }
      }
    },
    "nutanix:index/NdbStretchedVlanVlansListProperty:NdbStretchedVlanVlansListProperty": {
      "properties": {
        "name": {
          "type": "string",
          "description": "name for the stretched VLAN\n"
        },
        "secure": {
          "type": "boolean"
        },
        "value": {
          "type": "string"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "name",
            "secure",
            "value"
          ]
        }
      }
    },
    "nutanix:index/NetworkSecurityPolicyV2Link:NetworkSecurityPolicyV2Link": {
      "properties": {
        "href": {
          "type": "string"
        },
        "rel": {
          "type": "string"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "href",
            "rel"
          ]
        }
      }
    },
    "nutanix:index/NetworkSecurityPolicyV2Rule:NetworkSecurityPolicyV2Rule": {
      "properties": {
        "description": {
          "type": "string",
          "description": "A user defined annotation for a rule.\n"
        },
        "extId": {
          "type": "string",
          "description": "A globally unique identifier of an instance that is suitable for external consumption.\n"
        },
        "links": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FNetworkSecurityPolicyV2RuleLink:NetworkSecurityPolicyV2RuleLink"
          },
          "description": "A HATEOAS style link for the response. Each link contains a user-friendly name identifying the link and an address for retrieving the particular resource.\n"
        },
        "specs": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FNetworkSecurityPolicyV2RuleSpec:NetworkSecurityPolicyV2RuleSpec"
          },
          "description": "Spec for rules.\n"
        },
        "type": {
          "type": "string",
          "description": "The type for a rule—the value chosen here restricts which specification can be chosen. Acceptable values are \"QUARANTINE\", \"TWO_ENV_ISOLATION\", \"APPLICATION\", \"INTRA_GROUP\".\n"
        }
      },
      "type": "object",
      "required": [
        "specs",
        "type"
      ],
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "description",
            "extId",
            "links",
            "specs",
            "type"
          ]
        }
      }
    },
    "nutanix:index/NetworkSecurityPolicyV2RuleLink:NetworkSecurityPolicyV2RuleLink": {
      "properties": {
        "href": {
          "type": "string"
        },
        "rel": {
          "type": "string"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "href",
            "rel"
          ]
        }
      }
    },
    "nutanix:index/NetworkSecurityPolicyV2RuleSpec:NetworkSecurityPolicyV2RuleSpec": {
      "properties": {
        "applicationRuleSpecs": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FNetworkSecurityPolicyV2RuleSpecApplicationRuleSpec:NetworkSecurityPolicyV2RuleSpecApplicationRuleSpec"
          },
          "description": "Application Rule Spec.\n"
        },
        "intraEntityGroupRuleSpecs": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FNetworkSecurityPolicyV2RuleSpecIntraEntityGroupRuleSpec:NetworkSecurityPolicyV2RuleSpecIntraEntityGroupRuleSpec"
          },
          "description": "Intra entity group Rule Spec\n"
        },
        "multiEnvIsolationRuleSpecs": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FNetworkSecurityPolicyV2RuleSpecMultiEnvIsolationRuleSpec:NetworkSecurityPolicyV2RuleSpecMultiEnvIsolationRuleSpec"
          },
          "description": "Multi Environment Isolation Rule Spec.\n"
        },
        "twoEnvIsolationRuleSpecs": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FNetworkSecurityPolicyV2RuleSpecTwoEnvIsolationRuleSpec:NetworkSecurityPolicyV2RuleSpecTwoEnvIsolationRuleSpec"
          },
          "description": "Two Environment Isolation Rule Spec.\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "intraEntityGroupRuleSpecs",
            "multiEnvIsolationRuleSpecs"
          ]
        }
      }
    },
    "nutanix:index/NetworkSecurityPolicyV2RuleSpecApplicationRuleSpec:NetworkSecurityPolicyV2RuleSpecApplicationRuleSpec": {
      "properties": {
        "destAddressGroupReferences": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "A list of address group references.\n"
        },
        "destAllowSpec": {
          "type": "string",
          "description": "A specification to how allow mode traffic should be applied, either ALL or NONE.\n"
        },
        "destCategoryReferences": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "List of categories that define a set of network endpoints as outbound.\n"
        },
        "destSubnets": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FNetworkSecurityPolicyV2RuleSpecApplicationRuleSpecDestSubnet:NetworkSecurityPolicyV2RuleSpecApplicationRuleSpecDestSubnet"
          },
          "description": "destination subnet value\n"
        },
        "icmpServices": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FNetworkSecurityPolicyV2RuleSpecApplicationRuleSpecIcmpService:NetworkSecurityPolicyV2RuleSpecApplicationRuleSpecIcmpService"
          },
          "description": "icmp services\n"
        },
        "isAllProtocolAllowed": {
          "type": "boolean",
          "description": "Denotes if rule allows traffic for all protocol.\n"
        },
        "networkFunctionChainReference": {
          "type": "string",
          "description": "A reference to the network function chain in the rule.\n"
        },
        "securedGroupCategoryReferences": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "A set of network endpoints which is protected by a Network Security Policy and defined as a list of categories.\n"
        },
        "serviceGroupReferences": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "A list of service group references.\n"
        },
        "srcAddressGroupReferences": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "A list of address group references.\n"
        },
        "srcAllowSpec": {
          "type": "string",
          "description": "A specification to how allow mode traffic should be applied, either ALL or NONE.\n"
        },
        "srcCategoryReferences": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "List of categories that define a set of network endpoints as inbound.\n"
        },
        "srcSubnets": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FNetworkSecurityPolicyV2RuleSpecApplicationRuleSpecSrcSubnet:NetworkSecurityPolicyV2RuleSpecApplicationRuleSpecSrcSubnet"
          },
          "description": "source subnet value\n"
        },
        "tcpServices": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FNetworkSecurityPolicyV2RuleSpecApplicationRuleSpecTcpService:NetworkSecurityPolicyV2RuleSpecApplicationRuleSpecTcpService"
          },
          "description": "tcp services\n"
        },
        "udpServices": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FNetworkSecurityPolicyV2RuleSpecApplicationRuleSpecUdpService:NetworkSecurityPolicyV2RuleSpecApplicationRuleSpecUdpService"
          },
          "description": "udp services\n"
        }
      },
      "type": "object",
      "required": [
        "securedGroupCategoryReferences"
      ],
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "destAddressGroupReferences",
            "destAllowSpec",
            "destCategoryReferences",
            "destSubnets",
            "isAllProtocolAllowed",
            "networkFunctionChainReference",
            "securedGroupCategoryReferences",
            "serviceGroupReferences",
            "srcAddressGroupReferences",
            "srcAllowSpec",
            "srcCategoryReferences",
            "srcSubnets"
          ]
        }
      }
    },
    "nutanix:index/NetworkSecurityPolicyV2RuleSpecApplicationRuleSpecDestSubnet:NetworkSecurityPolicyV2RuleSpecApplicationRuleSpecDestSubnet": {
      "properties": {
        "prefixLength": {
          "type": "integer"
        },
        "value": {
          "type": "string"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "prefixLength",
            "value"
          ]
        }
      }
    },
    "nutanix:index/NetworkSecurityPolicyV2RuleSpecApplicationRuleSpecIcmpService:NetworkSecurityPolicyV2RuleSpecApplicationRuleSpecIcmpService": {
      "properties": {
        "code": {
          "type": "integer",
          "description": "Icmp service Code. Ignore this field if Code has to be ANY.\n"
        },
        "isAllAllowed": {
          "type": "boolean",
          "description": "Set this field to true if both Type and Code is ANY.\n"
        },
        "type": {
          "type": "integer",
          "description": "Icmp service Type. Ignore this field if Type has to be ANY.\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "code",
            "isAllAllowed",
            "type"
          ]
        }
      }
    },
    "nutanix:index/NetworkSecurityPolicyV2RuleSpecApplicationRuleSpecSrcSubnet:NetworkSecurityPolicyV2RuleSpecApplicationRuleSpecSrcSubnet": {
      "properties": {
        "prefixLength": {
          "type": "integer"
        },
        "value": {
          "type": "string"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "prefixLength",
            "value"
          ]
        }
      }
    },
    "nutanix:index/NetworkSecurityPolicyV2RuleSpecApplicationRuleSpecTcpService:NetworkSecurityPolicyV2RuleSpecApplicationRuleSpecTcpService": {
      "properties": {
        "endPort": {
          "type": "integer",
          "description": "end port\n"
        },
        "startPort": {
          "type": "integer",
          "description": "start port\n"
        }
      },
      "type": "object",
      "required": [
        "endPort",
        "startPort"
      ]
    },
    "nutanix:index/NetworkSecurityPolicyV2RuleSpecApplicationRuleSpecUdpService:NetworkSecurityPolicyV2RuleSpecApplicationRuleSpecUdpService": {
      "properties": {
        "endPort": {
          "type": "integer",
          "description": "end port\n"
        },
        "startPort": {
          "type": "integer",
          "description": "start port\n"
        }
      },
      "type": "object",
      "required": [
        "endPort",
        "startPort"
      ]
    },
    "nutanix:index/NetworkSecurityPolicyV2RuleSpecIntraEntityGroupRuleSpec:NetworkSecurityPolicyV2RuleSpecIntraEntityGroupRuleSpec": {
      "properties": {
        "securedGroupAction": {
          "type": "string",
          "description": "List of secured group action.\n"
        },
        "securedGroupCategoryReferences": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "A specification to whether traffic between intra secured group entities should be allowed or denied.\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "securedGroupAction",
            "securedGroupCategoryReferences"
          ]
        }
      }
    },
    "nutanix:index/NetworkSecurityPolicyV2RuleSpecMultiEnvIsolationRuleSpec:NetworkSecurityPolicyV2RuleSpecMultiEnvIsolationRuleSpec": {
      "properties": {
        "specs": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FNetworkSecurityPolicyV2RuleSpecMultiEnvIsolationRuleSpecSpec:NetworkSecurityPolicyV2RuleSpecMultiEnvIsolationRuleSpecSpec"
          },
          "description": "Multi Environment Isolation Rule Spec.\n"
        }
      },
      "type": "object",
      "required": [
        "specs"
      ]
    },
    "nutanix:index/NetworkSecurityPolicyV2RuleSpecMultiEnvIsolationRuleSpecSpec:NetworkSecurityPolicyV2RuleSpecMultiEnvIsolationRuleSpecSpec": {
      "properties": {
        "allToAllIsolationGroups": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FNetworkSecurityPolicyV2RuleSpecMultiEnvIsolationRuleSpecSpecAllToAllIsolationGroup:NetworkSecurityPolicyV2RuleSpecMultiEnvIsolationRuleSpecSpecAllToAllIsolationGroup"
          },
          "description": "all to all isolation groups\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "allToAllIsolationGroups"
          ]
        }
      }
    },
    "nutanix:index/NetworkSecurityPolicyV2RuleSpecMultiEnvIsolationRuleSpecSpecAllToAllIsolationGroup:NetworkSecurityPolicyV2RuleSpecMultiEnvIsolationRuleSpecSpecAllToAllIsolationGroup": {
      "properties": {
        "isolationGroups": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FNetworkSecurityPolicyV2RuleSpecMultiEnvIsolationRuleSpecSpecAllToAllIsolationGroupIsolationGroup:NetworkSecurityPolicyV2RuleSpecMultiEnvIsolationRuleSpecSpecAllToAllIsolationGroupIsolationGroup"
          },
          "description": "Denotes the list of secured groups that will be used in All to All mutual isolation.\n"
        }
      },
      "type": "object",
      "required": [
        "isolationGroups"
      ]
    },
    "nutanix:index/NetworkSecurityPolicyV2RuleSpecMultiEnvIsolationRuleSpecSpecAllToAllIsolationGroupIsolationGroup:NetworkSecurityPolicyV2RuleSpecMultiEnvIsolationRuleSpecSpecAllToAllIsolationGroupIsolationGroup": {
      "properties": {
        "groupCategoryReferences": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "External identifiers of categories belonging to the isolation group.\n"
        }
      },
      "type": "object",
      "required": [
        "groupCategoryReferences"
      ]
    },
    "nutanix:index/NetworkSecurityPolicyV2RuleSpecTwoEnvIsolationRuleSpec:NetworkSecurityPolicyV2RuleSpecTwoEnvIsolationRuleSpec": {
      "properties": {
        "firstIsolationGroups": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "Denotes the first group of category uuids that will be used in an isolation policy.\n"
        },
        "secondIsolationGroups": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "Denotes the second group of category uuids that will be used in an isolation policy.\n"
        }
      },
      "type": "object",
      "required": [
        "firstIsolationGroups",
        "secondIsolationGroups"
      ]
    },
    "nutanix:index/NetworkSecurityRuleAdRuleInboundAllowList:NetworkSecurityRuleAdRuleInboundAllowList": {
      "properties": {
        "addressGroupInclusionLists": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FNetworkSecurityRuleAdRuleInboundAllowListAddressGroupInclusionList:NetworkSecurityRuleAdRuleInboundAllowListAddressGroupInclusionList"
          }
        },
        "expirationTime": {
          "type": "string"
        },
        "filterKindLists": {
          "type": "array",
          "items": {
            "type": "string"
          }
        },
        "filterParams": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FNetworkSecurityRuleAdRuleInboundAllowListFilterParam:NetworkSecurityRuleAdRuleInboundAllowListFilterParam"
          }
        },
        "filterType": {
          "type": "string"
        },
        "icmpTypeCodeLists": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FNetworkSecurityRuleAdRuleInboundAllowListIcmpTypeCodeList:NetworkSecurityRuleAdRuleInboundAllowListIcmpTypeCodeList"
          }
        },
        "ipSubnet": {
          "type": "string"
        },
        "ipSubnetPrefixLength": {
          "type": "string"
        },
        "networkFunctionChainReference": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          }
        },
        "peerSpecificationType": {
          "type": "string"
        },
        "protocol": {
          "type": "string"
        },
        "serviceGroupLists": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FNetworkSecurityRuleAdRuleInboundAllowListServiceGroupList:NetworkSecurityRuleAdRuleInboundAllowListServiceGroupList"
          }
        },
        "tcpPortRangeLists": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FNetworkSecurityRuleAdRuleInboundAllowListTcpPortRangeList:NetworkSecurityRuleAdRuleInboundAllowListTcpPortRangeList"
          }
        },
        "udpPortRangeLists": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FNetworkSecurityRuleAdRuleInboundAllowListUdpPortRangeList:NetworkSecurityRuleAdRuleInboundAllowListUdpPortRangeList"
          }
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "addressGroupInclusionLists",
            "expirationTime",
            "filterKindLists",
            "filterParams",
            "filterType",
            "icmpTypeCodeLists",
            "ipSubnet",
            "ipSubnetPrefixLength",
            "networkFunctionChainReference",
            "peerSpecificationType",
            "protocol",
            "serviceGroupLists",
            "tcpPortRangeLists",
            "udpPortRangeLists"
          ]
        }
      }
    },
    "nutanix:index/NetworkSecurityRuleAdRuleInboundAllowListAddressGroupInclusionList:NetworkSecurityRuleAdRuleInboundAllowListAddressGroupInclusionList": {
      "properties": {
        "kind": {
          "type": "string",
          "description": "- The kind name (Default value: project)(Required).\n"
        },
        "name": {
          "type": "string",
          "description": "- (Required) The name for the network_security_rule.\n"
        },
        "uuid": {
          "type": "string",
          "description": "- the UUID(Required).\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "kind",
            "name",
            "uuid"
          ]
        }
      }
    },
    "nutanix:index/NetworkSecurityRuleAdRuleInboundAllowListFilterParam:NetworkSecurityRuleAdRuleInboundAllowListFilterParam": {
      "properties": {
        "name": {
          "type": "string",
          "description": "- (Required) The name for the network_security_rule.\n"
        },
        "values": {
          "type": "array",
          "items": {
            "type": "string"
          }
        }
      },
      "type": "object",
      "required": [
        "name",
        "values"
      ]
    },
    "nutanix:index/NetworkSecurityRuleAdRuleInboundAllowListIcmpTypeCodeList:NetworkSecurityRuleAdRuleInboundAllowListIcmpTypeCodeList": {
      "properties": {
        "code": {
          "type": "string"
        },
        "type": {
          "type": "string"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "code",
            "type"
          ]
        }
      }
    },
    "nutanix:index/NetworkSecurityRuleAdRuleInboundAllowListServiceGroupList:NetworkSecurityRuleAdRuleInboundAllowListServiceGroupList": {
      "properties": {
        "kind": {
          "type": "string",
          "description": "- The kind name (Default value: project)(Required).\n"
        },
        "name": {
          "type": "string",
          "description": "- (Required) The name for the network_security_rule.\n"
        },
        "uuid": {
          "type": "string",
          "description": "- the UUID(Required).\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "kind",
            "name",
            "uuid"
          ]
        }
      }
    },
    "nutanix:index/NetworkSecurityRuleAdRuleInboundAllowListTcpPortRangeList:NetworkSecurityRuleAdRuleInboundAllowListTcpPortRangeList": {
      "properties": {
        "endPort": {
          "type": "integer"
        },
        "startPort": {
          "type": "integer"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "endPort",
            "startPort"
          ]
        }
      }
    },
    "nutanix:index/NetworkSecurityRuleAdRuleInboundAllowListUdpPortRangeList:NetworkSecurityRuleAdRuleInboundAllowListUdpPortRangeList": {
      "properties": {
        "endPort": {
          "type": "integer"
        },
        "startPort": {
          "type": "integer"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "endPort",
            "startPort"
          ]
        }
      }
    },
    "nutanix:index/NetworkSecurityRuleAdRuleOutboundAllowList:NetworkSecurityRuleAdRuleOutboundAllowList": {
      "properties": {
        "addressGroupInclusionLists": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FNetworkSecurityRuleAdRuleOutboundAllowListAddressGroupInclusionList:NetworkSecurityRuleAdRuleOutboundAllowListAddressGroupInclusionList"
          }
        },
        "expirationTime": {
          "type": "string"
        },
        "filterKindLists": {
          "type": "array",
          "items": {
            "type": "string"
          }
        },
        "filterParams": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FNetworkSecurityRuleAdRuleOutboundAllowListFilterParam:NetworkSecurityRuleAdRuleOutboundAllowListFilterParam"
          }
        },
        "filterType": {
          "type": "string"
        },
        "icmpTypeCodeLists": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FNetworkSecurityRuleAdRuleOutboundAllowListIcmpTypeCodeList:NetworkSecurityRuleAdRuleOutboundAllowListIcmpTypeCodeList"
          }
        },
        "ipSubnet": {
          "type": "string"
        },
        "ipSubnetPrefixLength": {
          "type": "string"
        },
        "networkFunctionChainReference": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          }
        },
        "peerSpecificationType": {
          "type": "string"
        },
        "protocol": {
          "type": "string"
        },
        "serviceGroupLists": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FNetworkSecurityRuleAdRuleOutboundAllowListServiceGroupList:NetworkSecurityRuleAdRuleOutboundAllowListServiceGroupList"
          }
        },
        "tcpPortRangeLists": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FNetworkSecurityRuleAdRuleOutboundAllowListTcpPortRangeList:NetworkSecurityRuleAdRuleOutboundAllowListTcpPortRangeList"
          }
        },
        "udpPortRangeLists": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FNetworkSecurityRuleAdRuleOutboundAllowListUdpPortRangeList:NetworkSecurityRuleAdRuleOutboundAllowListUdpPortRangeList"
          }
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "addressGroupInclusionLists",
            "expirationTime",
            "filterKindLists",
            "filterParams",
            "filterType",
            "icmpTypeCodeLists",
            "ipSubnet",
            "ipSubnetPrefixLength",
            "networkFunctionChainReference",
            "peerSpecificationType",
            "protocol",
            "serviceGroupLists",
            "tcpPortRangeLists",
            "udpPortRangeLists"
          ]
        }
      }
    },
    "nutanix:index/NetworkSecurityRuleAdRuleOutboundAllowListAddressGroupInclusionList:NetworkSecurityRuleAdRuleOutboundAllowListAddressGroupInclusionList": {
      "properties": {
        "kind": {
          "type": "string",
          "description": "- The kind name (Default value: project)(Required).\n"
        },
        "name": {
          "type": "string",
          "description": "- (Required) The name for the network_security_rule.\n"
        },
        "uuid": {
          "type": "string",
          "description": "- the UUID(Required).\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "kind",
            "name",
            "uuid"
          ]
        }
      }
    },
    "nutanix:index/NetworkSecurityRuleAdRuleOutboundAllowListFilterParam:NetworkSecurityRuleAdRuleOutboundAllowListFilterParam": {
      "properties": {
        "name": {
          "type": "string",
          "description": "- (Required) The name for the network_security_rule.\n"
        },
        "values": {
          "type": "array",
          "items": {
            "type": "string"
          }
        }
      },
      "type": "object",
      "required": [
        "name",
        "values"
      ]
    },
    "nutanix:index/NetworkSecurityRuleAdRuleOutboundAllowListIcmpTypeCodeList:NetworkSecurityRuleAdRuleOutboundAllowListIcmpTypeCodeList": {
      "properties": {
        "code": {
          "type": "string"
        },
        "type": {
          "type": "string"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "code",
            "type"
          ]
        }
      }
    },
    "nutanix:index/NetworkSecurityRuleAdRuleOutboundAllowListServiceGroupList:NetworkSecurityRuleAdRuleOutboundAllowListServiceGroupList": {
      "properties": {
        "kind": {
          "type": "string",
          "description": "- The kind name (Default value: project)(Required).\n"
        },
        "name": {
          "type": "string",
          "description": "- (Required) The name for the network_security_rule.\n"
        },
        "uuid": {
          "type": "string",
          "description": "- the UUID(Required).\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "kind",
            "name",
            "uuid"
          ]
        }
      }
    },
    "nutanix:index/NetworkSecurityRuleAdRuleOutboundAllowListTcpPortRangeList:NetworkSecurityRuleAdRuleOutboundAllowListTcpPortRangeList": {
      "properties": {
        "endPort": {
          "type": "integer"
        },
        "startPort": {
          "type": "integer"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "endPort",
            "startPort"
          ]
        }
      }
    },
    "nutanix:index/NetworkSecurityRuleAdRuleOutboundAllowListUdpPortRangeList:NetworkSecurityRuleAdRuleOutboundAllowListUdpPortRangeList": {
      "properties": {
        "endPort": {
          "type": "integer"
        },
        "startPort": {
          "type": "integer"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "endPort",
            "startPort"
          ]
        }
      }
    },
    "nutanix:index/NetworkSecurityRuleAdRuleTargetGroupFilterParam:NetworkSecurityRuleAdRuleTargetGroupFilterParam": {
      "properties": {
        "name": {
          "type": "string",
          "description": "- (Required) The name for the network_security_rule.\n"
        },
        "values": {
          "type": "array",
          "items": {
            "type": "string"
          }
        }
      },
      "type": "object",
      "required": [
        "name",
        "values"
      ]
    },
    "nutanix:index/NetworkSecurityRuleAppRuleInboundAllowList:NetworkSecurityRuleAppRuleInboundAllowList": {
      "properties": {
        "addressGroupInclusionLists": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FNetworkSecurityRuleAppRuleInboundAllowListAddressGroupInclusionList:NetworkSecurityRuleAppRuleInboundAllowListAddressGroupInclusionList"
          }
        },
        "expirationTime": {
          "type": "string"
        },
        "filterKindLists": {
          "type": "array",
          "items": {
            "type": "string"
          }
        },
        "filterParams": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FNetworkSecurityRuleAppRuleInboundAllowListFilterParam:NetworkSecurityRuleAppRuleInboundAllowListFilterParam"
          }
        },
        "filterType": {
          "type": "string"
        },
        "icmpTypeCodeLists": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FNetworkSecurityRuleAppRuleInboundAllowListIcmpTypeCodeList:NetworkSecurityRuleAppRuleInboundAllowListIcmpTypeCodeList"
          }
        },
        "ipSubnet": {
          "type": "string"
        },
        "ipSubnetPrefixLength": {
          "type": "string"
        },
        "networkFunctionChainReference": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          }
        },
        "peerSpecificationType": {
          "type": "string"
        },
        "protocol": {
          "type": "string"
        },
        "serviceGroupLists": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FNetworkSecurityRuleAppRuleInboundAllowListServiceGroupList:NetworkSecurityRuleAppRuleInboundAllowListServiceGroupList"
          }
        },
        "tcpPortRangeLists": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FNetworkSecurityRuleAppRuleInboundAllowListTcpPortRangeList:NetworkSecurityRuleAppRuleInboundAllowListTcpPortRangeList"
          }
        },
        "udpPortRangeLists": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FNetworkSecurityRuleAppRuleInboundAllowListUdpPortRangeList:NetworkSecurityRuleAppRuleInboundAllowListUdpPortRangeList"
          }
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "addressGroupInclusionLists",
            "expirationTime",
            "filterKindLists",
            "filterParams",
            "filterType",
            "icmpTypeCodeLists",
            "ipSubnet",
            "ipSubnetPrefixLength",
            "networkFunctionChainReference",
            "peerSpecificationType",
            "protocol",
            "serviceGroupLists",
            "tcpPortRangeLists",
            "udpPortRangeLists"
          ]
        }
      }
    },
    "nutanix:index/NetworkSecurityRuleAppRuleInboundAllowListAddressGroupInclusionList:NetworkSecurityRuleAppRuleInboundAllowListAddressGroupInclusionList": {
      "properties": {
        "kind": {
          "type": "string",
          "description": "- The kind name (Default value: project)(Required).\n"
        },
        "name": {
          "type": "string",
          "description": "- (Required) The name for the network_security_rule.\n"
        },
        "uuid": {
          "type": "string",
          "description": "- the UUID(Required).\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "kind",
            "name",
            "uuid"
          ]
        }
      }
    },
    "nutanix:index/NetworkSecurityRuleAppRuleInboundAllowListFilterParam:NetworkSecurityRuleAppRuleInboundAllowListFilterParam": {
      "properties": {
        "name": {
          "type": "string",
          "description": "- (Required) The name for the network_security_rule.\n"
        },
        "values": {
          "type": "array",
          "items": {
            "type": "string"
          }
        }
      },
      "type": "object",
      "required": [
        "name",
        "values"
      ]
    },
    "nutanix:index/NetworkSecurityRuleAppRuleInboundAllowListIcmpTypeCodeList:NetworkSecurityRuleAppRuleInboundAllowListIcmpTypeCodeList": {
      "properties": {
        "code": {
          "type": "string"
        },
        "type": {
          "type": "string"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "code",
            "type"
          ]
        }
      }
    },
    "nutanix:index/NetworkSecurityRuleAppRuleInboundAllowListServiceGroupList:NetworkSecurityRuleAppRuleInboundAllowListServiceGroupList": {
      "properties": {
        "kind": {
          "type": "string",
          "description": "- The kind name (Default value: project)(Required).\n"
        },
        "name": {
          "type": "string",
          "description": "- (Required) The name for the network_security_rule.\n"
        },
        "uuid": {
          "type": "string",
          "description": "- the UUID(Required).\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "kind",
            "name",
            "uuid"
          ]
        }
      }
    },
    "nutanix:index/NetworkSecurityRuleAppRuleInboundAllowListTcpPortRangeList:NetworkSecurityRuleAppRuleInboundAllowListTcpPortRangeList": {
      "properties": {
        "endPort": {
          "type": "integer"
        },
        "startPort": {
          "type": "integer"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "endPort",
            "startPort"
          ]
        }
      }
    },
    "nutanix:index/NetworkSecurityRuleAppRuleInboundAllowListUdpPortRangeList:NetworkSecurityRuleAppRuleInboundAllowListUdpPortRangeList": {
      "properties": {
        "endPort": {
          "type": "integer"
        },
        "startPort": {
          "type": "integer"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "endPort",
            "startPort"
          ]
        }
      }
    },
    "nutanix:index/NetworkSecurityRuleAppRuleOutboundAllowList:NetworkSecurityRuleAppRuleOutboundAllowList": {
      "properties": {
        "addressGroupInclusionLists": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FNetworkSecurityRuleAppRuleOutboundAllowListAddressGroupInclusionList:NetworkSecurityRuleAppRuleOutboundAllowListAddressGroupInclusionList"
          }
        },
        "expirationTime": {
          "type": "string"
        },
        "filterKindLists": {
          "type": "array",
          "items": {
            "type": "string"
          }
        },
        "filterParams": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FNetworkSecurityRuleAppRuleOutboundAllowListFilterParam:NetworkSecurityRuleAppRuleOutboundAllowListFilterParam"
          }
        },
        "filterType": {
          "type": "string"
        },
        "icmpTypeCodeLists": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FNetworkSecurityRuleAppRuleOutboundAllowListIcmpTypeCodeList:NetworkSecurityRuleAppRuleOutboundAllowListIcmpTypeCodeList"
          }
        },
        "ipSubnet": {
          "type": "string"
        },
        "ipSubnetPrefixLength": {
          "type": "string"
        },
        "networkFunctionChainReference": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          }
        },
        "peerSpecificationType": {
          "type": "string"
        },
        "protocol": {
          "type": "string"
        },
        "serviceGroupLists": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FNetworkSecurityRuleAppRuleOutboundAllowListServiceGroupList:NetworkSecurityRuleAppRuleOutboundAllowListServiceGroupList"
          }
        },
        "tcpPortRangeLists": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FNetworkSecurityRuleAppRuleOutboundAllowListTcpPortRangeList:NetworkSecurityRuleAppRuleOutboundAllowListTcpPortRangeList"
          }
        },
        "udpPortRangeLists": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FNetworkSecurityRuleAppRuleOutboundAllowListUdpPortRangeList:NetworkSecurityRuleAppRuleOutboundAllowListUdpPortRangeList"
          }
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "addressGroupInclusionLists",
            "expirationTime",
            "filterKindLists",
            "filterParams",
            "filterType",
            "icmpTypeCodeLists",
            "ipSubnet",
            "ipSubnetPrefixLength",
            "networkFunctionChainReference",
            "peerSpecificationType",
            "protocol",
            "serviceGroupLists",
            "tcpPortRangeLists",
            "udpPortRangeLists"
          ]
        }
      }
    },
    "nutanix:index/NetworkSecurityRuleAppRuleOutboundAllowListAddressGroupInclusionList:NetworkSecurityRuleAppRuleOutboundAllowListAddressGroupInclusionList": {
      "properties": {
        "kind": {
          "type": "string",
          "description": "- The kind name (Default value: project)(Required).\n"
        },
        "name": {
          "type": "string",
          "description": "- (Required) The name for the network_security_rule.\n"
        },
        "uuid": {
          "type": "string",
          "description": "- the UUID(Required).\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "kind",
            "name",
            "uuid"
          ]
        }
      }
    },
    "nutanix:index/NetworkSecurityRuleAppRuleOutboundAllowListFilterParam:NetworkSecurityRuleAppRuleOutboundAllowListFilterParam": {
      "properties": {
        "name": {
          "type": "string",
          "description": "- (Required) The name for the network_security_rule.\n"
        },
        "values": {
          "type": "array",
          "items": {
            "type": "string"
          }
        }
      },
      "type": "object",
      "required": [
        "name",
        "values"
      ]
    },
    "nutanix:index/NetworkSecurityRuleAppRuleOutboundAllowListIcmpTypeCodeList:NetworkSecurityRuleAppRuleOutboundAllowListIcmpTypeCodeList": {
      "properties": {
        "code": {
          "type": "string"
        },
        "type": {
          "type": "string"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "code",
            "type"
          ]
        }
      }
    },
    "nutanix:index/NetworkSecurityRuleAppRuleOutboundAllowListServiceGroupList:NetworkSecurityRuleAppRuleOutboundAllowListServiceGroupList": {
      "properties": {
        "kind": {
          "type": "string",
          "description": "- The kind name (Default value: project)(Required).\n"
        },
        "name": {
          "type": "string",
          "description": "- (Required) The name for the network_security_rule.\n"
        },
        "uuid": {
          "type": "string",
          "description": "- the UUID(Required).\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "kind",
            "name",
            "uuid"
          ]
        }
      }
    },
    "nutanix:index/NetworkSecurityRuleAppRuleOutboundAllowListTcpPortRangeList:NetworkSecurityRuleAppRuleOutboundAllowListTcpPortRangeList": {
      "properties": {
        "endPort": {
          "type": "integer"
        },
        "startPort": {
          "type": "integer"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "endPort",
            "startPort"
          ]
        }
      }
    },
    "nutanix:index/NetworkSecurityRuleAppRuleOutboundAllowListUdpPortRangeList:NetworkSecurityRuleAppRuleOutboundAllowListUdpPortRangeList": {
      "properties": {
        "endPort": {
          "type": "integer"
        },
        "startPort": {
          "type": "integer"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "endPort",
            "startPort"
          ]
        }
      }
    },
    "nutanix:index/NetworkSecurityRuleAppRuleTargetGroupFilterParam:NetworkSecurityRuleAppRuleTargetGroupFilterParam": {
      "properties": {
        "name": {
          "type": "string",
          "description": "- (Required) The name for the network_security_rule.\n"
        },
        "values": {
          "type": "array",
          "items": {
            "type": "string"
          }
        }
      },
      "type": "object",
      "required": [
        "name",
        "values"
      ]
    },
    "nutanix:index/NetworkSecurityRuleCategory:NetworkSecurityRuleCategory": {
      "properties": {
        "name": {
          "type": "string",
          "description": "- (Required) The name for the network_security_rule.\n"
        },
        "value": {
          "type": "string"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "name",
            "value"
          ]
        }
      }
    },
    "nutanix:index/NetworkSecurityRuleIsolationRuleFirstEntityFilterParam:NetworkSecurityRuleIsolationRuleFirstEntityFilterParam": {
      "properties": {
        "name": {
          "type": "string",
          "description": "- (Required) The name for the network_security_rule.\n"
        },
        "values": {
          "type": "array",
          "items": {
            "type": "string"
          }
        }
      },
      "type": "object",
      "required": [
        "name",
        "values"
      ]
    },
    "nutanix:index/NetworkSecurityRuleIsolationRuleSecondEntityFilterParam:NetworkSecurityRuleIsolationRuleSecondEntityFilterParam": {
      "properties": {
        "name": {
          "type": "string",
          "description": "- (Required) The name for the network_security_rule.\n"
        },
        "values": {
          "type": "array",
          "items": {
            "type": "string"
          }
        }
      },
      "type": "object",
      "required": [
        "name",
        "values"
      ]
    },
    "nutanix:index/NgtInstallationV2Credential:NgtInstallationV2Credential": {
      "properties": {
        "password": {
          "type": "string",
          "description": "- (Required) password to sign in to server\n"
        },
        "username": {
          "type": "string",
          "description": "- (Required) username to sign in to server\n"
        }
      },
      "type": "object",
      "required": [
        "password",
        "username"
      ]
    },
    "nutanix:index/NgtInstallationV2RebootPreference:NgtInstallationV2RebootPreference": {
      "properties": {
        "schedule": {
          "$ref": "#/types/nutanix:index%2FNgtInstallationV2RebootPreferenceSchedule:NgtInstallationV2RebootPreferenceSchedule",
          "description": "- Restart schedule.\n"
        },
        "scheduleType": {
          "type": "string",
          "description": "- Schedule type for restart.\n* `LATER` : Schedule a restart for a specific time.\n* `SKIP` : Do not schedule a restart.\n* `IMMEDIATE` : Schedule an immediate restart.\n"
        }
      },
      "type": "object",
      "required": [
        "scheduleType"
      ]
    },
    "nutanix:index/NgtInstallationV2RebootPreferenceSchedule:NgtInstallationV2RebootPreferenceSchedule": {
      "properties": {
        "startTime": {
          "type": "string",
          "description": "- The start time for a scheduled restart.\n"
        }
      },
      "type": "object",
      "required": [
        "startTime"
      ]
    },
    "nutanix:index/NgtUpgradeV2RebootPreference:NgtUpgradeV2RebootPreference": {
      "properties": {
        "schedule": {
          "$ref": "#/types/nutanix:index%2FNgtUpgradeV2RebootPreferenceSchedule:NgtUpgradeV2RebootPreferenceSchedule",
          "description": "- Restart schedule.\n"
        },
        "scheduleType": {
          "type": "string",
          "description": "- Schedule type for restart.\n* `LATER` : Schedule a restart for a specific time.\n* `SKIP` : Do not schedule a restart.\n* `IMMEDIATE` : Schedule an immediate restart.\n"
        }
      },
      "type": "object",
      "required": [
        "scheduleType"
      ]
    },
    "nutanix:index/NgtUpgradeV2RebootPreferenceSchedule:NgtUpgradeV2RebootPreferenceSchedule": {
      "properties": {
        "startTime": {
          "type": "string",
          "description": "- The start time for a scheduled restart.\n"
        }
      },
      "type": "object",
      "required": [
        "startTime"
      ]
    },
    "nutanix:index/ObjectStoreCertificateV2AlternateFqdn:ObjectStoreCertificateV2AlternateFqdn": {
      "properties": {
        "value": {
          "type": "string"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "value"
          ]
        }
      }
    },
    "nutanix:index/ObjectStoreCertificateV2AlternateIp:ObjectStoreCertificateV2AlternateIp": {
      "properties": {
        "ipv4": {
          "$ref": "#/types/nutanix:index%2FObjectStoreCertificateV2AlternateIpIpv4:ObjectStoreCertificateV2AlternateIpIpv4"
        },
        "ipv6": {
          "$ref": "#/types/nutanix:index%2FObjectStoreCertificateV2AlternateIpIpv6:ObjectStoreCertificateV2AlternateIpIpv6"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "ipv4",
            "ipv6"
          ]
        }
      }
    },
    "nutanix:index/ObjectStoreCertificateV2AlternateIpIpv4:ObjectStoreCertificateV2AlternateIpIpv4": {
      "properties": {
        "prefixLength": {
          "type": "integer"
        },
        "value": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "value"
      ]
    },
    "nutanix:index/ObjectStoreCertificateV2AlternateIpIpv6:ObjectStoreCertificateV2AlternateIpIpv6": {
      "properties": {
        "prefixLength": {
          "type": "integer"
        },
        "value": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "value"
      ]
    },
    "nutanix:index/ObjectStoreCertificateV2Link:ObjectStoreCertificateV2Link": {
      "properties": {
        "href": {
          "type": "string"
        },
        "rel": {
          "type": "string"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "href",
            "rel"
          ]
        }
      }
    },
    "nutanix:index/ObjectStoreCertificateV2Metadata:ObjectStoreCertificateV2Metadata": {
      "properties": {
        "categoryIds": {
          "type": "array",
          "items": {
            "type": "string"
          }
        },
        "ownerReferenceId": {
          "type": "string"
        },
        "ownerUserName": {
          "type": "string"
        },
        "projectName": {
          "type": "string"
        },
        "projectReferenceId": {
          "type": "string"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "categoryIds",
            "ownerReferenceId",
            "ownerUserName",
            "projectName",
            "projectReferenceId"
          ]
        }
      }
    },
    "nutanix:index/ObjectStoreV2Link:ObjectStoreV2Link": {
      "properties": {
        "href": {
          "type": "string",
          "description": "- The URL at which the entity described by the link can be accessed.\n"
        },
        "rel": {
          "type": "string",
          "description": "- A name that identifies the relationship of the link to the object that is returned by the URL. The unique value of \"self\" identifies the URL for the object.\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "href",
            "rel"
          ]
        }
      }
    },
    "nutanix:index/ObjectStoreV2Metadata:ObjectStoreV2Metadata": {
      "properties": {
        "categoryIds": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "-(Optional) A list of globally unique identifiers that represent all the categories the resource is associated with.\n"
        },
        "ownerReferenceId": {
          "type": "string",
          "description": "-(Optional) A globally unique identifier that represents the owner of this resource.\n"
        },
        "ownerUserName": {
          "type": "string",
          "description": "-(Optional) The userName of the owner of this resource.\n"
        },
        "projectName": {
          "type": "string",
          "description": "-(Optional) The name of the project this resource belongs to.\n"
        },
        "projectReferenceId": {
          "type": "string",
          "description": "-(Optional) A globally unique identifier that represents the project this resource belongs to.\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "categoryIds",
            "ownerReferenceId",
            "ownerUserName",
            "projectName",
            "projectReferenceId"
          ]
        }
      }
    },
    "nutanix:index/ObjectStoreV2PublicNetworkIp:ObjectStoreV2PublicNetworkIp": {
      "properties": {
        "ipv4": {
          "$ref": "#/types/nutanix:index%2FObjectStoreV2PublicNetworkIpIpv4:ObjectStoreV2PublicNetworkIpIpv4",
          "description": "An unique address that identifies a device on the internet or a local network in IPv4 format.\n"
        },
        "ipv6": {
          "$ref": "#/types/nutanix:index%2FObjectStoreV2PublicNetworkIpIpv6:ObjectStoreV2PublicNetworkIpIpv6",
          "description": "An unique address that identifies a device on the internet or a local network in IPv6 format.\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "ipv4",
            "ipv6"
          ]
        }
      }
    },
    "nutanix:index/ObjectStoreV2PublicNetworkIpIpv4:ObjectStoreV2PublicNetworkIpIpv4": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "- The prefix length of the network to which this host IPv4 address belongs. Default for IPv4 is 32 and for IPv6 is 128.\n"
        },
        "value": {
          "type": "string",
          "description": "- The IPv4/IPv6 address of the host.\n"
        }
      },
      "type": "object",
      "required": [
        "value"
      ]
    },
    "nutanix:index/ObjectStoreV2PublicNetworkIpIpv6:ObjectStoreV2PublicNetworkIpIpv6": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "- The prefix length of the network to which this host IPv4 address belongs. Default for IPv4 is 32 and for IPv6 is 128.\n"
        },
        "value": {
          "type": "string",
          "description": "- The IPv4/IPv6 address of the host.\n"
        }
      },
      "type": "object",
      "required": [
        "value"
      ]
    },
    "nutanix:index/ObjectStoreV2StorageNetworkDnsIp:ObjectStoreV2StorageNetworkDnsIp": {
      "properties": {
        "ipv4": {
          "$ref": "#/types/nutanix:index%2FObjectStoreV2StorageNetworkDnsIpIpv4:ObjectStoreV2StorageNetworkDnsIpIpv4",
          "description": "An unique address that identifies a device on the internet or a local network in IPv4 format.\n"
        },
        "ipv6": {
          "$ref": "#/types/nutanix:index%2FObjectStoreV2StorageNetworkDnsIpIpv6:ObjectStoreV2StorageNetworkDnsIpIpv6",
          "description": "An unique address that identifies a device on the internet or a local network in IPv6 format.\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "ipv4",
            "ipv6"
          ]
        }
      }
    },
    "nutanix:index/ObjectStoreV2StorageNetworkDnsIpIpv4:ObjectStoreV2StorageNetworkDnsIpIpv4": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "- The prefix length of the network to which this host IPv4 address belongs. Default for IPv4 is 32 and for IPv6 is 128.\n"
        },
        "value": {
          "type": "string",
          "description": "- The IPv4/IPv6 address of the host.\n"
        }
      },
      "type": "object",
      "required": [
        "value"
      ]
    },
    "nutanix:index/ObjectStoreV2StorageNetworkDnsIpIpv6:ObjectStoreV2StorageNetworkDnsIpIpv6": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "- The prefix length of the network to which this host IPv4 address belongs. Default for IPv4 is 32 and for IPv6 is 128.\n"
        },
        "value": {
          "type": "string",
          "description": "- The IPv4/IPv6 address of the host.\n"
        }
      },
      "type": "object",
      "required": [
        "value"
      ]
    },
    "nutanix:index/ObjectStoreV2StorageNetworkVip:ObjectStoreV2StorageNetworkVip": {
      "properties": {
        "ipv4": {
          "$ref": "#/types/nutanix:index%2FObjectStoreV2StorageNetworkVipIpv4:ObjectStoreV2StorageNetworkVipIpv4",
          "description": "An unique address that identifies a device on the internet or a local network in IPv4 format.\n"
        },
        "ipv6": {
          "$ref": "#/types/nutanix:index%2FObjectStoreV2StorageNetworkVipIpv6:ObjectStoreV2StorageNetworkVipIpv6",
          "description": "An unique address that identifies a device on the internet or a local network in IPv6 format.\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "ipv4",
            "ipv6"
          ]
        }
      }
    },
    "nutanix:index/ObjectStoreV2StorageNetworkVipIpv4:ObjectStoreV2StorageNetworkVipIpv4": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "- The prefix length of the network to which this host IPv4 address belongs. Default for IPv4 is 32 and for IPv6 is 128.\n"
        },
        "value": {
          "type": "string",
          "description": "- The IPv4/IPv6 address of the host.\n"
        }
      },
      "type": "object",
      "required": [
        "value"
      ]
    },
    "nutanix:index/ObjectStoreV2StorageNetworkVipIpv6:ObjectStoreV2StorageNetworkVipIpv6": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "- The prefix length of the network to which this host IPv4 address belongs. Default for IPv4 is 32 and for IPv6 is 128.\n"
        },
        "value": {
          "type": "string",
          "description": "- The IPv4/IPv6 address of the host.\n"
        }
      },
      "type": "object",
      "required": [
        "value"
      ]
    },
    "nutanix:index/PbrDestination:PbrDestination": {
      "properties": {
        "addressType": {
          "type": "string"
        },
        "prefixLength": {
          "type": "integer"
        },
        "subnetIp": {
          "type": "string"
        }
      },
      "type": "object"
    },
    "nutanix:index/PbrProtocolParameters:PbrProtocolParameters": {
      "properties": {
        "icmp": {
          "$ref": "#/types/nutanix:index%2FPbrProtocolParametersIcmp:PbrProtocolParametersIcmp"
        },
        "protocolNumber": {
          "type": "string"
        },
        "tcp": {
          "$ref": "#/types/nutanix:index%2FPbrProtocolParametersTcp:PbrProtocolParametersTcp"
        },
        "udp": {
          "$ref": "#/types/nutanix:index%2FPbrProtocolParametersUdp:PbrProtocolParametersUdp"
        }
      },
      "type": "object"
    },
    "nutanix:index/PbrProtocolParametersIcmp:PbrProtocolParametersIcmp": {
      "properties": {
        "icmpCode": {
          "type": "integer"
        },
        "icmpType": {
          "type": "integer"
        }
      },
      "type": "object",
      "required": [
        "icmpCode",
        "icmpType"
      ]
    },
    "nutanix:index/PbrProtocolParametersTcp:PbrProtocolParametersTcp": {
      "properties": {
        "destinationPortRangeLists": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FPbrProtocolParametersTcpDestinationPortRangeList:PbrProtocolParametersTcpDestinationPortRangeList"
          }
        },
        "sourcePortRangeLists": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FPbrProtocolParametersTcpSourcePortRangeList:PbrProtocolParametersTcpSourcePortRangeList"
          }
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "destinationPortRangeLists",
            "sourcePortRangeLists"
          ]
        }
      }
    },
    "nutanix:index/PbrProtocolParametersTcpDestinationPortRangeList:PbrProtocolParametersTcpDestinationPortRangeList": {
      "properties": {
        "endPort": {
          "type": "integer"
        },
        "startPort": {
          "type": "integer"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "endPort",
            "startPort"
          ]
        }
      }
    },
    "nutanix:index/PbrProtocolParametersTcpSourcePortRangeList:PbrProtocolParametersTcpSourcePortRangeList": {
      "properties": {
        "endPort": {
          "type": "integer"
        },
        "startPort": {
          "type": "integer"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "endPort",
            "startPort"
          ]
        }
      }
    },
    "nutanix:index/PbrProtocolParametersUdp:PbrProtocolParametersUdp": {
      "properties": {
        "destinationPortRangeLists": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FPbrProtocolParametersUdpDestinationPortRangeList:PbrProtocolParametersUdpDestinationPortRangeList"
          }
        },
        "sourcePortRangeLists": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FPbrProtocolParametersUdpSourcePortRangeList:PbrProtocolParametersUdpSourcePortRangeList"
          }
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "destinationPortRangeLists",
            "sourcePortRangeLists"
          ]
        }
      }
    },
    "nutanix:index/PbrProtocolParametersUdpDestinationPortRangeList:PbrProtocolParametersUdpDestinationPortRangeList": {
      "properties": {
        "endPort": {
          "type": "integer"
        },
        "startPort": {
          "type": "integer"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "endPort",
            "startPort"
          ]
        }
      }
    },
    "nutanix:index/PbrProtocolParametersUdpSourcePortRangeList:PbrProtocolParametersUdpSourcePortRangeList": {
      "properties": {
        "endPort": {
          "type": "integer"
        },
        "startPort": {
          "type": "integer"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "endPort",
            "startPort"
          ]
        }
      }
    },
    "nutanix:index/PbrSource:PbrSource": {
      "properties": {
        "addressType": {
          "type": "string"
        },
        "prefixLength": {
          "type": "integer"
        },
        "subnetIp": {
          "type": "string"
        }
      },
      "type": "object"
    },
    "nutanix:index/PbrV2Link:PbrV2Link": {
      "properties": {
        "href": {
          "type": "string"
        },
        "rel": {
          "type": "string"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "href",
            "rel"
          ]
        }
      }
    },
    "nutanix:index/PbrV2Metadata:PbrV2Metadata": {
      "properties": {
        "categoryIds": {
          "type": "array",
          "items": {
            "type": "array",
            "items": {
              "$ref": "pulumi.json#/Any"
            }
          }
        },
        "ownerReferenceId": {
          "type": "string"
        },
        "ownerUserName": {
          "type": "string"
        },
        "projectName": {
          "type": "string"
        },
        "projectReferenceId": {
          "type": "string"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "categoryIds",
            "ownerReferenceId",
            "ownerUserName",
            "projectName",
            "projectReferenceId"
          ]
        }
      }
    },
    "nutanix:index/PbrV2Policy:PbrV2Policy": {
      "properties": {
        "isBidirectional": {
          "type": "boolean"
        },
        "policyActions": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FPbrV2PolicyPolicyAction:PbrV2PolicyPolicyAction"
          }
        },
        "policyMatches": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FPbrV2PolicyPolicyMatch:PbrV2PolicyPolicyMatch"
          }
        }
      },
      "type": "object",
      "required": [
        "policyActions",
        "policyMatches"
      ],
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "isBidirectional",
            "policyActions",
            "policyMatches"
          ]
        }
      }
    },
    "nutanix:index/PbrV2PolicyPolicyAction:PbrV2PolicyPolicyAction": {
      "properties": {
        "actionType": {
          "type": "string"
        },
        "nexthopIpAddresses": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FPbrV2PolicyPolicyActionNexthopIpAddress:PbrV2PolicyPolicyActionNexthopIpAddress"
          }
        },
        "rerouteParams": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FPbrV2PolicyPolicyActionRerouteParam:PbrV2PolicyPolicyActionRerouteParam"
          }
        }
      },
      "type": "object",
      "required": [
        "actionType"
      ],
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "actionType",
            "nexthopIpAddresses",
            "rerouteParams"
          ]
        }
      }
    },
    "nutanix:index/PbrV2PolicyPolicyActionNexthopIpAddress:PbrV2PolicyPolicyActionNexthopIpAddress": {
      "properties": {
        "ipv4s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FPbrV2PolicyPolicyActionNexthopIpAddressIpv4:PbrV2PolicyPolicyActionNexthopIpAddressIpv4"
          }
        },
        "ipv6s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FPbrV2PolicyPolicyActionNexthopIpAddressIpv6:PbrV2PolicyPolicyActionNexthopIpAddressIpv6"
          }
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "ipv4s",
            "ipv6s"
          ]
        }
      }
    },
    "nutanix:index/PbrV2PolicyPolicyActionNexthopIpAddressIpv4:PbrV2PolicyPolicyActionNexthopIpAddressIpv4": {
      "properties": {
        "prefixLength": {
          "type": "integer"
        },
        "value": {
          "type": "string"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "prefixLength",
            "value"
          ]
        }
      }
    },
    "nutanix:index/PbrV2PolicyPolicyActionNexthopIpAddressIpv6:PbrV2PolicyPolicyActionNexthopIpAddressIpv6": {
      "properties": {
        "prefixLength": {
          "type": "integer"
        },
        "value": {
          "type": "string"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "prefixLength",
            "value"
          ]
        }
      }
    },
    "nutanix:index/PbrV2PolicyPolicyActionRerouteParam:PbrV2PolicyPolicyActionRerouteParam": {
      "properties": {
        "egressServiceIps": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FPbrV2PolicyPolicyActionRerouteParamEgressServiceIp:PbrV2PolicyPolicyActionRerouteParamEgressServiceIp"
          }
        },
        "ingressServiceIps": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FPbrV2PolicyPolicyActionRerouteParamIngressServiceIp:PbrV2PolicyPolicyActionRerouteParamIngressServiceIp"
          }
        },
        "rerouteFallbackAction": {
          "type": "string"
        },
        "serviceIps": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FPbrV2PolicyPolicyActionRerouteParamServiceIp:PbrV2PolicyPolicyActionRerouteParamServiceIp"
          }
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "egressServiceIps",
            "ingressServiceIps",
            "rerouteFallbackAction",
            "serviceIps"
          ]
        }
      }
    },
    "nutanix:index/PbrV2PolicyPolicyActionRerouteParamEgressServiceIp:PbrV2PolicyPolicyActionRerouteParamEgressServiceIp": {
      "properties": {
        "ipv4s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FPbrV2PolicyPolicyActionRerouteParamEgressServiceIpIpv4:PbrV2PolicyPolicyActionRerouteParamEgressServiceIpIpv4"
          }
        },
        "ipv6s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FPbrV2PolicyPolicyActionRerouteParamEgressServiceIpIpv6:PbrV2PolicyPolicyActionRerouteParamEgressServiceIpIpv6"
          }
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "ipv4s",
            "ipv6s"
          ]
        }
      }
    },
    "nutanix:index/PbrV2PolicyPolicyActionRerouteParamEgressServiceIpIpv4:PbrV2PolicyPolicyActionRerouteParamEgressServiceIpIpv4": {
      "properties": {
        "prefixLength": {
          "type": "integer"
        },
        "value": {
          "type": "string"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "prefixLength",
            "value"
          ]
        }
      }
    },
    "nutanix:index/PbrV2PolicyPolicyActionRerouteParamEgressServiceIpIpv6:PbrV2PolicyPolicyActionRerouteParamEgressServiceIpIpv6": {
      "properties": {
        "prefixLength": {
          "type": "integer"
        },
        "value": {
          "type": "string"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "prefixLength",
            "value"
          ]
        }
      }
    },
    "nutanix:index/PbrV2PolicyPolicyActionRerouteParamIngressServiceIp:PbrV2PolicyPolicyActionRerouteParamIngressServiceIp": {
      "properties": {
        "ipv4s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FPbrV2PolicyPolicyActionRerouteParamIngressServiceIpIpv4:PbrV2PolicyPolicyActionRerouteParamIngressServiceIpIpv4"
          }
        },
        "ipv6s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FPbrV2PolicyPolicyActionRerouteParamIngressServiceIpIpv6:PbrV2PolicyPolicyActionRerouteParamIngressServiceIpIpv6"
          }
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "ipv4s",
            "ipv6s"
          ]
        }
      }
    },
    "nutanix:index/PbrV2PolicyPolicyActionRerouteParamIngressServiceIpIpv4:PbrV2PolicyPolicyActionRerouteParamIngressServiceIpIpv4": {
      "properties": {
        "prefixLength": {
          "type": "integer"
        },
        "value": {
          "type": "string"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "prefixLength",
            "value"
          ]
        }
      }
    },
    "nutanix:index/PbrV2PolicyPolicyActionRerouteParamIngressServiceIpIpv6:PbrV2PolicyPolicyActionRerouteParamIngressServiceIpIpv6": {
      "properties": {
        "prefixLength": {
          "type": "integer"
        },
        "value": {
          "type": "string"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "prefixLength",
            "value"
          ]
        }
      }
    },
    "nutanix:index/PbrV2PolicyPolicyActionRerouteParamServiceIp:PbrV2PolicyPolicyActionRerouteParamServiceIp": {
      "properties": {
        "ipv4s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FPbrV2PolicyPolicyActionRerouteParamServiceIpIpv4:PbrV2PolicyPolicyActionRerouteParamServiceIpIpv4"
          }
        },
        "ipv6s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FPbrV2PolicyPolicyActionRerouteParamServiceIpIpv6:PbrV2PolicyPolicyActionRerouteParamServiceIpIpv6"
          }
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "ipv4s",
            "ipv6s"
          ]
        }
      }
    },
    "nutanix:index/PbrV2PolicyPolicyActionRerouteParamServiceIpIpv4:PbrV2PolicyPolicyActionRerouteParamServiceIpIpv4": {
      "properties": {
        "prefixLength": {
          "type": "integer"
        },
        "value": {
          "type": "string"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "prefixLength",
            "value"
          ]
        }
      }
    },
    "nutanix:index/PbrV2PolicyPolicyActionRerouteParamServiceIpIpv6:PbrV2PolicyPolicyActionRerouteParamServiceIpIpv6": {
      "properties": {
        "prefixLength": {
          "type": "integer"
        },
        "value": {
          "type": "string"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "prefixLength",
            "value"
          ]
        }
      }
    },
    "nutanix:index/PbrV2PolicyPolicyMatch:PbrV2PolicyPolicyMatch": {
      "properties": {
        "destinations": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FPbrV2PolicyPolicyMatchDestination:PbrV2PolicyPolicyMatchDestination"
          }
        },
        "protocolParameters": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FPbrV2PolicyPolicyMatchProtocolParameter:PbrV2PolicyPolicyMatchProtocolParameter"
          }
        },
        "protocolType": {
          "type": "string"
        },
        "sources": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FPbrV2PolicyPolicyMatchSource:PbrV2PolicyPolicyMatchSource"
          }
        }
      },
      "type": "object",
      "required": [
        "destinations",
        "protocolType",
        "sources"
      ],
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "destinations",
            "protocolParameters",
            "protocolType",
            "sources"
          ]
        }
      }
    },
    "nutanix:index/PbrV2PolicyPolicyMatchDestination:PbrV2PolicyPolicyMatchDestination": {
      "properties": {
        "addressType": {
          "type": "string"
        },
        "subnetPrefixes": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FPbrV2PolicyPolicyMatchDestinationSubnetPrefix:PbrV2PolicyPolicyMatchDestinationSubnetPrefix"
          }
        }
      },
      "type": "object",
      "required": [
        "addressType"
      ],
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "addressType",
            "subnetPrefixes"
          ]
        }
      }
    },
    "nutanix:index/PbrV2PolicyPolicyMatchDestinationSubnetPrefix:PbrV2PolicyPolicyMatchDestinationSubnetPrefix": {
      "properties": {
        "ipv4s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FPbrV2PolicyPolicyMatchDestinationSubnetPrefixIpv4:PbrV2PolicyPolicyMatchDestinationSubnetPrefixIpv4"
          }
        },
        "ipv6s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FPbrV2PolicyPolicyMatchDestinationSubnetPrefixIpv6:PbrV2PolicyPolicyMatchDestinationSubnetPrefixIpv6"
          }
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "ipv4s",
            "ipv6s"
          ]
        }
      }
    },
    "nutanix:index/PbrV2PolicyPolicyMatchDestinationSubnetPrefixIpv4:PbrV2PolicyPolicyMatchDestinationSubnetPrefixIpv4": {
      "properties": {
        "ips": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FPbrV2PolicyPolicyMatchDestinationSubnetPrefixIpv4Ip:PbrV2PolicyPolicyMatchDestinationSubnetPrefixIpv4Ip"
          }
        },
        "prefixLength": {
          "type": "integer"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "ips",
            "prefixLength"
          ]
        }
      }
    },
    "nutanix:index/PbrV2PolicyPolicyMatchDestinationSubnetPrefixIpv4Ip:PbrV2PolicyPolicyMatchDestinationSubnetPrefixIpv4Ip": {
      "properties": {
        "prefixLength": {
          "type": "integer"
        },
        "value": {
          "type": "string"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "prefixLength",
            "value"
          ]
        }
      }
    },
    "nutanix:index/PbrV2PolicyPolicyMatchDestinationSubnetPrefixIpv6:PbrV2PolicyPolicyMatchDestinationSubnetPrefixIpv6": {
      "properties": {
        "ips": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FPbrV2PolicyPolicyMatchDestinationSubnetPrefixIpv6Ip:PbrV2PolicyPolicyMatchDestinationSubnetPrefixIpv6Ip"
          }
        },
        "prefixLength": {
          "type": "integer"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "ips",
            "prefixLength"
          ]
        }
      }
    },
    "nutanix:index/PbrV2PolicyPolicyMatchDestinationSubnetPrefixIpv6Ip:PbrV2PolicyPolicyMatchDestinationSubnetPrefixIpv6Ip": {
      "properties": {
        "prefixLength": {
          "type": "integer"
        },
        "value": {
          "type": "string"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "prefixLength",
            "value"
          ]
        }
      }
    },
    "nutanix:index/PbrV2PolicyPolicyMatchProtocolParameter:PbrV2PolicyPolicyMatchProtocolParameter": {
      "properties": {
        "icmpObjects": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FPbrV2PolicyPolicyMatchProtocolParameterIcmpObject:PbrV2PolicyPolicyMatchProtocolParameterIcmpObject"
          }
        },
        "layerFourProtocolObjects": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FPbrV2PolicyPolicyMatchProtocolParameterLayerFourProtocolObject:PbrV2PolicyPolicyMatchProtocolParameterLayerFourProtocolObject"
          }
        },
        "protocolNumberObjects": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FPbrV2PolicyPolicyMatchProtocolParameterProtocolNumberObject:PbrV2PolicyPolicyMatchProtocolParameterProtocolNumberObject"
          }
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "icmpObjects",
            "layerFourProtocolObjects",
            "protocolNumberObjects"
          ]
        }
      }
    },
    "nutanix:index/PbrV2PolicyPolicyMatchProtocolParameterIcmpObject:PbrV2PolicyPolicyMatchProtocolParameterIcmpObject": {
      "properties": {
        "icmpCode": {
          "type": "integer"
        },
        "icmpType": {
          "type": "integer"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "icmpCode",
            "icmpType"
          ]
        }
      }
    },
    "nutanix:index/PbrV2PolicyPolicyMatchProtocolParameterLayerFourProtocolObject:PbrV2PolicyPolicyMatchProtocolParameterLayerFourProtocolObject": {
      "properties": {
        "destinationPortRanges": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FPbrV2PolicyPolicyMatchProtocolParameterLayerFourProtocolObjectDestinationPortRange:PbrV2PolicyPolicyMatchProtocolParameterLayerFourProtocolObjectDestinationPortRange"
          }
        },
        "sourcePortRanges": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FPbrV2PolicyPolicyMatchProtocolParameterLayerFourProtocolObjectSourcePortRange:PbrV2PolicyPolicyMatchProtocolParameterLayerFourProtocolObjectSourcePortRange"
          }
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "destinationPortRanges",
            "sourcePortRanges"
          ]
        }
      }
    },
    "nutanix:index/PbrV2PolicyPolicyMatchProtocolParameterLayerFourProtocolObjectDestinationPortRange:PbrV2PolicyPolicyMatchProtocolParameterLayerFourProtocolObjectDestinationPortRange": {
      "properties": {
        "endPort": {
          "type": "integer"
        },
        "startPort": {
          "type": "integer"
        }
      },
      "type": "object",
      "required": [
        "endPort",
        "startPort"
      ]
    },
    "nutanix:index/PbrV2PolicyPolicyMatchProtocolParameterLayerFourProtocolObjectSourcePortRange:PbrV2PolicyPolicyMatchProtocolParameterLayerFourProtocolObjectSourcePortRange": {
      "properties": {
        "endPort": {
          "type": "integer"
        },
        "startPort": {
          "type": "integer"
        }
      },
      "type": "object",
      "required": [
        "endPort",
        "startPort"
      ]
    },
    "nutanix:index/PbrV2PolicyPolicyMatchProtocolParameterProtocolNumberObject:PbrV2PolicyPolicyMatchProtocolParameterProtocolNumberObject": {
      "properties": {
        "protocolNumber": {
          "type": "integer"
        }
      },
      "type": "object",
      "required": [
        "protocolNumber"
      ]
    },
    "nutanix:index/PbrV2PolicyPolicyMatchSource:PbrV2PolicyPolicyMatchSource": {
      "properties": {
        "addressType": {
          "type": "string"
        },
        "subnetPrefixes": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FPbrV2PolicyPolicyMatchSourceSubnetPrefix:PbrV2PolicyPolicyMatchSourceSubnetPrefix"
          }
        }
      },
      "type": "object",
      "required": [
        "addressType"
      ],
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "addressType",
            "subnetPrefixes"
          ]
        }
      }
    },
    "nutanix:index/PbrV2PolicyPolicyMatchSourceSubnetPrefix:PbrV2PolicyPolicyMatchSourceSubnetPrefix": {
      "properties": {
        "ipv4s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FPbrV2PolicyPolicyMatchSourceSubnetPrefixIpv4:PbrV2PolicyPolicyMatchSourceSubnetPrefixIpv4"
          }
        },
        "ipv6s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FPbrV2PolicyPolicyMatchSourceSubnetPrefixIpv6:PbrV2PolicyPolicyMatchSourceSubnetPrefixIpv6"
          }
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "ipv4s",
            "ipv6s"
          ]
        }
      }
    },
    "nutanix:index/PbrV2PolicyPolicyMatchSourceSubnetPrefixIpv4:PbrV2PolicyPolicyMatchSourceSubnetPrefixIpv4": {
      "properties": {
        "ips": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FPbrV2PolicyPolicyMatchSourceSubnetPrefixIpv4Ip:PbrV2PolicyPolicyMatchSourceSubnetPrefixIpv4Ip"
          }
        },
        "prefixLength": {
          "type": "integer"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "ips",
            "prefixLength"
          ]
        }
      }
    },
    "nutanix:index/PbrV2PolicyPolicyMatchSourceSubnetPrefixIpv4Ip:PbrV2PolicyPolicyMatchSourceSubnetPrefixIpv4Ip": {
      "properties": {
        "prefixLength": {
          "type": "integer"
        },
        "value": {
          "type": "string"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "prefixLength",
            "value"
          ]
        }
      }
    },
    "nutanix:index/PbrV2PolicyPolicyMatchSourceSubnetPrefixIpv6:PbrV2PolicyPolicyMatchSourceSubnetPrefixIpv6": {
      "properties": {
        "ips": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FPbrV2PolicyPolicyMatchSourceSubnetPrefixIpv6Ip:PbrV2PolicyPolicyMatchSourceSubnetPrefixIpv6Ip"
          }
        },
        "prefixLength": {
          "type": "integer"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "ips",
            "prefixLength"
          ]
        }
      }
    },
    "nutanix:index/PbrV2PolicyPolicyMatchSourceSubnetPrefixIpv6Ip:PbrV2PolicyPolicyMatchSourceSubnetPrefixIpv6Ip": {
      "properties": {
        "prefixLength": {
          "type": "integer"
        },
        "value": {
          "type": "string"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "prefixLength",
            "value"
          ]
        }
      }
    },
    "nutanix:index/PbrV2Vpc:PbrV2Vpc": {
      "properties": {
        "name": {
          "type": "string"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "name"
          ]
        }
      }
    },
    "nutanix:index/PcBackupTargetV2Link:PcBackupTargetV2Link": {
      "properties": {
        "href": {
          "type": "string"
        },
        "rel": {
          "type": "string"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "href",
            "rel"
          ]
        }
      }
    },
    "nutanix:index/PcBackupTargetV2Location:PcBackupTargetV2Location": {
      "properties": {
        "clusterLocations": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FPcBackupTargetV2LocationClusterLocation:PcBackupTargetV2LocationClusterLocation"
          },
          "description": "-(Optional) A boolean value indicating whether to enable lockdown mode for a cluster.\n"
        },
        "objectStoreLocations": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FPcBackupTargetV2LocationObjectStoreLocation:PcBackupTargetV2LocationObjectStoreLocation"
          },
          "description": "-(Optional) Currently representing the build information to be used for the cluster creation.\n"
        }
      },
      "type": "object"
    },
    "nutanix:index/PcBackupTargetV2LocationClusterLocation:PcBackupTargetV2LocationClusterLocation": {
      "properties": {
        "configs": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FPcBackupTargetV2LocationClusterLocationConfig:PcBackupTargetV2LocationClusterLocationConfig"
          },
          "description": "-(Required) Cluster reference of the remote cluster to be connected.\n"
        }
      },
      "type": "object",
      "required": [
        "configs"
      ]
    },
    "nutanix:index/PcBackupTargetV2LocationClusterLocationConfig:PcBackupTargetV2LocationClusterLocationConfig": {
      "properties": {
        "extId": {
          "type": "string",
          "description": "-(Required) Cluster UUID of a remote cluster.\n"
        },
        "name": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "extId"
      ],
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "extId",
            "name"
          ]
        }
      }
    },
    "nutanix:index/PcBackupTargetV2LocationObjectStoreLocation:PcBackupTargetV2LocationObjectStoreLocation": {
      "properties": {
        "backupPolicies": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FPcBackupTargetV2LocationObjectStoreLocationBackupPolicy:PcBackupTargetV2LocationObjectStoreLocationBackupPolicy"
          },
          "description": "-(Optional) Backup policy for the object store provided.\n"
        },
        "providerConfigs": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FPcBackupTargetV2LocationObjectStoreLocationProviderConfig:PcBackupTargetV2LocationObjectStoreLocationProviderConfig"
          },
          "description": "-(Required) The base model of S3 object store endpoint where domain manager is backed up.\n"
        }
      },
      "type": "object",
      "required": [
        "providerConfigs"
      ]
    },
    "nutanix:index/PcBackupTargetV2LocationObjectStoreLocationBackupPolicy:PcBackupTargetV2LocationObjectStoreLocationBackupPolicy": {
      "properties": {
        "rpoInMinutes": {
          "type": "integer",
          "description": "-(Required) RPO interval in minutes at which the backup will be taken. The Value should be in the range of 60 to 1440.\n\nSee detailed information in [Nutanix Create Backup Target V4](https://developers.nutanix.com/api-reference?namespace=prism&version=v4.0#tag/DomainManager/operation/createBackupTarget).\n"
        }
      },
      "type": "object",
      "required": [
        "rpoInMinutes"
      ]
    },
    "nutanix:index/PcBackupTargetV2LocationObjectStoreLocationProviderConfig:PcBackupTargetV2LocationObjectStoreLocationProviderConfig": {
      "properties": {
        "bucketName": {
          "type": "string",
          "description": "-(Required) The bucket name of the object store endpoint where backup data of domain manager is to be stored.\n"
        },
        "credentials": {
          "$ref": "#/types/nutanix:index%2FPcBackupTargetV2LocationObjectStoreLocationProviderConfigCredentials:PcBackupTargetV2LocationObjectStoreLocationProviderConfigCredentials",
          "description": "-(Optional) Secret credentials model for the object store containing access key ID and secret access key.\n"
        },
        "region": {
          "type": "string",
          "description": "-(Optional) The region name of the object store endpoint where backup data of domain manager is stored. Default is `us-east-1`.\n"
        }
      },
      "type": "object",
      "required": [
        "bucketName"
      ]
    },
    "nutanix:index/PcBackupTargetV2LocationObjectStoreLocationProviderConfigCredentials:PcBackupTargetV2LocationObjectStoreLocationProviderConfigCredentials": {
      "properties": {
        "accessKeyId": {
          "type": "string",
          "description": "-(Required) Access key ID for the object store provided for backup target.\n"
        },
        "secretAccessKey": {
          "type": "string",
          "description": "-(Required) Secret access key for the object store provided for backup target.\n"
        }
      },
      "type": "object",
      "required": [
        "accessKeyId",
        "secretAccessKey"
      ]
    },
    "nutanix:index/PcDeployV2Config:PcDeployV2Config": {
      "properties": {
        "bootstrapConfig": {
          "$ref": "#/types/nutanix:index%2FPcDeployV2ConfigBootstrapConfig:PcDeployV2ConfigBootstrapConfig",
          "description": "- (Optional) Bootstrap configuration details for the domain manager (Prism Central).\n"
        },
        "buildInfo": {
          "$ref": "#/types/nutanix:index%2FPcDeployV2ConfigBuildInfo:PcDeployV2ConfigBuildInfo",
          "description": "-(Required) Currently representing the build information to be used for the cluster creation.\n"
        },
        "credentials": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FPcDeployV2ConfigCredential:PcDeployV2ConfigCredential"
          },
          "description": "- (Optional) The credentials consist of a username and password for a particular user like admin. Users can pass the credentials of admin users currently which will be configured in the create domain manager operation.\n"
        },
        "name": {
          "type": "string",
          "description": "-(Required) Name of the domain manager (Prism Central).\n"
        },
        "resourceConfigs": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FPcDeployV2ConfigResourceConfig:PcDeployV2ConfigResourceConfig"
          },
          "description": "-(Optional) This configuration is used to provide the resource-related details like container external identifiers, number of VCPUs, memory size, data disk size of the domain manager (Prism Central). In the case of a multi-node setup, the sum of resources like number of VCPUs, memory size and data disk size are provided.\n"
        },
        "shouldEnableLockdownMode": {
          "type": "boolean",
          "description": "-(Optional) A boolean value indicating whether to enable lockdown mode for a cluster.\n"
        },
        "size": {
          "type": "string",
          "description": "- (Required) Domain manager (Prism Central) size is an enumeration of starter, small, large, or extra large starter values. The allowed values are:\n- `SMALL` : Domain manager (Prism Central) of size small.\n- `LARGE` : Domain manager (Prism Central) of size large.\n- `EXTRALARGE` : Domain manager (Prism Central) of size extra large.\n- `STARTER` : Domain manager (Prism Central) of size starter.\n"
        }
      },
      "type": "object",
      "required": [
        "buildInfo",
        "name",
        "size"
      ],
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "bootstrapConfig",
            "buildInfo",
            "name",
            "resourceConfigs",
            "shouldEnableLockdownMode",
            "size"
          ]
        }
      }
    },
    "nutanix:index/PcDeployV2ConfigBootstrapConfig:PcDeployV2ConfigBootstrapConfig": {
      "properties": {
        "cloudInitConfigs": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FPcDeployV2ConfigBootstrapConfigCloudInitConfig:PcDeployV2ConfigBootstrapConfigCloudInitConfig"
          },
          "description": "-(Optional) Cloud-init configuration for the domain manager (Prism Central) cluster.\n"
        },
        "environmentInfo": {
          "$ref": "#/types/nutanix:index%2FPcDeployV2ConfigBootstrapConfigEnvironmentInfo:PcDeployV2ConfigBootstrapConfigEnvironmentInfo",
          "description": "-(Optional) Environment information for the domain manager (Prism Central) cluster.\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "environmentInfo"
          ]
        }
      }
    },
    "nutanix:index/PcDeployV2ConfigBootstrapConfigCloudInitConfig:PcDeployV2ConfigBootstrapConfigCloudInitConfig": {
      "properties": {
        "cloudInitScripts": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FPcDeployV2ConfigBootstrapConfigCloudInitConfigCloudInitScript:PcDeployV2ConfigBootstrapConfigCloudInitConfigCloudInitScript"
          },
          "description": "-(Optional) The script to use for cloud-init.\n- `cloud_init_script.user_data`: -(Optional) user data object\n- `cloud_init_script.custom_keys`: -(Optional) The list of the individual KeyValuePair elements.\n"
        },
        "datasourceType": {
          "type": "string",
          "description": "-(Optional) Type of datasource. Default: CONFIG_DRIVE_V2\n"
        },
        "metadata": {
          "type": "string",
          "description": "-(Optional)The contents of the<span pulumi-lang-nodejs=\" metaData \" pulumi-lang-dotnet=\" MetaData \" pulumi-lang-go=\" metaData \" pulumi-lang-python=\" meta_data \" pulumi-lang-yaml=\" metaData \" pulumi-lang-java=\" metaData \"> meta_data </span>configuration for cloud-init. This can be formatted as YAML or JSON. The value must be base64 encoded. Default value is 'CONFIG_DRIVE_V2'.\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "cloudInitScripts",
            "metadata"
          ]
        }
      }
    },
    "nutanix:index/PcDeployV2ConfigBootstrapConfigCloudInitConfigCloudInitScript:PcDeployV2ConfigBootstrapConfigCloudInitConfigCloudInitScript": {
      "properties": {
        "customKeyValues": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FPcDeployV2ConfigBootstrapConfigCloudInitConfigCloudInitScriptCustomKeyValue:PcDeployV2ConfigBootstrapConfigCloudInitConfigCloudInitScriptCustomKeyValue"
          }
        },
        "userDatas": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FPcDeployV2ConfigBootstrapConfigCloudInitConfigCloudInitScriptUserData:PcDeployV2ConfigBootstrapConfigCloudInitConfigCloudInitScriptUserData"
          }
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "customKeyValues",
            "userDatas"
          ]
        }
      }
    },
    "nutanix:index/PcDeployV2ConfigBootstrapConfigCloudInitConfigCloudInitScriptCustomKeyValue:PcDeployV2ConfigBootstrapConfigCloudInitConfigCloudInitScriptCustomKeyValue": {
      "properties": {
        "keyValuePairs": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FPcDeployV2ConfigBootstrapConfigCloudInitConfigCloudInitScriptCustomKeyValueKeyValuePair:PcDeployV2ConfigBootstrapConfigCloudInitConfigCloudInitScriptCustomKeyValueKeyValuePair"
          }
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "keyValuePairs"
          ]
        }
      }
    },
    "nutanix:index/PcDeployV2ConfigBootstrapConfigCloudInitConfigCloudInitScriptCustomKeyValueKeyValuePair:PcDeployV2ConfigBootstrapConfigCloudInitConfigCloudInitScriptCustomKeyValueKeyValuePair": {
      "properties": {
        "name": {
          "type": "string",
          "description": "-(Required) Name of the domain manager (Prism Central).\n"
        },
        "values": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FPcDeployV2ConfigBootstrapConfigCloudInitConfigCloudInitScriptCustomKeyValueKeyValuePairValue:PcDeployV2ConfigBootstrapConfigCloudInitConfigCloudInitScriptCustomKeyValueKeyValuePairValue"
          }
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "name",
            "values"
          ]
        }
      }
    },
    "nutanix:index/PcDeployV2ConfigBootstrapConfigCloudInitConfigCloudInitScriptCustomKeyValueKeyValuePairValue:PcDeployV2ConfigBootstrapConfigCloudInitConfigCloudInitScriptCustomKeyValueKeyValuePairValue": {
      "properties": {
        "boolean": {
          "type": "boolean"
        },
        "integer": {
          "type": "integer"
        },
        "integerLists": {
          "type": "array",
          "items": {
            "type": "integer"
          }
        },
        "mapOfStrings": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FPcDeployV2ConfigBootstrapConfigCloudInitConfigCloudInitScriptCustomKeyValueKeyValuePairValueMapOfString:PcDeployV2ConfigBootstrapConfigCloudInitConfigCloudInitScriptCustomKeyValueKeyValuePairValueMapOfString"
          }
        },
        "object": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          }
        },
        "string": {
          "type": "string"
        },
        "stringLists": {
          "type": "array",
          "items": {
            "type": "string"
          }
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "boolean",
            "integer",
            "integerLists",
            "mapOfStrings",
            "object",
            "string",
            "stringLists"
          ]
        }
      }
    },
    "nutanix:index/PcDeployV2ConfigBootstrapConfigCloudInitConfigCloudInitScriptCustomKeyValueKeyValuePairValueMapOfString:PcDeployV2ConfigBootstrapConfigCloudInitConfigCloudInitScriptCustomKeyValueKeyValuePairValueMapOfString": {
      "properties": {
        "map": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          }
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "map"
          ]
        }
      }
    },
    "nutanix:index/PcDeployV2ConfigBootstrapConfigCloudInitConfigCloudInitScriptUserData:PcDeployV2ConfigBootstrapConfigCloudInitConfigCloudInitScriptUserData": {
      "properties": {
        "value": {
          "type": "string"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "value"
          ]
        }
      }
    },
    "nutanix:index/PcDeployV2ConfigBootstrapConfigEnvironmentInfo:PcDeployV2ConfigBootstrapConfigEnvironmentInfo": {
      "properties": {
        "providerType": {
          "type": "string",
          "description": "-(Optional) Enums denoting the provider type of the PC, that is, AHV or ESXi.\nFollowing are the supported provider types:\n- `VSPHERE` : Vsphere cloud provider.\n- `AZURE` : Azure cloud provider.\n- `NTNX` : Nutanix cloud provider.\n- `GCP` : GCP cloud provider.\n- `AWS` : AWS cloud provider.\n"
        },
        "provisioningType": {
          "type": "string",
          "description": "-(Optional) Enums denoting the instance type of the cloud PC. It indicates whether the PC is created on bare-metal or on a cloud-provisioned VM. Hence, it supports two possible values:\n- `NTNX` : Nutanix instance.\n- `NATIVE` : Native instance.\n"
        },
        "type": {
          "type": "string",
          "description": "-(Optional) Enums denoting the environment type of the PC, that is, on-prem PC or cloud PC.\nFollowing are the supported entity types:\n- `ONPREM` : On-prem environment.\n- `NTNX_CLOUD` : Nutanix cloud environment.\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "providerType",
            "provisioningType",
            "type"
          ]
        }
      }
    },
    "nutanix:index/PcDeployV2ConfigBuildInfo:PcDeployV2ConfigBuildInfo": {
      "properties": {
        "version": {
          "type": "string",
          "description": "-(Required) Software version.\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "version"
          ]
        }
      }
    },
    "nutanix:index/PcDeployV2ConfigCredential:PcDeployV2ConfigCredential": {
      "properties": {
        "password": {
          "type": "string",
          "description": "-(Required) Password required for the basic auth scheme.\n",
          "secret": true
        },
        "username": {
          "type": "string",
          "description": "-(Required) Username required for the basic auth scheme. As per RFC 2617 usernames might be case sensitive.\n"
        }
      },
      "type": "object",
      "required": [
        "password",
        "username"
      ]
    },
    "nutanix:index/PcDeployV2ConfigResourceConfig:PcDeployV2ConfigResourceConfig": {
      "properties": {
        "containerExtIds": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "-(Optional) The external identifier of the container that will be used to create the domain manager (Prism Central) cluster.\n"
        },
        "dataDiskSizeBytes": {
          "type": "integer"
        },
        "memorySizeBytes": {
          "type": "integer"
        },
        "numVcpus": {
          "type": "integer"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "containerExtIds",
            "dataDiskSizeBytes",
            "memorySizeBytes",
            "numVcpus"
          ]
        }
      }
    },
    "nutanix:index/PcDeployV2Network:PcDeployV2Network": {
      "properties": {
        "externalAddress": {
          "$ref": "#/types/nutanix:index%2FPcDeployV2NetworkExternalAddress:PcDeployV2NetworkExternalAddress",
          "description": "-(Optional) An unique address that identifies a device on the internet or a local network in IPv4 or IPv6 format.\n"
        },
        "externalNetworks": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FPcDeployV2NetworkExternalNetwork:PcDeployV2NetworkExternalNetwork"
          },
          "description": "-(Required) This configuration is used to manage Prism Central.\n"
        },
        "fqdn": {
          "type": "string"
        },
        "internalNetworks": {
          "$ref": "#/types/nutanix:index%2FPcDeployV2NetworkInternalNetworks:PcDeployV2NetworkInternalNetworks",
          "description": "-(Required) This configuration is used to internally manage Prism Central network.\n"
        },
        "nameServers": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FPcDeployV2NetworkNameServer:PcDeployV2NetworkNameServer"
          },
          "description": "-(Required) List of name servers on a cluster. This is part of payload for both cluster create & update operations. For create operation, only ipv4 address / fqdn values are supported currently.\n"
        },
        "ntpServers": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FPcDeployV2NetworkNtpServer:PcDeployV2NetworkNtpServer"
          },
          "description": "-(Required) List of NTP servers on a cluster. This is part of payload for both cluster create & update operations. For create operation, only ipv4 address / fqdn values are supported currently.\n"
        }
      },
      "type": "object",
      "required": [
        "nameServers",
        "ntpServers"
      ],
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "externalNetworks",
            "fqdn",
            "internalNetworks",
            "nameServers",
            "ntpServers"
          ]
        }
      }
    },
    "nutanix:index/PcDeployV2NetworkExternalAddress:PcDeployV2NetworkExternalAddress": {
      "properties": {
        "ipv4s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FPcDeployV2NetworkExternalAddressIpv4:PcDeployV2NetworkExternalAddressIpv4"
          },
          "description": "-(Optional) An unique address that identifies a device on the internet or a local network in IPv4 format.\n"
        },
        "ipv6s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FPcDeployV2NetworkExternalAddressIpv6:PcDeployV2NetworkExternalAddressIpv6"
          },
          "description": "-(Optional) An unique address that identifies a device on the internet or a local network in IPv6 format.\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "ipv4s",
            "ipv6s"
          ]
        }
      }
    },
    "nutanix:index/PcDeployV2NetworkExternalAddressIpv4:PcDeployV2NetworkExternalAddressIpv4": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "-(Optional) The prefix length of the network to which this host IPv4/IPv6 address belongs.\n"
        },
        "value": {
          "type": "string",
          "description": "-(Required) The IPv4/IPv6 address of the host.\n"
        }
      },
      "type": "object",
      "required": [
        "value"
      ]
    },
    "nutanix:index/PcDeployV2NetworkExternalAddressIpv6:PcDeployV2NetworkExternalAddressIpv6": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "-(Optional) The prefix length of the network to which this host IPv4/IPv6 address belongs.\n"
        },
        "value": {
          "type": "string",
          "description": "-(Required) The IPv4/IPv6 address of the host.\n"
        }
      },
      "type": "object",
      "required": [
        "value"
      ]
    },
    "nutanix:index/PcDeployV2NetworkExternalNetwork:PcDeployV2NetworkExternalNetwork": {
      "properties": {
        "defaultGateway": {
          "$ref": "#/types/nutanix:index%2FPcDeployV2NetworkExternalNetworkDefaultGateway:PcDeployV2NetworkExternalNetworkDefaultGateway",
          "description": "-(Required) An unique address that identifies a device on the internet or a local network in IPv4/IPv6 format or a Fully Qualified Domain Name.\n"
        },
        "ipRanges": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FPcDeployV2NetworkExternalNetworkIpRange:PcDeployV2NetworkExternalNetworkIpRange"
          },
          "description": "-(Required) Range of IPs used for Prism Central network setup.\n"
        },
        "networkExtId": {
          "type": "string",
          "description": "-(Required) The network external identifier to which Domain Manager (Prism Central) is to be deployed or is already configured.\n"
        },
        "subnetMask": {
          "$ref": "#/types/nutanix:index%2FPcDeployV2NetworkExternalNetworkSubnetMask:PcDeployV2NetworkExternalNetworkSubnetMask",
          "description": "-(Required) An unique address that identifies a device on the internet or a local network in IPv4/IPv6 format or a Fully Qualified Domain Name.\n"
        }
      },
      "type": "object",
      "required": [
        "defaultGateway",
        "ipRanges",
        "networkExtId",
        "subnetMask"
      ]
    },
    "nutanix:index/PcDeployV2NetworkExternalNetworkDefaultGateway:PcDeployV2NetworkExternalNetworkDefaultGateway": {
      "properties": {
        "fqdns": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FPcDeployV2NetworkExternalNetworkDefaultGatewayFqdn:PcDeployV2NetworkExternalNetworkDefaultGatewayFqdn"
          },
          "description": "-(Optional) A fully qualified domain name that specifies its exact location in the tree hierarchy of the Domain Name System.\n"
        },
        "ipv4s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FPcDeployV2NetworkExternalNetworkDefaultGatewayIpv4:PcDeployV2NetworkExternalNetworkDefaultGatewayIpv4"
          },
          "description": "-(Optional) An unique address that identifies a device on the internet or a local network in IPv4 format.\n"
        },
        "ipv6s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FPcDeployV2NetworkExternalNetworkDefaultGatewayIpv6:PcDeployV2NetworkExternalNetworkDefaultGatewayIpv6"
          },
          "description": "-(Optional) An unique address that identifies a device on the internet or a local network in IPv6 format.\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "fqdns",
            "ipv4s",
            "ipv6s"
          ]
        }
      }
    },
    "nutanix:index/PcDeployV2NetworkExternalNetworkDefaultGatewayFqdn:PcDeployV2NetworkExternalNetworkDefaultGatewayFqdn": {
      "properties": {
        "value": {
          "type": "string",
          "description": "-(Optional) The fully qualified domain name of the host.\n\nSee detailed information in [Nutanix Deploy PC V4](https://developers.nutanix.com/api-reference?namespace=prism&version=v4.0#tag/DomainManager/operation/createDomainManager).\n"
        }
      },
      "type": "object",
      "required": [
        "value"
      ]
    },
    "nutanix:index/PcDeployV2NetworkExternalNetworkDefaultGatewayIpv4:PcDeployV2NetworkExternalNetworkDefaultGatewayIpv4": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "-(Optional) The prefix length of the network to which this host IPv4/IPv6 address belongs.\n"
        },
        "value": {
          "type": "string",
          "description": "-(Required) The IPv4/IPv6 address of the host.\n"
        }
      },
      "type": "object",
      "required": [
        "value"
      ]
    },
    "nutanix:index/PcDeployV2NetworkExternalNetworkDefaultGatewayIpv6:PcDeployV2NetworkExternalNetworkDefaultGatewayIpv6": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "-(Optional) The prefix length of the network to which this host IPv4/IPv6 address belongs.\n"
        },
        "value": {
          "type": "string",
          "description": "-(Required) The IPv4/IPv6 address of the host.\n"
        }
      },
      "type": "object",
      "required": [
        "value"
      ]
    },
    "nutanix:index/PcDeployV2NetworkExternalNetworkIpRange:PcDeployV2NetworkExternalNetworkIpRange": {
      "properties": {
        "begin": {
          "$ref": "#/types/nutanix:index%2FPcDeployV2NetworkExternalNetworkIpRangeBegin:PcDeployV2NetworkExternalNetworkIpRangeBegin",
          "description": "-(Optional) The beginning IP address of the range.\n"
        },
        "end": {
          "$ref": "#/types/nutanix:index%2FPcDeployV2NetworkExternalNetworkIpRangeEnd:PcDeployV2NetworkExternalNetworkIpRangeEnd",
          "description": "-(Optional) The ending IP address of the range.\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "begin",
            "end"
          ]
        }
      }
    },
    "nutanix:index/PcDeployV2NetworkExternalNetworkIpRangeBegin:PcDeployV2NetworkExternalNetworkIpRangeBegin": {
      "properties": {
        "ipv4s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FPcDeployV2NetworkExternalNetworkIpRangeBeginIpv4:PcDeployV2NetworkExternalNetworkIpRangeBeginIpv4"
          },
          "description": "-(Optional) An unique address that identifies a device on the internet or a local network in IPv4 format.\n"
        },
        "ipv6s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FPcDeployV2NetworkExternalNetworkIpRangeBeginIpv6:PcDeployV2NetworkExternalNetworkIpRangeBeginIpv6"
          },
          "description": "-(Optional) An unique address that identifies a device on the internet or a local network in IPv6 format.\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "ipv4s",
            "ipv6s"
          ]
        }
      }
    },
    "nutanix:index/PcDeployV2NetworkExternalNetworkIpRangeBeginIpv4:PcDeployV2NetworkExternalNetworkIpRangeBeginIpv4": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "-(Optional) The prefix length of the network to which this host IPv4/IPv6 address belongs.\n"
        },
        "value": {
          "type": "string",
          "description": "-(Required) The IPv4/IPv6 address of the host.\n"
        }
      },
      "type": "object",
      "required": [
        "value"
      ]
    },
    "nutanix:index/PcDeployV2NetworkExternalNetworkIpRangeBeginIpv6:PcDeployV2NetworkExternalNetworkIpRangeBeginIpv6": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "-(Optional) The prefix length of the network to which this host IPv4/IPv6 address belongs.\n"
        },
        "value": {
          "type": "string",
          "description": "-(Required) The IPv4/IPv6 address of the host.\n"
        }
      },
      "type": "object",
      "required": [
        "value"
      ]
    },
    "nutanix:index/PcDeployV2NetworkExternalNetworkIpRangeEnd:PcDeployV2NetworkExternalNetworkIpRangeEnd": {
      "properties": {
        "ipv4s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FPcDeployV2NetworkExternalNetworkIpRangeEndIpv4:PcDeployV2NetworkExternalNetworkIpRangeEndIpv4"
          },
          "description": "-(Optional) An unique address that identifies a device on the internet or a local network in IPv4 format.\n"
        },
        "ipv6s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FPcDeployV2NetworkExternalNetworkIpRangeEndIpv6:PcDeployV2NetworkExternalNetworkIpRangeEndIpv6"
          },
          "description": "-(Optional) An unique address that identifies a device on the internet or a local network in IPv6 format.\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "ipv4s",
            "ipv6s"
          ]
        }
      }
    },
    "nutanix:index/PcDeployV2NetworkExternalNetworkIpRangeEndIpv4:PcDeployV2NetworkExternalNetworkIpRangeEndIpv4": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "-(Optional) The prefix length of the network to which this host IPv4/IPv6 address belongs.\n"
        },
        "value": {
          "type": "string",
          "description": "-(Required) The IPv4/IPv6 address of the host.\n"
        }
      },
      "type": "object",
      "required": [
        "value"
      ]
    },
    "nutanix:index/PcDeployV2NetworkExternalNetworkIpRangeEndIpv6:PcDeployV2NetworkExternalNetworkIpRangeEndIpv6": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "-(Optional) The prefix length of the network to which this host IPv4/IPv6 address belongs.\n"
        },
        "value": {
          "type": "string",
          "description": "-(Required) The IPv4/IPv6 address of the host.\n"
        }
      },
      "type": "object",
      "required": [
        "value"
      ]
    },
    "nutanix:index/PcDeployV2NetworkExternalNetworkSubnetMask:PcDeployV2NetworkExternalNetworkSubnetMask": {
      "properties": {
        "fqdns": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FPcDeployV2NetworkExternalNetworkSubnetMaskFqdn:PcDeployV2NetworkExternalNetworkSubnetMaskFqdn"
          },
          "description": "-(Optional) A fully qualified domain name that specifies its exact location in the tree hierarchy of the Domain Name System.\n"
        },
        "ipv4s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FPcDeployV2NetworkExternalNetworkSubnetMaskIpv4:PcDeployV2NetworkExternalNetworkSubnetMaskIpv4"
          },
          "description": "-(Optional) An unique address that identifies a device on the internet or a local network in IPv4 format.\n"
        },
        "ipv6s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FPcDeployV2NetworkExternalNetworkSubnetMaskIpv6:PcDeployV2NetworkExternalNetworkSubnetMaskIpv6"
          },
          "description": "-(Optional) An unique address that identifies a device on the internet or a local network in IPv6 format.\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "fqdns",
            "ipv4s",
            "ipv6s"
          ]
        }
      }
    },
    "nutanix:index/PcDeployV2NetworkExternalNetworkSubnetMaskFqdn:PcDeployV2NetworkExternalNetworkSubnetMaskFqdn": {
      "properties": {
        "value": {
          "type": "string",
          "description": "-(Optional) The fully qualified domain name of the host.\n\nSee detailed information in [Nutanix Deploy PC V4](https://developers.nutanix.com/api-reference?namespace=prism&version=v4.0#tag/DomainManager/operation/createDomainManager).\n"
        }
      },
      "type": "object",
      "required": [
        "value"
      ]
    },
    "nutanix:index/PcDeployV2NetworkExternalNetworkSubnetMaskIpv4:PcDeployV2NetworkExternalNetworkSubnetMaskIpv4": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "-(Optional) The prefix length of the network to which this host IPv4/IPv6 address belongs.\n"
        },
        "value": {
          "type": "string",
          "description": "-(Required) The IPv4/IPv6 address of the host.\n"
        }
      },
      "type": "object",
      "required": [
        "value"
      ]
    },
    "nutanix:index/PcDeployV2NetworkExternalNetworkSubnetMaskIpv6:PcDeployV2NetworkExternalNetworkSubnetMaskIpv6": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "-(Optional) The prefix length of the network to which this host IPv4/IPv6 address belongs.\n"
        },
        "value": {
          "type": "string",
          "description": "-(Required) The IPv4/IPv6 address of the host.\n"
        }
      },
      "type": "object",
      "required": [
        "value"
      ]
    },
    "nutanix:index/PcDeployV2NetworkInternalNetworks:PcDeployV2NetworkInternalNetworks": {
      "properties": {
        "defaultGateway": {
          "$ref": "#/types/nutanix:index%2FPcDeployV2NetworkInternalNetworksDefaultGateway:PcDeployV2NetworkInternalNetworksDefaultGateway",
          "description": "-(Required) An unique address that identifies a device on the internet or a local network in IPv4/IPv6 format or a Fully Qualified Domain Name.\n"
        },
        "ipRanges": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FPcDeployV2NetworkInternalNetworksIpRange:PcDeployV2NetworkInternalNetworksIpRange"
          },
          "description": "-(Required) Range of IPs used for Prism Central network setup.\n"
        },
        "subnetMask": {
          "$ref": "#/types/nutanix:index%2FPcDeployV2NetworkInternalNetworksSubnetMask:PcDeployV2NetworkInternalNetworksSubnetMask",
          "description": "-(Required) An unique address that identifies a device on the internet or a local network in IPv4/IPv6 format or a Fully Qualified Domain Name.\n"
        }
      },
      "type": "object",
      "required": [
        "defaultGateway",
        "ipRanges",
        "subnetMask"
      ]
    },
    "nutanix:index/PcDeployV2NetworkInternalNetworksDefaultGateway:PcDeployV2NetworkInternalNetworksDefaultGateway": {
      "properties": {
        "fqdns": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FPcDeployV2NetworkInternalNetworksDefaultGatewayFqdn:PcDeployV2NetworkInternalNetworksDefaultGatewayFqdn"
          },
          "description": "-(Optional) A fully qualified domain name that specifies its exact location in the tree hierarchy of the Domain Name System.\n"
        },
        "ipv4s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FPcDeployV2NetworkInternalNetworksDefaultGatewayIpv4:PcDeployV2NetworkInternalNetworksDefaultGatewayIpv4"
          },
          "description": "-(Optional) An unique address that identifies a device on the internet or a local network in IPv4 format.\n"
        },
        "ipv6s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FPcDeployV2NetworkInternalNetworksDefaultGatewayIpv6:PcDeployV2NetworkInternalNetworksDefaultGatewayIpv6"
          },
          "description": "-(Optional) An unique address that identifies a device on the internet or a local network in IPv6 format.\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "fqdns",
            "ipv4s",
            "ipv6s"
          ]
        }
      }
    },
    "nutanix:index/PcDeployV2NetworkInternalNetworksDefaultGatewayFqdn:PcDeployV2NetworkInternalNetworksDefaultGatewayFqdn": {
      "properties": {
        "value": {
          "type": "string",
          "description": "-(Optional) The fully qualified domain name of the host.\n\nSee detailed information in [Nutanix Deploy PC V4](https://developers.nutanix.com/api-reference?namespace=prism&version=v4.0#tag/DomainManager/operation/createDomainManager).\n"
        }
      },
      "type": "object",
      "required": [
        "value"
      ]
    },
    "nutanix:index/PcDeployV2NetworkInternalNetworksDefaultGatewayIpv4:PcDeployV2NetworkInternalNetworksDefaultGatewayIpv4": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "-(Optional) The prefix length of the network to which this host IPv4/IPv6 address belongs.\n"
        },
        "value": {
          "type": "string",
          "description": "-(Required) The IPv4/IPv6 address of the host.\n"
        }
      },
      "type": "object",
      "required": [
        "value"
      ]
    },
    "nutanix:index/PcDeployV2NetworkInternalNetworksDefaultGatewayIpv6:PcDeployV2NetworkInternalNetworksDefaultGatewayIpv6": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "-(Optional) The prefix length of the network to which this host IPv4/IPv6 address belongs.\n"
        },
        "value": {
          "type": "string",
          "description": "-(Required) The IPv4/IPv6 address of the host.\n"
        }
      },
      "type": "object",
      "required": [
        "value"
      ]
    },
    "nutanix:index/PcDeployV2NetworkInternalNetworksIpRange:PcDeployV2NetworkInternalNetworksIpRange": {
      "properties": {
        "begin": {
          "$ref": "#/types/nutanix:index%2FPcDeployV2NetworkInternalNetworksIpRangeBegin:PcDeployV2NetworkInternalNetworksIpRangeBegin",
          "description": "-(Optional) The beginning IP address of the range.\n"
        },
        "end": {
          "$ref": "#/types/nutanix:index%2FPcDeployV2NetworkInternalNetworksIpRangeEnd:PcDeployV2NetworkInternalNetworksIpRangeEnd",
          "description": "-(Optional) The ending IP address of the range.\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "begin",
            "end"
          ]
        }
      }
    },
    "nutanix:index/PcDeployV2NetworkInternalNetworksIpRangeBegin:PcDeployV2NetworkInternalNetworksIpRangeBegin": {
      "properties": {
        "ipv4s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FPcDeployV2NetworkInternalNetworksIpRangeBeginIpv4:PcDeployV2NetworkInternalNetworksIpRangeBeginIpv4"
          },
          "description": "-(Optional) An unique address that identifies a device on the internet or a local network in IPv4 format.\n"
        },
        "ipv6s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FPcDeployV2NetworkInternalNetworksIpRangeBeginIpv6:PcDeployV2NetworkInternalNetworksIpRangeBeginIpv6"
          },
          "description": "-(Optional) An unique address that identifies a device on the internet or a local network in IPv6 format.\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "ipv4s",
            "ipv6s"
          ]
        }
      }
    },
    "nutanix:index/PcDeployV2NetworkInternalNetworksIpRangeBeginIpv4:PcDeployV2NetworkInternalNetworksIpRangeBeginIpv4": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "-(Optional) The prefix length of the network to which this host IPv4/IPv6 address belongs.\n"
        },
        "value": {
          "type": "string",
          "description": "-(Required) The IPv4/IPv6 address of the host.\n"
        }
      },
      "type": "object",
      "required": [
        "value"
      ]
    },
    "nutanix:index/PcDeployV2NetworkInternalNetworksIpRangeBeginIpv6:PcDeployV2NetworkInternalNetworksIpRangeBeginIpv6": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "-(Optional) The prefix length of the network to which this host IPv4/IPv6 address belongs.\n"
        },
        "value": {
          "type": "string",
          "description": "-(Required) The IPv4/IPv6 address of the host.\n"
        }
      },
      "type": "object",
      "required": [
        "value"
      ]
    },
    "nutanix:index/PcDeployV2NetworkInternalNetworksIpRangeEnd:PcDeployV2NetworkInternalNetworksIpRangeEnd": {
      "properties": {
        "ipv4s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FPcDeployV2NetworkInternalNetworksIpRangeEndIpv4:PcDeployV2NetworkInternalNetworksIpRangeEndIpv4"
          },
          "description": "-(Optional) An unique address that identifies a device on the internet or a local network in IPv4 format.\n"
        },
        "ipv6s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FPcDeployV2NetworkInternalNetworksIpRangeEndIpv6:PcDeployV2NetworkInternalNetworksIpRangeEndIpv6"
          },
          "description": "-(Optional) An unique address that identifies a device on the internet or a local network in IPv6 format.\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "ipv4s",
            "ipv6s"
          ]
        }
      }
    },
    "nutanix:index/PcDeployV2NetworkInternalNetworksIpRangeEndIpv4:PcDeployV2NetworkInternalNetworksIpRangeEndIpv4": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "-(Optional) The prefix length of the network to which this host IPv4/IPv6 address belongs.\n"
        },
        "value": {
          "type": "string",
          "description": "-(Required) The IPv4/IPv6 address of the host.\n"
        }
      },
      "type": "object",
      "required": [
        "value"
      ]
    },
    "nutanix:index/PcDeployV2NetworkInternalNetworksIpRangeEndIpv6:PcDeployV2NetworkInternalNetworksIpRangeEndIpv6": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "-(Optional) The prefix length of the network to which this host IPv4/IPv6 address belongs.\n"
        },
        "value": {
          "type": "string",
          "description": "-(Required) The IPv4/IPv6 address of the host.\n"
        }
      },
      "type": "object",
      "required": [
        "value"
      ]
    },
    "nutanix:index/PcDeployV2NetworkInternalNetworksSubnetMask:PcDeployV2NetworkInternalNetworksSubnetMask": {
      "properties": {
        "fqdns": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FPcDeployV2NetworkInternalNetworksSubnetMaskFqdn:PcDeployV2NetworkInternalNetworksSubnetMaskFqdn"
          },
          "description": "-(Optional) A fully qualified domain name that specifies its exact location in the tree hierarchy of the Domain Name System.\n"
        },
        "ipv4s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FPcDeployV2NetworkInternalNetworksSubnetMaskIpv4:PcDeployV2NetworkInternalNetworksSubnetMaskIpv4"
          },
          "description": "-(Optional) An unique address that identifies a device on the internet or a local network in IPv4 format.\n"
        },
        "ipv6s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FPcDeployV2NetworkInternalNetworksSubnetMaskIpv6:PcDeployV2NetworkInternalNetworksSubnetMaskIpv6"
          },
          "description": "-(Optional) An unique address that identifies a device on the internet or a local network in IPv6 format.\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "fqdns",
            "ipv4s",
            "ipv6s"
          ]
        }
      }
    },
    "nutanix:index/PcDeployV2NetworkInternalNetworksSubnetMaskFqdn:PcDeployV2NetworkInternalNetworksSubnetMaskFqdn": {
      "properties": {
        "value": {
          "type": "string",
          "description": "-(Optional) The fully qualified domain name of the host.\n\nSee detailed information in [Nutanix Deploy PC V4](https://developers.nutanix.com/api-reference?namespace=prism&version=v4.0#tag/DomainManager/operation/createDomainManager).\n"
        }
      },
      "type": "object",
      "required": [
        "value"
      ]
    },
    "nutanix:index/PcDeployV2NetworkInternalNetworksSubnetMaskIpv4:PcDeployV2NetworkInternalNetworksSubnetMaskIpv4": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "-(Optional) The prefix length of the network to which this host IPv4/IPv6 address belongs.\n"
        },
        "value": {
          "type": "string",
          "description": "-(Required) The IPv4/IPv6 address of the host.\n"
        }
      },
      "type": "object",
      "required": [
        "value"
      ]
    },
    "nutanix:index/PcDeployV2NetworkInternalNetworksSubnetMaskIpv6:PcDeployV2NetworkInternalNetworksSubnetMaskIpv6": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "-(Optional) The prefix length of the network to which this host IPv4/IPv6 address belongs.\n"
        },
        "value": {
          "type": "string",
          "description": "-(Required) The IPv4/IPv6 address of the host.\n"
        }
      },
      "type": "object",
      "required": [
        "value"
      ]
    },
    "nutanix:index/PcDeployV2NetworkNameServer:PcDeployV2NetworkNameServer": {
      "properties": {
        "fqdns": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FPcDeployV2NetworkNameServerFqdn:PcDeployV2NetworkNameServerFqdn"
          },
          "description": "-(Optional) A fully qualified domain name that specifies its exact location in the tree hierarchy of the Domain Name System.\n"
        },
        "ipv4s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FPcDeployV2NetworkNameServerIpv4:PcDeployV2NetworkNameServerIpv4"
          },
          "description": "-(Optional) An unique address that identifies a device on the internet or a local network in IPv4 format.\n"
        },
        "ipv6s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FPcDeployV2NetworkNameServerIpv6:PcDeployV2NetworkNameServerIpv6"
          },
          "description": "-(Optional) An unique address that identifies a device on the internet or a local network in IPv6 format.\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "fqdns",
            "ipv4s",
            "ipv6s"
          ]
        }
      }
    },
    "nutanix:index/PcDeployV2NetworkNameServerFqdn:PcDeployV2NetworkNameServerFqdn": {
      "properties": {
        "value": {
          "type": "string",
          "description": "-(Optional) The fully qualified domain name of the host.\n\nSee detailed information in [Nutanix Deploy PC V4](https://developers.nutanix.com/api-reference?namespace=prism&version=v4.0#tag/DomainManager/operation/createDomainManager).\n"
        }
      },
      "type": "object",
      "required": [
        "value"
      ]
    },
    "nutanix:index/PcDeployV2NetworkNameServerIpv4:PcDeployV2NetworkNameServerIpv4": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "-(Optional) The prefix length of the network to which this host IPv4/IPv6 address belongs.\n"
        },
        "value": {
          "type": "string",
          "description": "-(Required) The IPv4/IPv6 address of the host.\n"
        }
      },
      "type": "object",
      "required": [
        "value"
      ]
    },
    "nutanix:index/PcDeployV2NetworkNameServerIpv6:PcDeployV2NetworkNameServerIpv6": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "-(Optional) The prefix length of the network to which this host IPv4/IPv6 address belongs.\n"
        },
        "value": {
          "type": "string",
          "description": "-(Required) The IPv4/IPv6 address of the host.\n"
        }
      },
      "type": "object",
      "required": [
        "value"
      ]
    },
    "nutanix:index/PcDeployV2NetworkNtpServer:PcDeployV2NetworkNtpServer": {
      "properties": {
        "fqdns": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FPcDeployV2NetworkNtpServerFqdn:PcDeployV2NetworkNtpServerFqdn"
          },
          "description": "-(Optional) A fully qualified domain name that specifies its exact location in the tree hierarchy of the Domain Name System.\n"
        },
        "ipv4s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FPcDeployV2NetworkNtpServerIpv4:PcDeployV2NetworkNtpServerIpv4"
          },
          "description": "-(Optional) An unique address that identifies a device on the internet or a local network in IPv4 format.\n"
        },
        "ipv6s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FPcDeployV2NetworkNtpServerIpv6:PcDeployV2NetworkNtpServerIpv6"
          },
          "description": "-(Optional) An unique address that identifies a device on the internet or a local network in IPv6 format.\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "fqdns",
            "ipv4s",
            "ipv6s"
          ]
        }
      }
    },
    "nutanix:index/PcDeployV2NetworkNtpServerFqdn:PcDeployV2NetworkNtpServerFqdn": {
      "properties": {
        "value": {
          "type": "string",
          "description": "-(Optional) The fully qualified domain name of the host.\n\nSee detailed information in [Nutanix Deploy PC V4](https://developers.nutanix.com/api-reference?namespace=prism&version=v4.0#tag/DomainManager/operation/createDomainManager).\n"
        }
      },
      "type": "object",
      "required": [
        "value"
      ]
    },
    "nutanix:index/PcDeployV2NetworkNtpServerIpv4:PcDeployV2NetworkNtpServerIpv4": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "-(Optional) The prefix length of the network to which this host IPv4/IPv6 address belongs.\n"
        },
        "value": {
          "type": "string",
          "description": "-(Required) The IPv4/IPv6 address of the host.\n"
        }
      },
      "type": "object",
      "required": [
        "value"
      ]
    },
    "nutanix:index/PcDeployV2NetworkNtpServerIpv6:PcDeployV2NetworkNtpServerIpv6": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "-(Optional) The prefix length of the network to which this host IPv4/IPv6 address belongs.\n"
        },
        "value": {
          "type": "string",
          "description": "-(Required) The IPv4/IPv6 address of the host.\n"
        }
      },
      "type": "object",
      "required": [
        "value"
      ]
    },
    "nutanix:index/PcRegistrationV2Config:PcRegistrationV2Config": {
      "properties": {
        "bootstrapConfig": {
          "$ref": "#/types/nutanix:index%2FPcRegistrationV2ConfigBootstrapConfig:PcRegistrationV2ConfigBootstrapConfig"
        },
        "buildInfo": {
          "$ref": "#/types/nutanix:index%2FPcRegistrationV2ConfigBuildInfo:PcRegistrationV2ConfigBuildInfo"
        },
        "credentials": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FPcRegistrationV2ConfigCredential:PcRegistrationV2ConfigCredential"
          },
          "description": "-(Required)  Credentials to connect to a remote cluster.\n"
        },
        "name": {
          "type": "string"
        },
        "resourceConfigs": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FPcRegistrationV2ConfigResourceConfig:PcRegistrationV2ConfigResourceConfig"
          }
        },
        "shouldEnableLockdownMode": {
          "type": "boolean"
        },
        "size": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "buildInfo",
        "name",
        "size"
      ],
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "bootstrapConfig",
            "buildInfo",
            "name",
            "resourceConfigs",
            "shouldEnableLockdownMode",
            "size"
          ]
        }
      }
    },
    "nutanix:index/PcRegistrationV2ConfigBootstrapConfig:PcRegistrationV2ConfigBootstrapConfig": {
      "properties": {
        "cloudInitConfigs": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FPcRegistrationV2ConfigBootstrapConfigCloudInitConfig:PcRegistrationV2ConfigBootstrapConfigCloudInitConfig"
          }
        },
        "environmentInfo": {
          "$ref": "#/types/nutanix:index%2FPcRegistrationV2ConfigBootstrapConfigEnvironmentInfo:PcRegistrationV2ConfigBootstrapConfigEnvironmentInfo"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "environmentInfo"
          ]
        }
      }
    },
    "nutanix:index/PcRegistrationV2ConfigBootstrapConfigCloudInitConfig:PcRegistrationV2ConfigBootstrapConfigCloudInitConfig": {
      "properties": {
        "cloudInitScripts": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FPcRegistrationV2ConfigBootstrapConfigCloudInitConfigCloudInitScript:PcRegistrationV2ConfigBootstrapConfigCloudInitConfigCloudInitScript"
          }
        },
        "datasourceType": {
          "type": "string"
        },
        "metadata": {
          "type": "string"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "cloudInitScripts",
            "metadata"
          ]
        }
      }
    },
    "nutanix:index/PcRegistrationV2ConfigBootstrapConfigCloudInitConfigCloudInitScript:PcRegistrationV2ConfigBootstrapConfigCloudInitConfigCloudInitScript": {
      "properties": {
        "customKeyValues": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FPcRegistrationV2ConfigBootstrapConfigCloudInitConfigCloudInitScriptCustomKeyValue:PcRegistrationV2ConfigBootstrapConfigCloudInitConfigCloudInitScriptCustomKeyValue"
          }
        },
        "userDatas": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FPcRegistrationV2ConfigBootstrapConfigCloudInitConfigCloudInitScriptUserData:PcRegistrationV2ConfigBootstrapConfigCloudInitConfigCloudInitScriptUserData"
          }
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "customKeyValues",
            "userDatas"
          ]
        }
      }
    },
    "nutanix:index/PcRegistrationV2ConfigBootstrapConfigCloudInitConfigCloudInitScriptCustomKeyValue:PcRegistrationV2ConfigBootstrapConfigCloudInitConfigCloudInitScriptCustomKeyValue": {
      "properties": {
        "keyValuePairs": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FPcRegistrationV2ConfigBootstrapConfigCloudInitConfigCloudInitScriptCustomKeyValueKeyValuePair:PcRegistrationV2ConfigBootstrapConfigCloudInitConfigCloudInitScriptCustomKeyValueKeyValuePair"
          }
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "keyValuePairs"
          ]
        }
      }
    },
    "nutanix:index/PcRegistrationV2ConfigBootstrapConfigCloudInitConfigCloudInitScriptCustomKeyValueKeyValuePair:PcRegistrationV2ConfigBootstrapConfigCloudInitConfigCloudInitScriptCustomKeyValueKeyValuePair": {
      "properties": {
        "name": {
          "type": "string"
        },
        "values": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FPcRegistrationV2ConfigBootstrapConfigCloudInitConfigCloudInitScriptCustomKeyValueKeyValuePairValue:PcRegistrationV2ConfigBootstrapConfigCloudInitConfigCloudInitScriptCustomKeyValueKeyValuePairValue"
          }
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "name",
            "values"
          ]
        }
      }
    },
    "nutanix:index/PcRegistrationV2ConfigBootstrapConfigCloudInitConfigCloudInitScriptCustomKeyValueKeyValuePairValue:PcRegistrationV2ConfigBootstrapConfigCloudInitConfigCloudInitScriptCustomKeyValueKeyValuePairValue": {
      "properties": {
        "boolean": {
          "type": "boolean"
        },
        "integer": {
          "type": "integer"
        },
        "integerLists": {
          "type": "array",
          "items": {
            "type": "integer"
          }
        },
        "mapOfStrings": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FPcRegistrationV2ConfigBootstrapConfigCloudInitConfigCloudInitScriptCustomKeyValueKeyValuePairValueMapOfString:PcRegistrationV2ConfigBootstrapConfigCloudInitConfigCloudInitScriptCustomKeyValueKeyValuePairValueMapOfString"
          }
        },
        "object": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          }
        },
        "string": {
          "type": "string"
        },
        "stringLists": {
          "type": "array",
          "items": {
            "type": "string"
          }
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "boolean",
            "integer",
            "integerLists",
            "mapOfStrings",
            "object",
            "string",
            "stringLists"
          ]
        }
      }
    },
    "nutanix:index/PcRegistrationV2ConfigBootstrapConfigCloudInitConfigCloudInitScriptCustomKeyValueKeyValuePairValueMapOfString:PcRegistrationV2ConfigBootstrapConfigCloudInitConfigCloudInitScriptCustomKeyValueKeyValuePairValueMapOfString": {
      "properties": {
        "map": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          }
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "map"
          ]
        }
      }
    },
    "nutanix:index/PcRegistrationV2ConfigBootstrapConfigCloudInitConfigCloudInitScriptUserData:PcRegistrationV2ConfigBootstrapConfigCloudInitConfigCloudInitScriptUserData": {
      "properties": {
        "value": {
          "type": "string"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "value"
          ]
        }
      }
    },
    "nutanix:index/PcRegistrationV2ConfigBootstrapConfigEnvironmentInfo:PcRegistrationV2ConfigBootstrapConfigEnvironmentInfo": {
      "properties": {
        "providerType": {
          "type": "string"
        },
        "provisioningType": {
          "type": "string"
        },
        "type": {
          "type": "string"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "providerType",
            "provisioningType",
            "type"
          ]
        }
      }
    },
    "nutanix:index/PcRegistrationV2ConfigBuildInfo:PcRegistrationV2ConfigBuildInfo": {
      "properties": {
        "version": {
          "type": "string"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "version"
          ]
        }
      }
    },
    "nutanix:index/PcRegistrationV2ConfigCredential:PcRegistrationV2ConfigCredential": {
      "properties": {
        "password": {
          "type": "string",
          "description": "-(Required)  Password required for the basic auth scheme.\n\nSee detailed information in [Nutanix Register a PC Docs](https://developers.nutanix.com/api-reference?namespace=prism&version=v4.0#tag/DomainManager/operation/register).\n",
          "secret": true
        },
        "username": {
          "type": "string",
          "description": "-(Required)  Username required for the basic auth scheme. As per RFC 2617 usernames might be case sensitive.\n"
        }
      },
      "type": "object",
      "required": [
        "password",
        "username"
      ]
    },
    "nutanix:index/PcRegistrationV2ConfigResourceConfig:PcRegistrationV2ConfigResourceConfig": {
      "properties": {
        "containerExtIds": {
          "type": "array",
          "items": {
            "type": "string"
          }
        },
        "dataDiskSizeBytes": {
          "type": "integer"
        },
        "memorySizeBytes": {
          "type": "integer"
        },
        "numVcpus": {
          "type": "integer"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "containerExtIds",
            "dataDiskSizeBytes",
            "memorySizeBytes",
            "numVcpus"
          ]
        }
      }
    },
    "nutanix:index/PcRegistrationV2Link:PcRegistrationV2Link": {
      "properties": {
        "href": {
          "type": "string"
        },
        "rel": {
          "type": "string"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "href",
            "rel"
          ]
        }
      }
    },
    "nutanix:index/PcRegistrationV2Network:PcRegistrationV2Network": {
      "properties": {
        "externalAddress": {
          "$ref": "#/types/nutanix:index%2FPcRegistrationV2NetworkExternalAddress:PcRegistrationV2NetworkExternalAddress"
        },
        "externalNetworks": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FPcRegistrationV2NetworkExternalNetwork:PcRegistrationV2NetworkExternalNetwork"
          }
        },
        "fqdn": {
          "type": "string",
          "description": "- A fully qualified domain name that specifies its exact location in the tree hierarchy of the Domain Name System.\n"
        },
        "internalNetworks": {
          "$ref": "#/types/nutanix:index%2FPcRegistrationV2NetworkInternalNetworks:PcRegistrationV2NetworkInternalNetworks"
        },
        "nameServers": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FPcRegistrationV2NetworkNameServer:PcRegistrationV2NetworkNameServer"
          }
        },
        "ntpServers": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FPcRegistrationV2NetworkNtpServer:PcRegistrationV2NetworkNtpServer"
          }
        }
      },
      "type": "object",
      "required": [
        "nameServers",
        "ntpServers"
      ],
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "externalNetworks",
            "fqdn",
            "internalNetworks",
            "nameServers",
            "ntpServers"
          ]
        }
      }
    },
    "nutanix:index/PcRegistrationV2NetworkExternalAddress:PcRegistrationV2NetworkExternalAddress": {
      "properties": {
        "ipv4s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FPcRegistrationV2NetworkExternalAddressIpv4:PcRegistrationV2NetworkExternalAddressIpv4"
          },
          "description": "- An unique address that identifies a device on the internet or a local network in IPv4 format.\n"
        },
        "ipv6s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FPcRegistrationV2NetworkExternalAddressIpv6:PcRegistrationV2NetworkExternalAddressIpv6"
          },
          "description": "- An unique address that identifies a device on the internet or a local network in IPv6 format.\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "ipv4s",
            "ipv6s"
          ]
        }
      }
    },
    "nutanix:index/PcRegistrationV2NetworkExternalAddressIpv4:PcRegistrationV2NetworkExternalAddressIpv4": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "- The prefix length of the network to which this host IPv4/IPv6 address belongs.\n"
        },
        "value": {
          "type": "string",
          "description": "- An unique address that identifies a device on the internet or a local network in IPv4/IPv6 format.\n"
        }
      },
      "type": "object",
      "required": [
        "value"
      ]
    },
    "nutanix:index/PcRegistrationV2NetworkExternalAddressIpv6:PcRegistrationV2NetworkExternalAddressIpv6": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "- The prefix length of the network to which this host IPv4/IPv6 address belongs.\n"
        },
        "value": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "value"
      ]
    },
    "nutanix:index/PcRegistrationV2NetworkExternalNetwork:PcRegistrationV2NetworkExternalNetwork": {
      "properties": {
        "defaultGateway": {
          "$ref": "#/types/nutanix:index%2FPcRegistrationV2NetworkExternalNetworkDefaultGateway:PcRegistrationV2NetworkExternalNetworkDefaultGateway"
        },
        "ipRanges": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FPcRegistrationV2NetworkExternalNetworkIpRange:PcRegistrationV2NetworkExternalNetworkIpRange"
          }
        },
        "networkExtId": {
          "type": "string"
        },
        "subnetMask": {
          "$ref": "#/types/nutanix:index%2FPcRegistrationV2NetworkExternalNetworkSubnetMask:PcRegistrationV2NetworkExternalNetworkSubnetMask"
        }
      },
      "type": "object",
      "required": [
        "defaultGateway",
        "ipRanges",
        "networkExtId",
        "subnetMask"
      ]
    },
    "nutanix:index/PcRegistrationV2NetworkExternalNetworkDefaultGateway:PcRegistrationV2NetworkExternalNetworkDefaultGateway": {
      "properties": {
        "fqdns": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FPcRegistrationV2NetworkExternalNetworkDefaultGatewayFqdn:PcRegistrationV2NetworkExternalNetworkDefaultGatewayFqdn"
          },
          "description": "- A fully qualified domain name that specifies its exact location in the tree hierarchy of the Domain Name System.\n"
        },
        "ipv4s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FPcRegistrationV2NetworkExternalNetworkDefaultGatewayIpv4:PcRegistrationV2NetworkExternalNetworkDefaultGatewayIpv4"
          },
          "description": "- An unique address that identifies a device on the internet or a local network in IPv4 format.\n"
        },
        "ipv6s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FPcRegistrationV2NetworkExternalNetworkDefaultGatewayIpv6:PcRegistrationV2NetworkExternalNetworkDefaultGatewayIpv6"
          },
          "description": "- An unique address that identifies a device on the internet or a local network in IPv6 format.\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "fqdns",
            "ipv4s",
            "ipv6s"
          ]
        }
      }
    },
    "nutanix:index/PcRegistrationV2NetworkExternalNetworkDefaultGatewayFqdn:PcRegistrationV2NetworkExternalNetworkDefaultGatewayFqdn": {
      "properties": {
        "value": {
          "type": "string",
          "description": "- The fully qualified domain name of the host.\n"
        }
      },
      "type": "object",
      "required": [
        "value"
      ]
    },
    "nutanix:index/PcRegistrationV2NetworkExternalNetworkDefaultGatewayIpv4:PcRegistrationV2NetworkExternalNetworkDefaultGatewayIpv4": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "- The prefix length of the network to which this host IPv4/IPv6 address belongs.\n"
        },
        "value": {
          "type": "string",
          "description": "- An unique address that identifies a device on the internet or a local network in IPv4/IPv6 format.\n"
        }
      },
      "type": "object",
      "required": [
        "value"
      ]
    },
    "nutanix:index/PcRegistrationV2NetworkExternalNetworkDefaultGatewayIpv6:PcRegistrationV2NetworkExternalNetworkDefaultGatewayIpv6": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "- The prefix length of the network to which this host IPv4/IPv6 address belongs.\n"
        },
        "value": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "value"
      ]
    },
    "nutanix:index/PcRegistrationV2NetworkExternalNetworkIpRange:PcRegistrationV2NetworkExternalNetworkIpRange": {
      "properties": {
        "begin": {
          "$ref": "#/types/nutanix:index%2FPcRegistrationV2NetworkExternalNetworkIpRangeBegin:PcRegistrationV2NetworkExternalNetworkIpRangeBegin"
        },
        "end": {
          "$ref": "#/types/nutanix:index%2FPcRegistrationV2NetworkExternalNetworkIpRangeEnd:PcRegistrationV2NetworkExternalNetworkIpRangeEnd"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "begin",
            "end"
          ]
        }
      }
    },
    "nutanix:index/PcRegistrationV2NetworkExternalNetworkIpRangeBegin:PcRegistrationV2NetworkExternalNetworkIpRangeBegin": {
      "properties": {
        "ipv4s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FPcRegistrationV2NetworkExternalNetworkIpRangeBeginIpv4:PcRegistrationV2NetworkExternalNetworkIpRangeBeginIpv4"
          },
          "description": "- An unique address that identifies a device on the internet or a local network in IPv4 format.\n"
        },
        "ipv6s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FPcRegistrationV2NetworkExternalNetworkIpRangeBeginIpv6:PcRegistrationV2NetworkExternalNetworkIpRangeBeginIpv6"
          },
          "description": "- An unique address that identifies a device on the internet or a local network in IPv6 format.\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "ipv4s",
            "ipv6s"
          ]
        }
      }
    },
    "nutanix:index/PcRegistrationV2NetworkExternalNetworkIpRangeBeginIpv4:PcRegistrationV2NetworkExternalNetworkIpRangeBeginIpv4": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "- The prefix length of the network to which this host IPv4/IPv6 address belongs.\n"
        },
        "value": {
          "type": "string",
          "description": "- An unique address that identifies a device on the internet or a local network in IPv4/IPv6 format.\n"
        }
      },
      "type": "object",
      "required": [
        "value"
      ]
    },
    "nutanix:index/PcRegistrationV2NetworkExternalNetworkIpRangeBeginIpv6:PcRegistrationV2NetworkExternalNetworkIpRangeBeginIpv6": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "- The prefix length of the network to which this host IPv4/IPv6 address belongs.\n"
        },
        "value": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "value"
      ]
    },
    "nutanix:index/PcRegistrationV2NetworkExternalNetworkIpRangeEnd:PcRegistrationV2NetworkExternalNetworkIpRangeEnd": {
      "properties": {
        "ipv4s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FPcRegistrationV2NetworkExternalNetworkIpRangeEndIpv4:PcRegistrationV2NetworkExternalNetworkIpRangeEndIpv4"
          },
          "description": "- An unique address that identifies a device on the internet or a local network in IPv4 format.\n"
        },
        "ipv6s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FPcRegistrationV2NetworkExternalNetworkIpRangeEndIpv6:PcRegistrationV2NetworkExternalNetworkIpRangeEndIpv6"
          },
          "description": "- An unique address that identifies a device on the internet or a local network in IPv6 format.\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "ipv4s",
            "ipv6s"
          ]
        }
      }
    },
    "nutanix:index/PcRegistrationV2NetworkExternalNetworkIpRangeEndIpv4:PcRegistrationV2NetworkExternalNetworkIpRangeEndIpv4": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "- The prefix length of the network to which this host IPv4/IPv6 address belongs.\n"
        },
        "value": {
          "type": "string",
          "description": "- An unique address that identifies a device on the internet or a local network in IPv4/IPv6 format.\n"
        }
      },
      "type": "object",
      "required": [
        "value"
      ]
    },
    "nutanix:index/PcRegistrationV2NetworkExternalNetworkIpRangeEndIpv6:PcRegistrationV2NetworkExternalNetworkIpRangeEndIpv6": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "- The prefix length of the network to which this host IPv4/IPv6 address belongs.\n"
        },
        "value": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "value"
      ]
    },
    "nutanix:index/PcRegistrationV2NetworkExternalNetworkSubnetMask:PcRegistrationV2NetworkExternalNetworkSubnetMask": {
      "properties": {
        "fqdns": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FPcRegistrationV2NetworkExternalNetworkSubnetMaskFqdn:PcRegistrationV2NetworkExternalNetworkSubnetMaskFqdn"
          },
          "description": "- A fully qualified domain name that specifies its exact location in the tree hierarchy of the Domain Name System.\n"
        },
        "ipv4s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FPcRegistrationV2NetworkExternalNetworkSubnetMaskIpv4:PcRegistrationV2NetworkExternalNetworkSubnetMaskIpv4"
          },
          "description": "- An unique address that identifies a device on the internet or a local network in IPv4 format.\n"
        },
        "ipv6s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FPcRegistrationV2NetworkExternalNetworkSubnetMaskIpv6:PcRegistrationV2NetworkExternalNetworkSubnetMaskIpv6"
          },
          "description": "- An unique address that identifies a device on the internet or a local network in IPv6 format.\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "fqdns",
            "ipv4s",
            "ipv6s"
          ]
        }
      }
    },
    "nutanix:index/PcRegistrationV2NetworkExternalNetworkSubnetMaskFqdn:PcRegistrationV2NetworkExternalNetworkSubnetMaskFqdn": {
      "properties": {
        "value": {
          "type": "string",
          "description": "- The fully qualified domain name of the host.\n"
        }
      },
      "type": "object",
      "required": [
        "value"
      ]
    },
    "nutanix:index/PcRegistrationV2NetworkExternalNetworkSubnetMaskIpv4:PcRegistrationV2NetworkExternalNetworkSubnetMaskIpv4": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "- The prefix length of the network to which this host IPv4/IPv6 address belongs.\n"
        },
        "value": {
          "type": "string",
          "description": "- An unique address that identifies a device on the internet or a local network in IPv4/IPv6 format.\n"
        }
      },
      "type": "object",
      "required": [
        "value"
      ]
    },
    "nutanix:index/PcRegistrationV2NetworkExternalNetworkSubnetMaskIpv6:PcRegistrationV2NetworkExternalNetworkSubnetMaskIpv6": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "- The prefix length of the network to which this host IPv4/IPv6 address belongs.\n"
        },
        "value": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "value"
      ]
    },
    "nutanix:index/PcRegistrationV2NetworkInternalNetworks:PcRegistrationV2NetworkInternalNetworks": {
      "properties": {
        "defaultGateway": {
          "$ref": "#/types/nutanix:index%2FPcRegistrationV2NetworkInternalNetworksDefaultGateway:PcRegistrationV2NetworkInternalNetworksDefaultGateway"
        },
        "ipRanges": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FPcRegistrationV2NetworkInternalNetworksIpRange:PcRegistrationV2NetworkInternalNetworksIpRange"
          }
        },
        "subnetMask": {
          "$ref": "#/types/nutanix:index%2FPcRegistrationV2NetworkInternalNetworksSubnetMask:PcRegistrationV2NetworkInternalNetworksSubnetMask"
        }
      },
      "type": "object",
      "required": [
        "defaultGateway",
        "ipRanges",
        "subnetMask"
      ]
    },
    "nutanix:index/PcRegistrationV2NetworkInternalNetworksDefaultGateway:PcRegistrationV2NetworkInternalNetworksDefaultGateway": {
      "properties": {
        "fqdns": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FPcRegistrationV2NetworkInternalNetworksDefaultGatewayFqdn:PcRegistrationV2NetworkInternalNetworksDefaultGatewayFqdn"
          },
          "description": "- A fully qualified domain name that specifies its exact location in the tree hierarchy of the Domain Name System.\n"
        },
        "ipv4s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FPcRegistrationV2NetworkInternalNetworksDefaultGatewayIpv4:PcRegistrationV2NetworkInternalNetworksDefaultGatewayIpv4"
          },
          "description": "- An unique address that identifies a device on the internet or a local network in IPv4 format.\n"
        },
        "ipv6s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FPcRegistrationV2NetworkInternalNetworksDefaultGatewayIpv6:PcRegistrationV2NetworkInternalNetworksDefaultGatewayIpv6"
          },
          "description": "- An unique address that identifies a device on the internet or a local network in IPv6 format.\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "fqdns",
            "ipv4s",
            "ipv6s"
          ]
        }
      }
    },
    "nutanix:index/PcRegistrationV2NetworkInternalNetworksDefaultGatewayFqdn:PcRegistrationV2NetworkInternalNetworksDefaultGatewayFqdn": {
      "properties": {
        "value": {
          "type": "string",
          "description": "- The fully qualified domain name of the host.\n"
        }
      },
      "type": "object",
      "required": [
        "value"
      ]
    },
    "nutanix:index/PcRegistrationV2NetworkInternalNetworksDefaultGatewayIpv4:PcRegistrationV2NetworkInternalNetworksDefaultGatewayIpv4": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "- The prefix length of the network to which this host IPv4/IPv6 address belongs.\n"
        },
        "value": {
          "type": "string",
          "description": "- An unique address that identifies a device on the internet or a local network in IPv4/IPv6 format.\n"
        }
      },
      "type": "object",
      "required": [
        "value"
      ]
    },
    "nutanix:index/PcRegistrationV2NetworkInternalNetworksDefaultGatewayIpv6:PcRegistrationV2NetworkInternalNetworksDefaultGatewayIpv6": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "- The prefix length of the network to which this host IPv4/IPv6 address belongs.\n"
        },
        "value": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "value"
      ]
    },
    "nutanix:index/PcRegistrationV2NetworkInternalNetworksIpRange:PcRegistrationV2NetworkInternalNetworksIpRange": {
      "properties": {
        "begin": {
          "$ref": "#/types/nutanix:index%2FPcRegistrationV2NetworkInternalNetworksIpRangeBegin:PcRegistrationV2NetworkInternalNetworksIpRangeBegin"
        },
        "end": {
          "$ref": "#/types/nutanix:index%2FPcRegistrationV2NetworkInternalNetworksIpRangeEnd:PcRegistrationV2NetworkInternalNetworksIpRangeEnd"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "begin",
            "end"
          ]
        }
      }
    },
    "nutanix:index/PcRegistrationV2NetworkInternalNetworksIpRangeBegin:PcRegistrationV2NetworkInternalNetworksIpRangeBegin": {
      "properties": {
        "ipv4s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FPcRegistrationV2NetworkInternalNetworksIpRangeBeginIpv4:PcRegistrationV2NetworkInternalNetworksIpRangeBeginIpv4"
          },
          "description": "- An unique address that identifies a device on the internet or a local network in IPv4 format.\n"
        },
        "ipv6s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FPcRegistrationV2NetworkInternalNetworksIpRangeBeginIpv6:PcRegistrationV2NetworkInternalNetworksIpRangeBeginIpv6"
          },
          "description": "- An unique address that identifies a device on the internet or a local network in IPv6 format.\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "ipv4s",
            "ipv6s"
          ]
        }
      }
    },
    "nutanix:index/PcRegistrationV2NetworkInternalNetworksIpRangeBeginIpv4:PcRegistrationV2NetworkInternalNetworksIpRangeBeginIpv4": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "- The prefix length of the network to which this host IPv4/IPv6 address belongs.\n"
        },
        "value": {
          "type": "string",
          "description": "- An unique address that identifies a device on the internet or a local network in IPv4/IPv6 format.\n"
        }
      },
      "type": "object",
      "required": [
        "value"
      ]
    },
    "nutanix:index/PcRegistrationV2NetworkInternalNetworksIpRangeBeginIpv6:PcRegistrationV2NetworkInternalNetworksIpRangeBeginIpv6": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "- The prefix length of the network to which this host IPv4/IPv6 address belongs.\n"
        },
        "value": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "value"
      ]
    },
    "nutanix:index/PcRegistrationV2NetworkInternalNetworksIpRangeEnd:PcRegistrationV2NetworkInternalNetworksIpRangeEnd": {
      "properties": {
        "ipv4s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FPcRegistrationV2NetworkInternalNetworksIpRangeEndIpv4:PcRegistrationV2NetworkInternalNetworksIpRangeEndIpv4"
          },
          "description": "- An unique address that identifies a device on the internet or a local network in IPv4 format.\n"
        },
        "ipv6s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FPcRegistrationV2NetworkInternalNetworksIpRangeEndIpv6:PcRegistrationV2NetworkInternalNetworksIpRangeEndIpv6"
          },
          "description": "- An unique address that identifies a device on the internet or a local network in IPv6 format.\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "ipv4s",
            "ipv6s"
          ]
        }
      }
    },
    "nutanix:index/PcRegistrationV2NetworkInternalNetworksIpRangeEndIpv4:PcRegistrationV2NetworkInternalNetworksIpRangeEndIpv4": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "- The prefix length of the network to which this host IPv4/IPv6 address belongs.\n"
        },
        "value": {
          "type": "string",
          "description": "- An unique address that identifies a device on the internet or a local network in IPv4/IPv6 format.\n"
        }
      },
      "type": "object",
      "required": [
        "value"
      ]
    },
    "nutanix:index/PcRegistrationV2NetworkInternalNetworksIpRangeEndIpv6:PcRegistrationV2NetworkInternalNetworksIpRangeEndIpv6": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "- The prefix length of the network to which this host IPv4/IPv6 address belongs.\n"
        },
        "value": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "value"
      ]
    },
    "nutanix:index/PcRegistrationV2NetworkInternalNetworksSubnetMask:PcRegistrationV2NetworkInternalNetworksSubnetMask": {
      "properties": {
        "fqdns": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FPcRegistrationV2NetworkInternalNetworksSubnetMaskFqdn:PcRegistrationV2NetworkInternalNetworksSubnetMaskFqdn"
          },
          "description": "- A fully qualified domain name that specifies its exact location in the tree hierarchy of the Domain Name System.\n"
        },
        "ipv4s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FPcRegistrationV2NetworkInternalNetworksSubnetMaskIpv4:PcRegistrationV2NetworkInternalNetworksSubnetMaskIpv4"
          },
          "description": "- An unique address that identifies a device on the internet or a local network in IPv4 format.\n"
        },
        "ipv6s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FPcRegistrationV2NetworkInternalNetworksSubnetMaskIpv6:PcRegistrationV2NetworkInternalNetworksSubnetMaskIpv6"
          },
          "description": "- An unique address that identifies a device on the internet or a local network in IPv6 format.\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "fqdns",
            "ipv4s",
            "ipv6s"
          ]
        }
      }
    },
    "nutanix:index/PcRegistrationV2NetworkInternalNetworksSubnetMaskFqdn:PcRegistrationV2NetworkInternalNetworksSubnetMaskFqdn": {
      "properties": {
        "value": {
          "type": "string",
          "description": "- The fully qualified domain name of the host.\n"
        }
      },
      "type": "object",
      "required": [
        "value"
      ]
    },
    "nutanix:index/PcRegistrationV2NetworkInternalNetworksSubnetMaskIpv4:PcRegistrationV2NetworkInternalNetworksSubnetMaskIpv4": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "- The prefix length of the network to which this host IPv4/IPv6 address belongs.\n"
        },
        "value": {
          "type": "string",
          "description": "- An unique address that identifies a device on the internet or a local network in IPv4/IPv6 format.\n"
        }
      },
      "type": "object",
      "required": [
        "value"
      ]
    },
    "nutanix:index/PcRegistrationV2NetworkInternalNetworksSubnetMaskIpv6:PcRegistrationV2NetworkInternalNetworksSubnetMaskIpv6": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "- The prefix length of the network to which this host IPv4/IPv6 address belongs.\n"
        },
        "value": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "value"
      ]
    },
    "nutanix:index/PcRegistrationV2NetworkNameServer:PcRegistrationV2NetworkNameServer": {
      "properties": {
        "fqdns": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FPcRegistrationV2NetworkNameServerFqdn:PcRegistrationV2NetworkNameServerFqdn"
          },
          "description": "- A fully qualified domain name that specifies its exact location in the tree hierarchy of the Domain Name System.\n"
        },
        "ipv4s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FPcRegistrationV2NetworkNameServerIpv4:PcRegistrationV2NetworkNameServerIpv4"
          },
          "description": "- An unique address that identifies a device on the internet or a local network in IPv4 format.\n"
        },
        "ipv6s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FPcRegistrationV2NetworkNameServerIpv6:PcRegistrationV2NetworkNameServerIpv6"
          },
          "description": "- An unique address that identifies a device on the internet or a local network in IPv6 format.\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "fqdns",
            "ipv4s",
            "ipv6s"
          ]
        }
      }
    },
    "nutanix:index/PcRegistrationV2NetworkNameServerFqdn:PcRegistrationV2NetworkNameServerFqdn": {
      "properties": {
        "value": {
          "type": "string",
          "description": "- The fully qualified domain name of the host.\n"
        }
      },
      "type": "object",
      "required": [
        "value"
      ]
    },
    "nutanix:index/PcRegistrationV2NetworkNameServerIpv4:PcRegistrationV2NetworkNameServerIpv4": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "- The prefix length of the network to which this host IPv4/IPv6 address belongs.\n"
        },
        "value": {
          "type": "string",
          "description": "- An unique address that identifies a device on the internet or a local network in IPv4/IPv6 format.\n"
        }
      },
      "type": "object",
      "required": [
        "value"
      ]
    },
    "nutanix:index/PcRegistrationV2NetworkNameServerIpv6:PcRegistrationV2NetworkNameServerIpv6": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "- The prefix length of the network to which this host IPv4/IPv6 address belongs.\n"
        },
        "value": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "value"
      ]
    },
    "nutanix:index/PcRegistrationV2NetworkNtpServer:PcRegistrationV2NetworkNtpServer": {
      "properties": {
        "fqdns": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FPcRegistrationV2NetworkNtpServerFqdn:PcRegistrationV2NetworkNtpServerFqdn"
          },
          "description": "- A fully qualified domain name that specifies its exact location in the tree hierarchy of the Domain Name System.\n"
        },
        "ipv4s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FPcRegistrationV2NetworkNtpServerIpv4:PcRegistrationV2NetworkNtpServerIpv4"
          },
          "description": "- An unique address that identifies a device on the internet or a local network in IPv4 format.\n"
        },
        "ipv6s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FPcRegistrationV2NetworkNtpServerIpv6:PcRegistrationV2NetworkNtpServerIpv6"
          },
          "description": "- An unique address that identifies a device on the internet or a local network in IPv6 format.\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "fqdns",
            "ipv4s",
            "ipv6s"
          ]
        }
      }
    },
    "nutanix:index/PcRegistrationV2NetworkNtpServerFqdn:PcRegistrationV2NetworkNtpServerFqdn": {
      "properties": {
        "value": {
          "type": "string",
          "description": "- The fully qualified domain name of the host.\n"
        }
      },
      "type": "object",
      "required": [
        "value"
      ]
    },
    "nutanix:index/PcRegistrationV2NetworkNtpServerIpv4:PcRegistrationV2NetworkNtpServerIpv4": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "- The prefix length of the network to which this host IPv4/IPv6 address belongs.\n"
        },
        "value": {
          "type": "string",
          "description": "- An unique address that identifies a device on the internet or a local network in IPv4/IPv6 format.\n"
        }
      },
      "type": "object",
      "required": [
        "value"
      ]
    },
    "nutanix:index/PcRegistrationV2NetworkNtpServerIpv6:PcRegistrationV2NetworkNtpServerIpv6": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "- The prefix length of the network to which this host IPv4/IPv6 address belongs.\n"
        },
        "value": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "value"
      ]
    },
    "nutanix:index/PcRegistrationV2RemoteCluster:PcRegistrationV2RemoteCluster": {
      "properties": {
        "aosRemoteClusterSpec": {
          "$ref": "#/types/nutanix:index%2FPcRegistrationV2RemoteClusterAosRemoteClusterSpec:PcRegistrationV2RemoteClusterAosRemoteClusterSpec",
          "description": "- The registration request consists of the remote cluster details.\n"
        },
        "clusterReference": {
          "$ref": "#/types/nutanix:index%2FPcRegistrationV2RemoteClusterClusterReference:PcRegistrationV2RemoteClusterClusterReference",
          "description": "- The registration request consists of the remote cluster details. using the cluster reference.\n"
        },
        "domainManagerRemoteClusterSpec": {
          "$ref": "#/types/nutanix:index%2FPcRegistrationV2RemoteClusterDomainManagerRemoteClusterSpec:PcRegistrationV2RemoteClusterDomainManagerRemoteClusterSpec",
          "description": "- The registration request consists of the remote cluster details. and cloud type.\n"
        }
      },
      "type": "object"
    },
    "nutanix:index/PcRegistrationV2RemoteClusterAosRemoteClusterSpec:PcRegistrationV2RemoteClusterAosRemoteClusterSpec": {
      "properties": {
        "remoteCluster": {
          "$ref": "#/types/nutanix:index%2FPcRegistrationV2RemoteClusterAosRemoteClusterSpecRemoteCluster:PcRegistrationV2RemoteClusterAosRemoteClusterSpecRemoteCluster",
          "description": "-(Required)  Address configuration of a remote cluster. It requires the address of the remote, that is an IP or domain name along with the basic authentication credentials.\n"
        }
      },
      "type": "object",
      "required": [
        "remoteCluster"
      ]
    },
    "nutanix:index/PcRegistrationV2RemoteClusterAosRemoteClusterSpecRemoteCluster:PcRegistrationV2RemoteClusterAosRemoteClusterSpecRemoteCluster": {
      "properties": {
        "addresses": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FPcRegistrationV2RemoteClusterAosRemoteClusterSpecRemoteClusterAddress:PcRegistrationV2RemoteClusterAosRemoteClusterSpecRemoteClusterAddress"
          },
          "description": "-(Required)  An unique address that identifies a device on the internet or a local network in IPv4/IPv6 format or a Fully Qualified Domain Name.\n"
        },
        "credentials": {
          "$ref": "#/types/nutanix:index%2FPcRegistrationV2RemoteClusterAosRemoteClusterSpecRemoteClusterCredentials:PcRegistrationV2RemoteClusterAosRemoteClusterSpecRemoteClusterCredentials",
          "description": "-(Required)  Credentials to connect to a remote cluster.\n"
        }
      },
      "type": "object",
      "required": [
        "addresses",
        "credentials"
      ]
    },
    "nutanix:index/PcRegistrationV2RemoteClusterAosRemoteClusterSpecRemoteClusterAddress:PcRegistrationV2RemoteClusterAosRemoteClusterSpecRemoteClusterAddress": {
      "properties": {
        "fqdns": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FPcRegistrationV2RemoteClusterAosRemoteClusterSpecRemoteClusterAddressFqdn:PcRegistrationV2RemoteClusterAosRemoteClusterSpecRemoteClusterAddressFqdn"
          },
          "description": "- A fully qualified domain name that specifies its exact location in the tree hierarchy of the Domain Name System.\n"
        },
        "ipv4s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FPcRegistrationV2RemoteClusterAosRemoteClusterSpecRemoteClusterAddressIpv4:PcRegistrationV2RemoteClusterAosRemoteClusterSpecRemoteClusterAddressIpv4"
          },
          "description": "- An unique address that identifies a device on the internet or a local network in IPv4 format.\n"
        },
        "ipv6s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FPcRegistrationV2RemoteClusterAosRemoteClusterSpecRemoteClusterAddressIpv6:PcRegistrationV2RemoteClusterAosRemoteClusterSpecRemoteClusterAddressIpv6"
          },
          "description": "- An unique address that identifies a device on the internet or a local network in IPv6 format.\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "fqdns",
            "ipv4s",
            "ipv6s"
          ]
        }
      }
    },
    "nutanix:index/PcRegistrationV2RemoteClusterAosRemoteClusterSpecRemoteClusterAddressFqdn:PcRegistrationV2RemoteClusterAosRemoteClusterSpecRemoteClusterAddressFqdn": {
      "properties": {
        "value": {
          "type": "string",
          "description": "- The fully qualified domain name of the host.\n"
        }
      },
      "type": "object",
      "required": [
        "value"
      ]
    },
    "nutanix:index/PcRegistrationV2RemoteClusterAosRemoteClusterSpecRemoteClusterAddressIpv4:PcRegistrationV2RemoteClusterAosRemoteClusterSpecRemoteClusterAddressIpv4": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "- The prefix length of the network to which this host IPv4/IPv6 address belongs.\n"
        },
        "value": {
          "type": "string",
          "description": "- An unique address that identifies a device on the internet or a local network in IPv4/IPv6 format.\n"
        }
      },
      "type": "object",
      "required": [
        "value"
      ]
    },
    "nutanix:index/PcRegistrationV2RemoteClusterAosRemoteClusterSpecRemoteClusterAddressIpv6:PcRegistrationV2RemoteClusterAosRemoteClusterSpecRemoteClusterAddressIpv6": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "- The prefix length of the network to which this host IPv4/IPv6 address belongs.\n"
        },
        "value": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "value"
      ]
    },
    "nutanix:index/PcRegistrationV2RemoteClusterAosRemoteClusterSpecRemoteClusterCredentials:PcRegistrationV2RemoteClusterAosRemoteClusterSpecRemoteClusterCredentials": {
      "properties": {
        "authentication": {
          "$ref": "#/types/nutanix:index%2FPcRegistrationV2RemoteClusterAosRemoteClusterSpecRemoteClusterCredentialsAuthentication:PcRegistrationV2RemoteClusterAosRemoteClusterSpecRemoteClusterCredentialsAuthentication",
          "description": "-(Required)  An authentication scheme that requires the client to present a username and password. The server will service the request only if it can validate the user-ID and password for the protection space of the Request-URI.\n"
        }
      },
      "type": "object",
      "required": [
        "authentication"
      ]
    },
    "nutanix:index/PcRegistrationV2RemoteClusterAosRemoteClusterSpecRemoteClusterCredentialsAuthentication:PcRegistrationV2RemoteClusterAosRemoteClusterSpecRemoteClusterCredentialsAuthentication": {
      "properties": {
        "password": {
          "type": "string",
          "description": "-(Required)  Password required for the basic auth scheme.\n\nSee detailed information in [Nutanix Register a PC Docs](https://developers.nutanix.com/api-reference?namespace=prism&version=v4.0#tag/DomainManager/operation/register).\n"
        },
        "username": {
          "type": "string",
          "description": "-(Required)  Username required for the basic auth scheme. As per RFC 2617 usernames might be case sensitive.\n"
        }
      },
      "type": "object",
      "required": [
        "password",
        "username"
      ]
    },
    "nutanix:index/PcRegistrationV2RemoteClusterClusterReference:PcRegistrationV2RemoteClusterClusterReference": {
      "properties": {
        "extId": {
          "type": "string",
          "description": "-(Required)  Cluster UUID of a remote cluster.\n"
        }
      },
      "type": "object",
      "required": [
        "extId"
      ]
    },
    "nutanix:index/PcRegistrationV2RemoteClusterDomainManagerRemoteClusterSpec:PcRegistrationV2RemoteClusterDomainManagerRemoteClusterSpec": {
      "properties": {
        "cloudType": {
          "type": "string",
          "description": "-(Required)  Enum denoting whether the domain manager (Prism Central) instance is reachable with its physical address or reachable through the My Nutanix portal. Based on the above description, the allowed enum values are:\n* `NUTANIX_HOSTED_CLOUD` : Domain manager (Prism Central) reachable through My Nutanix portal.\n* `ONPREM_CLOUD`: Domain manager (Prism Central) reachable on it's physical address.\n"
        },
        "remoteCluster": {
          "$ref": "#/types/nutanix:index%2FPcRegistrationV2RemoteClusterDomainManagerRemoteClusterSpecRemoteCluster:PcRegistrationV2RemoteClusterDomainManagerRemoteClusterSpecRemoteCluster",
          "description": "-(Required)  Address configuration of a remote cluster. It requires the address of the remote, that is an IP or domain name along with the basic authentication credentials.\n"
        }
      },
      "type": "object",
      "required": [
        "cloudType",
        "remoteCluster"
      ]
    },
    "nutanix:index/PcRegistrationV2RemoteClusterDomainManagerRemoteClusterSpecRemoteCluster:PcRegistrationV2RemoteClusterDomainManagerRemoteClusterSpecRemoteCluster": {
      "properties": {
        "addresses": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FPcRegistrationV2RemoteClusterDomainManagerRemoteClusterSpecRemoteClusterAddress:PcRegistrationV2RemoteClusterDomainManagerRemoteClusterSpecRemoteClusterAddress"
          },
          "description": "-(Required)  An unique address that identifies a device on the internet or a local network in IPv4/IPv6 format or a Fully Qualified Domain Name.\n"
        },
        "credentials": {
          "$ref": "#/types/nutanix:index%2FPcRegistrationV2RemoteClusterDomainManagerRemoteClusterSpecRemoteClusterCredentials:PcRegistrationV2RemoteClusterDomainManagerRemoteClusterSpecRemoteClusterCredentials",
          "description": "-(Required)  Credentials to connect to a remote cluster.\n"
        }
      },
      "type": "object",
      "required": [
        "addresses",
        "credentials"
      ]
    },
    "nutanix:index/PcRegistrationV2RemoteClusterDomainManagerRemoteClusterSpecRemoteClusterAddress:PcRegistrationV2RemoteClusterDomainManagerRemoteClusterSpecRemoteClusterAddress": {
      "properties": {
        "fqdns": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FPcRegistrationV2RemoteClusterDomainManagerRemoteClusterSpecRemoteClusterAddressFqdn:PcRegistrationV2RemoteClusterDomainManagerRemoteClusterSpecRemoteClusterAddressFqdn"
          },
          "description": "- A fully qualified domain name that specifies its exact location in the tree hierarchy of the Domain Name System.\n"
        },
        "ipv4s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FPcRegistrationV2RemoteClusterDomainManagerRemoteClusterSpecRemoteClusterAddressIpv4:PcRegistrationV2RemoteClusterDomainManagerRemoteClusterSpecRemoteClusterAddressIpv4"
          },
          "description": "- An unique address that identifies a device on the internet or a local network in IPv4 format.\n"
        },
        "ipv6s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FPcRegistrationV2RemoteClusterDomainManagerRemoteClusterSpecRemoteClusterAddressIpv6:PcRegistrationV2RemoteClusterDomainManagerRemoteClusterSpecRemoteClusterAddressIpv6"
          },
          "description": "- An unique address that identifies a device on the internet or a local network in IPv6 format.\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "fqdns",
            "ipv4s",
            "ipv6s"
          ]
        }
      }
    },
    "nutanix:index/PcRegistrationV2RemoteClusterDomainManagerRemoteClusterSpecRemoteClusterAddressFqdn:PcRegistrationV2RemoteClusterDomainManagerRemoteClusterSpecRemoteClusterAddressFqdn": {
      "properties": {
        "value": {
          "type": "string",
          "description": "- The fully qualified domain name of the host.\n"
        }
      },
      "type": "object",
      "required": [
        "value"
      ]
    },
    "nutanix:index/PcRegistrationV2RemoteClusterDomainManagerRemoteClusterSpecRemoteClusterAddressIpv4:PcRegistrationV2RemoteClusterDomainManagerRemoteClusterSpecRemoteClusterAddressIpv4": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "- The prefix length of the network to which this host IPv4/IPv6 address belongs.\n"
        },
        "value": {
          "type": "string",
          "description": "- An unique address that identifies a device on the internet or a local network in IPv4/IPv6 format.\n"
        }
      },
      "type": "object",
      "required": [
        "value"
      ]
    },
    "nutanix:index/PcRegistrationV2RemoteClusterDomainManagerRemoteClusterSpecRemoteClusterAddressIpv6:PcRegistrationV2RemoteClusterDomainManagerRemoteClusterSpecRemoteClusterAddressIpv6": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "- The prefix length of the network to which this host IPv4/IPv6 address belongs.\n"
        },
        "value": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "value"
      ]
    },
    "nutanix:index/PcRegistrationV2RemoteClusterDomainManagerRemoteClusterSpecRemoteClusterCredentials:PcRegistrationV2RemoteClusterDomainManagerRemoteClusterSpecRemoteClusterCredentials": {
      "properties": {
        "authentication": {
          "$ref": "#/types/nutanix:index%2FPcRegistrationV2RemoteClusterDomainManagerRemoteClusterSpecRemoteClusterCredentialsAuthentication:PcRegistrationV2RemoteClusterDomainManagerRemoteClusterSpecRemoteClusterCredentialsAuthentication",
          "description": "-(Required)  An authentication scheme that requires the client to present a username and password. The server will service the request only if it can validate the user-ID and password for the protection space of the Request-URI.\n"
        }
      },
      "type": "object",
      "required": [
        "authentication"
      ]
    },
    "nutanix:index/PcRegistrationV2RemoteClusterDomainManagerRemoteClusterSpecRemoteClusterCredentialsAuthentication:PcRegistrationV2RemoteClusterDomainManagerRemoteClusterSpecRemoteClusterCredentialsAuthentication": {
      "properties": {
        "password": {
          "type": "string",
          "description": "-(Required)  Password required for the basic auth scheme.\n\nSee detailed information in [Nutanix Register a PC Docs](https://developers.nutanix.com/api-reference?namespace=prism&version=v4.0#tag/DomainManager/operation/register).\n"
        },
        "username": {
          "type": "string",
          "description": "-(Required)  Username required for the basic auth scheme. As per RFC 2617 usernames might be case sensitive.\n"
        }
      },
      "type": "object",
      "required": [
        "password",
        "username"
      ]
    },
    "nutanix:index/PcRestoreSourceV2Link:PcRestoreSourceV2Link": {
      "properties": {
        "href": {
          "type": "string"
        },
        "rel": {
          "type": "string"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "href",
            "rel"
          ]
        }
      }
    },
    "nutanix:index/PcRestoreSourceV2Location:PcRestoreSourceV2Location": {
      "properties": {
        "clusterLocations": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FPcRestoreSourceV2LocationClusterLocation:PcRestoreSourceV2LocationClusterLocation"
          },
          "description": "-(Optional) A boolean value indicating whether to enable lockdown mode for a cluster.\n"
        },
        "objectStoreLocations": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FPcRestoreSourceV2LocationObjectStoreLocation:PcRestoreSourceV2LocationObjectStoreLocation"
          },
          "description": "-(Optional) Currently representing the build information to be used for the cluster creation.\n"
        }
      },
      "type": "object"
    },
    "nutanix:index/PcRestoreSourceV2LocationClusterLocation:PcRestoreSourceV2LocationClusterLocation": {
      "properties": {
        "configs": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FPcRestoreSourceV2LocationClusterLocationConfig:PcRestoreSourceV2LocationClusterLocationConfig"
          },
          "description": "-(Required) Cluster reference of the remote cluster to be connected.\n"
        }
      },
      "type": "object",
      "required": [
        "configs"
      ]
    },
    "nutanix:index/PcRestoreSourceV2LocationClusterLocationConfig:PcRestoreSourceV2LocationClusterLocationConfig": {
      "properties": {
        "extId": {
          "type": "string",
          "description": "-(Required) Cluster UUID of a remote cluster.\n"
        },
        "name": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "extId"
      ],
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "extId",
            "name"
          ]
        }
      }
    },
    "nutanix:index/PcRestoreSourceV2LocationObjectStoreLocation:PcRestoreSourceV2LocationObjectStoreLocation": {
      "properties": {
        "backupPolicies": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FPcRestoreSourceV2LocationObjectStoreLocationBackupPolicy:PcRestoreSourceV2LocationObjectStoreLocationBackupPolicy"
          },
          "description": "-(Optional) Backup policy for the object store provided.\n"
        },
        "providerConfigs": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FPcRestoreSourceV2LocationObjectStoreLocationProviderConfig:PcRestoreSourceV2LocationObjectStoreLocationProviderConfig"
          },
          "description": "-(Required) The base model of S3 object store endpoint where domain manager is backed up.\n"
        }
      },
      "type": "object",
      "required": [
        "providerConfigs"
      ]
    },
    "nutanix:index/PcRestoreSourceV2LocationObjectStoreLocationBackupPolicy:PcRestoreSourceV2LocationObjectStoreLocationBackupPolicy": {
      "properties": {
        "rpoInMinutes": {
          "type": "integer",
          "description": "-(Required) RPO interval in minutes at which the backup will be taken. The Value should be in the range of 60 to 1440.\n\nSee detailed information in [Nutanix Restore Source V4](https://developers.nutanix.com/api-reference?namespace=prism&version=v4.0#tag/DomainManager/operation/createRestoreSource).\n"
        }
      },
      "type": "object",
      "required": [
        "rpoInMinutes"
      ]
    },
    "nutanix:index/PcRestoreSourceV2LocationObjectStoreLocationProviderConfig:PcRestoreSourceV2LocationObjectStoreLocationProviderConfig": {
      "properties": {
        "bucketName": {
          "type": "string",
          "description": "-(Required) The bucket name of the object store endpoint where backup data of domain manager is to be stored.\n"
        },
        "credentials": {
          "$ref": "#/types/nutanix:index%2FPcRestoreSourceV2LocationObjectStoreLocationProviderConfigCredentials:PcRestoreSourceV2LocationObjectStoreLocationProviderConfigCredentials",
          "description": "-(Optional) Secret credentials model for the object store containing access key ID and secret access key.\n"
        },
        "region": {
          "type": "string",
          "description": "-(Optional) The region name of the object store endpoint where backup data of domain manager is stored. Default is `us-east-1`.\n"
        }
      },
      "type": "object",
      "required": [
        "bucketName"
      ]
    },
    "nutanix:index/PcRestoreSourceV2LocationObjectStoreLocationProviderConfigCredentials:PcRestoreSourceV2LocationObjectStoreLocationProviderConfigCredentials": {
      "properties": {
        "accessKeyId": {
          "type": "string",
          "description": "-(Required) Access key ID for the object store provided for backup target.\n"
        },
        "secretAccessKey": {
          "type": "string",
          "description": "-(Required) Secret access key for the object store provided for backup target.\n"
        }
      },
      "type": "object",
      "required": [
        "accessKeyId",
        "secretAccessKey"
      ]
    },
    "nutanix:index/PcRestoreV2DomainManager:PcRestoreV2DomainManager": {
      "properties": {
        "configs": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FPcRestoreV2DomainManagerConfig:PcRestoreV2DomainManagerConfig"
          },
          "description": "-(Required) Domain manager (Prism Central) cluster configuration details.\n"
        },
        "hostingClusterExtId": {
          "type": "string"
        },
        "isRegisteredWithHostingCluster": {
          "type": "boolean"
        },
        "networks": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FPcRestoreV2DomainManagerNetwork:PcRestoreV2DomainManagerNetwork"
          },
          "description": "-(Required) Domain manager (Prism Central) network configuration details.\n"
        },
        "nodeExtIds": {
          "type": "array",
          "items": {
            "type": "string"
          }
        },
        "shouldEnableHighAvailability": {
          "type": "boolean",
          "description": "-(Optional) This configuration enables Prism Central to be deployed in scale-out mode. Default is <span pulumi-lang-nodejs=\"`false`\" pulumi-lang-dotnet=\"`False`\" pulumi-lang-go=\"`false`\" pulumi-lang-python=\"`false`\" pulumi-lang-yaml=\"`false`\" pulumi-lang-java=\"`false`\">`false`</span>.\n"
        }
      },
      "type": "object",
      "required": [
        "configs",
        "networks"
      ],
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "configs",
            "hostingClusterExtId",
            "isRegisteredWithHostingCluster",
            "networks",
            "nodeExtIds",
            "shouldEnableHighAvailability"
          ]
        }
      }
    },
    "nutanix:index/PcRestoreV2DomainManagerConfig:PcRestoreV2DomainManagerConfig": {
      "properties": {
        "bootstrapConfig": {
          "$ref": "#/types/nutanix:index%2FPcRestoreV2DomainManagerConfigBootstrapConfig:PcRestoreV2DomainManagerConfigBootstrapConfig",
          "description": "- (Optional) Bootstrap configuration details for the domain manager (Prism Central).\n"
        },
        "buildInfo": {
          "$ref": "#/types/nutanix:index%2FPcRestoreV2DomainManagerConfigBuildInfo:PcRestoreV2DomainManagerConfigBuildInfo",
          "description": "-(Required) Currently representing the build information to be used for the cluster creation.\n"
        },
        "credentials": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FPcRestoreV2DomainManagerConfigCredential:PcRestoreV2DomainManagerConfigCredential"
          },
          "description": "- (Optional) The credentials consist of a username and password for a particular user like admin. Users can pass the credentials of admin users currently which will be configured in the create domain manager operation.\n"
        },
        "name": {
          "type": "string",
          "description": "-(Required) Name of the domain manager (Prism Central).\n"
        },
        "resourceConfigs": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FPcRestoreV2DomainManagerConfigResourceConfig:PcRestoreV2DomainManagerConfigResourceConfig"
          },
          "description": "-(Optional) This configuration is used to provide the resource-related details like container external identifiers, number of VCPUs, memory size, data disk size of the domain manager (Prism Central). In the case of a multi-node setup, the sum of resources like number of VCPUs, memory size and data disk size are provided.\n"
        },
        "shouldEnableLockdownMode": {
          "type": "boolean",
          "description": "-(Optional) A boolean value indicating whether to enable lockdown mode for a cluster.\n"
        },
        "size": {
          "type": "string",
          "description": "- (Required) Domain manager (Prism Central) size is an enumeration of starter, small, large, or extra large starter values. The allowed values are:\n- `SMALL` : Domain manager (Prism Central) of size small.\n- `LARGE` : Domain manager (Prism Central) of size large.\n- `EXTRALARGE` : Domain manager (Prism Central) of size extra large.\n- `STARTER` : Domain manager (Prism Central) of size starter.\n"
        }
      },
      "type": "object",
      "required": [
        "buildInfo",
        "name",
        "size"
      ],
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "bootstrapConfig",
            "buildInfo",
            "name",
            "resourceConfigs",
            "shouldEnableLockdownMode",
            "size"
          ]
        }
      }
    },
    "nutanix:index/PcRestoreV2DomainManagerConfigBootstrapConfig:PcRestoreV2DomainManagerConfigBootstrapConfig": {
      "properties": {
        "cloudInitConfigs": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FPcRestoreV2DomainManagerConfigBootstrapConfigCloudInitConfig:PcRestoreV2DomainManagerConfigBootstrapConfigCloudInitConfig"
          },
          "description": "-(Optional) Cloud-init configuration for the domain manager (Prism Central) cluster.\n"
        },
        "environmentInfo": {
          "$ref": "#/types/nutanix:index%2FPcRestoreV2DomainManagerConfigBootstrapConfigEnvironmentInfo:PcRestoreV2DomainManagerConfigBootstrapConfigEnvironmentInfo",
          "description": "-(Optional) Environment information for the domain manager (Prism Central) cluster.\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "environmentInfo"
          ]
        }
      }
    },
    "nutanix:index/PcRestoreV2DomainManagerConfigBootstrapConfigCloudInitConfig:PcRestoreV2DomainManagerConfigBootstrapConfigCloudInitConfig": {
      "properties": {
        "cloudInitScripts": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FPcRestoreV2DomainManagerConfigBootstrapConfigCloudInitConfigCloudInitScript:PcRestoreV2DomainManagerConfigBootstrapConfigCloudInitConfigCloudInitScript"
          },
          "description": "-(Optional) The script to use for cloud-init.\n- `cloud_init_script.user_data`: -(Optional) user data object\n- `cloud_init_script.custom_keys`: -(Optional) The list of the individual KeyValuePair elements.\n"
        },
        "datasourceType": {
          "type": "string",
          "description": "-(Optional) Type of datasource. Default: CONFIG_DRIVE_V2\n"
        },
        "metadata": {
          "type": "string",
          "description": "-(Optional)The contents of the<span pulumi-lang-nodejs=\" metaData \" pulumi-lang-dotnet=\" MetaData \" pulumi-lang-go=\" metaData \" pulumi-lang-python=\" meta_data \" pulumi-lang-yaml=\" metaData \" pulumi-lang-java=\" metaData \"> meta_data </span>configuration for cloud-init. This can be formatted as YAML or JSON. The value must be base64 encoded. Default value is 'CONFIG_DRIVE_V2'.\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "cloudInitScripts",
            "metadata"
          ]
        }
      }
    },
    "nutanix:index/PcRestoreV2DomainManagerConfigBootstrapConfigCloudInitConfigCloudInitScript:PcRestoreV2DomainManagerConfigBootstrapConfigCloudInitConfigCloudInitScript": {
      "properties": {
        "customKeyValues": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FPcRestoreV2DomainManagerConfigBootstrapConfigCloudInitConfigCloudInitScriptCustomKeyValue:PcRestoreV2DomainManagerConfigBootstrapConfigCloudInitConfigCloudInitScriptCustomKeyValue"
          }
        },
        "userDatas": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FPcRestoreV2DomainManagerConfigBootstrapConfigCloudInitConfigCloudInitScriptUserData:PcRestoreV2DomainManagerConfigBootstrapConfigCloudInitConfigCloudInitScriptUserData"
          }
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "customKeyValues",
            "userDatas"
          ]
        }
      }
    },
    "nutanix:index/PcRestoreV2DomainManagerConfigBootstrapConfigCloudInitConfigCloudInitScriptCustomKeyValue:PcRestoreV2DomainManagerConfigBootstrapConfigCloudInitConfigCloudInitScriptCustomKeyValue": {
      "properties": {
        "keyValuePairs": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FPcRestoreV2DomainManagerConfigBootstrapConfigCloudInitConfigCloudInitScriptCustomKeyValueKeyValuePair:PcRestoreV2DomainManagerConfigBootstrapConfigCloudInitConfigCloudInitScriptCustomKeyValueKeyValuePair"
          }
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "keyValuePairs"
          ]
        }
      }
    },
    "nutanix:index/PcRestoreV2DomainManagerConfigBootstrapConfigCloudInitConfigCloudInitScriptCustomKeyValueKeyValuePair:PcRestoreV2DomainManagerConfigBootstrapConfigCloudInitConfigCloudInitScriptCustomKeyValueKeyValuePair": {
      "properties": {
        "name": {
          "type": "string",
          "description": "-(Required) Name of the domain manager (Prism Central).\n"
        },
        "values": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FPcRestoreV2DomainManagerConfigBootstrapConfigCloudInitConfigCloudInitScriptCustomKeyValueKeyValuePairValue:PcRestoreV2DomainManagerConfigBootstrapConfigCloudInitConfigCloudInitScriptCustomKeyValueKeyValuePairValue"
          }
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "name",
            "values"
          ]
        }
      }
    },
    "nutanix:index/PcRestoreV2DomainManagerConfigBootstrapConfigCloudInitConfigCloudInitScriptCustomKeyValueKeyValuePairValue:PcRestoreV2DomainManagerConfigBootstrapConfigCloudInitConfigCloudInitScriptCustomKeyValueKeyValuePairValue": {
      "properties": {
        "boolean": {
          "type": "boolean"
        },
        "integer": {
          "type": "integer"
        },
        "integerLists": {
          "type": "array",
          "items": {
            "type": "integer"
          }
        },
        "mapOfStrings": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FPcRestoreV2DomainManagerConfigBootstrapConfigCloudInitConfigCloudInitScriptCustomKeyValueKeyValuePairValueMapOfString:PcRestoreV2DomainManagerConfigBootstrapConfigCloudInitConfigCloudInitScriptCustomKeyValueKeyValuePairValueMapOfString"
          }
        },
        "object": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          }
        },
        "string": {
          "type": "string"
        },
        "stringLists": {
          "type": "array",
          "items": {
            "type": "string"
          }
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "boolean",
            "integer",
            "integerLists",
            "mapOfStrings",
            "object",
            "string",
            "stringLists"
          ]
        }
      }
    },
    "nutanix:index/PcRestoreV2DomainManagerConfigBootstrapConfigCloudInitConfigCloudInitScriptCustomKeyValueKeyValuePairValueMapOfString:PcRestoreV2DomainManagerConfigBootstrapConfigCloudInitConfigCloudInitScriptCustomKeyValueKeyValuePairValueMapOfString": {
      "properties": {
        "map": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          }
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "map"
          ]
        }
      }
    },
    "nutanix:index/PcRestoreV2DomainManagerConfigBootstrapConfigCloudInitConfigCloudInitScriptUserData:PcRestoreV2DomainManagerConfigBootstrapConfigCloudInitConfigCloudInitScriptUserData": {
      "properties": {
        "value": {
          "type": "string"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "value"
          ]
        }
      }
    },
    "nutanix:index/PcRestoreV2DomainManagerConfigBootstrapConfigEnvironmentInfo:PcRestoreV2DomainManagerConfigBootstrapConfigEnvironmentInfo": {
      "properties": {
        "providerType": {
          "type": "string",
          "description": "-(Optional) Enums denoting the provider type of the PC, that is, AHV or ESXi.\nFollowing are the supported provider types:\n- `VSPHERE` : Vsphere cloud provider.\n- `AZURE` : Azure cloud provider.\n- `NTNX` : Nutanix cloud provider.\n- `GCP` : GCP cloud provider.\n- `AWS` : AWS cloud provider.\n"
        },
        "provisioningType": {
          "type": "string",
          "description": "-(Optional) Enums denoting the instance type of the cloud PC. It indicates whether the PC is created on bare-metal or on a cloud-provisioned VM. Hence, it supports two possible values:\n- `NTNX` : Nutanix instance.\n- `NATIVE` : Native instance.\n"
        },
        "type": {
          "type": "string",
          "description": "-(Optional) Enums denoting the environment type of the PC, that is, on-prem PC or cloud PC.\nFollowing are the supported entity types:\n- `ONPREM` : On-prem environment.\n- `NTNX_CLOUD` : Nutanix cloud environment.\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "providerType",
            "provisioningType",
            "type"
          ]
        }
      }
    },
    "nutanix:index/PcRestoreV2DomainManagerConfigBuildInfo:PcRestoreV2DomainManagerConfigBuildInfo": {
      "properties": {
        "version": {
          "type": "string",
          "description": "-(Optional) Software version.\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "version"
          ]
        }
      }
    },
    "nutanix:index/PcRestoreV2DomainManagerConfigCredential:PcRestoreV2DomainManagerConfigCredential": {
      "properties": {
        "password": {
          "type": "string",
          "description": "-(Required) Password required for the basic auth scheme.\n",
          "secret": true
        },
        "username": {
          "type": "string",
          "description": "-(Required) Username required for the basic auth scheme. As per RFC 2617 usernames might be case sensitive.\n"
        }
      },
      "type": "object",
      "required": [
        "password",
        "username"
      ]
    },
    "nutanix:index/PcRestoreV2DomainManagerConfigResourceConfig:PcRestoreV2DomainManagerConfigResourceConfig": {
      "properties": {
        "containerExtIds": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "-(Optional) The external identifier of the container that will be used to create the domain manager (Prism Central) cluster.\n"
        },
        "dataDiskSizeBytes": {
          "type": "integer"
        },
        "memorySizeBytes": {
          "type": "integer"
        },
        "numVcpus": {
          "type": "integer"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "containerExtIds",
            "dataDiskSizeBytes",
            "memorySizeBytes",
            "numVcpus"
          ]
        }
      }
    },
    "nutanix:index/PcRestoreV2DomainManagerNetwork:PcRestoreV2DomainManagerNetwork": {
      "properties": {
        "externalAddress": {
          "$ref": "#/types/nutanix:index%2FPcRestoreV2DomainManagerNetworkExternalAddress:PcRestoreV2DomainManagerNetworkExternalAddress",
          "description": "-(Optional) An unique address that identifies a device on the internet or a local network in IPv4 or IPv6 format.\n"
        },
        "externalNetworks": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FPcRestoreV2DomainManagerNetworkExternalNetwork:PcRestoreV2DomainManagerNetworkExternalNetwork"
          },
          "description": "-(Required) This configuration is used to manage Prism Central.\n"
        },
        "fqdn": {
          "type": "string"
        },
        "internalNetworks": {
          "$ref": "#/types/nutanix:index%2FPcRestoreV2DomainManagerNetworkInternalNetworks:PcRestoreV2DomainManagerNetworkInternalNetworks",
          "description": "-(Required) This configuration is used to internally manage Prism Central network.\n"
        },
        "nameServers": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FPcRestoreV2DomainManagerNetworkNameServer:PcRestoreV2DomainManagerNetworkNameServer"
          },
          "description": "-(Required) List of name servers on a cluster. This is part of payload for both cluster create & update operations. For create operation, only ipv4 address / fqdn values are supported currently.\n"
        },
        "ntpServers": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FPcRestoreV2DomainManagerNetworkNtpServer:PcRestoreV2DomainManagerNetworkNtpServer"
          },
          "description": "-(Required) List of NTP servers on a cluster. This is part of payload for both cluster create & update operations. For create operation, only ipv4 address / fqdn values are supported currently.\n"
        }
      },
      "type": "object",
      "required": [
        "nameServers",
        "ntpServers"
      ],
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "externalNetworks",
            "fqdn",
            "internalNetworks",
            "nameServers",
            "ntpServers"
          ]
        }
      }
    },
    "nutanix:index/PcRestoreV2DomainManagerNetworkExternalAddress:PcRestoreV2DomainManagerNetworkExternalAddress": {
      "properties": {
        "ipv4s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FPcRestoreV2DomainManagerNetworkExternalAddressIpv4:PcRestoreV2DomainManagerNetworkExternalAddressIpv4"
          },
          "description": "-(Optional) An unique address that identifies a device on the internet or a local network in IPv4 format.\n"
        },
        "ipv6s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FPcRestoreV2DomainManagerNetworkExternalAddressIpv6:PcRestoreV2DomainManagerNetworkExternalAddressIpv6"
          },
          "description": "-(Optional) An unique address that identifies a device on the internet or a local network in IPv6 format.\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "ipv4s",
            "ipv6s"
          ]
        }
      }
    },
    "nutanix:index/PcRestoreV2DomainManagerNetworkExternalAddressIpv4:PcRestoreV2DomainManagerNetworkExternalAddressIpv4": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "-(Optional) The prefix length of the network to which this host IPv4/IPv6 address belongs.\n"
        },
        "value": {
          "type": "string",
          "description": "-(Required) The IPv4/IPv6 address of the host.\n"
        }
      },
      "type": "object",
      "required": [
        "value"
      ]
    },
    "nutanix:index/PcRestoreV2DomainManagerNetworkExternalAddressIpv6:PcRestoreV2DomainManagerNetworkExternalAddressIpv6": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "-(Optional) The prefix length of the network to which this host IPv4/IPv6 address belongs.\n"
        },
        "value": {
          "type": "string",
          "description": "-(Required) The IPv4/IPv6 address of the host.\n"
        }
      },
      "type": "object",
      "required": [
        "value"
      ]
    },
    "nutanix:index/PcRestoreV2DomainManagerNetworkExternalNetwork:PcRestoreV2DomainManagerNetworkExternalNetwork": {
      "properties": {
        "defaultGateway": {
          "$ref": "#/types/nutanix:index%2FPcRestoreV2DomainManagerNetworkExternalNetworkDefaultGateway:PcRestoreV2DomainManagerNetworkExternalNetworkDefaultGateway",
          "description": "-(Required) An unique address that identifies a device on the internet or a local network in IPv4/IPv6 format or a Fully Qualified Domain Name.\n"
        },
        "ipRanges": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FPcRestoreV2DomainManagerNetworkExternalNetworkIpRange:PcRestoreV2DomainManagerNetworkExternalNetworkIpRange"
          },
          "description": "-(Required) Range of IPs used for Prism Central network setup.\n"
        },
        "networkExtId": {
          "type": "string",
          "description": "-(Required) The network external identifier to which Domain Manager (Prism Central) is to be deployed or is already configured.\n"
        },
        "subnetMask": {
          "$ref": "#/types/nutanix:index%2FPcRestoreV2DomainManagerNetworkExternalNetworkSubnetMask:PcRestoreV2DomainManagerNetworkExternalNetworkSubnetMask",
          "description": "-(Required) An unique address that identifies a device on the internet or a local network in IPv4/IPv6 format or a Fully Qualified Domain Name.\n"
        }
      },
      "type": "object",
      "required": [
        "defaultGateway",
        "ipRanges",
        "networkExtId",
        "subnetMask"
      ]
    },
    "nutanix:index/PcRestoreV2DomainManagerNetworkExternalNetworkDefaultGateway:PcRestoreV2DomainManagerNetworkExternalNetworkDefaultGateway": {
      "properties": {
        "fqdns": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FPcRestoreV2DomainManagerNetworkExternalNetworkDefaultGatewayFqdn:PcRestoreV2DomainManagerNetworkExternalNetworkDefaultGatewayFqdn"
          },
          "description": "-(Optional) A fully qualified domain name that specifies its exact location in the tree hierarchy of the Domain Name System.\n"
        },
        "ipv4s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FPcRestoreV2DomainManagerNetworkExternalNetworkDefaultGatewayIpv4:PcRestoreV2DomainManagerNetworkExternalNetworkDefaultGatewayIpv4"
          },
          "description": "-(Optional) An unique address that identifies a device on the internet or a local network in IPv4 format.\n"
        },
        "ipv6s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FPcRestoreV2DomainManagerNetworkExternalNetworkDefaultGatewayIpv6:PcRestoreV2DomainManagerNetworkExternalNetworkDefaultGatewayIpv6"
          },
          "description": "-(Optional) An unique address that identifies a device on the internet or a local network in IPv6 format.\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "fqdns",
            "ipv4s",
            "ipv6s"
          ]
        }
      }
    },
    "nutanix:index/PcRestoreV2DomainManagerNetworkExternalNetworkDefaultGatewayFqdn:PcRestoreV2DomainManagerNetworkExternalNetworkDefaultGatewayFqdn": {
      "properties": {
        "value": {
          "type": "string",
          "description": "-(Optional) The fully qualified domain name of the host.\n\nSee detailed information in [Nutanix Restore PC V4](https://developers.nutanix.com/api-reference?namespace=prism&version=v4.0#tag/DomainManager/operation/restore).\n"
        }
      },
      "type": "object",
      "required": [
        "value"
      ]
    },
    "nutanix:index/PcRestoreV2DomainManagerNetworkExternalNetworkDefaultGatewayIpv4:PcRestoreV2DomainManagerNetworkExternalNetworkDefaultGatewayIpv4": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "-(Optional) The prefix length of the network to which this host IPv4/IPv6 address belongs.\n"
        },
        "value": {
          "type": "string",
          "description": "-(Required) The IPv4/IPv6 address of the host.\n"
        }
      },
      "type": "object",
      "required": [
        "value"
      ]
    },
    "nutanix:index/PcRestoreV2DomainManagerNetworkExternalNetworkDefaultGatewayIpv6:PcRestoreV2DomainManagerNetworkExternalNetworkDefaultGatewayIpv6": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "-(Optional) The prefix length of the network to which this host IPv4/IPv6 address belongs.\n"
        },
        "value": {
          "type": "string",
          "description": "-(Required) The IPv4/IPv6 address of the host.\n"
        }
      },
      "type": "object",
      "required": [
        "value"
      ]
    },
    "nutanix:index/PcRestoreV2DomainManagerNetworkExternalNetworkIpRange:PcRestoreV2DomainManagerNetworkExternalNetworkIpRange": {
      "properties": {
        "begin": {
          "$ref": "#/types/nutanix:index%2FPcRestoreV2DomainManagerNetworkExternalNetworkIpRangeBegin:PcRestoreV2DomainManagerNetworkExternalNetworkIpRangeBegin",
          "description": "-(Optional) The beginning IP address of the range.\n"
        },
        "end": {
          "$ref": "#/types/nutanix:index%2FPcRestoreV2DomainManagerNetworkExternalNetworkIpRangeEnd:PcRestoreV2DomainManagerNetworkExternalNetworkIpRangeEnd",
          "description": "-(Optional) The ending IP address of the range.\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "begin",
            "end"
          ]
        }
      }
    },
    "nutanix:index/PcRestoreV2DomainManagerNetworkExternalNetworkIpRangeBegin:PcRestoreV2DomainManagerNetworkExternalNetworkIpRangeBegin": {
      "properties": {
        "ipv4s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FPcRestoreV2DomainManagerNetworkExternalNetworkIpRangeBeginIpv4:PcRestoreV2DomainManagerNetworkExternalNetworkIpRangeBeginIpv4"
          },
          "description": "-(Optional) An unique address that identifies a device on the internet or a local network in IPv4 format.\n"
        },
        "ipv6s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FPcRestoreV2DomainManagerNetworkExternalNetworkIpRangeBeginIpv6:PcRestoreV2DomainManagerNetworkExternalNetworkIpRangeBeginIpv6"
          },
          "description": "-(Optional) An unique address that identifies a device on the internet or a local network in IPv6 format.\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "ipv4s",
            "ipv6s"
          ]
        }
      }
    },
    "nutanix:index/PcRestoreV2DomainManagerNetworkExternalNetworkIpRangeBeginIpv4:PcRestoreV2DomainManagerNetworkExternalNetworkIpRangeBeginIpv4": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "-(Optional) The prefix length of the network to which this host IPv4/IPv6 address belongs.\n"
        },
        "value": {
          "type": "string",
          "description": "-(Required) The IPv4/IPv6 address of the host.\n"
        }
      },
      "type": "object",
      "required": [
        "value"
      ]
    },
    "nutanix:index/PcRestoreV2DomainManagerNetworkExternalNetworkIpRangeBeginIpv6:PcRestoreV2DomainManagerNetworkExternalNetworkIpRangeBeginIpv6": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "-(Optional) The prefix length of the network to which this host IPv4/IPv6 address belongs.\n"
        },
        "value": {
          "type": "string",
          "description": "-(Required) The IPv4/IPv6 address of the host.\n"
        }
      },
      "type": "object",
      "required": [
        "value"
      ]
    },
    "nutanix:index/PcRestoreV2DomainManagerNetworkExternalNetworkIpRangeEnd:PcRestoreV2DomainManagerNetworkExternalNetworkIpRangeEnd": {
      "properties": {
        "ipv4s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FPcRestoreV2DomainManagerNetworkExternalNetworkIpRangeEndIpv4:PcRestoreV2DomainManagerNetworkExternalNetworkIpRangeEndIpv4"
          },
          "description": "-(Optional) An unique address that identifies a device on the internet or a local network in IPv4 format.\n"
        },
        "ipv6s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FPcRestoreV2DomainManagerNetworkExternalNetworkIpRangeEndIpv6:PcRestoreV2DomainManagerNetworkExternalNetworkIpRangeEndIpv6"
          },
          "description": "-(Optional) An unique address that identifies a device on the internet or a local network in IPv6 format.\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "ipv4s",
            "ipv6s"
          ]
        }
      }
    },
    "nutanix:index/PcRestoreV2DomainManagerNetworkExternalNetworkIpRangeEndIpv4:PcRestoreV2DomainManagerNetworkExternalNetworkIpRangeEndIpv4": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "-(Optional) The prefix length of the network to which this host IPv4/IPv6 address belongs.\n"
        },
        "value": {
          "type": "string",
          "description": "-(Required) The IPv4/IPv6 address of the host.\n"
        }
      },
      "type": "object",
      "required": [
        "value"
      ]
    },
    "nutanix:index/PcRestoreV2DomainManagerNetworkExternalNetworkIpRangeEndIpv6:PcRestoreV2DomainManagerNetworkExternalNetworkIpRangeEndIpv6": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "-(Optional) The prefix length of the network to which this host IPv4/IPv6 address belongs.\n"
        },
        "value": {
          "type": "string",
          "description": "-(Required) The IPv4/IPv6 address of the host.\n"
        }
      },
      "type": "object",
      "required": [
        "value"
      ]
    },
    "nutanix:index/PcRestoreV2DomainManagerNetworkExternalNetworkSubnetMask:PcRestoreV2DomainManagerNetworkExternalNetworkSubnetMask": {
      "properties": {
        "fqdns": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FPcRestoreV2DomainManagerNetworkExternalNetworkSubnetMaskFqdn:PcRestoreV2DomainManagerNetworkExternalNetworkSubnetMaskFqdn"
          },
          "description": "-(Optional) A fully qualified domain name that specifies its exact location in the tree hierarchy of the Domain Name System.\n"
        },
        "ipv4s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FPcRestoreV2DomainManagerNetworkExternalNetworkSubnetMaskIpv4:PcRestoreV2DomainManagerNetworkExternalNetworkSubnetMaskIpv4"
          },
          "description": "-(Optional) An unique address that identifies a device on the internet or a local network in IPv4 format.\n"
        },
        "ipv6s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FPcRestoreV2DomainManagerNetworkExternalNetworkSubnetMaskIpv6:PcRestoreV2DomainManagerNetworkExternalNetworkSubnetMaskIpv6"
          },
          "description": "-(Optional) An unique address that identifies a device on the internet or a local network in IPv6 format.\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "fqdns",
            "ipv4s",
            "ipv6s"
          ]
        }
      }
    },
    "nutanix:index/PcRestoreV2DomainManagerNetworkExternalNetworkSubnetMaskFqdn:PcRestoreV2DomainManagerNetworkExternalNetworkSubnetMaskFqdn": {
      "properties": {
        "value": {
          "type": "string",
          "description": "-(Optional) The fully qualified domain name of the host.\n\nSee detailed information in [Nutanix Restore PC V4](https://developers.nutanix.com/api-reference?namespace=prism&version=v4.0#tag/DomainManager/operation/restore).\n"
        }
      },
      "type": "object",
      "required": [
        "value"
      ]
    },
    "nutanix:index/PcRestoreV2DomainManagerNetworkExternalNetworkSubnetMaskIpv4:PcRestoreV2DomainManagerNetworkExternalNetworkSubnetMaskIpv4": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "-(Optional) The prefix length of the network to which this host IPv4/IPv6 address belongs.\n"
        },
        "value": {
          "type": "string",
          "description": "-(Required) The IPv4/IPv6 address of the host.\n"
        }
      },
      "type": "object",
      "required": [
        "value"
      ]
    },
    "nutanix:index/PcRestoreV2DomainManagerNetworkExternalNetworkSubnetMaskIpv6:PcRestoreV2DomainManagerNetworkExternalNetworkSubnetMaskIpv6": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "-(Optional) The prefix length of the network to which this host IPv4/IPv6 address belongs.\n"
        },
        "value": {
          "type": "string",
          "description": "-(Required) The IPv4/IPv6 address of the host.\n"
        }
      },
      "type": "object",
      "required": [
        "value"
      ]
    },
    "nutanix:index/PcRestoreV2DomainManagerNetworkInternalNetworks:PcRestoreV2DomainManagerNetworkInternalNetworks": {
      "properties": {
        "defaultGateway": {
          "$ref": "#/types/nutanix:index%2FPcRestoreV2DomainManagerNetworkInternalNetworksDefaultGateway:PcRestoreV2DomainManagerNetworkInternalNetworksDefaultGateway",
          "description": "-(Required) An unique address that identifies a device on the internet or a local network in IPv4/IPv6 format or a Fully Qualified Domain Name.\n"
        },
        "ipRanges": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FPcRestoreV2DomainManagerNetworkInternalNetworksIpRange:PcRestoreV2DomainManagerNetworkInternalNetworksIpRange"
          },
          "description": "-(Required) Range of IPs used for Prism Central network setup.\n"
        },
        "subnetMask": {
          "$ref": "#/types/nutanix:index%2FPcRestoreV2DomainManagerNetworkInternalNetworksSubnetMask:PcRestoreV2DomainManagerNetworkInternalNetworksSubnetMask",
          "description": "-(Required) An unique address that identifies a device on the internet or a local network in IPv4/IPv6 format or a Fully Qualified Domain Name.\n"
        }
      },
      "type": "object",
      "required": [
        "defaultGateway",
        "ipRanges",
        "subnetMask"
      ]
    },
    "nutanix:index/PcRestoreV2DomainManagerNetworkInternalNetworksDefaultGateway:PcRestoreV2DomainManagerNetworkInternalNetworksDefaultGateway": {
      "properties": {
        "fqdns": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FPcRestoreV2DomainManagerNetworkInternalNetworksDefaultGatewayFqdn:PcRestoreV2DomainManagerNetworkInternalNetworksDefaultGatewayFqdn"
          },
          "description": "-(Optional) A fully qualified domain name that specifies its exact location in the tree hierarchy of the Domain Name System.\n"
        },
        "ipv4s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FPcRestoreV2DomainManagerNetworkInternalNetworksDefaultGatewayIpv4:PcRestoreV2DomainManagerNetworkInternalNetworksDefaultGatewayIpv4"
          },
          "description": "-(Optional) An unique address that identifies a device on the internet or a local network in IPv4 format.\n"
        },
        "ipv6s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FPcRestoreV2DomainManagerNetworkInternalNetworksDefaultGatewayIpv6:PcRestoreV2DomainManagerNetworkInternalNetworksDefaultGatewayIpv6"
          },
          "description": "-(Optional) An unique address that identifies a device on the internet or a local network in IPv6 format.\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "fqdns",
            "ipv4s",
            "ipv6s"
          ]
        }
      }
    },
    "nutanix:index/PcRestoreV2DomainManagerNetworkInternalNetworksDefaultGatewayFqdn:PcRestoreV2DomainManagerNetworkInternalNetworksDefaultGatewayFqdn": {
      "properties": {
        "value": {
          "type": "string",
          "description": "-(Optional) The fully qualified domain name of the host.\n\nSee detailed information in [Nutanix Restore PC V4](https://developers.nutanix.com/api-reference?namespace=prism&version=v4.0#tag/DomainManager/operation/restore).\n"
        }
      },
      "type": "object",
      "required": [
        "value"
      ]
    },
    "nutanix:index/PcRestoreV2DomainManagerNetworkInternalNetworksDefaultGatewayIpv4:PcRestoreV2DomainManagerNetworkInternalNetworksDefaultGatewayIpv4": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "-(Optional) The prefix length of the network to which this host IPv4/IPv6 address belongs.\n"
        },
        "value": {
          "type": "string",
          "description": "-(Required) The IPv4/IPv6 address of the host.\n"
        }
      },
      "type": "object",
      "required": [
        "value"
      ]
    },
    "nutanix:index/PcRestoreV2DomainManagerNetworkInternalNetworksDefaultGatewayIpv6:PcRestoreV2DomainManagerNetworkInternalNetworksDefaultGatewayIpv6": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "-(Optional) The prefix length of the network to which this host IPv4/IPv6 address belongs.\n"
        },
        "value": {
          "type": "string",
          "description": "-(Required) The IPv4/IPv6 address of the host.\n"
        }
      },
      "type": "object",
      "required": [
        "value"
      ]
    },
    "nutanix:index/PcRestoreV2DomainManagerNetworkInternalNetworksIpRange:PcRestoreV2DomainManagerNetworkInternalNetworksIpRange": {
      "properties": {
        "begin": {
          "$ref": "#/types/nutanix:index%2FPcRestoreV2DomainManagerNetworkInternalNetworksIpRangeBegin:PcRestoreV2DomainManagerNetworkInternalNetworksIpRangeBegin",
          "description": "-(Optional) The beginning IP address of the range.\n"
        },
        "end": {
          "$ref": "#/types/nutanix:index%2FPcRestoreV2DomainManagerNetworkInternalNetworksIpRangeEnd:PcRestoreV2DomainManagerNetworkInternalNetworksIpRangeEnd",
          "description": "-(Optional) The ending IP address of the range.\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "begin",
            "end"
          ]
        }
      }
    },
    "nutanix:index/PcRestoreV2DomainManagerNetworkInternalNetworksIpRangeBegin:PcRestoreV2DomainManagerNetworkInternalNetworksIpRangeBegin": {
      "properties": {
        "ipv4s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FPcRestoreV2DomainManagerNetworkInternalNetworksIpRangeBeginIpv4:PcRestoreV2DomainManagerNetworkInternalNetworksIpRangeBeginIpv4"
          },
          "description": "-(Optional) An unique address that identifies a device on the internet or a local network in IPv4 format.\n"
        },
        "ipv6s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FPcRestoreV2DomainManagerNetworkInternalNetworksIpRangeBeginIpv6:PcRestoreV2DomainManagerNetworkInternalNetworksIpRangeBeginIpv6"
          },
          "description": "-(Optional) An unique address that identifies a device on the internet or a local network in IPv6 format.\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "ipv4s",
            "ipv6s"
          ]
        }
      }
    },
    "nutanix:index/PcRestoreV2DomainManagerNetworkInternalNetworksIpRangeBeginIpv4:PcRestoreV2DomainManagerNetworkInternalNetworksIpRangeBeginIpv4": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "-(Optional) The prefix length of the network to which this host IPv4/IPv6 address belongs.\n"
        },
        "value": {
          "type": "string",
          "description": "-(Required) The IPv4/IPv6 address of the host.\n"
        }
      },
      "type": "object",
      "required": [
        "value"
      ]
    },
    "nutanix:index/PcRestoreV2DomainManagerNetworkInternalNetworksIpRangeBeginIpv6:PcRestoreV2DomainManagerNetworkInternalNetworksIpRangeBeginIpv6": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "-(Optional) The prefix length of the network to which this host IPv4/IPv6 address belongs.\n"
        },
        "value": {
          "type": "string",
          "description": "-(Required) The IPv4/IPv6 address of the host.\n"
        }
      },
      "type": "object",
      "required": [
        "value"
      ]
    },
    "nutanix:index/PcRestoreV2DomainManagerNetworkInternalNetworksIpRangeEnd:PcRestoreV2DomainManagerNetworkInternalNetworksIpRangeEnd": {
      "properties": {
        "ipv4s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FPcRestoreV2DomainManagerNetworkInternalNetworksIpRangeEndIpv4:PcRestoreV2DomainManagerNetworkInternalNetworksIpRangeEndIpv4"
          },
          "description": "-(Optional) An unique address that identifies a device on the internet or a local network in IPv4 format.\n"
        },
        "ipv6s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FPcRestoreV2DomainManagerNetworkInternalNetworksIpRangeEndIpv6:PcRestoreV2DomainManagerNetworkInternalNetworksIpRangeEndIpv6"
          },
          "description": "-(Optional) An unique address that identifies a device on the internet or a local network in IPv6 format.\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "ipv4s",
            "ipv6s"
          ]
        }
      }
    },
    "nutanix:index/PcRestoreV2DomainManagerNetworkInternalNetworksIpRangeEndIpv4:PcRestoreV2DomainManagerNetworkInternalNetworksIpRangeEndIpv4": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "-(Optional) The prefix length of the network to which this host IPv4/IPv6 address belongs.\n"
        },
        "value": {
          "type": "string",
          "description": "-(Required) The IPv4/IPv6 address of the host.\n"
        }
      },
      "type": "object",
      "required": [
        "value"
      ]
    },
    "nutanix:index/PcRestoreV2DomainManagerNetworkInternalNetworksIpRangeEndIpv6:PcRestoreV2DomainManagerNetworkInternalNetworksIpRangeEndIpv6": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "-(Optional) The prefix length of the network to which this host IPv4/IPv6 address belongs.\n"
        },
        "value": {
          "type": "string",
          "description": "-(Required) The IPv4/IPv6 address of the host.\n"
        }
      },
      "type": "object",
      "required": [
        "value"
      ]
    },
    "nutanix:index/PcRestoreV2DomainManagerNetworkInternalNetworksSubnetMask:PcRestoreV2DomainManagerNetworkInternalNetworksSubnetMask": {
      "properties": {
        "fqdns": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FPcRestoreV2DomainManagerNetworkInternalNetworksSubnetMaskFqdn:PcRestoreV2DomainManagerNetworkInternalNetworksSubnetMaskFqdn"
          },
          "description": "-(Optional) A fully qualified domain name that specifies its exact location in the tree hierarchy of the Domain Name System.\n"
        },
        "ipv4s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FPcRestoreV2DomainManagerNetworkInternalNetworksSubnetMaskIpv4:PcRestoreV2DomainManagerNetworkInternalNetworksSubnetMaskIpv4"
          },
          "description": "-(Optional) An unique address that identifies a device on the internet or a local network in IPv4 format.\n"
        },
        "ipv6s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FPcRestoreV2DomainManagerNetworkInternalNetworksSubnetMaskIpv6:PcRestoreV2DomainManagerNetworkInternalNetworksSubnetMaskIpv6"
          },
          "description": "-(Optional) An unique address that identifies a device on the internet or a local network in IPv6 format.\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "fqdns",
            "ipv4s",
            "ipv6s"
          ]
        }
      }
    },
    "nutanix:index/PcRestoreV2DomainManagerNetworkInternalNetworksSubnetMaskFqdn:PcRestoreV2DomainManagerNetworkInternalNetworksSubnetMaskFqdn": {
      "properties": {
        "value": {
          "type": "string",
          "description": "-(Optional) The fully qualified domain name of the host.\n\nSee detailed information in [Nutanix Restore PC V4](https://developers.nutanix.com/api-reference?namespace=prism&version=v4.0#tag/DomainManager/operation/restore).\n"
        }
      },
      "type": "object",
      "required": [
        "value"
      ]
    },
    "nutanix:index/PcRestoreV2DomainManagerNetworkInternalNetworksSubnetMaskIpv4:PcRestoreV2DomainManagerNetworkInternalNetworksSubnetMaskIpv4": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "-(Optional) The prefix length of the network to which this host IPv4/IPv6 address belongs.\n"
        },
        "value": {
          "type": "string",
          "description": "-(Required) The IPv4/IPv6 address of the host.\n"
        }
      },
      "type": "object",
      "required": [
        "value"
      ]
    },
    "nutanix:index/PcRestoreV2DomainManagerNetworkInternalNetworksSubnetMaskIpv6:PcRestoreV2DomainManagerNetworkInternalNetworksSubnetMaskIpv6": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "-(Optional) The prefix length of the network to which this host IPv4/IPv6 address belongs.\n"
        },
        "value": {
          "type": "string",
          "description": "-(Required) The IPv4/IPv6 address of the host.\n"
        }
      },
      "type": "object",
      "required": [
        "value"
      ]
    },
    "nutanix:index/PcRestoreV2DomainManagerNetworkNameServer:PcRestoreV2DomainManagerNetworkNameServer": {
      "properties": {
        "fqdns": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FPcRestoreV2DomainManagerNetworkNameServerFqdn:PcRestoreV2DomainManagerNetworkNameServerFqdn"
          },
          "description": "-(Optional) A fully qualified domain name that specifies its exact location in the tree hierarchy of the Domain Name System.\n"
        },
        "ipv4s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FPcRestoreV2DomainManagerNetworkNameServerIpv4:PcRestoreV2DomainManagerNetworkNameServerIpv4"
          },
          "description": "-(Optional) An unique address that identifies a device on the internet or a local network in IPv4 format.\n"
        },
        "ipv6s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FPcRestoreV2DomainManagerNetworkNameServerIpv6:PcRestoreV2DomainManagerNetworkNameServerIpv6"
          },
          "description": "-(Optional) An unique address that identifies a device on the internet or a local network in IPv6 format.\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "fqdns",
            "ipv4s",
            "ipv6s"
          ]
        }
      }
    },
    "nutanix:index/PcRestoreV2DomainManagerNetworkNameServerFqdn:PcRestoreV2DomainManagerNetworkNameServerFqdn": {
      "properties": {
        "value": {
          "type": "string",
          "description": "-(Optional) The fully qualified domain name of the host.\n\nSee detailed information in [Nutanix Restore PC V4](https://developers.nutanix.com/api-reference?namespace=prism&version=v4.0#tag/DomainManager/operation/restore).\n"
        }
      },
      "type": "object",
      "required": [
        "value"
      ]
    },
    "nutanix:index/PcRestoreV2DomainManagerNetworkNameServerIpv4:PcRestoreV2DomainManagerNetworkNameServerIpv4": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "-(Optional) The prefix length of the network to which this host IPv4/IPv6 address belongs.\n"
        },
        "value": {
          "type": "string",
          "description": "-(Required) The IPv4/IPv6 address of the host.\n"
        }
      },
      "type": "object",
      "required": [
        "value"
      ]
    },
    "nutanix:index/PcRestoreV2DomainManagerNetworkNameServerIpv6:PcRestoreV2DomainManagerNetworkNameServerIpv6": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "-(Optional) The prefix length of the network to which this host IPv4/IPv6 address belongs.\n"
        },
        "value": {
          "type": "string",
          "description": "-(Required) The IPv4/IPv6 address of the host.\n"
        }
      },
      "type": "object",
      "required": [
        "value"
      ]
    },
    "nutanix:index/PcRestoreV2DomainManagerNetworkNtpServer:PcRestoreV2DomainManagerNetworkNtpServer": {
      "properties": {
        "fqdns": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FPcRestoreV2DomainManagerNetworkNtpServerFqdn:PcRestoreV2DomainManagerNetworkNtpServerFqdn"
          },
          "description": "-(Optional) A fully qualified domain name that specifies its exact location in the tree hierarchy of the Domain Name System.\n"
        },
        "ipv4s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FPcRestoreV2DomainManagerNetworkNtpServerIpv4:PcRestoreV2DomainManagerNetworkNtpServerIpv4"
          },
          "description": "-(Optional) An unique address that identifies a device on the internet or a local network in IPv4 format.\n"
        },
        "ipv6s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FPcRestoreV2DomainManagerNetworkNtpServerIpv6:PcRestoreV2DomainManagerNetworkNtpServerIpv6"
          },
          "description": "-(Optional) An unique address that identifies a device on the internet or a local network in IPv6 format.\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "fqdns",
            "ipv4s",
            "ipv6s"
          ]
        }
      }
    },
    "nutanix:index/PcRestoreV2DomainManagerNetworkNtpServerFqdn:PcRestoreV2DomainManagerNetworkNtpServerFqdn": {
      "properties": {
        "value": {
          "type": "string",
          "description": "-(Optional) The fully qualified domain name of the host.\n\nSee detailed information in [Nutanix Restore PC V4](https://developers.nutanix.com/api-reference?namespace=prism&version=v4.0#tag/DomainManager/operation/restore).\n"
        }
      },
      "type": "object",
      "required": [
        "value"
      ]
    },
    "nutanix:index/PcRestoreV2DomainManagerNetworkNtpServerIpv4:PcRestoreV2DomainManagerNetworkNtpServerIpv4": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "-(Optional) The prefix length of the network to which this host IPv4/IPv6 address belongs.\n"
        },
        "value": {
          "type": "string",
          "description": "-(Required) The IPv4/IPv6 address of the host.\n"
        }
      },
      "type": "object",
      "required": [
        "value"
      ]
    },
    "nutanix:index/PcRestoreV2DomainManagerNetworkNtpServerIpv6:PcRestoreV2DomainManagerNetworkNtpServerIpv6": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "-(Optional) The prefix length of the network to which this host IPv4/IPv6 address belongs.\n"
        },
        "value": {
          "type": "string",
          "description": "-(Required) The IPv4/IPv6 address of the host.\n"
        }
      },
      "type": "object",
      "required": [
        "value"
      ]
    },
    "nutanix:index/ProjectAccountReferenceList:ProjectAccountReferenceList": {
      "properties": {
        "kind": {
          "type": "string",
          "description": "(Required) The kind name (Default value: <span pulumi-lang-nodejs=\"`project`\" pulumi-lang-dotnet=\"`Project`\" pulumi-lang-go=\"`project`\" pulumi-lang-python=\"`project`\" pulumi-lang-yaml=\"`project`\" pulumi-lang-java=\"`project`\">`project`</span>).\n"
        },
        "name": {
          "type": "string",
          "description": "The name for the project.\n"
        },
        "uuid": {
          "type": "string",
          "description": "(Required) the UUID.\n"
        }
      },
      "type": "object",
      "required": [
        "uuid"
      ],
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "name",
            "uuid"
          ]
        }
      }
    },
    "nutanix:index/ProjectAcp:ProjectAcp": {
      "properties": {
        "contextFilterLists": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FProjectAcpContextFilterList:ProjectAcpContextFilterList"
          },
          "description": "The list of context filters. These are OR filters. The scope-expression-list defines the context, and the filter works in conjunction with the entity-expression-list.\n"
        },
        "description": {
          "type": "string",
          "description": "A description for project.\n"
        },
        "metadata": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          }
        },
        "name": {
          "type": "string",
          "description": "The name for the project.\n"
        },
        "roleReference": {
          "$ref": "#/types/nutanix:index%2FProjectAcpRoleReference:ProjectAcpRoleReference",
          "description": "Reference to role.\n"
        },
        "userGroupReferenceLists": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FProjectAcpUserGroupReferenceList:ProjectAcpUserGroupReferenceList"
          },
          "description": "List of Reference of users groups.\n"
        },
        "userReferenceLists": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FProjectAcpUserReferenceList:ProjectAcpUserReferenceList"
          },
          "description": "List of Reference of users.\n"
        }
      },
      "type": "object",
      "required": [
        "roleReference"
      ],
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "contextFilterLists",
            "metadata",
            "name",
            "roleReference"
          ]
        }
      }
    },
    "nutanix:index/ProjectAcpContextFilterList:ProjectAcpContextFilterList": {
      "properties": {
        "entityFilterExpressionLists": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FProjectAcpContextFilterListEntityFilterExpressionList:ProjectAcpContextFilterListEntityFilterExpressionList"
          },
          "description": "(Required) A list of Entity filter expressions.\n"
        },
        "scopeFilterExpressionLists": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FProjectAcpContextFilterListScopeFilterExpressionList:ProjectAcpContextFilterListScopeFilterExpressionList"
          },
          "description": "- (Optional) Filter the scope of an Access Control Policy.\n"
        }
      },
      "type": "object",
      "required": [
        "entityFilterExpressionLists"
      ]
    },
    "nutanix:index/ProjectAcpContextFilterListEntityFilterExpressionList:ProjectAcpContextFilterListEntityFilterExpressionList": {
      "properties": {
        "leftHandSideEntityType": {
          "type": "string",
          "description": "- (Optional)  The LHS of the filter expression - the entity type.\n"
        },
        "operator": {
          "type": "string",
          "description": "- (Required) The operator in the filter expression.\n"
        },
        "rightHandSide": {
          "$ref": "#/types/nutanix:index%2FProjectAcpContextFilterListEntityFilterExpressionListRightHandSide:ProjectAcpContextFilterListEntityFilterExpressionListRightHandSide",
          "description": "- (Required) The right hand side (RHS) of an scope expression.\n"
        }
      },
      "type": "object",
      "required": [
        "operator",
        "rightHandSide"
      ],
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "leftHandSideEntityType",
            "operator",
            "rightHandSide"
          ]
        }
      }
    },
    "nutanix:index/ProjectAcpContextFilterListEntityFilterExpressionListRightHandSide:ProjectAcpContextFilterListEntityFilterExpressionListRightHandSide": {
      "properties": {
        "categories": {
          "$ref": "#/types/nutanix:index%2FProjectAcpContextFilterListEntityFilterExpressionListRightHandSideCategories:ProjectAcpContextFilterListEntityFilterExpressionListRightHandSideCategories",
          "description": "- (Optional) The category values represented as a dictionary of key > list of values.\n"
        },
        "collection": {
          "type": "string",
          "description": "- (Optional)  A representative term for supported groupings of entities. ALL = All the entities of a given kind.\n"
        },
        "uuidLists": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "- (Optional) The explicit list of UUIDs for the given kind.\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "categories",
            "collection",
            "uuidLists"
          ]
        }
      }
    },
    "nutanix:index/ProjectAcpContextFilterListEntityFilterExpressionListRightHandSideCategories:ProjectAcpContextFilterListEntityFilterExpressionListRightHandSideCategories": {
      "properties": {
        "name": {
          "type": "string",
          "description": "The name for the project.\n"
        },
        "values": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "value of the key.\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "name",
            "values"
          ]
        }
      }
    },
    "nutanix:index/ProjectAcpContextFilterListScopeFilterExpressionList:ProjectAcpContextFilterListScopeFilterExpressionList": {
      "properties": {
        "leftHandSide": {
          "type": "string",
          "description": "- (Optional)  The LHS of the filter expression - the scope type.\n"
        },
        "operator": {
          "type": "string",
          "description": "- (Required) The operator in the filter expression.\n"
        },
        "rightHandSide": {
          "$ref": "#/types/nutanix:index%2FProjectAcpContextFilterListScopeFilterExpressionListRightHandSide:ProjectAcpContextFilterListScopeFilterExpressionListRightHandSide",
          "description": "- (Required) The right hand side (RHS) of an scope expression.\n"
        }
      },
      "type": "object",
      "required": [
        "leftHandSide",
        "operator",
        "rightHandSide"
      ]
    },
    "nutanix:index/ProjectAcpContextFilterListScopeFilterExpressionListRightHandSide:ProjectAcpContextFilterListScopeFilterExpressionListRightHandSide": {
      "properties": {
        "categories": {
          "$ref": "#/types/nutanix:index%2FProjectAcpContextFilterListScopeFilterExpressionListRightHandSideCategories:ProjectAcpContextFilterListScopeFilterExpressionListRightHandSideCategories",
          "description": "- (Optional) The category values represented as a dictionary of key > list of values.\n"
        },
        "collection": {
          "type": "string",
          "description": "- (Optional)  A representative term for supported groupings of entities. ALL = All the entities of a given kind.\n"
        },
        "uuidLists": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "- (Optional) The explicit list of UUIDs for the given kind.\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "categories",
            "collection",
            "uuidLists"
          ]
        }
      }
    },
    "nutanix:index/ProjectAcpContextFilterListScopeFilterExpressionListRightHandSideCategories:ProjectAcpContextFilterListScopeFilterExpressionListRightHandSideCategories": {
      "properties": {
        "name": {
          "type": "string",
          "description": "The name for the project.\n"
        },
        "values": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "value of the key.\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "name",
            "values"
          ]
        }
      }
    },
    "nutanix:index/ProjectAcpRoleReference:ProjectAcpRoleReference": {
      "properties": {
        "kind": {
          "type": "string",
          "description": "(Required) The kind name (Default value: <span pulumi-lang-nodejs=\"`project`\" pulumi-lang-dotnet=\"`Project`\" pulumi-lang-go=\"`project`\" pulumi-lang-python=\"`project`\" pulumi-lang-yaml=\"`project`\" pulumi-lang-java=\"`project`\">`project`</span>).\n"
        },
        "name": {
          "type": "string",
          "description": "The name for the project.\n"
        },
        "uuid": {
          "type": "string",
          "description": "(Required) the UUID.\n"
        }
      },
      "type": "object",
      "required": [
        "kind",
        "uuid"
      ],
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "kind",
            "name",
            "uuid"
          ]
        }
      }
    },
    "nutanix:index/ProjectAcpUserGroupReferenceList:ProjectAcpUserGroupReferenceList": {
      "properties": {
        "kind": {
          "type": "string",
          "description": "(Required) The kind name (Default value: <span pulumi-lang-nodejs=\"`project`\" pulumi-lang-dotnet=\"`Project`\" pulumi-lang-go=\"`project`\" pulumi-lang-python=\"`project`\" pulumi-lang-yaml=\"`project`\" pulumi-lang-java=\"`project`\">`project`</span>).\n"
        },
        "name": {
          "type": "string",
          "description": "The name for the project.\n"
        },
        "uuid": {
          "type": "string",
          "description": "(Required) the UUID.\n"
        }
      },
      "type": "object",
      "required": [
        "uuid"
      ]
    },
    "nutanix:index/ProjectAcpUserReferenceList:ProjectAcpUserReferenceList": {
      "properties": {
        "kind": {
          "type": "string",
          "description": "(Required) The kind name (Default value: <span pulumi-lang-nodejs=\"`project`\" pulumi-lang-dotnet=\"`Project`\" pulumi-lang-go=\"`project`\" pulumi-lang-python=\"`project`\" pulumi-lang-yaml=\"`project`\" pulumi-lang-java=\"`project`\">`project`</span>).\n"
        },
        "name": {
          "type": "string",
          "description": "The name for the project.\n"
        },
        "uuid": {
          "type": "string",
          "description": "(Required) the UUID.\n"
        }
      },
      "type": "object",
      "required": [
        "uuid"
      ]
    },
    "nutanix:index/ProjectCategory:ProjectCategory": {
      "properties": {
        "name": {
          "type": "string",
          "description": "The name for the project.\n"
        },
        "value": {
          "type": "string",
          "description": "value of the key.\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "name",
            "value"
          ]
        }
      }
    },
    "nutanix:index/ProjectClusterReferenceList:ProjectClusterReferenceList": {
      "properties": {
        "kind": {
          "type": "string",
          "description": "(Required) The kind name (Default value: <span pulumi-lang-nodejs=\"`project`\" pulumi-lang-dotnet=\"`Project`\" pulumi-lang-go=\"`project`\" pulumi-lang-python=\"`project`\" pulumi-lang-yaml=\"`project`\" pulumi-lang-java=\"`project`\">`project`</span>).\n"
        },
        "name": {
          "type": "string",
          "description": "The name for the project.\n"
        },
        "uuid": {
          "type": "string",
          "description": "(Required) the UUID.\n"
        }
      },
      "type": "object",
      "required": [
        "uuid"
      ],
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "name",
            "uuid"
          ]
        }
      }
    },
    "nutanix:index/ProjectDefaultEnvironmentReference:ProjectDefaultEnvironmentReference": {
      "properties": {
        "kind": {
          "type": "string",
          "description": "(Required) The kind name (Default value: <span pulumi-lang-nodejs=\"`project`\" pulumi-lang-dotnet=\"`Project`\" pulumi-lang-go=\"`project`\" pulumi-lang-python=\"`project`\" pulumi-lang-yaml=\"`project`\" pulumi-lang-java=\"`project`\">`project`</span>).\n"
        },
        "name": {
          "type": "string",
          "description": "The name for the project.\n"
        },
        "uuid": {
          "type": "string",
          "description": "(Required) the UUID.\n"
        }
      },
      "type": "object",
      "required": [
        "uuid"
      ],
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "name",
            "uuid"
          ]
        }
      }
    },
    "nutanix:index/ProjectDefaultSubnetReference:ProjectDefaultSubnetReference": {
      "properties": {
        "kind": {
          "type": "string",
          "description": "(Required) The kind name (Default value: <span pulumi-lang-nodejs=\"`project`\" pulumi-lang-dotnet=\"`Project`\" pulumi-lang-go=\"`project`\" pulumi-lang-python=\"`project`\" pulumi-lang-yaml=\"`project`\" pulumi-lang-java=\"`project`\">`project`</span>).\n"
        },
        "name": {
          "type": "string",
          "description": "The name for the project.\n"
        },
        "uuid": {
          "type": "string",
          "description": "(Required) the UUID.\n"
        }
      },
      "type": "object",
      "required": [
        "uuid"
      ],
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "name",
            "uuid"
          ]
        }
      }
    },
    "nutanix:index/ProjectEnvironmentReferenceList:ProjectEnvironmentReferenceList": {
      "properties": {
        "kind": {
          "type": "string",
          "description": "(Required) The kind name (Default value: <span pulumi-lang-nodejs=\"`project`\" pulumi-lang-dotnet=\"`Project`\" pulumi-lang-go=\"`project`\" pulumi-lang-python=\"`project`\" pulumi-lang-yaml=\"`project`\" pulumi-lang-java=\"`project`\">`project`</span>).\n"
        },
        "name": {
          "type": "string",
          "description": "The name for the project.\n"
        },
        "uuid": {
          "type": "string",
          "description": "(Required) the UUID.\n"
        }
      },
      "type": "object",
      "required": [
        "uuid"
      ],
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "name",
            "uuid"
          ]
        }
      }
    },
    "nutanix:index/ProjectExternalNetworkList:ProjectExternalNetworkList": {
      "properties": {
        "name": {
          "type": "string",
          "description": "The name for the project.\n"
        },
        "uuid": {
          "type": "string",
          "description": "(Required) the UUID.\n"
        }
      },
      "type": "object",
      "required": [
        "uuid"
      ],
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "name",
            "uuid"
          ]
        }
      }
    },
    "nutanix:index/ProjectExternalUserGroupReferenceList:ProjectExternalUserGroupReferenceList": {
      "properties": {
        "kind": {
          "type": "string",
          "description": "(Required) The kind name (Default value: <span pulumi-lang-nodejs=\"`project`\" pulumi-lang-dotnet=\"`Project`\" pulumi-lang-go=\"`project`\" pulumi-lang-python=\"`project`\" pulumi-lang-yaml=\"`project`\" pulumi-lang-java=\"`project`\">`project`</span>).\n"
        },
        "name": {
          "type": "string",
          "description": "The name for the project.\n"
        },
        "uuid": {
          "type": "string",
          "description": "(Required) the UUID.\n"
        }
      },
      "type": "object",
      "required": [
        "uuid"
      ],
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "name",
            "uuid"
          ]
        }
      }
    },
    "nutanix:index/ProjectResourceDomain:ProjectResourceDomain": {
      "properties": {
        "resources": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FProjectResourceDomainResource:ProjectResourceDomainResource"
          }
        }
      },
      "type": "object",
      "required": [
        "resources"
      ]
    },
    "nutanix:index/ProjectResourceDomainResource:ProjectResourceDomainResource": {
      "properties": {
        "limit": {
          "type": "integer"
        },
        "resourceType": {
          "type": "string"
        },
        "units": {
          "type": "string"
        },
        "value": {
          "type": "integer",
          "description": "value of the key.\n"
        }
      },
      "type": "object",
      "required": [
        "limit",
        "resourceType"
      ],
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "limit",
            "resourceType",
            "units",
            "value"
          ]
        }
      }
    },
    "nutanix:index/ProjectSubnetReferenceList:ProjectSubnetReferenceList": {
      "properties": {
        "kind": {
          "type": "string",
          "description": "(Required) The kind name (Default value: <span pulumi-lang-nodejs=\"`project`\" pulumi-lang-dotnet=\"`Project`\" pulumi-lang-go=\"`project`\" pulumi-lang-python=\"`project`\" pulumi-lang-yaml=\"`project`\" pulumi-lang-java=\"`project`\">`project`</span>).\n"
        },
        "name": {
          "type": "string",
          "description": "The name for the project.\n"
        },
        "uuid": {
          "type": "string",
          "description": "(Required) the UUID.\n"
        }
      },
      "type": "object",
      "required": [
        "uuid"
      ],
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "name",
            "uuid"
          ]
        }
      }
    },
    "nutanix:index/ProjectTunnelReferenceList:ProjectTunnelReferenceList": {
      "properties": {
        "kind": {
          "type": "string",
          "description": "(Required) The kind name (Default value: <span pulumi-lang-nodejs=\"`project`\" pulumi-lang-dotnet=\"`Project`\" pulumi-lang-go=\"`project`\" pulumi-lang-python=\"`project`\" pulumi-lang-yaml=\"`project`\" pulumi-lang-java=\"`project`\">`project`</span>).\n"
        },
        "name": {
          "type": "string",
          "description": "The name for the project.\n"
        },
        "uuid": {
          "type": "string",
          "description": "(Required) the UUID.\n"
        }
      },
      "type": "object",
      "required": [
        "uuid"
      ],
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "name",
            "uuid"
          ]
        }
      }
    },
    "nutanix:index/ProjectUserGroupList:ProjectUserGroupList": {
      "properties": {
        "directoryServiceOus": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FProjectUserGroupListDirectoryServiceOus:ProjectUserGroupListDirectoryServiceOus"
          }
        },
        "directoryServiceUserGroups": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FProjectUserGroupListDirectoryServiceUserGroup:ProjectUserGroupListDirectoryServiceUserGroup"
          }
        },
        "metadata": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          }
        },
        "samlUserGroups": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FProjectUserGroupListSamlUserGroup:ProjectUserGroupListSamlUserGroup"
          }
        }
      },
      "type": "object"
    },
    "nutanix:index/ProjectUserGroupListDirectoryServiceOus:ProjectUserGroupListDirectoryServiceOus": {
      "properties": {
        "distinguishedName": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "distinguishedName"
      ]
    },
    "nutanix:index/ProjectUserGroupListDirectoryServiceUserGroup:ProjectUserGroupListDirectoryServiceUserGroup": {
      "properties": {
        "distinguishedName": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "distinguishedName"
      ]
    },
    "nutanix:index/ProjectUserGroupListSamlUserGroup:ProjectUserGroupListSamlUserGroup": {
      "properties": {
        "idpUuid": {
          "type": "string"
        },
        "name": {
          "type": "string",
          "description": "The name for the project.\n"
        }
      },
      "type": "object",
      "required": [
        "idpUuid",
        "name"
      ]
    },
    "nutanix:index/ProjectUserList:ProjectUserList": {
      "properties": {
        "directoryServiceUser": {
          "$ref": "#/types/nutanix:index%2FProjectUserListDirectoryServiceUser:ProjectUserListDirectoryServiceUser"
        },
        "identityProviderUser": {
          "$ref": "#/types/nutanix:index%2FProjectUserListIdentityProviderUser:ProjectUserListIdentityProviderUser"
        },
        "metadata": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          }
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "directoryServiceUser",
            "identityProviderUser"
          ]
        }
      }
    },
    "nutanix:index/ProjectUserListDirectoryServiceUser:ProjectUserListDirectoryServiceUser": {
      "properties": {
        "defaultUserPrincipalName": {
          "type": "string"
        },
        "directoryServiceReference": {
          "$ref": "#/types/nutanix:index%2FProjectUserListDirectoryServiceUserDirectoryServiceReference:ProjectUserListDirectoryServiceUserDirectoryServiceReference"
        },
        "userPrincipalName": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "directoryServiceReference"
      ],
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "defaultUserPrincipalName",
            "directoryServiceReference",
            "userPrincipalName"
          ]
        }
      }
    },
    "nutanix:index/ProjectUserListDirectoryServiceUserDirectoryServiceReference:ProjectUserListDirectoryServiceUserDirectoryServiceReference": {
      "properties": {
        "kind": {
          "type": "string",
          "description": "(Required) The kind name (Default value: <span pulumi-lang-nodejs=\"`project`\" pulumi-lang-dotnet=\"`Project`\" pulumi-lang-go=\"`project`\" pulumi-lang-python=\"`project`\" pulumi-lang-yaml=\"`project`\" pulumi-lang-java=\"`project`\">`project`</span>).\n"
        },
        "name": {
          "type": "string",
          "description": "The name for the project.\n"
        },
        "uuid": {
          "type": "string",
          "description": "(Required) the UUID.\n"
        }
      },
      "type": "object",
      "required": [
        "uuid"
      ],
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "name",
            "uuid"
          ]
        }
      }
    },
    "nutanix:index/ProjectUserListIdentityProviderUser:ProjectUserListIdentityProviderUser": {
      "properties": {
        "identityProviderReference": {
          "$ref": "#/types/nutanix:index%2FProjectUserListIdentityProviderUserIdentityProviderReference:ProjectUserListIdentityProviderUserIdentityProviderReference"
        },
        "username": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "identityProviderReference"
      ],
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "identityProviderReference",
            "username"
          ]
        }
      }
    },
    "nutanix:index/ProjectUserListIdentityProviderUserIdentityProviderReference:ProjectUserListIdentityProviderUserIdentityProviderReference": {
      "properties": {
        "kind": {
          "type": "string",
          "description": "(Required) The kind name (Default value: <span pulumi-lang-nodejs=\"`project`\" pulumi-lang-dotnet=\"`Project`\" pulumi-lang-go=\"`project`\" pulumi-lang-python=\"`project`\" pulumi-lang-yaml=\"`project`\" pulumi-lang-java=\"`project`\">`project`</span>).\n"
        },
        "name": {
          "type": "string",
          "description": "The name for the project.\n"
        },
        "uuid": {
          "type": "string",
          "description": "(Required) the UUID.\n"
        }
      },
      "type": "object",
      "required": [
        "uuid"
      ],
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "name",
            "uuid"
          ]
        }
      }
    },
    "nutanix:index/ProjectUserReferenceList:ProjectUserReferenceList": {
      "properties": {
        "kind": {
          "type": "string",
          "description": "(Required) The kind name (Default value: <span pulumi-lang-nodejs=\"`project`\" pulumi-lang-dotnet=\"`Project`\" pulumi-lang-go=\"`project`\" pulumi-lang-python=\"`project`\" pulumi-lang-yaml=\"`project`\" pulumi-lang-java=\"`project`\">`project`</span>).\n"
        },
        "name": {
          "type": "string",
          "description": "The name for the project.\n"
        },
        "uuid": {
          "type": "string",
          "description": "(Required) the UUID.\n"
        }
      },
      "type": "object",
      "required": [
        "uuid"
      ],
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "name",
            "uuid"
          ]
        }
      }
    },
    "nutanix:index/ProjectVpcReferenceList:ProjectVpcReferenceList": {
      "properties": {
        "kind": {
          "type": "string",
          "description": "(Required) The kind name (Default value: <span pulumi-lang-nodejs=\"`project`\" pulumi-lang-dotnet=\"`Project`\" pulumi-lang-go=\"`project`\" pulumi-lang-python=\"`project`\" pulumi-lang-yaml=\"`project`\" pulumi-lang-java=\"`project`\">`project`</span>).\n"
        },
        "name": {
          "type": "string",
          "description": "The name for the project.\n"
        },
        "uuid": {
          "type": "string",
          "description": "(Required) the UUID.\n"
        }
      },
      "type": "object",
      "required": [
        "uuid"
      ],
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "name",
            "uuid"
          ]
        }
      }
    },
    "nutanix:index/ProtectionPolicyV2Link:ProtectionPolicyV2Link": {
      "properties": {
        "href": {
          "type": "string"
        },
        "rel": {
          "type": "string"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "href",
            "rel"
          ]
        }
      }
    },
    "nutanix:index/ProtectionPolicyV2ReplicationConfiguration:ProtectionPolicyV2ReplicationConfiguration": {
      "properties": {
        "remoteLocationLabel": {
          "type": "string",
          "description": "-(Optional) Label of the source location from the replication locations list, where the entity will be replicated.\n"
        },
        "schedule": {
          "$ref": "#/types/nutanix:index%2FProtectionPolicyV2ReplicationConfigurationSchedule:ProtectionPolicyV2ReplicationConfigurationSchedule",
          "description": "-(Required) Schedule for protection. The schedule specifies the recovery point objective and the retention policy for the participating locations.\n"
        },
        "sourceLocationLabel": {
          "type": "string",
          "description": "-(Required) Label of the source location from the replication locations list, where the entity is running. The location of type MST can not be specified as the replication source.\n"
        }
      },
      "type": "object",
      "required": [
        "schedule",
        "sourceLocationLabel"
      ]
    },
    "nutanix:index/ProtectionPolicyV2ReplicationConfigurationSchedule:ProtectionPolicyV2ReplicationConfigurationSchedule": {
      "properties": {
        "recoveryPointObjectiveTimeSeconds": {
          "type": "integer",
          "description": "-(Required) The Recovery point objective of the schedule in seconds and specified in multiple of 60 seconds. Only following RPO values can be provided for rollup retention type:\n- Minute(s): 1, 2, 3, 4, 5, 6, 10, 12, 15\n- Hour(s): 1, 2, 3, 4, 6, 8, 12\n- Day(s): 1\n- Week(s): 1, 2\n"
        },
        "recoveryPointType": {
          "type": "string",
          "description": "-(Optional) Type of recovery point.\n* `CRASH_CONSISTENT`: Crash-consistent Recovery points capture all the VM and application level details.\n* `APP_CONSISTENT`: Application-consistent Recovery points can capture all the data stored in the memory and also the in-progress transaction details.\n"
        },
        "retention": {
          "$ref": "#/types/nutanix:index%2FProtectionPolicyV2ReplicationConfigurationScheduleRetention:ProtectionPolicyV2ReplicationConfigurationScheduleRetention",
          "description": "-(Optional) Specifies the retention policy for the recovery point schedule.\n"
        },
        "startTime": {
          "type": "string",
          "description": "-(Optional) Represents the protection start time for the new entities added to the policy after the policy is created in h:m format. The values must be between 00h:00m and 23h:59m and in UTC timezone. It specifies the time when the first snapshot is taken and replicated for any entity added to the policy. If this is not specified, the snapshot is taken immediately and replicated for any new entity added to the policy.\n"
        },
        "syncReplicationAutoSuspendTimeoutSeconds": {
          "type": "integer",
          "description": "-(Optional) Auto suspend timeout if there is a connection failure between locations for synchronous replication. If this value is not set, then the policy will not be suspended.\n"
        }
      },
      "type": "object"
    },
    "nutanix:index/ProtectionPolicyV2ReplicationConfigurationScheduleRetention:ProtectionPolicyV2ReplicationConfigurationScheduleRetention": {
      "properties": {
        "autoRollupRetention": {
          "$ref": "#/types/nutanix:index%2FProtectionPolicyV2ReplicationConfigurationScheduleRetentionAutoRollupRetention:ProtectionPolicyV2ReplicationConfigurationScheduleRetentionAutoRollupRetention",
          "description": "-(Optional) Auto rollup retention policy.\n"
        },
        "linearRetention": {
          "$ref": "#/types/nutanix:index%2FProtectionPolicyV2ReplicationConfigurationScheduleRetentionLinearRetention:ProtectionPolicyV2ReplicationConfigurationScheduleRetentionLinearRetention",
          "description": "-(Optional) Linear retention policy.\n"
        }
      },
      "type": "object"
    },
    "nutanix:index/ProtectionPolicyV2ReplicationConfigurationScheduleRetentionAutoRollupRetention:ProtectionPolicyV2ReplicationConfigurationScheduleRetentionAutoRollupRetention": {
      "properties": {
        "local": {
          "$ref": "#/types/nutanix:index%2FProtectionPolicyV2ReplicationConfigurationScheduleRetentionAutoRollupRetentionLocal:ProtectionPolicyV2ReplicationConfigurationScheduleRetentionAutoRollupRetentionLocal",
          "description": "-(Required) Specifies the auto rollup retention details.\n"
        },
        "remote": {
          "$ref": "#/types/nutanix:index%2FProtectionPolicyV2ReplicationConfigurationScheduleRetentionAutoRollupRetentionRemote:ProtectionPolicyV2ReplicationConfigurationScheduleRetentionAutoRollupRetentionRemote",
          "description": "-(Optional) Specifies the auto rollup retention details.\n"
        }
      },
      "type": "object",
      "required": [
        "local"
      ]
    },
    "nutanix:index/ProtectionPolicyV2ReplicationConfigurationScheduleRetentionAutoRollupRetentionLocal:ProtectionPolicyV2ReplicationConfigurationScheduleRetentionAutoRollupRetentionLocal": {
      "properties": {
        "frequency": {
          "type": "integer",
          "description": "-(Required) Multiplier to 'snapshotIntervalType'. For example, if 'snapshotIntervalType' is 'YEARLY' and 'multiple' is 5, then 5 years worth of rollup snapshots will be retained.\n\n\n\nSee detailed information in [Nutanix Protection Policy v4](https://developers.nutanix.com/api-reference?namespace=datapolicies&version=v4.0#tag/ProtectionPolicies/operation/createProtectionPolicy).\n"
        },
        "snapshotIntervalType": {
          "type": "string",
          "description": "-(Required) Snapshot interval period.\n* `YEARLY`: Specifies the number of latest yearly recovery points to retain.\n* `WEEKLY`: Specifies the number of latest weekly recovery points to retain.\n* `DAILY`: Specifies the number of latest daily recovery points to retain.\n* `MONTHLY`: Specifies the number of latest monthly recovery points to retain.\n* `HOURLY`: Specifies the number of latest hourly recovery points to retain.\n"
        }
      },
      "type": "object",
      "required": [
        "frequency"
      ]
    },
    "nutanix:index/ProtectionPolicyV2ReplicationConfigurationScheduleRetentionAutoRollupRetentionRemote:ProtectionPolicyV2ReplicationConfigurationScheduleRetentionAutoRollupRetentionRemote": {
      "properties": {
        "frequency": {
          "type": "integer",
          "description": "-(Required) Multiplier to 'snapshotIntervalType'. For example, if 'snapshotIntervalType' is 'YEARLY' and 'multiple' is 5, then 5 years worth of rollup snapshots will be retained.\n\n\n\nSee detailed information in [Nutanix Protection Policy v4](https://developers.nutanix.com/api-reference?namespace=datapolicies&version=v4.0#tag/ProtectionPolicies/operation/createProtectionPolicy).\n"
        },
        "snapshotIntervalType": {
          "type": "string",
          "description": "-(Required) Snapshot interval period.\n* `YEARLY`: Specifies the number of latest yearly recovery points to retain.\n* `WEEKLY`: Specifies the number of latest weekly recovery points to retain.\n* `DAILY`: Specifies the number of latest daily recovery points to retain.\n* `MONTHLY`: Specifies the number of latest monthly recovery points to retain.\n* `HOURLY`: Specifies the number of latest hourly recovery points to retain.\n"
        }
      },
      "type": "object",
      "required": [
        "frequency"
      ]
    },
    "nutanix:index/ProtectionPolicyV2ReplicationConfigurationScheduleRetentionLinearRetention:ProtectionPolicyV2ReplicationConfigurationScheduleRetentionLinearRetention": {
      "properties": {
        "local": {
          "type": "integer",
          "description": "-(Required) Specifies the number of recovery points to retain on the local location.\n"
        },
        "remote": {
          "type": "integer",
          "description": "-(Optional) Specifies the number of recovery points to retain on the remote location.\n"
        }
      },
      "type": "object",
      "required": [
        "local"
      ]
    },
    "nutanix:index/ProtectionPolicyV2ReplicationLocation:ProtectionPolicyV2ReplicationLocation": {
      "properties": {
        "domainManagerExtId": {
          "type": "string",
          "description": "-(Required) External identifier of the domain manager.\n"
        },
        "isPrimary": {
          "type": "boolean",
          "description": "-(Optional) One of the locations must be specified as the primary location. All the other locations must be connected to the primary location.\n"
        },
        "label": {
          "type": "string",
          "description": "-(Required) This is a unique user defined label of the replication location. It is used to identify the location in the replication configurations.\n"
        },
        "replicationSubLocation": {
          "$ref": "#/types/nutanix:index%2FProtectionPolicyV2ReplicationLocationReplicationSubLocation:ProtectionPolicyV2ReplicationLocationReplicationSubLocation",
          "description": "-(Optional) Specifies the replication sub-locations where recovery points can be created or replicated.\n"
        }
      },
      "type": "object",
      "required": [
        "domainManagerExtId",
        "label"
      ]
    },
    "nutanix:index/ProtectionPolicyV2ReplicationLocationReplicationSubLocation:ProtectionPolicyV2ReplicationLocationReplicationSubLocation": {
      "properties": {
        "clusterExtIds": {
          "$ref": "#/types/nutanix:index%2FProtectionPolicyV2ReplicationLocationReplicationSubLocationClusterExtIds:ProtectionPolicyV2ReplicationLocationReplicationSubLocationClusterExtIds",
          "description": "-(Optional) External identifier of the clusters.\n"
        }
      },
      "type": "object",
      "required": [
        "clusterExtIds"
      ]
    },
    "nutanix:index/ProtectionPolicyV2ReplicationLocationReplicationSubLocationClusterExtIds:ProtectionPolicyV2ReplicationLocationReplicationSubLocationClusterExtIds": {
      "properties": {
        "clusterExtIds": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "-(Optional) External identifier of the clusters.\n"
        }
      },
      "type": "object",
      "required": [
        "clusterExtIds"
      ]
    },
    "nutanix:index/ProtectionRuleAvailabilityZoneConnectivityList:ProtectionRuleAvailabilityZoneConnectivityList": {
      "properties": {
        "destinationAvailabilityZoneIndex": {
          "type": "integer"
        },
        "snapshotScheduleLists": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FProtectionRuleAvailabilityZoneConnectivityListSnapshotScheduleList:ProtectionRuleAvailabilityZoneConnectivityListSnapshotScheduleList"
          }
        },
        "sourceAvailabilityZoneIndex": {
          "type": "integer"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "destinationAvailabilityZoneIndex",
            "snapshotScheduleLists",
            "sourceAvailabilityZoneIndex"
          ]
        }
      }
    },
    "nutanix:index/ProtectionRuleAvailabilityZoneConnectivityListSnapshotScheduleList:ProtectionRuleAvailabilityZoneConnectivityListSnapshotScheduleList": {
      "properties": {
        "autoSuspendTimeoutSecs": {
          "type": "integer"
        },
        "localSnapshotRetentionPolicy": {
          "$ref": "#/types/nutanix:index%2FProtectionRuleAvailabilityZoneConnectivityListSnapshotScheduleListLocalSnapshotRetentionPolicy:ProtectionRuleAvailabilityZoneConnectivityListSnapshotScheduleListLocalSnapshotRetentionPolicy"
        },
        "recoveryPointObjectiveSecs": {
          "type": "integer"
        },
        "remoteSnapshotRetentionPolicy": {
          "$ref": "#/types/nutanix:index%2FProtectionRuleAvailabilityZoneConnectivityListSnapshotScheduleListRemoteSnapshotRetentionPolicy:ProtectionRuleAvailabilityZoneConnectivityListSnapshotScheduleListRemoteSnapshotRetentionPolicy"
        },
        "snapshotType": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "recoveryPointObjectiveSecs"
      ],
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "autoSuspendTimeoutSecs",
            "localSnapshotRetentionPolicy",
            "recoveryPointObjectiveSecs",
            "remoteSnapshotRetentionPolicy",
            "snapshotType"
          ]
        }
      }
    },
    "nutanix:index/ProtectionRuleAvailabilityZoneConnectivityListSnapshotScheduleListLocalSnapshotRetentionPolicy:ProtectionRuleAvailabilityZoneConnectivityListSnapshotScheduleListLocalSnapshotRetentionPolicy": {
      "properties": {
        "numSnapshots": {
          "type": "integer"
        },
        "rollupRetentionPolicyMultiple": {
          "type": "integer"
        },
        "rollupRetentionPolicySnapshotIntervalType": {
          "type": "string"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "numSnapshots",
            "rollupRetentionPolicyMultiple",
            "rollupRetentionPolicySnapshotIntervalType"
          ]
        }
      }
    },
    "nutanix:index/ProtectionRuleAvailabilityZoneConnectivityListSnapshotScheduleListRemoteSnapshotRetentionPolicy:ProtectionRuleAvailabilityZoneConnectivityListSnapshotScheduleListRemoteSnapshotRetentionPolicy": {
      "properties": {
        "numSnapshots": {
          "type": "integer"
        },
        "rollupRetentionPolicyMultiple": {
          "type": "integer"
        },
        "rollupRetentionPolicySnapshotIntervalType": {
          "type": "string"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "numSnapshots",
            "rollupRetentionPolicyMultiple",
            "rollupRetentionPolicySnapshotIntervalType"
          ]
        }
      }
    },
    "nutanix:index/ProtectionRuleCategory:ProtectionRuleCategory": {
      "properties": {
        "name": {
          "type": "string",
          "description": "The name for the protection rule.\n"
        },
        "value": {
          "type": "string",
          "description": "value of the key.\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "name",
            "value"
          ]
        }
      }
    },
    "nutanix:index/ProtectionRuleCategoryFilter:ProtectionRuleCategoryFilter": {
      "properties": {
        "kindLists": {
          "type": "array",
          "items": {
            "type": "string"
          }
        },
        "params": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FProtectionRuleCategoryFilterParam:ProtectionRuleCategoryFilterParam"
          }
        },
        "type": {
          "type": "string"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "kindLists",
            "params",
            "type"
          ]
        }
      }
    },
    "nutanix:index/ProtectionRuleCategoryFilterParam:ProtectionRuleCategoryFilterParam": {
      "properties": {
        "name": {
          "type": "string",
          "description": "The name for the protection rule.\n"
        },
        "values": {
          "type": "array",
          "items": {
            "type": "string"
          }
        }
      },
      "type": "object",
      "required": [
        "name",
        "values"
      ]
    },
    "nutanix:index/ProtectionRuleOrderedAvailabilityZoneList:ProtectionRuleOrderedAvailabilityZoneList": {
      "properties": {
        "availabilityZoneUrl": {
          "type": "string"
        },
        "clusterUuid": {
          "type": "string"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "availabilityZoneUrl",
            "clusterUuid"
          ]
        }
      }
    },
    "nutanix:index/ProtectionRuleOwnerReference:ProtectionRuleOwnerReference": {
      "properties": {
        "kind": {
          "type": "string",
          "description": "(Required) The kind name (Default value: <span pulumi-lang-nodejs=\"`project`\" pulumi-lang-dotnet=\"`Project`\" pulumi-lang-go=\"`project`\" pulumi-lang-python=\"`project`\" pulumi-lang-yaml=\"`project`\" pulumi-lang-java=\"`project`\">`project`</span>).\n"
        },
        "name": {
          "type": "string",
          "description": "The name for the protection rule.\n"
        },
        "uuid": {
          "type": "string",
          "description": "(Required) the UUID.\n"
        }
      },
      "type": "object"
    },
    "nutanix:index/ProtectionRuleProjectReference:ProtectionRuleProjectReference": {
      "properties": {
        "kind": {
          "type": "string",
          "description": "(Required) The kind name (Default value: <span pulumi-lang-nodejs=\"`project`\" pulumi-lang-dotnet=\"`Project`\" pulumi-lang-go=\"`project`\" pulumi-lang-python=\"`project`\" pulumi-lang-yaml=\"`project`\" pulumi-lang-java=\"`project`\">`project`</span>).\n"
        },
        "name": {
          "type": "string",
          "description": "The name for the protection rule.\n"
        },
        "uuid": {
          "type": "string",
          "description": "(Required) the UUID.\n"
        }
      },
      "type": "object"
    },
    "nutanix:index/RecoveryPlanCategory:RecoveryPlanCategory": {
      "properties": {
        "name": {
          "type": "string",
          "description": "The name for the Recovery Plan.\n"
        },
        "value": {
          "type": "string",
          "description": "value of the key.\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "name",
            "value"
          ]
        }
      }
    },
    "nutanix:index/RecoveryPlanOwnerReference:RecoveryPlanOwnerReference": {
      "properties": {
        "kind": {
          "type": "string",
          "description": "(Required) The kind name (Default value: <span pulumi-lang-nodejs=\"`project`\" pulumi-lang-dotnet=\"`Project`\" pulumi-lang-go=\"`project`\" pulumi-lang-python=\"`project`\" pulumi-lang-yaml=\"`project`\" pulumi-lang-java=\"`project`\">`project`</span>).\n"
        },
        "name": {
          "type": "string",
          "description": "The name for the Recovery Plan.\n"
        },
        "uuid": {
          "type": "string",
          "description": "(Required) the UUID.\n"
        }
      },
      "type": "object"
    },
    "nutanix:index/RecoveryPlanParameters:RecoveryPlanParameters": {
      "properties": {
        "floatingIpAssignmentLists": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FRecoveryPlanParametersFloatingIpAssignmentList:RecoveryPlanParametersFloatingIpAssignmentList"
          }
        },
        "networkMappingLists": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FRecoveryPlanParametersNetworkMappingList:RecoveryPlanParametersNetworkMappingList"
          }
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "floatingIpAssignmentLists",
            "networkMappingLists"
          ]
        }
      }
    },
    "nutanix:index/RecoveryPlanParametersFloatingIpAssignmentList:RecoveryPlanParametersFloatingIpAssignmentList": {
      "properties": {
        "availabilityZoneUrl": {
          "type": "string"
        },
        "vmIpAssignmentLists": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FRecoveryPlanParametersFloatingIpAssignmentListVmIpAssignmentList:RecoveryPlanParametersFloatingIpAssignmentListVmIpAssignmentList"
          }
        }
      },
      "type": "object",
      "required": [
        "availabilityZoneUrl",
        "vmIpAssignmentLists"
      ]
    },
    "nutanix:index/RecoveryPlanParametersFloatingIpAssignmentListVmIpAssignmentList:RecoveryPlanParametersFloatingIpAssignmentListVmIpAssignmentList": {
      "properties": {
        "recoveryFloatingIpConfig": {
          "$ref": "#/types/nutanix:index%2FRecoveryPlanParametersFloatingIpAssignmentListVmIpAssignmentListRecoveryFloatingIpConfig:RecoveryPlanParametersFloatingIpAssignmentListVmIpAssignmentListRecoveryFloatingIpConfig"
        },
        "testFloatingIpConfig": {
          "$ref": "#/types/nutanix:index%2FRecoveryPlanParametersFloatingIpAssignmentListVmIpAssignmentListTestFloatingIpConfig:RecoveryPlanParametersFloatingIpAssignmentListVmIpAssignmentListTestFloatingIpConfig"
        },
        "vmNicInformation": {
          "$ref": "#/types/nutanix:index%2FRecoveryPlanParametersFloatingIpAssignmentListVmIpAssignmentListVmNicInformation:RecoveryPlanParametersFloatingIpAssignmentListVmIpAssignmentListVmNicInformation"
        },
        "vmReference": {
          "$ref": "#/types/nutanix:index%2FRecoveryPlanParametersFloatingIpAssignmentListVmIpAssignmentListVmReference:RecoveryPlanParametersFloatingIpAssignmentListVmIpAssignmentListVmReference"
        }
      },
      "type": "object",
      "required": [
        "vmNicInformation",
        "vmReference"
      ],
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "recoveryFloatingIpConfig",
            "testFloatingIpConfig",
            "vmNicInformation",
            "vmReference"
          ]
        }
      }
    },
    "nutanix:index/RecoveryPlanParametersFloatingIpAssignmentListVmIpAssignmentListRecoveryFloatingIpConfig:RecoveryPlanParametersFloatingIpAssignmentListVmIpAssignmentListRecoveryFloatingIpConfig": {
      "properties": {
        "ip": {
          "type": "string"
        },
        "shouldAllocateDynamically": {
          "type": "boolean"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "ip",
            "shouldAllocateDynamically"
          ]
        }
      }
    },
    "nutanix:index/RecoveryPlanParametersFloatingIpAssignmentListVmIpAssignmentListTestFloatingIpConfig:RecoveryPlanParametersFloatingIpAssignmentListVmIpAssignmentListTestFloatingIpConfig": {
      "properties": {
        "ip": {
          "type": "string"
        },
        "shouldAllocateDynamically": {
          "type": "boolean"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "ip",
            "shouldAllocateDynamically"
          ]
        }
      }
    },
    "nutanix:index/RecoveryPlanParametersFloatingIpAssignmentListVmIpAssignmentListVmNicInformation:RecoveryPlanParametersFloatingIpAssignmentListVmIpAssignmentListVmNicInformation": {
      "properties": {
        "ip": {
          "type": "string"
        },
        "uuid": {
          "type": "string",
          "description": "(Required) the UUID.\n"
        }
      },
      "type": "object",
      "required": [
        "uuid"
      ],
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "ip",
            "uuid"
          ]
        }
      }
    },
    "nutanix:index/RecoveryPlanParametersFloatingIpAssignmentListVmIpAssignmentListVmReference:RecoveryPlanParametersFloatingIpAssignmentListVmIpAssignmentListVmReference": {
      "properties": {
        "kind": {
          "type": "string",
          "description": "(Required) The kind name (Default value: <span pulumi-lang-nodejs=\"`project`\" pulumi-lang-dotnet=\"`Project`\" pulumi-lang-go=\"`project`\" pulumi-lang-python=\"`project`\" pulumi-lang-yaml=\"`project`\" pulumi-lang-java=\"`project`\">`project`</span>).\n"
        },
        "name": {
          "type": "string",
          "description": "The name for the Recovery Plan.\n"
        },
        "uuid": {
          "type": "string",
          "description": "(Required) the UUID.\n"
        }
      },
      "type": "object",
      "required": [
        "kind",
        "uuid"
      ],
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "kind",
            "name",
            "uuid"
          ]
        }
      }
    },
    "nutanix:index/RecoveryPlanParametersNetworkMappingList:RecoveryPlanParametersNetworkMappingList": {
      "properties": {
        "areNetworksStretched": {
          "type": "boolean"
        },
        "availabilityZoneNetworkMappingLists": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FRecoveryPlanParametersNetworkMappingListAvailabilityZoneNetworkMappingList:RecoveryPlanParametersNetworkMappingListAvailabilityZoneNetworkMappingList"
          }
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "areNetworksStretched",
            "availabilityZoneNetworkMappingLists"
          ]
        }
      }
    },
    "nutanix:index/RecoveryPlanParametersNetworkMappingListAvailabilityZoneNetworkMappingList:RecoveryPlanParametersNetworkMappingListAvailabilityZoneNetworkMappingList": {
      "properties": {
        "availabilityZoneUrl": {
          "type": "string"
        },
        "clusterReferenceLists": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FRecoveryPlanParametersNetworkMappingListAvailabilityZoneNetworkMappingListClusterReferenceList:RecoveryPlanParametersNetworkMappingListAvailabilityZoneNetworkMappingListClusterReferenceList"
          }
        },
        "recoveryIpAssignmentLists": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FRecoveryPlanParametersNetworkMappingListAvailabilityZoneNetworkMappingListRecoveryIpAssignmentList:RecoveryPlanParametersNetworkMappingListAvailabilityZoneNetworkMappingListRecoveryIpAssignmentList"
          }
        },
        "recoveryNetwork": {
          "$ref": "#/types/nutanix:index%2FRecoveryPlanParametersNetworkMappingListAvailabilityZoneNetworkMappingListRecoveryNetwork:RecoveryPlanParametersNetworkMappingListAvailabilityZoneNetworkMappingListRecoveryNetwork"
        },
        "testIpAssignmentLists": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FRecoveryPlanParametersNetworkMappingListAvailabilityZoneNetworkMappingListTestIpAssignmentList:RecoveryPlanParametersNetworkMappingListAvailabilityZoneNetworkMappingListTestIpAssignmentList"
          }
        },
        "testNetwork": {
          "$ref": "#/types/nutanix:index%2FRecoveryPlanParametersNetworkMappingListAvailabilityZoneNetworkMappingListTestNetwork:RecoveryPlanParametersNetworkMappingListAvailabilityZoneNetworkMappingListTestNetwork"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "availabilityZoneUrl",
            "clusterReferenceLists",
            "recoveryIpAssignmentLists",
            "recoveryNetwork",
            "testIpAssignmentLists",
            "testNetwork"
          ]
        }
      }
    },
    "nutanix:index/RecoveryPlanParametersNetworkMappingListAvailabilityZoneNetworkMappingListClusterReferenceList:RecoveryPlanParametersNetworkMappingListAvailabilityZoneNetworkMappingListClusterReferenceList": {
      "properties": {
        "kind": {
          "type": "string",
          "description": "(Required) The kind name (Default value: <span pulumi-lang-nodejs=\"`project`\" pulumi-lang-dotnet=\"`Project`\" pulumi-lang-go=\"`project`\" pulumi-lang-python=\"`project`\" pulumi-lang-yaml=\"`project`\" pulumi-lang-java=\"`project`\">`project`</span>).\n"
        },
        "name": {
          "type": "string",
          "description": "The name for the Recovery Plan.\n"
        },
        "uuid": {
          "type": "string",
          "description": "(Required) the UUID.\n"
        }
      },
      "type": "object",
      "required": [
        "kind",
        "uuid"
      ],
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "kind",
            "name",
            "uuid"
          ]
        }
      }
    },
    "nutanix:index/RecoveryPlanParametersNetworkMappingListAvailabilityZoneNetworkMappingListRecoveryIpAssignmentList:RecoveryPlanParametersNetworkMappingListAvailabilityZoneNetworkMappingListRecoveryIpAssignmentList": {
      "properties": {
        "ipConfigLists": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FRecoveryPlanParametersNetworkMappingListAvailabilityZoneNetworkMappingListRecoveryIpAssignmentListIpConfigList:RecoveryPlanParametersNetworkMappingListAvailabilityZoneNetworkMappingListRecoveryIpAssignmentListIpConfigList"
          }
        },
        "vmReference": {
          "$ref": "#/types/nutanix:index%2FRecoveryPlanParametersNetworkMappingListAvailabilityZoneNetworkMappingListRecoveryIpAssignmentListVmReference:RecoveryPlanParametersNetworkMappingListAvailabilityZoneNetworkMappingListRecoveryIpAssignmentListVmReference"
        }
      },
      "type": "object",
      "required": [
        "ipConfigLists",
        "vmReference"
      ]
    },
    "nutanix:index/RecoveryPlanParametersNetworkMappingListAvailabilityZoneNetworkMappingListRecoveryIpAssignmentListIpConfigList:RecoveryPlanParametersNetworkMappingListAvailabilityZoneNetworkMappingListRecoveryIpAssignmentListIpConfigList": {
      "properties": {
        "ipAddress": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "ipAddress"
      ]
    },
    "nutanix:index/RecoveryPlanParametersNetworkMappingListAvailabilityZoneNetworkMappingListRecoveryIpAssignmentListVmReference:RecoveryPlanParametersNetworkMappingListAvailabilityZoneNetworkMappingListRecoveryIpAssignmentListVmReference": {
      "properties": {
        "kind": {
          "type": "string",
          "description": "(Required) The kind name (Default value: <span pulumi-lang-nodejs=\"`project`\" pulumi-lang-dotnet=\"`Project`\" pulumi-lang-go=\"`project`\" pulumi-lang-python=\"`project`\" pulumi-lang-yaml=\"`project`\" pulumi-lang-java=\"`project`\">`project`</span>).\n"
        },
        "name": {
          "type": "string",
          "description": "The name for the Recovery Plan.\n"
        },
        "uuid": {
          "type": "string",
          "description": "(Required) the UUID.\n"
        }
      },
      "type": "object",
      "required": [
        "kind"
      ],
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "kind",
            "name",
            "uuid"
          ]
        }
      }
    },
    "nutanix:index/RecoveryPlanParametersNetworkMappingListAvailabilityZoneNetworkMappingListRecoveryNetwork:RecoveryPlanParametersNetworkMappingListAvailabilityZoneNetworkMappingListRecoveryNetwork": {
      "properties": {
        "name": {
          "type": "string",
          "description": "The name for the Recovery Plan.\n"
        },
        "subnetLists": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FRecoveryPlanParametersNetworkMappingListAvailabilityZoneNetworkMappingListRecoveryNetworkSubnetList:RecoveryPlanParametersNetworkMappingListAvailabilityZoneNetworkMappingListRecoveryNetworkSubnetList"
          }
        },
        "useVpcReference": {
          "type": "boolean"
        },
        "virtualNetworkReference": {
          "$ref": "#/types/nutanix:index%2FRecoveryPlanParametersNetworkMappingListAvailabilityZoneNetworkMappingListRecoveryNetworkVirtualNetworkReference:RecoveryPlanParametersNetworkMappingListAvailabilityZoneNetworkMappingListRecoveryNetworkVirtualNetworkReference"
        },
        "vpcReference": {
          "$ref": "#/types/nutanix:index%2FRecoveryPlanParametersNetworkMappingListAvailabilityZoneNetworkMappingListRecoveryNetworkVpcReference:RecoveryPlanParametersNetworkMappingListAvailabilityZoneNetworkMappingListRecoveryNetworkVpcReference"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "name",
            "subnetLists",
            "useVpcReference",
            "virtualNetworkReference",
            "vpcReference"
          ]
        }
      }
    },
    "nutanix:index/RecoveryPlanParametersNetworkMappingListAvailabilityZoneNetworkMappingListRecoveryNetworkSubnetList:RecoveryPlanParametersNetworkMappingListAvailabilityZoneNetworkMappingListRecoveryNetworkSubnetList": {
      "properties": {
        "externalConnectivityState": {
          "type": "string"
        },
        "gatewayIp": {
          "type": "string"
        },
        "prefixLength": {
          "type": "integer"
        }
      },
      "type": "object",
      "required": [
        "gatewayIp",
        "prefixLength"
      ],
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "externalConnectivityState",
            "gatewayIp",
            "prefixLength"
          ]
        }
      }
    },
    "nutanix:index/RecoveryPlanParametersNetworkMappingListAvailabilityZoneNetworkMappingListRecoveryNetworkVirtualNetworkReference:RecoveryPlanParametersNetworkMappingListAvailabilityZoneNetworkMappingListRecoveryNetworkVirtualNetworkReference": {
      "properties": {
        "kind": {
          "type": "string",
          "description": "(Required) The kind name (Default value: <span pulumi-lang-nodejs=\"`project`\" pulumi-lang-dotnet=\"`Project`\" pulumi-lang-go=\"`project`\" pulumi-lang-python=\"`project`\" pulumi-lang-yaml=\"`project`\" pulumi-lang-java=\"`project`\">`project`</span>).\n"
        },
        "name": {
          "type": "string",
          "description": "The name for the Recovery Plan.\n"
        },
        "uuid": {
          "type": "string",
          "description": "(Required) the UUID.\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "kind",
            "name",
            "uuid"
          ]
        }
      }
    },
    "nutanix:index/RecoveryPlanParametersNetworkMappingListAvailabilityZoneNetworkMappingListRecoveryNetworkVpcReference:RecoveryPlanParametersNetworkMappingListAvailabilityZoneNetworkMappingListRecoveryNetworkVpcReference": {
      "properties": {
        "kind": {
          "type": "string",
          "description": "(Required) The kind name (Default value: <span pulumi-lang-nodejs=\"`project`\" pulumi-lang-dotnet=\"`Project`\" pulumi-lang-go=\"`project`\" pulumi-lang-python=\"`project`\" pulumi-lang-yaml=\"`project`\" pulumi-lang-java=\"`project`\">`project`</span>).\n"
        },
        "name": {
          "type": "string",
          "description": "The name for the Recovery Plan.\n"
        },
        "uuid": {
          "type": "string",
          "description": "(Required) the UUID.\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "kind",
            "name",
            "uuid"
          ]
        }
      }
    },
    "nutanix:index/RecoveryPlanParametersNetworkMappingListAvailabilityZoneNetworkMappingListTestIpAssignmentList:RecoveryPlanParametersNetworkMappingListAvailabilityZoneNetworkMappingListTestIpAssignmentList": {
      "properties": {
        "ipConfigLists": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FRecoveryPlanParametersNetworkMappingListAvailabilityZoneNetworkMappingListTestIpAssignmentListIpConfigList:RecoveryPlanParametersNetworkMappingListAvailabilityZoneNetworkMappingListTestIpAssignmentListIpConfigList"
          }
        },
        "vmReference": {
          "$ref": "#/types/nutanix:index%2FRecoveryPlanParametersNetworkMappingListAvailabilityZoneNetworkMappingListTestIpAssignmentListVmReference:RecoveryPlanParametersNetworkMappingListAvailabilityZoneNetworkMappingListTestIpAssignmentListVmReference"
        }
      },
      "type": "object",
      "required": [
        "ipConfigLists",
        "vmReference"
      ]
    },
    "nutanix:index/RecoveryPlanParametersNetworkMappingListAvailabilityZoneNetworkMappingListTestIpAssignmentListIpConfigList:RecoveryPlanParametersNetworkMappingListAvailabilityZoneNetworkMappingListTestIpAssignmentListIpConfigList": {
      "properties": {
        "ipAddress": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "ipAddress"
      ]
    },
    "nutanix:index/RecoveryPlanParametersNetworkMappingListAvailabilityZoneNetworkMappingListTestIpAssignmentListVmReference:RecoveryPlanParametersNetworkMappingListAvailabilityZoneNetworkMappingListTestIpAssignmentListVmReference": {
      "properties": {
        "kind": {
          "type": "string",
          "description": "(Required) The kind name (Default value: <span pulumi-lang-nodejs=\"`project`\" pulumi-lang-dotnet=\"`Project`\" pulumi-lang-go=\"`project`\" pulumi-lang-python=\"`project`\" pulumi-lang-yaml=\"`project`\" pulumi-lang-java=\"`project`\">`project`</span>).\n"
        },
        "name": {
          "type": "string",
          "description": "The name for the Recovery Plan.\n"
        },
        "uuid": {
          "type": "string",
          "description": "(Required) the UUID.\n"
        }
      },
      "type": "object",
      "required": [
        "kind"
      ],
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "kind",
            "name",
            "uuid"
          ]
        }
      }
    },
    "nutanix:index/RecoveryPlanParametersNetworkMappingListAvailabilityZoneNetworkMappingListTestNetwork:RecoveryPlanParametersNetworkMappingListAvailabilityZoneNetworkMappingListTestNetwork": {
      "properties": {
        "name": {
          "type": "string",
          "description": "The name for the Recovery Plan.\n"
        },
        "subnetLists": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FRecoveryPlanParametersNetworkMappingListAvailabilityZoneNetworkMappingListTestNetworkSubnetList:RecoveryPlanParametersNetworkMappingListAvailabilityZoneNetworkMappingListTestNetworkSubnetList"
          }
        },
        "useVpcReference": {
          "type": "boolean"
        },
        "virtualNetworkReference": {
          "$ref": "#/types/nutanix:index%2FRecoveryPlanParametersNetworkMappingListAvailabilityZoneNetworkMappingListTestNetworkVirtualNetworkReference:RecoveryPlanParametersNetworkMappingListAvailabilityZoneNetworkMappingListTestNetworkVirtualNetworkReference"
        },
        "vpcReference": {
          "$ref": "#/types/nutanix:index%2FRecoveryPlanParametersNetworkMappingListAvailabilityZoneNetworkMappingListTestNetworkVpcReference:RecoveryPlanParametersNetworkMappingListAvailabilityZoneNetworkMappingListTestNetworkVpcReference"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "name",
            "subnetLists",
            "useVpcReference",
            "virtualNetworkReference",
            "vpcReference"
          ]
        }
      }
    },
    "nutanix:index/RecoveryPlanParametersNetworkMappingListAvailabilityZoneNetworkMappingListTestNetworkSubnetList:RecoveryPlanParametersNetworkMappingListAvailabilityZoneNetworkMappingListTestNetworkSubnetList": {
      "properties": {
        "externalConnectivityState": {
          "type": "string"
        },
        "gatewayIp": {
          "type": "string"
        },
        "prefixLength": {
          "type": "integer"
        }
      },
      "type": "object",
      "required": [
        "gatewayIp",
        "prefixLength"
      ],
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "externalConnectivityState",
            "gatewayIp",
            "prefixLength"
          ]
        }
      }
    },
    "nutanix:index/RecoveryPlanParametersNetworkMappingListAvailabilityZoneNetworkMappingListTestNetworkVirtualNetworkReference:RecoveryPlanParametersNetworkMappingListAvailabilityZoneNetworkMappingListTestNetworkVirtualNetworkReference": {
      "properties": {
        "kind": {
          "type": "string",
          "description": "(Required) The kind name (Default value: <span pulumi-lang-nodejs=\"`project`\" pulumi-lang-dotnet=\"`Project`\" pulumi-lang-go=\"`project`\" pulumi-lang-python=\"`project`\" pulumi-lang-yaml=\"`project`\" pulumi-lang-java=\"`project`\">`project`</span>).\n"
        },
        "name": {
          "type": "string",
          "description": "The name for the Recovery Plan.\n"
        },
        "uuid": {
          "type": "string",
          "description": "(Required) the UUID.\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "kind",
            "name",
            "uuid"
          ]
        }
      }
    },
    "nutanix:index/RecoveryPlanParametersNetworkMappingListAvailabilityZoneNetworkMappingListTestNetworkVpcReference:RecoveryPlanParametersNetworkMappingListAvailabilityZoneNetworkMappingListTestNetworkVpcReference": {
      "properties": {
        "kind": {
          "type": "string",
          "description": "(Required) The kind name (Default value: <span pulumi-lang-nodejs=\"`project`\" pulumi-lang-dotnet=\"`Project`\" pulumi-lang-go=\"`project`\" pulumi-lang-python=\"`project`\" pulumi-lang-yaml=\"`project`\" pulumi-lang-java=\"`project`\">`project`</span>).\n"
        },
        "name": {
          "type": "string",
          "description": "The name for the Recovery Plan.\n"
        },
        "uuid": {
          "type": "string",
          "description": "(Required) the UUID.\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "kind",
            "name",
            "uuid"
          ]
        }
      }
    },
    "nutanix:index/RecoveryPlanProjectReference:RecoveryPlanProjectReference": {
      "properties": {
        "kind": {
          "type": "string",
          "description": "(Required) The kind name (Default value: <span pulumi-lang-nodejs=\"`project`\" pulumi-lang-dotnet=\"`Project`\" pulumi-lang-go=\"`project`\" pulumi-lang-python=\"`project`\" pulumi-lang-yaml=\"`project`\" pulumi-lang-java=\"`project`\">`project`</span>).\n"
        },
        "name": {
          "type": "string",
          "description": "The name for the Recovery Plan.\n"
        },
        "uuid": {
          "type": "string",
          "description": "(Required) the UUID.\n"
        }
      },
      "type": "object"
    },
    "nutanix:index/RecoveryPlanStageList:RecoveryPlanStageList": {
      "properties": {
        "delayTimeSecs": {
          "type": "integer"
        },
        "stageUuid": {
          "type": "string"
        },
        "stageWork": {
          "$ref": "#/types/nutanix:index%2FRecoveryPlanStageListStageWork:RecoveryPlanStageListStageWork"
        }
      },
      "type": "object",
      "required": [
        "stageWork"
      ],
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "delayTimeSecs",
            "stageUuid",
            "stageWork"
          ]
        }
      }
    },
    "nutanix:index/RecoveryPlanStageListStageWork:RecoveryPlanStageListStageWork": {
      "properties": {
        "recoverEntities": {
          "$ref": "#/types/nutanix:index%2FRecoveryPlanStageListStageWorkRecoverEntities:RecoveryPlanStageListStageWorkRecoverEntities"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "recoverEntities"
          ]
        }
      }
    },
    "nutanix:index/RecoveryPlanStageListStageWorkRecoverEntities:RecoveryPlanStageListStageWorkRecoverEntities": {
      "properties": {
        "entityInfoLists": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FRecoveryPlanStageListStageWorkRecoverEntitiesEntityInfoList:RecoveryPlanStageListStageWorkRecoverEntitiesEntityInfoList"
          }
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "entityInfoLists"
          ]
        }
      }
    },
    "nutanix:index/RecoveryPlanStageListStageWorkRecoverEntitiesEntityInfoList:RecoveryPlanStageListStageWorkRecoverEntitiesEntityInfoList": {
      "properties": {
        "anyEntityReferenceKind": {
          "type": "string"
        },
        "anyEntityReferenceName": {
          "type": "string"
        },
        "anyEntityReferenceUuid": {
          "type": "string"
        },
        "categories": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FRecoveryPlanStageListStageWorkRecoverEntitiesEntityInfoListCategory:RecoveryPlanStageListStageWorkRecoverEntitiesEntityInfoListCategory"
          }
        },
        "scriptLists": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FRecoveryPlanStageListStageWorkRecoverEntitiesEntityInfoListScriptList:RecoveryPlanStageListStageWorkRecoverEntitiesEntityInfoListScriptList"
          }
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "scriptLists"
          ]
        }
      }
    },
    "nutanix:index/RecoveryPlanStageListStageWorkRecoverEntitiesEntityInfoListCategory:RecoveryPlanStageListStageWorkRecoverEntitiesEntityInfoListCategory": {
      "properties": {
        "name": {
          "type": "string",
          "description": "The name for the Recovery Plan.\n"
        },
        "value": {
          "type": "string",
          "description": "value of the key.\n"
        }
      },
      "type": "object"
    },
    "nutanix:index/RecoveryPlanStageListStageWorkRecoverEntitiesEntityInfoListScriptList:RecoveryPlanStageListStageWorkRecoverEntitiesEntityInfoListScriptList": {
      "properties": {
        "enableScriptExec": {
          "type": "boolean"
        },
        "timeout": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "enableScriptExec"
      ],
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "enableScriptExec",
            "timeout"
          ]
        }
      }
    },
    "nutanix:index/RecoveryPointRestoreV2VmRecoveryPointRestoreOverride:RecoveryPointRestoreV2VmRecoveryPointRestoreOverride": {
      "properties": {
        "vmRecoveryPointExtId": {
          "type": "string",
          "description": "-(Required) External identifier of a VM recovery point, that is a part of the top-level recovery point.\n"
        }
      },
      "type": "object",
      "required": [
        "vmRecoveryPointExtId"
      ]
    },
    "nutanix:index/RecoveryPointRestoreV2VolumeGroupRecoveryPointRestoreOverride:RecoveryPointRestoreV2VolumeGroupRecoveryPointRestoreOverride": {
      "properties": {
        "volumeGroupOverrideSpecs": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FRecoveryPointRestoreV2VolumeGroupRecoveryPointRestoreOverrideVolumeGroupOverrideSpec:RecoveryPointRestoreV2VolumeGroupRecoveryPointRestoreOverrideVolumeGroupOverrideSpec"
          },
          "description": "-(Optional) Protected resource/recovery point restore that overrides the volume group configuration. The specified properties will be overridden for the restored volume group.\n"
        },
        "volumeGroupRecoveryPointExtId": {
          "type": "string",
          "description": "-(Required) External identifier of a volume group recovery point, that is a part of the top-level recovery point.\n"
        }
      },
      "type": "object",
      "required": [
        "volumeGroupRecoveryPointExtId"
      ]
    },
    "nutanix:index/RecoveryPointRestoreV2VolumeGroupRecoveryPointRestoreOverrideVolumeGroupOverrideSpec:RecoveryPointRestoreV2VolumeGroupRecoveryPointRestoreOverrideVolumeGroupOverrideSpec": {
      "properties": {
        "name": {
          "type": "string",
          "description": "-(Optional) The name of the restored volume group.\n"
        }
      },
      "type": "object"
    },
    "nutanix:index/RecoveryPointsV2Link:RecoveryPointsV2Link": {
      "properties": {
        "href": {
          "type": "string",
          "description": "- The URL at which the entity described by the link can be accessed.\n"
        },
        "rel": {
          "type": "string",
          "description": "- A name that identifies the relationship of the link to the object that is returned by the URL. The unique value of \"self\" identifies the URL for the object.\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "href",
            "rel"
          ]
        }
      }
    },
    "nutanix:index/RecoveryPointsV2LocationReference:RecoveryPointsV2LocationReference": {
      "properties": {
        "locationExtId": {
          "type": "string",
          "description": "External identifier of the cluster where the recovery point is present.\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "locationExtId"
          ]
        }
      }
    },
    "nutanix:index/RecoveryPointsV2VmRecoveryPoint:RecoveryPointsV2VmRecoveryPoint": {
      "properties": {
        "applicationConsistentProperties": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FRecoveryPointsV2VmRecoveryPointApplicationConsistentProperty:RecoveryPointsV2VmRecoveryPointApplicationConsistentProperty"
          },
          "description": "User-defined application-consistent properties for the recovery point.\n"
        },
        "consistencyGroupExtId": {
          "type": "string",
          "description": "External identifier of the Consistency group which the entity was part of at the time of recovery point creation.\n"
        },
        "creationTime": {
          "type": "string",
          "description": "The UTC date and time in ISO-8601 format when the Recovery point is created.\n"
        },
        "diskRecoveryPoints": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FRecoveryPointsV2VmRecoveryPointDiskRecoveryPoint:RecoveryPointsV2VmRecoveryPointDiskRecoveryPoint"
          },
          "description": "array of disk recovery points.\n"
        },
        "expirationTime": {
          "type": "string",
          "description": "The UTC date and time in ISO-8601 format when the current Recovery point expires and will be garbage collected.\n"
        },
        "extId": {
          "type": "string",
          "description": "recovery point UUID\n"
        },
        "links": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FRecoveryPointsV2VmRecoveryPointLink:RecoveryPointsV2VmRecoveryPointLink"
          },
          "description": "A HATEOAS style link for the response. Each link contains a user-friendly name identifying the link and an address for retrieving the particular resource.\n"
        },
        "locationAgnosticId": {
          "type": "string",
          "description": "Location agnostic identifier of the recovery point. This identifier is used to identify the same instances of a recovery point across different sites.\n"
        },
        "name": {
          "type": "string",
          "description": "The name of the Recovery point.\n"
        },
        "recoveryPointType": {
          "type": "string",
          "description": "Type of the Recovery point.\n"
        },
        "status": {
          "type": "string",
          "description": "The status of the Recovery point, which indicates whether this Recovery point is fit to be consumed.\n* supported values:\n* `COMPLETE`: - The Recovery point is in a complete state and ready to be consumed.\n"
        },
        "tenantId": {
          "type": "string",
          "description": "A globally unique identifier that represents the tenant that owns this entity\n"
        },
        "vmCategories": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "Category key-value pairs associated with the VM at the time of recovery point creation. The category key and value are separated by '/'. For example, a category with key 'dept' and value 'hr' is displayed as 'dept/hr'.\n"
        },
        "vmExtId": {
          "type": "string",
          "description": "VM external identifier which is captured as a part of this recovery point.\n"
        }
      },
      "type": "object",
      "required": [
        "vmExtId"
      ],
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "applicationConsistentProperties",
            "consistencyGroupExtId",
            "creationTime",
            "diskRecoveryPoints",
            "expirationTime",
            "extId",
            "links",
            "locationAgnosticId",
            "name",
            "recoveryPointType",
            "status",
            "tenantId",
            "vmCategories",
            "vmExtId"
          ]
        }
      }
    },
    "nutanix:index/RecoveryPointsV2VmRecoveryPointApplicationConsistentProperty:RecoveryPointsV2VmRecoveryPointApplicationConsistentProperty": {
      "properties": {
        "backupType": {
          "type": "string",
          "description": "-(Required) The backup type specifies the criteria for identifying the files to be backed up. This property should be specified to the application-consistent recovery points for Windows VMs/agents. The following backup types are supported for the application-consistent recovery points:\n* supported values:\n* `FULL_BACKUP`: -  All the files are backed up irrespective of their last backup date/time or state. Also, this backup type updates the backup history of each file that participated in the recovery point. If not explicitly specified, this is the default backup type.\n* `COPY_BACKUP`: -  this backup type does not update the backup history of individual files involved in the recovery point.\n"
        },
        "objectType": {
          "type": "string",
          "description": "-(Required) value: `dataprotection.v4.common.VssProperties`\n"
        },
        "shouldIncludeWriters": {
          "type": "boolean",
          "description": "-(Optional) Indicates whether the given set of VSS writers' UUIDs should be included or excluded from the application consistent recovery point. By default, the value is set to false, indicating that all listed VSS writers' UUIDs will be excluded.\n"
        },
        "shouldStoreVssMetadata": {
          "type": "boolean",
          "description": "-(Optional) Indicates whether to store the VSS metadata if the user is interested in application-specific backup/restore. The VSS metadata consists of VSS writers and requester metadata details. These are compressed into a cabinet file(.cab file) during a VSS backup operation. This cabinet file must be saved to the backup media during a backup operation, as it is required during the restore operation.\n"
        },
        "writers": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "-(Optional) List of VSS writer UUIDs that are used in an application consistent recovery point. The default values are the system and the registry writer UUIDs.\n"
        }
      },
      "type": "object",
      "required": [
        "backupType",
        "objectType"
      ],
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "backupType",
            "objectType",
            "shouldIncludeWriters",
            "shouldStoreVssMetadata",
            "writers"
          ]
        }
      }
    },
    "nutanix:index/RecoveryPointsV2VmRecoveryPointDiskRecoveryPoint:RecoveryPointsV2VmRecoveryPointDiskRecoveryPoint": {
      "properties": {
        "diskExtId": {
          "type": "string",
          "description": "External identifier of the disk.\n"
        },
        "diskRecoveryPointExtId": {
          "type": "string",
          "description": "External identifier of the disk recovery point.\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "diskExtId",
            "diskRecoveryPointExtId"
          ]
        }
      }
    },
    "nutanix:index/RecoveryPointsV2VmRecoveryPointLink:RecoveryPointsV2VmRecoveryPointLink": {
      "properties": {
        "href": {
          "type": "string",
          "description": "- The URL at which the entity described by the link can be accessed.\n"
        },
        "rel": {
          "type": "string",
          "description": "- A name that identifies the relationship of the link to the object that is returned by the URL. The unique value of \"self\" identifies the URL for the object.\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "href",
            "rel"
          ]
        }
      }
    },
    "nutanix:index/RecoveryPointsV2VolumeGroupRecoveryPoint:RecoveryPointsV2VolumeGroupRecoveryPoint": {
      "properties": {
        "consistencyGroupExtId": {
          "type": "string",
          "description": "External identifier of the Consistency group which the entity was part of at the time of recovery point creation.\n"
        },
        "diskRecoveryPoints": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FRecoveryPointsV2VolumeGroupRecoveryPointDiskRecoveryPoint:RecoveryPointsV2VolumeGroupRecoveryPointDiskRecoveryPoint"
          },
          "description": "array of disk recovery points.\n"
        },
        "extId": {
          "type": "string",
          "description": "recovery point UUID\n"
        },
        "links": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FRecoveryPointsV2VolumeGroupRecoveryPointLink:RecoveryPointsV2VolumeGroupRecoveryPointLink"
          },
          "description": "A HATEOAS style link for the response. Each link contains a user-friendly name identifying the link and an address for retrieving the particular resource.\n"
        },
        "locationAgnosticId": {
          "type": "string",
          "description": "Location agnostic identifier of the recovery point. This identifier is used to identify the same instances of a recovery point across different sites.\n"
        },
        "tenantId": {
          "type": "string",
          "description": "A globally unique identifier that represents the tenant that owns this entity\n"
        },
        "volumeGroupCategories": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "Category key-value pairs associated with the volume group at the time of recovery point creation. The category key and value are separated by '/'. For example, a category with key 'dept' and value 'hr' will be represented as 'dept/hr'.\n"
        },
        "volumeGroupExtId": {
          "type": "string",
          "description": "Volume Group external identifier which is captured as part of this recovery point.\n"
        }
      },
      "type": "object",
      "required": [
        "volumeGroupExtId"
      ],
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "consistencyGroupExtId",
            "diskRecoveryPoints",
            "extId",
            "links",
            "locationAgnosticId",
            "tenantId",
            "volumeGroupCategories",
            "volumeGroupExtId"
          ]
        }
      }
    },
    "nutanix:index/RecoveryPointsV2VolumeGroupRecoveryPointDiskRecoveryPoint:RecoveryPointsV2VolumeGroupRecoveryPointDiskRecoveryPoint": {
      "properties": {
        "diskExtId": {
          "type": "string",
          "description": "External identifier of the disk.\n"
        },
        "diskRecoveryPointExtId": {
          "type": "string",
          "description": "External identifier of the disk recovery point.\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "diskExtId",
            "diskRecoveryPointExtId"
          ]
        }
      }
    },
    "nutanix:index/RecoveryPointsV2VolumeGroupRecoveryPointLink:RecoveryPointsV2VolumeGroupRecoveryPointLink": {
      "properties": {
        "href": {
          "type": "string",
          "description": "- The URL at which the entity described by the link can be accessed.\n"
        },
        "rel": {
          "type": "string",
          "description": "- A name that identifies the relationship of the link to the object that is returned by the URL. The unique value of \"self\" identifies the URL for the object.\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "href",
            "rel"
          ]
        }
      }
    },
    "nutanix:index/RoleCategory:RoleCategory": {
      "properties": {
        "name": {
          "type": "string",
          "description": "- (Optional) Name of the role.\n"
        },
        "value": {
          "type": "string",
          "description": "- value of the key.\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "name",
            "value"
          ]
        }
      }
    },
    "nutanix:index/RoleOwnerReference:RoleOwnerReference": {
      "properties": {
        "kind": {
          "type": "string",
          "description": "- The kind name (Default value: project)(Required).\n"
        },
        "name": {
          "type": "string",
          "description": "- (Optional) Name of the role.\n"
        },
        "uuid": {
          "type": "string",
          "description": "- the UUID(Required).\n"
        }
      },
      "type": "object"
    },
    "nutanix:index/RolePermissionReferenceList:RolePermissionReferenceList": {
      "properties": {
        "kind": {
          "type": "string",
          "description": "- The kind name (Default value: project)(Required).\n"
        },
        "name": {
          "type": "string",
          "description": "- (Optional) Name of the role.\n"
        },
        "uuid": {
          "type": "string",
          "description": "- the UUID(Required).\n"
        }
      },
      "type": "object",
      "required": [
        "uuid"
      ],
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "name",
            "uuid"
          ]
        }
      }
    },
    "nutanix:index/RoleProjectReference:RoleProjectReference": {
      "properties": {
        "kind": {
          "type": "string",
          "description": "- The kind name (Default value: project)(Required).\n"
        },
        "name": {
          "type": "string",
          "description": "- (Optional) Name of the role.\n"
        },
        "uuid": {
          "type": "string",
          "description": "- the UUID(Required).\n"
        }
      },
      "type": "object"
    },
    "nutanix:index/RolesV2Link:RolesV2Link": {
      "properties": {
        "href": {
          "type": "string",
          "description": "- The URL at which the entity described by the link can be accessed.\n"
        },
        "rel": {
          "type": "string",
          "description": "- A name that identifies the relationship of the link to the object that is returned by the URL. The unique value of \"self\" identifies the URL for the object.\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "href",
            "rel"
          ]
        }
      }
    },
    "nutanix:index/RoutesV2Destination:RoutesV2Destination": {
      "properties": {
        "ipv4": {
          "$ref": "#/types/nutanix:index%2FRoutesV2DestinationIpv4:RoutesV2DestinationIpv4",
          "description": "IPv4 Subnet Object\n* `ipv4.ip`: (Required) An unique address that identifies a device on the internet or a local network in IPv4 format.\n* `ipv4.ip.value`: (Required) The IPv4 address of the host.\n* `ipv4.ip.prefix_length`: (Optional) The prefix length of the network to which this host IPv4 address belongs.\n* `ipv4.prefix_length`: (Required) The prefix length of the network to which this host IPv4 address belongs.\n"
        },
        "ipv6": {
          "$ref": "#/types/nutanix:index%2FRoutesV2DestinationIpv6:RoutesV2DestinationIpv6",
          "description": "IPv6 Subnet Object\n* `ipv6.ip`: (Required) IP address format\n* `ipv6.ip.value`: (Required) The IPv6 address of the host.\n* `ipv6.ip.prefix_length`: (Optional) The prefix length of the network to which this host IPv6 address belongs.\n* `ipv6.prefix_length`: (Required) The prefix length of the network to which this host IPv6 address belongs.\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "ipv4",
            "ipv6"
          ]
        }
      }
    },
    "nutanix:index/RoutesV2DestinationIpv4:RoutesV2DestinationIpv4": {
      "properties": {
        "ip": {
          "$ref": "#/types/nutanix:index%2FRoutesV2DestinationIpv4Ip:RoutesV2DestinationIpv4Ip"
        },
        "prefixLength": {
          "type": "integer",
          "description": "The prefix length of the network to which this host IPv4/IPv6 address belongs.\n"
        }
      },
      "type": "object",
      "required": [
        "ip"
      ],
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "ip",
            "prefixLength"
          ]
        }
      }
    },
    "nutanix:index/RoutesV2DestinationIpv4Ip:RoutesV2DestinationIpv4Ip": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "The prefix length of the network to which this host IPv4/IPv6 address belongs.\n"
        },
        "value": {
          "type": "string",
          "description": "value of IP address\n"
        }
      },
      "type": "object",
      "required": [
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "prefixLength",
            "value"
          ]
        }
      }
    },
    "nutanix:index/RoutesV2DestinationIpv6:RoutesV2DestinationIpv6": {
      "properties": {
        "ip": {
          "$ref": "#/types/nutanix:index%2FRoutesV2DestinationIpv6Ip:RoutesV2DestinationIpv6Ip"
        },
        "prefixLength": {
          "type": "integer",
          "description": "The prefix length of the network to which this host IPv4/IPv6 address belongs.\n"
        }
      },
      "type": "object",
      "required": [
        "ip"
      ],
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "ip",
            "prefixLength"
          ]
        }
      }
    },
    "nutanix:index/RoutesV2DestinationIpv6Ip:RoutesV2DestinationIpv6Ip": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "The prefix length of the network to which this host IPv4/IPv6 address belongs.\n"
        },
        "value": {
          "type": "string",
          "description": "value of IP address\n"
        }
      },
      "type": "object",
      "required": [
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "prefixLength",
            "value"
          ]
        }
      }
    },
    "nutanix:index/RoutesV2Link:RoutesV2Link": {
      "properties": {
        "href": {
          "type": "string",
          "description": "- The URL at which the entity described by the link can be accessed.\n"
        },
        "rel": {
          "type": "string",
          "description": "- A name that identifies the relationship of the link to the object that is returned by the URL. The unique value of \"self\" identifies the URL for the object.\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "href",
            "rel"
          ]
        }
      }
    },
    "nutanix:index/RoutesV2Metadata:RoutesV2Metadata": {
      "properties": {
        "categoryIds": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "A list of globally unique identifiers that represent all the categories the resource is associated with.\n"
        },
        "ownerReferenceId": {
          "type": "string",
          "description": "A globally unique identifier that represents the owner of this resource.\n"
        },
        "ownerUserName": {
          "type": "string",
          "description": "The userName of the owner of this resource.\n"
        },
        "projectName": {
          "type": "string",
          "description": "The name of the project this resource belongs to.\n"
        },
        "projectReferenceId": {
          "type": "string",
          "description": "A globally unique identifier that represents the project this resource belongs to.\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "categoryIds",
            "ownerReferenceId",
            "ownerUserName",
            "projectName",
            "projectReferenceId"
          ]
        }
      }
    },
    "nutanix:index/RoutesV2NextHop:RoutesV2NextHop": {
      "properties": {
        "nextHopIpAddresses": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FRoutesV2NextHopNextHopIpAddress:RoutesV2NextHopNextHopIpAddress"
          }
        },
        "nextHopName": {
          "type": "string"
        },
        "nextHopReference": {
          "type": "string"
        },
        "nextHopType": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "nextHopType"
      ],
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "nextHopIpAddresses",
            "nextHopName",
            "nextHopReference",
            "nextHopType"
          ]
        }
      }
    },
    "nutanix:index/RoutesV2NextHopNextHopIpAddress:RoutesV2NextHopNextHopIpAddress": {
      "properties": {
        "ipv4": {
          "$ref": "#/types/nutanix:index%2FRoutesV2NextHopNextHopIpAddressIpv4:RoutesV2NextHopNextHopIpAddressIpv4",
          "description": "IPv4 Address\n"
        },
        "ipv6": {
          "$ref": "#/types/nutanix:index%2FRoutesV2NextHopNextHopIpAddressIpv6:RoutesV2NextHopNextHopIpAddressIpv6",
          "description": "IPv6 Address\n"
        }
      },
      "type": "object",
      "required": [
        "ipv4",
        "ipv6"
      ]
    },
    "nutanix:index/RoutesV2NextHopNextHopIpAddressIpv4:RoutesV2NextHopNextHopIpAddressIpv4": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "The prefix length of the network to which this host IPv4/IPv6 address belongs.\n"
        },
        "value": {
          "type": "string",
          "description": "value of IP address\n"
        }
      },
      "type": "object",
      "required": [
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "prefixLength",
            "value"
          ]
        }
      }
    },
    "nutanix:index/RoutesV2NextHopNextHopIpAddressIpv6:RoutesV2NextHopNextHopIpAddressIpv6": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "The prefix length of the network to which this host IPv4/IPv6 address belongs.\n"
        },
        "value": {
          "type": "string",
          "description": "value of IP address\n"
        }
      },
      "type": "object",
      "required": [
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "prefixLength",
            "value"
          ]
        }
      }
    },
    "nutanix:index/SamlIdentityProvidersV2IdpMetadata:SamlIdentityProvidersV2IdpMetadata": {
      "properties": {
        "certificate": {
          "type": "string"
        },
        "entityId": {
          "type": "string"
        },
        "errorUrl": {
          "type": "string"
        },
        "loginUrl": {
          "type": "string"
        },
        "logoutUrl": {
          "type": "string"
        },
        "nameIdPolicyFormat": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "certificate",
        "entityId",
        "loginUrl"
      ]
    },
    "nutanix:index/SelfServiceAppPatchCategory:SelfServiceAppPatchCategory": {
      "properties": {
        "operation": {
          "type": "string",
          "description": "- (Optional) The operation to perform on the category. (e.g. \"add\", \"delete\")\n"
        },
        "value": {
          "type": "string",
          "description": "- (Optional, string) The value of the category. A Key:Value pair (e.g. \"AppType:Oracle_DB\"). There should not be any space in value.\n"
        }
      },
      "type": "object",
      "required": [
        "operation"
      ]
    },
    "nutanix:index/SelfServiceAppPatchDisk:SelfServiceAppPatchDisk": {
      "properties": {
        "diskSizeMib": {
          "type": "integer",
          "description": "- (Optional, integer) The size of the disk to allocate (in MiB).\n"
        },
        "operation": {
          "type": "string",
          "description": "- (Optional) The operation to perform on the category. (e.g. \"add\", \"delete\")\n"
        }
      },
      "type": "object",
      "required": [
        "operation"
      ]
    },
    "nutanix:index/SelfServiceAppPatchNic:SelfServiceAppPatchNic": {
      "properties": {
        "index": {
          "type": "integer",
          "description": "- (Optional, string) The index of the NIC. A dummy string for now.\n"
        },
        "operation": {
          "type": "string",
          "description": "- (Optional) The operation to perform on the category. (e.g. \"add\", \"delete\")\n"
        },
        "subnetUuid": {
          "type": "string",
          "description": "- (Optional, string) The UUID of the subnet to which the NIC should be attached.\n"
        }
      },
      "type": "object"
    },
    "nutanix:index/SelfServiceAppPatchVmConfig:SelfServiceAppPatchVmConfig": {
      "properties": {
        "memorySizeMib": {
          "type": "integer",
          "description": "- (Optional, integer) The amount of memory (in MiB) to allocate for the VM.\n"
        },
        "numSockets": {
          "type": "integer",
          "description": "- (Optional, integer) The number of vCPUs to assign.\n"
        },
        "numVcpusPerSocket": {
          "type": "integer",
          "description": "- (Optional, integer) The number of cores per vCPU to assign to the VM.\n"
        }
      },
      "type": "object"
    },
    "nutanix:index/SelfServiceAppProvisionAction:SelfServiceAppProvisionAction": {
      "properties": {
        "description": {
          "type": "string",
          "description": "description of the action\n"
        },
        "name": {
          "type": "string",
          "description": "name of action.\n"
        },
        "uuid": {
          "type": "string",
          "description": "UUID of the action.\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "description",
            "name",
            "uuid"
          ]
        }
      }
    },
    "nutanix:index/SelfServiceAppProvisionAppSummary:SelfServiceAppProvisionAppSummary": {
      "properties": {
        "applicationProfile": {
          "type": "string",
          "description": "The profile assigned to the application.\n"
        },
        "applicationUuid": {
          "type": "string",
          "description": "The UUID of the application.\n"
        },
        "blueprint": {
          "type": "string",
          "description": "The blueprint associated with the application.\n"
        },
        "createdOn": {
          "type": "string",
          "description": "The timestamp when the application was created.\n"
        },
        "lastUpdatedOn": {
          "type": "string",
          "description": "The timestamp when the application was last updated.\n"
        },
        "owner": {
          "type": "string",
          "description": "The owner of the application.\n"
        },
        "project": {
          "type": "string",
          "description": "The project associated with the application.\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "applicationProfile",
            "applicationUuid",
            "blueprint",
            "createdOn",
            "lastUpdatedOn",
            "owner",
            "project"
          ]
        }
      }
    },
    "nutanix:index/SelfServiceAppProvisionRuntimeEditable:SelfServiceAppProvisionRuntimeEditable": {
      "properties": {
        "actionLists": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FSelfServiceAppProvisionRuntimeEditableActionList:SelfServiceAppProvisionRuntimeEditableActionList"
          },
          "description": "-  A list of actions associated with the blueprint. Each action contains runtime specifications (defined in RuntimeSpec).\n"
        },
        "appProfile": {
          "$ref": "#/types/nutanix:index%2FSelfServiceAppProvisionRuntimeEditableAppProfile:SelfServiceAppProvisionRuntimeEditableAppProfile",
          "description": "-  A list of application profiles associated with the blueprint. Each application profile contains runtime specifications (defined in RuntimeSpec).\n"
        },
        "credentialLists": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FSelfServiceAppProvisionRuntimeEditableCredentialList:SelfServiceAppProvisionRuntimeEditableCredentialList"
          },
          "description": "-  A list of credentials associated with the blueprint. Each credential contains runtime specifications (defined in RuntimeSpec).\n"
        },
        "deploymentLists": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FSelfServiceAppProvisionRuntimeEditableDeploymentList:SelfServiceAppProvisionRuntimeEditableDeploymentList"
          },
          "description": "-  A list of deployments associated with the blueprint. Each deployment contains runtime specifications (defined in RuntimeSpec).\n"
        },
        "packageLists": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FSelfServiceAppProvisionRuntimeEditablePackageList:SelfServiceAppProvisionRuntimeEditablePackageList"
          },
          "description": "-  A list of packages associated with the blueprint. Each package contains runtime specifications (defined in RuntimeSpec).\n"
        },
        "restoreConfigLists": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FSelfServiceAppProvisionRuntimeEditableRestoreConfigList:SelfServiceAppProvisionRuntimeEditableRestoreConfigList"
          },
          "description": "-  A list of restore configurations associated with the blueprint. Each restore configuration contains runtime specifications (defined in RuntimeSpec).\n"
        },
        "serviceLists": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FSelfServiceAppProvisionRuntimeEditableServiceList:SelfServiceAppProvisionRuntimeEditableServiceList"
          },
          "description": "- A list of services associated with the blueprint. Each service contains runtime specifications (defined in RuntimeSpec).\n"
        },
        "snapshotConfigLists": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FSelfServiceAppProvisionRuntimeEditableSnapshotConfigList:SelfServiceAppProvisionRuntimeEditableSnapshotConfigList"
          },
          "description": "- A list of snapshot configurations associated with the blueprint. Each snapshot configuration contains runtime specifications (defined in RuntimeSpec).\n"
        },
        "substrateLists": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FSelfServiceAppProvisionRuntimeEditableSubstrateList:SelfServiceAppProvisionRuntimeEditableSubstrateList"
          },
          "description": "- A list of substrates associated with the blueprint. Each substrate contains runtime specifications (defined in RuntimeSpec).\n"
        },
        "taskLists": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FSelfServiceAppProvisionRuntimeEditableTaskList:SelfServiceAppProvisionRuntimeEditableTaskList"
          },
          "description": "- A list of tasks associated with the blueprint. Each task contains runtime specifications (defined in RuntimeSpec).\n"
        },
        "variableLists": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FSelfServiceAppProvisionRuntimeEditableVariableList:SelfServiceAppProvisionRuntimeEditableVariableList"
          },
          "description": "- A list of variables associated with the blueprint. Each variable contains runtime specifications (defined in RuntimeSpec).\n"
        }
      },
      "type": "object"
    },
    "nutanix:index/SelfServiceAppProvisionRuntimeEditableActionList:SelfServiceAppProvisionRuntimeEditableActionList": {
      "properties": {
        "context": {
          "type": "string",
          "description": "(Optional, Computed) The context in which the runtime specification is applied. It is full address of where the entity in target is present.\n"
        },
        "description": {
          "type": "string",
          "description": "description of the action\n"
        },
        "name": {
          "type": "string",
          "description": "name of action.\n"
        },
        "type": {
          "type": "string",
          "description": "-   The type of network interface.\n"
        },
        "uuid": {
          "type": "string",
          "description": "UUID of the action.\n"
        },
        "value": {
          "type": "string",
          "description": "(Optional, Computed) The value associated with the runtime specification. This can be a string value representing a configuration or setting.\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "context",
            "description",
            "name",
            "type",
            "uuid",
            "value"
          ]
        }
      }
    },
    "nutanix:index/SelfServiceAppProvisionRuntimeEditableAppProfile:SelfServiceAppProvisionRuntimeEditableAppProfile": {
      "properties": {
        "context": {
          "type": "string",
          "description": "(Optional, Computed) The context in which the runtime specification is applied. It is full address of where the entity in target is present.\n"
        },
        "description": {
          "type": "string",
          "description": "description of the action\n"
        },
        "name": {
          "type": "string",
          "description": "name of action.\n"
        },
        "type": {
          "type": "string",
          "description": "-   The type of network interface.\n"
        },
        "uuid": {
          "type": "string",
          "description": "UUID of the action.\n"
        },
        "value": {
          "type": "string",
          "description": "(Optional, Computed) The value associated with the runtime specification. This can be a string value representing a configuration or setting.\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "context",
            "description",
            "name",
            "type",
            "uuid",
            "value"
          ]
        }
      }
    },
    "nutanix:index/SelfServiceAppProvisionRuntimeEditableCredentialList:SelfServiceAppProvisionRuntimeEditableCredentialList": {
      "properties": {
        "context": {
          "type": "string",
          "description": "(Optional, Computed) The context in which the runtime specification is applied. It is full address of where the entity in target is present.\n"
        },
        "description": {
          "type": "string",
          "description": "description of the action\n"
        },
        "name": {
          "type": "string",
          "description": "name of action.\n"
        },
        "type": {
          "type": "string",
          "description": "-   The type of network interface.\n"
        },
        "uuid": {
          "type": "string",
          "description": "UUID of the action.\n"
        },
        "value": {
          "type": "string",
          "description": "(Optional, Computed) The value associated with the runtime specification. This can be a string value representing a configuration or setting.\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "context",
            "description",
            "name",
            "type",
            "uuid",
            "value"
          ]
        }
      }
    },
    "nutanix:index/SelfServiceAppProvisionRuntimeEditableDeploymentList:SelfServiceAppProvisionRuntimeEditableDeploymentList": {
      "properties": {
        "context": {
          "type": "string",
          "description": "(Optional, Computed) The context in which the runtime specification is applied. It is full address of where the entity in target is present.\n"
        },
        "description": {
          "type": "string",
          "description": "description of the action\n"
        },
        "name": {
          "type": "string",
          "description": "name of action.\n"
        },
        "type": {
          "type": "string",
          "description": "-   The type of network interface.\n"
        },
        "uuid": {
          "type": "string",
          "description": "UUID of the action.\n"
        },
        "value": {
          "type": "string",
          "description": "(Optional, Computed) The value associated with the runtime specification. This can be a string value representing a configuration or setting.\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "context",
            "description",
            "name",
            "type",
            "uuid",
            "value"
          ]
        }
      }
    },
    "nutanix:index/SelfServiceAppProvisionRuntimeEditablePackageList:SelfServiceAppProvisionRuntimeEditablePackageList": {
      "properties": {
        "context": {
          "type": "string",
          "description": "(Optional, Computed) The context in which the runtime specification is applied. It is full address of where the entity in target is present.\n"
        },
        "description": {
          "type": "string",
          "description": "description of the action\n"
        },
        "name": {
          "type": "string",
          "description": "name of action.\n"
        },
        "type": {
          "type": "string",
          "description": "-   The type of network interface.\n"
        },
        "uuid": {
          "type": "string",
          "description": "UUID of the action.\n"
        },
        "value": {
          "type": "string",
          "description": "(Optional, Computed) The value associated with the runtime specification. This can be a string value representing a configuration or setting.\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "context",
            "description",
            "name",
            "type",
            "uuid",
            "value"
          ]
        }
      }
    },
    "nutanix:index/SelfServiceAppProvisionRuntimeEditableRestoreConfigList:SelfServiceAppProvisionRuntimeEditableRestoreConfigList": {
      "properties": {
        "context": {
          "type": "string",
          "description": "(Optional, Computed) The context in which the runtime specification is applied. It is full address of where the entity in target is present.\n"
        },
        "description": {
          "type": "string",
          "description": "description of the action\n"
        },
        "name": {
          "type": "string",
          "description": "name of action.\n"
        },
        "type": {
          "type": "string",
          "description": "-   The type of network interface.\n"
        },
        "uuid": {
          "type": "string",
          "description": "UUID of the action.\n"
        },
        "value": {
          "type": "string",
          "description": "(Optional, Computed) The value associated with the runtime specification. This can be a string value representing a configuration or setting.\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "context",
            "description",
            "name",
            "type",
            "uuid",
            "value"
          ]
        }
      }
    },
    "nutanix:index/SelfServiceAppProvisionRuntimeEditableServiceList:SelfServiceAppProvisionRuntimeEditableServiceList": {
      "properties": {
        "context": {
          "type": "string",
          "description": "(Optional, Computed) The context in which the runtime specification is applied. It is full address of where the entity in target is present.\n"
        },
        "description": {
          "type": "string",
          "description": "description of the action\n"
        },
        "name": {
          "type": "string",
          "description": "name of action.\n"
        },
        "type": {
          "type": "string",
          "description": "-   The type of network interface.\n"
        },
        "uuid": {
          "type": "string",
          "description": "UUID of the action.\n"
        },
        "value": {
          "type": "string",
          "description": "(Optional, Computed) The value associated with the runtime specification. This can be a string value representing a configuration or setting.\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "context",
            "description",
            "name",
            "type",
            "uuid",
            "value"
          ]
        }
      }
    },
    "nutanix:index/SelfServiceAppProvisionRuntimeEditableSnapshotConfigList:SelfServiceAppProvisionRuntimeEditableSnapshotConfigList": {
      "properties": {
        "context": {
          "type": "string",
          "description": "(Optional, Computed) The context in which the runtime specification is applied. It is full address of where the entity in target is present.\n"
        },
        "description": {
          "type": "string",
          "description": "description of the action\n"
        },
        "name": {
          "type": "string",
          "description": "name of action.\n"
        },
        "type": {
          "type": "string",
          "description": "-   The type of network interface.\n"
        },
        "uuid": {
          "type": "string",
          "description": "UUID of the action.\n"
        },
        "value": {
          "type": "string",
          "description": "(Optional, Computed) The value associated with the runtime specification. This can be a string value representing a configuration or setting.\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "context",
            "description",
            "name",
            "type",
            "uuid",
            "value"
          ]
        }
      }
    },
    "nutanix:index/SelfServiceAppProvisionRuntimeEditableSubstrateList:SelfServiceAppProvisionRuntimeEditableSubstrateList": {
      "properties": {
        "context": {
          "type": "string",
          "description": "(Optional, Computed) The context in which the runtime specification is applied. It is full address of where the entity in target is present.\n"
        },
        "description": {
          "type": "string",
          "description": "description of the action\n"
        },
        "name": {
          "type": "string",
          "description": "name of action.\n"
        },
        "type": {
          "type": "string",
          "description": "-   The type of network interface.\n"
        },
        "uuid": {
          "type": "string",
          "description": "UUID of the action.\n"
        },
        "value": {
          "type": "string",
          "description": "(Optional, Computed) The value associated with the runtime specification. This can be a string value representing a configuration or setting.\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "context",
            "description",
            "name",
            "type",
            "uuid",
            "value"
          ]
        }
      }
    },
    "nutanix:index/SelfServiceAppProvisionRuntimeEditableTaskList:SelfServiceAppProvisionRuntimeEditableTaskList": {
      "properties": {
        "context": {
          "type": "string",
          "description": "(Optional, Computed) The context in which the runtime specification is applied. It is full address of where the entity in target is present.\n"
        },
        "description": {
          "type": "string",
          "description": "description of the action\n"
        },
        "name": {
          "type": "string",
          "description": "name of action.\n"
        },
        "type": {
          "type": "string",
          "description": "-   The type of network interface.\n"
        },
        "uuid": {
          "type": "string",
          "description": "UUID of the action.\n"
        },
        "value": {
          "type": "string",
          "description": "(Optional, Computed) The value associated with the runtime specification. This can be a string value representing a configuration or setting.\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "context",
            "description",
            "name",
            "type",
            "uuid",
            "value"
          ]
        }
      }
    },
    "nutanix:index/SelfServiceAppProvisionRuntimeEditableVariableList:SelfServiceAppProvisionRuntimeEditableVariableList": {
      "properties": {
        "context": {
          "type": "string",
          "description": "(Optional, Computed) The context in which the runtime specification is applied. It is full address of where the entity in target is present.\n"
        },
        "description": {
          "type": "string",
          "description": "description of the action\n"
        },
        "name": {
          "type": "string",
          "description": "name of action.\n"
        },
        "type": {
          "type": "string",
          "description": "-   The type of network interface.\n"
        },
        "uuid": {
          "type": "string",
          "description": "UUID of the action.\n"
        },
        "value": {
          "type": "string",
          "description": "(Optional, Computed) The value associated with the runtime specification. This can be a string value representing a configuration or setting.\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "context",
            "description",
            "name",
            "type",
            "uuid",
            "value"
          ]
        }
      }
    },
    "nutanix:index/SelfServiceAppProvisionVm:SelfServiceAppProvisionVm": {
      "properties": {
        "categories": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          },
          "description": "-  A map of categories applied to the VM. Each key is a category name, and the value is the category value.\n"
        },
        "clusterInfos": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FSelfServiceAppProvisionVmClusterInfo:SelfServiceAppProvisionVmClusterInfo"
          },
          "description": "-  Cluster-related information for the VM.\n"
        },
        "configurations": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FSelfServiceAppProvisionVmConfiguration:SelfServiceAppProvisionVmConfiguration"
          },
          "description": "-  Configuration details for the VM.\n"
        },
        "nics": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FSelfServiceAppProvisionVmNic:SelfServiceAppProvisionVmNic"
          },
          "description": "-  A list of network interfaces attached to the VM.\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "categories",
            "clusterInfos",
            "configurations",
            "nics"
          ]
        }
      }
    },
    "nutanix:index/SelfServiceAppProvisionVmClusterInfo:SelfServiceAppProvisionVmClusterInfo": {
      "properties": {
        "clusterName": {
          "type": "string",
          "description": "-   The name of the cluster.\n"
        },
        "clusterUuid": {
          "type": "string",
          "description": "-   The UUID of the cluster.\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "clusterName",
            "clusterUuid"
          ]
        }
      }
    },
    "nutanix:index/SelfServiceAppProvisionVmConfiguration:SelfServiceAppProvisionVmConfiguration": {
      "properties": {
        "cores": {
          "type": "number",
          "description": "-   Number of CPU cores.\n"
        },
        "image": {
          "type": "string",
          "description": "-   The VM image used.\n"
        },
        "ipAddress": {
          "type": "string",
          "description": "-   IP address of the VM.\n"
        },
        "memory": {
          "type": "number",
          "description": "-  Memory allocated to the VM.\n"
        },
        "name": {
          "type": "string",
          "description": "name of action.\n"
        },
        "vcpus": {
          "type": "number",
          "description": "-   Number of virtual CPUs assigned to the VM.\n"
        },
        "vmUuid": {
          "type": "string",
          "description": "-   The UUID of the VM.\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "cores",
            "image",
            "ipAddress",
            "memory",
            "name",
            "vcpus",
            "vmUuid"
          ]
        }
      }
    },
    "nutanix:index/SelfServiceAppProvisionVmNic:SelfServiceAppProvisionVmNic": {
      "properties": {
        "macAddress": {
          "type": "string",
          "description": "-   The MAC address of the VM's network interface.\n"
        },
        "subnet": {
          "type": "string",
          "description": "-   The subnet the VM's network interface is attached to.\n"
        },
        "type": {
          "type": "string",
          "description": "-   The type of network interface.\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "macAddress",
            "subnet",
            "type"
          ]
        }
      }
    },
    "nutanix:index/ServiceGroupServiceList:ServiceGroupServiceList": {
      "properties": {
        "icmpTypeCodeLists": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FServiceGroupServiceListIcmpTypeCodeList:ServiceGroupServiceListIcmpTypeCodeList"
          },
          "description": "- (Optional) ICMP type code list\n"
        },
        "protocol": {
          "type": "string",
          "description": "- (Optional) The UserPrincipalName of the user from the directory service.\n"
        },
        "tcpPortRangeLists": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FServiceGroupServiceListTcpPortRangeList:ServiceGroupServiceListTcpPortRangeList"
          },
          "description": "- (Optional) TCP Port range list\n"
        },
        "udpPortRangeLists": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FServiceGroupServiceListUdpPortRangeList:ServiceGroupServiceListUdpPortRangeList"
          },
          "description": "- (Optional) UDP port range list\n"
        }
      },
      "type": "object"
    },
    "nutanix:index/ServiceGroupServiceListIcmpTypeCodeList:ServiceGroupServiceListIcmpTypeCodeList": {
      "properties": {
        "code": {
          "type": "string",
          "description": "- (Optional) Code as text\n"
        },
        "type": {
          "type": "string",
          "description": "- (Optional) Type as text\n"
        }
      },
      "type": "object"
    },
    "nutanix:index/ServiceGroupServiceListTcpPortRangeList:ServiceGroupServiceListTcpPortRangeList": {
      "properties": {
        "endPort": {
          "type": "integer"
        },
        "startPort": {
          "type": "integer"
        }
      },
      "type": "object"
    },
    "nutanix:index/ServiceGroupServiceListUdpPortRangeList:ServiceGroupServiceListUdpPortRangeList": {
      "properties": {
        "endPort": {
          "type": "integer"
        },
        "startPort": {
          "type": "integer"
        }
      },
      "type": "object"
    },
    "nutanix:index/ServiceGroupsV2IcmpService:ServiceGroupsV2IcmpService": {
      "properties": {
        "code": {
          "type": "integer",
          "description": "Icmp service Code. Ignore this field if Code has to be ANY\n"
        },
        "isAllAllowed": {
          "type": "boolean",
          "description": "Set this field to true if both Type and Code is ANY. Default is False.\n"
        },
        "type": {
          "type": "integer",
          "description": "Icmp service Type. Ignore this field if Type has to be ANY.\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "isAllAllowed"
          ]
        }
      }
    },
    "nutanix:index/ServiceGroupsV2Link:ServiceGroupsV2Link": {
      "properties": {
        "href": {
          "type": "string"
        },
        "rel": {
          "type": "string"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "href",
            "rel"
          ]
        }
      }
    },
    "nutanix:index/ServiceGroupsV2TcpService:ServiceGroupsV2TcpService": {
      "properties": {
        "endPort": {
          "type": "integer",
          "description": "end port\n"
        },
        "startPort": {
          "type": "integer",
          "description": "start port\n"
        }
      },
      "type": "object",
      "required": [
        "endPort",
        "startPort"
      ]
    },
    "nutanix:index/ServiceGroupsV2UdpService:ServiceGroupsV2UdpService": {
      "properties": {
        "endPort": {
          "type": "integer",
          "description": "end port\n"
        },
        "startPort": {
          "type": "integer",
          "description": "start port\n"
        }
      },
      "type": "object",
      "required": [
        "endPort",
        "startPort"
      ]
    },
    "nutanix:index/StaticRoutesDefaultRouteNexthop:StaticRoutesDefaultRouteNexthop": {
      "properties": {
        "externalSubnetReferenceUuid": {
          "type": "string",
          "description": "Reference to a subnet.\n"
        }
      },
      "type": "object"
    },
    "nutanix:index/StaticRoutesStaticRoutesList:StaticRoutesStaticRoutesList": {
      "properties": {
        "destination": {
          "type": "string",
          "description": "Destination ip with prefix.\n"
        },
        "externalSubnetReferenceUuid": {
          "type": "string",
          "description": "Reference to a subnet. Supported with 2022.x .\n"
        },
        "vpnConnectionReferenceUuid": {
          "type": "string",
          "description": "Reference to a vpn connection.\n"
        }
      },
      "type": "object",
      "required": [
        "destination"
      ]
    },
    "nutanix:index/StorageContainersV2Link:StorageContainersV2Link": {
      "properties": {
        "href": {
          "type": "string"
        },
        "rel": {
          "type": "string"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "href",
            "rel"
          ]
        }
      }
    },
    "nutanix:index/StorageContainersV2NfsWhitelistAddress:StorageContainersV2NfsWhitelistAddress": {
      "properties": {
        "fqdns": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FStorageContainersV2NfsWhitelistAddressFqdn:StorageContainersV2NfsWhitelistAddressFqdn"
          },
          "description": "Reference to address configuration\n"
        },
        "ipv4s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FStorageContainersV2NfsWhitelistAddressIpv4:StorageContainersV2NfsWhitelistAddressIpv4"
          },
          "description": "Reference to address configuration\n"
        },
        "ipv6s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FStorageContainersV2NfsWhitelistAddressIpv6:StorageContainersV2NfsWhitelistAddressIpv6"
          },
          "description": "Reference to address configuration\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "fqdns",
            "ipv4s",
            "ipv6s"
          ]
        }
      }
    },
    "nutanix:index/StorageContainersV2NfsWhitelistAddressFqdn:StorageContainersV2NfsWhitelistAddressFqdn": {
      "properties": {
        "value": {
          "type": "string",
          "description": "value of fqdn address\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "value"
          ]
        }
      }
    },
    "nutanix:index/StorageContainersV2NfsWhitelistAddressIpv4:StorageContainersV2NfsWhitelistAddressIpv4": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "The prefix length of the network to which this host IPv4/IPv6 address belongs.\n"
        },
        "value": {
          "type": "string",
          "description": "value of fqdn address\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "prefixLength",
            "value"
          ]
        }
      }
    },
    "nutanix:index/StorageContainersV2NfsWhitelistAddressIpv6:StorageContainersV2NfsWhitelistAddressIpv6": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "The prefix length of the network to which this host IPv4/IPv6 address belongs.\n"
        },
        "value": {
          "type": "string",
          "description": "value of fqdn address\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "prefixLength",
            "value"
          ]
        }
      }
    },
    "nutanix:index/SubnetCategory:SubnetCategory": {
      "properties": {
        "name": {
          "type": "string",
          "description": "- (Optional) Subnet name (Readonly).\n"
        },
        "value": {
          "type": "string",
          "description": "- value of the key.\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "name",
            "value"
          ]
        }
      }
    },
    "nutanix:index/SubnetV2DhcpOption:SubnetV2DhcpOption": {
      "properties": {
        "bootFileName": {
          "type": "string"
        },
        "domainName": {
          "type": "string"
        },
        "domainNameServers": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FSubnetV2DhcpOptionDomainNameServer:SubnetV2DhcpOptionDomainNameServer"
          }
        },
        "ntpServers": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FSubnetV2DhcpOptionNtpServer:SubnetV2DhcpOptionNtpServer"
          }
        },
        "searchDomains": {
          "type": "array",
          "items": {
            "type": "string"
          }
        },
        "tftpServerName": {
          "type": "string"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "bootFileName",
            "domainName",
            "domainNameServers",
            "ntpServers",
            "searchDomains",
            "tftpServerName"
          ]
        }
      }
    },
    "nutanix:index/SubnetV2DhcpOptionDomainNameServer:SubnetV2DhcpOptionDomainNameServer": {
      "properties": {
        "ipv4s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FSubnetV2DhcpOptionDomainNameServerIpv4:SubnetV2DhcpOptionDomainNameServerIpv4"
          }
        },
        "ipv6s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FSubnetV2DhcpOptionDomainNameServerIpv6:SubnetV2DhcpOptionDomainNameServerIpv6"
          }
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "ipv4s",
            "ipv6s"
          ]
        }
      }
    },
    "nutanix:index/SubnetV2DhcpOptionDomainNameServerIpv4:SubnetV2DhcpOptionDomainNameServerIpv4": {
      "properties": {
        "prefixLength": {
          "type": "integer"
        },
        "value": {
          "type": "string"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "prefixLength",
            "value"
          ]
        }
      }
    },
    "nutanix:index/SubnetV2DhcpOptionDomainNameServerIpv6:SubnetV2DhcpOptionDomainNameServerIpv6": {
      "properties": {
        "prefixLength": {
          "type": "integer"
        },
        "value": {
          "type": "string"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "prefixLength",
            "value"
          ]
        }
      }
    },
    "nutanix:index/SubnetV2DhcpOptionNtpServer:SubnetV2DhcpOptionNtpServer": {
      "properties": {
        "ipv4s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FSubnetV2DhcpOptionNtpServerIpv4:SubnetV2DhcpOptionNtpServerIpv4"
          }
        },
        "ipv6s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FSubnetV2DhcpOptionNtpServerIpv6:SubnetV2DhcpOptionNtpServerIpv6"
          }
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "ipv4s",
            "ipv6s"
          ]
        }
      }
    },
    "nutanix:index/SubnetV2DhcpOptionNtpServerIpv4:SubnetV2DhcpOptionNtpServerIpv4": {
      "properties": {
        "prefixLength": {
          "type": "integer"
        },
        "value": {
          "type": "string"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "prefixLength",
            "value"
          ]
        }
      }
    },
    "nutanix:index/SubnetV2DhcpOptionNtpServerIpv6:SubnetV2DhcpOptionNtpServerIpv6": {
      "properties": {
        "prefixLength": {
          "type": "integer"
        },
        "value": {
          "type": "string"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "prefixLength",
            "value"
          ]
        }
      }
    },
    "nutanix:index/SubnetV2DynamicIpAddress:SubnetV2DynamicIpAddress": {
      "properties": {
        "ipv4s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FSubnetV2DynamicIpAddressIpv4:SubnetV2DynamicIpAddressIpv4"
          }
        },
        "ipv6s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FSubnetV2DynamicIpAddressIpv6:SubnetV2DynamicIpAddressIpv6"
          }
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "ipv4s",
            "ipv6s"
          ]
        }
      }
    },
    "nutanix:index/SubnetV2DynamicIpAddressIpv4:SubnetV2DynamicIpAddressIpv4": {
      "properties": {
        "prefixLength": {
          "type": "integer"
        },
        "value": {
          "type": "string"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "prefixLength",
            "value"
          ]
        }
      }
    },
    "nutanix:index/SubnetV2DynamicIpAddressIpv6:SubnetV2DynamicIpAddressIpv6": {
      "properties": {
        "prefixLength": {
          "type": "integer"
        },
        "value": {
          "type": "string"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "prefixLength",
            "value"
          ]
        }
      }
    },
    "nutanix:index/SubnetV2IpConfig:SubnetV2IpConfig": {
      "properties": {
        "ipv4s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FSubnetV2IpConfigIpv4:SubnetV2IpConfigIpv4"
          }
        },
        "ipv6s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FSubnetV2IpConfigIpv6:SubnetV2IpConfigIpv6"
          }
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "ipv4s",
            "ipv6s"
          ]
        }
      }
    },
    "nutanix:index/SubnetV2IpConfigIpv4:SubnetV2IpConfigIpv4": {
      "properties": {
        "defaultGatewayIps": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FSubnetV2IpConfigIpv4DefaultGatewayIp:SubnetV2IpConfigIpv4DefaultGatewayIp"
          }
        },
        "dhcpServerAddresses": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FSubnetV2IpConfigIpv4DhcpServerAddress:SubnetV2IpConfigIpv4DhcpServerAddress"
          }
        },
        "ipSubnets": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FSubnetV2IpConfigIpv4IpSubnet:SubnetV2IpConfigIpv4IpSubnet"
          }
        },
        "poolLists": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FSubnetV2IpConfigIpv4PoolList:SubnetV2IpConfigIpv4PoolList"
          }
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "defaultGatewayIps",
            "dhcpServerAddresses",
            "ipSubnets",
            "poolLists"
          ]
        }
      }
    },
    "nutanix:index/SubnetV2IpConfigIpv4DefaultGatewayIp:SubnetV2IpConfigIpv4DefaultGatewayIp": {
      "properties": {
        "prefixLength": {
          "type": "integer"
        },
        "value": {
          "type": "string"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "prefixLength",
            "value"
          ]
        }
      }
    },
    "nutanix:index/SubnetV2IpConfigIpv4DhcpServerAddress:SubnetV2IpConfigIpv4DhcpServerAddress": {
      "properties": {
        "prefixLength": {
          "type": "integer"
        },
        "value": {
          "type": "string"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "prefixLength",
            "value"
          ]
        }
      }
    },
    "nutanix:index/SubnetV2IpConfigIpv4IpSubnet:SubnetV2IpConfigIpv4IpSubnet": {
      "properties": {
        "ips": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FSubnetV2IpConfigIpv4IpSubnetIp:SubnetV2IpConfigIpv4IpSubnetIp"
          }
        },
        "prefixLength": {
          "type": "integer"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "ips",
            "prefixLength"
          ]
        }
      }
    },
    "nutanix:index/SubnetV2IpConfigIpv4IpSubnetIp:SubnetV2IpConfigIpv4IpSubnetIp": {
      "properties": {
        "prefixLength": {
          "type": "integer"
        },
        "value": {
          "type": "string"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "prefixLength",
            "value"
          ]
        }
      }
    },
    "nutanix:index/SubnetV2IpConfigIpv4PoolList:SubnetV2IpConfigIpv4PoolList": {
      "properties": {
        "endIps": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FSubnetV2IpConfigIpv4PoolListEndIp:SubnetV2IpConfigIpv4PoolListEndIp"
          }
        },
        "startIps": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FSubnetV2IpConfigIpv4PoolListStartIp:SubnetV2IpConfigIpv4PoolListStartIp"
          }
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "endIps",
            "startIps"
          ]
        }
      }
    },
    "nutanix:index/SubnetV2IpConfigIpv4PoolListEndIp:SubnetV2IpConfigIpv4PoolListEndIp": {
      "properties": {
        "prefixLength": {
          "type": "integer"
        },
        "value": {
          "type": "string"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "prefixLength",
            "value"
          ]
        }
      }
    },
    "nutanix:index/SubnetV2IpConfigIpv4PoolListStartIp:SubnetV2IpConfigIpv4PoolListStartIp": {
      "properties": {
        "prefixLength": {
          "type": "integer"
        },
        "value": {
          "type": "string"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "prefixLength",
            "value"
          ]
        }
      }
    },
    "nutanix:index/SubnetV2IpConfigIpv6:SubnetV2IpConfigIpv6": {
      "properties": {
        "defaultGatewayIps": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FSubnetV2IpConfigIpv6DefaultGatewayIp:SubnetV2IpConfigIpv6DefaultGatewayIp"
          }
        },
        "dhcpServerAddresses": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FSubnetV2IpConfigIpv6DhcpServerAddress:SubnetV2IpConfigIpv6DhcpServerAddress"
          }
        },
        "ipSubnets": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FSubnetV2IpConfigIpv6IpSubnet:SubnetV2IpConfigIpv6IpSubnet"
          }
        },
        "poolLists": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FSubnetV2IpConfigIpv6PoolList:SubnetV2IpConfigIpv6PoolList"
          }
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "defaultGatewayIps",
            "dhcpServerAddresses",
            "ipSubnets",
            "poolLists"
          ]
        }
      }
    },
    "nutanix:index/SubnetV2IpConfigIpv6DefaultGatewayIp:SubnetV2IpConfigIpv6DefaultGatewayIp": {
      "properties": {
        "prefixLength": {
          "type": "integer"
        },
        "value": {
          "type": "string"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "prefixLength",
            "value"
          ]
        }
      }
    },
    "nutanix:index/SubnetV2IpConfigIpv6DhcpServerAddress:SubnetV2IpConfigIpv6DhcpServerAddress": {
      "properties": {
        "prefixLength": {
          "type": "integer"
        },
        "value": {
          "type": "string"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "prefixLength",
            "value"
          ]
        }
      }
    },
    "nutanix:index/SubnetV2IpConfigIpv6IpSubnet:SubnetV2IpConfigIpv6IpSubnet": {
      "properties": {
        "ips": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FSubnetV2IpConfigIpv6IpSubnetIp:SubnetV2IpConfigIpv6IpSubnetIp"
          }
        },
        "prefixLength": {
          "type": "integer"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "ips",
            "prefixLength"
          ]
        }
      }
    },
    "nutanix:index/SubnetV2IpConfigIpv6IpSubnetIp:SubnetV2IpConfigIpv6IpSubnetIp": {
      "properties": {
        "prefixLength": {
          "type": "integer"
        },
        "value": {
          "type": "string"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "prefixLength",
            "value"
          ]
        }
      }
    },
    "nutanix:index/SubnetV2IpConfigIpv6PoolList:SubnetV2IpConfigIpv6PoolList": {
      "properties": {
        "endIps": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FSubnetV2IpConfigIpv6PoolListEndIp:SubnetV2IpConfigIpv6PoolListEndIp"
          }
        },
        "startIps": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FSubnetV2IpConfigIpv6PoolListStartIp:SubnetV2IpConfigIpv6PoolListStartIp"
          }
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "endIps",
            "startIps"
          ]
        }
      }
    },
    "nutanix:index/SubnetV2IpConfigIpv6PoolListEndIp:SubnetV2IpConfigIpv6PoolListEndIp": {
      "properties": {
        "prefixLength": {
          "type": "integer"
        },
        "value": {
          "type": "string"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "prefixLength",
            "value"
          ]
        }
      }
    },
    "nutanix:index/SubnetV2IpConfigIpv6PoolListStartIp:SubnetV2IpConfigIpv6PoolListStartIp": {
      "properties": {
        "prefixLength": {
          "type": "integer"
        },
        "value": {
          "type": "string"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "prefixLength",
            "value"
          ]
        }
      }
    },
    "nutanix:index/SubnetV2IpUsage:SubnetV2IpUsage": {
      "properties": {
        "ipPoolUsages": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FSubnetV2IpUsageIpPoolUsage:SubnetV2IpUsageIpPoolUsage"
          }
        },
        "numAssignedIps": {
          "type": "integer"
        },
        "numFreeIps": {
          "type": "integer"
        },
        "numMacs": {
          "type": "integer"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "ipPoolUsages",
            "numAssignedIps",
            "numFreeIps",
            "numMacs"
          ]
        }
      }
    },
    "nutanix:index/SubnetV2IpUsageIpPoolUsage:SubnetV2IpUsageIpPoolUsage": {
      "properties": {
        "numFreeIps": {
          "type": "integer"
        },
        "numTotalIps": {
          "type": "integer"
        },
        "ranges": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FSubnetV2IpUsageIpPoolUsageRange:SubnetV2IpUsageIpPoolUsageRange"
          }
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "numFreeIps",
            "numTotalIps",
            "ranges"
          ]
        }
      }
    },
    "nutanix:index/SubnetV2IpUsageIpPoolUsageRange:SubnetV2IpUsageIpPoolUsageRange": {
      "properties": {
        "endIps": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FSubnetV2IpUsageIpPoolUsageRangeEndIp:SubnetV2IpUsageIpPoolUsageRangeEndIp"
          }
        },
        "startIps": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FSubnetV2IpUsageIpPoolUsageRangeStartIp:SubnetV2IpUsageIpPoolUsageRangeStartIp"
          }
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "endIps",
            "startIps"
          ]
        }
      }
    },
    "nutanix:index/SubnetV2IpUsageIpPoolUsageRangeEndIp:SubnetV2IpUsageIpPoolUsageRangeEndIp": {
      "properties": {
        "prefixLength": {
          "type": "integer"
        },
        "value": {
          "type": "string"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "prefixLength",
            "value"
          ]
        }
      }
    },
    "nutanix:index/SubnetV2IpUsageIpPoolUsageRangeStartIp:SubnetV2IpUsageIpPoolUsageRangeStartIp": {
      "properties": {
        "prefixLength": {
          "type": "integer"
        },
        "value": {
          "type": "string"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "prefixLength",
            "value"
          ]
        }
      }
    },
    "nutanix:index/SubnetV2Link:SubnetV2Link": {
      "properties": {
        "href": {
          "type": "string"
        },
        "rel": {
          "type": "string"
        }
      },
      "type": "object"
    },
    "nutanix:index/SubnetV2ReservedIpAddress:SubnetV2ReservedIpAddress": {
      "properties": {
        "prefixLength": {
          "type": "integer"
        },
        "value": {
          "type": "string"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "prefixLength",
            "value"
          ]
        }
      }
    },
    "nutanix:index/SubnetV2VirtualSwitch:SubnetV2VirtualSwitch": {
      "properties": {
        "bondMode": {
          "type": "boolean"
        },
        "clusters": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FSubnetV2VirtualSwitchCluster:SubnetV2VirtualSwitchCluster"
          }
        },
        "description": {
          "type": "string"
        },
        "extId": {
          "type": "string"
        },
        "hasDeploymentError": {
          "type": "boolean"
        },
        "isDefault": {
          "type": "boolean"
        },
        "links": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FSubnetV2VirtualSwitchLink:SubnetV2VirtualSwitchLink"
          }
        },
        "metadatas": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FSubnetV2VirtualSwitchMetadata:SubnetV2VirtualSwitchMetadata"
          }
        },
        "mtu": {
          "type": "integer"
        },
        "name": {
          "type": "string"
        },
        "tenantId": {
          "type": "string"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "bondMode",
            "clusters",
            "description",
            "extId",
            "hasDeploymentError",
            "isDefault",
            "links",
            "metadatas",
            "mtu",
            "name",
            "tenantId"
          ]
        }
      }
    },
    "nutanix:index/SubnetV2VirtualSwitchCluster:SubnetV2VirtualSwitchCluster": {
      "properties": {
        "extId": {
          "type": "string"
        },
        "gatewayIpAddresses": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FSubnetV2VirtualSwitchClusterGatewayIpAddress:SubnetV2VirtualSwitchClusterGatewayIpAddress"
          }
        },
        "hosts": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FSubnetV2VirtualSwitchClusterHost:SubnetV2VirtualSwitchClusterHost"
          }
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "extId",
            "gatewayIpAddresses",
            "hosts"
          ]
        }
      }
    },
    "nutanix:index/SubnetV2VirtualSwitchClusterGatewayIpAddress:SubnetV2VirtualSwitchClusterGatewayIpAddress": {
      "properties": {
        "prefixLength": {
          "type": "integer"
        },
        "value": {
          "type": "string"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "prefixLength",
            "value"
          ]
        }
      }
    },
    "nutanix:index/SubnetV2VirtualSwitchClusterHost:SubnetV2VirtualSwitchClusterHost": {
      "properties": {
        "extId": {
          "type": "string"
        },
        "hostNics": {
          "type": "array",
          "items": {
            "type": "string"
          }
        },
        "internalBridgeName": {
          "type": "string"
        },
        "ipAddresses": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FSubnetV2VirtualSwitchClusterHostIpAddress:SubnetV2VirtualSwitchClusterHostIpAddress"
          }
        },
        "routeTable": {
          "type": "integer"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "extId",
            "hostNics",
            "internalBridgeName",
            "ipAddresses",
            "routeTable"
          ]
        }
      }
    },
    "nutanix:index/SubnetV2VirtualSwitchClusterHostIpAddress:SubnetV2VirtualSwitchClusterHostIpAddress": {
      "properties": {
        "ips": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FSubnetV2VirtualSwitchClusterHostIpAddressIp:SubnetV2VirtualSwitchClusterHostIpAddressIp"
          }
        },
        "prefixLength": {
          "type": "integer"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "ips",
            "prefixLength"
          ]
        }
      }
    },
    "nutanix:index/SubnetV2VirtualSwitchClusterHostIpAddressIp:SubnetV2VirtualSwitchClusterHostIpAddressIp": {
      "properties": {
        "prefixLength": {
          "type": "integer"
        },
        "value": {
          "type": "string"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "prefixLength",
            "value"
          ]
        }
      }
    },
    "nutanix:index/SubnetV2VirtualSwitchLink:SubnetV2VirtualSwitchLink": {
      "properties": {
        "href": {
          "type": "string"
        },
        "rel": {
          "type": "string"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "href",
            "rel"
          ]
        }
      }
    },
    "nutanix:index/SubnetV2VirtualSwitchMetadata:SubnetV2VirtualSwitchMetadata": {
      "properties": {
        "categoryIds": {
          "type": "array",
          "items": {
            "type": "array",
            "items": {
              "$ref": "pulumi.json#/Any"
            }
          }
        },
        "ownerReferenceId": {
          "type": "string"
        },
        "ownerUserName": {
          "type": "string"
        },
        "projectName": {
          "type": "string"
        },
        "projectReferenceId": {
          "type": "string"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "categoryIds",
            "ownerReferenceId",
            "ownerUserName",
            "projectName",
            "projectReferenceId"
          ]
        }
      }
    },
    "nutanix:index/SubnetV2Vpc:SubnetV2Vpc": {
      "properties": {
        "commonDhcpOptions": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FSubnetV2VpcCommonDhcpOption:SubnetV2VpcCommonDhcpOption"
          }
        },
        "description": {
          "type": "string"
        },
        "extId": {
          "type": "string"
        },
        "externalRoutingDomainReference": {
          "type": "string"
        },
        "externalSubnets": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FSubnetV2VpcExternalSubnet:SubnetV2VpcExternalSubnet"
          }
        },
        "externallyRoutablePrefixes": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FSubnetV2VpcExternallyRoutablePrefix:SubnetV2VpcExternallyRoutablePrefix"
          }
        },
        "links": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FSubnetV2VpcLink:SubnetV2VpcLink"
          }
        },
        "metadatas": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FSubnetV2VpcMetadata:SubnetV2VpcMetadata"
          }
        },
        "name": {
          "type": "string"
        },
        "snatIps": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FSubnetV2VpcSnatIp:SubnetV2VpcSnatIp"
          }
        },
        "tenantId": {
          "type": "string"
        },
        "vpcType": {
          "type": "string"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "commonDhcpOptions",
            "description",
            "extId",
            "externalRoutingDomainReference",
            "externalSubnets",
            "externallyRoutablePrefixes",
            "links",
            "metadatas",
            "name",
            "snatIps",
            "tenantId",
            "vpcType"
          ]
        }
      }
    },
    "nutanix:index/SubnetV2VpcCommonDhcpOption:SubnetV2VpcCommonDhcpOption": {
      "properties": {
        "domainNameServers": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FSubnetV2VpcCommonDhcpOptionDomainNameServer:SubnetV2VpcCommonDhcpOptionDomainNameServer"
          }
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "domainNameServers"
          ]
        }
      }
    },
    "nutanix:index/SubnetV2VpcCommonDhcpOptionDomainNameServer:SubnetV2VpcCommonDhcpOptionDomainNameServer": {
      "properties": {
        "ipv4s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FSubnetV2VpcCommonDhcpOptionDomainNameServerIpv4:SubnetV2VpcCommonDhcpOptionDomainNameServerIpv4"
          }
        },
        "ipv6s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FSubnetV2VpcCommonDhcpOptionDomainNameServerIpv6:SubnetV2VpcCommonDhcpOptionDomainNameServerIpv6"
          }
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "ipv4s",
            "ipv6s"
          ]
        }
      }
    },
    "nutanix:index/SubnetV2VpcCommonDhcpOptionDomainNameServerIpv4:SubnetV2VpcCommonDhcpOptionDomainNameServerIpv4": {
      "properties": {
        "prefixLength": {
          "type": "integer"
        },
        "value": {
          "type": "string"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "prefixLength",
            "value"
          ]
        }
      }
    },
    "nutanix:index/SubnetV2VpcCommonDhcpOptionDomainNameServerIpv6:SubnetV2VpcCommonDhcpOptionDomainNameServerIpv6": {
      "properties": {
        "prefixLength": {
          "type": "integer"
        },
        "value": {
          "type": "string"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "prefixLength",
            "value"
          ]
        }
      }
    },
    "nutanix:index/SubnetV2VpcExternalSubnet:SubnetV2VpcExternalSubnet": {
      "properties": {
        "activeGatewayCount": {
          "type": "integer"
        },
        "activeGatewayNodes": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FSubnetV2VpcExternalSubnetActiveGatewayNode:SubnetV2VpcExternalSubnetActiveGatewayNode"
          }
        },
        "externalIps": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FSubnetV2VpcExternalSubnetExternalIp:SubnetV2VpcExternalSubnetExternalIp"
          }
        },
        "gatewayNodes": {
          "type": "array",
          "items": {
            "type": "string"
          }
        },
        "subnetReference": {
          "type": "string"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "activeGatewayCount",
            "activeGatewayNodes",
            "externalIps",
            "gatewayNodes",
            "subnetReference"
          ]
        }
      }
    },
    "nutanix:index/SubnetV2VpcExternalSubnetActiveGatewayNode:SubnetV2VpcExternalSubnetActiveGatewayNode": {
      "properties": {
        "nodeId": {
          "type": "string"
        },
        "nodeIpAddresses": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FSubnetV2VpcExternalSubnetActiveGatewayNodeNodeIpAddress:SubnetV2VpcExternalSubnetActiveGatewayNodeNodeIpAddress"
          }
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "nodeId",
            "nodeIpAddresses"
          ]
        }
      }
    },
    "nutanix:index/SubnetV2VpcExternalSubnetActiveGatewayNodeNodeIpAddress:SubnetV2VpcExternalSubnetActiveGatewayNodeNodeIpAddress": {
      "properties": {
        "ipv4s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FSubnetV2VpcExternalSubnetActiveGatewayNodeNodeIpAddressIpv4:SubnetV2VpcExternalSubnetActiveGatewayNodeNodeIpAddressIpv4"
          }
        },
        "ipv6s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FSubnetV2VpcExternalSubnetActiveGatewayNodeNodeIpAddressIpv6:SubnetV2VpcExternalSubnetActiveGatewayNodeNodeIpAddressIpv6"
          }
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "ipv4s",
            "ipv6s"
          ]
        }
      }
    },
    "nutanix:index/SubnetV2VpcExternalSubnetActiveGatewayNodeNodeIpAddressIpv4:SubnetV2VpcExternalSubnetActiveGatewayNodeNodeIpAddressIpv4": {
      "properties": {
        "prefixLength": {
          "type": "integer"
        },
        "value": {
          "type": "string"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "prefixLength",
            "value"
          ]
        }
      }
    },
    "nutanix:index/SubnetV2VpcExternalSubnetActiveGatewayNodeNodeIpAddressIpv6:SubnetV2VpcExternalSubnetActiveGatewayNodeNodeIpAddressIpv6": {
      "properties": {
        "prefixLength": {
          "type": "integer"
        },
        "value": {
          "type": "string"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "prefixLength",
            "value"
          ]
        }
      }
    },
    "nutanix:index/SubnetV2VpcExternalSubnetExternalIp:SubnetV2VpcExternalSubnetExternalIp": {
      "properties": {
        "ipv4s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FSubnetV2VpcExternalSubnetExternalIpIpv4:SubnetV2VpcExternalSubnetExternalIpIpv4"
          }
        },
        "ipv6s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FSubnetV2VpcExternalSubnetExternalIpIpv6:SubnetV2VpcExternalSubnetExternalIpIpv6"
          }
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "ipv4s",
            "ipv6s"
          ]
        }
      }
    },
    "nutanix:index/SubnetV2VpcExternalSubnetExternalIpIpv4:SubnetV2VpcExternalSubnetExternalIpIpv4": {
      "properties": {
        "prefixLength": {
          "type": "integer"
        },
        "value": {
          "type": "string"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "prefixLength",
            "value"
          ]
        }
      }
    },
    "nutanix:index/SubnetV2VpcExternalSubnetExternalIpIpv6:SubnetV2VpcExternalSubnetExternalIpIpv6": {
      "properties": {
        "prefixLength": {
          "type": "integer"
        },
        "value": {
          "type": "string"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "prefixLength",
            "value"
          ]
        }
      }
    },
    "nutanix:index/SubnetV2VpcExternallyRoutablePrefix:SubnetV2VpcExternallyRoutablePrefix": {
      "properties": {
        "ipv4s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FSubnetV2VpcExternallyRoutablePrefixIpv4:SubnetV2VpcExternallyRoutablePrefixIpv4"
          }
        },
        "ipv6s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FSubnetV2VpcExternallyRoutablePrefixIpv6:SubnetV2VpcExternallyRoutablePrefixIpv6"
          }
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "ipv4s",
            "ipv6s"
          ]
        }
      }
    },
    "nutanix:index/SubnetV2VpcExternallyRoutablePrefixIpv4:SubnetV2VpcExternallyRoutablePrefixIpv4": {
      "properties": {
        "ips": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FSubnetV2VpcExternallyRoutablePrefixIpv4Ip:SubnetV2VpcExternallyRoutablePrefixIpv4Ip"
          }
        },
        "prefixLength": {
          "type": "integer"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "ips",
            "prefixLength"
          ]
        }
      }
    },
    "nutanix:index/SubnetV2VpcExternallyRoutablePrefixIpv4Ip:SubnetV2VpcExternallyRoutablePrefixIpv4Ip": {
      "properties": {
        "prefixLength": {
          "type": "integer"
        },
        "value": {
          "type": "string"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "prefixLength",
            "value"
          ]
        }
      }
    },
    "nutanix:index/SubnetV2VpcExternallyRoutablePrefixIpv6:SubnetV2VpcExternallyRoutablePrefixIpv6": {
      "properties": {
        "ips": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FSubnetV2VpcExternallyRoutablePrefixIpv6Ip:SubnetV2VpcExternallyRoutablePrefixIpv6Ip"
          }
        },
        "prefixLength": {
          "type": "integer"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "ips",
            "prefixLength"
          ]
        }
      }
    },
    "nutanix:index/SubnetV2VpcExternallyRoutablePrefixIpv6Ip:SubnetV2VpcExternallyRoutablePrefixIpv6Ip": {
      "properties": {
        "prefixLength": {
          "type": "integer"
        },
        "value": {
          "type": "string"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "prefixLength",
            "value"
          ]
        }
      }
    },
    "nutanix:index/SubnetV2VpcLink:SubnetV2VpcLink": {
      "properties": {
        "href": {
          "type": "string"
        },
        "rel": {
          "type": "string"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "href",
            "rel"
          ]
        }
      }
    },
    "nutanix:index/SubnetV2VpcMetadata:SubnetV2VpcMetadata": {
      "properties": {
        "categoryIds": {
          "type": "array",
          "items": {
            "type": "array",
            "items": {
              "$ref": "pulumi.json#/Any"
            }
          }
        },
        "ownerReferenceId": {
          "type": "string"
        },
        "ownerUserName": {
          "type": "string"
        },
        "projectName": {
          "type": "string"
        },
        "projectReferenceId": {
          "type": "string"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "categoryIds",
            "ownerReferenceId",
            "ownerUserName",
            "projectName",
            "projectReferenceId"
          ]
        }
      }
    },
    "nutanix:index/SubnetV2VpcSnatIp:SubnetV2VpcSnatIp": {
      "properties": {
        "ipv4s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FSubnetV2VpcSnatIpIpv4:SubnetV2VpcSnatIpIpv4"
          }
        },
        "ipv6s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FSubnetV2VpcSnatIpIpv6:SubnetV2VpcSnatIpIpv6"
          }
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "ipv4s",
            "ipv6s"
          ]
        }
      }
    },
    "nutanix:index/SubnetV2VpcSnatIpIpv4:SubnetV2VpcSnatIpIpv4": {
      "properties": {
        "prefixLength": {
          "type": "integer"
        },
        "value": {
          "type": "string"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "prefixLength",
            "value"
          ]
        }
      }
    },
    "nutanix:index/SubnetV2VpcSnatIpIpv6:SubnetV2VpcSnatIpIpv6": {
      "properties": {
        "prefixLength": {
          "type": "integer"
        },
        "value": {
          "type": "string"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "prefixLength",
            "value"
          ]
        }
      }
    },
    "nutanix:index/TemplateV2CreatedBy:TemplateV2CreatedBy": {
      "properties": {
        "additionalAttributes": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FTemplateV2CreatedByAdditionalAttribute:TemplateV2CreatedByAdditionalAttribute"
          }
        },
        "creationType": {
          "type": "string"
        },
        "description": {
          "type": "string"
        },
        "displayName": {
          "type": "string"
        },
        "emailId": {
          "type": "string"
        },
        "extId": {
          "type": "string"
        },
        "firstName": {
          "type": "string"
        },
        "idpId": {
          "type": "string"
        },
        "isForceResetPasswordEnabled": {
          "type": "boolean"
        },
        "lastName": {
          "type": "string"
        },
        "locale": {
          "type": "string"
        },
        "middleInitial": {
          "type": "string"
        },
        "password": {
          "type": "string"
        },
        "region": {
          "type": "string"
        },
        "status": {
          "type": "string"
        },
        "userType": {
          "type": "string"
        },
        "username": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "userType",
        "username"
      ],
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "additionalAttributes",
            "creationType",
            "description",
            "displayName",
            "emailId",
            "extId",
            "firstName",
            "idpId",
            "isForceResetPasswordEnabled",
            "lastName",
            "locale",
            "middleInitial",
            "password",
            "region",
            "status",
            "userType",
            "username"
          ]
        }
      }
    },
    "nutanix:index/TemplateV2CreatedByAdditionalAttribute:TemplateV2CreatedByAdditionalAttribute": {
      "properties": {
        "name": {
          "type": "string"
        },
        "values": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FTemplateV2CreatedByAdditionalAttributeValue:TemplateV2CreatedByAdditionalAttributeValue"
          }
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "name",
            "values"
          ]
        }
      }
    },
    "nutanix:index/TemplateV2CreatedByAdditionalAttributeValue:TemplateV2CreatedByAdditionalAttributeValue": {
      "properties": {
        "boolean": {
          "type": "boolean"
        },
        "integer": {
          "type": "integer"
        },
        "integerLists": {
          "type": "array",
          "items": {
            "type": "integer"
          }
        },
        "mapOfStrings": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FTemplateV2CreatedByAdditionalAttributeValueMapOfString:TemplateV2CreatedByAdditionalAttributeValueMapOfString"
          }
        },
        "object": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          }
        },
        "string": {
          "type": "string"
        },
        "stringLists": {
          "type": "array",
          "items": {
            "type": "string"
          }
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "boolean",
            "integer",
            "integerLists",
            "mapOfStrings",
            "object",
            "string",
            "stringLists"
          ]
        }
      }
    },
    "nutanix:index/TemplateV2CreatedByAdditionalAttributeValueMapOfString:TemplateV2CreatedByAdditionalAttributeValueMapOfString": {
      "properties": {
        "map": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          }
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "map"
          ]
        }
      }
    },
    "nutanix:index/TemplateV2GuestUpdateStatus:TemplateV2GuestUpdateStatus": {
      "properties": {
        "deployedVmReference": {
          "type": "string"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "deployedVmReference"
          ]
        }
      }
    },
    "nutanix:index/TemplateV2Link:TemplateV2Link": {
      "properties": {
        "href": {
          "type": "string"
        },
        "rel": {
          "type": "string"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "href",
            "rel"
          ]
        }
      }
    },
    "nutanix:index/TemplateV2TemplateVersionSpec:TemplateV2TemplateVersionSpec": {
      "properties": {
        "createTime": {
          "type": "string"
        },
        "createdBies": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FTemplateV2TemplateVersionSpecCreatedBy:TemplateV2TemplateVersionSpecCreatedBy"
          }
        },
        "extId": {
          "type": "string"
        },
        "isActiveVersion": {
          "type": "boolean"
        },
        "isGcOverrideEnabled": {
          "type": "boolean"
        },
        "links": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FTemplateV2TemplateVersionSpecLink:TemplateV2TemplateVersionSpecLink"
          }
        },
        "tenantId": {
          "type": "string"
        },
        "versionDescription": {
          "type": "string"
        },
        "versionName": {
          "type": "string"
        },
        "versionSource": {
          "$ref": "#/types/nutanix:index%2FTemplateV2TemplateVersionSpecVersionSource:TemplateV2TemplateVersionSpecVersionSource"
        },
        "versionSourceDiscriminator": {
          "type": "string"
        },
        "vmSpecs": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FTemplateV2TemplateVersionSpecVmSpec:TemplateV2TemplateVersionSpecVmSpec"
          }
        }
      },
      "type": "object",
      "required": [
        "versionSource"
      ],
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "createTime",
            "createdBies",
            "extId",
            "isGcOverrideEnabled",
            "links",
            "tenantId",
            "versionDescription",
            "versionName",
            "versionSource",
            "versionSourceDiscriminator",
            "vmSpecs"
          ]
        }
      }
    },
    "nutanix:index/TemplateV2TemplateVersionSpecCreatedBy:TemplateV2TemplateVersionSpecCreatedBy": {
      "properties": {
        "additionalAttributes": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FTemplateV2TemplateVersionSpecCreatedByAdditionalAttribute:TemplateV2TemplateVersionSpecCreatedByAdditionalAttribute"
          }
        },
        "creationType": {
          "type": "string"
        },
        "description": {
          "type": "string"
        },
        "displayName": {
          "type": "string"
        },
        "emailId": {
          "type": "string"
        },
        "extId": {
          "type": "string"
        },
        "firstName": {
          "type": "string"
        },
        "idpId": {
          "type": "string"
        },
        "isForceResetPasswordEnabled": {
          "type": "boolean"
        },
        "lastName": {
          "type": "string"
        },
        "locale": {
          "type": "string"
        },
        "middleInitial": {
          "type": "string"
        },
        "password": {
          "type": "string"
        },
        "region": {
          "type": "string"
        },
        "status": {
          "type": "string"
        },
        "userType": {
          "type": "string"
        },
        "username": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "userType",
        "username"
      ],
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "additionalAttributes",
            "creationType",
            "description",
            "displayName",
            "emailId",
            "extId",
            "firstName",
            "idpId",
            "isForceResetPasswordEnabled",
            "lastName",
            "locale",
            "middleInitial",
            "password",
            "region",
            "status",
            "userType",
            "username"
          ]
        }
      }
    },
    "nutanix:index/TemplateV2TemplateVersionSpecCreatedByAdditionalAttribute:TemplateV2TemplateVersionSpecCreatedByAdditionalAttribute": {
      "properties": {
        "name": {
          "type": "string"
        },
        "values": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FTemplateV2TemplateVersionSpecCreatedByAdditionalAttributeValue:TemplateV2TemplateVersionSpecCreatedByAdditionalAttributeValue"
          }
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "name",
            "values"
          ]
        }
      }
    },
    "nutanix:index/TemplateV2TemplateVersionSpecCreatedByAdditionalAttributeValue:TemplateV2TemplateVersionSpecCreatedByAdditionalAttributeValue": {
      "properties": {
        "boolean": {
          "type": "boolean"
        },
        "integer": {
          "type": "integer"
        },
        "integerLists": {
          "type": "array",
          "items": {
            "type": "integer"
          }
        },
        "mapOfStrings": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FTemplateV2TemplateVersionSpecCreatedByAdditionalAttributeValueMapOfString:TemplateV2TemplateVersionSpecCreatedByAdditionalAttributeValueMapOfString"
          }
        },
        "object": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          }
        },
        "string": {
          "type": "string"
        },
        "stringLists": {
          "type": "array",
          "items": {
            "type": "string"
          }
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "boolean",
            "integer",
            "integerLists",
            "mapOfStrings",
            "object",
            "string",
            "stringLists"
          ]
        }
      }
    },
    "nutanix:index/TemplateV2TemplateVersionSpecCreatedByAdditionalAttributeValueMapOfString:TemplateV2TemplateVersionSpecCreatedByAdditionalAttributeValueMapOfString": {
      "properties": {
        "map": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          }
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "map"
          ]
        }
      }
    },
    "nutanix:index/TemplateV2TemplateVersionSpecLink:TemplateV2TemplateVersionSpecLink": {
      "properties": {
        "href": {
          "type": "string"
        },
        "rel": {
          "type": "string"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "href",
            "rel"
          ]
        }
      }
    },
    "nutanix:index/TemplateV2TemplateVersionSpecVersionSource:TemplateV2TemplateVersionSpecVersionSource": {
      "properties": {
        "templateVersionReference": {
          "$ref": "#/types/nutanix:index%2FTemplateV2TemplateVersionSpecVersionSourceTemplateVersionReference:TemplateV2TemplateVersionSpecVersionSourceTemplateVersionReference"
        },
        "templateVmReference": {
          "$ref": "#/types/nutanix:index%2FTemplateV2TemplateVersionSpecVersionSourceTemplateVmReference:TemplateV2TemplateVersionSpecVersionSourceTemplateVmReference"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "templateVersionReference",
            "templateVmReference"
          ]
        }
      }
    },
    "nutanix:index/TemplateV2TemplateVersionSpecVersionSourceTemplateVersionReference:TemplateV2TemplateVersionSpecVersionSourceTemplateVersionReference": {
      "properties": {
        "overrideVmConfigs": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FTemplateV2TemplateVersionSpecVersionSourceTemplateVersionReferenceOverrideVmConfig:TemplateV2TemplateVersionSpecVersionSourceTemplateVersionReferenceOverrideVmConfig"
          }
        },
        "versionId": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "overrideVmConfigs"
      ],
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "overrideVmConfigs",
            "versionId"
          ]
        }
      }
    },
    "nutanix:index/TemplateV2TemplateVersionSpecVersionSourceTemplateVersionReferenceOverrideVmConfig:TemplateV2TemplateVersionSpecVersionSourceTemplateVersionReferenceOverrideVmConfig": {
      "properties": {
        "guestCustomizations": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FTemplateV2TemplateVersionSpecVersionSourceTemplateVersionReferenceOverrideVmConfigGuestCustomization:TemplateV2TemplateVersionSpecVersionSourceTemplateVersionReferenceOverrideVmConfigGuestCustomization"
          }
        },
        "memorySizeBytes": {
          "type": "integer"
        },
        "name": {
          "type": "string"
        },
        "nics": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FTemplateV2TemplateVersionSpecVersionSourceTemplateVersionReferenceOverrideVmConfigNic:TemplateV2TemplateVersionSpecVersionSourceTemplateVersionReferenceOverrideVmConfigNic"
          }
        },
        "numCoresPerSocket": {
          "type": "integer"
        },
        "numSockets": {
          "type": "integer"
        },
        "numThreadsPerCore": {
          "type": "integer"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "guestCustomizations",
            "name",
            "nics",
            "numCoresPerSocket",
            "numSockets",
            "numThreadsPerCore"
          ]
        }
      }
    },
    "nutanix:index/TemplateV2TemplateVersionSpecVersionSourceTemplateVersionReferenceOverrideVmConfigGuestCustomization:TemplateV2TemplateVersionSpecVersionSourceTemplateVersionReferenceOverrideVmConfigGuestCustomization": {
      "properties": {
        "configs": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FTemplateV2TemplateVersionSpecVersionSourceTemplateVersionReferenceOverrideVmConfigGuestCustomizationConfig:TemplateV2TemplateVersionSpecVersionSourceTemplateVersionReferenceOverrideVmConfigGuestCustomizationConfig"
          }
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "configs"
          ]
        }
      }
    },
    "nutanix:index/TemplateV2TemplateVersionSpecVersionSourceTemplateVersionReferenceOverrideVmConfigGuestCustomizationConfig:TemplateV2TemplateVersionSpecVersionSourceTemplateVersionReferenceOverrideVmConfigGuestCustomizationConfig": {
      "properties": {
        "cloudInits": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FTemplateV2TemplateVersionSpecVersionSourceTemplateVersionReferenceOverrideVmConfigGuestCustomizationConfigCloudInit:TemplateV2TemplateVersionSpecVersionSourceTemplateVersionReferenceOverrideVmConfigGuestCustomizationConfigCloudInit"
          }
        },
        "syspreps": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FTemplateV2TemplateVersionSpecVersionSourceTemplateVersionReferenceOverrideVmConfigGuestCustomizationConfigSysprep:TemplateV2TemplateVersionSpecVersionSourceTemplateVersionReferenceOverrideVmConfigGuestCustomizationConfigSysprep"
          }
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "cloudInits",
            "syspreps"
          ]
        }
      }
    },
    "nutanix:index/TemplateV2TemplateVersionSpecVersionSourceTemplateVersionReferenceOverrideVmConfigGuestCustomizationConfigCloudInit:TemplateV2TemplateVersionSpecVersionSourceTemplateVersionReferenceOverrideVmConfigGuestCustomizationConfigCloudInit": {
      "properties": {
        "cloudInitScripts": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FTemplateV2TemplateVersionSpecVersionSourceTemplateVersionReferenceOverrideVmConfigGuestCustomizationConfigCloudInitCloudInitScript:TemplateV2TemplateVersionSpecVersionSourceTemplateVersionReferenceOverrideVmConfigGuestCustomizationConfigCloudInitCloudInitScript"
          }
        },
        "datasourceType": {
          "type": "string"
        },
        "metadata": {
          "type": "string"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "cloudInitScripts",
            "datasourceType",
            "metadata"
          ]
        }
      }
    },
    "nutanix:index/TemplateV2TemplateVersionSpecVersionSourceTemplateVersionReferenceOverrideVmConfigGuestCustomizationConfigCloudInitCloudInitScript:TemplateV2TemplateVersionSpecVersionSourceTemplateVersionReferenceOverrideVmConfigGuestCustomizationConfigCloudInitCloudInitScript": {
      "properties": {
        "customKeyValues": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FTemplateV2TemplateVersionSpecVersionSourceTemplateVersionReferenceOverrideVmConfigGuestCustomizationConfigCloudInitCloudInitScriptCustomKeyValue:TemplateV2TemplateVersionSpecVersionSourceTemplateVersionReferenceOverrideVmConfigGuestCustomizationConfigCloudInitCloudInitScriptCustomKeyValue"
          }
        },
        "userDatas": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FTemplateV2TemplateVersionSpecVersionSourceTemplateVersionReferenceOverrideVmConfigGuestCustomizationConfigCloudInitCloudInitScriptUserData:TemplateV2TemplateVersionSpecVersionSourceTemplateVersionReferenceOverrideVmConfigGuestCustomizationConfigCloudInitCloudInitScriptUserData"
          }
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "customKeyValues",
            "userDatas"
          ]
        }
      }
    },
    "nutanix:index/TemplateV2TemplateVersionSpecVersionSourceTemplateVersionReferenceOverrideVmConfigGuestCustomizationConfigCloudInitCloudInitScriptCustomKeyValue:TemplateV2TemplateVersionSpecVersionSourceTemplateVersionReferenceOverrideVmConfigGuestCustomizationConfigCloudInitCloudInitScriptCustomKeyValue": {
      "properties": {
        "keyValuePairs": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FTemplateV2TemplateVersionSpecVersionSourceTemplateVersionReferenceOverrideVmConfigGuestCustomizationConfigCloudInitCloudInitScriptCustomKeyValueKeyValuePair:TemplateV2TemplateVersionSpecVersionSourceTemplateVersionReferenceOverrideVmConfigGuestCustomizationConfigCloudInitCloudInitScriptCustomKeyValueKeyValuePair"
          }
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "keyValuePairs"
          ]
        }
      }
    },
    "nutanix:index/TemplateV2TemplateVersionSpecVersionSourceTemplateVersionReferenceOverrideVmConfigGuestCustomizationConfigCloudInitCloudInitScriptCustomKeyValueKeyValuePair:TemplateV2TemplateVersionSpecVersionSourceTemplateVersionReferenceOverrideVmConfigGuestCustomizationConfigCloudInitCloudInitScriptCustomKeyValueKeyValuePair": {
      "properties": {
        "name": {
          "type": "string"
        },
        "values": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FTemplateV2TemplateVersionSpecVersionSourceTemplateVersionReferenceOverrideVmConfigGuestCustomizationConfigCloudInitCloudInitScriptCustomKeyValueKeyValuePairValue:TemplateV2TemplateVersionSpecVersionSourceTemplateVersionReferenceOverrideVmConfigGuestCustomizationConfigCloudInitCloudInitScriptCustomKeyValueKeyValuePairValue"
          }
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "name",
            "values"
          ]
        }
      }
    },
    "nutanix:index/TemplateV2TemplateVersionSpecVersionSourceTemplateVersionReferenceOverrideVmConfigGuestCustomizationConfigCloudInitCloudInitScriptCustomKeyValueKeyValuePairValue:TemplateV2TemplateVersionSpecVersionSourceTemplateVersionReferenceOverrideVmConfigGuestCustomizationConfigCloudInitCloudInitScriptCustomKeyValueKeyValuePairValue": {
      "properties": {
        "boolean": {
          "type": "boolean"
        },
        "integer": {
          "type": "integer"
        },
        "integerLists": {
          "type": "array",
          "items": {
            "type": "integer"
          }
        },
        "mapOfStrings": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FTemplateV2TemplateVersionSpecVersionSourceTemplateVersionReferenceOverrideVmConfigGuestCustomizationConfigCloudInitCloudInitScriptCustomKeyValueKeyValuePairValueMapOfString:TemplateV2TemplateVersionSpecVersionSourceTemplateVersionReferenceOverrideVmConfigGuestCustomizationConfigCloudInitCloudInitScriptCustomKeyValueKeyValuePairValueMapOfString"
          }
        },
        "object": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          }
        },
        "string": {
          "type": "string"
        },
        "stringLists": {
          "type": "array",
          "items": {
            "type": "string"
          }
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "boolean",
            "integer",
            "integerLists",
            "mapOfStrings",
            "object",
            "string",
            "stringLists"
          ]
        }
      }
    },
    "nutanix:index/TemplateV2TemplateVersionSpecVersionSourceTemplateVersionReferenceOverrideVmConfigGuestCustomizationConfigCloudInitCloudInitScriptCustomKeyValueKeyValuePairValueMapOfString:TemplateV2TemplateVersionSpecVersionSourceTemplateVersionReferenceOverrideVmConfigGuestCustomizationConfigCloudInitCloudInitScriptCustomKeyValueKeyValuePairValueMapOfString": {
      "properties": {
        "map": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          }
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "map"
          ]
        }
      }
    },
    "nutanix:index/TemplateV2TemplateVersionSpecVersionSourceTemplateVersionReferenceOverrideVmConfigGuestCustomizationConfigCloudInitCloudInitScriptUserData:TemplateV2TemplateVersionSpecVersionSourceTemplateVersionReferenceOverrideVmConfigGuestCustomizationConfigCloudInitCloudInitScriptUserData": {
      "properties": {
        "value": {
          "type": "string"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "value"
          ]
        }
      }
    },
    "nutanix:index/TemplateV2TemplateVersionSpecVersionSourceTemplateVersionReferenceOverrideVmConfigGuestCustomizationConfigSysprep:TemplateV2TemplateVersionSpecVersionSourceTemplateVersionReferenceOverrideVmConfigGuestCustomizationConfigSysprep": {
      "properties": {
        "installType": {
          "type": "string"
        },
        "sysprepScripts": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FTemplateV2TemplateVersionSpecVersionSourceTemplateVersionReferenceOverrideVmConfigGuestCustomizationConfigSysprepSysprepScript:TemplateV2TemplateVersionSpecVersionSourceTemplateVersionReferenceOverrideVmConfigGuestCustomizationConfigSysprepSysprepScript"
          }
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "installType",
            "sysprepScripts"
          ]
        }
      }
    },
    "nutanix:index/TemplateV2TemplateVersionSpecVersionSourceTemplateVersionReferenceOverrideVmConfigGuestCustomizationConfigSysprepSysprepScript:TemplateV2TemplateVersionSpecVersionSourceTemplateVersionReferenceOverrideVmConfigGuestCustomizationConfigSysprepSysprepScript": {
      "properties": {
        "customKeyValues": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FTemplateV2TemplateVersionSpecVersionSourceTemplateVersionReferenceOverrideVmConfigGuestCustomizationConfigSysprepSysprepScriptCustomKeyValue:TemplateV2TemplateVersionSpecVersionSourceTemplateVersionReferenceOverrideVmConfigGuestCustomizationConfigSysprepSysprepScriptCustomKeyValue"
          }
        },
        "unattendXmls": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FTemplateV2TemplateVersionSpecVersionSourceTemplateVersionReferenceOverrideVmConfigGuestCustomizationConfigSysprepSysprepScriptUnattendXml:TemplateV2TemplateVersionSpecVersionSourceTemplateVersionReferenceOverrideVmConfigGuestCustomizationConfigSysprepSysprepScriptUnattendXml"
          }
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "customKeyValues",
            "unattendXmls"
          ]
        }
      }
    },
    "nutanix:index/TemplateV2TemplateVersionSpecVersionSourceTemplateVersionReferenceOverrideVmConfigGuestCustomizationConfigSysprepSysprepScriptCustomKeyValue:TemplateV2TemplateVersionSpecVersionSourceTemplateVersionReferenceOverrideVmConfigGuestCustomizationConfigSysprepSysprepScriptCustomKeyValue": {
      "properties": {
        "keyValuePairs": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FTemplateV2TemplateVersionSpecVersionSourceTemplateVersionReferenceOverrideVmConfigGuestCustomizationConfigSysprepSysprepScriptCustomKeyValueKeyValuePair:TemplateV2TemplateVersionSpecVersionSourceTemplateVersionReferenceOverrideVmConfigGuestCustomizationConfigSysprepSysprepScriptCustomKeyValueKeyValuePair"
          }
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "keyValuePairs"
          ]
        }
      }
    },
    "nutanix:index/TemplateV2TemplateVersionSpecVersionSourceTemplateVersionReferenceOverrideVmConfigGuestCustomizationConfigSysprepSysprepScriptCustomKeyValueKeyValuePair:TemplateV2TemplateVersionSpecVersionSourceTemplateVersionReferenceOverrideVmConfigGuestCustomizationConfigSysprepSysprepScriptCustomKeyValueKeyValuePair": {
      "properties": {
        "name": {
          "type": "string"
        },
        "values": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FTemplateV2TemplateVersionSpecVersionSourceTemplateVersionReferenceOverrideVmConfigGuestCustomizationConfigSysprepSysprepScriptCustomKeyValueKeyValuePairValue:TemplateV2TemplateVersionSpecVersionSourceTemplateVersionReferenceOverrideVmConfigGuestCustomizationConfigSysprepSysprepScriptCustomKeyValueKeyValuePairValue"
          }
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "name",
            "values"
          ]
        }
      }
    },
    "nutanix:index/TemplateV2TemplateVersionSpecVersionSourceTemplateVersionReferenceOverrideVmConfigGuestCustomizationConfigSysprepSysprepScriptCustomKeyValueKeyValuePairValue:TemplateV2TemplateVersionSpecVersionSourceTemplateVersionReferenceOverrideVmConfigGuestCustomizationConfigSysprepSysprepScriptCustomKeyValueKeyValuePairValue": {
      "properties": {
        "boolean": {
          "type": "boolean"
        },
        "integer": {
          "type": "integer"
        },
        "integerLists": {
          "type": "array",
          "items": {
            "type": "integer"
          }
        },
        "mapOfStrings": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FTemplateV2TemplateVersionSpecVersionSourceTemplateVersionReferenceOverrideVmConfigGuestCustomizationConfigSysprepSysprepScriptCustomKeyValueKeyValuePairValueMapOfString:TemplateV2TemplateVersionSpecVersionSourceTemplateVersionReferenceOverrideVmConfigGuestCustomizationConfigSysprepSysprepScriptCustomKeyValueKeyValuePairValueMapOfString"
          }
        },
        "object": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          }
        },
        "string": {
          "type": "string"
        },
        "stringLists": {
          "type": "array",
          "items": {
            "type": "string"
          }
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "boolean",
            "integer",
            "integerLists",
            "mapOfStrings",
            "object",
            "string",
            "stringLists"
          ]
        }
      }
    },
    "nutanix:index/TemplateV2TemplateVersionSpecVersionSourceTemplateVersionReferenceOverrideVmConfigGuestCustomizationConfigSysprepSysprepScriptCustomKeyValueKeyValuePairValueMapOfString:TemplateV2TemplateVersionSpecVersionSourceTemplateVersionReferenceOverrideVmConfigGuestCustomizationConfigSysprepSysprepScriptCustomKeyValueKeyValuePairValueMapOfString": {
      "properties": {
        "map": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          }
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "map"
          ]
        }
      }
    },
    "nutanix:index/TemplateV2TemplateVersionSpecVersionSourceTemplateVersionReferenceOverrideVmConfigGuestCustomizationConfigSysprepSysprepScriptUnattendXml:TemplateV2TemplateVersionSpecVersionSourceTemplateVersionReferenceOverrideVmConfigGuestCustomizationConfigSysprepSysprepScriptUnattendXml": {
      "properties": {
        "value": {
          "type": "string"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "value"
          ]
        }
      }
    },
    "nutanix:index/TemplateV2TemplateVersionSpecVersionSourceTemplateVersionReferenceOverrideVmConfigNic:TemplateV2TemplateVersionSpecVersionSourceTemplateVersionReferenceOverrideVmConfigNic": {
      "properties": {
        "backingInfos": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FTemplateV2TemplateVersionSpecVersionSourceTemplateVersionReferenceOverrideVmConfigNicBackingInfo:TemplateV2TemplateVersionSpecVersionSourceTemplateVersionReferenceOverrideVmConfigNicBackingInfo"
          }
        },
        "extId": {
          "type": "string"
        },
        "links": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FTemplateV2TemplateVersionSpecVersionSourceTemplateVersionReferenceOverrideVmConfigNicLink:TemplateV2TemplateVersionSpecVersionSourceTemplateVersionReferenceOverrideVmConfigNicLink"
          }
        },
        "networkInfos": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FTemplateV2TemplateVersionSpecVersionSourceTemplateVersionReferenceOverrideVmConfigNicNetworkInfo:TemplateV2TemplateVersionSpecVersionSourceTemplateVersionReferenceOverrideVmConfigNicNetworkInfo"
          }
        },
        "tenantId": {
          "type": "string"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "backingInfos",
            "extId",
            "links",
            "networkInfos",
            "tenantId"
          ]
        }
      }
    },
    "nutanix:index/TemplateV2TemplateVersionSpecVersionSourceTemplateVersionReferenceOverrideVmConfigNicBackingInfo:TemplateV2TemplateVersionSpecVersionSourceTemplateVersionReferenceOverrideVmConfigNicBackingInfo": {
      "properties": {
        "isConnected": {
          "type": "boolean"
        },
        "macAddress": {
          "type": "string"
        },
        "model": {
          "type": "string"
        },
        "numQueues": {
          "type": "integer"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "macAddress",
            "model"
          ]
        }
      }
    },
    "nutanix:index/TemplateV2TemplateVersionSpecVersionSourceTemplateVersionReferenceOverrideVmConfigNicLink:TemplateV2TemplateVersionSpecVersionSourceTemplateVersionReferenceOverrideVmConfigNicLink": {
      "properties": {
        "href": {
          "type": "string"
        },
        "rel": {
          "type": "string"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "href",
            "rel"
          ]
        }
      }
    },
    "nutanix:index/TemplateV2TemplateVersionSpecVersionSourceTemplateVersionReferenceOverrideVmConfigNicNetworkInfo:TemplateV2TemplateVersionSpecVersionSourceTemplateVersionReferenceOverrideVmConfigNicNetworkInfo": {
      "properties": {
        "ipv4Configs": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FTemplateV2TemplateVersionSpecVersionSourceTemplateVersionReferenceOverrideVmConfigNicNetworkInfoIpv4Config:TemplateV2TemplateVersionSpecVersionSourceTemplateVersionReferenceOverrideVmConfigNicNetworkInfoIpv4Config"
          }
        },
        "ipv4Infos": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FTemplateV2TemplateVersionSpecVersionSourceTemplateVersionReferenceOverrideVmConfigNicNetworkInfoIpv4Info:TemplateV2TemplateVersionSpecVersionSourceTemplateVersionReferenceOverrideVmConfigNicNetworkInfoIpv4Info"
          }
        },
        "networkFunctionChains": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FTemplateV2TemplateVersionSpecVersionSourceTemplateVersionReferenceOverrideVmConfigNicNetworkInfoNetworkFunctionChain:TemplateV2TemplateVersionSpecVersionSourceTemplateVersionReferenceOverrideVmConfigNicNetworkInfoNetworkFunctionChain"
          }
        },
        "networkFunctionNicType": {
          "type": "string"
        },
        "nicType": {
          "type": "string"
        },
        "shouldAllowUnknownMacs": {
          "type": "boolean"
        },
        "subnets": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FTemplateV2TemplateVersionSpecVersionSourceTemplateVersionReferenceOverrideVmConfigNicNetworkInfoSubnet:TemplateV2TemplateVersionSpecVersionSourceTemplateVersionReferenceOverrideVmConfigNicNetworkInfoSubnet"
          }
        },
        "trunkedVlans": {
          "type": "array",
          "items": {
            "type": "integer"
          }
        },
        "vlanMode": {
          "type": "string"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "ipv4Configs",
            "ipv4Infos",
            "networkFunctionChains",
            "networkFunctionNicType",
            "nicType",
            "shouldAllowUnknownMacs",
            "subnets",
            "trunkedVlans",
            "vlanMode"
          ]
        }
      }
    },
    "nutanix:index/TemplateV2TemplateVersionSpecVersionSourceTemplateVersionReferenceOverrideVmConfigNicNetworkInfoIpv4Config:TemplateV2TemplateVersionSpecVersionSourceTemplateVersionReferenceOverrideVmConfigNicNetworkInfoIpv4Config": {
      "properties": {
        "ipAddresses": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FTemplateV2TemplateVersionSpecVersionSourceTemplateVersionReferenceOverrideVmConfigNicNetworkInfoIpv4ConfigIpAddress:TemplateV2TemplateVersionSpecVersionSourceTemplateVersionReferenceOverrideVmConfigNicNetworkInfoIpv4ConfigIpAddress"
          }
        },
        "secondaryIpAddressLists": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FTemplateV2TemplateVersionSpecVersionSourceTemplateVersionReferenceOverrideVmConfigNicNetworkInfoIpv4ConfigSecondaryIpAddressList:TemplateV2TemplateVersionSpecVersionSourceTemplateVersionReferenceOverrideVmConfigNicNetworkInfoIpv4ConfigSecondaryIpAddressList"
          }
        },
        "shouldAssignIp": {
          "type": "boolean"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "ipAddresses",
            "secondaryIpAddressLists",
            "shouldAssignIp"
          ]
        }
      }
    },
    "nutanix:index/TemplateV2TemplateVersionSpecVersionSourceTemplateVersionReferenceOverrideVmConfigNicNetworkInfoIpv4ConfigIpAddress:TemplateV2TemplateVersionSpecVersionSourceTemplateVersionReferenceOverrideVmConfigNicNetworkInfoIpv4ConfigIpAddress": {
      "properties": {
        "prefixLength": {
          "type": "integer"
        },
        "value": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "value"
      ]
    },
    "nutanix:index/TemplateV2TemplateVersionSpecVersionSourceTemplateVersionReferenceOverrideVmConfigNicNetworkInfoIpv4ConfigSecondaryIpAddressList:TemplateV2TemplateVersionSpecVersionSourceTemplateVersionReferenceOverrideVmConfigNicNetworkInfoIpv4ConfigSecondaryIpAddressList": {
      "properties": {
        "prefixLength": {
          "type": "integer"
        },
        "value": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "value"
      ]
    },
    "nutanix:index/TemplateV2TemplateVersionSpecVersionSourceTemplateVersionReferenceOverrideVmConfigNicNetworkInfoIpv4Info:TemplateV2TemplateVersionSpecVersionSourceTemplateVersionReferenceOverrideVmConfigNicNetworkInfoIpv4Info": {
      "properties": {
        "learnedIpAddresses": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FTemplateV2TemplateVersionSpecVersionSourceTemplateVersionReferenceOverrideVmConfigNicNetworkInfoIpv4InfoLearnedIpAddress:TemplateV2TemplateVersionSpecVersionSourceTemplateVersionReferenceOverrideVmConfigNicNetworkInfoIpv4InfoLearnedIpAddress"
          }
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "learnedIpAddresses"
          ]
        }
      }
    },
    "nutanix:index/TemplateV2TemplateVersionSpecVersionSourceTemplateVersionReferenceOverrideVmConfigNicNetworkInfoIpv4InfoLearnedIpAddress:TemplateV2TemplateVersionSpecVersionSourceTemplateVersionReferenceOverrideVmConfigNicNetworkInfoIpv4InfoLearnedIpAddress": {
      "properties": {
        "prefixLength": {
          "type": "integer"
        },
        "value": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "value"
      ]
    },
    "nutanix:index/TemplateV2TemplateVersionSpecVersionSourceTemplateVersionReferenceOverrideVmConfigNicNetworkInfoNetworkFunctionChain:TemplateV2TemplateVersionSpecVersionSourceTemplateVersionReferenceOverrideVmConfigNicNetworkInfoNetworkFunctionChain": {
      "properties": {
        "extId": {
          "type": "string"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "extId"
          ]
        }
      }
    },
    "nutanix:index/TemplateV2TemplateVersionSpecVersionSourceTemplateVersionReferenceOverrideVmConfigNicNetworkInfoSubnet:TemplateV2TemplateVersionSpecVersionSourceTemplateVersionReferenceOverrideVmConfigNicNetworkInfoSubnet": {
      "properties": {
        "extId": {
          "type": "string"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "extId"
          ]
        }
      }
    },
    "nutanix:index/TemplateV2TemplateVersionSpecVersionSourceTemplateVmReference:TemplateV2TemplateVersionSpecVersionSourceTemplateVmReference": {
      "properties": {
        "extId": {
          "type": "string"
        },
        "guestCustomizations": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FTemplateV2TemplateVersionSpecVersionSourceTemplateVmReferenceGuestCustomization:TemplateV2TemplateVersionSpecVersionSourceTemplateVmReferenceGuestCustomization"
          }
        }
      },
      "type": "object",
      "required": [
        "extId"
      ],
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "extId",
            "guestCustomizations"
          ]
        }
      }
    },
    "nutanix:index/TemplateV2TemplateVersionSpecVersionSourceTemplateVmReferenceGuestCustomization:TemplateV2TemplateVersionSpecVersionSourceTemplateVmReferenceGuestCustomization": {
      "properties": {
        "configs": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FTemplateV2TemplateVersionSpecVersionSourceTemplateVmReferenceGuestCustomizationConfig:TemplateV2TemplateVersionSpecVersionSourceTemplateVmReferenceGuestCustomizationConfig"
          }
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "configs"
          ]
        }
      }
    },
    "nutanix:index/TemplateV2TemplateVersionSpecVersionSourceTemplateVmReferenceGuestCustomizationConfig:TemplateV2TemplateVersionSpecVersionSourceTemplateVmReferenceGuestCustomizationConfig": {
      "properties": {
        "cloudInits": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FTemplateV2TemplateVersionSpecVersionSourceTemplateVmReferenceGuestCustomizationConfigCloudInit:TemplateV2TemplateVersionSpecVersionSourceTemplateVmReferenceGuestCustomizationConfigCloudInit"
          }
        },
        "syspreps": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FTemplateV2TemplateVersionSpecVersionSourceTemplateVmReferenceGuestCustomizationConfigSysprep:TemplateV2TemplateVersionSpecVersionSourceTemplateVmReferenceGuestCustomizationConfigSysprep"
          }
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "cloudInits",
            "syspreps"
          ]
        }
      }
    },
    "nutanix:index/TemplateV2TemplateVersionSpecVersionSourceTemplateVmReferenceGuestCustomizationConfigCloudInit:TemplateV2TemplateVersionSpecVersionSourceTemplateVmReferenceGuestCustomizationConfigCloudInit": {
      "properties": {
        "cloudInitScripts": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FTemplateV2TemplateVersionSpecVersionSourceTemplateVmReferenceGuestCustomizationConfigCloudInitCloudInitScript:TemplateV2TemplateVersionSpecVersionSourceTemplateVmReferenceGuestCustomizationConfigCloudInitCloudInitScript"
          }
        },
        "datasourceType": {
          "type": "string"
        },
        "metadata": {
          "type": "string"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "cloudInitScripts",
            "datasourceType",
            "metadata"
          ]
        }
      }
    },
    "nutanix:index/TemplateV2TemplateVersionSpecVersionSourceTemplateVmReferenceGuestCustomizationConfigCloudInitCloudInitScript:TemplateV2TemplateVersionSpecVersionSourceTemplateVmReferenceGuestCustomizationConfigCloudInitCloudInitScript": {
      "properties": {
        "customKeyValues": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FTemplateV2TemplateVersionSpecVersionSourceTemplateVmReferenceGuestCustomizationConfigCloudInitCloudInitScriptCustomKeyValue:TemplateV2TemplateVersionSpecVersionSourceTemplateVmReferenceGuestCustomizationConfigCloudInitCloudInitScriptCustomKeyValue"
          }
        },
        "userDatas": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FTemplateV2TemplateVersionSpecVersionSourceTemplateVmReferenceGuestCustomizationConfigCloudInitCloudInitScriptUserData:TemplateV2TemplateVersionSpecVersionSourceTemplateVmReferenceGuestCustomizationConfigCloudInitCloudInitScriptUserData"
          }
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "customKeyValues",
            "userDatas"
          ]
        }
      }
    },
    "nutanix:index/TemplateV2TemplateVersionSpecVersionSourceTemplateVmReferenceGuestCustomizationConfigCloudInitCloudInitScriptCustomKeyValue:TemplateV2TemplateVersionSpecVersionSourceTemplateVmReferenceGuestCustomizationConfigCloudInitCloudInitScriptCustomKeyValue": {
      "properties": {
        "keyValuePairs": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FTemplateV2TemplateVersionSpecVersionSourceTemplateVmReferenceGuestCustomizationConfigCloudInitCloudInitScriptCustomKeyValueKeyValuePair:TemplateV2TemplateVersionSpecVersionSourceTemplateVmReferenceGuestCustomizationConfigCloudInitCloudInitScriptCustomKeyValueKeyValuePair"
          }
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "keyValuePairs"
          ]
        }
      }
    },
    "nutanix:index/TemplateV2TemplateVersionSpecVersionSourceTemplateVmReferenceGuestCustomizationConfigCloudInitCloudInitScriptCustomKeyValueKeyValuePair:TemplateV2TemplateVersionSpecVersionSourceTemplateVmReferenceGuestCustomizationConfigCloudInitCloudInitScriptCustomKeyValueKeyValuePair": {
      "properties": {
        "name": {
          "type": "string"
        },
        "values": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FTemplateV2TemplateVersionSpecVersionSourceTemplateVmReferenceGuestCustomizationConfigCloudInitCloudInitScriptCustomKeyValueKeyValuePairValue:TemplateV2TemplateVersionSpecVersionSourceTemplateVmReferenceGuestCustomizationConfigCloudInitCloudInitScriptCustomKeyValueKeyValuePairValue"
          }
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "name",
            "values"
          ]
        }
      }
    },
    "nutanix:index/TemplateV2TemplateVersionSpecVersionSourceTemplateVmReferenceGuestCustomizationConfigCloudInitCloudInitScriptCustomKeyValueKeyValuePairValue:TemplateV2TemplateVersionSpecVersionSourceTemplateVmReferenceGuestCustomizationConfigCloudInitCloudInitScriptCustomKeyValueKeyValuePairValue": {
      "properties": {
        "boolean": {
          "type": "boolean"
        },
        "integer": {
          "type": "integer"
        },
        "integerLists": {
          "type": "array",
          "items": {
            "type": "integer"
          }
        },
        "mapOfStrings": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FTemplateV2TemplateVersionSpecVersionSourceTemplateVmReferenceGuestCustomizationConfigCloudInitCloudInitScriptCustomKeyValueKeyValuePairValueMapOfString:TemplateV2TemplateVersionSpecVersionSourceTemplateVmReferenceGuestCustomizationConfigCloudInitCloudInitScriptCustomKeyValueKeyValuePairValueMapOfString"
          }
        },
        "object": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          }
        },
        "string": {
          "type": "string"
        },
        "stringLists": {
          "type": "array",
          "items": {
            "type": "string"
          }
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "boolean",
            "integer",
            "integerLists",
            "mapOfStrings",
            "object",
            "string",
            "stringLists"
          ]
        }
      }
    },
    "nutanix:index/TemplateV2TemplateVersionSpecVersionSourceTemplateVmReferenceGuestCustomizationConfigCloudInitCloudInitScriptCustomKeyValueKeyValuePairValueMapOfString:TemplateV2TemplateVersionSpecVersionSourceTemplateVmReferenceGuestCustomizationConfigCloudInitCloudInitScriptCustomKeyValueKeyValuePairValueMapOfString": {
      "properties": {
        "map": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          }
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "map"
          ]
        }
      }
    },
    "nutanix:index/TemplateV2TemplateVersionSpecVersionSourceTemplateVmReferenceGuestCustomizationConfigCloudInitCloudInitScriptUserData:TemplateV2TemplateVersionSpecVersionSourceTemplateVmReferenceGuestCustomizationConfigCloudInitCloudInitScriptUserData": {
      "properties": {
        "value": {
          "type": "string"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "value"
          ]
        }
      }
    },
    "nutanix:index/TemplateV2TemplateVersionSpecVersionSourceTemplateVmReferenceGuestCustomizationConfigSysprep:TemplateV2TemplateVersionSpecVersionSourceTemplateVmReferenceGuestCustomizationConfigSysprep": {
      "properties": {
        "installType": {
          "type": "string"
        },
        "sysprepScripts": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FTemplateV2TemplateVersionSpecVersionSourceTemplateVmReferenceGuestCustomizationConfigSysprepSysprepScript:TemplateV2TemplateVersionSpecVersionSourceTemplateVmReferenceGuestCustomizationConfigSysprepSysprepScript"
          }
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "installType",
            "sysprepScripts"
          ]
        }
      }
    },
    "nutanix:index/TemplateV2TemplateVersionSpecVersionSourceTemplateVmReferenceGuestCustomizationConfigSysprepSysprepScript:TemplateV2TemplateVersionSpecVersionSourceTemplateVmReferenceGuestCustomizationConfigSysprepSysprepScript": {
      "properties": {
        "customKeyValues": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FTemplateV2TemplateVersionSpecVersionSourceTemplateVmReferenceGuestCustomizationConfigSysprepSysprepScriptCustomKeyValue:TemplateV2TemplateVersionSpecVersionSourceTemplateVmReferenceGuestCustomizationConfigSysprepSysprepScriptCustomKeyValue"
          }
        },
        "unattendXmls": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FTemplateV2TemplateVersionSpecVersionSourceTemplateVmReferenceGuestCustomizationConfigSysprepSysprepScriptUnattendXml:TemplateV2TemplateVersionSpecVersionSourceTemplateVmReferenceGuestCustomizationConfigSysprepSysprepScriptUnattendXml"
          }
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "customKeyValues",
            "unattendXmls"
          ]
        }
      }
    },
    "nutanix:index/TemplateV2TemplateVersionSpecVersionSourceTemplateVmReferenceGuestCustomizationConfigSysprepSysprepScriptCustomKeyValue:TemplateV2TemplateVersionSpecVersionSourceTemplateVmReferenceGuestCustomizationConfigSysprepSysprepScriptCustomKeyValue": {
      "properties": {
        "keyValuePairs": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FTemplateV2TemplateVersionSpecVersionSourceTemplateVmReferenceGuestCustomizationConfigSysprepSysprepScriptCustomKeyValueKeyValuePair:TemplateV2TemplateVersionSpecVersionSourceTemplateVmReferenceGuestCustomizationConfigSysprepSysprepScriptCustomKeyValueKeyValuePair"
          }
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "keyValuePairs"
          ]
        }
      }
    },
    "nutanix:index/TemplateV2TemplateVersionSpecVersionSourceTemplateVmReferenceGuestCustomizationConfigSysprepSysprepScriptCustomKeyValueKeyValuePair:TemplateV2TemplateVersionSpecVersionSourceTemplateVmReferenceGuestCustomizationConfigSysprepSysprepScriptCustomKeyValueKeyValuePair": {
      "properties": {
        "name": {
          "type": "string"
        },
        "values": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FTemplateV2TemplateVersionSpecVersionSourceTemplateVmReferenceGuestCustomizationConfigSysprepSysprepScriptCustomKeyValueKeyValuePairValue:TemplateV2TemplateVersionSpecVersionSourceTemplateVmReferenceGuestCustomizationConfigSysprepSysprepScriptCustomKeyValueKeyValuePairValue"
          }
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "name",
            "values"
          ]
        }
      }
    },
    "nutanix:index/TemplateV2TemplateVersionSpecVersionSourceTemplateVmReferenceGuestCustomizationConfigSysprepSysprepScriptCustomKeyValueKeyValuePairValue:TemplateV2TemplateVersionSpecVersionSourceTemplateVmReferenceGuestCustomizationConfigSysprepSysprepScriptCustomKeyValueKeyValuePairValue": {
      "properties": {
        "boolean": {
          "type": "boolean"
        },
        "integer": {
          "type": "integer"
        },
        "integerLists": {
          "type": "array",
          "items": {
            "type": "integer"
          }
        },
        "mapOfStrings": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FTemplateV2TemplateVersionSpecVersionSourceTemplateVmReferenceGuestCustomizationConfigSysprepSysprepScriptCustomKeyValueKeyValuePairValueMapOfString:TemplateV2TemplateVersionSpecVersionSourceTemplateVmReferenceGuestCustomizationConfigSysprepSysprepScriptCustomKeyValueKeyValuePairValueMapOfString"
          }
        },
        "object": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          }
        },
        "string": {
          "type": "string"
        },
        "stringLists": {
          "type": "array",
          "items": {
            "type": "string"
          }
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "boolean",
            "integer",
            "integerLists",
            "mapOfStrings",
            "object",
            "string",
            "stringLists"
          ]
        }
      }
    },
    "nutanix:index/TemplateV2TemplateVersionSpecVersionSourceTemplateVmReferenceGuestCustomizationConfigSysprepSysprepScriptCustomKeyValueKeyValuePairValueMapOfString:TemplateV2TemplateVersionSpecVersionSourceTemplateVmReferenceGuestCustomizationConfigSysprepSysprepScriptCustomKeyValueKeyValuePairValueMapOfString": {
      "properties": {
        "map": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          }
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "map"
          ]
        }
      }
    },
    "nutanix:index/TemplateV2TemplateVersionSpecVersionSourceTemplateVmReferenceGuestCustomizationConfigSysprepSysprepScriptUnattendXml:TemplateV2TemplateVersionSpecVersionSourceTemplateVmReferenceGuestCustomizationConfigSysprepSysprepScriptUnattendXml": {
      "properties": {
        "value": {
          "type": "string"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "value"
          ]
        }
      }
    },
    "nutanix:index/TemplateV2TemplateVersionSpecVmSpec:TemplateV2TemplateVersionSpecVmSpec": {
      "properties": {
        "apcConfigs": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FTemplateV2TemplateVersionSpecVmSpecApcConfig:TemplateV2TemplateVersionSpecVmSpecApcConfig"
          }
        },
        "availabilityZones": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FTemplateV2TemplateVersionSpecVmSpecAvailabilityZone:TemplateV2TemplateVersionSpecVmSpecAvailabilityZone"
          }
        },
        "biosUuid": {
          "type": "string"
        },
        "bootConfigs": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FTemplateV2TemplateVersionSpecVmSpecBootConfig:TemplateV2TemplateVersionSpecVmSpecBootConfig"
          }
        },
        "categories": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FTemplateV2TemplateVersionSpecVmSpecCategory:TemplateV2TemplateVersionSpecVmSpecCategory"
          }
        },
        "cdRoms": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FTemplateV2TemplateVersionSpecVmSpecCdRom:TemplateV2TemplateVersionSpecVmSpecCdRom"
          }
        },
        "clusters": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FTemplateV2TemplateVersionSpecVmSpecCluster:TemplateV2TemplateVersionSpecVmSpecCluster"
          }
        },
        "createTime": {
          "type": "string"
        },
        "description": {
          "type": "string"
        },
        "disks": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FTemplateV2TemplateVersionSpecVmSpecDisk:TemplateV2TemplateVersionSpecVmSpecDisk"
          }
        },
        "enabledCpuFeatures": {
          "type": "array",
          "items": {
            "type": "string"
          }
        },
        "extId": {
          "type": "string"
        },
        "generationUuid": {
          "type": "string"
        },
        "gpuses": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FTemplateV2TemplateVersionSpecVmSpecGpus:TemplateV2TemplateVersionSpecVmSpecGpus"
          }
        },
        "guestCustomizations": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FTemplateV2TemplateVersionSpecVmSpecGuestCustomization:TemplateV2TemplateVersionSpecVmSpecGuestCustomization"
          }
        },
        "guestTools": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FTemplateV2TemplateVersionSpecVmSpecGuestTool:TemplateV2TemplateVersionSpecVmSpecGuestTool"
          }
        },
        "hardwareClockTimezone": {
          "type": "string"
        },
        "hosts": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FTemplateV2TemplateVersionSpecVmSpecHost:TemplateV2TemplateVersionSpecVmSpecHost"
          }
        },
        "isAgentVm": {
          "type": "boolean"
        },
        "isBrandingEnabled": {
          "type": "boolean"
        },
        "isCpuHotplugEnabled": {
          "type": "boolean"
        },
        "isCpuPassthroughEnabled": {
          "type": "boolean"
        },
        "isCrossClusterMigrationInProgress": {
          "type": "boolean"
        },
        "isGpuConsoleEnabled": {
          "type": "boolean"
        },
        "isLiveMigrateCapable": {
          "type": "boolean"
        },
        "isMemoryOvercommitEnabled": {
          "type": "boolean"
        },
        "isScsiControllerEnabled": {
          "type": "boolean"
        },
        "isVcpuHardPinningEnabled": {
          "type": "boolean"
        },
        "isVgaConsoleEnabled": {
          "type": "boolean"
        },
        "links": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FTemplateV2TemplateVersionSpecVmSpecLink:TemplateV2TemplateVersionSpecVmSpecLink"
          }
        },
        "machineType": {
          "type": "string"
        },
        "memorySizeBytes": {
          "type": "integer"
        },
        "name": {
          "type": "string"
        },
        "nics": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FTemplateV2TemplateVersionSpecVmSpecNic:TemplateV2TemplateVersionSpecVmSpecNic"
          }
        },
        "numCoresPerSocket": {
          "type": "integer"
        },
        "numNumaNodes": {
          "type": "integer"
        },
        "numSockets": {
          "type": "integer"
        },
        "numThreadsPerCore": {
          "type": "integer"
        },
        "ownershipInfos": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FTemplateV2TemplateVersionSpecVmSpecOwnershipInfo:TemplateV2TemplateVersionSpecVmSpecOwnershipInfo"
          }
        },
        "pciDevices": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FTemplateV2TemplateVersionSpecVmSpecPciDevice:TemplateV2TemplateVersionSpecVmSpecPciDevice"
          }
        },
        "powerState": {
          "type": "string"
        },
        "protectionPolicyStates": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FTemplateV2TemplateVersionSpecVmSpecProtectionPolicyState:TemplateV2TemplateVersionSpecVmSpecProtectionPolicyState"
          }
        },
        "protectionType": {
          "type": "string"
        },
        "serialPorts": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FTemplateV2TemplateVersionSpecVmSpecSerialPort:TemplateV2TemplateVersionSpecVmSpecSerialPort"
          }
        },
        "sources": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FTemplateV2TemplateVersionSpecVmSpecSource:TemplateV2TemplateVersionSpecVmSpecSource"
          }
        },
        "storageConfigs": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FTemplateV2TemplateVersionSpecVmSpecStorageConfig:TemplateV2TemplateVersionSpecVmSpecStorageConfig"
          }
        },
        "tenantId": {
          "type": "string"
        },
        "updateTime": {
          "type": "string"
        },
        "vtpmConfigs": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FTemplateV2TemplateVersionSpecVmSpecVtpmConfig:TemplateV2TemplateVersionSpecVmSpecVtpmConfig"
          }
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "apcConfigs",
            "availabilityZones",
            "biosUuid",
            "bootConfigs",
            "categories",
            "cdRoms",
            "clusters",
            "createTime",
            "description",
            "disks",
            "enabledCpuFeatures",
            "extId",
            "generationUuid",
            "gpuses",
            "guestCustomizations",
            "guestTools",
            "hardwareClockTimezone",
            "hosts",
            "isAgentVm",
            "isBrandingEnabled",
            "isCpuHotplugEnabled",
            "isCpuPassthroughEnabled",
            "isCrossClusterMigrationInProgress",
            "isGpuConsoleEnabled",
            "isLiveMigrateCapable",
            "isMemoryOvercommitEnabled",
            "isScsiControllerEnabled",
            "isVcpuHardPinningEnabled",
            "isVgaConsoleEnabled",
            "links",
            "machineType",
            "memorySizeBytes",
            "name",
            "nics",
            "numCoresPerSocket",
            "numNumaNodes",
            "numSockets",
            "numThreadsPerCore",
            "ownershipInfos",
            "pciDevices",
            "powerState",
            "protectionPolicyStates",
            "protectionType",
            "serialPorts",
            "sources",
            "storageConfigs",
            "tenantId",
            "updateTime",
            "vtpmConfigs"
          ]
        }
      }
    },
    "nutanix:index/TemplateV2TemplateVersionSpecVmSpecApcConfig:TemplateV2TemplateVersionSpecVmSpecApcConfig": {
      "properties": {
        "cpuModels": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FTemplateV2TemplateVersionSpecVmSpecApcConfigCpuModel:TemplateV2TemplateVersionSpecVmSpecApcConfigCpuModel"
          }
        },
        "isApcEnabled": {
          "type": "boolean"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "cpuModels",
            "isApcEnabled"
          ]
        }
      }
    },
    "nutanix:index/TemplateV2TemplateVersionSpecVmSpecApcConfigCpuModel:TemplateV2TemplateVersionSpecVmSpecApcConfigCpuModel": {
      "properties": {
        "extId": {
          "type": "string"
        },
        "name": {
          "type": "string"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "extId",
            "name"
          ]
        }
      }
    },
    "nutanix:index/TemplateV2TemplateVersionSpecVmSpecAvailabilityZone:TemplateV2TemplateVersionSpecVmSpecAvailabilityZone": {
      "properties": {
        "extId": {
          "type": "string"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "extId"
          ]
        }
      }
    },
    "nutanix:index/TemplateV2TemplateVersionSpecVmSpecBootConfig:TemplateV2TemplateVersionSpecVmSpecBootConfig": {
      "properties": {
        "legacyBoots": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FTemplateV2TemplateVersionSpecVmSpecBootConfigLegacyBoot:TemplateV2TemplateVersionSpecVmSpecBootConfigLegacyBoot"
          }
        },
        "uefiBoots": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FTemplateV2TemplateVersionSpecVmSpecBootConfigUefiBoot:TemplateV2TemplateVersionSpecVmSpecBootConfigUefiBoot"
          }
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "legacyBoots",
            "uefiBoots"
          ]
        }
      }
    },
    "nutanix:index/TemplateV2TemplateVersionSpecVmSpecBootConfigLegacyBoot:TemplateV2TemplateVersionSpecVmSpecBootConfigLegacyBoot": {
      "properties": {
        "bootDevices": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FTemplateV2TemplateVersionSpecVmSpecBootConfigLegacyBootBootDevice:TemplateV2TemplateVersionSpecVmSpecBootConfigLegacyBootBootDevice"
          }
        },
        "bootOrders": {
          "type": "array",
          "items": {
            "type": "string"
          }
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "bootDevices",
            "bootOrders"
          ]
        }
      }
    },
    "nutanix:index/TemplateV2TemplateVersionSpecVmSpecBootConfigLegacyBootBootDevice:TemplateV2TemplateVersionSpecVmSpecBootConfigLegacyBootBootDevice": {
      "properties": {
        "bootDeviceDisks": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FTemplateV2TemplateVersionSpecVmSpecBootConfigLegacyBootBootDeviceBootDeviceDisk:TemplateV2TemplateVersionSpecVmSpecBootConfigLegacyBootBootDeviceBootDeviceDisk"
          }
        },
        "bootDeviceNics": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FTemplateV2TemplateVersionSpecVmSpecBootConfigLegacyBootBootDeviceBootDeviceNic:TemplateV2TemplateVersionSpecVmSpecBootConfigLegacyBootBootDeviceBootDeviceNic"
          }
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "bootDeviceDisks",
            "bootDeviceNics"
          ]
        }
      }
    },
    "nutanix:index/TemplateV2TemplateVersionSpecVmSpecBootConfigLegacyBootBootDeviceBootDeviceDisk:TemplateV2TemplateVersionSpecVmSpecBootConfigLegacyBootBootDeviceBootDeviceDisk": {
      "properties": {
        "diskAddresses": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FTemplateV2TemplateVersionSpecVmSpecBootConfigLegacyBootBootDeviceBootDeviceDiskDiskAddress:TemplateV2TemplateVersionSpecVmSpecBootConfigLegacyBootBootDeviceBootDeviceDiskDiskAddress"
          }
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "diskAddresses"
          ]
        }
      }
    },
    "nutanix:index/TemplateV2TemplateVersionSpecVmSpecBootConfigLegacyBootBootDeviceBootDeviceDiskDiskAddress:TemplateV2TemplateVersionSpecVmSpecBootConfigLegacyBootBootDeviceBootDeviceDiskDiskAddress": {
      "properties": {
        "busType": {
          "type": "string"
        },
        "index": {
          "type": "integer"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "busType",
            "index"
          ]
        }
      }
    },
    "nutanix:index/TemplateV2TemplateVersionSpecVmSpecBootConfigLegacyBootBootDeviceBootDeviceNic:TemplateV2TemplateVersionSpecVmSpecBootConfigLegacyBootBootDeviceBootDeviceNic": {
      "properties": {
        "macAddress": {
          "type": "string"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "macAddress"
          ]
        }
      }
    },
    "nutanix:index/TemplateV2TemplateVersionSpecVmSpecBootConfigUefiBoot:TemplateV2TemplateVersionSpecVmSpecBootConfigUefiBoot": {
      "properties": {
        "bootDevices": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FTemplateV2TemplateVersionSpecVmSpecBootConfigUefiBootBootDevice:TemplateV2TemplateVersionSpecVmSpecBootConfigUefiBootBootDevice"
          }
        },
        "bootOrders": {
          "type": "array",
          "items": {
            "type": "string"
          }
        },
        "isSecureBootEnabled": {
          "type": "boolean"
        },
        "nvramDevices": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FTemplateV2TemplateVersionSpecVmSpecBootConfigUefiBootNvramDevice:TemplateV2TemplateVersionSpecVmSpecBootConfigUefiBootNvramDevice"
          }
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "bootDevices",
            "bootOrders",
            "isSecureBootEnabled",
            "nvramDevices"
          ]
        }
      }
    },
    "nutanix:index/TemplateV2TemplateVersionSpecVmSpecBootConfigUefiBootBootDevice:TemplateV2TemplateVersionSpecVmSpecBootConfigUefiBootBootDevice": {
      "properties": {
        "bootDeviceDisks": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FTemplateV2TemplateVersionSpecVmSpecBootConfigUefiBootBootDeviceBootDeviceDisk:TemplateV2TemplateVersionSpecVmSpecBootConfigUefiBootBootDeviceBootDeviceDisk"
          }
        },
        "bootDeviceNics": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FTemplateV2TemplateVersionSpecVmSpecBootConfigUefiBootBootDeviceBootDeviceNic:TemplateV2TemplateVersionSpecVmSpecBootConfigUefiBootBootDeviceBootDeviceNic"
          }
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "bootDeviceDisks",
            "bootDeviceNics"
          ]
        }
      }
    },
    "nutanix:index/TemplateV2TemplateVersionSpecVmSpecBootConfigUefiBootBootDeviceBootDeviceDisk:TemplateV2TemplateVersionSpecVmSpecBootConfigUefiBootBootDeviceBootDeviceDisk": {
      "properties": {
        "diskAddresses": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FTemplateV2TemplateVersionSpecVmSpecBootConfigUefiBootBootDeviceBootDeviceDiskDiskAddress:TemplateV2TemplateVersionSpecVmSpecBootConfigUefiBootBootDeviceBootDeviceDiskDiskAddress"
          }
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "diskAddresses"
          ]
        }
      }
    },
    "nutanix:index/TemplateV2TemplateVersionSpecVmSpecBootConfigUefiBootBootDeviceBootDeviceDiskDiskAddress:TemplateV2TemplateVersionSpecVmSpecBootConfigUefiBootBootDeviceBootDeviceDiskDiskAddress": {
      "properties": {
        "busType": {
          "type": "string"
        },
        "index": {
          "type": "integer"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "busType",
            "index"
          ]
        }
      }
    },
    "nutanix:index/TemplateV2TemplateVersionSpecVmSpecBootConfigUefiBootBootDeviceBootDeviceNic:TemplateV2TemplateVersionSpecVmSpecBootConfigUefiBootBootDeviceBootDeviceNic": {
      "properties": {
        "macAddress": {
          "type": "string"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "macAddress"
          ]
        }
      }
    },
    "nutanix:index/TemplateV2TemplateVersionSpecVmSpecBootConfigUefiBootNvramDevice:TemplateV2TemplateVersionSpecVmSpecBootConfigUefiBootNvramDevice": {
      "properties": {
        "backingStorageInfos": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FTemplateV2TemplateVersionSpecVmSpecBootConfigUefiBootNvramDeviceBackingStorageInfo:TemplateV2TemplateVersionSpecVmSpecBootConfigUefiBootNvramDeviceBackingStorageInfo"
          }
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "backingStorageInfos"
          ]
        }
      }
    },
    "nutanix:index/TemplateV2TemplateVersionSpecVmSpecBootConfigUefiBootNvramDeviceBackingStorageInfo:TemplateV2TemplateVersionSpecVmSpecBootConfigUefiBootNvramDeviceBackingStorageInfo": {
      "properties": {
        "dataSources": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FTemplateV2TemplateVersionSpecVmSpecBootConfigUefiBootNvramDeviceBackingStorageInfoDataSource:TemplateV2TemplateVersionSpecVmSpecBootConfigUefiBootNvramDeviceBackingStorageInfoDataSource"
          }
        },
        "diskExtId": {
          "type": "string"
        },
        "diskSizeBytes": {
          "type": "integer"
        },
        "isMigrationInProgress": {
          "type": "boolean"
        },
        "storageConfigs": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FTemplateV2TemplateVersionSpecVmSpecBootConfigUefiBootNvramDeviceBackingStorageInfoStorageConfig:TemplateV2TemplateVersionSpecVmSpecBootConfigUefiBootNvramDeviceBackingStorageInfoStorageConfig"
          }
        },
        "storageContainers": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FTemplateV2TemplateVersionSpecVmSpecBootConfigUefiBootNvramDeviceBackingStorageInfoStorageContainer:TemplateV2TemplateVersionSpecVmSpecBootConfigUefiBootNvramDeviceBackingStorageInfoStorageContainer"
          }
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "dataSources",
            "diskExtId",
            "diskSizeBytes",
            "isMigrationInProgress",
            "storageConfigs",
            "storageContainers"
          ]
        }
      }
    },
    "nutanix:index/TemplateV2TemplateVersionSpecVmSpecBootConfigUefiBootNvramDeviceBackingStorageInfoDataSource:TemplateV2TemplateVersionSpecVmSpecBootConfigUefiBootNvramDeviceBackingStorageInfoDataSource": {
      "properties": {
        "references": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FTemplateV2TemplateVersionSpecVmSpecBootConfigUefiBootNvramDeviceBackingStorageInfoDataSourceReference:TemplateV2TemplateVersionSpecVmSpecBootConfigUefiBootNvramDeviceBackingStorageInfoDataSourceReference"
          }
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "references"
          ]
        }
      }
    },
    "nutanix:index/TemplateV2TemplateVersionSpecVmSpecBootConfigUefiBootNvramDeviceBackingStorageInfoDataSourceReference:TemplateV2TemplateVersionSpecVmSpecBootConfigUefiBootNvramDeviceBackingStorageInfoDataSourceReference": {
      "properties": {
        "imageReferences": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FTemplateV2TemplateVersionSpecVmSpecBootConfigUefiBootNvramDeviceBackingStorageInfoDataSourceReferenceImageReference:TemplateV2TemplateVersionSpecVmSpecBootConfigUefiBootNvramDeviceBackingStorageInfoDataSourceReferenceImageReference"
          }
        },
        "vmDiskReferences": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FTemplateV2TemplateVersionSpecVmSpecBootConfigUefiBootNvramDeviceBackingStorageInfoDataSourceReferenceVmDiskReference:TemplateV2TemplateVersionSpecVmSpecBootConfigUefiBootNvramDeviceBackingStorageInfoDataSourceReferenceVmDiskReference"
          }
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "imageReferences",
            "vmDiskReferences"
          ]
        }
      }
    },
    "nutanix:index/TemplateV2TemplateVersionSpecVmSpecBootConfigUefiBootNvramDeviceBackingStorageInfoDataSourceReferenceImageReference:TemplateV2TemplateVersionSpecVmSpecBootConfigUefiBootNvramDeviceBackingStorageInfoDataSourceReferenceImageReference": {
      "properties": {
        "imageExtId": {
          "type": "string"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "imageExtId"
          ]
        }
      }
    },
    "nutanix:index/TemplateV2TemplateVersionSpecVmSpecBootConfigUefiBootNvramDeviceBackingStorageInfoDataSourceReferenceVmDiskReference:TemplateV2TemplateVersionSpecVmSpecBootConfigUefiBootNvramDeviceBackingStorageInfoDataSourceReferenceVmDiskReference": {
      "properties": {
        "diskAddresses": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FTemplateV2TemplateVersionSpecVmSpecBootConfigUefiBootNvramDeviceBackingStorageInfoDataSourceReferenceVmDiskReferenceDiskAddress:TemplateV2TemplateVersionSpecVmSpecBootConfigUefiBootNvramDeviceBackingStorageInfoDataSourceReferenceVmDiskReferenceDiskAddress"
          }
        },
        "diskExtId": {
          "type": "string"
        },
        "vmReferences": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FTemplateV2TemplateVersionSpecVmSpecBootConfigUefiBootNvramDeviceBackingStorageInfoDataSourceReferenceVmDiskReferenceVmReference:TemplateV2TemplateVersionSpecVmSpecBootConfigUefiBootNvramDeviceBackingStorageInfoDataSourceReferenceVmDiskReferenceVmReference"
          }
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "diskAddresses",
            "diskExtId",
            "vmReferences"
          ]
        }
      }
    },
    "nutanix:index/TemplateV2TemplateVersionSpecVmSpecBootConfigUefiBootNvramDeviceBackingStorageInfoDataSourceReferenceVmDiskReferenceDiskAddress:TemplateV2TemplateVersionSpecVmSpecBootConfigUefiBootNvramDeviceBackingStorageInfoDataSourceReferenceVmDiskReferenceDiskAddress": {
      "properties": {
        "busType": {
          "type": "string"
        },
        "index": {
          "type": "integer"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "busType",
            "index"
          ]
        }
      }
    },
    "nutanix:index/TemplateV2TemplateVersionSpecVmSpecBootConfigUefiBootNvramDeviceBackingStorageInfoDataSourceReferenceVmDiskReferenceVmReference:TemplateV2TemplateVersionSpecVmSpecBootConfigUefiBootNvramDeviceBackingStorageInfoDataSourceReferenceVmDiskReferenceVmReference": {
      "properties": {
        "extId": {
          "type": "string"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "extId"
          ]
        }
      }
    },
    "nutanix:index/TemplateV2TemplateVersionSpecVmSpecBootConfigUefiBootNvramDeviceBackingStorageInfoStorageConfig:TemplateV2TemplateVersionSpecVmSpecBootConfigUefiBootNvramDeviceBackingStorageInfoStorageConfig": {
      "properties": {
        "isFlashModeEnabled": {
          "type": "boolean"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "isFlashModeEnabled"
          ]
        }
      }
    },
    "nutanix:index/TemplateV2TemplateVersionSpecVmSpecBootConfigUefiBootNvramDeviceBackingStorageInfoStorageContainer:TemplateV2TemplateVersionSpecVmSpecBootConfigUefiBootNvramDeviceBackingStorageInfoStorageContainer": {
      "properties": {
        "extId": {
          "type": "string"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "extId"
          ]
        }
      }
    },
    "nutanix:index/TemplateV2TemplateVersionSpecVmSpecCategory:TemplateV2TemplateVersionSpecVmSpecCategory": {
      "properties": {
        "extId": {
          "type": "string"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "extId"
          ]
        }
      }
    },
    "nutanix:index/TemplateV2TemplateVersionSpecVmSpecCdRom:TemplateV2TemplateVersionSpecVmSpecCdRom": {
      "properties": {
        "backingInfos": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FTemplateV2TemplateVersionSpecVmSpecCdRomBackingInfo:TemplateV2TemplateVersionSpecVmSpecCdRomBackingInfo"
          }
        },
        "diskAddresses": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FTemplateV2TemplateVersionSpecVmSpecCdRomDiskAddress:TemplateV2TemplateVersionSpecVmSpecCdRomDiskAddress"
          }
        },
        "extId": {
          "type": "string"
        },
        "isoType": {
          "type": "string"
        },
        "links": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FTemplateV2TemplateVersionSpecVmSpecCdRomLink:TemplateV2TemplateVersionSpecVmSpecCdRomLink"
          }
        },
        "tenantId": {
          "type": "string"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "backingInfos",
            "diskAddresses",
            "extId",
            "isoType",
            "links",
            "tenantId"
          ]
        }
      }
    },
    "nutanix:index/TemplateV2TemplateVersionSpecVmSpecCdRomBackingInfo:TemplateV2TemplateVersionSpecVmSpecCdRomBackingInfo": {
      "properties": {
        "dataSources": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FTemplateV2TemplateVersionSpecVmSpecCdRomBackingInfoDataSource:TemplateV2TemplateVersionSpecVmSpecCdRomBackingInfoDataSource"
          }
        },
        "diskExtId": {
          "type": "string"
        },
        "diskSizeBytes": {
          "type": "integer"
        },
        "isMigrationInProgress": {
          "type": "boolean"
        },
        "storageConfigs": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FTemplateV2TemplateVersionSpecVmSpecCdRomBackingInfoStorageConfig:TemplateV2TemplateVersionSpecVmSpecCdRomBackingInfoStorageConfig"
          }
        },
        "storageContainers": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FTemplateV2TemplateVersionSpecVmSpecCdRomBackingInfoStorageContainer:TemplateV2TemplateVersionSpecVmSpecCdRomBackingInfoStorageContainer"
          }
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "dataSources",
            "diskExtId",
            "diskSizeBytes",
            "isMigrationInProgress",
            "storageConfigs",
            "storageContainers"
          ]
        }
      }
    },
    "nutanix:index/TemplateV2TemplateVersionSpecVmSpecCdRomBackingInfoDataSource:TemplateV2TemplateVersionSpecVmSpecCdRomBackingInfoDataSource": {
      "properties": {
        "references": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FTemplateV2TemplateVersionSpecVmSpecCdRomBackingInfoDataSourceReference:TemplateV2TemplateVersionSpecVmSpecCdRomBackingInfoDataSourceReference"
          }
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "references"
          ]
        }
      }
    },
    "nutanix:index/TemplateV2TemplateVersionSpecVmSpecCdRomBackingInfoDataSourceReference:TemplateV2TemplateVersionSpecVmSpecCdRomBackingInfoDataSourceReference": {
      "properties": {
        "imageReferences": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FTemplateV2TemplateVersionSpecVmSpecCdRomBackingInfoDataSourceReferenceImageReference:TemplateV2TemplateVersionSpecVmSpecCdRomBackingInfoDataSourceReferenceImageReference"
          }
        },
        "vmDiskReferences": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FTemplateV2TemplateVersionSpecVmSpecCdRomBackingInfoDataSourceReferenceVmDiskReference:TemplateV2TemplateVersionSpecVmSpecCdRomBackingInfoDataSourceReferenceVmDiskReference"
          }
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "imageReferences",
            "vmDiskReferences"
          ]
        }
      }
    },
    "nutanix:index/TemplateV2TemplateVersionSpecVmSpecCdRomBackingInfoDataSourceReferenceImageReference:TemplateV2TemplateVersionSpecVmSpecCdRomBackingInfoDataSourceReferenceImageReference": {
      "properties": {
        "imageExtId": {
          "type": "string"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "imageExtId"
          ]
        }
      }
    },
    "nutanix:index/TemplateV2TemplateVersionSpecVmSpecCdRomBackingInfoDataSourceReferenceVmDiskReference:TemplateV2TemplateVersionSpecVmSpecCdRomBackingInfoDataSourceReferenceVmDiskReference": {
      "properties": {
        "diskAddresses": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FTemplateV2TemplateVersionSpecVmSpecCdRomBackingInfoDataSourceReferenceVmDiskReferenceDiskAddress:TemplateV2TemplateVersionSpecVmSpecCdRomBackingInfoDataSourceReferenceVmDiskReferenceDiskAddress"
          }
        },
        "diskExtId": {
          "type": "string"
        },
        "vmReferences": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FTemplateV2TemplateVersionSpecVmSpecCdRomBackingInfoDataSourceReferenceVmDiskReferenceVmReference:TemplateV2TemplateVersionSpecVmSpecCdRomBackingInfoDataSourceReferenceVmDiskReferenceVmReference"
          }
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "diskAddresses",
            "diskExtId",
            "vmReferences"
          ]
        }
      }
    },
    "nutanix:index/TemplateV2TemplateVersionSpecVmSpecCdRomBackingInfoDataSourceReferenceVmDiskReferenceDiskAddress:TemplateV2TemplateVersionSpecVmSpecCdRomBackingInfoDataSourceReferenceVmDiskReferenceDiskAddress": {
      "properties": {
        "busType": {
          "type": "string"
        },
        "index": {
          "type": "integer"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "busType",
            "index"
          ]
        }
      }
    },
    "nutanix:index/TemplateV2TemplateVersionSpecVmSpecCdRomBackingInfoDataSourceReferenceVmDiskReferenceVmReference:TemplateV2TemplateVersionSpecVmSpecCdRomBackingInfoDataSourceReferenceVmDiskReferenceVmReference": {
      "properties": {
        "extId": {
          "type": "string"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "extId"
          ]
        }
      }
    },
    "nutanix:index/TemplateV2TemplateVersionSpecVmSpecCdRomBackingInfoStorageConfig:TemplateV2TemplateVersionSpecVmSpecCdRomBackingInfoStorageConfig": {
      "properties": {
        "isFlashModeEnabled": {
          "type": "boolean"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "isFlashModeEnabled"
          ]
        }
      }
    },
    "nutanix:index/TemplateV2TemplateVersionSpecVmSpecCdRomBackingInfoStorageContainer:TemplateV2TemplateVersionSpecVmSpecCdRomBackingInfoStorageContainer": {
      "properties": {
        "extId": {
          "type": "string"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "extId"
          ]
        }
      }
    },
    "nutanix:index/TemplateV2TemplateVersionSpecVmSpecCdRomDiskAddress:TemplateV2TemplateVersionSpecVmSpecCdRomDiskAddress": {
      "properties": {
        "busType": {
          "type": "string"
        },
        "index": {
          "type": "integer"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "busType",
            "index"
          ]
        }
      }
    },
    "nutanix:index/TemplateV2TemplateVersionSpecVmSpecCdRomLink:TemplateV2TemplateVersionSpecVmSpecCdRomLink": {
      "properties": {
        "href": {
          "type": "string"
        },
        "rel": {
          "type": "string"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "href",
            "rel"
          ]
        }
      }
    },
    "nutanix:index/TemplateV2TemplateVersionSpecVmSpecCluster:TemplateV2TemplateVersionSpecVmSpecCluster": {
      "properties": {
        "extId": {
          "type": "string"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "extId"
          ]
        }
      }
    },
    "nutanix:index/TemplateV2TemplateVersionSpecVmSpecDisk:TemplateV2TemplateVersionSpecVmSpecDisk": {
      "properties": {
        "backingInfos": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FTemplateV2TemplateVersionSpecVmSpecDiskBackingInfo:TemplateV2TemplateVersionSpecVmSpecDiskBackingInfo"
          }
        },
        "diskAddresses": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FTemplateV2TemplateVersionSpecVmSpecDiskDiskAddress:TemplateV2TemplateVersionSpecVmSpecDiskDiskAddress"
          }
        },
        "extId": {
          "type": "string"
        },
        "links": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FTemplateV2TemplateVersionSpecVmSpecDiskLink:TemplateV2TemplateVersionSpecVmSpecDiskLink"
          }
        },
        "tenantId": {
          "type": "string"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "backingInfos",
            "diskAddresses",
            "extId",
            "links",
            "tenantId"
          ]
        }
      }
    },
    "nutanix:index/TemplateV2TemplateVersionSpecVmSpecDiskBackingInfo:TemplateV2TemplateVersionSpecVmSpecDiskBackingInfo": {
      "properties": {
        "adfsVolumeGroupReferences": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FTemplateV2TemplateVersionSpecVmSpecDiskBackingInfoAdfsVolumeGroupReference:TemplateV2TemplateVersionSpecVmSpecDiskBackingInfoAdfsVolumeGroupReference"
          }
        },
        "vmDisks": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FTemplateV2TemplateVersionSpecVmSpecDiskBackingInfoVmDisk:TemplateV2TemplateVersionSpecVmSpecDiskBackingInfoVmDisk"
          }
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "adfsVolumeGroupReferences",
            "vmDisks"
          ]
        }
      }
    },
    "nutanix:index/TemplateV2TemplateVersionSpecVmSpecDiskBackingInfoAdfsVolumeGroupReference:TemplateV2TemplateVersionSpecVmSpecDiskBackingInfoAdfsVolumeGroupReference": {
      "properties": {
        "volumeGroupExtId": {
          "type": "string"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "volumeGroupExtId"
          ]
        }
      }
    },
    "nutanix:index/TemplateV2TemplateVersionSpecVmSpecDiskBackingInfoVmDisk:TemplateV2TemplateVersionSpecVmSpecDiskBackingInfoVmDisk": {
      "properties": {
        "dataSources": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FTemplateV2TemplateVersionSpecVmSpecDiskBackingInfoVmDiskDataSource:TemplateV2TemplateVersionSpecVmSpecDiskBackingInfoVmDiskDataSource"
          }
        },
        "diskExtId": {
          "type": "string"
        },
        "diskSizeBytes": {
          "type": "integer"
        },
        "isMigrationInProgress": {
          "type": "boolean"
        },
        "storageConfigs": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FTemplateV2TemplateVersionSpecVmSpecDiskBackingInfoVmDiskStorageConfig:TemplateV2TemplateVersionSpecVmSpecDiskBackingInfoVmDiskStorageConfig"
          }
        },
        "storageContainers": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FTemplateV2TemplateVersionSpecVmSpecDiskBackingInfoVmDiskStorageContainer:TemplateV2TemplateVersionSpecVmSpecDiskBackingInfoVmDiskStorageContainer"
          }
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "dataSources",
            "diskExtId",
            "diskSizeBytes",
            "isMigrationInProgress",
            "storageConfigs",
            "storageContainers"
          ]
        }
      }
    },
    "nutanix:index/TemplateV2TemplateVersionSpecVmSpecDiskBackingInfoVmDiskDataSource:TemplateV2TemplateVersionSpecVmSpecDiskBackingInfoVmDiskDataSource": {
      "properties": {
        "references": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FTemplateV2TemplateVersionSpecVmSpecDiskBackingInfoVmDiskDataSourceReference:TemplateV2TemplateVersionSpecVmSpecDiskBackingInfoVmDiskDataSourceReference"
          }
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "references"
          ]
        }
      }
    },
    "nutanix:index/TemplateV2TemplateVersionSpecVmSpecDiskBackingInfoVmDiskDataSourceReference:TemplateV2TemplateVersionSpecVmSpecDiskBackingInfoVmDiskDataSourceReference": {
      "properties": {
        "imageReferences": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FTemplateV2TemplateVersionSpecVmSpecDiskBackingInfoVmDiskDataSourceReferenceImageReference:TemplateV2TemplateVersionSpecVmSpecDiskBackingInfoVmDiskDataSourceReferenceImageReference"
          }
        },
        "vmDiskReferences": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FTemplateV2TemplateVersionSpecVmSpecDiskBackingInfoVmDiskDataSourceReferenceVmDiskReference:TemplateV2TemplateVersionSpecVmSpecDiskBackingInfoVmDiskDataSourceReferenceVmDiskReference"
          }
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "imageReferences",
            "vmDiskReferences"
          ]
        }
      }
    },
    "nutanix:index/TemplateV2TemplateVersionSpecVmSpecDiskBackingInfoVmDiskDataSourceReferenceImageReference:TemplateV2TemplateVersionSpecVmSpecDiskBackingInfoVmDiskDataSourceReferenceImageReference": {
      "properties": {
        "imageExtId": {
          "type": "string"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "imageExtId"
          ]
        }
      }
    },
    "nutanix:index/TemplateV2TemplateVersionSpecVmSpecDiskBackingInfoVmDiskDataSourceReferenceVmDiskReference:TemplateV2TemplateVersionSpecVmSpecDiskBackingInfoVmDiskDataSourceReferenceVmDiskReference": {
      "properties": {
        "diskAddresses": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FTemplateV2TemplateVersionSpecVmSpecDiskBackingInfoVmDiskDataSourceReferenceVmDiskReferenceDiskAddress:TemplateV2TemplateVersionSpecVmSpecDiskBackingInfoVmDiskDataSourceReferenceVmDiskReferenceDiskAddress"
          }
        },
        "diskExtId": {
          "type": "string"
        },
        "vmReferences": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FTemplateV2TemplateVersionSpecVmSpecDiskBackingInfoVmDiskDataSourceReferenceVmDiskReferenceVmReference:TemplateV2TemplateVersionSpecVmSpecDiskBackingInfoVmDiskDataSourceReferenceVmDiskReferenceVmReference"
          }
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "diskAddresses",
            "diskExtId",
            "vmReferences"
          ]
        }
      }
    },
    "nutanix:index/TemplateV2TemplateVersionSpecVmSpecDiskBackingInfoVmDiskDataSourceReferenceVmDiskReferenceDiskAddress:TemplateV2TemplateVersionSpecVmSpecDiskBackingInfoVmDiskDataSourceReferenceVmDiskReferenceDiskAddress": {
      "properties": {
        "busType": {
          "type": "string"
        },
        "index": {
          "type": "integer"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "busType",
            "index"
          ]
        }
      }
    },
    "nutanix:index/TemplateV2TemplateVersionSpecVmSpecDiskBackingInfoVmDiskDataSourceReferenceVmDiskReferenceVmReference:TemplateV2TemplateVersionSpecVmSpecDiskBackingInfoVmDiskDataSourceReferenceVmDiskReferenceVmReference": {
      "properties": {
        "extId": {
          "type": "string"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "extId"
          ]
        }
      }
    },
    "nutanix:index/TemplateV2TemplateVersionSpecVmSpecDiskBackingInfoVmDiskStorageConfig:TemplateV2TemplateVersionSpecVmSpecDiskBackingInfoVmDiskStorageConfig": {
      "properties": {
        "isFlashModeEnabled": {
          "type": "boolean"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "isFlashModeEnabled"
          ]
        }
      }
    },
    "nutanix:index/TemplateV2TemplateVersionSpecVmSpecDiskBackingInfoVmDiskStorageContainer:TemplateV2TemplateVersionSpecVmSpecDiskBackingInfoVmDiskStorageContainer": {
      "properties": {
        "extId": {
          "type": "string"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "extId"
          ]
        }
      }
    },
    "nutanix:index/TemplateV2TemplateVersionSpecVmSpecDiskDiskAddress:TemplateV2TemplateVersionSpecVmSpecDiskDiskAddress": {
      "properties": {
        "busType": {
          "type": "string"
        },
        "index": {
          "type": "integer"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "busType",
            "index"
          ]
        }
      }
    },
    "nutanix:index/TemplateV2TemplateVersionSpecVmSpecDiskLink:TemplateV2TemplateVersionSpecVmSpecDiskLink": {
      "properties": {
        "href": {
          "type": "string"
        },
        "rel": {
          "type": "string"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "href",
            "rel"
          ]
        }
      }
    },
    "nutanix:index/TemplateV2TemplateVersionSpecVmSpecGpus:TemplateV2TemplateVersionSpecVmSpecGpus": {
      "properties": {
        "deviceId": {
          "type": "integer"
        },
        "extId": {
          "type": "string"
        },
        "fraction": {
          "type": "integer"
        },
        "frameBufferSizeBytes": {
          "type": "integer"
        },
        "guestDriverVersion": {
          "type": "string"
        },
        "links": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FTemplateV2TemplateVersionSpecVmSpecGpusLink:TemplateV2TemplateVersionSpecVmSpecGpusLink"
          }
        },
        "mode": {
          "type": "string"
        },
        "name": {
          "type": "string"
        },
        "numVirtualDisplayHeads": {
          "type": "integer"
        },
        "pciAddresses": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FTemplateV2TemplateVersionSpecVmSpecGpusPciAddress:TemplateV2TemplateVersionSpecVmSpecGpusPciAddress"
          }
        },
        "tenantId": {
          "type": "string"
        },
        "vendor": {
          "type": "string"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "deviceId",
            "extId",
            "fraction",
            "frameBufferSizeBytes",
            "guestDriverVersion",
            "links",
            "mode",
            "name",
            "numVirtualDisplayHeads",
            "pciAddresses",
            "tenantId",
            "vendor"
          ]
        }
      }
    },
    "nutanix:index/TemplateV2TemplateVersionSpecVmSpecGpusLink:TemplateV2TemplateVersionSpecVmSpecGpusLink": {
      "properties": {
        "href": {
          "type": "string"
        },
        "rel": {
          "type": "string"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "href",
            "rel"
          ]
        }
      }
    },
    "nutanix:index/TemplateV2TemplateVersionSpecVmSpecGpusPciAddress:TemplateV2TemplateVersionSpecVmSpecGpusPciAddress": {
      "properties": {
        "bus": {
          "type": "integer"
        },
        "device": {
          "type": "integer"
        },
        "func": {
          "type": "integer"
        },
        "segment": {
          "type": "integer"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "bus",
            "device",
            "func",
            "segment"
          ]
        }
      }
    },
    "nutanix:index/TemplateV2TemplateVersionSpecVmSpecGuestCustomization:TemplateV2TemplateVersionSpecVmSpecGuestCustomization": {
      "properties": {
        "configs": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FTemplateV2TemplateVersionSpecVmSpecGuestCustomizationConfig:TemplateV2TemplateVersionSpecVmSpecGuestCustomizationConfig"
          }
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "configs"
          ]
        }
      }
    },
    "nutanix:index/TemplateV2TemplateVersionSpecVmSpecGuestCustomizationConfig:TemplateV2TemplateVersionSpecVmSpecGuestCustomizationConfig": {
      "properties": {
        "cloudInits": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FTemplateV2TemplateVersionSpecVmSpecGuestCustomizationConfigCloudInit:TemplateV2TemplateVersionSpecVmSpecGuestCustomizationConfigCloudInit"
          }
        },
        "syspreps": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FTemplateV2TemplateVersionSpecVmSpecGuestCustomizationConfigSysprep:TemplateV2TemplateVersionSpecVmSpecGuestCustomizationConfigSysprep"
          }
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "cloudInits",
            "syspreps"
          ]
        }
      }
    },
    "nutanix:index/TemplateV2TemplateVersionSpecVmSpecGuestCustomizationConfigCloudInit:TemplateV2TemplateVersionSpecVmSpecGuestCustomizationConfigCloudInit": {
      "properties": {
        "cloudInitScripts": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FTemplateV2TemplateVersionSpecVmSpecGuestCustomizationConfigCloudInitCloudInitScript:TemplateV2TemplateVersionSpecVmSpecGuestCustomizationConfigCloudInitCloudInitScript"
          }
        },
        "datasourceType": {
          "type": "string"
        },
        "metadata": {
          "type": "string"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "cloudInitScripts",
            "datasourceType",
            "metadata"
          ]
        }
      }
    },
    "nutanix:index/TemplateV2TemplateVersionSpecVmSpecGuestCustomizationConfigCloudInitCloudInitScript:TemplateV2TemplateVersionSpecVmSpecGuestCustomizationConfigCloudInitCloudInitScript": {
      "properties": {
        "customKeyValues": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FTemplateV2TemplateVersionSpecVmSpecGuestCustomizationConfigCloudInitCloudInitScriptCustomKeyValue:TemplateV2TemplateVersionSpecVmSpecGuestCustomizationConfigCloudInitCloudInitScriptCustomKeyValue"
          }
        },
        "userDatas": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FTemplateV2TemplateVersionSpecVmSpecGuestCustomizationConfigCloudInitCloudInitScriptUserData:TemplateV2TemplateVersionSpecVmSpecGuestCustomizationConfigCloudInitCloudInitScriptUserData"
          }
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "customKeyValues",
            "userDatas"
          ]
        }
      }
    },
    "nutanix:index/TemplateV2TemplateVersionSpecVmSpecGuestCustomizationConfigCloudInitCloudInitScriptCustomKeyValue:TemplateV2TemplateVersionSpecVmSpecGuestCustomizationConfigCloudInitCloudInitScriptCustomKeyValue": {
      "properties": {
        "keyValuePairs": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FTemplateV2TemplateVersionSpecVmSpecGuestCustomizationConfigCloudInitCloudInitScriptCustomKeyValueKeyValuePair:TemplateV2TemplateVersionSpecVmSpecGuestCustomizationConfigCloudInitCloudInitScriptCustomKeyValueKeyValuePair"
          }
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "keyValuePairs"
          ]
        }
      }
    },
    "nutanix:index/TemplateV2TemplateVersionSpecVmSpecGuestCustomizationConfigCloudInitCloudInitScriptCustomKeyValueKeyValuePair:TemplateV2TemplateVersionSpecVmSpecGuestCustomizationConfigCloudInitCloudInitScriptCustomKeyValueKeyValuePair": {
      "properties": {
        "name": {
          "type": "string"
        },
        "values": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FTemplateV2TemplateVersionSpecVmSpecGuestCustomizationConfigCloudInitCloudInitScriptCustomKeyValueKeyValuePairValue:TemplateV2TemplateVersionSpecVmSpecGuestCustomizationConfigCloudInitCloudInitScriptCustomKeyValueKeyValuePairValue"
          }
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "name",
            "values"
          ]
        }
      }
    },
    "nutanix:index/TemplateV2TemplateVersionSpecVmSpecGuestCustomizationConfigCloudInitCloudInitScriptCustomKeyValueKeyValuePairValue:TemplateV2TemplateVersionSpecVmSpecGuestCustomizationConfigCloudInitCloudInitScriptCustomKeyValueKeyValuePairValue": {
      "properties": {
        "boolean": {
          "type": "boolean"
        },
        "integer": {
          "type": "integer"
        },
        "integerLists": {
          "type": "array",
          "items": {
            "type": "integer"
          }
        },
        "mapOfStrings": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FTemplateV2TemplateVersionSpecVmSpecGuestCustomizationConfigCloudInitCloudInitScriptCustomKeyValueKeyValuePairValueMapOfString:TemplateV2TemplateVersionSpecVmSpecGuestCustomizationConfigCloudInitCloudInitScriptCustomKeyValueKeyValuePairValueMapOfString"
          }
        },
        "object": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          }
        },
        "string": {
          "type": "string"
        },
        "stringLists": {
          "type": "array",
          "items": {
            "type": "string"
          }
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "boolean",
            "integer",
            "integerLists",
            "mapOfStrings",
            "object",
            "string",
            "stringLists"
          ]
        }
      }
    },
    "nutanix:index/TemplateV2TemplateVersionSpecVmSpecGuestCustomizationConfigCloudInitCloudInitScriptCustomKeyValueKeyValuePairValueMapOfString:TemplateV2TemplateVersionSpecVmSpecGuestCustomizationConfigCloudInitCloudInitScriptCustomKeyValueKeyValuePairValueMapOfString": {
      "properties": {
        "map": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          }
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "map"
          ]
        }
      }
    },
    "nutanix:index/TemplateV2TemplateVersionSpecVmSpecGuestCustomizationConfigCloudInitCloudInitScriptUserData:TemplateV2TemplateVersionSpecVmSpecGuestCustomizationConfigCloudInitCloudInitScriptUserData": {
      "properties": {
        "value": {
          "type": "string"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "value"
          ]
        }
      }
    },
    "nutanix:index/TemplateV2TemplateVersionSpecVmSpecGuestCustomizationConfigSysprep:TemplateV2TemplateVersionSpecVmSpecGuestCustomizationConfigSysprep": {
      "properties": {
        "installType": {
          "type": "string"
        },
        "sysprepScripts": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FTemplateV2TemplateVersionSpecVmSpecGuestCustomizationConfigSysprepSysprepScript:TemplateV2TemplateVersionSpecVmSpecGuestCustomizationConfigSysprepSysprepScript"
          }
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "installType",
            "sysprepScripts"
          ]
        }
      }
    },
    "nutanix:index/TemplateV2TemplateVersionSpecVmSpecGuestCustomizationConfigSysprepSysprepScript:TemplateV2TemplateVersionSpecVmSpecGuestCustomizationConfigSysprepSysprepScript": {
      "properties": {
        "customKeyValues": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FTemplateV2TemplateVersionSpecVmSpecGuestCustomizationConfigSysprepSysprepScriptCustomKeyValue:TemplateV2TemplateVersionSpecVmSpecGuestCustomizationConfigSysprepSysprepScriptCustomKeyValue"
          }
        },
        "unattendXmls": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FTemplateV2TemplateVersionSpecVmSpecGuestCustomizationConfigSysprepSysprepScriptUnattendXml:TemplateV2TemplateVersionSpecVmSpecGuestCustomizationConfigSysprepSysprepScriptUnattendXml"
          }
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "customKeyValues",
            "unattendXmls"
          ]
        }
      }
    },
    "nutanix:index/TemplateV2TemplateVersionSpecVmSpecGuestCustomizationConfigSysprepSysprepScriptCustomKeyValue:TemplateV2TemplateVersionSpecVmSpecGuestCustomizationConfigSysprepSysprepScriptCustomKeyValue": {
      "properties": {
        "keyValuePairs": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FTemplateV2TemplateVersionSpecVmSpecGuestCustomizationConfigSysprepSysprepScriptCustomKeyValueKeyValuePair:TemplateV2TemplateVersionSpecVmSpecGuestCustomizationConfigSysprepSysprepScriptCustomKeyValueKeyValuePair"
          }
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "keyValuePairs"
          ]
        }
      }
    },
    "nutanix:index/TemplateV2TemplateVersionSpecVmSpecGuestCustomizationConfigSysprepSysprepScriptCustomKeyValueKeyValuePair:TemplateV2TemplateVersionSpecVmSpecGuestCustomizationConfigSysprepSysprepScriptCustomKeyValueKeyValuePair": {
      "properties": {
        "name": {
          "type": "string"
        },
        "values": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FTemplateV2TemplateVersionSpecVmSpecGuestCustomizationConfigSysprepSysprepScriptCustomKeyValueKeyValuePairValue:TemplateV2TemplateVersionSpecVmSpecGuestCustomizationConfigSysprepSysprepScriptCustomKeyValueKeyValuePairValue"
          }
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "name",
            "values"
          ]
        }
      }
    },
    "nutanix:index/TemplateV2TemplateVersionSpecVmSpecGuestCustomizationConfigSysprepSysprepScriptCustomKeyValueKeyValuePairValue:TemplateV2TemplateVersionSpecVmSpecGuestCustomizationConfigSysprepSysprepScriptCustomKeyValueKeyValuePairValue": {
      "properties": {
        "boolean": {
          "type": "boolean"
        },
        "integer": {
          "type": "integer"
        },
        "integerLists": {
          "type": "array",
          "items": {
            "type": "integer"
          }
        },
        "mapOfStrings": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FTemplateV2TemplateVersionSpecVmSpecGuestCustomizationConfigSysprepSysprepScriptCustomKeyValueKeyValuePairValueMapOfString:TemplateV2TemplateVersionSpecVmSpecGuestCustomizationConfigSysprepSysprepScriptCustomKeyValueKeyValuePairValueMapOfString"
          }
        },
        "object": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          }
        },
        "string": {
          "type": "string"
        },
        "stringLists": {
          "type": "array",
          "items": {
            "type": "string"
          }
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "boolean",
            "integer",
            "integerLists",
            "mapOfStrings",
            "object",
            "string",
            "stringLists"
          ]
        }
      }
    },
    "nutanix:index/TemplateV2TemplateVersionSpecVmSpecGuestCustomizationConfigSysprepSysprepScriptCustomKeyValueKeyValuePairValueMapOfString:TemplateV2TemplateVersionSpecVmSpecGuestCustomizationConfigSysprepSysprepScriptCustomKeyValueKeyValuePairValueMapOfString": {
      "properties": {
        "map": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          }
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "map"
          ]
        }
      }
    },
    "nutanix:index/TemplateV2TemplateVersionSpecVmSpecGuestCustomizationConfigSysprepSysprepScriptUnattendXml:TemplateV2TemplateVersionSpecVmSpecGuestCustomizationConfigSysprepSysprepScriptUnattendXml": {
      "properties": {
        "value": {
          "type": "string"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "value"
          ]
        }
      }
    },
    "nutanix:index/TemplateV2TemplateVersionSpecVmSpecGuestTool:TemplateV2TemplateVersionSpecVmSpecGuestTool": {
      "properties": {
        "availableVersion": {
          "type": "string"
        },
        "capabilities": {
          "type": "array",
          "items": {
            "type": "string"
          }
        },
        "guestOsVersion": {
          "type": "string"
        },
        "isEnabled": {
          "type": "boolean"
        },
        "isInstalled": {
          "type": "boolean"
        },
        "isIsoInserted": {
          "type": "boolean"
        },
        "isReachable": {
          "type": "boolean"
        },
        "isVmMobilityDriversInstalled": {
          "type": "boolean"
        },
        "isVssSnapshotCapable": {
          "type": "boolean"
        },
        "version": {
          "type": "string"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "availableVersion",
            "capabilities",
            "guestOsVersion",
            "isEnabled",
            "isInstalled",
            "isIsoInserted",
            "isReachable",
            "isVmMobilityDriversInstalled",
            "isVssSnapshotCapable",
            "version"
          ]
        }
      }
    },
    "nutanix:index/TemplateV2TemplateVersionSpecVmSpecHost:TemplateV2TemplateVersionSpecVmSpecHost": {
      "properties": {
        "extId": {
          "type": "string"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "extId"
          ]
        }
      }
    },
    "nutanix:index/TemplateV2TemplateVersionSpecVmSpecLink:TemplateV2TemplateVersionSpecVmSpecLink": {
      "properties": {
        "href": {
          "type": "string"
        },
        "rel": {
          "type": "string"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "href",
            "rel"
          ]
        }
      }
    },
    "nutanix:index/TemplateV2TemplateVersionSpecVmSpecNic:TemplateV2TemplateVersionSpecVmSpecNic": {
      "properties": {
        "backingInfos": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FTemplateV2TemplateVersionSpecVmSpecNicBackingInfo:TemplateV2TemplateVersionSpecVmSpecNicBackingInfo"
          }
        },
        "extId": {
          "type": "string"
        },
        "links": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FTemplateV2TemplateVersionSpecVmSpecNicLink:TemplateV2TemplateVersionSpecVmSpecNicLink"
          }
        },
        "networkInfos": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FTemplateV2TemplateVersionSpecVmSpecNicNetworkInfo:TemplateV2TemplateVersionSpecVmSpecNicNetworkInfo"
          }
        },
        "tenantId": {
          "type": "string"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "backingInfos",
            "extId",
            "links",
            "networkInfos",
            "tenantId"
          ]
        }
      }
    },
    "nutanix:index/TemplateV2TemplateVersionSpecVmSpecNicBackingInfo:TemplateV2TemplateVersionSpecVmSpecNicBackingInfo": {
      "properties": {
        "isConnected": {
          "type": "boolean"
        },
        "macAddress": {
          "type": "string"
        },
        "model": {
          "type": "string"
        },
        "numQueues": {
          "type": "integer"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "macAddress",
            "model"
          ]
        }
      }
    },
    "nutanix:index/TemplateV2TemplateVersionSpecVmSpecNicLink:TemplateV2TemplateVersionSpecVmSpecNicLink": {
      "properties": {
        "href": {
          "type": "string"
        },
        "rel": {
          "type": "string"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "href",
            "rel"
          ]
        }
      }
    },
    "nutanix:index/TemplateV2TemplateVersionSpecVmSpecNicNetworkInfo:TemplateV2TemplateVersionSpecVmSpecNicNetworkInfo": {
      "properties": {
        "ipv4Configs": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FTemplateV2TemplateVersionSpecVmSpecNicNetworkInfoIpv4Config:TemplateV2TemplateVersionSpecVmSpecNicNetworkInfoIpv4Config"
          }
        },
        "ipv4Infos": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FTemplateV2TemplateVersionSpecVmSpecNicNetworkInfoIpv4Info:TemplateV2TemplateVersionSpecVmSpecNicNetworkInfoIpv4Info"
          }
        },
        "networkFunctionChains": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FTemplateV2TemplateVersionSpecVmSpecNicNetworkInfoNetworkFunctionChain:TemplateV2TemplateVersionSpecVmSpecNicNetworkInfoNetworkFunctionChain"
          }
        },
        "networkFunctionNicType": {
          "type": "string"
        },
        "nicType": {
          "type": "string"
        },
        "shouldAllowUnknownMacs": {
          "type": "boolean"
        },
        "subnets": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FTemplateV2TemplateVersionSpecVmSpecNicNetworkInfoSubnet:TemplateV2TemplateVersionSpecVmSpecNicNetworkInfoSubnet"
          }
        },
        "trunkedVlans": {
          "type": "array",
          "items": {
            "type": "integer"
          }
        },
        "vlanMode": {
          "type": "string"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "ipv4Configs",
            "ipv4Infos",
            "networkFunctionChains",
            "networkFunctionNicType",
            "nicType",
            "shouldAllowUnknownMacs",
            "subnets",
            "trunkedVlans",
            "vlanMode"
          ]
        }
      }
    },
    "nutanix:index/TemplateV2TemplateVersionSpecVmSpecNicNetworkInfoIpv4Config:TemplateV2TemplateVersionSpecVmSpecNicNetworkInfoIpv4Config": {
      "properties": {
        "ipAddresses": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FTemplateV2TemplateVersionSpecVmSpecNicNetworkInfoIpv4ConfigIpAddress:TemplateV2TemplateVersionSpecVmSpecNicNetworkInfoIpv4ConfigIpAddress"
          }
        },
        "secondaryIpAddressLists": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FTemplateV2TemplateVersionSpecVmSpecNicNetworkInfoIpv4ConfigSecondaryIpAddressList:TemplateV2TemplateVersionSpecVmSpecNicNetworkInfoIpv4ConfigSecondaryIpAddressList"
          }
        },
        "shouldAssignIp": {
          "type": "boolean"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "ipAddresses",
            "secondaryIpAddressLists",
            "shouldAssignIp"
          ]
        }
      }
    },
    "nutanix:index/TemplateV2TemplateVersionSpecVmSpecNicNetworkInfoIpv4ConfigIpAddress:TemplateV2TemplateVersionSpecVmSpecNicNetworkInfoIpv4ConfigIpAddress": {
      "properties": {
        "prefixLength": {
          "type": "integer"
        },
        "value": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "value"
      ]
    },
    "nutanix:index/TemplateV2TemplateVersionSpecVmSpecNicNetworkInfoIpv4ConfigSecondaryIpAddressList:TemplateV2TemplateVersionSpecVmSpecNicNetworkInfoIpv4ConfigSecondaryIpAddressList": {
      "properties": {
        "prefixLength": {
          "type": "integer"
        },
        "value": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "value"
      ]
    },
    "nutanix:index/TemplateV2TemplateVersionSpecVmSpecNicNetworkInfoIpv4Info:TemplateV2TemplateVersionSpecVmSpecNicNetworkInfoIpv4Info": {
      "properties": {
        "learnedIpAddresses": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FTemplateV2TemplateVersionSpecVmSpecNicNetworkInfoIpv4InfoLearnedIpAddress:TemplateV2TemplateVersionSpecVmSpecNicNetworkInfoIpv4InfoLearnedIpAddress"
          }
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "learnedIpAddresses"
          ]
        }
      }
    },
    "nutanix:index/TemplateV2TemplateVersionSpecVmSpecNicNetworkInfoIpv4InfoLearnedIpAddress:TemplateV2TemplateVersionSpecVmSpecNicNetworkInfoIpv4InfoLearnedIpAddress": {
      "properties": {
        "prefixLength": {
          "type": "integer"
        },
        "value": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "value"
      ]
    },
    "nutanix:index/TemplateV2TemplateVersionSpecVmSpecNicNetworkInfoNetworkFunctionChain:TemplateV2TemplateVersionSpecVmSpecNicNetworkInfoNetworkFunctionChain": {
      "properties": {
        "extId": {
          "type": "string"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "extId"
          ]
        }
      }
    },
    "nutanix:index/TemplateV2TemplateVersionSpecVmSpecNicNetworkInfoSubnet:TemplateV2TemplateVersionSpecVmSpecNicNetworkInfoSubnet": {
      "properties": {
        "extId": {
          "type": "string"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "extId"
          ]
        }
      }
    },
    "nutanix:index/TemplateV2TemplateVersionSpecVmSpecOwnershipInfo:TemplateV2TemplateVersionSpecVmSpecOwnershipInfo": {
      "properties": {
        "owners": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FTemplateV2TemplateVersionSpecVmSpecOwnershipInfoOwner:TemplateV2TemplateVersionSpecVmSpecOwnershipInfoOwner"
          }
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "owners"
          ]
        }
      }
    },
    "nutanix:index/TemplateV2TemplateVersionSpecVmSpecOwnershipInfoOwner:TemplateV2TemplateVersionSpecVmSpecOwnershipInfoOwner": {
      "properties": {
        "extId": {
          "type": "string"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "extId"
          ]
        }
      }
    },
    "nutanix:index/TemplateV2TemplateVersionSpecVmSpecPciDevice:TemplateV2TemplateVersionSpecVmSpecPciDevice": {
      "properties": {
        "assignedDeviceInfos": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FTemplateV2TemplateVersionSpecVmSpecPciDeviceAssignedDeviceInfo:TemplateV2TemplateVersionSpecVmSpecPciDeviceAssignedDeviceInfo"
          }
        },
        "backingInfos": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FTemplateV2TemplateVersionSpecVmSpecPciDeviceBackingInfo:TemplateV2TemplateVersionSpecVmSpecPciDeviceBackingInfo"
          }
        },
        "extId": {
          "type": "string"
        },
        "links": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FTemplateV2TemplateVersionSpecVmSpecPciDeviceLink:TemplateV2TemplateVersionSpecVmSpecPciDeviceLink"
          }
        },
        "tenantId": {
          "type": "string"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "assignedDeviceInfos",
            "backingInfos",
            "extId",
            "links",
            "tenantId"
          ]
        }
      }
    },
    "nutanix:index/TemplateV2TemplateVersionSpecVmSpecPciDeviceAssignedDeviceInfo:TemplateV2TemplateVersionSpecVmSpecPciDeviceAssignedDeviceInfo": {
      "properties": {
        "devices": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FTemplateV2TemplateVersionSpecVmSpecPciDeviceAssignedDeviceInfoDevice:TemplateV2TemplateVersionSpecVmSpecPciDeviceAssignedDeviceInfoDevice"
          }
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "devices"
          ]
        }
      }
    },
    "nutanix:index/TemplateV2TemplateVersionSpecVmSpecPciDeviceAssignedDeviceInfoDevice:TemplateV2TemplateVersionSpecVmSpecPciDeviceAssignedDeviceInfoDevice": {
      "properties": {
        "deviceExtId": {
          "type": "string"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "deviceExtId"
          ]
        }
      }
    },
    "nutanix:index/TemplateV2TemplateVersionSpecVmSpecPciDeviceBackingInfo:TemplateV2TemplateVersionSpecVmSpecPciDeviceBackingInfo": {
      "properties": {
        "pcieDeviceReferences": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FTemplateV2TemplateVersionSpecVmSpecPciDeviceBackingInfoPcieDeviceReference:TemplateV2TemplateVersionSpecVmSpecPciDeviceBackingInfoPcieDeviceReference"
          }
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "pcieDeviceReferences"
          ]
        }
      }
    },
    "nutanix:index/TemplateV2TemplateVersionSpecVmSpecPciDeviceBackingInfoPcieDeviceReference:TemplateV2TemplateVersionSpecVmSpecPciDeviceBackingInfoPcieDeviceReference": {
      "properties": {
        "deviceExtId": {
          "type": "string"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "deviceExtId"
          ]
        }
      }
    },
    "nutanix:index/TemplateV2TemplateVersionSpecVmSpecPciDeviceLink:TemplateV2TemplateVersionSpecVmSpecPciDeviceLink": {
      "properties": {
        "href": {
          "type": "string"
        },
        "rel": {
          "type": "string"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "href",
            "rel"
          ]
        }
      }
    },
    "nutanix:index/TemplateV2TemplateVersionSpecVmSpecProtectionPolicyState:TemplateV2TemplateVersionSpecVmSpecProtectionPolicyState": {
      "properties": {
        "policies": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FTemplateV2TemplateVersionSpecVmSpecProtectionPolicyStatePolicy:TemplateV2TemplateVersionSpecVmSpecProtectionPolicyStatePolicy"
          }
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "policies"
          ]
        }
      }
    },
    "nutanix:index/TemplateV2TemplateVersionSpecVmSpecProtectionPolicyStatePolicy:TemplateV2TemplateVersionSpecVmSpecProtectionPolicyStatePolicy": {
      "properties": {
        "extId": {
          "type": "string"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "extId"
          ]
        }
      }
    },
    "nutanix:index/TemplateV2TemplateVersionSpecVmSpecSerialPort:TemplateV2TemplateVersionSpecVmSpecSerialPort": {
      "properties": {
        "extId": {
          "type": "string"
        },
        "index": {
          "type": "integer"
        },
        "isConnected": {
          "type": "boolean"
        },
        "links": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FTemplateV2TemplateVersionSpecVmSpecSerialPortLink:TemplateV2TemplateVersionSpecVmSpecSerialPortLink"
          }
        },
        "tenantId": {
          "type": "string"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "extId",
            "index",
            "isConnected",
            "links",
            "tenantId"
          ]
        }
      }
    },
    "nutanix:index/TemplateV2TemplateVersionSpecVmSpecSerialPortLink:TemplateV2TemplateVersionSpecVmSpecSerialPortLink": {
      "properties": {
        "href": {
          "type": "string"
        },
        "rel": {
          "type": "string"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "href",
            "rel"
          ]
        }
      }
    },
    "nutanix:index/TemplateV2TemplateVersionSpecVmSpecSource:TemplateV2TemplateVersionSpecVmSpecSource": {
      "properties": {
        "entityType": {
          "type": "string"
        },
        "extId": {
          "type": "string"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "entityType",
            "extId"
          ]
        }
      }
    },
    "nutanix:index/TemplateV2TemplateVersionSpecVmSpecStorageConfig:TemplateV2TemplateVersionSpecVmSpecStorageConfig": {
      "properties": {
        "isFlashModeEnabled": {
          "type": "boolean"
        },
        "qosConfigs": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FTemplateV2TemplateVersionSpecVmSpecStorageConfigQosConfig:TemplateV2TemplateVersionSpecVmSpecStorageConfigQosConfig"
          }
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "isFlashModeEnabled",
            "qosConfigs"
          ]
        }
      }
    },
    "nutanix:index/TemplateV2TemplateVersionSpecVmSpecStorageConfigQosConfig:TemplateV2TemplateVersionSpecVmSpecStorageConfigQosConfig": {
      "properties": {
        "throttledIops": {
          "type": "integer"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "throttledIops"
          ]
        }
      }
    },
    "nutanix:index/TemplateV2TemplateVersionSpecVmSpecVtpmConfig:TemplateV2TemplateVersionSpecVmSpecVtpmConfig": {
      "properties": {
        "isVtpmEnabled": {
          "type": "boolean"
        },
        "version": {
          "type": "string"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "isVtpmEnabled",
            "version"
          ]
        }
      }
    },
    "nutanix:index/TemplateV2UpdatedBy:TemplateV2UpdatedBy": {
      "properties": {
        "additionalAttributes": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FTemplateV2UpdatedByAdditionalAttribute:TemplateV2UpdatedByAdditionalAttribute"
          }
        },
        "creationType": {
          "type": "string"
        },
        "description": {
          "type": "string"
        },
        "displayName": {
          "type": "string"
        },
        "emailId": {
          "type": "string"
        },
        "extId": {
          "type": "string"
        },
        "firstName": {
          "type": "string"
        },
        "idpId": {
          "type": "string"
        },
        "isForceResetPasswordEnabled": {
          "type": "boolean"
        },
        "lastName": {
          "type": "string"
        },
        "locale": {
          "type": "string"
        },
        "middleInitial": {
          "type": "string"
        },
        "password": {
          "type": "string"
        },
        "region": {
          "type": "string"
        },
        "status": {
          "type": "string"
        },
        "userType": {
          "type": "string"
        },
        "username": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "userType",
        "username"
      ],
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "additionalAttributes",
            "creationType",
            "description",
            "displayName",
            "emailId",
            "extId",
            "firstName",
            "idpId",
            "isForceResetPasswordEnabled",
            "lastName",
            "locale",
            "middleInitial",
            "password",
            "region",
            "status",
            "userType",
            "username"
          ]
        }
      }
    },
    "nutanix:index/TemplateV2UpdatedByAdditionalAttribute:TemplateV2UpdatedByAdditionalAttribute": {
      "properties": {
        "name": {
          "type": "string"
        },
        "values": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FTemplateV2UpdatedByAdditionalAttributeValue:TemplateV2UpdatedByAdditionalAttributeValue"
          }
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "name",
            "values"
          ]
        }
      }
    },
    "nutanix:index/TemplateV2UpdatedByAdditionalAttributeValue:TemplateV2UpdatedByAdditionalAttributeValue": {
      "properties": {
        "boolean": {
          "type": "boolean"
        },
        "integer": {
          "type": "integer"
        },
        "integerLists": {
          "type": "array",
          "items": {
            "type": "integer"
          }
        },
        "mapOfStrings": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FTemplateV2UpdatedByAdditionalAttributeValueMapOfString:TemplateV2UpdatedByAdditionalAttributeValueMapOfString"
          }
        },
        "object": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          }
        },
        "string": {
          "type": "string"
        },
        "stringLists": {
          "type": "array",
          "items": {
            "type": "string"
          }
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "boolean",
            "integer",
            "integerLists",
            "mapOfStrings",
            "object",
            "string",
            "stringLists"
          ]
        }
      }
    },
    "nutanix:index/TemplateV2UpdatedByAdditionalAttributeValueMapOfString:TemplateV2UpdatedByAdditionalAttributeValueMapOfString": {
      "properties": {
        "map": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          }
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "map"
          ]
        }
      }
    },
    "nutanix:index/UserAccessControlPolicyReferenceList:UserAccessControlPolicyReferenceList": {
      "properties": {
        "kind": {
          "type": "string",
          "description": "- The kind name. (Default depends on the resource you are referencing)\n"
        },
        "name": {
          "type": "string",
          "description": "- the name(Optional).\n"
        },
        "uuid": {
          "type": "string",
          "description": "- the UUID(Required).\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "kind",
            "name",
            "uuid"
          ]
        }
      }
    },
    "nutanix:index/UserCategory:UserCategory": {
      "properties": {
        "name": {
          "type": "string",
          "description": "- the name(Optional).\n"
        },
        "value": {
          "type": "string",
          "description": "- value of the key.\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "name",
            "value"
          ]
        }
      }
    },
    "nutanix:index/UserDirectoryServiceUser:UserDirectoryServiceUser": {
      "properties": {
        "defaultUserPrincipalName": {
          "type": "string"
        },
        "directoryServiceReference": {
          "$ref": "#/types/nutanix:index%2FUserDirectoryServiceUserDirectoryServiceReference:UserDirectoryServiceUserDirectoryServiceReference",
          "description": "- (Optional) The reference to a directory service. See #reference for to look the supported attributes.\n"
        },
        "userPrincipalName": {
          "type": "string",
          "description": "- (Optional) The UserPrincipalName of the user from the directory service.\n"
        }
      },
      "type": "object",
      "required": [
        "directoryServiceReference"
      ],
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "defaultUserPrincipalName",
            "directoryServiceReference",
            "userPrincipalName"
          ]
        }
      }
    },
    "nutanix:index/UserDirectoryServiceUserDirectoryServiceReference:UserDirectoryServiceUserDirectoryServiceReference": {
      "properties": {
        "kind": {
          "type": "string",
          "description": "- The kind name. (Default depends on the resource you are referencing)\n"
        },
        "name": {
          "type": "string",
          "description": "- the name(Optional).\n"
        },
        "uuid": {
          "type": "string",
          "description": "- the UUID(Required).\n"
        }
      },
      "type": "object",
      "required": [
        "uuid"
      ],
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "name",
            "uuid"
          ]
        }
      }
    },
    "nutanix:index/UserGroupsCategory:UserGroupsCategory": {
      "properties": {
        "name": {
          "type": "string",
          "description": "- subnet name.\n"
        },
        "value": {
          "type": "string"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "name",
            "value"
          ]
        }
      }
    },
    "nutanix:index/UserGroupsDirectoryServiceOus:UserGroupsDirectoryServiceOus": {
      "properties": {
        "distinguishedName": {
          "type": "string",
          "description": "- (Required) The Distinguished name for the user group.\n",
          "willReplaceOnChanges": true
        }
      },
      "type": "object",
      "required": [
        "distinguishedName"
      ]
    },
    "nutanix:index/UserGroupsDirectoryServiceUserGroup:UserGroupsDirectoryServiceUserGroup": {
      "properties": {
        "distinguishedName": {
          "type": "string",
          "description": "- (Required) The Distinguished name for the user group.\n",
          "willReplaceOnChanges": true
        }
      },
      "type": "object",
      "required": [
        "distinguishedName"
      ]
    },
    "nutanix:index/UserGroupsSamlUserGroup:UserGroupsSamlUserGroup": {
      "properties": {
        "idpUuid": {
          "type": "string",
          "description": "- (Required) The UUID of the Identity Provider that the group belongs to.\n",
          "willReplaceOnChanges": true
        },
        "name": {
          "type": "string",
          "description": "- (Required) The name of the SAML group which the IDP provides.\n"
        }
      },
      "type": "object",
      "required": [
        "idpUuid",
        "name"
      ]
    },
    "nutanix:index/UserIdentityProviderUser:UserIdentityProviderUser": {
      "properties": {
        "identityProviderReference": {
          "$ref": "#/types/nutanix:index%2FUserIdentityProviderUserIdentityProviderReference:UserIdentityProviderUserIdentityProviderReference",
          "description": "- (Optional) The reference to a identity provider. See #reference for to look the supported attributes.\n"
        },
        "username": {
          "type": "string",
          "description": "- (Optional) The username from identity provider. Name ID for SAML Identity Provider.\n"
        }
      },
      "type": "object",
      "required": [
        "identityProviderReference"
      ],
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "identityProviderReference",
            "username"
          ]
        }
      }
    },
    "nutanix:index/UserIdentityProviderUserIdentityProviderReference:UserIdentityProviderUserIdentityProviderReference": {
      "properties": {
        "kind": {
          "type": "string",
          "description": "- The kind name. (Default depends on the resource you are referencing)\n"
        },
        "name": {
          "type": "string",
          "description": "- the name(Optional).\n"
        },
        "uuid": {
          "type": "string",
          "description": "- the UUID(Required).\n"
        }
      },
      "type": "object",
      "required": [
        "uuid"
      ],
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "name",
            "uuid"
          ]
        }
      }
    },
    "nutanix:index/UserKeyRevokeV2ArgumentsMap:UserKeyRevokeV2ArgumentsMap": {
      "properties": {
        "propertyName": {
          "type": "string"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "propertyName"
          ]
        }
      }
    },
    "nutanix:index/UserKeyV2KeyDetail:UserKeyV2KeyDetail": {
      "properties": {
        "apiKeyDetails": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FUserKeyV2KeyDetailApiKeyDetail:UserKeyV2KeyDetailApiKeyDetail"
          }
        },
        "objectKeyDetails": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FUserKeyV2KeyDetailObjectKeyDetail:UserKeyV2KeyDetailObjectKeyDetail"
          }
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "apiKeyDetails",
            "objectKeyDetails"
          ]
        }
      }
    },
    "nutanix:index/UserKeyV2KeyDetailApiKeyDetail:UserKeyV2KeyDetailApiKeyDetail": {
      "properties": {
        "apiKey": {
          "type": "string"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "apiKey"
          ]
        }
      }
    },
    "nutanix:index/UserKeyV2KeyDetailObjectKeyDetail:UserKeyV2KeyDetailObjectKeyDetail": {
      "properties": {
        "accessKey": {
          "type": "string"
        },
        "secretKey": {
          "type": "string"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "accessKey",
            "secretKey"
          ]
        }
      }
    },
    "nutanix:index/UserKeyV2Link:UserKeyV2Link": {
      "properties": {
        "href": {
          "type": "string"
        },
        "rel": {
          "type": "string"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "href",
            "rel"
          ]
        }
      }
    },
    "nutanix:index/UserProjectReferenceList:UserProjectReferenceList": {
      "properties": {
        "kind": {
          "type": "string",
          "description": "- The kind name. (Default depends on the resource you are referencing)\n"
        },
        "name": {
          "type": "string",
          "description": "- the name(Optional).\n"
        },
        "uuid": {
          "type": "string",
          "description": "- the UUID(Required).\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "kind",
            "name",
            "uuid"
          ]
        }
      }
    },
    "nutanix:index/UsersV2AdditionalAttribute:UsersV2AdditionalAttribute": {
      "properties": {
        "name": {
          "type": "string",
          "description": "- The URL at which the entity described by the link can be accessed.\n"
        },
        "value": {
          "type": "integer",
          "description": "- A name that identifies the relationship of the link to the object that is returned by the URL. The unique value of \"self\" identifies the URL for the object.\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "name",
            "value"
          ]
        }
      }
    },
    "nutanix:index/UsersV2BucketsAccessKey:UsersV2BucketsAccessKey": {
      "properties": {
        "accessKeyName": {
          "type": "string",
          "description": "- Name of the Bucket Access Key.\n"
        },
        "createdTime": {
          "type": "string",
          "description": "- Creation time for the Bucket Access Key.\n"
        },
        "extId": {
          "type": "string",
          "description": "- A globally unique identifier of an instance that is suitable for external consumption.\n"
        },
        "links": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FUsersV2BucketsAccessKeyLink:UsersV2BucketsAccessKeyLink"
          },
          "description": "- A HATEOAS style link for the response. Each link contains a user-friendly name identifying the link and an address for retrieving the particular resource.\n"
        },
        "secretAccessKey": {
          "type": "string",
          "description": "- Secret Access Key, it will be returned only during Bucket Access Key creation.\n"
        },
        "userId": {
          "type": "string",
          "description": "- User Identifier who owns the Bucket Access Key.\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "accessKeyName",
            "createdTime",
            "extId",
            "links",
            "secretAccessKey",
            "userId"
          ]
        }
      }
    },
    "nutanix:index/UsersV2BucketsAccessKeyLink:UsersV2BucketsAccessKeyLink": {
      "properties": {
        "href": {
          "type": "string",
          "description": "- The URL at which the entity described by the link can be accessed.\n"
        },
        "rel": {
          "type": "string",
          "description": "- A name that identifies the relationship of the link to the object that is returned by the URL. The unique value of \"self\" identifies the URL for the object.\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "href",
            "rel"
          ]
        }
      }
    },
    "nutanix:index/UsersV2Link:UsersV2Link": {
      "properties": {
        "href": {
          "type": "string",
          "description": "- The URL at which the entity described by the link can be accessed.\n"
        },
        "rel": {
          "type": "string",
          "description": "- A name that identifies the relationship of the link to the object that is returned by the URL. The unique value of \"self\" identifies the URL for the object.\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "href",
            "rel"
          ]
        }
      }
    },
    "nutanix:index/VirtualMachineCategory:VirtualMachineCategory": {
      "properties": {
        "name": {
          "type": "string",
          "description": "- (Required) The name for the vm.\n"
        },
        "value": {
          "type": "string",
          "description": "- value of the key.\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "name",
            "value"
          ]
        }
      }
    },
    "nutanix:index/VirtualMachineDiskList:VirtualMachineDiskList": {
      "properties": {
        "dataSourceReference": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          },
          "description": "Reference to a data source.\n\nThe<span pulumi-lang-nodejs=\" diskSize \" pulumi-lang-dotnet=\" DiskSize \" pulumi-lang-go=\" diskSize \" pulumi-lang-python=\" disk_size \" pulumi-lang-yaml=\" diskSize \" pulumi-lang-java=\" diskSize \"> disk_size </span>(the disk<span pulumi-lang-nodejs=\" sizeMib \" pulumi-lang-dotnet=\" SizeMib \" pulumi-lang-go=\" sizeMib \" pulumi-lang-python=\" size_mib \" pulumi-lang-yaml=\" sizeMib \" pulumi-lang-java=\" sizeMib \"> size_mib </span>and the<span pulumi-lang-nodejs=\" diskSizeBytes \" pulumi-lang-dotnet=\" DiskSizeBytes \" pulumi-lang-go=\" diskSizeBytes \" pulumi-lang-python=\" disk_size_bytes \" pulumi-lang-yaml=\" diskSizeBytes \" pulumi-lang-java=\" diskSizeBytes \"> disk_size_bytes </span>attributes) is only honored by creating an empty disk. When you are creating from an image, the size is ignored and the disk becomes the size of the image from which it was cloned. In VM creation, you can't set either disk<span pulumi-lang-nodejs=\" sizeMib \" pulumi-lang-dotnet=\" SizeMib \" pulumi-lang-go=\" sizeMib \" pulumi-lang-python=\" size_mib \" pulumi-lang-yaml=\" sizeMib \" pulumi-lang-java=\" sizeMib \"> size_mib </span>or<span pulumi-lang-nodejs=\" diskSizeBytes \" pulumi-lang-dotnet=\" DiskSizeBytes \" pulumi-lang-go=\" diskSizeBytes \" pulumi-lang-python=\" disk_size_bytes \" pulumi-lang-yaml=\" diskSizeBytes \" pulumi-lang-java=\" diskSizeBytes \"> disk_size_bytes </span>when you set<span pulumi-lang-nodejs=\" dataSourceReference \" pulumi-lang-dotnet=\" DataSourceReference \" pulumi-lang-go=\" dataSourceReference \" pulumi-lang-python=\" data_source_reference \" pulumi-lang-yaml=\" dataSourceReference \" pulumi-lang-java=\" dataSourceReference \"> data_source_reference </span>but, you can update the<span pulumi-lang-nodejs=\" diskSize \" pulumi-lang-dotnet=\" DiskSize \" pulumi-lang-go=\" diskSize \" pulumi-lang-python=\" disk_size \" pulumi-lang-yaml=\" diskSize \" pulumi-lang-java=\" diskSize \"> disk_size </span>after creation (second apply).\n"
        },
        "deviceProperties": {
          "$ref": "#/types/nutanix:index%2FVirtualMachineDiskListDeviceProperties:VirtualMachineDiskListDeviceProperties",
          "description": "Properties to a device.\n"
        },
        "diskSizeBytes": {
          "type": "integer",
          "description": "Size of the disk in Bytes.\n"
        },
        "diskSizeMib": {
          "type": "integer",
          "description": "Size of the disk in MiB. Must match the size specified in 'disk_size_bytes' - rounded up to the nearest MiB - when that field is present.\n"
        },
        "storageConfig": {
          "$ref": "#/types/nutanix:index%2FVirtualMachineDiskListStorageConfig:VirtualMachineDiskListStorageConfig"
        },
        "uuid": {
          "type": "string",
          "description": "- (Optional) The device ID which is used to uniquely identify this particular disk.\n"
        },
        "volumeGroupReference": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          }
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "dataSourceReference",
            "deviceProperties",
            "diskSizeBytes",
            "diskSizeMib",
            "storageConfig",
            "uuid",
            "volumeGroupReference"
          ]
        }
      }
    },
    "nutanix:index/VirtualMachineDiskListDeviceProperties:VirtualMachineDiskListDeviceProperties": {
      "properties": {
        "deviceType": {
          "type": "string",
          "description": "- A Disk type (default: DISK).\n"
        },
        "diskAddress": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          },
          "description": "- Address of disk to boot from.\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "diskAddress"
          ]
        }
      }
    },
    "nutanix:index/VirtualMachineDiskListStorageConfig:VirtualMachineDiskListStorageConfig": {
      "properties": {
        "flashMode": {
          "type": "string",
          "description": "- State of the storage policy to pin virtual disks to the hot tier. When specified as a VM attribute, the storage policy applies to all virtual disks of the VM unless overridden by the same attribute specified for a virtual disk.\n"
        },
        "storageContainerReferences": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FVirtualMachineDiskListStorageConfigStorageContainerReference:VirtualMachineDiskListStorageConfigStorageContainerReference"
          },
          "description": "- Reference to a kind. Either one of (kind, uuid) or url needs to be specified. Requires Prism Central / AOS 5.17+.\n* `storage_container_reference.#.url`: - GET query on the URL will provide information on the source.\n* `storage_container_reference.#.kind`: - kind of the container reference\n* `storage_container_reference.#.name`: - name of the container reference\n* `storage_container_reference.#.uuid`: - uiid of the container reference\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "storageContainerReferences"
          ]
        }
      }
    },
    "nutanix:index/VirtualMachineDiskListStorageConfigStorageContainerReference:VirtualMachineDiskListStorageConfigStorageContainerReference": {
      "properties": {
        "kind": {
          "type": "string",
          "description": "- The kind name (Default value: project)(Required).\n"
        },
        "name": {
          "type": "string",
          "description": "- (Required) The name for the vm.\n"
        },
        "url": {
          "type": "string"
        },
        "uuid": {
          "type": "string",
          "description": "- the UUID(Required).\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "name",
            "url",
            "uuid"
          ]
        }
      }
    },
    "nutanix:index/VirtualMachineGpuList:VirtualMachineGpuList": {
      "properties": {
        "deviceId": {
          "type": "integer",
          "description": "- (Computed) The device ID of the GPU.\n"
        },
        "fraction": {
          "type": "integer",
          "description": "Fraction of the physical GPU assigned.\n"
        },
        "frameBufferSizeMib": {
          "type": "integer",
          "description": "- (ReadOnly) GPU frame buffer size in MiB.\n"
        },
        "guestDriverVersion": {
          "type": "string",
          "description": "- (ReadOnly) Last determined guest driver version.\n"
        },
        "mode": {
          "type": "string",
          "description": "- (Optional) The mode of this GPU.\n"
        },
        "name": {
          "type": "string",
          "description": "- (ReadOnly) Name of the GPU resource.\n"
        },
        "numVirtualDisplayHeads": {
          "type": "integer",
          "description": "- (ReadOnly) Number of supported virtual display heads.\n"
        },
        "pciAddress": {
          "type": "string",
          "description": "GPU {segment:bus:device:function} (sbdf) address if assigned.\n"
        },
        "uuid": {
          "type": "string",
          "description": "- (ReadOnly) UUID of the GPU.\n"
        },
        "vendor": {
          "type": "string",
          "description": "- (Optional) The vendor of the GPU.\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "deviceId",
            "fraction",
            "frameBufferSizeMib",
            "guestDriverVersion",
            "mode",
            "name",
            "numVirtualDisplayHeads",
            "pciAddress",
            "uuid",
            "vendor"
          ]
        }
      }
    },
    "nutanix:index/VirtualMachineNicList:VirtualMachineNicList": {
      "properties": {
        "ipEndpointLists": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FVirtualMachineNicListIpEndpointList:VirtualMachineNicListIpEndpointList"
          },
          "description": "- IP endpoints for the adapter. Currently, IPv4 addresses are supported.\n"
        },
        "isConnected": {
          "type": "string",
          "description": "- Indicates whether the serial port connection is connected or not (<span pulumi-lang-nodejs=\"`true`\" pulumi-lang-dotnet=\"`True`\" pulumi-lang-go=\"`true`\" pulumi-lang-python=\"`true`\" pulumi-lang-yaml=\"`true`\" pulumi-lang-java=\"`true`\">`true`</span> or <span pulumi-lang-nodejs=\"`false`\" pulumi-lang-dotnet=\"`False`\" pulumi-lang-go=\"`false`\" pulumi-lang-python=\"`false`\" pulumi-lang-yaml=\"`false`\" pulumi-lang-java=\"`false`\">`false`</span>).\n"
        },
        "macAddress": {
          "type": "string",
          "description": "- The MAC address for the adapter.\n"
        },
        "model": {
          "type": "string",
          "description": "- The model of this NIC. (Options : VIRTIO , E1000).\n"
        },
        "networkFunctionChainReference": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          },
          "description": "- The reference to a network_function_chain.\n"
        },
        "networkFunctionNicType": {
          "type": "string",
          "description": "- The type of this Network function NIC. Defaults to INGRESS. (Options : INGRESS , EGRESS , TAP).\n"
        },
        "nicType": {
          "type": "string",
          "description": "- The type of this NIC. Defaults to NORMAL_NIC. (Options : NORMAL_NIC , DIRECT_NIC , NETWORK_FUNCTION_NIC).\n"
        },
        "numQueues": {
          "type": "integer",
          "description": "- The number of tx/rx queue pairs for this NIC.\n"
        },
        "subnetName": {
          "type": "string",
          "description": "- The name of the subnet reference to.\n"
        },
        "subnetUuid": {
          "type": "string",
          "description": "- The reference to a subnet.\n"
        },
        "uuid": {
          "type": "string",
          "description": "- The NIC's UUID, which is used to uniquely identify this particular NIC. This UUID may be used to refer to the NIC outside the context of the particular VM it is attached to.\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "ipEndpointLists",
            "macAddress",
            "model",
            "networkFunctionChainReference",
            "networkFunctionNicType",
            "nicType",
            "numQueues",
            "subnetName",
            "uuid"
          ]
        }
      }
    },
    "nutanix:index/VirtualMachineNicListIpEndpointList:VirtualMachineNicListIpEndpointList": {
      "properties": {
        "ip": {
          "type": "string",
          "description": "- Address string.\n"
        },
        "type": {
          "type": "string",
          "description": "- Address type. It can only be \"ASSIGNED\" in the spec. If no type is specified in the spec, the default type is set to \"ASSIGNED\". (Options : ASSIGNED , LEARNED)\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "ip"
          ]
        }
      }
    },
    "nutanix:index/VirtualMachineNicListStatus:VirtualMachineNicListStatus": {
      "properties": {
        "floatingIp": {
          "type": "string",
          "description": "-  The Floating IP associated with the vnic. (Only in <span pulumi-lang-nodejs=\"`nicListStatus`\" pulumi-lang-dotnet=\"`NicListStatus`\" pulumi-lang-go=\"`nicListStatus`\" pulumi-lang-python=\"`nic_list_status`\" pulumi-lang-yaml=\"`nicListStatus`\" pulumi-lang-java=\"`nicListStatus`\">`nic_list_status`</span>)\n"
        },
        "ipEndpointLists": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FVirtualMachineNicListStatusIpEndpointList:VirtualMachineNicListStatusIpEndpointList"
          },
          "description": "- IP endpoints for the adapter. Currently, IPv4 addresses are supported.\n"
        },
        "isConnected": {
          "type": "string",
          "description": "- Indicates whether the serial port connection is connected or not (<span pulumi-lang-nodejs=\"`true`\" pulumi-lang-dotnet=\"`True`\" pulumi-lang-go=\"`true`\" pulumi-lang-python=\"`true`\" pulumi-lang-yaml=\"`true`\" pulumi-lang-java=\"`true`\">`true`</span> or <span pulumi-lang-nodejs=\"`false`\" pulumi-lang-dotnet=\"`False`\" pulumi-lang-go=\"`false`\" pulumi-lang-python=\"`false`\" pulumi-lang-yaml=\"`false`\" pulumi-lang-java=\"`false`\">`false`</span>).\n"
        },
        "macAddress": {
          "type": "string",
          "description": "- The MAC address for the adapter.\n"
        },
        "model": {
          "type": "string",
          "description": "- The model of this NIC. (Options : VIRTIO , E1000).\n"
        },
        "networkFunctionChainReference": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          },
          "description": "- The reference to a network_function_chain.\n"
        },
        "networkFunctionNicType": {
          "type": "string",
          "description": "- The type of this Network function NIC. Defaults to INGRESS. (Options : INGRESS , EGRESS , TAP).\n"
        },
        "nicType": {
          "type": "string",
          "description": "- The type of this NIC. Defaults to NORMAL_NIC. (Options : NORMAL_NIC , DIRECT_NIC , NETWORK_FUNCTION_NIC).\n"
        },
        "numQueues": {
          "type": "integer",
          "description": "- The number of tx/rx queue pairs for this NIC.\n"
        },
        "subnetName": {
          "type": "string",
          "description": "- The name of the subnet reference to.\n"
        },
        "subnetUuid": {
          "type": "string",
          "description": "- The reference to a subnet.\n"
        },
        "uuid": {
          "type": "string",
          "description": "- the UUID(Required).\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "floatingIp",
            "ipEndpointLists",
            "isConnected",
            "macAddress",
            "model",
            "networkFunctionChainReference",
            "networkFunctionNicType",
            "nicType",
            "numQueues",
            "subnetName",
            "subnetUuid",
            "uuid"
          ]
        }
      }
    },
    "nutanix:index/VirtualMachineNicListStatusIpEndpointList:VirtualMachineNicListStatusIpEndpointList": {
      "properties": {
        "ip": {
          "type": "string",
          "description": "- Address string.\n"
        },
        "type": {
          "type": "string",
          "description": "- Address type. It can only be \"ASSIGNED\" in the spec. If no type is specified in the spec, the default type is set to \"ASSIGNED\". (Options : ASSIGNED , LEARNED)\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "ip",
            "type"
          ]
        }
      }
    },
    "nutanix:index/VirtualMachineSerialPortList:VirtualMachineSerialPortList": {
      "properties": {
        "index": {
          "type": "integer",
          "description": "- Index of the serial port (int).\n"
        },
        "isConnected": {
          "type": "boolean",
          "description": "- Indicates whether the serial port connection is connected or not (<span pulumi-lang-nodejs=\"`true`\" pulumi-lang-dotnet=\"`True`\" pulumi-lang-go=\"`true`\" pulumi-lang-python=\"`true`\" pulumi-lang-yaml=\"`true`\" pulumi-lang-java=\"`true`\">`true`</span> or <span pulumi-lang-nodejs=\"`false`\" pulumi-lang-dotnet=\"`False`\" pulumi-lang-go=\"`false`\" pulumi-lang-python=\"`false`\" pulumi-lang-yaml=\"`false`\" pulumi-lang-java=\"`false`\">`false`</span>).\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "index",
            "isConnected"
          ]
        }
      }
    },
    "nutanix:index/VirtualMachineV2ApcConfig:VirtualMachineV2ApcConfig": {
      "properties": {
        "cpuModels": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FVirtualMachineV2ApcConfigCpuModel:VirtualMachineV2ApcConfigCpuModel"
          },
          "description": "CPU model associated with the VM if Advanced Processor Compatibility(APC) is enabled. If APC is enabled and no CPU model is explicitly set, a default baseline CPU model is picked by the system. See the APC documentation for more information\n* `cpu_model.name`: (Required) Name of the CPU model associated with the VM.\n"
        },
        "isApcEnabled": {
          "type": "boolean",
          "description": "If enabled, the selected CPU model will be retained across live and cold migrations of the VM.\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "cpuModels",
            "isApcEnabled"
          ]
        }
      }
    },
    "nutanix:index/VirtualMachineV2ApcConfigCpuModel:VirtualMachineV2ApcConfigCpuModel": {
      "properties": {
        "extId": {
          "type": "string",
          "description": "A globally unique identifier of an instance that is suitable for external consumption.\n"
        },
        "name": {
          "type": "string",
          "description": "VM name.\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "extId",
            "name"
          ]
        }
      }
    },
    "nutanix:index/VirtualMachineV2AvailabilityZone:VirtualMachineV2AvailabilityZone": {
      "properties": {
        "extId": {
          "type": "string",
          "description": "The globally unique identifier of an availability zone type UUID.\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "extId"
          ]
        }
      }
    },
    "nutanix:index/VirtualMachineV2BootConfig:VirtualMachineV2BootConfig": {
      "properties": {
        "legacyBoots": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FVirtualMachineV2BootConfigLegacyBoot:VirtualMachineV2BootConfigLegacyBoot"
          },
          "description": "LegacyBoot config Object\n"
        },
        "uefiBoots": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FVirtualMachineV2BootConfigUefiBoot:VirtualMachineV2BootConfigUefiBoot"
          },
          "description": "UefiBoot config Object\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "legacyBoots",
            "uefiBoots"
          ]
        }
      }
    },
    "nutanix:index/VirtualMachineV2BootConfigLegacyBoot:VirtualMachineV2BootConfigLegacyBoot": {
      "properties": {
        "bootDevices": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FVirtualMachineV2BootConfigLegacyBootBootDevice:VirtualMachineV2BootConfigLegacyBootBootDevice"
          },
          "description": "Boot Device object\n* `boot_device.boot_device_disk`: (Optional) Disk address.\n* `boot_device.boot_device_disk.disk_address.bus_type`: (Required) Bus type for the device\n* `boot_device.boot_device_disk.disk_address.index`: (Required) Device index on the bus. This field is ignored unless the bus details are specified.\n\n* `boot_device.boot_device_nic`: (Optional) Disk Nic address.\n* `boot_device.boot_device_nic.mac_address`: (Required) mac address\n"
        },
        "bootOrders": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "Indicates the order of device types in which the VM should try to boot from. If the boot device order is not provided the system will decide an appropriate boot device order. Valid values are 'CDROM', 'DISK', 'NETWORK'.\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "bootDevices",
            "bootOrders"
          ]
        }
      }
    },
    "nutanix:index/VirtualMachineV2BootConfigLegacyBootBootDevice:VirtualMachineV2BootConfigLegacyBootBootDevice": {
      "properties": {
        "bootDeviceDisks": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FVirtualMachineV2BootConfigLegacyBootBootDeviceBootDeviceDisk:VirtualMachineV2BootConfigLegacyBootBootDeviceBootDeviceDisk"
          }
        },
        "bootDeviceNics": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FVirtualMachineV2BootConfigLegacyBootBootDeviceBootDeviceNic:VirtualMachineV2BootConfigLegacyBootBootDeviceBootDeviceNic"
          }
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "bootDeviceDisks",
            "bootDeviceNics"
          ]
        }
      }
    },
    "nutanix:index/VirtualMachineV2BootConfigLegacyBootBootDeviceBootDeviceDisk:VirtualMachineV2BootConfigLegacyBootBootDeviceBootDeviceDisk": {
      "properties": {
        "diskAddresses": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FVirtualMachineV2BootConfigLegacyBootBootDeviceBootDeviceDiskDiskAddress:VirtualMachineV2BootConfigLegacyBootBootDeviceBootDeviceDiskDiskAddress"
          }
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "diskAddresses"
          ]
        }
      }
    },
    "nutanix:index/VirtualMachineV2BootConfigLegacyBootBootDeviceBootDeviceDiskDiskAddress:VirtualMachineV2BootConfigLegacyBootBootDeviceBootDeviceDiskDiskAddress": {
      "properties": {
        "busType": {
          "type": "string"
        },
        "index": {
          "type": "integer",
          "description": ") Index of the serial port.\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "busType",
            "index"
          ]
        }
      }
    },
    "nutanix:index/VirtualMachineV2BootConfigLegacyBootBootDeviceBootDeviceNic:VirtualMachineV2BootConfigLegacyBootBootDeviceBootDeviceNic": {
      "properties": {
        "macAddress": {
          "type": "string",
          "description": "MAC address of the emulated NIC.\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "macAddress"
          ]
        }
      }
    },
    "nutanix:index/VirtualMachineV2BootConfigUefiBoot:VirtualMachineV2BootConfigUefiBoot": {
      "properties": {
        "bootDevices": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FVirtualMachineV2BootConfigUefiBootBootDevice:VirtualMachineV2BootConfigUefiBootBootDevice"
          },
          "description": "Boot Device object\n* `boot_device.boot_device_disk`: (Optional) Disk address.\n* `boot_device.boot_device_disk.disk_address.bus_type`: (Required) Bus type for the device\n* `boot_device.boot_device_disk.disk_address.index`: (Required) Device index on the bus. This field is ignored unless the bus details are specified.\n\n* `boot_device.boot_device_nic`: (Optional) Disk Nic address.\n* `boot_device.boot_device_nic.mac_address`: (Required) mac address\n"
        },
        "bootOrders": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "Indicates the order of device types in which the VM should try to boot from. If the boot device order is not provided the system will decide an appropriate boot device order. Valid values are 'CDROM', 'DISK', 'NETWORK'.\n"
        },
        "isSecureBootEnabled": {
          "type": "boolean",
          "description": "Indicate whether to enable secure boot or not\n"
        },
        "nvramDevices": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FVirtualMachineV2BootConfigUefiBootNvramDevice:VirtualMachineV2BootConfigUefiBootNvramDevice"
          },
          "description": "Configuration for NVRAM to be presented to the VM.\n* `nvram_device.backing_storage_info`: (Required) Storage provided by Nutanix ADSF\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "bootDevices",
            "bootOrders",
            "isSecureBootEnabled",
            "nvramDevices"
          ]
        }
      }
    },
    "nutanix:index/VirtualMachineV2BootConfigUefiBootBootDevice:VirtualMachineV2BootConfigUefiBootBootDevice": {
      "properties": {
        "bootDeviceDisks": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FVirtualMachineV2BootConfigUefiBootBootDeviceBootDeviceDisk:VirtualMachineV2BootConfigUefiBootBootDeviceBootDeviceDisk"
          }
        },
        "bootDeviceNics": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FVirtualMachineV2BootConfigUefiBootBootDeviceBootDeviceNic:VirtualMachineV2BootConfigUefiBootBootDeviceBootDeviceNic"
          }
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "bootDeviceDisks",
            "bootDeviceNics"
          ]
        }
      }
    },
    "nutanix:index/VirtualMachineV2BootConfigUefiBootBootDeviceBootDeviceDisk:VirtualMachineV2BootConfigUefiBootBootDeviceBootDeviceDisk": {
      "properties": {
        "diskAddresses": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FVirtualMachineV2BootConfigUefiBootBootDeviceBootDeviceDiskDiskAddress:VirtualMachineV2BootConfigUefiBootBootDeviceBootDeviceDiskDiskAddress"
          }
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "diskAddresses"
          ]
        }
      }
    },
    "nutanix:index/VirtualMachineV2BootConfigUefiBootBootDeviceBootDeviceDiskDiskAddress:VirtualMachineV2BootConfigUefiBootBootDeviceBootDeviceDiskDiskAddress": {
      "properties": {
        "busType": {
          "type": "string"
        },
        "index": {
          "type": "integer",
          "description": ") Index of the serial port.\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "busType",
            "index"
          ]
        }
      }
    },
    "nutanix:index/VirtualMachineV2BootConfigUefiBootBootDeviceBootDeviceNic:VirtualMachineV2BootConfigUefiBootBootDeviceBootDeviceNic": {
      "properties": {
        "macAddress": {
          "type": "string",
          "description": "MAC address of the emulated NIC.\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "macAddress"
          ]
        }
      }
    },
    "nutanix:index/VirtualMachineV2BootConfigUefiBootNvramDevice:VirtualMachineV2BootConfigUefiBootNvramDevice": {
      "properties": {
        "backingStorageInfos": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FVirtualMachineV2BootConfigUefiBootNvramDeviceBackingStorageInfo:VirtualMachineV2BootConfigUefiBootNvramDeviceBackingStorageInfo"
          }
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "backingStorageInfos"
          ]
        }
      }
    },
    "nutanix:index/VirtualMachineV2BootConfigUefiBootNvramDeviceBackingStorageInfo:VirtualMachineV2BootConfigUefiBootNvramDeviceBackingStorageInfo": {
      "properties": {
        "dataSources": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FVirtualMachineV2BootConfigUefiBootNvramDeviceBackingStorageInfoDataSource:VirtualMachineV2BootConfigUefiBootNvramDeviceBackingStorageInfoDataSource"
          }
        },
        "diskExtId": {
          "type": "string"
        },
        "diskSizeBytes": {
          "type": "integer"
        },
        "isMigrationInProgress": {
          "type": "boolean"
        },
        "storageConfigs": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FVirtualMachineV2BootConfigUefiBootNvramDeviceBackingStorageInfoStorageConfig:VirtualMachineV2BootConfigUefiBootNvramDeviceBackingStorageInfoStorageConfig"
          },
          "description": "Storage configuration for VM.\n"
        },
        "storageContainers": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FVirtualMachineV2BootConfigUefiBootNvramDeviceBackingStorageInfoStorageContainer:VirtualMachineV2BootConfigUefiBootNvramDeviceBackingStorageInfoStorageContainer"
          }
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "dataSources",
            "diskExtId",
            "diskSizeBytes",
            "isMigrationInProgress",
            "storageConfigs",
            "storageContainers"
          ]
        }
      }
    },
    "nutanix:index/VirtualMachineV2BootConfigUefiBootNvramDeviceBackingStorageInfoDataSource:VirtualMachineV2BootConfigUefiBootNvramDeviceBackingStorageInfoDataSource": {
      "properties": {
        "references": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FVirtualMachineV2BootConfigUefiBootNvramDeviceBackingStorageInfoDataSourceReference:VirtualMachineV2BootConfigUefiBootNvramDeviceBackingStorageInfoDataSourceReference"
          },
          "description": "Reference to image or vm disk\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "references"
          ]
        }
      }
    },
    "nutanix:index/VirtualMachineV2BootConfigUefiBootNvramDeviceBackingStorageInfoDataSourceReference:VirtualMachineV2BootConfigUefiBootNvramDeviceBackingStorageInfoDataSourceReference": {
      "properties": {
        "imageReferences": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FVirtualMachineV2BootConfigUefiBootNvramDeviceBackingStorageInfoDataSourceReferenceImageReference:VirtualMachineV2BootConfigUefiBootNvramDeviceBackingStorageInfoDataSourceReferenceImageReference"
          },
          "description": "Image Reference\n* `image_reference.image_ext_id`: (Required) The globally unique identifier of an image. It should be of type UUID.\n"
        },
        "vmDiskReferences": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FVirtualMachineV2BootConfigUefiBootNvramDeviceBackingStorageInfoDataSourceReferenceVmDiskReference:VirtualMachineV2BootConfigUefiBootNvramDeviceBackingStorageInfoDataSourceReferenceVmDiskReference"
          },
          "description": "Vm Disk Reference\n* `vm_disk_reference.disk_ext_id`: (Optional) The globally unique identifier of a VM disk. It should be of type UUID.\n* `vm_disk_reference.disk_address`: (Optional) Disk address.\n* `vm_disk_reference.vm_reference`: (Optional) This is a reference to a VM.\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "imageReferences",
            "vmDiskReferences"
          ]
        }
      }
    },
    "nutanix:index/VirtualMachineV2BootConfigUefiBootNvramDeviceBackingStorageInfoDataSourceReferenceImageReference:VirtualMachineV2BootConfigUefiBootNvramDeviceBackingStorageInfoDataSourceReferenceImageReference": {
      "properties": {
        "imageExtId": {
          "type": "string"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "imageExtId"
          ]
        }
      }
    },
    "nutanix:index/VirtualMachineV2BootConfigUefiBootNvramDeviceBackingStorageInfoDataSourceReferenceVmDiskReference:VirtualMachineV2BootConfigUefiBootNvramDeviceBackingStorageInfoDataSourceReferenceVmDiskReference": {
      "properties": {
        "diskAddresses": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FVirtualMachineV2BootConfigUefiBootNvramDeviceBackingStorageInfoDataSourceReferenceVmDiskReferenceDiskAddress:VirtualMachineV2BootConfigUefiBootNvramDeviceBackingStorageInfoDataSourceReferenceVmDiskReferenceDiskAddress"
          }
        },
        "diskExtId": {
          "type": "string"
        },
        "vmReferences": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FVirtualMachineV2BootConfigUefiBootNvramDeviceBackingStorageInfoDataSourceReferenceVmDiskReferenceVmReference:VirtualMachineV2BootConfigUefiBootNvramDeviceBackingStorageInfoDataSourceReferenceVmDiskReferenceVmReference"
          }
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "diskAddresses",
            "diskExtId",
            "vmReferences"
          ]
        }
      }
    },
    "nutanix:index/VirtualMachineV2BootConfigUefiBootNvramDeviceBackingStorageInfoDataSourceReferenceVmDiskReferenceDiskAddress:VirtualMachineV2BootConfigUefiBootNvramDeviceBackingStorageInfoDataSourceReferenceVmDiskReferenceDiskAddress": {
      "properties": {
        "busType": {
          "type": "string"
        },
        "index": {
          "type": "integer",
          "description": ") Index of the serial port.\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "busType",
            "index"
          ]
        }
      }
    },
    "nutanix:index/VirtualMachineV2BootConfigUefiBootNvramDeviceBackingStorageInfoDataSourceReferenceVmDiskReferenceVmReference:VirtualMachineV2BootConfigUefiBootNvramDeviceBackingStorageInfoDataSourceReferenceVmDiskReferenceVmReference": {
      "properties": {
        "extId": {
          "type": "string",
          "description": "A globally unique identifier of an instance that is suitable for external consumption.\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "extId"
          ]
        }
      }
    },
    "nutanix:index/VirtualMachineV2BootConfigUefiBootNvramDeviceBackingStorageInfoStorageConfig:VirtualMachineV2BootConfigUefiBootNvramDeviceBackingStorageInfoStorageConfig": {
      "properties": {
        "isFlashModeEnabled": {
          "type": "boolean",
          "description": "Indicates whether the virtual disk is pinned to the hot tier or not.\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "isFlashModeEnabled"
          ]
        }
      }
    },
    "nutanix:index/VirtualMachineV2BootConfigUefiBootNvramDeviceBackingStorageInfoStorageContainer:VirtualMachineV2BootConfigUefiBootNvramDeviceBackingStorageInfoStorageContainer": {
      "properties": {
        "extId": {
          "type": "string",
          "description": "A globally unique identifier of an instance that is suitable for external consumption.\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "extId"
          ]
        }
      }
    },
    "nutanix:index/VirtualMachineV2Category:VirtualMachineV2Category": {
      "properties": {
        "extId": {
          "type": "string",
          "description": "A globally unique identifier of a VM category of type UUID.\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "extId"
          ]
        }
      }
    },
    "nutanix:index/VirtualMachineV2CdRom:VirtualMachineV2CdRom": {
      "properties": {
        "backingInfos": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FVirtualMachineV2CdRomBackingInfo:VirtualMachineV2CdRomBackingInfo"
          },
          "description": "Storage provided by Nutanix ADSF\n"
        },
        "diskAddresses": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FVirtualMachineV2CdRomDiskAddress:VirtualMachineV2CdRomDiskAddress"
          },
          "description": "Virtual Machine disk (VM disk).\n"
        },
        "extId": {
          "type": "string",
          "description": "A globally unique identifier of an instance that is suitable for external consumption.\n"
        },
        "isoType": {
          "type": "string",
          "description": "Type of ISO image inserted in CD-ROM. Valid values \"OTHER\", \"GUEST_TOOLS\", \"GUEST_CUSTOMIZATION\" .\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "backingInfos",
            "diskAddresses",
            "extId",
            "isoType"
          ]
        }
      }
    },
    "nutanix:index/VirtualMachineV2CdRomBackingInfo:VirtualMachineV2CdRomBackingInfo": {
      "properties": {
        "dataSources": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FVirtualMachineV2CdRomBackingInfoDataSource:VirtualMachineV2CdRomBackingInfoDataSource"
          },
          "description": "A reference to a disk or image that contains the contents of a disk.\n"
        },
        "diskExtId": {
          "type": "string"
        },
        "diskSizeBytes": {
          "type": "integer",
          "description": "Size of the disk in Bytes\n"
        },
        "isMigrationInProgress": {
          "type": "boolean"
        },
        "storageConfigs": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FVirtualMachineV2CdRomBackingInfoStorageConfig:VirtualMachineV2CdRomBackingInfoStorageConfig"
          },
          "description": "Storage configuration for VM disks\n* `storage_config.is_flash_mode_enabled`: Indicates whether the virtual disk is pinned to the hot tier or not.\n"
        },
        "storageContainers": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FVirtualMachineV2CdRomBackingInfoStorageContainer:VirtualMachineV2CdRomBackingInfoStorageContainer"
          },
          "description": "This reference is for disk level storage container preference. This preference specifies the storage container to which this disk belongs.\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "dataSources",
            "diskExtId",
            "diskSizeBytes",
            "isMigrationInProgress",
            "storageConfigs",
            "storageContainers"
          ]
        }
      }
    },
    "nutanix:index/VirtualMachineV2CdRomBackingInfoDataSource:VirtualMachineV2CdRomBackingInfoDataSource": {
      "properties": {
        "references": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FVirtualMachineV2CdRomBackingInfoDataSourceReference:VirtualMachineV2CdRomBackingInfoDataSourceReference"
          },
          "description": "Reference to image or vm disk\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "references"
          ]
        }
      }
    },
    "nutanix:index/VirtualMachineV2CdRomBackingInfoDataSourceReference:VirtualMachineV2CdRomBackingInfoDataSourceReference": {
      "properties": {
        "imageReferences": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FVirtualMachineV2CdRomBackingInfoDataSourceReferenceImageReference:VirtualMachineV2CdRomBackingInfoDataSourceReferenceImageReference"
          },
          "description": "Image Reference\n* `image_reference.image_ext_id`: (Required) The globally unique identifier of an image. It should be of type UUID.\n"
        },
        "vmDiskReferences": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FVirtualMachineV2CdRomBackingInfoDataSourceReferenceVmDiskReference:VirtualMachineV2CdRomBackingInfoDataSourceReferenceVmDiskReference"
          },
          "description": "Vm Disk Reference\n* `vm_disk_reference.disk_ext_id`: (Optional) The globally unique identifier of a VM disk. It should be of type UUID.\n* `vm_disk_reference.disk_address`: (Optional) Disk address.\n* `vm_disk_reference.vm_reference`: (Optional) This is a reference to a VM.\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "imageReferences",
            "vmDiskReferences"
          ]
        }
      }
    },
    "nutanix:index/VirtualMachineV2CdRomBackingInfoDataSourceReferenceImageReference:VirtualMachineV2CdRomBackingInfoDataSourceReferenceImageReference": {
      "properties": {
        "imageExtId": {
          "type": "string"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "imageExtId"
          ]
        }
      }
    },
    "nutanix:index/VirtualMachineV2CdRomBackingInfoDataSourceReferenceVmDiskReference:VirtualMachineV2CdRomBackingInfoDataSourceReferenceVmDiskReference": {
      "properties": {
        "diskAddresses": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FVirtualMachineV2CdRomBackingInfoDataSourceReferenceVmDiskReferenceDiskAddress:VirtualMachineV2CdRomBackingInfoDataSourceReferenceVmDiskReferenceDiskAddress"
          }
        },
        "diskExtId": {
          "type": "string"
        },
        "vmReferences": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FVirtualMachineV2CdRomBackingInfoDataSourceReferenceVmDiskReferenceVmReference:VirtualMachineV2CdRomBackingInfoDataSourceReferenceVmDiskReferenceVmReference"
          }
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "diskAddresses",
            "diskExtId",
            "vmReferences"
          ]
        }
      }
    },
    "nutanix:index/VirtualMachineV2CdRomBackingInfoDataSourceReferenceVmDiskReferenceDiskAddress:VirtualMachineV2CdRomBackingInfoDataSourceReferenceVmDiskReferenceDiskAddress": {
      "properties": {
        "busType": {
          "type": "string"
        },
        "index": {
          "type": "integer",
          "description": ") Index of the serial port.\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "busType",
            "index"
          ]
        }
      }
    },
    "nutanix:index/VirtualMachineV2CdRomBackingInfoDataSourceReferenceVmDiskReferenceVmReference:VirtualMachineV2CdRomBackingInfoDataSourceReferenceVmDiskReferenceVmReference": {
      "properties": {
        "extId": {
          "type": "string",
          "description": "A globally unique identifier of an instance that is suitable for external consumption.\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "extId"
          ]
        }
      }
    },
    "nutanix:index/VirtualMachineV2CdRomBackingInfoStorageConfig:VirtualMachineV2CdRomBackingInfoStorageConfig": {
      "properties": {
        "isFlashModeEnabled": {
          "type": "boolean",
          "description": "Indicates whether the virtual disk is pinned to the hot tier or not.\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "isFlashModeEnabled"
          ]
        }
      }
    },
    "nutanix:index/VirtualMachineV2CdRomBackingInfoStorageContainer:VirtualMachineV2CdRomBackingInfoStorageContainer": {
      "properties": {
        "extId": {
          "type": "string",
          "description": "A globally unique identifier of an instance that is suitable for external consumption.\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "extId"
          ]
        }
      }
    },
    "nutanix:index/VirtualMachineV2CdRomDiskAddress:VirtualMachineV2CdRomDiskAddress": {
      "properties": {
        "busType": {
          "type": "string"
        },
        "index": {
          "type": "integer",
          "description": ") Index of the serial port.\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "busType",
            "index"
          ]
        }
      }
    },
    "nutanix:index/VirtualMachineV2Cluster:VirtualMachineV2Cluster": {
      "properties": {
        "extId": {
          "type": "string",
          "description": "The globally unique identifier of a cluster type UUID.\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "extId"
          ]
        }
      }
    },
    "nutanix:index/VirtualMachineV2Disk:VirtualMachineV2Disk": {
      "properties": {
        "backingInfos": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FVirtualMachineV2DiskBackingInfo:VirtualMachineV2DiskBackingInfo"
          },
          "description": "Supporting storage to create virtual disk on.\n* `backing_info.vm_disk`:(Optional) backing Info for vmDisk\n* `backing_info.adfs_volume_group_reference`: (Required) Volume Group Reference\n* `backing_info.adfs_volume_group_reference.volume_group_ext_id`: (Required) The globally unique identifier of an ADSF volume group. It should be of type UUID.\n"
        },
        "diskAddresses": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FVirtualMachineV2DiskDiskAddress:VirtualMachineV2DiskDiskAddress"
          },
          "description": "Disk address.\n* `disk_address.bus_type`: (Required) Bus type for the device. The acceptable values are: SCSI, IDE, PCI, SATA, SPAPR (only PPC).\n* `disk_address.index`: (Required) Device index on the bus. This field is ignored unless the bus details are specified.\n"
        },
        "extId": {
          "type": "string",
          "description": "A globally unique identifier of an instance that is suitable for external consumption.\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "backingInfos",
            "diskAddresses",
            "extId"
          ]
        }
      }
    },
    "nutanix:index/VirtualMachineV2DiskBackingInfo:VirtualMachineV2DiskBackingInfo": {
      "properties": {
        "adfsVolumeGroupReferences": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FVirtualMachineV2DiskBackingInfoAdfsVolumeGroupReference:VirtualMachineV2DiskBackingInfoAdfsVolumeGroupReference"
          }
        },
        "vmDisks": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FVirtualMachineV2DiskBackingInfoVmDisk:VirtualMachineV2DiskBackingInfoVmDisk"
          }
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "adfsVolumeGroupReferences",
            "vmDisks"
          ]
        }
      }
    },
    "nutanix:index/VirtualMachineV2DiskBackingInfoAdfsVolumeGroupReference:VirtualMachineV2DiskBackingInfoAdfsVolumeGroupReference": {
      "properties": {
        "volumeGroupExtId": {
          "type": "string"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "volumeGroupExtId"
          ]
        }
      }
    },
    "nutanix:index/VirtualMachineV2DiskBackingInfoVmDisk:VirtualMachineV2DiskBackingInfoVmDisk": {
      "properties": {
        "dataSources": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FVirtualMachineV2DiskBackingInfoVmDiskDataSource:VirtualMachineV2DiskBackingInfoVmDiskDataSource"
          }
        },
        "diskExtId": {
          "type": "string"
        },
        "diskSizeBytes": {
          "type": "integer"
        },
        "isMigrationInProgress": {
          "type": "boolean"
        },
        "storageConfigs": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FVirtualMachineV2DiskBackingInfoVmDiskStorageConfig:VirtualMachineV2DiskBackingInfoVmDiskStorageConfig"
          },
          "description": "Storage configuration for VM.\n"
        },
        "storageContainers": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FVirtualMachineV2DiskBackingInfoVmDiskStorageContainer:VirtualMachineV2DiskBackingInfoVmDiskStorageContainer"
          }
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "dataSources",
            "diskExtId",
            "diskSizeBytes",
            "isMigrationInProgress",
            "storageConfigs",
            "storageContainers"
          ]
        }
      }
    },
    "nutanix:index/VirtualMachineV2DiskBackingInfoVmDiskDataSource:VirtualMachineV2DiskBackingInfoVmDiskDataSource": {
      "properties": {
        "references": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FVirtualMachineV2DiskBackingInfoVmDiskDataSourceReference:VirtualMachineV2DiskBackingInfoVmDiskDataSourceReference"
          },
          "description": "Reference to image or vm disk\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "references"
          ]
        }
      }
    },
    "nutanix:index/VirtualMachineV2DiskBackingInfoVmDiskDataSourceReference:VirtualMachineV2DiskBackingInfoVmDiskDataSourceReference": {
      "properties": {
        "imageReferences": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FVirtualMachineV2DiskBackingInfoVmDiskDataSourceReferenceImageReference:VirtualMachineV2DiskBackingInfoVmDiskDataSourceReferenceImageReference"
          },
          "description": "Image Reference\n* `image_reference.image_ext_id`: (Required) The globally unique identifier of an image. It should be of type UUID.\n"
        },
        "vmDiskReferences": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FVirtualMachineV2DiskBackingInfoVmDiskDataSourceReferenceVmDiskReference:VirtualMachineV2DiskBackingInfoVmDiskDataSourceReferenceVmDiskReference"
          },
          "description": "Vm Disk Reference\n* `vm_disk_reference.disk_ext_id`: (Optional) The globally unique identifier of a VM disk. It should be of type UUID.\n* `vm_disk_reference.disk_address`: (Optional) Disk address.\n* `vm_disk_reference.vm_reference`: (Optional) This is a reference to a VM.\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "imageReferences",
            "vmDiskReferences"
          ]
        }
      }
    },
    "nutanix:index/VirtualMachineV2DiskBackingInfoVmDiskDataSourceReferenceImageReference:VirtualMachineV2DiskBackingInfoVmDiskDataSourceReferenceImageReference": {
      "properties": {
        "imageExtId": {
          "type": "string"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "imageExtId"
          ]
        }
      }
    },
    "nutanix:index/VirtualMachineV2DiskBackingInfoVmDiskDataSourceReferenceVmDiskReference:VirtualMachineV2DiskBackingInfoVmDiskDataSourceReferenceVmDiskReference": {
      "properties": {
        "diskAddresses": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FVirtualMachineV2DiskBackingInfoVmDiskDataSourceReferenceVmDiskReferenceDiskAddress:VirtualMachineV2DiskBackingInfoVmDiskDataSourceReferenceVmDiskReferenceDiskAddress"
          }
        },
        "diskExtId": {
          "type": "string"
        },
        "vmReferences": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FVirtualMachineV2DiskBackingInfoVmDiskDataSourceReferenceVmDiskReferenceVmReference:VirtualMachineV2DiskBackingInfoVmDiskDataSourceReferenceVmDiskReferenceVmReference"
          }
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "diskAddresses",
            "diskExtId",
            "vmReferences"
          ]
        }
      }
    },
    "nutanix:index/VirtualMachineV2DiskBackingInfoVmDiskDataSourceReferenceVmDiskReferenceDiskAddress:VirtualMachineV2DiskBackingInfoVmDiskDataSourceReferenceVmDiskReferenceDiskAddress": {
      "properties": {
        "busType": {
          "type": "string"
        },
        "index": {
          "type": "integer",
          "description": ") Index of the serial port.\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "busType",
            "index"
          ]
        }
      }
    },
    "nutanix:index/VirtualMachineV2DiskBackingInfoVmDiskDataSourceReferenceVmDiskReferenceVmReference:VirtualMachineV2DiskBackingInfoVmDiskDataSourceReferenceVmDiskReferenceVmReference": {
      "properties": {
        "extId": {
          "type": "string",
          "description": "A globally unique identifier of an instance that is suitable for external consumption.\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "extId"
          ]
        }
      }
    },
    "nutanix:index/VirtualMachineV2DiskBackingInfoVmDiskStorageConfig:VirtualMachineV2DiskBackingInfoVmDiskStorageConfig": {
      "properties": {
        "isFlashModeEnabled": {
          "type": "boolean",
          "description": "Indicates whether the virtual disk is pinned to the hot tier or not.\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "isFlashModeEnabled"
          ]
        }
      }
    },
    "nutanix:index/VirtualMachineV2DiskBackingInfoVmDiskStorageContainer:VirtualMachineV2DiskBackingInfoVmDiskStorageContainer": {
      "properties": {
        "extId": {
          "type": "string",
          "description": "A globally unique identifier of an instance that is suitable for external consumption.\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "extId"
          ]
        }
      }
    },
    "nutanix:index/VirtualMachineV2DiskDiskAddress:VirtualMachineV2DiskDiskAddress": {
      "properties": {
        "busType": {
          "type": "string"
        },
        "index": {
          "type": "integer",
          "description": ") Index of the serial port.\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "busType",
            "index"
          ]
        }
      }
    },
    "nutanix:index/VirtualMachineV2Gpus:VirtualMachineV2Gpus": {
      "properties": {
        "deviceId": {
          "type": "integer",
          "description": "The device Id of the GPU.\n"
        },
        "extId": {
          "type": "string",
          "description": "A globally unique identifier of an instance that is suitable for external consumption.\n"
        },
        "fraction": {
          "type": "integer"
        },
        "frameBufferSizeBytes": {
          "type": "integer"
        },
        "guestDriverVersion": {
          "type": "string"
        },
        "links": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FVirtualMachineV2GpusLink:VirtualMachineV2GpusLink"
          }
        },
        "mode": {
          "type": "string",
          "description": ") The mode of this GPU. Valid values \"PASSTHROUGH_GRAPHICS\", \"PASSTHROUGH_COMPUTE\", \"VIRTUAL\" .\n"
        },
        "name": {
          "type": "string",
          "description": "VM name.\n"
        },
        "numVirtualDisplayHeads": {
          "type": "integer"
        },
        "pciAddresses": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FVirtualMachineV2GpusPciAddress:VirtualMachineV2GpusPciAddress"
          },
          "description": "The (S)egment:(B)us:(D)evice.(F)unction hardware address.\n"
        },
        "tenantId": {
          "type": "string"
        },
        "vendor": {
          "type": "string",
          "description": "The vendor of the GPU. Valid values \"NVIDIA\", \"AMD\", \"INTEL\" .\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "deviceId",
            "extId",
            "fraction",
            "frameBufferSizeBytes",
            "guestDriverVersion",
            "links",
            "mode",
            "name",
            "numVirtualDisplayHeads",
            "pciAddresses",
            "tenantId",
            "vendor"
          ]
        }
      }
    },
    "nutanix:index/VirtualMachineV2GpusLink:VirtualMachineV2GpusLink": {
      "properties": {
        "href": {
          "type": "string"
        },
        "rel": {
          "type": "string"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "href",
            "rel"
          ]
        }
      }
    },
    "nutanix:index/VirtualMachineV2GpusPciAddress:VirtualMachineV2GpusPciAddress": {
      "properties": {
        "bus": {
          "type": "integer"
        },
        "device": {
          "type": "integer"
        },
        "func": {
          "type": "integer"
        },
        "segment": {
          "type": "integer"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "bus",
            "device",
            "func",
            "segment"
          ]
        }
      }
    },
    "nutanix:index/VirtualMachineV2GuestCustomization:VirtualMachineV2GuestCustomization": {
      "properties": {
        "configs": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FVirtualMachineV2GuestCustomizationConfig:VirtualMachineV2GuestCustomizationConfig"
          },
          "description": "The Nutanix Guest Tools customization settings.\n\n* `config.sysprep`: Sysprep config\n* `config.cloud_init`: CloudInit Config\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "configs"
          ]
        }
      }
    },
    "nutanix:index/VirtualMachineV2GuestCustomizationConfig:VirtualMachineV2GuestCustomizationConfig": {
      "properties": {
        "cloudInits": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FVirtualMachineV2GuestCustomizationConfigCloudInit:VirtualMachineV2GuestCustomizationConfigCloudInit"
          }
        },
        "syspreps": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FVirtualMachineV2GuestCustomizationConfigSysprep:VirtualMachineV2GuestCustomizationConfigSysprep"
          }
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "cloudInits",
            "syspreps"
          ]
        }
      }
    },
    "nutanix:index/VirtualMachineV2GuestCustomizationConfigCloudInit:VirtualMachineV2GuestCustomizationConfigCloudInit": {
      "properties": {
        "cloudInitScripts": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FVirtualMachineV2GuestCustomizationConfigCloudInitCloudInitScript:VirtualMachineV2GuestCustomizationConfigCloudInitCloudInitScript"
          },
          "description": "The script to use for cloud-init.\n* `cloud_init_script.user_data`: (Optional) user data object\n* `cloud_init_script.user_data.value`: (Optional) base64 encoded cloud init script as string\n* `cloud_init_script.custom_keys`: (Optional) The list of the individual KeyValuePair elements.\n"
        },
        "datasourceType": {
          "type": "string",
          "description": "Type of datasource. Default: CONFIG_DRIVE_V2\n"
        },
        "metadata": {
          "type": "string",
          "description": "The contents of the<span pulumi-lang-nodejs=\" metaData \" pulumi-lang-dotnet=\" MetaData \" pulumi-lang-go=\" metaData \" pulumi-lang-python=\" meta_data \" pulumi-lang-yaml=\" metaData \" pulumi-lang-java=\" metaData \"> meta_data </span>configuration for cloud-init. This can be formatted as YAML or JSON. The value must be base64 encoded. Default value is 'CONFIG_DRIVE_V2'.\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "cloudInitScripts",
            "metadata"
          ]
        }
      }
    },
    "nutanix:index/VirtualMachineV2GuestCustomizationConfigCloudInitCloudInitScript:VirtualMachineV2GuestCustomizationConfigCloudInitCloudInitScript": {
      "properties": {
        "customKeyValues": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FVirtualMachineV2GuestCustomizationConfigCloudInitCloudInitScriptCustomKeyValue:VirtualMachineV2GuestCustomizationConfigCloudInitCloudInitScriptCustomKeyValue"
          }
        },
        "userDatas": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FVirtualMachineV2GuestCustomizationConfigCloudInitCloudInitScriptUserData:VirtualMachineV2GuestCustomizationConfigCloudInitCloudInitScriptUserData"
          }
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "customKeyValues",
            "userDatas"
          ]
        }
      }
    },
    "nutanix:index/VirtualMachineV2GuestCustomizationConfigCloudInitCloudInitScriptCustomKeyValue:VirtualMachineV2GuestCustomizationConfigCloudInitCloudInitScriptCustomKeyValue": {
      "properties": {
        "keyValuePairs": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FVirtualMachineV2GuestCustomizationConfigCloudInitCloudInitScriptCustomKeyValueKeyValuePair:VirtualMachineV2GuestCustomizationConfigCloudInitCloudInitScriptCustomKeyValueKeyValuePair"
          }
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "keyValuePairs"
          ]
        }
      }
    },
    "nutanix:index/VirtualMachineV2GuestCustomizationConfigCloudInitCloudInitScriptCustomKeyValueKeyValuePair:VirtualMachineV2GuestCustomizationConfigCloudInitCloudInitScriptCustomKeyValueKeyValuePair": {
      "properties": {
        "name": {
          "type": "string",
          "description": "VM name.\n"
        },
        "values": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FVirtualMachineV2GuestCustomizationConfigCloudInitCloudInitScriptCustomKeyValueKeyValuePairValue:VirtualMachineV2GuestCustomizationConfigCloudInitCloudInitScriptCustomKeyValueKeyValuePairValue"
          }
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "name",
            "values"
          ]
        }
      }
    },
    "nutanix:index/VirtualMachineV2GuestCustomizationConfigCloudInitCloudInitScriptCustomKeyValueKeyValuePairValue:VirtualMachineV2GuestCustomizationConfigCloudInitCloudInitScriptCustomKeyValueKeyValuePairValue": {
      "properties": {
        "boolean": {
          "type": "boolean"
        },
        "integer": {
          "type": "integer"
        },
        "integerLists": {
          "type": "array",
          "items": {
            "type": "integer"
          }
        },
        "mapOfStrings": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FVirtualMachineV2GuestCustomizationConfigCloudInitCloudInitScriptCustomKeyValueKeyValuePairValueMapOfString:VirtualMachineV2GuestCustomizationConfigCloudInitCloudInitScriptCustomKeyValueKeyValuePairValueMapOfString"
          }
        },
        "object": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          }
        },
        "string": {
          "type": "string"
        },
        "stringLists": {
          "type": "array",
          "items": {
            "type": "string"
          }
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "boolean",
            "integer",
            "integerLists",
            "mapOfStrings",
            "object",
            "string",
            "stringLists"
          ]
        }
      }
    },
    "nutanix:index/VirtualMachineV2GuestCustomizationConfigCloudInitCloudInitScriptCustomKeyValueKeyValuePairValueMapOfString:VirtualMachineV2GuestCustomizationConfigCloudInitCloudInitScriptCustomKeyValueKeyValuePairValueMapOfString": {
      "properties": {
        "map": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          }
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "map"
          ]
        }
      }
    },
    "nutanix:index/VirtualMachineV2GuestCustomizationConfigCloudInitCloudInitScriptUserData:VirtualMachineV2GuestCustomizationConfigCloudInitCloudInitScriptUserData": {
      "properties": {
        "value": {
          "type": "string"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "value"
          ]
        }
      }
    },
    "nutanix:index/VirtualMachineV2GuestCustomizationConfigSysprep:VirtualMachineV2GuestCustomizationConfigSysprep": {
      "properties": {
        "installType": {
          "type": "string",
          "description": "Indicates whether the guest will be freshly installed using this unattend configuration, or this unattend configuration will be applied to a pre-prepared image. Values allowed is 'PREPARED', 'FRESH'.\n"
        },
        "sysprepScripts": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FVirtualMachineV2GuestCustomizationConfigSysprepSysprepScript:VirtualMachineV2GuestCustomizationConfigSysprepSysprepScript"
          },
          "description": "Object either UnattendXml or CustomKeyValues\n* `sysprep_script.unattend_xml`: (Optional) xml object\n* `sysprep_script.unattend_xml.value`: (Optional) base64 encoded sysprep unattended xml\n* `sysprep_script.custom_key_values`: (Optional) The list of the individual KeyValuePair elements.\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "installType",
            "sysprepScripts"
          ]
        }
      }
    },
    "nutanix:index/VirtualMachineV2GuestCustomizationConfigSysprepSysprepScript:VirtualMachineV2GuestCustomizationConfigSysprepSysprepScript": {
      "properties": {
        "customKeyValues": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FVirtualMachineV2GuestCustomizationConfigSysprepSysprepScriptCustomKeyValue:VirtualMachineV2GuestCustomizationConfigSysprepSysprepScriptCustomKeyValue"
          }
        },
        "unattendXmls": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FVirtualMachineV2GuestCustomizationConfigSysprepSysprepScriptUnattendXml:VirtualMachineV2GuestCustomizationConfigSysprepSysprepScriptUnattendXml"
          }
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "customKeyValues",
            "unattendXmls"
          ]
        }
      }
    },
    "nutanix:index/VirtualMachineV2GuestCustomizationConfigSysprepSysprepScriptCustomKeyValue:VirtualMachineV2GuestCustomizationConfigSysprepSysprepScriptCustomKeyValue": {
      "properties": {
        "keyValuePairs": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FVirtualMachineV2GuestCustomizationConfigSysprepSysprepScriptCustomKeyValueKeyValuePair:VirtualMachineV2GuestCustomizationConfigSysprepSysprepScriptCustomKeyValueKeyValuePair"
          }
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "keyValuePairs"
          ]
        }
      }
    },
    "nutanix:index/VirtualMachineV2GuestCustomizationConfigSysprepSysprepScriptCustomKeyValueKeyValuePair:VirtualMachineV2GuestCustomizationConfigSysprepSysprepScriptCustomKeyValueKeyValuePair": {
      "properties": {
        "name": {
          "type": "string",
          "description": "VM name.\n"
        },
        "values": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FVirtualMachineV2GuestCustomizationConfigSysprepSysprepScriptCustomKeyValueKeyValuePairValue:VirtualMachineV2GuestCustomizationConfigSysprepSysprepScriptCustomKeyValueKeyValuePairValue"
          }
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "name",
            "values"
          ]
        }
      }
    },
    "nutanix:index/VirtualMachineV2GuestCustomizationConfigSysprepSysprepScriptCustomKeyValueKeyValuePairValue:VirtualMachineV2GuestCustomizationConfigSysprepSysprepScriptCustomKeyValueKeyValuePairValue": {
      "properties": {
        "boolean": {
          "type": "boolean"
        },
        "integer": {
          "type": "integer"
        },
        "integerLists": {
          "type": "array",
          "items": {
            "type": "integer"
          }
        },
        "mapOfStrings": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FVirtualMachineV2GuestCustomizationConfigSysprepSysprepScriptCustomKeyValueKeyValuePairValueMapOfString:VirtualMachineV2GuestCustomizationConfigSysprepSysprepScriptCustomKeyValueKeyValuePairValueMapOfString"
          }
        },
        "object": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          }
        },
        "string": {
          "type": "string"
        },
        "stringLists": {
          "type": "array",
          "items": {
            "type": "string"
          }
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "boolean",
            "integer",
            "integerLists",
            "mapOfStrings",
            "object",
            "string",
            "stringLists"
          ]
        }
      }
    },
    "nutanix:index/VirtualMachineV2GuestCustomizationConfigSysprepSysprepScriptCustomKeyValueKeyValuePairValueMapOfString:VirtualMachineV2GuestCustomizationConfigSysprepSysprepScriptCustomKeyValueKeyValuePairValueMapOfString": {
      "properties": {
        "map": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          }
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "map"
          ]
        }
      }
    },
    "nutanix:index/VirtualMachineV2GuestCustomizationConfigSysprepSysprepScriptUnattendXml:VirtualMachineV2GuestCustomizationConfigSysprepSysprepScriptUnattendXml": {
      "properties": {
        "value": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "value"
      ]
    },
    "nutanix:index/VirtualMachineV2GuestTool:VirtualMachineV2GuestTool": {
      "properties": {
        "availableVersion": {
          "type": "string"
        },
        "capabilities": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "The list of the application names that are enabled on the guest VM.\n"
        },
        "guestOsVersion": {
          "type": "string"
        },
        "isEnabled": {
          "type": "boolean",
          "description": "Indicates whether Nutanix Guest Tools is enabled or not.\n"
        },
        "isInstalled": {
          "type": "boolean"
        },
        "isIsoInserted": {
          "type": "boolean"
        },
        "isReachable": {
          "type": "boolean"
        },
        "isVmMobilityDriversInstalled": {
          "type": "boolean"
        },
        "isVssSnapshotCapable": {
          "type": "boolean"
        },
        "version": {
          "type": "string"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "availableVersion",
            "capabilities",
            "guestOsVersion",
            "isEnabled",
            "isInstalled",
            "isIsoInserted",
            "isReachable",
            "isVmMobilityDriversInstalled",
            "isVssSnapshotCapable",
            "version"
          ]
        }
      }
    },
    "nutanix:index/VirtualMachineV2Host:VirtualMachineV2Host": {
      "properties": {
        "extId": {
          "type": "string",
          "description": "A globally unique identifier of a host of type UUID.\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "extId"
          ]
        }
      }
    },
    "nutanix:index/VirtualMachineV2Nic:VirtualMachineV2Nic": {
      "properties": {
        "backingInfos": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FVirtualMachineV2NicBackingInfo:VirtualMachineV2NicBackingInfo"
          },
          "description": "Defines a NIC emulated by the hypervisor\n"
        },
        "extId": {
          "type": "string",
          "description": "A globally unique identifier of an instance that is suitable for external consumption.\n"
        },
        "networkInfos": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FVirtualMachineV2NicNetworkInfo:VirtualMachineV2NicNetworkInfo"
          },
          "description": "Network information for a NIC.\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "backingInfos",
            "extId",
            "networkInfos"
          ]
        }
      }
    },
    "nutanix:index/VirtualMachineV2NicBackingInfo:VirtualMachineV2NicBackingInfo": {
      "properties": {
        "isConnected": {
          "type": "boolean"
        },
        "macAddress": {
          "type": "string",
          "description": "MAC address of the emulated NIC.\n"
        },
        "model": {
          "type": "string",
          "description": "Options for the NIC emulation. Valid values \"VIRTIO\" , \"E1000\".\n"
        },
        "numQueues": {
          "type": "integer",
          "description": "The number of Tx/Rx queue pairs for this NIC. Default is 1.\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "isConnected",
            "macAddress",
            "model"
          ]
        }
      }
    },
    "nutanix:index/VirtualMachineV2NicNetworkInfo:VirtualMachineV2NicNetworkInfo": {
      "properties": {
        "ipv4Configs": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FVirtualMachineV2NicNetworkInfoIpv4Config:VirtualMachineV2NicNetworkInfoIpv4Config"
          },
          "description": "The IP address configurations.\n"
        },
        "ipv4Infos": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FVirtualMachineV2NicNetworkInfoIpv4Info:VirtualMachineV2NicNetworkInfoIpv4Info"
          }
        },
        "networkFunctionChains": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FVirtualMachineV2NicNetworkInfoNetworkFunctionChain:VirtualMachineV2NicNetworkInfoNetworkFunctionChain"
          },
          "description": "The network function chain associates with the NIC. Only valid if<span pulumi-lang-nodejs=\" nicType \" pulumi-lang-dotnet=\" NicType \" pulumi-lang-go=\" nicType \" pulumi-lang-python=\" nic_type \" pulumi-lang-yaml=\" nicType \" pulumi-lang-java=\" nicType \"> nic_type </span>is NORMAL_NIC.\n"
        },
        "networkFunctionNicType": {
          "type": "string",
          "description": "The type of this Network function NIC. Defaults to INGRESS.\n"
        },
        "nicType": {
          "type": "string",
          "description": "NIC type. Valid values \"SPAN_DESTINATION_NIC\",  \"NORMAL_NIC\", \"DIRECT_NIC\", \"NETWORK_FUNCTION_NIC\" .\n"
        },
        "shouldAllowUnknownMacs": {
          "type": "boolean",
          "description": "Indicates whether an unknown unicast traffic is forwarded to this NIC or not. This is applicable only for the NICs on the overlay subnets.\n"
        },
        "subnets": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FVirtualMachineV2NicNetworkInfoSubnet:VirtualMachineV2NicNetworkInfoSubnet"
          },
          "description": "Network identifier for this adapter. Only valid if<span pulumi-lang-nodejs=\" nicType \" pulumi-lang-dotnet=\" NicType \" pulumi-lang-go=\" nicType \" pulumi-lang-python=\" nic_type \" pulumi-lang-yaml=\" nicType \" pulumi-lang-java=\" nicType \"> nic_type </span>is NORMAL_NIC or DIRECT_NIC\n* `subnet.ext_id`: (Optional) The globally unique identifier of a subnet of type UUID.\n"
        },
        "trunkedVlans": {
          "type": "array",
          "items": {
            "type": "integer"
          },
          "description": "List of networks to trunk if VLAN mode is marked as TRUNKED. If empty and VLAN mode is set to TRUNKED, all the VLANs are trunked.\n"
        },
        "vlanMode": {
          "type": "string",
          "description": "all the virtual NICs are created in ACCESS mode, which permits only one VLAN per virtual network. TRUNKED mode allows multiple VLANs on a single VM NIC for network-aware user VMs.\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "ipv4Configs",
            "ipv4Infos",
            "networkFunctionChains",
            "networkFunctionNicType",
            "nicType",
            "shouldAllowUnknownMacs",
            "subnets",
            "trunkedVlans",
            "vlanMode"
          ]
        }
      }
    },
    "nutanix:index/VirtualMachineV2NicNetworkInfoIpv4Config:VirtualMachineV2NicNetworkInfoIpv4Config": {
      "properties": {
        "ipAddresses": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FVirtualMachineV2NicNetworkInfoIpv4ConfigIpAddress:VirtualMachineV2NicNetworkInfoIpv4ConfigIpAddress"
          },
          "description": "The IP address of the NIC.\n"
        },
        "secondaryIpAddressLists": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FVirtualMachineV2NicNetworkInfoIpv4ConfigSecondaryIpAddressList:VirtualMachineV2NicNetworkInfoIpv4ConfigSecondaryIpAddressList"
          },
          "description": "Secondary IP addresses for the NIC.\n"
        },
        "shouldAssignIp": {
          "type": "boolean",
          "description": "If set to true (default value), an IP address must be assigned to the VM NIC - either the one explicitly specified by the user or allocated automatically by the IPAM service by not specifying the IP address. If false, then no IP assignment is required for this VM NIC.\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "ipAddresses",
            "secondaryIpAddressLists",
            "shouldAssignIp"
          ]
        }
      }
    },
    "nutanix:index/VirtualMachineV2NicNetworkInfoIpv4ConfigIpAddress:VirtualMachineV2NicNetworkInfoIpv4ConfigIpAddress": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "The prefix length of the IP address.\n"
        },
        "value": {
          "type": "string",
          "description": "The IPv4 address of the host.\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "value"
          ]
        }
      }
    },
    "nutanix:index/VirtualMachineV2NicNetworkInfoIpv4ConfigSecondaryIpAddressList:VirtualMachineV2NicNetworkInfoIpv4ConfigSecondaryIpAddressList": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "The prefix length of the IP address.\n"
        },
        "value": {
          "type": "string"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "value"
          ]
        }
      }
    },
    "nutanix:index/VirtualMachineV2NicNetworkInfoIpv4Info:VirtualMachineV2NicNetworkInfoIpv4Info": {
      "properties": {
        "learnedIpAddresses": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FVirtualMachineV2NicNetworkInfoIpv4InfoLearnedIpAddress:VirtualMachineV2NicNetworkInfoIpv4InfoLearnedIpAddress"
          }
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "learnedIpAddresses"
          ]
        }
      }
    },
    "nutanix:index/VirtualMachineV2NicNetworkInfoIpv4InfoLearnedIpAddress:VirtualMachineV2NicNetworkInfoIpv4InfoLearnedIpAddress": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "The prefix length of the IP address.\n"
        },
        "value": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "value"
      ]
    },
    "nutanix:index/VirtualMachineV2NicNetworkInfoNetworkFunctionChain:VirtualMachineV2NicNetworkInfoNetworkFunctionChain": {
      "properties": {
        "extId": {
          "type": "string",
          "description": "A globally unique identifier of an instance that is suitable for external consumption.\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "extId"
          ]
        }
      }
    },
    "nutanix:index/VirtualMachineV2NicNetworkInfoSubnet:VirtualMachineV2NicNetworkInfoSubnet": {
      "properties": {
        "extId": {
          "type": "string",
          "description": "A globally unique identifier of an instance that is suitable for external consumption.\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "extId"
          ]
        }
      }
    },
    "nutanix:index/VirtualMachineV2OwnershipInfo:VirtualMachineV2OwnershipInfo": {
      "properties": {
        "owners": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FVirtualMachineV2OwnershipInfoOwner:VirtualMachineV2OwnershipInfoOwner"
          },
          "description": "Reference to the owner.\n* `owner.ext_id`: A globally unique identifier of a VM owner type UUID.\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "owners"
          ]
        }
      }
    },
    "nutanix:index/VirtualMachineV2OwnershipInfoOwner:VirtualMachineV2OwnershipInfoOwner": {
      "properties": {
        "extId": {
          "type": "string",
          "description": "A globally unique identifier of an instance that is suitable for external consumption.\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "extId"
          ]
        }
      }
    },
    "nutanix:index/VirtualMachineV2ProtectionPolicyState:VirtualMachineV2ProtectionPolicyState": {
      "properties": {
        "policies": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FVirtualMachineV2ProtectionPolicyStatePolicy:VirtualMachineV2ProtectionPolicyStatePolicy"
          },
          "description": "Reference to the policy object in use.\n* `policy.ext_id`: (Optional) Reference to the policy object in use.\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "policies"
          ]
        }
      }
    },
    "nutanix:index/VirtualMachineV2ProtectionPolicyStatePolicy:VirtualMachineV2ProtectionPolicyStatePolicy": {
      "properties": {
        "extId": {
          "type": "string",
          "description": "A globally unique identifier of an instance that is suitable for external consumption.\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "extId"
          ]
        }
      }
    },
    "nutanix:index/VirtualMachineV2SerialPort:VirtualMachineV2SerialPort": {
      "properties": {
        "extId": {
          "type": "string",
          "description": "A globally unique identifier of an instance that is suitable for external consumption.\n"
        },
        "index": {
          "type": "integer",
          "description": ") Index of the serial port.\n"
        },
        "isConnected": {
          "type": "boolean",
          "description": "Indicates whether the serial port is connected or not.\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "extId",
            "index",
            "isConnected"
          ]
        }
      }
    },
    "nutanix:index/VirtualMachineV2Source:VirtualMachineV2Source": {
      "properties": {
        "entityType": {
          "type": "string",
          "description": "Reference to an entity from which the VM should be cloned or created. Values are:\n- VM_RECOVERY_POINT: Reference to the recovery point entity from which the VM should be cloned or created.\n- VM: Reference to an entity from which the VM should be cloned or created.\n"
        },
        "extId": {
          "type": "string",
          "description": "A globally unique identifier of an instance that is suitable for external consumption.\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "entityType",
            "extId"
          ]
        }
      }
    },
    "nutanix:index/VirtualMachineV2StorageConfig:VirtualMachineV2StorageConfig": {
      "properties": {
        "isFlashModeEnabled": {
          "type": "boolean",
          "description": "Indicates whether the virtual disk is pinned to the hot tier or not.\n"
        },
        "qosConfigs": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FVirtualMachineV2StorageConfigQosConfig:VirtualMachineV2StorageConfigQosConfig"
          },
          "description": "QoS parameters to be enforced.\n* `qos_config.throttled_iops`: (Optional) Throttled IOPS for the governed entities. The block size for the I/O is 32 kB.\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "isFlashModeEnabled",
            "qosConfigs"
          ]
        }
      }
    },
    "nutanix:index/VirtualMachineV2StorageConfigQosConfig:VirtualMachineV2StorageConfigQosConfig": {
      "properties": {
        "throttledIops": {
          "type": "integer"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "throttledIops"
          ]
        }
      }
    },
    "nutanix:index/VirtualMachineV2VtpmConfig:VirtualMachineV2VtpmConfig": {
      "properties": {
        "isVtpmEnabled": {
          "type": "boolean",
          "description": "Indicates whether the virtual trusted platform module is enabled for the Guest OS or not.\n"
        },
        "version": {
          "type": "string"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "isVtpmEnabled",
            "version"
          ]
        }
      }
    },
    "nutanix:index/VmCdromInsertEjectV2BackingInfo:VmCdromInsertEjectV2BackingInfo": {
      "properties": {
        "dataSources": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FVmCdromInsertEjectV2BackingInfoDataSource:VmCdromInsertEjectV2BackingInfoDataSource"
          }
        },
        "diskSizeBytes": {
          "type": "integer"
        },
        "storageConfigs": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FVmCdromInsertEjectV2BackingInfoStorageConfig:VmCdromInsertEjectV2BackingInfoStorageConfig"
          }
        },
        "storageContainers": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FVmCdromInsertEjectV2BackingInfoStorageContainer:VmCdromInsertEjectV2BackingInfoStorageContainer"
          }
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "storageContainers"
          ]
        }
      }
    },
    "nutanix:index/VmCdromInsertEjectV2BackingInfoDataSource:VmCdromInsertEjectV2BackingInfoDataSource": {
      "properties": {
        "references": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FVmCdromInsertEjectV2BackingInfoDataSourceReference:VmCdromInsertEjectV2BackingInfoDataSourceReference"
          }
        }
      },
      "type": "object"
    },
    "nutanix:index/VmCdromInsertEjectV2BackingInfoDataSourceReference:VmCdromInsertEjectV2BackingInfoDataSourceReference": {
      "properties": {
        "imageReferences": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FVmCdromInsertEjectV2BackingInfoDataSourceReferenceImageReference:VmCdromInsertEjectV2BackingInfoDataSourceReferenceImageReference"
          }
        },
        "vmDiskReferences": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FVmCdromInsertEjectV2BackingInfoDataSourceReferenceVmDiskReference:VmCdromInsertEjectV2BackingInfoDataSourceReferenceVmDiskReference"
          }
        }
      },
      "type": "object"
    },
    "nutanix:index/VmCdromInsertEjectV2BackingInfoDataSourceReferenceImageReference:VmCdromInsertEjectV2BackingInfoDataSourceReferenceImageReference": {
      "properties": {
        "imageExtId": {
          "type": "string"
        }
      },
      "type": "object"
    },
    "nutanix:index/VmCdromInsertEjectV2BackingInfoDataSourceReferenceVmDiskReference:VmCdromInsertEjectV2BackingInfoDataSourceReferenceVmDiskReference": {
      "properties": {
        "diskAddresses": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FVmCdromInsertEjectV2BackingInfoDataSourceReferenceVmDiskReferenceDiskAddress:VmCdromInsertEjectV2BackingInfoDataSourceReferenceVmDiskReferenceDiskAddress"
          }
        },
        "diskExtId": {
          "type": "string"
        },
        "vmReferences": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FVmCdromInsertEjectV2BackingInfoDataSourceReferenceVmDiskReferenceVmReference:VmCdromInsertEjectV2BackingInfoDataSourceReferenceVmDiskReferenceVmReference"
          }
        }
      },
      "type": "object"
    },
    "nutanix:index/VmCdromInsertEjectV2BackingInfoDataSourceReferenceVmDiskReferenceDiskAddress:VmCdromInsertEjectV2BackingInfoDataSourceReferenceVmDiskReferenceDiskAddress": {
      "properties": {
        "busType": {
          "type": "string"
        },
        "index": {
          "type": "integer"
        }
      },
      "type": "object"
    },
    "nutanix:index/VmCdromInsertEjectV2BackingInfoDataSourceReferenceVmDiskReferenceVmReference:VmCdromInsertEjectV2BackingInfoDataSourceReferenceVmDiskReferenceVmReference": {
      "properties": {
        "extId": {
          "type": "string"
        }
      },
      "type": "object"
    },
    "nutanix:index/VmCdromInsertEjectV2BackingInfoStorageConfig:VmCdromInsertEjectV2BackingInfoStorageConfig": {
      "properties": {
        "isFlashModeEnabled": {
          "type": "boolean"
        }
      },
      "type": "object"
    },
    "nutanix:index/VmCdromInsertEjectV2BackingInfoStorageContainer:VmCdromInsertEjectV2BackingInfoStorageContainer": {
      "properties": {
        "extId": {
          "type": "string"
        }
      },
      "type": "object"
    },
    "nutanix:index/VmCloneV2ApcConfig:VmCloneV2ApcConfig": {
      "properties": {
        "cpuModels": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FVmCloneV2ApcConfigCpuModel:VmCloneV2ApcConfigCpuModel"
          }
        },
        "isApcEnabled": {
          "type": "boolean"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "cpuModels",
            "isApcEnabled"
          ]
        }
      }
    },
    "nutanix:index/VmCloneV2ApcConfigCpuModel:VmCloneV2ApcConfigCpuModel": {
      "properties": {
        "extId": {
          "type": "string"
        },
        "name": {
          "type": "string"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "extId",
            "name"
          ]
        }
      }
    },
    "nutanix:index/VmCloneV2BootConfig:VmCloneV2BootConfig": {
      "properties": {
        "legacyBoots": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FVmCloneV2BootConfigLegacyBoot:VmCloneV2BootConfigLegacyBoot"
          }
        },
        "uefiBoots": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FVmCloneV2BootConfigUefiBoot:VmCloneV2BootConfigUefiBoot"
          }
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "legacyBoots",
            "uefiBoots"
          ]
        }
      }
    },
    "nutanix:index/VmCloneV2BootConfigLegacyBoot:VmCloneV2BootConfigLegacyBoot": {
      "properties": {
        "bootDevices": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FVmCloneV2BootConfigLegacyBootBootDevice:VmCloneV2BootConfigLegacyBootBootDevice"
          }
        },
        "bootOrders": {
          "type": "array",
          "items": {
            "type": "string"
          }
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "bootDevices",
            "bootOrders"
          ]
        }
      }
    },
    "nutanix:index/VmCloneV2BootConfigLegacyBootBootDevice:VmCloneV2BootConfigLegacyBootBootDevice": {
      "properties": {
        "bootDeviceDisks": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FVmCloneV2BootConfigLegacyBootBootDeviceBootDeviceDisk:VmCloneV2BootConfigLegacyBootBootDeviceBootDeviceDisk"
          }
        },
        "bootDeviceNics": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FVmCloneV2BootConfigLegacyBootBootDeviceBootDeviceNic:VmCloneV2BootConfigLegacyBootBootDeviceBootDeviceNic"
          }
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "bootDeviceDisks",
            "bootDeviceNics"
          ]
        }
      }
    },
    "nutanix:index/VmCloneV2BootConfigLegacyBootBootDeviceBootDeviceDisk:VmCloneV2BootConfigLegacyBootBootDeviceBootDeviceDisk": {
      "properties": {
        "diskAddresses": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FVmCloneV2BootConfigLegacyBootBootDeviceBootDeviceDiskDiskAddress:VmCloneV2BootConfigLegacyBootBootDeviceBootDeviceDiskDiskAddress"
          }
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "diskAddresses"
          ]
        }
      }
    },
    "nutanix:index/VmCloneV2BootConfigLegacyBootBootDeviceBootDeviceDiskDiskAddress:VmCloneV2BootConfigLegacyBootBootDeviceBootDeviceDiskDiskAddress": {
      "properties": {
        "busType": {
          "type": "string"
        },
        "index": {
          "type": "integer"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "busType",
            "index"
          ]
        }
      }
    },
    "nutanix:index/VmCloneV2BootConfigLegacyBootBootDeviceBootDeviceNic:VmCloneV2BootConfigLegacyBootBootDeviceBootDeviceNic": {
      "properties": {
        "macAddress": {
          "type": "string"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "macAddress"
          ]
        }
      }
    },
    "nutanix:index/VmCloneV2BootConfigUefiBoot:VmCloneV2BootConfigUefiBoot": {
      "properties": {
        "bootDevices": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FVmCloneV2BootConfigUefiBootBootDevice:VmCloneV2BootConfigUefiBootBootDevice"
          }
        },
        "bootOrders": {
          "type": "array",
          "items": {
            "type": "string"
          }
        },
        "isSecureBootEnabled": {
          "type": "boolean"
        },
        "nvramDevices": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FVmCloneV2BootConfigUefiBootNvramDevice:VmCloneV2BootConfigUefiBootNvramDevice"
          }
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "bootDevices",
            "bootOrders",
            "isSecureBootEnabled",
            "nvramDevices"
          ]
        }
      }
    },
    "nutanix:index/VmCloneV2BootConfigUefiBootBootDevice:VmCloneV2BootConfigUefiBootBootDevice": {
      "properties": {
        "bootDeviceDisks": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FVmCloneV2BootConfigUefiBootBootDeviceBootDeviceDisk:VmCloneV2BootConfigUefiBootBootDeviceBootDeviceDisk"
          }
        },
        "bootDeviceNics": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FVmCloneV2BootConfigUefiBootBootDeviceBootDeviceNic:VmCloneV2BootConfigUefiBootBootDeviceBootDeviceNic"
          }
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "bootDeviceDisks",
            "bootDeviceNics"
          ]
        }
      }
    },
    "nutanix:index/VmCloneV2BootConfigUefiBootBootDeviceBootDeviceDisk:VmCloneV2BootConfigUefiBootBootDeviceBootDeviceDisk": {
      "properties": {
        "diskAddresses": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FVmCloneV2BootConfigUefiBootBootDeviceBootDeviceDiskDiskAddress:VmCloneV2BootConfigUefiBootBootDeviceBootDeviceDiskDiskAddress"
          }
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "diskAddresses"
          ]
        }
      }
    },
    "nutanix:index/VmCloneV2BootConfigUefiBootBootDeviceBootDeviceDiskDiskAddress:VmCloneV2BootConfigUefiBootBootDeviceBootDeviceDiskDiskAddress": {
      "properties": {
        "busType": {
          "type": "string"
        },
        "index": {
          "type": "integer"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "busType",
            "index"
          ]
        }
      }
    },
    "nutanix:index/VmCloneV2BootConfigUefiBootBootDeviceBootDeviceNic:VmCloneV2BootConfigUefiBootBootDeviceBootDeviceNic": {
      "properties": {
        "macAddress": {
          "type": "string"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "macAddress"
          ]
        }
      }
    },
    "nutanix:index/VmCloneV2BootConfigUefiBootNvramDevice:VmCloneV2BootConfigUefiBootNvramDevice": {
      "properties": {
        "backingStorageInfos": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FVmCloneV2BootConfigUefiBootNvramDeviceBackingStorageInfo:VmCloneV2BootConfigUefiBootNvramDeviceBackingStorageInfo"
          }
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "backingStorageInfos"
          ]
        }
      }
    },
    "nutanix:index/VmCloneV2BootConfigUefiBootNvramDeviceBackingStorageInfo:VmCloneV2BootConfigUefiBootNvramDeviceBackingStorageInfo": {
      "properties": {
        "dataSources": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FVmCloneV2BootConfigUefiBootNvramDeviceBackingStorageInfoDataSource:VmCloneV2BootConfigUefiBootNvramDeviceBackingStorageInfoDataSource"
          }
        },
        "diskExtId": {
          "type": "string"
        },
        "diskSizeBytes": {
          "type": "integer"
        },
        "isMigrationInProgress": {
          "type": "boolean"
        },
        "storageConfigs": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FVmCloneV2BootConfigUefiBootNvramDeviceBackingStorageInfoStorageConfig:VmCloneV2BootConfigUefiBootNvramDeviceBackingStorageInfoStorageConfig"
          }
        },
        "storageContainers": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FVmCloneV2BootConfigUefiBootNvramDeviceBackingStorageInfoStorageContainer:VmCloneV2BootConfigUefiBootNvramDeviceBackingStorageInfoStorageContainer"
          }
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "dataSources",
            "diskExtId",
            "diskSizeBytes",
            "isMigrationInProgress",
            "storageConfigs",
            "storageContainers"
          ]
        }
      }
    },
    "nutanix:index/VmCloneV2BootConfigUefiBootNvramDeviceBackingStorageInfoDataSource:VmCloneV2BootConfigUefiBootNvramDeviceBackingStorageInfoDataSource": {
      "properties": {
        "references": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FVmCloneV2BootConfigUefiBootNvramDeviceBackingStorageInfoDataSourceReference:VmCloneV2BootConfigUefiBootNvramDeviceBackingStorageInfoDataSourceReference"
          }
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "references"
          ]
        }
      }
    },
    "nutanix:index/VmCloneV2BootConfigUefiBootNvramDeviceBackingStorageInfoDataSourceReference:VmCloneV2BootConfigUefiBootNvramDeviceBackingStorageInfoDataSourceReference": {
      "properties": {
        "imageReferences": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FVmCloneV2BootConfigUefiBootNvramDeviceBackingStorageInfoDataSourceReferenceImageReference:VmCloneV2BootConfigUefiBootNvramDeviceBackingStorageInfoDataSourceReferenceImageReference"
          }
        },
        "vmDiskReferences": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FVmCloneV2BootConfigUefiBootNvramDeviceBackingStorageInfoDataSourceReferenceVmDiskReference:VmCloneV2BootConfigUefiBootNvramDeviceBackingStorageInfoDataSourceReferenceVmDiskReference"
          }
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "imageReferences",
            "vmDiskReferences"
          ]
        }
      }
    },
    "nutanix:index/VmCloneV2BootConfigUefiBootNvramDeviceBackingStorageInfoDataSourceReferenceImageReference:VmCloneV2BootConfigUefiBootNvramDeviceBackingStorageInfoDataSourceReferenceImageReference": {
      "properties": {
        "imageExtId": {
          "type": "string"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "imageExtId"
          ]
        }
      }
    },
    "nutanix:index/VmCloneV2BootConfigUefiBootNvramDeviceBackingStorageInfoDataSourceReferenceVmDiskReference:VmCloneV2BootConfigUefiBootNvramDeviceBackingStorageInfoDataSourceReferenceVmDiskReference": {
      "properties": {
        "diskAddresses": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FVmCloneV2BootConfigUefiBootNvramDeviceBackingStorageInfoDataSourceReferenceVmDiskReferenceDiskAddress:VmCloneV2BootConfigUefiBootNvramDeviceBackingStorageInfoDataSourceReferenceVmDiskReferenceDiskAddress"
          }
        },
        "diskExtId": {
          "type": "string"
        },
        "vmReferences": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FVmCloneV2BootConfigUefiBootNvramDeviceBackingStorageInfoDataSourceReferenceVmDiskReferenceVmReference:VmCloneV2BootConfigUefiBootNvramDeviceBackingStorageInfoDataSourceReferenceVmDiskReferenceVmReference"
          }
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "diskAddresses",
            "diskExtId",
            "vmReferences"
          ]
        }
      }
    },
    "nutanix:index/VmCloneV2BootConfigUefiBootNvramDeviceBackingStorageInfoDataSourceReferenceVmDiskReferenceDiskAddress:VmCloneV2BootConfigUefiBootNvramDeviceBackingStorageInfoDataSourceReferenceVmDiskReferenceDiskAddress": {
      "properties": {
        "busType": {
          "type": "string"
        },
        "index": {
          "type": "integer"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "busType",
            "index"
          ]
        }
      }
    },
    "nutanix:index/VmCloneV2BootConfigUefiBootNvramDeviceBackingStorageInfoDataSourceReferenceVmDiskReferenceVmReference:VmCloneV2BootConfigUefiBootNvramDeviceBackingStorageInfoDataSourceReferenceVmDiskReferenceVmReference": {
      "properties": {
        "extId": {
          "type": "string"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "extId"
          ]
        }
      }
    },
    "nutanix:index/VmCloneV2BootConfigUefiBootNvramDeviceBackingStorageInfoStorageConfig:VmCloneV2BootConfigUefiBootNvramDeviceBackingStorageInfoStorageConfig": {
      "properties": {
        "isFlashModeEnabled": {
          "type": "boolean"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "isFlashModeEnabled"
          ]
        }
      }
    },
    "nutanix:index/VmCloneV2BootConfigUefiBootNvramDeviceBackingStorageInfoStorageContainer:VmCloneV2BootConfigUefiBootNvramDeviceBackingStorageInfoStorageContainer": {
      "properties": {
        "extId": {
          "type": "string"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "extId"
          ]
        }
      }
    },
    "nutanix:index/VmCloneV2Category:VmCloneV2Category": {
      "properties": {
        "extId": {
          "type": "string"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "extId"
          ]
        }
      }
    },
    "nutanix:index/VmCloneV2CdRom:VmCloneV2CdRom": {
      "properties": {
        "backingInfos": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FVmCloneV2CdRomBackingInfo:VmCloneV2CdRomBackingInfo"
          }
        },
        "diskAddresses": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FVmCloneV2CdRomDiskAddress:VmCloneV2CdRomDiskAddress"
          }
        },
        "extId": {
          "type": "string"
        },
        "isoType": {
          "type": "string"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "backingInfos",
            "diskAddresses",
            "extId",
            "isoType"
          ]
        }
      }
    },
    "nutanix:index/VmCloneV2CdRomBackingInfo:VmCloneV2CdRomBackingInfo": {
      "properties": {
        "dataSources": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FVmCloneV2CdRomBackingInfoDataSource:VmCloneV2CdRomBackingInfoDataSource"
          }
        },
        "diskExtId": {
          "type": "string"
        },
        "diskSizeBytes": {
          "type": "integer"
        },
        "isMigrationInProgress": {
          "type": "boolean"
        },
        "storageConfigs": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FVmCloneV2CdRomBackingInfoStorageConfig:VmCloneV2CdRomBackingInfoStorageConfig"
          }
        },
        "storageContainers": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FVmCloneV2CdRomBackingInfoStorageContainer:VmCloneV2CdRomBackingInfoStorageContainer"
          }
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "dataSources",
            "diskExtId",
            "diskSizeBytes",
            "isMigrationInProgress",
            "storageConfigs",
            "storageContainers"
          ]
        }
      }
    },
    "nutanix:index/VmCloneV2CdRomBackingInfoDataSource:VmCloneV2CdRomBackingInfoDataSource": {
      "properties": {
        "references": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FVmCloneV2CdRomBackingInfoDataSourceReference:VmCloneV2CdRomBackingInfoDataSourceReference"
          }
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "references"
          ]
        }
      }
    },
    "nutanix:index/VmCloneV2CdRomBackingInfoDataSourceReference:VmCloneV2CdRomBackingInfoDataSourceReference": {
      "properties": {
        "imageReferences": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FVmCloneV2CdRomBackingInfoDataSourceReferenceImageReference:VmCloneV2CdRomBackingInfoDataSourceReferenceImageReference"
          }
        },
        "vmDiskReferences": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FVmCloneV2CdRomBackingInfoDataSourceReferenceVmDiskReference:VmCloneV2CdRomBackingInfoDataSourceReferenceVmDiskReference"
          }
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "imageReferences",
            "vmDiskReferences"
          ]
        }
      }
    },
    "nutanix:index/VmCloneV2CdRomBackingInfoDataSourceReferenceImageReference:VmCloneV2CdRomBackingInfoDataSourceReferenceImageReference": {
      "properties": {
        "imageExtId": {
          "type": "string"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "imageExtId"
          ]
        }
      }
    },
    "nutanix:index/VmCloneV2CdRomBackingInfoDataSourceReferenceVmDiskReference:VmCloneV2CdRomBackingInfoDataSourceReferenceVmDiskReference": {
      "properties": {
        "diskAddresses": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FVmCloneV2CdRomBackingInfoDataSourceReferenceVmDiskReferenceDiskAddress:VmCloneV2CdRomBackingInfoDataSourceReferenceVmDiskReferenceDiskAddress"
          }
        },
        "diskExtId": {
          "type": "string"
        },
        "vmReferences": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FVmCloneV2CdRomBackingInfoDataSourceReferenceVmDiskReferenceVmReference:VmCloneV2CdRomBackingInfoDataSourceReferenceVmDiskReferenceVmReference"
          }
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "diskAddresses",
            "diskExtId",
            "vmReferences"
          ]
        }
      }
    },
    "nutanix:index/VmCloneV2CdRomBackingInfoDataSourceReferenceVmDiskReferenceDiskAddress:VmCloneV2CdRomBackingInfoDataSourceReferenceVmDiskReferenceDiskAddress": {
      "properties": {
        "busType": {
          "type": "string"
        },
        "index": {
          "type": "integer"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "busType",
            "index"
          ]
        }
      }
    },
    "nutanix:index/VmCloneV2CdRomBackingInfoDataSourceReferenceVmDiskReferenceVmReference:VmCloneV2CdRomBackingInfoDataSourceReferenceVmDiskReferenceVmReference": {
      "properties": {
        "extId": {
          "type": "string"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "extId"
          ]
        }
      }
    },
    "nutanix:index/VmCloneV2CdRomBackingInfoStorageConfig:VmCloneV2CdRomBackingInfoStorageConfig": {
      "properties": {
        "isFlashModeEnabled": {
          "type": "boolean"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "isFlashModeEnabled"
          ]
        }
      }
    },
    "nutanix:index/VmCloneV2CdRomBackingInfoStorageContainer:VmCloneV2CdRomBackingInfoStorageContainer": {
      "properties": {
        "extId": {
          "type": "string"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "extId"
          ]
        }
      }
    },
    "nutanix:index/VmCloneV2CdRomDiskAddress:VmCloneV2CdRomDiskAddress": {
      "properties": {
        "busType": {
          "type": "string"
        },
        "index": {
          "type": "integer"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "busType",
            "index"
          ]
        }
      }
    },
    "nutanix:index/VmCloneV2Cluster:VmCloneV2Cluster": {
      "properties": {
        "extId": {
          "type": "string"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "extId"
          ]
        }
      }
    },
    "nutanix:index/VmCloneV2Disk:VmCloneV2Disk": {
      "properties": {
        "backingInfos": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FVmCloneV2DiskBackingInfo:VmCloneV2DiskBackingInfo"
          }
        },
        "diskAddresses": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FVmCloneV2DiskDiskAddress:VmCloneV2DiskDiskAddress"
          }
        },
        "extId": {
          "type": "string"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "backingInfos",
            "diskAddresses",
            "extId"
          ]
        }
      }
    },
    "nutanix:index/VmCloneV2DiskBackingInfo:VmCloneV2DiskBackingInfo": {
      "properties": {
        "adfsVolumeGroupReferences": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FVmCloneV2DiskBackingInfoAdfsVolumeGroupReference:VmCloneV2DiskBackingInfoAdfsVolumeGroupReference"
          }
        },
        "vmDisks": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FVmCloneV2DiskBackingInfoVmDisk:VmCloneV2DiskBackingInfoVmDisk"
          }
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "adfsVolumeGroupReferences",
            "vmDisks"
          ]
        }
      }
    },
    "nutanix:index/VmCloneV2DiskBackingInfoAdfsVolumeGroupReference:VmCloneV2DiskBackingInfoAdfsVolumeGroupReference": {
      "properties": {
        "volumeGroupExtId": {
          "type": "string"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "volumeGroupExtId"
          ]
        }
      }
    },
    "nutanix:index/VmCloneV2DiskBackingInfoVmDisk:VmCloneV2DiskBackingInfoVmDisk": {
      "properties": {
        "dataSources": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FVmCloneV2DiskBackingInfoVmDiskDataSource:VmCloneV2DiskBackingInfoVmDiskDataSource"
          }
        },
        "diskExtId": {
          "type": "string"
        },
        "diskSizeBytes": {
          "type": "integer"
        },
        "isMigrationInProgress": {
          "type": "boolean"
        },
        "storageConfigs": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FVmCloneV2DiskBackingInfoVmDiskStorageConfig:VmCloneV2DiskBackingInfoVmDiskStorageConfig"
          }
        },
        "storageContainers": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FVmCloneV2DiskBackingInfoVmDiskStorageContainer:VmCloneV2DiskBackingInfoVmDiskStorageContainer"
          }
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "dataSources",
            "diskExtId",
            "diskSizeBytes",
            "isMigrationInProgress",
            "storageConfigs",
            "storageContainers"
          ]
        }
      }
    },
    "nutanix:index/VmCloneV2DiskBackingInfoVmDiskDataSource:VmCloneV2DiskBackingInfoVmDiskDataSource": {
      "properties": {
        "references": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FVmCloneV2DiskBackingInfoVmDiskDataSourceReference:VmCloneV2DiskBackingInfoVmDiskDataSourceReference"
          }
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "references"
          ]
        }
      }
    },
    "nutanix:index/VmCloneV2DiskBackingInfoVmDiskDataSourceReference:VmCloneV2DiskBackingInfoVmDiskDataSourceReference": {
      "properties": {
        "imageReferences": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FVmCloneV2DiskBackingInfoVmDiskDataSourceReferenceImageReference:VmCloneV2DiskBackingInfoVmDiskDataSourceReferenceImageReference"
          }
        },
        "vmDiskReferences": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FVmCloneV2DiskBackingInfoVmDiskDataSourceReferenceVmDiskReference:VmCloneV2DiskBackingInfoVmDiskDataSourceReferenceVmDiskReference"
          }
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "imageReferences",
            "vmDiskReferences"
          ]
        }
      }
    },
    "nutanix:index/VmCloneV2DiskBackingInfoVmDiskDataSourceReferenceImageReference:VmCloneV2DiskBackingInfoVmDiskDataSourceReferenceImageReference": {
      "properties": {
        "imageExtId": {
          "type": "string"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "imageExtId"
          ]
        }
      }
    },
    "nutanix:index/VmCloneV2DiskBackingInfoVmDiskDataSourceReferenceVmDiskReference:VmCloneV2DiskBackingInfoVmDiskDataSourceReferenceVmDiskReference": {
      "properties": {
        "diskAddresses": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FVmCloneV2DiskBackingInfoVmDiskDataSourceReferenceVmDiskReferenceDiskAddress:VmCloneV2DiskBackingInfoVmDiskDataSourceReferenceVmDiskReferenceDiskAddress"
          }
        },
        "diskExtId": {
          "type": "string"
        },
        "vmReferences": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FVmCloneV2DiskBackingInfoVmDiskDataSourceReferenceVmDiskReferenceVmReference:VmCloneV2DiskBackingInfoVmDiskDataSourceReferenceVmDiskReferenceVmReference"
          }
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "diskAddresses",
            "diskExtId",
            "vmReferences"
          ]
        }
      }
    },
    "nutanix:index/VmCloneV2DiskBackingInfoVmDiskDataSourceReferenceVmDiskReferenceDiskAddress:VmCloneV2DiskBackingInfoVmDiskDataSourceReferenceVmDiskReferenceDiskAddress": {
      "properties": {
        "busType": {
          "type": "string"
        },
        "index": {
          "type": "integer"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "busType",
            "index"
          ]
        }
      }
    },
    "nutanix:index/VmCloneV2DiskBackingInfoVmDiskDataSourceReferenceVmDiskReferenceVmReference:VmCloneV2DiskBackingInfoVmDiskDataSourceReferenceVmDiskReferenceVmReference": {
      "properties": {
        "extId": {
          "type": "string"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "extId"
          ]
        }
      }
    },
    "nutanix:index/VmCloneV2DiskBackingInfoVmDiskStorageConfig:VmCloneV2DiskBackingInfoVmDiskStorageConfig": {
      "properties": {
        "isFlashModeEnabled": {
          "type": "boolean"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "isFlashModeEnabled"
          ]
        }
      }
    },
    "nutanix:index/VmCloneV2DiskBackingInfoVmDiskStorageContainer:VmCloneV2DiskBackingInfoVmDiskStorageContainer": {
      "properties": {
        "extId": {
          "type": "string"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "extId"
          ]
        }
      }
    },
    "nutanix:index/VmCloneV2DiskDiskAddress:VmCloneV2DiskDiskAddress": {
      "properties": {
        "busType": {
          "type": "string"
        },
        "index": {
          "type": "integer"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "busType",
            "index"
          ]
        }
      }
    },
    "nutanix:index/VmCloneV2Gpus:VmCloneV2Gpus": {
      "properties": {
        "deviceId": {
          "type": "integer"
        },
        "extId": {
          "type": "string"
        },
        "fraction": {
          "type": "integer"
        },
        "frameBufferSizeBytes": {
          "type": "integer"
        },
        "guestDriverVersion": {
          "type": "string"
        },
        "mode": {
          "type": "string"
        },
        "name": {
          "type": "string"
        },
        "numVirtualDisplayHeads": {
          "type": "integer"
        },
        "pciAddresses": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FVmCloneV2GpusPciAddress:VmCloneV2GpusPciAddress"
          }
        },
        "vendor": {
          "type": "string"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "deviceId",
            "extId",
            "fraction",
            "frameBufferSizeBytes",
            "guestDriverVersion",
            "mode",
            "name",
            "numVirtualDisplayHeads",
            "pciAddresses",
            "vendor"
          ]
        }
      }
    },
    "nutanix:index/VmCloneV2GpusPciAddress:VmCloneV2GpusPciAddress": {
      "properties": {
        "bus": {
          "type": "integer"
        },
        "device": {
          "type": "integer"
        },
        "func": {
          "type": "integer"
        },
        "segment": {
          "type": "integer"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "bus",
            "device",
            "func",
            "segment"
          ]
        }
      }
    },
    "nutanix:index/VmCloneV2GuestCustomization:VmCloneV2GuestCustomization": {
      "properties": {
        "configs": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FVmCloneV2GuestCustomizationConfig:VmCloneV2GuestCustomizationConfig"
          }
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "configs"
          ]
        }
      }
    },
    "nutanix:index/VmCloneV2GuestCustomizationConfig:VmCloneV2GuestCustomizationConfig": {
      "properties": {
        "cloudInits": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FVmCloneV2GuestCustomizationConfigCloudInit:VmCloneV2GuestCustomizationConfigCloudInit"
          }
        },
        "syspreps": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FVmCloneV2GuestCustomizationConfigSysprep:VmCloneV2GuestCustomizationConfigSysprep"
          }
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "cloudInits",
            "syspreps"
          ]
        }
      }
    },
    "nutanix:index/VmCloneV2GuestCustomizationConfigCloudInit:VmCloneV2GuestCustomizationConfigCloudInit": {
      "properties": {
        "cloudInitScripts": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FVmCloneV2GuestCustomizationConfigCloudInitCloudInitScript:VmCloneV2GuestCustomizationConfigCloudInitCloudInitScript"
          }
        },
        "datasourceType": {
          "type": "string"
        },
        "metadata": {
          "type": "string"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "cloudInitScripts",
            "metadata"
          ]
        }
      }
    },
    "nutanix:index/VmCloneV2GuestCustomizationConfigCloudInitCloudInitScript:VmCloneV2GuestCustomizationConfigCloudInitCloudInitScript": {
      "properties": {
        "customKeys": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FVmCloneV2GuestCustomizationConfigCloudInitCloudInitScriptCustomKey:VmCloneV2GuestCustomizationConfigCloudInitCloudInitScriptCustomKey"
          }
        },
        "userDatas": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FVmCloneV2GuestCustomizationConfigCloudInitCloudInitScriptUserData:VmCloneV2GuestCustomizationConfigCloudInitCloudInitScriptUserData"
          }
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "customKeys",
            "userDatas"
          ]
        }
      }
    },
    "nutanix:index/VmCloneV2GuestCustomizationConfigCloudInitCloudInitScriptCustomKey:VmCloneV2GuestCustomizationConfigCloudInitCloudInitScriptCustomKey": {
      "properties": {
        "keyValuePairs": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FVmCloneV2GuestCustomizationConfigCloudInitCloudInitScriptCustomKeyKeyValuePair:VmCloneV2GuestCustomizationConfigCloudInitCloudInitScriptCustomKeyKeyValuePair"
          }
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "keyValuePairs"
          ]
        }
      }
    },
    "nutanix:index/VmCloneV2GuestCustomizationConfigCloudInitCloudInitScriptCustomKeyKeyValuePair:VmCloneV2GuestCustomizationConfigCloudInitCloudInitScriptCustomKeyKeyValuePair": {
      "properties": {
        "name": {
          "type": "string"
        },
        "value": {
          "type": "string"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "name",
            "value"
          ]
        }
      }
    },
    "nutanix:index/VmCloneV2GuestCustomizationConfigCloudInitCloudInitScriptUserData:VmCloneV2GuestCustomizationConfigCloudInitCloudInitScriptUserData": {
      "properties": {
        "value": {
          "type": "string"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "value"
          ]
        }
      }
    },
    "nutanix:index/VmCloneV2GuestCustomizationConfigSysprep:VmCloneV2GuestCustomizationConfigSysprep": {
      "properties": {
        "installType": {
          "type": "string"
        },
        "sysprepScripts": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FVmCloneV2GuestCustomizationConfigSysprepSysprepScript:VmCloneV2GuestCustomizationConfigSysprepSysprepScript"
          }
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "installType",
            "sysprepScripts"
          ]
        }
      }
    },
    "nutanix:index/VmCloneV2GuestCustomizationConfigSysprepSysprepScript:VmCloneV2GuestCustomizationConfigSysprepSysprepScript": {
      "properties": {
        "customKeyValues": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FVmCloneV2GuestCustomizationConfigSysprepSysprepScriptCustomKeyValue:VmCloneV2GuestCustomizationConfigSysprepSysprepScriptCustomKeyValue"
          }
        },
        "unattendXmls": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FVmCloneV2GuestCustomizationConfigSysprepSysprepScriptUnattendXml:VmCloneV2GuestCustomizationConfigSysprepSysprepScriptUnattendXml"
          }
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "customKeyValues",
            "unattendXmls"
          ]
        }
      }
    },
    "nutanix:index/VmCloneV2GuestCustomizationConfigSysprepSysprepScriptCustomKeyValue:VmCloneV2GuestCustomizationConfigSysprepSysprepScriptCustomKeyValue": {
      "properties": {
        "keyValuePairs": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FVmCloneV2GuestCustomizationConfigSysprepSysprepScriptCustomKeyValueKeyValuePair:VmCloneV2GuestCustomizationConfigSysprepSysprepScriptCustomKeyValueKeyValuePair"
          }
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "keyValuePairs"
          ]
        }
      }
    },
    "nutanix:index/VmCloneV2GuestCustomizationConfigSysprepSysprepScriptCustomKeyValueKeyValuePair:VmCloneV2GuestCustomizationConfigSysprepSysprepScriptCustomKeyValueKeyValuePair": {
      "properties": {
        "name": {
          "type": "string"
        },
        "value": {
          "type": "string"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "name",
            "value"
          ]
        }
      }
    },
    "nutanix:index/VmCloneV2GuestCustomizationConfigSysprepSysprepScriptUnattendXml:VmCloneV2GuestCustomizationConfigSysprepSysprepScriptUnattendXml": {
      "properties": {
        "value": {
          "type": "string"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "value"
          ]
        }
      }
    },
    "nutanix:index/VmCloneV2GuestTool:VmCloneV2GuestTool": {
      "properties": {
        "availableVersion": {
          "type": "string"
        },
        "capabilities": {
          "type": "array",
          "items": {
            "type": "string"
          }
        },
        "guestOsVersion": {
          "type": "string"
        },
        "isEnabled": {
          "type": "boolean"
        },
        "isInstalled": {
          "type": "boolean"
        },
        "isIsoInserted": {
          "type": "boolean"
        },
        "isReachable": {
          "type": "boolean"
        },
        "isVmMobilityDriversInstalled": {
          "type": "boolean"
        },
        "isVssSnapshotCapable": {
          "type": "boolean"
        },
        "version": {
          "type": "string"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "availableVersion",
            "capabilities",
            "guestOsVersion",
            "isEnabled",
            "isInstalled",
            "isIsoInserted",
            "isReachable",
            "isVmMobilityDriversInstalled",
            "isVssSnapshotCapable",
            "version"
          ]
        }
      }
    },
    "nutanix:index/VmCloneV2Host:VmCloneV2Host": {
      "properties": {
        "extId": {
          "type": "string"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "extId"
          ]
        }
      }
    },
    "nutanix:index/VmCloneV2Link:VmCloneV2Link": {
      "properties": {
        "href": {
          "type": "string"
        },
        "rel": {
          "type": "string"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "href",
            "rel"
          ]
        }
      }
    },
    "nutanix:index/VmCloneV2Nic:VmCloneV2Nic": {
      "properties": {
        "backingInfos": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FVmCloneV2NicBackingInfo:VmCloneV2NicBackingInfo"
          }
        },
        "extId": {
          "type": "string"
        },
        "networkInfos": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FVmCloneV2NicNetworkInfo:VmCloneV2NicNetworkInfo"
          }
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "backingInfos",
            "extId",
            "networkInfos"
          ]
        }
      }
    },
    "nutanix:index/VmCloneV2NicBackingInfo:VmCloneV2NicBackingInfo": {
      "properties": {
        "isConnected": {
          "type": "boolean"
        },
        "macAddress": {
          "type": "string"
        },
        "model": {
          "type": "string"
        },
        "numQueues": {
          "type": "integer"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "isConnected",
            "macAddress",
            "model"
          ]
        }
      }
    },
    "nutanix:index/VmCloneV2NicNetworkInfo:VmCloneV2NicNetworkInfo": {
      "properties": {
        "ipv4Configs": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FVmCloneV2NicNetworkInfoIpv4Config:VmCloneV2NicNetworkInfoIpv4Config"
          }
        },
        "networkFunctionChains": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FVmCloneV2NicNetworkInfoNetworkFunctionChain:VmCloneV2NicNetworkInfoNetworkFunctionChain"
          }
        },
        "networkFunctionNicType": {
          "type": "string"
        },
        "nicType": {
          "type": "string"
        },
        "shouldAllowUnknownMacs": {
          "type": "boolean"
        },
        "subnets": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FVmCloneV2NicNetworkInfoSubnet:VmCloneV2NicNetworkInfoSubnet"
          }
        },
        "trunkedVlans": {
          "type": "array",
          "items": {
            "type": "integer"
          }
        },
        "vlanMode": {
          "type": "string"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "ipv4Configs",
            "networkFunctionChains",
            "networkFunctionNicType",
            "nicType",
            "shouldAllowUnknownMacs",
            "subnets",
            "trunkedVlans",
            "vlanMode"
          ]
        }
      }
    },
    "nutanix:index/VmCloneV2NicNetworkInfoIpv4Config:VmCloneV2NicNetworkInfoIpv4Config": {
      "properties": {
        "ipAddresses": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FVmCloneV2NicNetworkInfoIpv4ConfigIpAddress:VmCloneV2NicNetworkInfoIpv4ConfigIpAddress"
          }
        },
        "secondaryIpAddressLists": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FVmCloneV2NicNetworkInfoIpv4ConfigSecondaryIpAddressList:VmCloneV2NicNetworkInfoIpv4ConfigSecondaryIpAddressList"
          }
        },
        "shouldAssignIp": {
          "type": "boolean"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "ipAddresses",
            "secondaryIpAddressLists",
            "shouldAssignIp"
          ]
        }
      }
    },
    "nutanix:index/VmCloneV2NicNetworkInfoIpv4ConfigIpAddress:VmCloneV2NicNetworkInfoIpv4ConfigIpAddress": {
      "properties": {
        "prefixLength": {
          "type": "integer"
        },
        "value": {
          "type": "string"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "prefixLength",
            "value"
          ]
        }
      }
    },
    "nutanix:index/VmCloneV2NicNetworkInfoIpv4ConfigSecondaryIpAddressList:VmCloneV2NicNetworkInfoIpv4ConfigSecondaryIpAddressList": {
      "properties": {
        "prefixLength": {
          "type": "integer"
        },
        "value": {
          "type": "string"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "prefixLength",
            "value"
          ]
        }
      }
    },
    "nutanix:index/VmCloneV2NicNetworkInfoNetworkFunctionChain:VmCloneV2NicNetworkInfoNetworkFunctionChain": {
      "properties": {
        "extId": {
          "type": "string"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "extId"
          ]
        }
      }
    },
    "nutanix:index/VmCloneV2NicNetworkInfoSubnet:VmCloneV2NicNetworkInfoSubnet": {
      "properties": {
        "extId": {
          "type": "string"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "extId"
          ]
        }
      }
    },
    "nutanix:index/VmCloneV2OwnershipInfo:VmCloneV2OwnershipInfo": {
      "properties": {
        "owners": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FVmCloneV2OwnershipInfoOwner:VmCloneV2OwnershipInfoOwner"
          }
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "owners"
          ]
        }
      }
    },
    "nutanix:index/VmCloneV2OwnershipInfoOwner:VmCloneV2OwnershipInfoOwner": {
      "properties": {
        "extId": {
          "type": "string"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "extId"
          ]
        }
      }
    },
    "nutanix:index/VmCloneV2ProtectionPolicyState:VmCloneV2ProtectionPolicyState": {
      "properties": {
        "policies": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FVmCloneV2ProtectionPolicyStatePolicy:VmCloneV2ProtectionPolicyStatePolicy"
          }
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "policies"
          ]
        }
      }
    },
    "nutanix:index/VmCloneV2ProtectionPolicyStatePolicy:VmCloneV2ProtectionPolicyStatePolicy": {
      "properties": {
        "extId": {
          "type": "string"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "extId"
          ]
        }
      }
    },
    "nutanix:index/VmCloneV2SerialPort:VmCloneV2SerialPort": {
      "properties": {
        "extId": {
          "type": "string"
        },
        "index": {
          "type": "integer"
        },
        "isConnected": {
          "type": "boolean"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "extId",
            "index",
            "isConnected"
          ]
        }
      }
    },
    "nutanix:index/VmCloneV2Source:VmCloneV2Source": {
      "properties": {
        "entityType": {
          "type": "string"
        },
        "extId": {
          "type": "string"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "entityType",
            "extId"
          ]
        }
      }
    },
    "nutanix:index/VmCloneV2StorageConfig:VmCloneV2StorageConfig": {
      "properties": {
        "isFlashModeEnabled": {
          "type": "boolean"
        },
        "qosConfigs": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FVmCloneV2StorageConfigQosConfig:VmCloneV2StorageConfigQosConfig"
          }
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "isFlashModeEnabled",
            "qosConfigs"
          ]
        }
      }
    },
    "nutanix:index/VmCloneV2StorageConfigQosConfig:VmCloneV2StorageConfigQosConfig": {
      "properties": {
        "throttledIops": {
          "type": "integer"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "throttledIops"
          ]
        }
      }
    },
    "nutanix:index/VmCloneV2VtpmConfig:VmCloneV2VtpmConfig": {
      "properties": {
        "isVtpmEnabled": {
          "type": "boolean"
        },
        "version": {
          "type": "string"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "isVtpmEnabled",
            "version"
          ]
        }
      }
    },
    "nutanix:index/VmGcUpdateV2Config:VmGcUpdateV2Config": {
      "properties": {
        "cloudInits": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FVmGcUpdateV2ConfigCloudInit:VmGcUpdateV2ConfigCloudInit"
          }
        },
        "syspreps": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FVmGcUpdateV2ConfigSysprep:VmGcUpdateV2ConfigSysprep"
          }
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "cloudInits",
            "syspreps"
          ]
        }
      }
    },
    "nutanix:index/VmGcUpdateV2ConfigCloudInit:VmGcUpdateV2ConfigCloudInit": {
      "properties": {
        "cloudInitScripts": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FVmGcUpdateV2ConfigCloudInitCloudInitScript:VmGcUpdateV2ConfigCloudInitCloudInitScript"
          }
        },
        "datasourceType": {
          "type": "string"
        },
        "metadata": {
          "type": "string"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "cloudInitScripts",
            "metadata"
          ]
        }
      }
    },
    "nutanix:index/VmGcUpdateV2ConfigCloudInitCloudInitScript:VmGcUpdateV2ConfigCloudInitCloudInitScript": {
      "properties": {
        "customKeys": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FVmGcUpdateV2ConfigCloudInitCloudInitScriptCustomKey:VmGcUpdateV2ConfigCloudInitCloudInitScriptCustomKey"
          }
        },
        "userDatas": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FVmGcUpdateV2ConfigCloudInitCloudInitScriptUserData:VmGcUpdateV2ConfigCloudInitCloudInitScriptUserData"
          }
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "customKeys",
            "userDatas"
          ]
        }
      }
    },
    "nutanix:index/VmGcUpdateV2ConfigCloudInitCloudInitScriptCustomKey:VmGcUpdateV2ConfigCloudInitCloudInitScriptCustomKey": {
      "properties": {
        "keyValuePairs": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FVmGcUpdateV2ConfigCloudInitCloudInitScriptCustomKeyKeyValuePair:VmGcUpdateV2ConfigCloudInitCloudInitScriptCustomKeyKeyValuePair"
          }
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "keyValuePairs"
          ]
        }
      }
    },
    "nutanix:index/VmGcUpdateV2ConfigCloudInitCloudInitScriptCustomKeyKeyValuePair:VmGcUpdateV2ConfigCloudInitCloudInitScriptCustomKeyKeyValuePair": {
      "properties": {
        "name": {
          "type": "string"
        },
        "value": {
          "type": "string"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "name",
            "value"
          ]
        }
      }
    },
    "nutanix:index/VmGcUpdateV2ConfigCloudInitCloudInitScriptUserData:VmGcUpdateV2ConfigCloudInitCloudInitScriptUserData": {
      "properties": {
        "value": {
          "type": "string"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "value"
          ]
        }
      }
    },
    "nutanix:index/VmGcUpdateV2ConfigSysprep:VmGcUpdateV2ConfigSysprep": {
      "properties": {
        "installType": {
          "type": "string"
        },
        "sysprepScripts": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FVmGcUpdateV2ConfigSysprepSysprepScript:VmGcUpdateV2ConfigSysprepSysprepScript"
          }
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "installType",
            "sysprepScripts"
          ]
        }
      }
    },
    "nutanix:index/VmGcUpdateV2ConfigSysprepSysprepScript:VmGcUpdateV2ConfigSysprepSysprepScript": {
      "properties": {
        "customKeyValues": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FVmGcUpdateV2ConfigSysprepSysprepScriptCustomKeyValue:VmGcUpdateV2ConfigSysprepSysprepScriptCustomKeyValue"
          }
        },
        "unattendXmls": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FVmGcUpdateV2ConfigSysprepSysprepScriptUnattendXml:VmGcUpdateV2ConfigSysprepSysprepScriptUnattendXml"
          }
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "customKeyValues",
            "unattendXmls"
          ]
        }
      }
    },
    "nutanix:index/VmGcUpdateV2ConfigSysprepSysprepScriptCustomKeyValue:VmGcUpdateV2ConfigSysprepSysprepScriptCustomKeyValue": {
      "properties": {
        "keyValuePairs": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FVmGcUpdateV2ConfigSysprepSysprepScriptCustomKeyValueKeyValuePair:VmGcUpdateV2ConfigSysprepSysprepScriptCustomKeyValueKeyValuePair"
          }
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "keyValuePairs"
          ]
        }
      }
    },
    "nutanix:index/VmGcUpdateV2ConfigSysprepSysprepScriptCustomKeyValueKeyValuePair:VmGcUpdateV2ConfigSysprepSysprepScriptCustomKeyValueKeyValuePair": {
      "properties": {
        "name": {
          "type": "string"
        },
        "value": {
          "type": "string"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "name",
            "value"
          ]
        }
      }
    },
    "nutanix:index/VmGcUpdateV2ConfigSysprepSysprepScriptUnattendXml:VmGcUpdateV2ConfigSysprepSysprepScriptUnattendXml": {
      "properties": {
        "value": {
          "type": "string"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "value"
          ]
        }
      }
    },
    "nutanix:index/VmNetworkDeviceAssignIpV2IpAddress:VmNetworkDeviceAssignIpV2IpAddress": {
      "properties": {
        "prefixLength": {
          "type": "integer"
        },
        "value": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "value"
      ]
    },
    "nutanix:index/VmNetworkDeviceMigrateV2IpAddress:VmNetworkDeviceMigrateV2IpAddress": {
      "properties": {
        "prefixLength": {
          "type": "integer"
        },
        "value": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "value"
      ]
    },
    "nutanix:index/VmNetworkDeviceMigrateV2Subnet:VmNetworkDeviceMigrateV2Subnet": {
      "properties": {
        "extId": {
          "type": "string"
        }
      },
      "type": "object"
    },
    "nutanix:index/VmShutdownActionV2GuestPowerStateTransitionConfig:VmShutdownActionV2GuestPowerStateTransitionConfig": {
      "properties": {
        "shouldEnableScriptExec": {
          "type": "boolean",
          "description": "Indicates whether to run the set script before the VM shutdowns/restarts.\n"
        },
        "shouldFailOnScriptFailure": {
          "type": "boolean",
          "description": "Indicates whether to abort VM shutdown/restart if the script fails.\n\n\nSee detailed information in [Nutanix VMs Power Action Shutdown V4](https://developers.nutanix.com/api-reference?namespace=vmm&version=v4.0#tag/Vm/operation/shutdownVm).\nSee detailed information in [Nutanix VMs Power Action Shutdown Guest Vm V4](https://developers.nutanix.com/api-reference?namespace=vmm&version=v4.0#tag/Vm/operation/shutdownGuestVm).\nSee detailed information in [Nutanix VMs Power Action Reboot V4](https://developers.nutanix.com/api-reference?namespace=vmm&version=v4.0#tag/Vm/operation/rebootVm).\nSee detailed information in [Nutanix VMs Power Action Reboot Guest Vm V4](https://developers.nutanix.com/api-reference?namespace=vmm&version=v4.0#tag/Vm/operation/rebootGuestVm).\n"
        }
      },
      "type": "object"
    },
    "nutanix:index/VolumeGroupDiskV2DiskDataSourceReference:VolumeGroupDiskV2DiskDataSourceReference": {
      "properties": {
        "entityType": {
          "type": "string",
          "description": "- The Entity Type of the Data Source Reference. valid values are:\n- STORAGE_CONTAINER\n- VM_DISK\n- VOLUME_DISK\n- DISK_RECOVERY_POINT\n"
        },
        "extId": {
          "type": "string",
          "description": "- The external identifier of the Data Source Reference.\n"
        },
        "name": {
          "type": "string",
          "description": "- The name of the Data Source Reference.bled for the Volume Group.\n"
        },
        "uris": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "- The uri list of the Data Source Reference.\n"
        }
      },
      "type": "object",
      "required": [
        "extId"
      ],
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "extId",
            "uris"
          ]
        }
      }
    },
    "nutanix:index/VolumeGroupDiskV2DiskStorageFeature:VolumeGroupDiskV2DiskStorageFeature": {
      "properties": {
        "flashModes": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FVolumeGroupDiskV2DiskStorageFeatureFlashMode:VolumeGroupDiskV2DiskStorageFeatureFlashMode"
          },
          "description": "- this field will avoid down migration of data from the hot tier unless the overrides field is specified for the virtual disks.\n"
        }
      },
      "type": "object"
    },
    "nutanix:index/VolumeGroupDiskV2DiskStorageFeatureFlashMode:VolumeGroupDiskV2DiskStorageFeatureFlashMode": {
      "properties": {
        "isEnabled": {
          "type": "boolean",
          "description": "- Indicates whether the flash mode is enabled for the Volume Group Disk.\n\nSee detailed information in [Nutanix Create Volume Disk V4](https://developers.nutanix.com/api-reference?namespace=volumes&version=v4.0#tag/VolumeGroups/operation/createVolumeDisk).\n"
        }
      },
      "type": "object"
    },
    "nutanix:index/VolumeGroupIscsiClientV2IscsiInitiatorNetworkId:VolumeGroupIscsiClientV2IscsiInitiatorNetworkId": {
      "properties": {
        "fqdns": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FVolumeGroupIscsiClientV2IscsiInitiatorNetworkIdFqdn:VolumeGroupIscsiClientV2IscsiInitiatorNetworkIdFqdn"
          },
          "description": "A fully qualified domain name that specifies its exact location in the tree hierarchy of the Domain Name System.\n"
        },
        "ipv4s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FVolumeGroupIscsiClientV2IscsiInitiatorNetworkIdIpv4:VolumeGroupIscsiClientV2IscsiInitiatorNetworkIdIpv4"
          },
          "description": "An unique address that identifies a device on the internet or a local network in IPv4 format.\n"
        },
        "ipv6s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FVolumeGroupIscsiClientV2IscsiInitiatorNetworkIdIpv6:VolumeGroupIscsiClientV2IscsiInitiatorNetworkIdIpv6"
          },
          "description": "An unique address that identifies a device on the internet or a local network in IPv6 format.\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "fqdns",
            "ipv4s",
            "ipv6s"
          ]
        }
      }
    },
    "nutanix:index/VolumeGroupIscsiClientV2IscsiInitiatorNetworkIdFqdn:VolumeGroupIscsiClientV2IscsiInitiatorNetworkIdFqdn": {
      "properties": {
        "value": {
          "type": "string",
          "description": "- The fully qualified domain name.\n\n\nSee detailed information in [Nutanix Attach an iSCSI Client to Volume Group V4](https://developers.nutanix.com/api-reference?namespace=volumes&version=v4.0#tag/VolumeGroups/operation/attachIscsiClient).\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "value"
          ]
        }
      }
    },
    "nutanix:index/VolumeGroupIscsiClientV2IscsiInitiatorNetworkIdIpv4:VolumeGroupIscsiClientV2IscsiInitiatorNetworkIdIpv4": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "- The prefix length of the network to which this host IPv4 address belongs.\n"
        },
        "value": {
          "type": "string",
          "description": "- An unique address that identifies a device on the internet or a local network in IPv4 format.\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "prefixLength",
            "value"
          ]
        }
      }
    },
    "nutanix:index/VolumeGroupIscsiClientV2IscsiInitiatorNetworkIdIpv6:VolumeGroupIscsiClientV2IscsiInitiatorNetworkIdIpv6": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "- The prefix length of the network to which this host IPv6 address belongs.\n"
        },
        "value": {
          "type": "string",
          "description": "- An unique address that identifies a device on the internet or a local network in IPv6 format.\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "prefixLength",
            "value"
          ]
        }
      }
    },
    "nutanix:index/VolumeGroupV2Disk:VolumeGroupV2Disk": {
      "properties": {
        "description": {
          "type": "string",
          "description": "- Volume Disk description.\n"
        },
        "diskDataSourceReferences": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FVolumeGroupV2DiskDiskDataSourceReference:VolumeGroupV2DiskDiskDataSourceReference"
          },
          "description": "-(Required) Disk Data Source Reference.\n"
        },
        "diskSizeBytes": {
          "type": "integer",
          "description": "- ize of the disk in bytes. This field is mandatory during Volume Group creation if a new disk is being created on the storage container.\n"
        },
        "diskStorageFeatures": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FVolumeGroupV2DiskDiskStorageFeature:VolumeGroupV2DiskDiskStorageFeature"
          },
          "description": "- Storage optimization features which must be enabled on the Volume Disks. This is an optional field. If omitted, the disks will honor the Volume Group specific storage features setting.\n"
        },
        "index": {
          "type": "integer",
          "description": "- Index of the disk in a Volume Group. This field is optional and immutable.\n"
        }
      },
      "type": "object",
      "required": [
        "diskDataSourceReferences",
        "diskSizeBytes"
      ]
    },
    "nutanix:index/VolumeGroupV2DiskDiskDataSourceReference:VolumeGroupV2DiskDiskDataSourceReference": {
      "properties": {
        "entityType": {
          "type": "string",
          "description": "- The Entity Type of the Data Source Reference.\n"
        },
        "extId": {
          "type": "string",
          "description": "- The external identifier of the Data Source Reference.\n"
        },
        "name": {
          "type": "string",
          "description": "- The name of the Data Source Reference.bled for the Volume Group.\n"
        },
        "uris": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "- The uri list of the Data Source Reference.\n"
        }
      },
      "type": "object",
      "required": [
        "extId"
      ],
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "extId",
            "uris"
          ]
        }
      }
    },
    "nutanix:index/VolumeGroupV2DiskDiskStorageFeature:VolumeGroupV2DiskDiskStorageFeature": {
      "properties": {
        "flashModes": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FVolumeGroupV2DiskDiskStorageFeatureFlashMode:VolumeGroupV2DiskDiskStorageFeatureFlashMode"
          },
          "description": "- this field will avoid down migration of data from the hot tier unless the overrides field is specified for the virtual disks.\n"
        }
      },
      "type": "object"
    },
    "nutanix:index/VolumeGroupV2DiskDiskStorageFeatureFlashMode:VolumeGroupV2DiskDiskStorageFeatureFlashMode": {
      "properties": {
        "isEnabled": {
          "type": "boolean",
          "description": "- Indicates whether the flash mode is enabled for the Volume Group Disk.\n\nSee detailed information in [Nutanix Create Volume Group V4](https://developers.nutanix.com/api-reference?namespace=volumes&version=v4.0#tag/VolumeGroups/operation/createVolumeGroup).\n"
        }
      },
      "type": "object"
    },
    "nutanix:index/VolumeGroupV2IscsiFeature:VolumeGroupV2IscsiFeature": {
      "properties": {
        "enabledAuthentications": {
          "type": "string",
          "description": "- The authentication type enabled for the Volume Group.\n"
        },
        "targetSecret": {
          "type": "string",
          "description": "Target secret in case of a CHAP authentication. This field must only be provided in case the authentication type is not set to CHAP. This is an optional field and it cannot be retrieved once configured.\n"
        }
      },
      "type": "object"
    },
    "nutanix:index/VolumeGroupV2StorageFeature:VolumeGroupV2StorageFeature": {
      "properties": {
        "flashModes": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FVolumeGroupV2StorageFeatureFlashMode:VolumeGroupV2StorageFeatureFlashMode"
          },
          "description": "- this field will avoid down migration of data from the hot tier unless the overrides field is specified for the virtual disks.\n"
        }
      },
      "type": "object"
    },
    "nutanix:index/VolumeGroupV2StorageFeatureFlashMode:VolumeGroupV2StorageFeatureFlashMode": {
      "properties": {
        "isEnabled": {
          "type": "boolean",
          "description": "- Indicates whether the flash mode is enabled for the Volume Group Disk.\n\nSee detailed information in [Nutanix Create Volume Group V4](https://developers.nutanix.com/api-reference?namespace=volumes&version=v4.0#tag/VolumeGroups/operation/createVolumeGroup).\n"
        }
      },
      "type": "object"
    },
    "nutanix:index/VpcCommonDomainNameServerIpList:VpcCommonDomainNameServerIpList": {
      "properties": {
        "ip": {
          "type": "string",
          "description": "ip address.\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "ip"
          ]
        }
      }
    },
    "nutanix:index/VpcExternalSubnetListStatus:VpcExternalSubnetListStatus": {
      "properties": {
        "activeGatewayNode": {
          "$ref": "#/types/nutanix:index%2FVpcExternalSubnetListStatusActiveGatewayNode:VpcExternalSubnetListStatusActiveGatewayNode"
        },
        "externalIpLists": {
          "type": "array",
          "items": {
            "type": "string"
          }
        },
        "externalSubnetReference": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          }
        }
      },
      "type": "object",
      "required": [
        "externalSubnetReference"
      ],
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "activeGatewayNode",
            "externalIpLists",
            "externalSubnetReference"
          ]
        }
      }
    },
    "nutanix:index/VpcExternalSubnetListStatusActiveGatewayNode:VpcExternalSubnetListStatusActiveGatewayNode": {
      "properties": {
        "hostReference": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          }
        },
        "ipAddress": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "hostReference"
      ],
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "hostReference",
            "ipAddress"
          ]
        }
      }
    },
    "nutanix:index/VpcExternallyRoutablePrefixList:VpcExternallyRoutablePrefixList": {
      "properties": {
        "ip": {
          "type": "string",
          "description": "ip address.\n"
        },
        "prefixLength": {
          "type": "integer",
          "description": "prefix length.\n"
        }
      },
      "type": "object",
      "required": [
        "ip",
        "prefixLength"
      ]
    },
    "nutanix:index/VpcV2CommonDhcpOption:VpcV2CommonDhcpOption": {
      "properties": {
        "domainNameServers": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FVpcV2CommonDhcpOptionDomainNameServer:VpcV2CommonDhcpOptionDomainNameServer"
          },
          "description": "List of Domain Name Server addresses\n- `domain_name_servers.ipv4`:(Optional) Reference to address configuration\n- `domain_name_servers.ipv6`: (Optional) Reference to address configuration\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "domainNameServers"
          ]
        }
      }
    },
    "nutanix:index/VpcV2CommonDhcpOptionDomainNameServer:VpcV2CommonDhcpOptionDomainNameServer": {
      "properties": {
        "ipv4s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FVpcV2CommonDhcpOptionDomainNameServerIpv4:VpcV2CommonDhcpOptionDomainNameServerIpv4"
          }
        },
        "ipv6s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FVpcV2CommonDhcpOptionDomainNameServerIpv6:VpcV2CommonDhcpOptionDomainNameServerIpv6"
          }
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "ipv4s",
            "ipv6s"
          ]
        }
      }
    },
    "nutanix:index/VpcV2CommonDhcpOptionDomainNameServerIpv4:VpcV2CommonDhcpOptionDomainNameServerIpv4": {
      "properties": {
        "prefixLength": {
          "type": "integer"
        },
        "value": {
          "type": "string"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "prefixLength",
            "value"
          ]
        }
      }
    },
    "nutanix:index/VpcV2CommonDhcpOptionDomainNameServerIpv6:VpcV2CommonDhcpOptionDomainNameServerIpv6": {
      "properties": {
        "prefixLength": {
          "type": "integer"
        },
        "value": {
          "type": "string"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "prefixLength",
            "value"
          ]
        }
      }
    },
    "nutanix:index/VpcV2ExternalSubnet:VpcV2ExternalSubnet": {
      "properties": {
        "activeGatewayCount": {
          "type": "integer"
        },
        "activeGatewayNodes": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FVpcV2ExternalSubnetActiveGatewayNode:VpcV2ExternalSubnetActiveGatewayNode"
          }
        },
        "externalIps": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FVpcV2ExternalSubnetExternalIp:VpcV2ExternalSubnetExternalIp"
          },
          "description": "List of IP Addresses used for SNAT, if NAT is enabled on the external subnet. If NAT is not enabled, this specifies the IP address of the VPC port connected to the external gateway.\n"
        },
        "gatewayNodes": {
          "type": "array",
          "items": {
            "type": "string"
          }
        },
        "subnetReference": {
          "type": "string",
          "description": "External subnet reference.\n"
        }
      },
      "type": "object",
      "required": [
        "subnetReference"
      ],
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "activeGatewayCount",
            "activeGatewayNodes",
            "externalIps",
            "gatewayNodes",
            "subnetReference"
          ]
        }
      }
    },
    "nutanix:index/VpcV2ExternalSubnetActiveGatewayNode:VpcV2ExternalSubnetActiveGatewayNode": {
      "properties": {
        "nodeId": {
          "type": "string"
        },
        "nodeIpAddresses": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FVpcV2ExternalSubnetActiveGatewayNodeNodeIpAddress:VpcV2ExternalSubnetActiveGatewayNodeNodeIpAddress"
          }
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "nodeId",
            "nodeIpAddresses"
          ]
        }
      }
    },
    "nutanix:index/VpcV2ExternalSubnetActiveGatewayNodeNodeIpAddress:VpcV2ExternalSubnetActiveGatewayNodeNodeIpAddress": {
      "properties": {
        "ipv4s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FVpcV2ExternalSubnetActiveGatewayNodeNodeIpAddressIpv4:VpcV2ExternalSubnetActiveGatewayNodeNodeIpAddressIpv4"
          }
        },
        "ipv6s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FVpcV2ExternalSubnetActiveGatewayNodeNodeIpAddressIpv6:VpcV2ExternalSubnetActiveGatewayNodeNodeIpAddressIpv6"
          }
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "ipv4s",
            "ipv6s"
          ]
        }
      }
    },
    "nutanix:index/VpcV2ExternalSubnetActiveGatewayNodeNodeIpAddressIpv4:VpcV2ExternalSubnetActiveGatewayNodeNodeIpAddressIpv4": {
      "properties": {
        "prefixLength": {
          "type": "integer"
        },
        "value": {
          "type": "string"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "prefixLength",
            "value"
          ]
        }
      }
    },
    "nutanix:index/VpcV2ExternalSubnetActiveGatewayNodeNodeIpAddressIpv6:VpcV2ExternalSubnetActiveGatewayNodeNodeIpAddressIpv6": {
      "properties": {
        "prefixLength": {
          "type": "integer"
        },
        "value": {
          "type": "string"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "prefixLength",
            "value"
          ]
        }
      }
    },
    "nutanix:index/VpcV2ExternalSubnetExternalIp:VpcV2ExternalSubnetExternalIp": {
      "properties": {
        "ipv4s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FVpcV2ExternalSubnetExternalIpIpv4:VpcV2ExternalSubnetExternalIpIpv4"
          },
          "description": "Reference to address configuration\n"
        },
        "ipv6s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FVpcV2ExternalSubnetExternalIpIpv6:VpcV2ExternalSubnetExternalIpIpv6"
          },
          "description": "Reference to address configuration\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "ipv4s",
            "ipv6s"
          ]
        }
      }
    },
    "nutanix:index/VpcV2ExternalSubnetExternalIpIpv4:VpcV2ExternalSubnetExternalIpIpv4": {
      "properties": {
        "prefixLength": {
          "type": "integer"
        },
        "value": {
          "type": "string"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "prefixLength",
            "value"
          ]
        }
      }
    },
    "nutanix:index/VpcV2ExternalSubnetExternalIpIpv6:VpcV2ExternalSubnetExternalIpIpv6": {
      "properties": {
        "prefixLength": {
          "type": "integer"
        },
        "value": {
          "type": "string"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "prefixLength",
            "value"
          ]
        }
      }
    },
    "nutanix:index/VpcV2ExternallyRoutablePrefix:VpcV2ExternallyRoutablePrefix": {
      "properties": {
        "ipv4s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FVpcV2ExternallyRoutablePrefixIpv4:VpcV2ExternallyRoutablePrefixIpv4"
          },
          "description": "IP V4 Configuration\n- `ipv4.ip`: (Required) Reference to address configuration\n- `ipv4.prefix_length`: (Required) The prefix length of the network\n"
        },
        "ipv6s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FVpcV2ExternallyRoutablePrefixIpv6:VpcV2ExternallyRoutablePrefixIpv6"
          },
          "description": "IP V6 Configuration\n- `ipv6.ip`: (Required) Reference to address configuration\n- `ipv6.prefix_length`: (Required) The prefix length of the network\n"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "ipv4s",
            "ipv6s"
          ]
        }
      }
    },
    "nutanix:index/VpcV2ExternallyRoutablePrefixIpv4:VpcV2ExternallyRoutablePrefixIpv4": {
      "properties": {
        "ips": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FVpcV2ExternallyRoutablePrefixIpv4Ip:VpcV2ExternallyRoutablePrefixIpv4Ip"
          }
        },
        "prefixLength": {
          "type": "integer"
        }
      },
      "type": "object",
      "required": [
        "prefixLength"
      ],
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "ips",
            "prefixLength"
          ]
        }
      }
    },
    "nutanix:index/VpcV2ExternallyRoutablePrefixIpv4Ip:VpcV2ExternallyRoutablePrefixIpv4Ip": {
      "properties": {
        "prefixLength": {
          "type": "integer"
        },
        "value": {
          "type": "string"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "prefixLength",
            "value"
          ]
        }
      }
    },
    "nutanix:index/VpcV2ExternallyRoutablePrefixIpv6:VpcV2ExternallyRoutablePrefixIpv6": {
      "properties": {
        "ips": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FVpcV2ExternallyRoutablePrefixIpv6Ip:VpcV2ExternallyRoutablePrefixIpv6Ip"
          }
        },
        "prefixLength": {
          "type": "integer"
        }
      },
      "type": "object",
      "required": [
        "prefixLength"
      ],
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "ips",
            "prefixLength"
          ]
        }
      }
    },
    "nutanix:index/VpcV2ExternallyRoutablePrefixIpv6Ip:VpcV2ExternallyRoutablePrefixIpv6Ip": {
      "properties": {
        "prefixLength": {
          "type": "integer"
        },
        "value": {
          "type": "string"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "prefixLength",
            "value"
          ]
        }
      }
    },
    "nutanix:index/VpcV2Link:VpcV2Link": {
      "properties": {
        "href": {
          "type": "string"
        },
        "rel": {
          "type": "string"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "href",
            "rel"
          ]
        }
      }
    },
    "nutanix:index/VpcV2Metadata:VpcV2Metadata": {
      "properties": {
        "categoryIds": {
          "type": "array",
          "items": {
            "type": "array",
            "items": {
              "$ref": "pulumi.json#/Any"
            }
          }
        },
        "ownerReferenceId": {
          "type": "string"
        },
        "ownerUserName": {
          "type": "string"
        },
        "projectName": {
          "type": "string"
        },
        "projectReferenceId": {
          "type": "string"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "categoryIds",
            "ownerReferenceId",
            "ownerUserName",
            "projectName",
            "projectReferenceId"
          ]
        }
      }
    },
    "nutanix:index/VpcV2SnatIp:VpcV2SnatIp": {
      "properties": {
        "ipv4s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FVpcV2SnatIpIpv4:VpcV2SnatIpIpv4"
          }
        },
        "ipv6s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FVpcV2SnatIpIpv6:VpcV2SnatIpIpv6"
          }
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "ipv4s",
            "ipv6s"
          ]
        }
      }
    },
    "nutanix:index/VpcV2SnatIpIpv4:VpcV2SnatIpIpv4": {
      "properties": {
        "prefixLength": {
          "type": "integer"
        },
        "value": {
          "type": "string"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "prefixLength",
            "value"
          ]
        }
      }
    },
    "nutanix:index/VpcV2SnatIpIpv6:VpcV2SnatIpIpv6": {
      "properties": {
        "prefixLength": {
          "type": "integer"
        },
        "value": {
          "type": "string"
        }
      },
      "type": "object",
      "language": {
        "nodejs": {
          "requiredOutputs": [
            "prefixLength",
            "value"
          ]
        }
      }
    },
    "nutanix:index/getAccessControlPoliciesEntity:getAccessControlPoliciesEntity": {
      "properties": {
        "accessControlPolicyId": {
          "type": "string"
        },
        "apiVersion": {
          "type": "string",
          "description": "The version of the API.\n"
        },
        "categories": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetAccessControlPoliciesEntityCategory:getAccessControlPoliciesEntityCategory"
          },
          "description": "- The category values represented as a dictionary of key > list of values.\n"
        },
        "contextFilterLists": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetAccessControlPoliciesEntityContextFilterList:getAccessControlPoliciesEntityContextFilterList"
          }
        },
        "description": {
          "type": "string",
          "description": "- The description of the Access Control Policy.\n"
        },
        "metadata": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          },
          "description": "- The Access Control Policy kind metadata.\n"
        },
        "name": {
          "type": "string",
          "description": "- the name(Optional).\n"
        },
        "ownerReference": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          },
          "description": "- The reference to a user.\n"
        },
        "projectReference": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          },
          "description": "- The reference to a project.\n"
        },
        "roleReferences": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetAccessControlPoliciesEntityRoleReference:getAccessControlPoliciesEntityRoleReference"
          },
          "description": "- The reference to a role.\n"
        },
        "state": {
          "type": "string",
          "description": "- The state of the Access Control Policy.\n"
        },
        "userGroupReferenceLists": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetAccessControlPoliciesEntityUserGroupReferenceList:getAccessControlPoliciesEntityUserGroupReferenceList"
          },
          "description": "- The User group(s) being assigned a given role.\n"
        },
        "userReferenceLists": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetAccessControlPoliciesEntityUserReferenceList:getAccessControlPoliciesEntityUserReferenceList"
          },
          "description": "- The User(s) being assigned a given role.\n"
        }
      },
      "type": "object",
      "required": [
        "accessControlPolicyId",
        "apiVersion",
        "categories",
        "contextFilterLists",
        "description",
        "metadata",
        "name",
        "ownerReference",
        "projectReference",
        "roleReferences",
        "state",
        "userGroupReferenceLists",
        "userReferenceLists"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getAccessControlPoliciesEntityCategory:getAccessControlPoliciesEntityCategory": {
      "properties": {
        "name": {
          "type": "string",
          "description": "- the name(Optional).\n"
        },
        "value": {
          "type": "string",
          "description": "- value of the key.\n"
        }
      },
      "type": "object",
      "required": [
        "name",
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getAccessControlPoliciesEntityContextFilterList:getAccessControlPoliciesEntityContextFilterList": {
      "properties": {
        "entityFilterExpressionLists": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetAccessControlPoliciesEntityContextFilterListEntityFilterExpressionList:getAccessControlPoliciesEntityContextFilterListEntityFilterExpressionList"
          },
          "description": "A list of Entity filter expressions.\n"
        },
        "scopeFilterExpressionLists": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetAccessControlPoliciesEntityContextFilterListScopeFilterExpressionList:getAccessControlPoliciesEntityContextFilterListScopeFilterExpressionList"
          },
          "description": "- The device ID which is used to uniquely identify this particular disk.\n"
        }
      },
      "type": "object",
      "required": [
        "entityFilterExpressionLists",
        "scopeFilterExpressionLists"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getAccessControlPoliciesEntityContextFilterListEntityFilterExpressionList:getAccessControlPoliciesEntityContextFilterListEntityFilterExpressionList": {
      "properties": {
        "leftHandSideEntityType": {
          "type": "string",
          "description": "-  The LHS of the filter expression - the entity type.\n"
        },
        "operator": {
          "type": "string",
          "description": "- The operator in the filter expression.\n"
        },
        "rightHandSides": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetAccessControlPoliciesEntityContextFilterListEntityFilterExpressionListRightHandSide:getAccessControlPoliciesEntityContextFilterListEntityFilterExpressionListRightHandSide"
          },
          "description": "- The right hand side (RHS) of an scope expression.\n"
        }
      },
      "type": "object",
      "required": [
        "leftHandSideEntityType",
        "operator",
        "rightHandSides"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getAccessControlPoliciesEntityContextFilterListEntityFilterExpressionListRightHandSide:getAccessControlPoliciesEntityContextFilterListEntityFilterExpressionListRightHandSide": {
      "properties": {
        "categories": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetAccessControlPoliciesEntityContextFilterListEntityFilterExpressionListRightHandSideCategory:getAccessControlPoliciesEntityContextFilterListEntityFilterExpressionListRightHandSideCategory"
          },
          "description": "- The category values represented as a dictionary of key > list of values.\n"
        },
        "collection": {
          "type": "string",
          "description": "-  A representative term for supported groupings of entities. ALL = All the entities of a given kind.\n"
        },
        "uuidLists": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "- The explicit list of UUIDs for the given kind.\n"
        }
      },
      "type": "object",
      "required": [
        "categories",
        "collection",
        "uuidLists"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getAccessControlPoliciesEntityContextFilterListEntityFilterExpressionListRightHandSideCategory:getAccessControlPoliciesEntityContextFilterListEntityFilterExpressionListRightHandSideCategory": {
      "properties": {
        "name": {
          "type": "string",
          "description": "- the name(Optional).\n"
        },
        "values": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "- value of the key.\n"
        }
      },
      "type": "object",
      "required": [
        "name",
        "values"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getAccessControlPoliciesEntityContextFilterListScopeFilterExpressionList:getAccessControlPoliciesEntityContextFilterListScopeFilterExpressionList": {
      "properties": {
        "leftHandSide": {
          "type": "string",
          "description": "-  The LHS of the filter expression - the scope type.\n"
        },
        "operator": {
          "type": "string",
          "description": "- The operator in the filter expression.\n"
        },
        "rightHandSides": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetAccessControlPoliciesEntityContextFilterListScopeFilterExpressionListRightHandSide:getAccessControlPoliciesEntityContextFilterListScopeFilterExpressionListRightHandSide"
          },
          "description": "- The right hand side (RHS) of an scope expression.\n"
        }
      },
      "type": "object",
      "required": [
        "leftHandSide",
        "operator",
        "rightHandSides"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getAccessControlPoliciesEntityContextFilterListScopeFilterExpressionListRightHandSide:getAccessControlPoliciesEntityContextFilterListScopeFilterExpressionListRightHandSide": {
      "properties": {
        "categories": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetAccessControlPoliciesEntityContextFilterListScopeFilterExpressionListRightHandSideCategory:getAccessControlPoliciesEntityContextFilterListScopeFilterExpressionListRightHandSideCategory"
          },
          "description": "- The category values represented as a dictionary of key > list of values.\n"
        },
        "collection": {
          "type": "string",
          "description": "-  A representative term for supported groupings of entities. ALL = All the entities of a given kind.\n"
        },
        "uuidLists": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "- The explicit list of UUIDs for the given kind.\n"
        }
      },
      "type": "object",
      "required": [
        "categories",
        "collection",
        "uuidLists"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getAccessControlPoliciesEntityContextFilterListScopeFilterExpressionListRightHandSideCategory:getAccessControlPoliciesEntityContextFilterListScopeFilterExpressionListRightHandSideCategory": {
      "properties": {
        "name": {
          "type": "string",
          "description": "- the name(Optional).\n"
        },
        "values": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "- value of the key.\n"
        }
      },
      "type": "object",
      "required": [
        "name",
        "values"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getAccessControlPoliciesEntityRoleReference:getAccessControlPoliciesEntityRoleReference": {
      "properties": {
        "kind": {
          "type": "string",
          "description": "- The kind name (Default value: project)(Required).\n"
        },
        "name": {
          "type": "string",
          "description": "- the name(Optional).\n"
        },
        "uuid": {
          "type": "string",
          "description": "- the UUID(Required).\n"
        }
      },
      "type": "object",
      "required": [
        "kind",
        "name",
        "uuid"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getAccessControlPoliciesEntityUserGroupReferenceList:getAccessControlPoliciesEntityUserGroupReferenceList": {
      "properties": {
        "kind": {
          "type": "string",
          "description": "- The kind name (Default value: project)(Required).\n"
        },
        "name": {
          "type": "string",
          "description": "- the name(Optional).\n"
        },
        "uuid": {
          "type": "string",
          "description": "- the UUID(Required).\n"
        }
      },
      "type": "object",
      "required": [
        "kind",
        "name",
        "uuid"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getAccessControlPoliciesEntityUserReferenceList:getAccessControlPoliciesEntityUserReferenceList": {
      "properties": {
        "kind": {
          "type": "string",
          "description": "- The kind name (Default value: project)(Required).\n"
        },
        "name": {
          "type": "string",
          "description": "- the name(Optional).\n"
        },
        "uuid": {
          "type": "string",
          "description": "- the UUID(Required).\n"
        }
      },
      "type": "object",
      "required": [
        "kind",
        "name",
        "uuid"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getAccessControlPoliciesMetadata:getAccessControlPoliciesMetadata": {
      "properties": {
        "filter": {
          "type": "string"
        },
        "kind": {
          "type": "string",
          "description": "- The kind name (Default value: project)(Required).\n"
        },
        "length": {
          "type": "integer"
        },
        "offset": {
          "type": "integer"
        },
        "sortAttribute": {
          "type": "string"
        },
        "sortOrder": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "filter",
        "kind",
        "length",
        "offset",
        "sortAttribute",
        "sortOrder"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getAccessControlPolicyCategory:getAccessControlPolicyCategory": {
      "properties": {
        "name": {
          "type": "string",
          "description": "- the name(Optional).\n"
        },
        "value": {
          "type": "string",
          "description": "- value of the key.\n"
        }
      },
      "type": "object",
      "required": [
        "name",
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getAccessControlPolicyContextFilterList:getAccessControlPolicyContextFilterList": {
      "properties": {
        "entityFilterExpressionLists": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetAccessControlPolicyContextFilterListEntityFilterExpressionList:getAccessControlPolicyContextFilterListEntityFilterExpressionList"
          },
          "description": "A list of Entity filter expressions.\n"
        },
        "scopeFilterExpressionLists": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetAccessControlPolicyContextFilterListScopeFilterExpressionList:getAccessControlPolicyContextFilterListScopeFilterExpressionList"
          },
          "description": "- The device ID which is used to uniquely identify this particular disk.\n"
        }
      },
      "type": "object",
      "required": [
        "entityFilterExpressionLists",
        "scopeFilterExpressionLists"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getAccessControlPolicyContextFilterListEntityFilterExpressionList:getAccessControlPolicyContextFilterListEntityFilterExpressionList": {
      "properties": {
        "leftHandSideEntityType": {
          "type": "string",
          "description": "-  The LHS of the filter expression - the entity type.\n"
        },
        "operator": {
          "type": "string",
          "description": "- The operator in the filter expression.\n"
        },
        "rightHandSides": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetAccessControlPolicyContextFilterListEntityFilterExpressionListRightHandSide:getAccessControlPolicyContextFilterListEntityFilterExpressionListRightHandSide"
          },
          "description": "- The right hand side (RHS) of an scope expression.\n"
        }
      },
      "type": "object",
      "required": [
        "leftHandSideEntityType",
        "operator",
        "rightHandSides"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getAccessControlPolicyContextFilterListEntityFilterExpressionListRightHandSide:getAccessControlPolicyContextFilterListEntityFilterExpressionListRightHandSide": {
      "properties": {
        "categories": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetAccessControlPolicyContextFilterListEntityFilterExpressionListRightHandSideCategory:getAccessControlPolicyContextFilterListEntityFilterExpressionListRightHandSideCategory"
          },
          "description": "- The category values represented as a dictionary of key > list of values.\n"
        },
        "collection": {
          "type": "string",
          "description": "-  A representative term for supported groupings of entities. ALL = All the entities of a given kind.\n"
        },
        "uuidLists": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "- The explicit list of UUIDs for the given kind.\n"
        }
      },
      "type": "object",
      "required": [
        "categories",
        "collection",
        "uuidLists"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getAccessControlPolicyContextFilterListEntityFilterExpressionListRightHandSideCategory:getAccessControlPolicyContextFilterListEntityFilterExpressionListRightHandSideCategory": {
      "properties": {
        "name": {
          "type": "string",
          "description": "- the name(Optional).\n"
        },
        "values": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "- value of the key.\n"
        }
      },
      "type": "object",
      "required": [
        "name",
        "values"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getAccessControlPolicyContextFilterListScopeFilterExpressionList:getAccessControlPolicyContextFilterListScopeFilterExpressionList": {
      "properties": {
        "leftHandSide": {
          "type": "string",
          "description": "-  The LHS of the filter expression - the scope type.\n"
        },
        "operator": {
          "type": "string",
          "description": "- The operator in the filter expression.\n"
        },
        "rightHandSides": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetAccessControlPolicyContextFilterListScopeFilterExpressionListRightHandSide:getAccessControlPolicyContextFilterListScopeFilterExpressionListRightHandSide"
          },
          "description": "- The right hand side (RHS) of an scope expression.\n"
        }
      },
      "type": "object",
      "required": [
        "leftHandSide",
        "operator",
        "rightHandSides"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getAccessControlPolicyContextFilterListScopeFilterExpressionListRightHandSide:getAccessControlPolicyContextFilterListScopeFilterExpressionListRightHandSide": {
      "properties": {
        "categories": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetAccessControlPolicyContextFilterListScopeFilterExpressionListRightHandSideCategory:getAccessControlPolicyContextFilterListScopeFilterExpressionListRightHandSideCategory"
          },
          "description": "- The category values represented as a dictionary of key > list of values.\n"
        },
        "collection": {
          "type": "string",
          "description": "-  A representative term for supported groupings of entities. ALL = All the entities of a given kind.\n"
        },
        "uuidLists": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "- The explicit list of UUIDs for the given kind.\n"
        }
      },
      "type": "object",
      "required": [
        "categories",
        "collection",
        "uuidLists"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getAccessControlPolicyContextFilterListScopeFilterExpressionListRightHandSideCategory:getAccessControlPolicyContextFilterListScopeFilterExpressionListRightHandSideCategory": {
      "properties": {
        "name": {
          "type": "string",
          "description": "- the name(Optional).\n"
        },
        "values": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "- value of the key.\n"
        }
      },
      "type": "object",
      "required": [
        "name",
        "values"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getAccessControlPolicyRoleReference:getAccessControlPolicyRoleReference": {
      "properties": {
        "kind": {
          "type": "string",
          "description": "- The kind name (Default value: project)(Required).\n"
        },
        "name": {
          "type": "string",
          "description": "- the name(Optional).\n"
        },
        "uuid": {
          "type": "string",
          "description": "- the UUID(Required).\n"
        }
      },
      "type": "object",
      "required": [
        "kind",
        "name",
        "uuid"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getAccessControlPolicyUserGroupReferenceList:getAccessControlPolicyUserGroupReferenceList": {
      "properties": {
        "kind": {
          "type": "string",
          "description": "- The kind name (Default value: project)(Required).\n"
        },
        "name": {
          "type": "string",
          "description": "- the name(Optional).\n"
        },
        "uuid": {
          "type": "string",
          "description": "- the UUID(Required).\n"
        }
      },
      "type": "object",
      "required": [
        "kind",
        "name",
        "uuid"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getAccessControlPolicyUserReferenceList:getAccessControlPolicyUserReferenceList": {
      "properties": {
        "kind": {
          "type": "string",
          "description": "- The kind name (Default value: project)(Required).\n"
        },
        "name": {
          "type": "string",
          "description": "- the name(Optional).\n"
        },
        "uuid": {
          "type": "string",
          "description": "- the UUID(Required).\n"
        }
      },
      "type": "object",
      "required": [
        "kind",
        "name",
        "uuid"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getAddressGroupIpAddressBlockList:getAddressGroupIpAddressBlockList": {
      "properties": {
        "ip": {
          "type": "string",
          "description": "- (ReadOnly) IP of the address block\n"
        },
        "prefixLength": {
          "type": "integer",
          "description": "- (ReadOnly) Prefix length of address block in int\n"
        }
      },
      "type": "object",
      "required": [
        "ip",
        "prefixLength"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getAddressGroupV2IpRange:getAddressGroupV2IpRange": {
      "properties": {
        "endIp": {
          "type": "string",
          "description": "end ip\n"
        },
        "startIp": {
          "type": "string",
          "description": "start ip\n"
        }
      },
      "type": "object",
      "required": [
        "endIp",
        "startIp"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getAddressGroupV2Ipv4Address:getAddressGroupV2Ipv4Address": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "The prefix length of the network to which this host IPv4 address belongs.\n"
        },
        "value": {
          "type": "string",
          "description": "ip of address\n"
        }
      },
      "type": "object",
      "required": [
        "prefixLength",
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getAddressGroupV2Link:getAddressGroupV2Link": {
      "properties": {
        "href": {
          "type": "string"
        },
        "rel": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "href",
        "rel"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getAddressGroupsEntity:getAddressGroupsEntity": {
      "properties": {
        "addressGroups": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetAddressGroupsEntityAddressGroup:getAddressGroupsEntityAddressGroup"
          },
          "description": "Information about address_group\n"
        },
        "associatedPoliciesLists": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetAddressGroupsEntityAssociatedPoliciesList:getAddressGroupsEntityAssociatedPoliciesList"
          },
          "description": "List of associated policies to address group\n"
        },
        "uuid": {
          "type": "string",
          "description": "- (ReadOnly) UUID of associated policy\n"
        }
      },
      "type": "object",
      "required": [
        "addressGroups",
        "associatedPoliciesLists",
        "uuid"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getAddressGroupsEntityAddressGroup:getAddressGroupsEntityAddressGroup": {
      "properties": {
        "addressGroupString": {
          "type": "string",
          "description": "- (ReadOnly) Address Group string\n"
        },
        "description": {
          "type": "string",
          "description": "- (ReadOnly) Description of the address group\n"
        },
        "ipAddressBlockLists": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetAddressGroupsEntityAddressGroupIpAddressBlockList:getAddressGroupsEntityAddressGroupIpAddressBlockList"
          },
          "description": "- (ReadOnly) list of IP address blocks with their prefix length\n"
        },
        "name": {
          "type": "string",
          "description": "- (ReadOnly) Name of associated policy\n"
        }
      },
      "type": "object",
      "required": [
        "addressGroupString",
        "description",
        "ipAddressBlockLists",
        "name"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getAddressGroupsEntityAddressGroupIpAddressBlockList:getAddressGroupsEntityAddressGroupIpAddressBlockList": {
      "properties": {
        "ip": {
          "type": "string",
          "description": "- (ReadOnly) IP of the address block\n"
        },
        "prefixLength": {
          "type": "integer",
          "description": "- (ReadOnly) Prefix length of address block in int\n"
        }
      },
      "type": "object",
      "required": [
        "ip",
        "prefixLength"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getAddressGroupsEntityAssociatedPoliciesList:getAddressGroupsEntityAssociatedPoliciesList": {
      "properties": {
        "kind": {
          "type": "string"
        },
        "name": {
          "type": "string",
          "description": "- (ReadOnly) Name of associated policy\n"
        },
        "uuid": {
          "type": "string",
          "description": "- (ReadOnly) UUID of associated policy\n"
        }
      },
      "type": "object",
      "required": [
        "kind",
        "name",
        "uuid"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getAddressGroupsMetadata:getAddressGroupsMetadata": {
      "properties": {
        "filter": {
          "type": "string",
          "description": "(Optional) Filter in FIQL Syntax\n"
        },
        "kind": {
          "type": "string"
        },
        "length": {
          "type": "integer",
          "description": "(Optional) Integer\n"
        },
        "offset": {
          "type": "integer",
          "description": "(Optional) Integer\n"
        },
        "sortAttribute": {
          "type": "string",
          "description": "(Optional) attribute to sort\n"
        },
        "sortOrder": {
          "type": "string",
          "description": "(Optional) order of sorting\n"
        }
      },
      "type": "object",
      "required": [
        "filter",
        "kind",
        "length",
        "offset",
        "sortAttribute",
        "sortOrder"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getAddressGroupsV2AddressGroup:getAddressGroupsV2AddressGroup": {
      "properties": {
        "createdBy": {
          "type": "string",
          "description": "created by.\n"
        },
        "description": {
          "type": "string",
          "description": "A user defined annotation for an Address Group.\n"
        },
        "extId": {
          "type": "string",
          "description": "Address group UUID.\n"
        },
        "ipRanges": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetAddressGroupsV2AddressGroupIpRange:getAddressGroupsV2AddressGroupIpRange"
          },
          "description": "List of IP range containing start and end IP\n"
        },
        "ipv4Addresses": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetAddressGroupsV2AddressGroupIpv4Address:getAddressGroupsV2AddressGroupIpv4Address"
          },
          "description": "List of CIDR blocks in the Address Group.\n"
        },
        "links": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetAddressGroupsV2AddressGroupLink:getAddressGroupsV2AddressGroupLink"
          },
          "description": "A HATEOAS style link for the response. Each link contains a user-friendly name identifying the link and an address for retrieving the particular resource.\n"
        },
        "name": {
          "type": "string",
          "description": "A short identifier for an Address Group.\n"
        },
        "policyReferences": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "Reference to policy associated with Address Group.\n"
        },
        "tenantId": {
          "type": "string",
          "description": "A globally unique identifier that represents the tenant that owns this entity.\n"
        }
      },
      "type": "object",
      "required": [
        "createdBy",
        "description",
        "extId",
        "ipRanges",
        "ipv4Addresses",
        "links",
        "name",
        "policyReferences",
        "tenantId"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getAddressGroupsV2AddressGroupIpRange:getAddressGroupsV2AddressGroupIpRange": {
      "properties": {
        "endIp": {
          "type": "string",
          "description": "end ip\n"
        },
        "startIp": {
          "type": "string",
          "description": "start ip\n"
        }
      },
      "type": "object",
      "required": [
        "endIp",
        "startIp"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getAddressGroupsV2AddressGroupIpv4Address:getAddressGroupsV2AddressGroupIpv4Address": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "The prefix length of the network to which this host IPv4 address belongs.\n"
        },
        "value": {
          "type": "string",
          "description": "ip of address\n"
        }
      },
      "type": "object",
      "required": [
        "prefixLength",
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getAddressGroupsV2AddressGroupLink:getAddressGroupsV2AddressGroupLink": {
      "properties": {
        "href": {
          "type": "string"
        },
        "rel": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "href",
        "rel"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getAssertHelperCheck:getAssertHelperCheck": {
      "properties": {
        "condition": {
          "type": "boolean"
        },
        "errorMessage": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "condition",
        "errorMessage"
      ]
    },
    "nutanix:index/getAuthorizationPoliciesV2AuthPolicy:getAuthorizationPoliciesV2AuthPolicy": {
      "properties": {
        "authorizationPolicyType": {
          "type": "string"
        },
        "clientName": {
          "type": "string"
        },
        "createdBy": {
          "type": "string"
        },
        "createdTime": {
          "type": "string"
        },
        "description": {
          "type": "string"
        },
        "displayName": {
          "type": "string"
        },
        "entities": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetAuthorizationPoliciesV2AuthPolicyEntity:getAuthorizationPoliciesV2AuthPolicyEntity"
          }
        },
        "extId": {
          "type": "string"
        },
        "identities": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetAuthorizationPoliciesV2AuthPolicyIdentity:getAuthorizationPoliciesV2AuthPolicyIdentity"
          }
        },
        "isSystemDefined": {
          "type": "boolean"
        },
        "lastUpdatedTime": {
          "type": "string"
        },
        "role": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "authorizationPolicyType",
        "clientName",
        "createdBy",
        "createdTime",
        "description",
        "displayName",
        "entities",
        "extId",
        "identities",
        "isSystemDefined",
        "lastUpdatedTime",
        "role"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getAuthorizationPoliciesV2AuthPolicyEntity:getAuthorizationPoliciesV2AuthPolicyEntity": {
      "properties": {
        "reserved": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "reserved"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getAuthorizationPoliciesV2AuthPolicyIdentity:getAuthorizationPoliciesV2AuthPolicyIdentity": {
      "properties": {
        "reserved": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "reserved"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getAuthorizationPolicyV2Entity:getAuthorizationPolicyV2Entity": {
      "properties": {
        "reserved": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "reserved"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getAuthorizationPolicyV2Identity:getAuthorizationPolicyV2Identity": {
      "properties": {
        "reserved": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "reserved"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getBlueprintRuntimeEditablesRuntimeEditable:getBlueprintRuntimeEditablesRuntimeEditable": {
      "properties": {
        "actionLists": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetBlueprintRuntimeEditablesRuntimeEditableActionList:getBlueprintRuntimeEditablesRuntimeEditableActionList"
          },
          "description": "-  A list of actions associated with the blueprint. Each action contains runtime specifications (defined in RuntimeSpecDS).\n"
        },
        "appProfiles": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetBlueprintRuntimeEditablesRuntimeEditableAppProfile:getBlueprintRuntimeEditablesRuntimeEditableAppProfile"
          },
          "description": "-  A list of application profiles associated with the blueprint. Each application profile contains runtime specifications (defined in RuntimeSpecDS).\n"
        },
        "credentialLists": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetBlueprintRuntimeEditablesRuntimeEditableCredentialList:getBlueprintRuntimeEditablesRuntimeEditableCredentialList"
          },
          "description": "-  A list of credentials associated with the blueprint. Each credential contains runtime specifications (defined in RuntimeSpecDS).\n"
        },
        "deploymentLists": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetBlueprintRuntimeEditablesRuntimeEditableDeploymentList:getBlueprintRuntimeEditablesRuntimeEditableDeploymentList"
          },
          "description": "-  A list of deployments associated with the blueprint. Each deployment contains runtime specifications (defined in RuntimeSpecDS).\n"
        },
        "packageLists": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetBlueprintRuntimeEditablesRuntimeEditablePackageList:getBlueprintRuntimeEditablesRuntimeEditablePackageList"
          },
          "description": "-  A list of packages associated with the blueprint. Each package contains runtime specifications (defined in RuntimeSpecDS).\n"
        },
        "restoreConfigLists": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetBlueprintRuntimeEditablesRuntimeEditableRestoreConfigList:getBlueprintRuntimeEditablesRuntimeEditableRestoreConfigList"
          },
          "description": "-  A list of restore configurations associated with the blueprint. Each restore configuration contains runtime specifications (defined in RuntimeSpecDS).\n"
        },
        "serviceLists": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetBlueprintRuntimeEditablesRuntimeEditableServiceList:getBlueprintRuntimeEditablesRuntimeEditableServiceList"
          },
          "description": "- A list of services associated with the blueprint. Each service contains runtime specifications (defined in RuntimeSpecDS).\n"
        },
        "snapshotConfigLists": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetBlueprintRuntimeEditablesRuntimeEditableSnapshotConfigList:getBlueprintRuntimeEditablesRuntimeEditableSnapshotConfigList"
          },
          "description": "- A list of snapshot configurations associated with the blueprint. Each snapshot configuration contains runtime specifications (defined in RuntimeSpecDS).\n"
        },
        "substrateLists": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetBlueprintRuntimeEditablesRuntimeEditableSubstrateList:getBlueprintRuntimeEditablesRuntimeEditableSubstrateList"
          },
          "description": "- A list of substrates associated with the blueprint. Each substrate contains runtime specifications (defined in RuntimeSpecDS).\n"
        },
        "taskLists": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetBlueprintRuntimeEditablesRuntimeEditableTaskList:getBlueprintRuntimeEditablesRuntimeEditableTaskList"
          },
          "description": "- A list of tasks associated with the blueprint. Each task contains runtime specifications (defined in RuntimeSpecDS).\n"
        },
        "variableLists": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetBlueprintRuntimeEditablesRuntimeEditableVariableList:getBlueprintRuntimeEditablesRuntimeEditableVariableList"
          },
          "description": "- A list of variables associated with the blueprint. Each variable contains runtime specifications (defined in RuntimeSpecDS).\n"
        }
      },
      "type": "object",
      "required": [
        "actionLists",
        "appProfiles",
        "credentialLists",
        "deploymentLists",
        "packageLists",
        "restoreConfigLists",
        "serviceLists",
        "snapshotConfigLists",
        "substrateLists",
        "taskLists",
        "variableLists"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getBlueprintRuntimeEditablesRuntimeEditableActionList:getBlueprintRuntimeEditablesRuntimeEditableActionList": {
      "properties": {
        "context": {
          "type": "string",
          "description": "(Optional, Computed) The context in which the runtime specification is applied. It is full address of where the entity in target is present.\n"
        },
        "description": {
          "type": "string",
          "description": "(Optional, Computed) A textual description of the runtime specification. This field provides additional information or context about the entity.\n"
        },
        "name": {
          "type": "string",
          "description": "(Optional, Computed) The name of the runtime specification. This could be the name of an action, service, credential, or other runtime-editable resource.\n"
        },
        "type": {
          "type": "string",
          "description": "(Optional, Computed) The type of runtime specification. This field indicates the category or classification of the runtime resource, such as an action, service, or credential.\n"
        },
        "uuid": {
          "type": "string",
          "description": "(Optional, Computed) The unique identifier (UUID) associated with the runtime specification. This is useful for identifying specific resources or entities.\n"
        },
        "value": {
          "type": "string",
          "description": "(Optional, Computed) The value associated with the runtime specification. This can be a string value representing a configuration or setting.\n"
        }
      },
      "type": "object",
      "required": [
        "context",
        "description",
        "name",
        "type",
        "uuid",
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getBlueprintRuntimeEditablesRuntimeEditableAppProfile:getBlueprintRuntimeEditablesRuntimeEditableAppProfile": {
      "properties": {
        "context": {
          "type": "string",
          "description": "(Optional, Computed) The context in which the runtime specification is applied. It is full address of where the entity in target is present.\n"
        },
        "description": {
          "type": "string",
          "description": "(Optional, Computed) A textual description of the runtime specification. This field provides additional information or context about the entity.\n"
        },
        "name": {
          "type": "string",
          "description": "(Optional, Computed) The name of the runtime specification. This could be the name of an action, service, credential, or other runtime-editable resource.\n"
        },
        "type": {
          "type": "string",
          "description": "(Optional, Computed) The type of runtime specification. This field indicates the category or classification of the runtime resource, such as an action, service, or credential.\n"
        },
        "uuid": {
          "type": "string",
          "description": "(Optional, Computed) The unique identifier (UUID) associated with the runtime specification. This is useful for identifying specific resources or entities.\n"
        },
        "value": {
          "type": "string",
          "description": "(Optional, Computed) The value associated with the runtime specification. This can be a string value representing a configuration or setting.\n"
        }
      },
      "type": "object",
      "required": [
        "context",
        "description",
        "name",
        "type",
        "uuid",
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getBlueprintRuntimeEditablesRuntimeEditableCredentialList:getBlueprintRuntimeEditablesRuntimeEditableCredentialList": {
      "properties": {
        "context": {
          "type": "string",
          "description": "(Optional, Computed) The context in which the runtime specification is applied. It is full address of where the entity in target is present.\n"
        },
        "description": {
          "type": "string",
          "description": "(Optional, Computed) A textual description of the runtime specification. This field provides additional information or context about the entity.\n"
        },
        "name": {
          "type": "string",
          "description": "(Optional, Computed) The name of the runtime specification. This could be the name of an action, service, credential, or other runtime-editable resource.\n"
        },
        "type": {
          "type": "string",
          "description": "(Optional, Computed) The type of runtime specification. This field indicates the category or classification of the runtime resource, such as an action, service, or credential.\n"
        },
        "uuid": {
          "type": "string",
          "description": "(Optional, Computed) The unique identifier (UUID) associated with the runtime specification. This is useful for identifying specific resources or entities.\n"
        },
        "value": {
          "type": "string",
          "description": "(Optional, Computed) The value associated with the runtime specification. This can be a string value representing a configuration or setting.\n"
        }
      },
      "type": "object",
      "required": [
        "context",
        "description",
        "name",
        "type",
        "uuid",
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getBlueprintRuntimeEditablesRuntimeEditableDeploymentList:getBlueprintRuntimeEditablesRuntimeEditableDeploymentList": {
      "properties": {
        "context": {
          "type": "string",
          "description": "(Optional, Computed) The context in which the runtime specification is applied. It is full address of where the entity in target is present.\n"
        },
        "description": {
          "type": "string",
          "description": "(Optional, Computed) A textual description of the runtime specification. This field provides additional information or context about the entity.\n"
        },
        "name": {
          "type": "string",
          "description": "(Optional, Computed) The name of the runtime specification. This could be the name of an action, service, credential, or other runtime-editable resource.\n"
        },
        "type": {
          "type": "string",
          "description": "(Optional, Computed) The type of runtime specification. This field indicates the category or classification of the runtime resource, such as an action, service, or credential.\n"
        },
        "uuid": {
          "type": "string",
          "description": "(Optional, Computed) The unique identifier (UUID) associated with the runtime specification. This is useful for identifying specific resources or entities.\n"
        },
        "value": {
          "type": "string",
          "description": "(Optional, Computed) The value associated with the runtime specification. This can be a string value representing a configuration or setting.\n"
        }
      },
      "type": "object",
      "required": [
        "context",
        "description",
        "name",
        "type",
        "uuid",
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getBlueprintRuntimeEditablesRuntimeEditablePackageList:getBlueprintRuntimeEditablesRuntimeEditablePackageList": {
      "properties": {
        "context": {
          "type": "string",
          "description": "(Optional, Computed) The context in which the runtime specification is applied. It is full address of where the entity in target is present.\n"
        },
        "description": {
          "type": "string",
          "description": "(Optional, Computed) A textual description of the runtime specification. This field provides additional information or context about the entity.\n"
        },
        "name": {
          "type": "string",
          "description": "(Optional, Computed) The name of the runtime specification. This could be the name of an action, service, credential, or other runtime-editable resource.\n"
        },
        "type": {
          "type": "string",
          "description": "(Optional, Computed) The type of runtime specification. This field indicates the category or classification of the runtime resource, such as an action, service, or credential.\n"
        },
        "uuid": {
          "type": "string",
          "description": "(Optional, Computed) The unique identifier (UUID) associated with the runtime specification. This is useful for identifying specific resources or entities.\n"
        },
        "value": {
          "type": "string",
          "description": "(Optional, Computed) The value associated with the runtime specification. This can be a string value representing a configuration or setting.\n"
        }
      },
      "type": "object",
      "required": [
        "context",
        "description",
        "name",
        "type",
        "uuid",
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getBlueprintRuntimeEditablesRuntimeEditableRestoreConfigList:getBlueprintRuntimeEditablesRuntimeEditableRestoreConfigList": {
      "properties": {
        "context": {
          "type": "string",
          "description": "(Optional, Computed) The context in which the runtime specification is applied. It is full address of where the entity in target is present.\n"
        },
        "description": {
          "type": "string",
          "description": "(Optional, Computed) A textual description of the runtime specification. This field provides additional information or context about the entity.\n"
        },
        "name": {
          "type": "string",
          "description": "(Optional, Computed) The name of the runtime specification. This could be the name of an action, service, credential, or other runtime-editable resource.\n"
        },
        "type": {
          "type": "string",
          "description": "(Optional, Computed) The type of runtime specification. This field indicates the category or classification of the runtime resource, such as an action, service, or credential.\n"
        },
        "uuid": {
          "type": "string",
          "description": "(Optional, Computed) The unique identifier (UUID) associated with the runtime specification. This is useful for identifying specific resources or entities.\n"
        },
        "value": {
          "type": "string",
          "description": "(Optional, Computed) The value associated with the runtime specification. This can be a string value representing a configuration or setting.\n"
        }
      },
      "type": "object",
      "required": [
        "context",
        "description",
        "name",
        "type",
        "uuid",
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getBlueprintRuntimeEditablesRuntimeEditableServiceList:getBlueprintRuntimeEditablesRuntimeEditableServiceList": {
      "properties": {
        "context": {
          "type": "string",
          "description": "(Optional, Computed) The context in which the runtime specification is applied. It is full address of where the entity in target is present.\n"
        },
        "description": {
          "type": "string",
          "description": "(Optional, Computed) A textual description of the runtime specification. This field provides additional information or context about the entity.\n"
        },
        "name": {
          "type": "string",
          "description": "(Optional, Computed) The name of the runtime specification. This could be the name of an action, service, credential, or other runtime-editable resource.\n"
        },
        "type": {
          "type": "string",
          "description": "(Optional, Computed) The type of runtime specification. This field indicates the category or classification of the runtime resource, such as an action, service, or credential.\n"
        },
        "uuid": {
          "type": "string",
          "description": "(Optional, Computed) The unique identifier (UUID) associated with the runtime specification. This is useful for identifying specific resources or entities.\n"
        },
        "value": {
          "type": "string",
          "description": "(Optional, Computed) The value associated with the runtime specification. This can be a string value representing a configuration or setting.\n"
        }
      },
      "type": "object",
      "required": [
        "context",
        "description",
        "name",
        "type",
        "uuid",
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getBlueprintRuntimeEditablesRuntimeEditableSnapshotConfigList:getBlueprintRuntimeEditablesRuntimeEditableSnapshotConfigList": {
      "properties": {
        "context": {
          "type": "string",
          "description": "(Optional, Computed) The context in which the runtime specification is applied. It is full address of where the entity in target is present.\n"
        },
        "description": {
          "type": "string",
          "description": "(Optional, Computed) A textual description of the runtime specification. This field provides additional information or context about the entity.\n"
        },
        "name": {
          "type": "string",
          "description": "(Optional, Computed) The name of the runtime specification. This could be the name of an action, service, credential, or other runtime-editable resource.\n"
        },
        "type": {
          "type": "string",
          "description": "(Optional, Computed) The type of runtime specification. This field indicates the category or classification of the runtime resource, such as an action, service, or credential.\n"
        },
        "uuid": {
          "type": "string",
          "description": "(Optional, Computed) The unique identifier (UUID) associated with the runtime specification. This is useful for identifying specific resources or entities.\n"
        },
        "value": {
          "type": "string",
          "description": "(Optional, Computed) The value associated with the runtime specification. This can be a string value representing a configuration or setting.\n"
        }
      },
      "type": "object",
      "required": [
        "context",
        "description",
        "name",
        "type",
        "uuid",
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getBlueprintRuntimeEditablesRuntimeEditableSubstrateList:getBlueprintRuntimeEditablesRuntimeEditableSubstrateList": {
      "properties": {
        "context": {
          "type": "string",
          "description": "(Optional, Computed) The context in which the runtime specification is applied. It is full address of where the entity in target is present.\n"
        },
        "description": {
          "type": "string",
          "description": "(Optional, Computed) A textual description of the runtime specification. This field provides additional information or context about the entity.\n"
        },
        "name": {
          "type": "string",
          "description": "(Optional, Computed) The name of the runtime specification. This could be the name of an action, service, credential, or other runtime-editable resource.\n"
        },
        "type": {
          "type": "string",
          "description": "(Optional, Computed) The type of runtime specification. This field indicates the category or classification of the runtime resource, such as an action, service, or credential.\n"
        },
        "uuid": {
          "type": "string",
          "description": "(Optional, Computed) The unique identifier (UUID) associated with the runtime specification. This is useful for identifying specific resources or entities.\n"
        },
        "value": {
          "type": "string",
          "description": "(Optional, Computed) The value associated with the runtime specification. This can be a string value representing a configuration or setting.\n"
        }
      },
      "type": "object",
      "required": [
        "context",
        "description",
        "name",
        "type",
        "uuid",
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getBlueprintRuntimeEditablesRuntimeEditableTaskList:getBlueprintRuntimeEditablesRuntimeEditableTaskList": {
      "properties": {
        "context": {
          "type": "string",
          "description": "(Optional, Computed) The context in which the runtime specification is applied. It is full address of where the entity in target is present.\n"
        },
        "description": {
          "type": "string",
          "description": "(Optional, Computed) A textual description of the runtime specification. This field provides additional information or context about the entity.\n"
        },
        "name": {
          "type": "string",
          "description": "(Optional, Computed) The name of the runtime specification. This could be the name of an action, service, credential, or other runtime-editable resource.\n"
        },
        "type": {
          "type": "string",
          "description": "(Optional, Computed) The type of runtime specification. This field indicates the category or classification of the runtime resource, such as an action, service, or credential.\n"
        },
        "uuid": {
          "type": "string",
          "description": "(Optional, Computed) The unique identifier (UUID) associated with the runtime specification. This is useful for identifying specific resources or entities.\n"
        },
        "value": {
          "type": "string",
          "description": "(Optional, Computed) The value associated with the runtime specification. This can be a string value representing a configuration or setting.\n"
        }
      },
      "type": "object",
      "required": [
        "context",
        "description",
        "name",
        "type",
        "uuid",
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getBlueprintRuntimeEditablesRuntimeEditableVariableList:getBlueprintRuntimeEditablesRuntimeEditableVariableList": {
      "properties": {
        "context": {
          "type": "string",
          "description": "(Optional, Computed) The context in which the runtime specification is applied. It is full address of where the entity in target is present.\n"
        },
        "description": {
          "type": "string",
          "description": "(Optional, Computed) A textual description of the runtime specification. This field provides additional information or context about the entity.\n"
        },
        "name": {
          "type": "string",
          "description": "(Optional, Computed) The name of the runtime specification. This could be the name of an action, service, credential, or other runtime-editable resource.\n"
        },
        "type": {
          "type": "string",
          "description": "(Optional, Computed) The type of runtime specification. This field indicates the category or classification of the runtime resource, such as an action, service, or credential.\n"
        },
        "uuid": {
          "type": "string",
          "description": "(Optional, Computed) The unique identifier (UUID) associated with the runtime specification. This is useful for identifying specific resources or entities.\n"
        },
        "value": {
          "type": "string",
          "description": "(Optional, Computed) The value associated with the runtime specification. This can be a string value representing a configuration or setting.\n"
        }
      },
      "type": "object",
      "required": [
        "context",
        "description",
        "name",
        "type",
        "uuid",
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getCategoriesV2Category:getCategoriesV2Category": {
      "properties": {
        "associations": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetCategoriesV2CategoryAssociation:getCategoriesV2CategoryAssociation"
          }
        },
        "description": {
          "type": "string"
        },
        "detailedAssociations": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetCategoriesV2CategoryDetailedAssociation:getCategoriesV2CategoryDetailedAssociation"
          }
        },
        "extId": {
          "type": "string"
        },
        "key": {
          "type": "string"
        },
        "links": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetCategoriesV2CategoryLink:getCategoriesV2CategoryLink"
          }
        },
        "ownerUuid": {
          "type": "string"
        },
        "tenantId": {
          "type": "string"
        },
        "type": {
          "type": "string"
        },
        "value": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "associations",
        "description",
        "detailedAssociations",
        "extId",
        "key",
        "links",
        "ownerUuid",
        "tenantId",
        "type",
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getCategoriesV2CategoryAssociation:getCategoriesV2CategoryAssociation": {
      "properties": {
        "categoryId": {
          "type": "string"
        },
        "count": {
          "type": "integer"
        },
        "resourceGroup": {
          "type": "string"
        },
        "resourceType": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "categoryId",
        "count",
        "resourceGroup",
        "resourceType"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getCategoriesV2CategoryDetailedAssociation:getCategoriesV2CategoryDetailedAssociation": {
      "properties": {
        "categoryId": {
          "type": "string"
        },
        "resourceGroup": {
          "type": "string"
        },
        "resourceId": {
          "type": "string"
        },
        "resourceType": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "categoryId",
        "resourceGroup",
        "resourceId",
        "resourceType"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getCategoriesV2CategoryLink:getCategoriesV2CategoryLink": {
      "properties": {
        "href": {
          "type": "string"
        },
        "rel": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "href",
        "rel"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getCategoryV2Association:getCategoryV2Association": {
      "properties": {
        "categoryId": {
          "type": "string",
          "description": "External identifier for the given category, used across all v4 apis/entities/resources where categories are referenced.\n"
        },
        "count": {
          "type": "integer",
          "description": "Count of associations of a particular type of entity or policy\n"
        },
        "resourceGroup": {
          "type": "string",
          "description": "An enum denoting the resource group.\nResources can be organized into either an entity or a policy.\n"
        },
        "resourceType": {
          "type": "string",
          "description": "An enum denoting the associated resource types. Resource types are further grouped into 2 types - entity or a policy.\n"
        }
      },
      "type": "object",
      "required": [
        "categoryId",
        "count",
        "resourceGroup",
        "resourceType"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getCategoryV2DetailedAssociation:getCategoryV2DetailedAssociation": {
      "properties": {
        "categoryId": {
          "type": "string",
          "description": "External identifier for the given category, used across all v4 apis/entities/resources where categories are referenced.\n"
        },
        "resourceGroup": {
          "type": "string",
          "description": "An enum denoting the resource group.\nResources can be organized into either an entity or a policy.\n"
        },
        "resourceId": {
          "type": "string",
          "description": "The UUID of the entity or policy associated with the particular category.\n"
        },
        "resourceType": {
          "type": "string",
          "description": "An enum denoting the associated resource types. Resource types are further grouped into 2 types - entity or a policy.\n"
        }
      },
      "type": "object",
      "required": [
        "categoryId",
        "resourceGroup",
        "resourceId",
        "resourceType"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getCategoryV2Link:getCategoryV2Link": {
      "properties": {
        "href": {
          "type": "string"
        },
        "rel": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "href",
        "rel"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getCertificateV2AlternateFqdn:getCertificateV2AlternateFqdn": {
      "properties": {
        "value": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getCertificateV2AlternateIp:getCertificateV2AlternateIp": {
      "properties": {
        "ipv4": {
          "$ref": "#/types/nutanix:index%2FgetCertificateV2AlternateIpIpv4:getCertificateV2AlternateIpIpv4"
        },
        "ipv6": {
          "$ref": "#/types/nutanix:index%2FgetCertificateV2AlternateIpIpv6:getCertificateV2AlternateIpIpv6"
        }
      },
      "type": "object",
      "required": [
        "ipv4",
        "ipv6"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getCertificateV2AlternateIpIpv4:getCertificateV2AlternateIpIpv4": {
      "properties": {
        "prefixLength": {
          "type": "integer"
        },
        "value": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getCertificateV2AlternateIpIpv6:getCertificateV2AlternateIpIpv6": {
      "properties": {
        "prefixLength": {
          "type": "integer"
        },
        "value": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getCertificateV2Link:getCertificateV2Link": {
      "properties": {
        "href": {
          "type": "string"
        },
        "rel": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "href",
        "rel"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getCertificateV2Metadata:getCertificateV2Metadata": {
      "properties": {
        "categoryIds": {
          "type": "array",
          "items": {
            "type": "string"
          }
        },
        "ownerReferenceId": {
          "type": "string"
        },
        "ownerUserName": {
          "type": "string"
        },
        "projectName": {
          "type": "string"
        },
        "projectReferenceId": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "categoryIds",
        "ownerReferenceId",
        "ownerUserName",
        "projectName",
        "projectReferenceId"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getCertificatesV2Certificate:getCertificatesV2Certificate": {
      "properties": {
        "alternateFqdns": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetCertificatesV2CertificateAlternateFqdn:getCertificatesV2CertificateAlternateFqdn"
          }
        },
        "alternateIps": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetCertificatesV2CertificateAlternateIp:getCertificatesV2CertificateAlternateIp"
          }
        },
        "extId": {
          "type": "string"
        },
        "links": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetCertificatesV2CertificateLink:getCertificatesV2CertificateLink"
          }
        },
        "metadatas": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetCertificatesV2CertificateMetadata:getCertificatesV2CertificateMetadata"
          }
        },
        "objectStoreExtId": {
          "type": "string"
        },
        "tenantId": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "alternateFqdns",
        "alternateIps",
        "extId",
        "links",
        "metadatas",
        "objectStoreExtId",
        "tenantId"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getCertificatesV2CertificateAlternateFqdn:getCertificatesV2CertificateAlternateFqdn": {
      "properties": {
        "value": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getCertificatesV2CertificateAlternateIp:getCertificatesV2CertificateAlternateIp": {
      "properties": {
        "ipv4": {
          "$ref": "#/types/nutanix:index%2FgetCertificatesV2CertificateAlternateIpIpv4:getCertificatesV2CertificateAlternateIpIpv4"
        },
        "ipv6": {
          "$ref": "#/types/nutanix:index%2FgetCertificatesV2CertificateAlternateIpIpv6:getCertificatesV2CertificateAlternateIpIpv6"
        }
      },
      "type": "object",
      "required": [
        "ipv4",
        "ipv6"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getCertificatesV2CertificateAlternateIpIpv4:getCertificatesV2CertificateAlternateIpIpv4": {
      "properties": {
        "prefixLength": {
          "type": "integer"
        },
        "value": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getCertificatesV2CertificateAlternateIpIpv6:getCertificatesV2CertificateAlternateIpIpv6": {
      "properties": {
        "prefixLength": {
          "type": "integer"
        },
        "value": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getCertificatesV2CertificateLink:getCertificatesV2CertificateLink": {
      "properties": {
        "href": {
          "type": "string"
        },
        "rel": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "href",
        "rel"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getCertificatesV2CertificateMetadata:getCertificatesV2CertificateMetadata": {
      "properties": {
        "categoryIds": {
          "type": "array",
          "items": {
            "type": "string"
          }
        },
        "ownerReferenceId": {
          "type": "string"
        },
        "ownerUserName": {
          "type": "string"
        },
        "projectName": {
          "type": "string"
        },
        "projectReferenceId": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "categoryIds",
        "ownerReferenceId",
        "ownerUserName",
        "projectName",
        "projectReferenceId"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getClusterAuthorizedPublicKeyList:getClusterAuthorizedPublicKeyList": {
      "properties": {
        "key": {
          "type": "string"
        },
        "name": {
          "type": "string",
          "description": "Represents the name of cluster\n"
        }
      },
      "type": "object",
      "required": [
        "key",
        "name"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getClusterCaCertificateList:getClusterCaCertificateList": {
      "properties": {
        "caName": {
          "type": "string"
        },
        "certificate": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "caName",
        "certificate"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getClusterCategory:getClusterCategory": {
      "properties": {
        "name": {
          "type": "string",
          "description": "- the key name.\n"
        },
        "value": {
          "type": "string",
          "description": "- value of the key.\n"
        }
      },
      "type": "object",
      "required": [
        "name",
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getClusterHttpProxyList:getClusterHttpProxyList": {
      "properties": {
        "address": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          }
        },
        "credentials": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          }
        },
        "proxyTypeLists": {
          "type": "array",
          "items": {
            "type": "string"
          }
        }
      },
      "type": "object",
      "required": [
        "address",
        "credentials",
        "proxyTypeLists"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getClusterHttpProxyWhitelist:getClusterHttpProxyWhitelist": {
      "properties": {
        "target": {
          "type": "string"
        },
        "targetType": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "target",
        "targetType"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getClusterManagementServerList:getClusterManagementServerList": {
      "properties": {
        "drsEnabled": {
          "type": "boolean"
        },
        "ip": {
          "type": "string"
        },
        "statusLists": {
          "type": "array",
          "items": {
            "type": "string"
          }
        },
        "type": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "drsEnabled",
        "ip",
        "statusLists",
        "type"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getClusterNode:getClusterNode": {
      "properties": {
        "ip": {
          "type": "string"
        },
        "type": {
          "type": "string"
        },
        "version": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "ip",
        "type",
        "version"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getClusterV2Config:getClusterV2Config": {
      "properties": {
        "authorizedPublicKeyLists": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetClusterV2ConfigAuthorizedPublicKeyList:getClusterV2ConfigAuthorizedPublicKeyList"
          },
          "description": "- Public ssh key details. This is part of payload for cluster update operation only.\n"
        },
        "buildInfos": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetClusterV2ConfigBuildInfo:getClusterV2ConfigBuildInfo"
          },
          "description": "- Build information details.\n"
        },
        "clusterArch": {
          "type": "string",
          "description": "- Cluster arch.\nValid values are:\n- \"PPC64LE\" PPC64LE cluster architecture type.\n- \"X86_64\" X86_64 cluster architecture type.\n"
        },
        "clusterFunctions": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "- Cluster function. This is part of payload for cluster\ncreate operation only (allowed enum values for creation are AOS, ONE_NODE & TWO_NODE only).\nValid values are:\n- \"AOS\"\n- \"PRISM_CENTRAL\"\n- \"CLOUD_DATA_GATEWAY\"\n- \"AFS\"\n- \"ONE_NODE\"\n- \"TWO_NODE\"\n- \"ANALYTICS_PLATFORM\"\n"
        },
        "clusterSoftwareMaps": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetClusterV2ConfigClusterSoftwareMap:getClusterV2ConfigClusterSoftwareMap"
          },
          "description": "- Cluster software version details.\n"
        },
        "encryptionInTransitStatus": {
          "type": "string",
          "description": "- Encryption in transit Status.\nValid values are:\n- \"DISABLED\"\tDisabled encryption status.\n- \"ENABLED\" \tEnabled encryption status.\n"
        },
        "encryptionOptions": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "- Encryption option.\nValid values are:\n- \"SOFTWARE\".\n- \"HARDWARE\".\n- \"SOFTWARE_AND_HARDWARE\"\n"
        },
        "encryptionScopes": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "- Encryption scope.\nValid values are:\n- \"CLUSTER\".\n- \"CONTAINER\".\n"
        },
        "faultToleranceStates": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetClusterV2ConfigFaultToleranceState:getClusterV2ConfigFaultToleranceState"
          },
          "description": "- Fault tolerance state of a cluster.\n"
        },
        "hypervisorTypes": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "- Hypervisor types.\nValid values are:\n- \"AHV\".\n- \"ESX\".\n- \"HYPERV\".\n- \"XEN\".\n- \"NATIVEHOST\".\n"
        },
        "incarnationId": {
          "type": "integer",
          "description": "- Cluster incarnation Id. This is part of payload for cluster update operation only.\n"
        },
        "isAvailable": {
          "type": "boolean",
          "description": "- Indicates if cluster is available to contact or not.\n"
        },
        "isLts": {
          "type": "boolean",
          "description": "- Indicates whether the release is categorized as Long-term or not.\n"
        },
        "isPasswordRemoteLoginEnabled": {
          "type": "boolean",
          "description": "- Indicates whether the password ssh into the cluster is enabled or not.\n"
        },
        "isRemoteSupportEnabled": {
          "type": "boolean",
          "description": "- Remote support status.\n"
        },
        "operationMode": {
          "type": "string",
          "description": "- Cluster operation mode. This is part of payload for cluster\nupdate operation only.\nValid values are:\n- \"OVERRIDE\"\tOverride operation mode.\n- \"STAND_ALONE\"\tStand-alone operation mode.\n- \"SWITCH_TO_TWO_NODE\"\tSwitch to two-node operation mode.\n- \"NORMAL\"\tNormal operation mode.\n- \"READ_ONLY\"\tRead-only operation mode.\n"
        },
        "pulseStatuses": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetClusterV2ConfigPulseStatus:getClusterV2ConfigPulseStatus"
          },
          "description": "- Pulse status for a cluster.\n"
        },
        "redundancyFactor": {
          "type": "integer",
          "description": "- Redundancy factor of a cluster. This is part of payload for both cluster create & update operations.\n"
        },
        "timezone": {
          "type": "string",
          "description": "- Time zone on a cluster.\n"
        }
      },
      "type": "object",
      "required": [
        "authorizedPublicKeyLists",
        "buildInfos",
        "clusterArch",
        "clusterFunctions",
        "clusterSoftwareMaps",
        "encryptionInTransitStatus",
        "encryptionOptions",
        "encryptionScopes",
        "faultToleranceStates",
        "hypervisorTypes",
        "incarnationId",
        "isAvailable",
        "isLts",
        "isPasswordRemoteLoginEnabled",
        "isRemoteSupportEnabled",
        "operationMode",
        "pulseStatuses",
        "redundancyFactor",
        "timezone"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getClusterV2ConfigAuthorizedPublicKeyList:getClusterV2ConfigAuthorizedPublicKeyList": {
      "properties": {
        "key": {
          "type": "string",
          "description": "- SSH key value.\n"
        },
        "name": {
          "type": "string",
          "description": "- HTTP Proxy server name configuration needed to access a cluster which is hosted behind a HTTP Proxy to not reveal its identity.\n"
        }
      },
      "type": "object",
      "required": [
        "key",
        "name"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getClusterV2ConfigBuildInfo:getClusterV2ConfigBuildInfo": {
      "properties": {
        "buildType": {
          "type": "string",
          "description": "- Software build type.\n"
        },
        "commitId": {
          "type": "string",
          "description": "- Commit ID used for version.\n"
        },
        "fullVersion": {
          "type": "string",
          "description": "- Full name of software version.\n"
        },
        "shortCommitId": {
          "type": "string",
          "description": "- Short commit Id used for version.\n"
        },
        "version": {
          "type": "string",
          "description": "- Software version.\n"
        }
      },
      "type": "object",
      "required": [
        "buildType",
        "commitId",
        "fullVersion",
        "shortCommitId",
        "version"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getClusterV2ConfigClusterSoftwareMap:getClusterV2ConfigClusterSoftwareMap": {
      "properties": {
        "softwareType": {
          "type": "string",
          "description": "- Software type. This is part of payload for cluster create operation only.\nValid values are:\n- \"PRISM_CENTRAL\": Prism Central software type.\n- \"NOS\": NOS software.\n- \"NCC\": NCC software.\n"
        },
        "version": {
          "type": "string",
          "description": "- Software version.\n"
        }
      },
      "type": "object",
      "required": [
        "softwareType",
        "version"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getClusterV2ConfigFaultToleranceState:getClusterV2ConfigFaultToleranceState": {
      "properties": {
        "currentClusterFaultTolerance": {
          "type": "string",
          "description": "- Cluster Fault tolerance. Set desiredClusterFaultTolerance for cluster create and update.\nValid values are:\n- \"CFT_1N_OR_1D\":     - System can handle fault of one node or one disk.\n- \"CFT_2N_OR_2D\":     - System can handle fault of two nodes or two disks.\n- \"CFT_1N_AND_1D\":    - System can handle fault of one node and one disk on the other node simultaneously.\n- \"CFT_0N_AND_0D\":    - System can not handle any fault with a node or a disk.\n"
        },
        "currentMaxFaultTolerance": {
          "type": "integer",
          "description": "- Maximum fault tolerance that is supported currently.\n"
        },
        "desiredClusterFaultTolerance": {
          "type": "string",
          "description": "- Cluster Fault tolerance. Set desiredClusterFaultTolerance for cluster create and update.\nValid values are:\n- \"CFT_1N_OR_1D\":     - System can handle fault of one node or one disk.\n- \"CFT_2N_OR_2D\":     - System can handle fault of two nodes or two disks.\n- \"CFT_1N_AND_1D\":    - System can handle fault of one node and one disk on the other node simultaneously.\n- \"CFT_0N_AND_0D\":    - System can not handle any fault with a node or a disk.\n"
        },
        "desiredMaxFaultTolerance": {
          "type": "integer",
          "description": "- Maximum fault tolerance desired.\n"
        },
        "domainAwarenessLevel": {
          "type": "string",
          "description": "- Domain awareness level corresponds to unit of cluster group. This is part of payload for both cluster create & update operations.\nValid values are:\n- \"RACK\"\tRack level awareness.\n- \"NODE\"\tNode level awareness.\n- \"BLOCK\"\tBlock level awareness.\n- \"DISK\"\tDisk level awareness.\n"
        },
        "redundancyStatuses": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetClusterV2ConfigFaultToleranceStateRedundancyStatus:getClusterV2ConfigFaultToleranceStateRedundancyStatus"
          },
          "description": "- Redundancy Status of the cluster\n"
        }
      },
      "type": "object",
      "required": [
        "currentClusterFaultTolerance",
        "currentMaxFaultTolerance",
        "desiredClusterFaultTolerance",
        "desiredMaxFaultTolerance",
        "domainAwarenessLevel",
        "redundancyStatuses"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getClusterV2ConfigFaultToleranceStateRedundancyStatus:getClusterV2ConfigFaultToleranceStateRedundancyStatus": {
      "properties": {
        "isCassandraPreparationDone": {
          "type": "boolean",
          "description": "- Boolean flag to indicate if Cassandra ensemble can meet the desired FT.\n"
        },
        "isZookeeperPreparationDone": {
          "type": "boolean",
          "description": "- Boolean flag to indicate if Zookeeper ensemble can meet the desired FT.\n"
        }
      },
      "type": "object",
      "required": [
        "isCassandraPreparationDone",
        "isZookeeperPreparationDone"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getClusterV2ConfigPulseStatus:getClusterV2ConfigPulseStatus": {
      "properties": {
        "isEnabled": {
          "type": "boolean",
          "description": "- (Optional) Flag to indicate if pulse is enabled or not.\n"
        },
        "piiScrubbingLevel": {
          "type": "string",
          "description": "- (Optional) PII scrubbing level.\nValid values are:\n- \"ALL\" :\tScrub All PII Information from Pulse including data like entity names and IP addresses.\n- \"DEFAULT\":\tDefault PII Scrubbing level. Data like entity names and IP addresses will not be scrubbed from Pulse.\n"
        }
      },
      "type": "object",
      "required": [
        "isEnabled",
        "piiScrubbingLevel"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getClusterV2Link:getClusterV2Link": {
      "properties": {
        "href": {
          "type": "string"
        },
        "rel": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "href",
        "rel"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getClusterV2Network:getClusterV2Network": {
      "properties": {
        "backplanes": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetClusterV2NetworkBackplane:getClusterV2NetworkBackplane"
          },
          "description": "- Params associated to the backplane network segmentation. This is part of payload for cluster create operation only.\n"
        },
        "externalAddresses": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetClusterV2NetworkExternalAddress:getClusterV2NetworkExternalAddress"
          },
          "description": "- An unique address that identifies a device on the internet or a local network in IPv4 or IPv6 format.\n"
        },
        "externalDataServicesIps": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetClusterV2NetworkExternalDataServicesIp:getClusterV2NetworkExternalDataServicesIp"
          },
          "description": "- An unique address that identifies a device on the internet or a local network in IPv4 or IPv6 format.\n"
        },
        "externalSubnet": {
          "type": "string",
          "description": "- Cluster external subnet address.\n"
        },
        "fqdn": {
          "type": "string",
          "description": "- Fully Qualified Domain Name (FQDN) of the server.\n"
        },
        "httpProxyLists": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetClusterV2NetworkHttpProxyList:getClusterV2NetworkHttpProxyList"
          },
          "description": "- List of HTTP Proxy server configuration needed to access a cluster which is hosted behind a HTTP Proxy to not reveal its identity.\n"
        },
        "httpProxyWhiteLists": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetClusterV2NetworkHttpProxyWhiteList:getClusterV2NetworkHttpProxyWhiteList"
          }
        },
        "internalSubnet": {
          "type": "string",
          "description": "- Cluster internal subnet address.\n"
        },
        "keyManagementServerType": {
          "type": "string",
          "description": "- Key management server type.\nValid values are:\n- \"PRISM_CENTRAL\"\tPrism Central management server.\n- \"EXTERNAL\"\tExternal management server.\n- \"LOCAL\"\tLocal management server.\n"
        },
        "managementServers": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetClusterV2NetworkManagementServer:getClusterV2NetworkManagementServer"
          },
          "description": "- Management server information.\n"
        },
        "masqueradingIps": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetClusterV2NetworkMasqueradingIp:getClusterV2NetworkMasqueradingIp"
          },
          "description": "- An unique address that identifies a device on the internet or a local network in IPv4 or IPv6 format.\n"
        },
        "masqueradingPort": {
          "type": "string",
          "description": "- The port to connect to the cluster when using masquerading IP.\n"
        },
        "nameServerIpLists": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetClusterV2NetworkNameServerIpList:getClusterV2NetworkNameServerIpList"
          },
          "description": "- List of name servers on a cluster. This is part of payload for both cluster create & update operations. For create operation, only ipv4 address / fqdn values are supported currently\n"
        },
        "nfsSubnetWhiteLists": {
          "type": "array",
          "items": {
            "type": "string"
          }
        },
        "ntpServerIpLists": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetClusterV2NetworkNtpServerIpList:getClusterV2NetworkNtpServerIpList"
          },
          "description": "- List of NTP servers on a cluster. This is part of payload for both cluster create & update operations. For create operation, only ipv4 address / fqdn values are supported currently.\n"
        },
        "smtpServers": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetClusterV2NetworkSmtpServer:getClusterV2NetworkSmtpServer"
          },
          "description": "- SMTP servers on a cluster. This is part of payload for cluster update operation only.\n"
        }
      },
      "type": "object",
      "required": [
        "backplanes",
        "externalAddresses",
        "externalDataServicesIps",
        "externalSubnet",
        "fqdn",
        "httpProxyLists",
        "httpProxyWhiteLists",
        "internalSubnet",
        "keyManagementServerType",
        "managementServers",
        "masqueradingIps",
        "masqueradingPort",
        "nameServerIpLists",
        "nfsSubnetWhiteLists",
        "ntpServerIpLists",
        "smtpServers"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getClusterV2NetworkBackplane:getClusterV2NetworkBackplane": {
      "properties": {
        "isSegmentationEnabled": {
          "type": "boolean",
          "description": "- Flag to indicate if the backplane segmentation needs to be enabled or not.\n"
        },
        "netmasks": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetClusterV2NetworkBackplaneNetmask:getClusterV2NetworkBackplaneNetmask"
          },
          "description": "- An unique address that identifies a device on the internet or a local network in IPv4 format.\n"
        },
        "subnets": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetClusterV2NetworkBackplaneSubnet:getClusterV2NetworkBackplaneSubnet"
          },
          "description": "- An unique address that identifies a device on the internet or a local network in IPv4 format.\n"
        },
        "vlanTag": {
          "type": "integer",
          "description": "- VLAN Id tagged to the backplane network on the cluster. This is part of cluster create payload.\n"
        }
      },
      "type": "object",
      "required": [
        "isSegmentationEnabled",
        "netmasks",
        "subnets",
        "vlanTag"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getClusterV2NetworkBackplaneNetmask:getClusterV2NetworkBackplaneNetmask": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "- The prefix length of the network to which this host IPv4/IPv6 address belongs.\n"
        },
        "value": {
          "type": "string",
          "description": "- The fully qualified domain name of the host.\n"
        }
      },
      "type": "object",
      "required": [
        "prefixLength",
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getClusterV2NetworkBackplaneSubnet:getClusterV2NetworkBackplaneSubnet": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "- The prefix length of the network to which this host IPv4/IPv6 address belongs.\n"
        },
        "value": {
          "type": "string",
          "description": "- The fully qualified domain name of the host.\n"
        }
      },
      "type": "object",
      "required": [
        "prefixLength",
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getClusterV2NetworkExternalAddress:getClusterV2NetworkExternalAddress": {
      "properties": {
        "ipv4s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetClusterV2NetworkExternalAddressIpv4:getClusterV2NetworkExternalAddressIpv4"
          },
          "description": "- An unique address that identifies a device on the internet or a local network in IPv4 format.\n"
        },
        "ipv6s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetClusterV2NetworkExternalAddressIpv6:getClusterV2NetworkExternalAddressIpv6"
          },
          "description": "- An unique address that identifies a device on the internet or a local network in IPv6 format.\n"
        }
      },
      "type": "object",
      "required": [
        "ipv4s",
        "ipv6s"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getClusterV2NetworkExternalAddressIpv4:getClusterV2NetworkExternalAddressIpv4": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "- The prefix length of the network to which this host IPv4/IPv6 address belongs.\n"
        },
        "value": {
          "type": "string",
          "description": "- The fully qualified domain name of the host.\n"
        }
      },
      "type": "object",
      "required": [
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getClusterV2NetworkExternalAddressIpv6:getClusterV2NetworkExternalAddressIpv6": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "- The prefix length of the network to which this host IPv4/IPv6 address belongs.\n"
        },
        "value": {
          "type": "string",
          "description": "- The fully qualified domain name of the host.\n"
        }
      },
      "type": "object",
      "required": [
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getClusterV2NetworkExternalDataServicesIp:getClusterV2NetworkExternalDataServicesIp": {
      "properties": {
        "ipv4s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetClusterV2NetworkExternalDataServicesIpIpv4:getClusterV2NetworkExternalDataServicesIpIpv4"
          },
          "description": "- An unique address that identifies a device on the internet or a local network in IPv4 format.\n"
        },
        "ipv6s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetClusterV2NetworkExternalDataServicesIpIpv6:getClusterV2NetworkExternalDataServicesIpIpv6"
          },
          "description": "- An unique address that identifies a device on the internet or a local network in IPv6 format.\n"
        }
      },
      "type": "object",
      "required": [
        "ipv4s",
        "ipv6s"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getClusterV2NetworkExternalDataServicesIpIpv4:getClusterV2NetworkExternalDataServicesIpIpv4": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "- The prefix length of the network to which this host IPv4/IPv6 address belongs.\n"
        },
        "value": {
          "type": "string",
          "description": "- The fully qualified domain name of the host.\n"
        }
      },
      "type": "object",
      "required": [
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getClusterV2NetworkExternalDataServicesIpIpv6:getClusterV2NetworkExternalDataServicesIpIpv6": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "- The prefix length of the network to which this host IPv4/IPv6 address belongs.\n"
        },
        "value": {
          "type": "string",
          "description": "- The fully qualified domain name of the host.\n"
        }
      },
      "type": "object",
      "required": [
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getClusterV2NetworkHttpProxyList:getClusterV2NetworkHttpProxyList": {
      "properties": {
        "ipAddresses": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetClusterV2NetworkHttpProxyListIpAddress:getClusterV2NetworkHttpProxyListIpAddress"
          },
          "description": "- An unique address that identifies a device on the internet or a local network in IPv4/IPv6 format or a Fully Qualified Domain Name.\n"
        },
        "name": {
          "type": "string",
          "description": "- HTTP Proxy server name configuration needed to access a cluster which is hosted behind a HTTP Proxy to not reveal its identity.\n"
        },
        "password": {
          "type": "string",
          "description": "- SMTP server password.\n"
        },
        "port": {
          "type": "integer",
          "description": "- SMTP port.\n"
        },
        "proxyTypes": {
          "type": "array",
          "items": {
            "type": "string"
          }
        },
        "username": {
          "type": "string",
          "description": "- SMTP server user name.\n"
        }
      },
      "type": "object",
      "required": [
        "ipAddresses",
        "name",
        "password",
        "port",
        "proxyTypes",
        "username"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getClusterV2NetworkHttpProxyListIpAddress:getClusterV2NetworkHttpProxyListIpAddress": {
      "properties": {
        "ipv4s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetClusterV2NetworkHttpProxyListIpAddressIpv4:getClusterV2NetworkHttpProxyListIpAddressIpv4"
          },
          "description": "- An unique address that identifies a device on the internet or a local network in IPv4 format.\n"
        },
        "ipv6s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetClusterV2NetworkHttpProxyListIpAddressIpv6:getClusterV2NetworkHttpProxyListIpAddressIpv6"
          },
          "description": "- An unique address that identifies a device on the internet or a local network in IPv6 format.\n"
        }
      },
      "type": "object",
      "required": [
        "ipv4s",
        "ipv6s"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getClusterV2NetworkHttpProxyListIpAddressIpv4:getClusterV2NetworkHttpProxyListIpAddressIpv4": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "- The prefix length of the network to which this host IPv4/IPv6 address belongs.\n"
        },
        "value": {
          "type": "string",
          "description": "- The fully qualified domain name of the host.\n"
        }
      },
      "type": "object",
      "required": [
        "prefixLength",
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getClusterV2NetworkHttpProxyListIpAddressIpv6:getClusterV2NetworkHttpProxyListIpAddressIpv6": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "- The prefix length of the network to which this host IPv4/IPv6 address belongs.\n"
        },
        "value": {
          "type": "string",
          "description": "- The fully qualified domain name of the host.\n"
        }
      },
      "type": "object",
      "required": [
        "prefixLength",
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getClusterV2NetworkHttpProxyWhiteList:getClusterV2NetworkHttpProxyWhiteList": {
      "properties": {
        "target": {
          "type": "string",
          "description": "- Target's identifier which is exempted from going through the configured HTTP Proxy.\n"
        },
        "targetType": {
          "type": "string",
          "description": "- Type of the target which is exempted from going through the configured HTTP Proxy.\nValid values are:\n- \"IPV6_ADDRESS\"\tIPV6 address.\n- \"HOST_NAME\"\tName of the host.\n- \"DOMAIN_NAME_SUFFIX\" Domain Name Suffix required for http proxy whitelist.\n- \"IPV4_NETWORK_MASK\" Network Mask of the IpV4 family.\n- \"IPV4_ADDRESS\" IPV4 address.\n"
        }
      },
      "type": "object",
      "required": [
        "target",
        "targetType"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getClusterV2NetworkManagementServer:getClusterV2NetworkManagementServer": {
      "properties": {
        "ips": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetClusterV2NetworkManagementServerIp:getClusterV2NetworkManagementServerIp"
          },
          "description": "- An unique address that identifies a device on the internet or a local network in IPv4/IPv6 format or a Fully Qualified Domain Name.\n"
        },
        "isDrsEnabled": {
          "type": "boolean",
          "description": "- Indicates whether it is DRS enabled or not.\n"
        },
        "isInUse": {
          "type": "boolean",
          "description": "- Indicates whether the host is managed by an entity or not.\n"
        },
        "isRegistered": {
          "type": "boolean",
          "description": "- Indicates whether it is registered or not.\n"
        },
        "type": {
          "type": "boolean",
          "description": "- Type of management server.\nValid values are:\n- \"VCENTER\"   \tVcenter management server.\n"
        }
      },
      "type": "object",
      "required": [
        "ips",
        "isDrsEnabled",
        "isInUse",
        "isRegistered",
        "type"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getClusterV2NetworkManagementServerIp:getClusterV2NetworkManagementServerIp": {
      "properties": {
        "ipv4s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetClusterV2NetworkManagementServerIpIpv4:getClusterV2NetworkManagementServerIpIpv4"
          },
          "description": "- An unique address that identifies a device on the internet or a local network in IPv4 format.\n"
        },
        "ipv6s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetClusterV2NetworkManagementServerIpIpv6:getClusterV2NetworkManagementServerIpIpv6"
          },
          "description": "- An unique address that identifies a device on the internet or a local network in IPv6 format.\n"
        }
      },
      "type": "object",
      "required": [
        "ipv4s",
        "ipv6s"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getClusterV2NetworkManagementServerIpIpv4:getClusterV2NetworkManagementServerIpIpv4": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "- The prefix length of the network to which this host IPv4/IPv6 address belongs.\n"
        },
        "value": {
          "type": "string",
          "description": "- The fully qualified domain name of the host.\n"
        }
      },
      "type": "object",
      "required": [
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getClusterV2NetworkManagementServerIpIpv6:getClusterV2NetworkManagementServerIpIpv6": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "- The prefix length of the network to which this host IPv4/IPv6 address belongs.\n"
        },
        "value": {
          "type": "string",
          "description": "- The fully qualified domain name of the host.\n"
        }
      },
      "type": "object",
      "required": [
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getClusterV2NetworkMasqueradingIp:getClusterV2NetworkMasqueradingIp": {
      "properties": {
        "ipv4s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetClusterV2NetworkMasqueradingIpIpv4:getClusterV2NetworkMasqueradingIpIpv4"
          },
          "description": "- An unique address that identifies a device on the internet or a local network in IPv4 format.\n"
        },
        "ipv6s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetClusterV2NetworkMasqueradingIpIpv6:getClusterV2NetworkMasqueradingIpIpv6"
          },
          "description": "- An unique address that identifies a device on the internet or a local network in IPv6 format.\n"
        }
      },
      "type": "object",
      "required": [
        "ipv4s",
        "ipv6s"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getClusterV2NetworkMasqueradingIpIpv4:getClusterV2NetworkMasqueradingIpIpv4": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "- The prefix length of the network to which this host IPv4/IPv6 address belongs.\n"
        },
        "value": {
          "type": "string",
          "description": "- The fully qualified domain name of the host.\n"
        }
      },
      "type": "object",
      "required": [
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getClusterV2NetworkMasqueradingIpIpv6:getClusterV2NetworkMasqueradingIpIpv6": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "- The prefix length of the network to which this host IPv4/IPv6 address belongs.\n"
        },
        "value": {
          "type": "string",
          "description": "- The fully qualified domain name of the host.\n"
        }
      },
      "type": "object",
      "required": [
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getClusterV2NetworkNameServerIpList:getClusterV2NetworkNameServerIpList": {
      "properties": {
        "fqdns": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetClusterV2NetworkNameServerIpListFqdn:getClusterV2NetworkNameServerIpListFqdn"
          },
          "description": "- Fully Qualified Domain Name (FQDN) of the server.\n"
        },
        "ipv4s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetClusterV2NetworkNameServerIpListIpv4:getClusterV2NetworkNameServerIpListIpv4"
          },
          "description": "- An unique address that identifies a device on the internet or a local network in IPv4 format.\n"
        },
        "ipv6s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetClusterV2NetworkNameServerIpListIpv6:getClusterV2NetworkNameServerIpListIpv6"
          },
          "description": "- An unique address that identifies a device on the internet or a local network in IPv6 format.\n"
        }
      },
      "type": "object",
      "required": [
        "fqdns",
        "ipv4s",
        "ipv6s"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getClusterV2NetworkNameServerIpListFqdn:getClusterV2NetworkNameServerIpListFqdn": {
      "properties": {
        "value": {
          "type": "string",
          "description": "- The fully qualified domain name of the host.\n"
        }
      },
      "type": "object",
      "required": [
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getClusterV2NetworkNameServerIpListIpv4:getClusterV2NetworkNameServerIpListIpv4": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "- The prefix length of the network to which this host IPv4/IPv6 address belongs.\n"
        },
        "value": {
          "type": "string",
          "description": "- The fully qualified domain name of the host.\n"
        }
      },
      "type": "object",
      "required": [
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getClusterV2NetworkNameServerIpListIpv6:getClusterV2NetworkNameServerIpListIpv6": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "- The prefix length of the network to which this host IPv4/IPv6 address belongs.\n"
        },
        "value": {
          "type": "string",
          "description": "- The fully qualified domain name of the host.\n"
        }
      },
      "type": "object",
      "required": [
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getClusterV2NetworkNtpServerIpList:getClusterV2NetworkNtpServerIpList": {
      "properties": {
        "fqdns": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetClusterV2NetworkNtpServerIpListFqdn:getClusterV2NetworkNtpServerIpListFqdn"
          },
          "description": "- Fully Qualified Domain Name (FQDN) of the server.\n"
        },
        "ipv4s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetClusterV2NetworkNtpServerIpListIpv4:getClusterV2NetworkNtpServerIpListIpv4"
          },
          "description": "- An unique address that identifies a device on the internet or a local network in IPv4 format.\n"
        },
        "ipv6s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetClusterV2NetworkNtpServerIpListIpv6:getClusterV2NetworkNtpServerIpListIpv6"
          },
          "description": "- An unique address that identifies a device on the internet or a local network in IPv6 format.\n"
        }
      },
      "type": "object",
      "required": [
        "fqdns",
        "ipv4s",
        "ipv6s"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getClusterV2NetworkNtpServerIpListFqdn:getClusterV2NetworkNtpServerIpListFqdn": {
      "properties": {
        "value": {
          "type": "string",
          "description": "- The fully qualified domain name of the host.\n"
        }
      },
      "type": "object",
      "required": [
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getClusterV2NetworkNtpServerIpListIpv4:getClusterV2NetworkNtpServerIpListIpv4": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "- The prefix length of the network to which this host IPv4/IPv6 address belongs.\n"
        },
        "value": {
          "type": "string",
          "description": "- The fully qualified domain name of the host.\n"
        }
      },
      "type": "object",
      "required": [
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getClusterV2NetworkNtpServerIpListIpv6:getClusterV2NetworkNtpServerIpListIpv6": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "- The prefix length of the network to which this host IPv4/IPv6 address belongs.\n"
        },
        "value": {
          "type": "string",
          "description": "- The fully qualified domain name of the host.\n"
        }
      },
      "type": "object",
      "required": [
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getClusterV2NetworkSmtpServer:getClusterV2NetworkSmtpServer": {
      "properties": {
        "emailAddress": {
          "type": "string",
          "description": "- SMTP email address.\n"
        },
        "servers": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetClusterV2NetworkSmtpServerServer:getClusterV2NetworkSmtpServerServer"
          },
          "description": "- SMTP network details.\n"
        },
        "type": {
          "type": "string",
          "description": "- Type of management server.\nValid values are:\n- \"VCENTER\"   \tVcenter management server.\n"
        }
      },
      "type": "object",
      "required": [
        "emailAddress",
        "servers",
        "type"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getClusterV2NetworkSmtpServerServer:getClusterV2NetworkSmtpServerServer": {
      "properties": {
        "ipAddresses": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetClusterV2NetworkSmtpServerServerIpAddress:getClusterV2NetworkSmtpServerServerIpAddress"
          },
          "description": "- An unique address that identifies a device on the internet or a local network in IPv4/IPv6 format or a Fully Qualified Domain Name.\n"
        },
        "password": {
          "type": "string",
          "description": "- SMTP server password.\n"
        },
        "port": {
          "type": "integer",
          "description": "- SMTP port.\n"
        },
        "username": {
          "type": "string",
          "description": "- SMTP server user name.\n"
        }
      },
      "type": "object",
      "required": [
        "ipAddresses",
        "password",
        "port",
        "username"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getClusterV2NetworkSmtpServerServerIpAddress:getClusterV2NetworkSmtpServerServerIpAddress": {
      "properties": {
        "fqdns": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetClusterV2NetworkSmtpServerServerIpAddressFqdn:getClusterV2NetworkSmtpServerServerIpAddressFqdn"
          },
          "description": "- Fully Qualified Domain Name (FQDN) of the server.\n"
        },
        "ipv4s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetClusterV2NetworkSmtpServerServerIpAddressIpv4:getClusterV2NetworkSmtpServerServerIpAddressIpv4"
          },
          "description": "- An unique address that identifies a device on the internet or a local network in IPv4 format.\n"
        },
        "ipv6s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetClusterV2NetworkSmtpServerServerIpAddressIpv6:getClusterV2NetworkSmtpServerServerIpAddressIpv6"
          },
          "description": "- An unique address that identifies a device on the internet or a local network in IPv6 format.\n"
        }
      },
      "type": "object",
      "required": [
        "fqdns",
        "ipv4s",
        "ipv6s"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getClusterV2NetworkSmtpServerServerIpAddressFqdn:getClusterV2NetworkSmtpServerServerIpAddressFqdn": {
      "properties": {
        "value": {
          "type": "string",
          "description": "- The fully qualified domain name of the host.\n"
        }
      },
      "type": "object",
      "required": [
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getClusterV2NetworkSmtpServerServerIpAddressIpv4:getClusterV2NetworkSmtpServerServerIpAddressIpv4": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "- The prefix length of the network to which this host IPv4/IPv6 address belongs.\n"
        },
        "value": {
          "type": "string",
          "description": "- The fully qualified domain name of the host.\n"
        }
      },
      "type": "object",
      "required": [
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getClusterV2NetworkSmtpServerServerIpAddressIpv6:getClusterV2NetworkSmtpServerServerIpAddressIpv6": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "- The prefix length of the network to which this host IPv4/IPv6 address belongs.\n"
        },
        "value": {
          "type": "string",
          "description": "- The fully qualified domain name of the host.\n"
        }
      },
      "type": "object",
      "required": [
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getClusterV2Node:getClusterV2Node": {
      "properties": {
        "nodeLists": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetClusterV2NodeNodeList:getClusterV2NodeNodeList"
          },
          "description": "- List of nodes in a cluster.\n"
        },
        "numberOfNodes": {
          "type": "integer",
          "description": "- Number of nodes in a cluster.\n"
        }
      },
      "type": "object",
      "required": [
        "nodeLists",
        "numberOfNodes"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getClusterV2NodeNodeList:getClusterV2NodeNodeList": {
      "properties": {
        "controllerVmIps": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetClusterV2NodeNodeListControllerVmIp:getClusterV2NodeNodeListControllerVmIp"
          },
          "description": "- An unique address that identifies a device on the internet or a local network in IPv4 or IPv6 format.\n"
        },
        "hostIps": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetClusterV2NodeNodeListHostIp:getClusterV2NodeNodeListHostIp"
          },
          "description": "- An unique address that identifies a device on the internet or a local network in IPv4 or IPv6 format.\n"
        },
        "nodeUuid": {
          "type": "string",
          "description": "- UUID of the host.\n"
        }
      },
      "type": "object",
      "required": [
        "controllerVmIps",
        "hostIps",
        "nodeUuid"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getClusterV2NodeNodeListControllerVmIp:getClusterV2NodeNodeListControllerVmIp": {
      "properties": {
        "ipv4s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetClusterV2NodeNodeListControllerVmIpIpv4:getClusterV2NodeNodeListControllerVmIpIpv4"
          },
          "description": "- An unique address that identifies a device on the internet or a local network in IPv4 format.\n"
        },
        "ipv6s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetClusterV2NodeNodeListControllerVmIpIpv6:getClusterV2NodeNodeListControllerVmIpIpv6"
          },
          "description": "- An unique address that identifies a device on the internet or a local network in IPv6 format.\n"
        }
      },
      "type": "object",
      "required": [
        "ipv4s",
        "ipv6s"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getClusterV2NodeNodeListControllerVmIpIpv4:getClusterV2NodeNodeListControllerVmIpIpv4": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "- The prefix length of the network to which this host IPv4/IPv6 address belongs.\n"
        },
        "value": {
          "type": "string",
          "description": "- The fully qualified domain name of the host.\n"
        }
      },
      "type": "object",
      "required": [
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getClusterV2NodeNodeListControllerVmIpIpv6:getClusterV2NodeNodeListControllerVmIpIpv6": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "- The prefix length of the network to which this host IPv4/IPv6 address belongs.\n"
        },
        "value": {
          "type": "string",
          "description": "- The fully qualified domain name of the host.\n"
        }
      },
      "type": "object",
      "required": [
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getClusterV2NodeNodeListHostIp:getClusterV2NodeNodeListHostIp": {
      "properties": {
        "ipv4s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetClusterV2NodeNodeListHostIpIpv4:getClusterV2NodeNodeListHostIpIpv4"
          },
          "description": "- An unique address that identifies a device on the internet or a local network in IPv4 format.\n"
        },
        "ipv6s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetClusterV2NodeNodeListHostIpIpv6:getClusterV2NodeNodeListHostIpIpv6"
          },
          "description": "- An unique address that identifies a device on the internet or a local network in IPv6 format.\n"
        }
      },
      "type": "object",
      "required": [
        "ipv4s",
        "ipv6s"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getClusterV2NodeNodeListHostIpIpv4:getClusterV2NodeNodeListHostIpIpv4": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "- The prefix length of the network to which this host IPv4/IPv6 address belongs.\n"
        },
        "value": {
          "type": "string",
          "description": "- The fully qualified domain name of the host.\n"
        }
      },
      "type": "object",
      "required": [
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getClusterV2NodeNodeListHostIpIpv6:getClusterV2NodeNodeListHostIpIpv6": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "- The prefix length of the network to which this host IPv4/IPv6 address belongs.\n"
        },
        "value": {
          "type": "string",
          "description": "- The fully qualified domain name of the host.\n"
        }
      },
      "type": "object",
      "required": [
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getClustersEntity:getClustersEntity": {
      "properties": {
        "analysisVmEfficiencyMap": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          },
          "description": "- Map of cluster efficiency which includes numbers of inefficient vms. The value is populated by analytics on PC. (Readonly)\n"
        },
        "apiVersion": {
          "type": "string",
          "description": "The API version.\n"
        },
        "authorizedPublicKeyLists": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetClustersEntityAuthorizedPublicKeyList:getClustersEntityAuthorizedPublicKeyList"
          }
        },
        "build": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          },
          "description": "- Cluster build details.\n"
        },
        "caCertificateLists": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetClustersEntityCaCertificateList:getClustersEntityCaCertificateList"
          },
          "description": "- Zone name used in value of TZ environment variable.\n"
        },
        "categories": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetClustersEntityCategory:getClustersEntityCategory"
          },
          "description": "- Categories for the image.\n"
        },
        "certificationSigningInfo": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          },
          "description": "- Customer information used in Certificate Signing Request for creating digital certificates.\n"
        },
        "clientAuth": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          },
          "description": "- Client authentication config.\n"
        },
        "clusterArch": {
          "type": "string",
          "description": "- Cluster architecture. (Readonly, Options: Options : X86_64 , PPC64LE)\n"
        },
        "domainServerCredentials": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          },
          "description": "- Cluster domain credentials.\n"
        },
        "domainServerName": {
          "type": "string",
          "description": "- Joined domain name. In 'put' request, empty name will unjoin the cluster from current domain.\n"
        },
        "domainServerNameserver": {
          "type": "string",
          "description": "-  The IP of the nameserver that can resolve the domain name. Must set when joining the domain.\n"
        },
        "enabledFeatureLists": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "- Array of enabled features.\n"
        },
        "encryptionStatus": {
          "type": "string",
          "description": "- Cluster encryption status.\n"
        },
        "externalDataServicesIp": {
          "type": "string",
          "description": "- The cluster IP address that provides external entities access to various cluster data services.\n"
        },
        "externalIp": {
          "type": "string",
          "description": "- The local IP of cluster visible externally.\n"
        },
        "externalSubnet": {
          "type": "string",
          "description": "- External subnet for cross server communication. The format is IP/netmask. (default 172.16.0.0/255.240.0.0)\n"
        },
        "gpuDriverVersion": {
          "type": "string",
          "description": "- GPU driver version.\n"
        },
        "httpProxyLists": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetClustersEntityHttpProxyList:getClustersEntityHttpProxyList"
          },
          "description": "- List of proxies to connect to the service centers.\n"
        },
        "httpProxyWhitelists": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetClustersEntityHttpProxyWhitelist:getClustersEntityHttpProxyWhitelist"
          },
          "description": "- HTTP proxy whitelist.\n"
        },
        "internalSubnet": {
          "type": "string",
          "description": "- The internal subnet is local to every server - its not visible outside.iSCSI requests generated internally within the appliance (by user VMs or VMFS) are sent to the internal subnet. The format is IP/netmask.\n"
        },
        "isAvailable": {
          "type": "boolean",
          "description": "- Indicates if cluster is available to contact. (Readonly)\n"
        },
        "managementServerLists": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetClustersEntityManagementServerList:getClustersEntityManagementServerList"
          },
          "description": "- List of cluster management servers. (Readonly)\n"
        },
        "masqueradingIp": {
          "type": "string",
          "description": "- The cluster NAT'd or proxy IP which maps to the cluster local IP.\n"
        },
        "masqueradingPort": {
          "type": "integer",
          "description": "- Port used together with<span pulumi-lang-nodejs=\" masqueradingIp \" pulumi-lang-dotnet=\" MasqueradingIp \" pulumi-lang-go=\" masqueradingIp \" pulumi-lang-python=\" masquerading_ip \" pulumi-lang-yaml=\" masqueradingIp \" pulumi-lang-java=\" masqueradingIp \"> masquerading_ip </span>to connect to the cluster.\n"
        },
        "metadata": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          },
          "description": "- The image kind metadata.\n"
        },
        "name": {
          "type": "string",
          "description": "-  The name for the image.\n"
        },
        "nameServerIpLists": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "- The list of IP addresses of the name servers.\n"
        },
        "nfsSubnetWhitelists": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "- Comma separated list of subnets (of the form 'a.b.c.d/l.m.n.o') that are allowed to send NFS requests to this container. If not specified, the global NFS whitelist will be looked up for access permission. The internal subnet is always automatically considered part of the whitelist, even if the field below does not explicitly specify it. Similarly, all the hypervisor IPs are considered part of the whitelist. Finally, to permit debugging, all of the SVMs local IPs are considered to be implicitly part of the whitelist.\n"
        },
        "nodes": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetClustersEntityNode:getClustersEntityNode"
          }
        },
        "ntpServerIpLists": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "- The list of IP addresses or FQDNs of the NTP servers.\n"
        },
        "operationMode": {
          "type": "string",
          "description": "- Cluster operation mode. - 'NORMAL': Cluster is operating normally. - 'READ_ONLY': Cluster is operating in read only mode. - 'STAND_ALONE': Only one node is operational in the cluster. This is valid only for single node or two node clusters. - 'SWITCH_TO_TWO_NODE': Cluster is moving from single node to two node cluster. - 'OVERRIDE': Valid only for single node cluster. If the user wants to run vms on a single node cluster in read only mode, he can set the cluster peration mode to override. Writes will be allowed in override mode.\n"
        },
        "ownerReference": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          },
          "description": "- The reference to a user.\n"
        },
        "projectReference": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          },
          "description": "- The reference to a project.\n"
        },
        "serviceLists": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "- Array of enabled cluster services. For example, a cluster can function as both AOS and cloud data gateway. - 'AOS': Regular Prism Element - 'PRISM_CENTRAL': Prism Central - 'CLOUD_DATA_GATEWAY': Cloud backup and DR gateway - 'AFS': Cluster for file server - 'WITNESS' : Witness cluster - 'XI_PORTAL': Xi cluster.\n"
        },
        "smtpServerAddress": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          },
          "description": "- SMTP Server Address.\n"
        },
        "smtpServerCredentials": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          },
          "description": "- SMTP Server Credentials.\n"
        },
        "smtpServerEmailAddress": {
          "type": "string",
          "description": "- SMTP Server Email Address.\n"
        },
        "smtpServerProxyTypeLists": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "- SMTP Server Proxy Type List\n"
        },
        "smtpServerType": {
          "type": "string",
          "description": "- SMTP Server type.\n"
        },
        "softwareMapNcc": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          },
          "description": "- Map of software on the cluster with software type as the key.\n"
        },
        "softwareMapNos": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          },
          "description": "- Map of software on the cluster with software type as the key.\n"
        },
        "sslKeyExpireDatetime": {
          "type": "string",
          "description": "- UTC date and time in RFC-3339 format when the key expires\n"
        },
        "sslKeyName": {
          "type": "string"
        },
        "sslKeySigningInfo": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          },
          "description": "- Customer information used in Certificate Signing Request for creating digital certificates.\n"
        },
        "sslKeyType": {
          "type": "string",
          "description": "- SSL key type. Key types with RSA_2048, ECDSA_256 and ECDSA_384 are supported for key generation and importing.\n"
        },
        "state": {
          "type": "string",
          "description": "- The state of the cluster entity.\n"
        },
        "supportedInformationVerbosity": {
          "type": "string",
          "description": "- Verbosity level settings for populating support information. - 'Nothing': Send nothing - 'Basic': Send basic information - skip core dump and hypervisor stats information - 'BasicPlusCoreDump': Send basic and core dump information - 'All': Send all information (Default value: BASIC_PLUS_CORE_DUMP)\n"
        },
        "timezone": {
          "type": "string",
          "description": "- Zone name used in value of TZ environment variable.\n"
        }
      },
      "type": "object",
      "required": [
        "analysisVmEfficiencyMap",
        "apiVersion",
        "authorizedPublicKeyLists",
        "build",
        "caCertificateLists",
        "categories",
        "certificationSigningInfo",
        "clientAuth",
        "clusterArch",
        "domainServerCredentials",
        "domainServerName",
        "domainServerNameserver",
        "enabledFeatureLists",
        "encryptionStatus",
        "externalDataServicesIp",
        "externalIp",
        "externalSubnet",
        "gpuDriverVersion",
        "httpProxyLists",
        "httpProxyWhitelists",
        "internalSubnet",
        "isAvailable",
        "managementServerLists",
        "masqueradingIp",
        "masqueradingPort",
        "metadata",
        "name",
        "nameServerIpLists",
        "nfsSubnetWhitelists",
        "nodes",
        "ntpServerIpLists",
        "operationMode",
        "ownerReference",
        "projectReference",
        "serviceLists",
        "smtpServerAddress",
        "smtpServerCredentials",
        "smtpServerEmailAddress",
        "smtpServerProxyTypeLists",
        "smtpServerType",
        "softwareMapNcc",
        "softwareMapNos",
        "sslKeyExpireDatetime",
        "sslKeyName",
        "sslKeySigningInfo",
        "sslKeyType",
        "state",
        "supportedInformationVerbosity",
        "timezone"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getClustersEntityAuthorizedPublicKeyList:getClustersEntityAuthorizedPublicKeyList": {
      "properties": {
        "key": {
          "type": "string"
        },
        "name": {
          "type": "string",
          "description": "-  The name for the image.\n"
        }
      },
      "type": "object",
      "required": [
        "key",
        "name"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getClustersEntityCaCertificateList:getClustersEntityCaCertificateList": {
      "properties": {
        "caName": {
          "type": "string"
        },
        "certificate": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "caName",
        "certificate"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getClustersEntityCategory:getClustersEntityCategory": {
      "properties": {
        "name": {
          "type": "string",
          "description": "- the key name.\n"
        },
        "value": {
          "type": "string",
          "description": "- value of the key.\n"
        }
      },
      "type": "object",
      "required": [
        "name",
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getClustersEntityHttpProxyList:getClustersEntityHttpProxyList": {
      "properties": {
        "address": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          }
        },
        "credentials": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          }
        },
        "proxyTypeLists": {
          "type": "array",
          "items": {
            "type": "string"
          }
        }
      },
      "type": "object",
      "required": [
        "address",
        "credentials",
        "proxyTypeLists"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getClustersEntityHttpProxyWhitelist:getClustersEntityHttpProxyWhitelist": {
      "properties": {
        "target": {
          "type": "string"
        },
        "targetType": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "target",
        "targetType"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getClustersEntityManagementServerList:getClustersEntityManagementServerList": {
      "properties": {
        "drsEnabled": {
          "type": "boolean"
        },
        "ip": {
          "type": "string"
        },
        "statusLists": {
          "type": "array",
          "items": {
            "type": "string"
          }
        },
        "type": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "drsEnabled",
        "ip",
        "statusLists",
        "type"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getClustersEntityNode:getClustersEntityNode": {
      "properties": {
        "ip": {
          "type": "string"
        },
        "type": {
          "type": "string"
        },
        "version": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "ip",
        "type",
        "version"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getClustersV2ClusterEntity:getClustersV2ClusterEntity": {
      "properties": {
        "backupEligibilityScore": {
          "type": "integer",
          "description": "-  Score to indicate how much cluster is eligible for storing domain manager backup.\n"
        },
        "categories": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "-  List of categories associated to the PE cluster.\n"
        },
        "clusterProfileExtId": {
          "type": "string",
          "description": "-  Cluster profile UUID.\n"
        },
        "configs": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetClustersV2ClusterEntityConfig:getClustersV2ClusterEntityConfig"
          },
          "description": "-  Cluster configuration details.\n"
        },
        "containerName": {
          "type": "string",
          "description": "-  The name of the default container created as part of cluster creation. This is part of payload for cluster create operation only.\n"
        },
        "expand": {
          "type": "string",
          "description": "-(Optional) A URL query parameter that allows clients to request related resources when a resource that satisfies a particular request is retrieved. Each expanded item is evaluated relative to the entity containing the property being expanded. Other query options can be applied to an expanded property by appending a semicolon-separated list of query options, enclosed in parentheses, to the property name. Permissible system query options are \\$filter, \\$select and \\$orderby.\nThe <span pulumi-lang-nodejs=\"`expand`\" pulumi-lang-dotnet=\"`Expand`\" pulumi-lang-go=\"`expand`\" pulumi-lang-python=\"`expand`\" pulumi-lang-yaml=\"`expand`\" pulumi-lang-java=\"`expand`\">`expand`</span> can be applied on the following fields:\n- clusterProfile\n- storageSummary\n"
        },
        "extId": {
          "type": "string",
          "description": "-  A globally unique identifier of an instance that is suitable for external consumption.\n"
        },
        "inefficientVmCount": {
          "type": "integer",
          "description": "-  Number of inefficient VMs in the cluster.\n"
        },
        "links": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetClustersV2ClusterEntityLink:getClustersV2ClusterEntityLink"
          },
          "description": "- A HATEOAS style link for the response. Each link contains a user-friendly name identifying the link and an address for retrieving the particular resource.\n"
        },
        "name": {
          "type": "string",
          "description": "- HTTP Proxy server name configuration needed to access a cluster which is hosted behind a HTTP Proxy to not reveal its identity.\n"
        },
        "networks": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetClustersV2ClusterEntityNetwork:getClustersV2ClusterEntityNetwork"
          },
          "description": "-  Network details of a cluster.\n"
        },
        "nodes": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetClustersV2ClusterEntityNode:getClustersV2ClusterEntityNode"
          },
          "description": "-  Node reference for a cluster.\n"
        },
        "tenantId": {
          "type": "string",
          "description": "-  globally unique identifier that represents the tenant that owns this entity. The system automatically assigns it, and it and is immutable from an API consumer perspective (some use cases may cause this Id to change - For instance, a use case may require the transfer of ownership of the entity, but these cases are handled automatically on the server).\n"
        },
        "upgradeStatus": {
          "type": "string",
          "description": "-  Upgrade status of a cluster.\nValid values are:\n- \"CANCELLED\"\tThe cluster upgrade is cancelled.\n- \"FAILED\"\tThe cluster upgrade failed.\n- \"QUEUED\"\tThe cluster upgrade is in the queue.\n- \"SUCCEEDED\"\tThe cluster was upgraded successfully.\n- \"DOWNLOADING\" The luster upgrade is downloading.\n- \"PENDING\"The cluster upgrade is in pending state.\n- \"UPGRADING\" The cluster is in upgrade state.\n- \"PREUPGRADE\" The cluster is in pre-upgrade state.\n- \"SCHEDULED\" The cluster upgrade is in scheduled state.\n"
        },
        "vmCount": {
          "type": "integer",
          "description": "-  Number of VMs in the cluster.\n"
        }
      },
      "type": "object",
      "required": [
        "backupEligibilityScore",
        "categories",
        "clusterProfileExtId",
        "configs",
        "containerName",
        "extId",
        "inefficientVmCount",
        "links",
        "name",
        "networks",
        "nodes",
        "tenantId",
        "upgradeStatus",
        "vmCount"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getClustersV2ClusterEntityConfig:getClustersV2ClusterEntityConfig": {
      "properties": {
        "authorizedPublicKeyLists": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetClustersV2ClusterEntityConfigAuthorizedPublicKeyList:getClustersV2ClusterEntityConfigAuthorizedPublicKeyList"
          },
          "description": "- Public ssh key details. This is part of payload for cluster update operation only.\n"
        },
        "buildInfos": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetClustersV2ClusterEntityConfigBuildInfo:getClustersV2ClusterEntityConfigBuildInfo"
          },
          "description": "- Build information details.\n"
        },
        "clusterArch": {
          "type": "string",
          "description": "- Cluster arch.\nValid values are:\n- \"PPC64LE\" PPC64LE cluster architecture type.\n- \"X86_64\" X86_64 cluster architecture type.\n"
        },
        "clusterFunctions": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "- Cluster function. This is part of payload for cluster\ncreate operation only (allowed enum values for creation are AOS, ONE_NODE & TWO_NODE only).\nValid values are:\n- \"AOS\"\n- \"PRISM_CENTRAL\"\n- \"CLOUD_DATA_GATEWAY\"\n- \"AFS\"\n- \"ONE_NODE\"\n- \"TWO_NODE\"\n- \"ANALYTICS_PLATFORM\"\n"
        },
        "clusterSoftwareMaps": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetClustersV2ClusterEntityConfigClusterSoftwareMap:getClustersV2ClusterEntityConfigClusterSoftwareMap"
          },
          "description": "- Cluster software version details.\n"
        },
        "encryptionInTransitStatus": {
          "type": "string",
          "description": "- Encryption in transit Status.\nValid values are:\n- \"DISABLED\"\tDisabled encryption status.\n- \"ENABLED\" \tEnabled encryption status.\n"
        },
        "encryptionOptions": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "- Encryption option.\nValid values are:\n- \"SOFTWARE\".\n- \"HARDWARE\".\n- \"SOFTWARE_AND_HARDWARE\"\n"
        },
        "encryptionScopes": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "- Encryption scope.\nValid values are:\n- \"CLUSTER\".\n- \"CONTAINER\".\n"
        },
        "faultToleranceStates": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetClustersV2ClusterEntityConfigFaultToleranceState:getClustersV2ClusterEntityConfigFaultToleranceState"
          },
          "description": "- Fault tolerance state of a cluster.\n"
        },
        "hypervisorTypes": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "- Hypervisor types.\nValid values are:\n- \"AHV\".\n- \"ESX\".\n- \"HYPERV\".\n- \"XEN\".\n- \"NATIVEHOST\".\n"
        },
        "incarnationId": {
          "type": "integer",
          "description": "- Cluster incarnation Id. This is part of payload for cluster update operation only.\n"
        },
        "isAvailable": {
          "type": "boolean",
          "description": "- Indicates if cluster is available to contact or not.\n"
        },
        "isLts": {
          "type": "boolean",
          "description": "- Indicates whether the release is categorized as Long-term or not.\n"
        },
        "isPasswordRemoteLoginEnabled": {
          "type": "boolean",
          "description": "- Indicates whether the password ssh into the cluster is enabled or not.\n"
        },
        "isRemoteSupportEnabled": {
          "type": "boolean",
          "description": "- Remote support status.\n"
        },
        "operationMode": {
          "type": "string",
          "description": "- Cluster operation mode. This is part of payload for cluster\nupdate operation only.\nValid values are:\n- \"OVERRIDE\"\tOverride operation mode.\n- \"STAND_ALONE\"\tStand-alone operation mode.\n- \"SWITCH_TO_TWO_NODE\"\tSwitch to two-node operation mode.\n- \"NORMAL\"\tNormal operation mode.\n- \"READ_ONLY\"\tRead-only operation mode.\n"
        },
        "pulseStatuses": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetClustersV2ClusterEntityConfigPulseStatus:getClustersV2ClusterEntityConfigPulseStatus"
          },
          "description": "- Pulse status for a cluster.\n"
        },
        "redundancyFactor": {
          "type": "integer",
          "description": "- Redundancy factor of a cluster. This is part of payload for both cluster create & update operations.\n"
        },
        "timezone": {
          "type": "string",
          "description": "- Time zone on a cluster.\n"
        }
      },
      "type": "object",
      "required": [
        "authorizedPublicKeyLists",
        "buildInfos",
        "clusterArch",
        "clusterFunctions",
        "clusterSoftwareMaps",
        "encryptionInTransitStatus",
        "encryptionOptions",
        "encryptionScopes",
        "faultToleranceStates",
        "hypervisorTypes",
        "incarnationId",
        "isAvailable",
        "isLts",
        "isPasswordRemoteLoginEnabled",
        "isRemoteSupportEnabled",
        "operationMode",
        "pulseStatuses",
        "redundancyFactor",
        "timezone"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getClustersV2ClusterEntityConfigAuthorizedPublicKeyList:getClustersV2ClusterEntityConfigAuthorizedPublicKeyList": {
      "properties": {
        "key": {
          "type": "string",
          "description": "- SSH key value.\n"
        },
        "name": {
          "type": "string",
          "description": "- HTTP Proxy server name configuration needed to access a cluster which is hosted behind a HTTP Proxy to not reveal its identity.\n"
        }
      },
      "type": "object",
      "required": [
        "key",
        "name"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getClustersV2ClusterEntityConfigBuildInfo:getClustersV2ClusterEntityConfigBuildInfo": {
      "properties": {
        "buildType": {
          "type": "string",
          "description": "- Software build type.\n"
        },
        "commitId": {
          "type": "string",
          "description": "- Commit ID used for version.\n"
        },
        "fullVersion": {
          "type": "string",
          "description": "- Full name of software version.\n"
        },
        "shortCommitId": {
          "type": "string",
          "description": "- Short commit Id used for version.\n"
        },
        "version": {
          "type": "string",
          "description": "- Software version.\n"
        }
      },
      "type": "object",
      "required": [
        "buildType",
        "commitId",
        "fullVersion",
        "shortCommitId",
        "version"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getClustersV2ClusterEntityConfigClusterSoftwareMap:getClustersV2ClusterEntityConfigClusterSoftwareMap": {
      "properties": {
        "softwareType": {
          "type": "string",
          "description": "- Software type. This is part of payload for cluster create operation only.\nValid values are:\n- \"PRISM_CENTRAL\": Prism Central software type.\n- \"NOS\": NOS software.\n- \"NCC\": NCC software.\n"
        },
        "version": {
          "type": "string",
          "description": "- Software version.\n"
        }
      },
      "type": "object",
      "required": [
        "softwareType",
        "version"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getClustersV2ClusterEntityConfigFaultToleranceState:getClustersV2ClusterEntityConfigFaultToleranceState": {
      "properties": {
        "currentClusterFaultTolerance": {
          "type": "string",
          "description": "- Cluster Fault tolerance. Set desiredClusterFaultTolerance for cluster create and update.\nValid values are:\n- \"CFT_1N_OR_1D\":     - System can handle fault of one node or one disk.\n- \"CFT_2N_OR_2D\":     - System can handle fault of two nodes or two disks.\n- \"CFT_1N_AND_1D\":    - System can handle fault of one node and one disk on the other node simultaneously.\n- \"CFT_0N_AND_0D\":    - System can not handle any fault with a node or a disk.\n"
        },
        "currentMaxFaultTolerance": {
          "type": "integer",
          "description": "- Maximum fault tolerance that is supported currently.\n"
        },
        "desiredClusterFaultTolerance": {
          "type": "string",
          "description": "- Cluster Fault tolerance. Set desiredClusterFaultTolerance for cluster create and update.\nValid values are:\n- \"CFT_1N_OR_1D\":     - System can handle fault of one node or one disk.\n- \"CFT_2N_OR_2D\":     - System can handle fault of two nodes or two disks.\n- \"CFT_1N_AND_1D\":    - System can handle fault of one node and one disk on the other node simultaneously.\n- \"CFT_0N_AND_0D\":    - System can not handle any fault with a node or a disk.\n"
        },
        "desiredMaxFaultTolerance": {
          "type": "integer",
          "description": "- Maximum fault tolerance desired.\n"
        },
        "domainAwarenessLevel": {
          "type": "string",
          "description": "- Domain awareness level corresponds to unit of cluster group. This is part of payload for both cluster create & update operations.\nValid values are:\n- \"RACK\"\tRack level awareness.\n- \"NODE\"\tNode level awareness.\n- \"BLOCK\"\tBlock level awareness.\n- \"DISK\"\tDisk level awareness.\n"
        },
        "redundancyStatuses": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetClustersV2ClusterEntityConfigFaultToleranceStateRedundancyStatus:getClustersV2ClusterEntityConfigFaultToleranceStateRedundancyStatus"
          },
          "description": "- Redundancy Status of the cluster\n"
        }
      },
      "type": "object",
      "required": [
        "currentClusterFaultTolerance",
        "currentMaxFaultTolerance",
        "desiredClusterFaultTolerance",
        "desiredMaxFaultTolerance",
        "domainAwarenessLevel",
        "redundancyStatuses"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getClustersV2ClusterEntityConfigFaultToleranceStateRedundancyStatus:getClustersV2ClusterEntityConfigFaultToleranceStateRedundancyStatus": {
      "properties": {
        "isCassandraPreparationDone": {
          "type": "boolean",
          "description": "- Boolean flag to indicate if Cassandra ensemble can meet the desired FT.\n"
        },
        "isZookeeperPreparationDone": {
          "type": "boolean",
          "description": "- Boolean flag to indicate if Zookeeper ensemble can meet the desired FT.\n"
        }
      },
      "type": "object",
      "required": [
        "isCassandraPreparationDone",
        "isZookeeperPreparationDone"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getClustersV2ClusterEntityConfigPulseStatus:getClustersV2ClusterEntityConfigPulseStatus": {
      "properties": {
        "isEnabled": {
          "type": "boolean",
          "description": "- (Optional) Flag to indicate if pulse is enabled or not.\n"
        },
        "piiScrubbingLevel": {
          "type": "string",
          "description": "- (Optional) PII scrubbing level.\nValid values are:\n- \"ALL\" :\tScrub All PII Information from Pulse including data like entity names and IP addresses.\n- \"DEFAULT\":\tDefault PII Scrubbing level. Data like entity names and IP addresses will not be scrubbed from Pulse.\n"
        }
      },
      "type": "object",
      "required": [
        "isEnabled",
        "piiScrubbingLevel"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getClustersV2ClusterEntityLink:getClustersV2ClusterEntityLink": {
      "properties": {
        "href": {
          "type": "string"
        },
        "rel": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "href",
        "rel"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getClustersV2ClusterEntityNetwork:getClustersV2ClusterEntityNetwork": {
      "properties": {
        "backplanes": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetClustersV2ClusterEntityNetworkBackplane:getClustersV2ClusterEntityNetworkBackplane"
          },
          "description": "- Params associated to the backplane network segmentation. This is part of payload for cluster create operation only.\n"
        },
        "externalAddresses": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetClustersV2ClusterEntityNetworkExternalAddress:getClustersV2ClusterEntityNetworkExternalAddress"
          },
          "description": "- An unique address that identifies a device on the internet or a local network in IPv4 or IPv6 format.\n"
        },
        "externalDataServicesIps": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetClustersV2ClusterEntityNetworkExternalDataServicesIp:getClustersV2ClusterEntityNetworkExternalDataServicesIp"
          },
          "description": "- An unique address that identifies a device on the internet or a local network in IPv4 or IPv6 format.\n"
        },
        "externalSubnet": {
          "type": "string",
          "description": "- Cluster external subnet address.\n"
        },
        "fqdn": {
          "type": "string",
          "description": "- Cluster fully qualified domain name. This is part of payload for cluster update operation only.\n"
        },
        "httpProxyLists": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetClustersV2ClusterEntityNetworkHttpProxyList:getClustersV2ClusterEntityNetworkHttpProxyList"
          },
          "description": "- List of HTTP Proxy server configuration needed to access a cluster which is hosted behind a HTTP Proxy to not reveal its identity.\n"
        },
        "httpProxyWhiteLists": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetClustersV2ClusterEntityNetworkHttpProxyWhiteList:getClustersV2ClusterEntityNetworkHttpProxyWhiteList"
          }
        },
        "internalSubnet": {
          "type": "string",
          "description": "- Cluster internal subnet address.\n"
        },
        "keyManagementServerType": {
          "type": "string",
          "description": "- Key management server type.\nValid values are:\n- \"PRISM_CENTRAL\"\tPrism Central management server.\n- \"EXTERNAL\"\tExternal management server.\n- \"LOCAL\"\tLocal management server.\n"
        },
        "managementServers": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetClustersV2ClusterEntityNetworkManagementServer:getClustersV2ClusterEntityNetworkManagementServer"
          },
          "description": "- Management server information.\n"
        },
        "masqueradingIps": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetClustersV2ClusterEntityNetworkMasqueradingIp:getClustersV2ClusterEntityNetworkMasqueradingIp"
          },
          "description": "- An unique address that identifies a device on the internet or a local network in IPv4 or IPv6 format.\n"
        },
        "masqueradingPort": {
          "type": "string",
          "description": "- The port to connect to the cluster when using masquerading IP.\n"
        },
        "nameServerIpLists": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetClustersV2ClusterEntityNetworkNameServerIpList:getClustersV2ClusterEntityNetworkNameServerIpList"
          },
          "description": "- List of name servers on a cluster. This is part of payload for both cluster create & update operations. For create operation, only ipv4 address / fqdn values are supported currently\n"
        },
        "nfsSubnetWhiteLists": {
          "type": "array",
          "items": {
            "type": "string"
          }
        },
        "ntpServerIpLists": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetClustersV2ClusterEntityNetworkNtpServerIpList:getClustersV2ClusterEntityNetworkNtpServerIpList"
          },
          "description": "- List of NTP servers on a cluster. This is part of payload for both cluster create & update operations. For create operation, only ipv4 address / fqdn values are supported currently.\n"
        },
        "smtpServers": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetClustersV2ClusterEntityNetworkSmtpServer:getClustersV2ClusterEntityNetworkSmtpServer"
          },
          "description": "- SMTP servers on a cluster. This is part of payload for cluster update operation only.\n"
        }
      },
      "type": "object",
      "required": [
        "backplanes",
        "externalAddresses",
        "externalDataServicesIps",
        "externalSubnet",
        "fqdn",
        "httpProxyLists",
        "httpProxyWhiteLists",
        "internalSubnet",
        "keyManagementServerType",
        "managementServers",
        "masqueradingIps",
        "masqueradingPort",
        "nameServerIpLists",
        "nfsSubnetWhiteLists",
        "ntpServerIpLists",
        "smtpServers"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getClustersV2ClusterEntityNetworkBackplane:getClustersV2ClusterEntityNetworkBackplane": {
      "properties": {
        "isSegmentationEnabled": {
          "type": "boolean",
          "description": "- Flag to indicate if the backplane segmentation needs to be enabled or not.\n"
        },
        "netmasks": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetClustersV2ClusterEntityNetworkBackplaneNetmask:getClustersV2ClusterEntityNetworkBackplaneNetmask"
          },
          "description": "- An unique address that identifies a device on the internet or a local network in IPv4 format.\n"
        },
        "subnets": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetClustersV2ClusterEntityNetworkBackplaneSubnet:getClustersV2ClusterEntityNetworkBackplaneSubnet"
          },
          "description": "- An unique address that identifies a device on the internet or a local network in IPv4 format.\n"
        },
        "vlanTag": {
          "type": "integer",
          "description": "- VLAN Id tagged to the backplane network on the cluster. This is part of cluster create payload.\n"
        }
      },
      "type": "object",
      "required": [
        "isSegmentationEnabled",
        "netmasks",
        "subnets",
        "vlanTag"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getClustersV2ClusterEntityNetworkBackplaneNetmask:getClustersV2ClusterEntityNetworkBackplaneNetmask": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "- The prefix length of the network to which this host IPv4/IPv6 address belongs.\n"
        },
        "value": {
          "type": "string",
          "description": "- The fully qualified domain name of the host.\n"
        }
      },
      "type": "object",
      "required": [
        "prefixLength",
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getClustersV2ClusterEntityNetworkBackplaneSubnet:getClustersV2ClusterEntityNetworkBackplaneSubnet": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "- The prefix length of the network to which this host IPv4/IPv6 address belongs.\n"
        },
        "value": {
          "type": "string",
          "description": "- The fully qualified domain name of the host.\n"
        }
      },
      "type": "object",
      "required": [
        "prefixLength",
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getClustersV2ClusterEntityNetworkExternalAddress:getClustersV2ClusterEntityNetworkExternalAddress": {
      "properties": {
        "ipv4s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetClustersV2ClusterEntityNetworkExternalAddressIpv4:getClustersV2ClusterEntityNetworkExternalAddressIpv4"
          },
          "description": "- An unique address that identifies a device on the internet or a local network in IPv4 format.\n"
        },
        "ipv6s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetClustersV2ClusterEntityNetworkExternalAddressIpv6:getClustersV2ClusterEntityNetworkExternalAddressIpv6"
          },
          "description": "- An unique address that identifies a device on the internet or a local network in IPv6 format.\n"
        }
      },
      "type": "object",
      "required": [
        "ipv4s",
        "ipv6s"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getClustersV2ClusterEntityNetworkExternalAddressIpv4:getClustersV2ClusterEntityNetworkExternalAddressIpv4": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "- The prefix length of the network to which this host IPv4/IPv6 address belongs.\n"
        },
        "value": {
          "type": "string",
          "description": "- The fully qualified domain name of the host.\n"
        }
      },
      "type": "object",
      "required": [
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getClustersV2ClusterEntityNetworkExternalAddressIpv6:getClustersV2ClusterEntityNetworkExternalAddressIpv6": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "- The prefix length of the network to which this host IPv4/IPv6 address belongs.\n"
        },
        "value": {
          "type": "string",
          "description": "- The fully qualified domain name of the host.\n"
        }
      },
      "type": "object",
      "required": [
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getClustersV2ClusterEntityNetworkExternalDataServicesIp:getClustersV2ClusterEntityNetworkExternalDataServicesIp": {
      "properties": {
        "ipv4s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetClustersV2ClusterEntityNetworkExternalDataServicesIpIpv4:getClustersV2ClusterEntityNetworkExternalDataServicesIpIpv4"
          },
          "description": "- An unique address that identifies a device on the internet or a local network in IPv4 format.\n"
        },
        "ipv6s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetClustersV2ClusterEntityNetworkExternalDataServicesIpIpv6:getClustersV2ClusterEntityNetworkExternalDataServicesIpIpv6"
          },
          "description": "- An unique address that identifies a device on the internet or a local network in IPv6 format.\n"
        }
      },
      "type": "object",
      "required": [
        "ipv4s",
        "ipv6s"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getClustersV2ClusterEntityNetworkExternalDataServicesIpIpv4:getClustersV2ClusterEntityNetworkExternalDataServicesIpIpv4": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "- The prefix length of the network to which this host IPv4/IPv6 address belongs.\n"
        },
        "value": {
          "type": "string",
          "description": "- The fully qualified domain name of the host.\n"
        }
      },
      "type": "object",
      "required": [
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getClustersV2ClusterEntityNetworkExternalDataServicesIpIpv6:getClustersV2ClusterEntityNetworkExternalDataServicesIpIpv6": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "- The prefix length of the network to which this host IPv4/IPv6 address belongs.\n"
        },
        "value": {
          "type": "string",
          "description": "- The fully qualified domain name of the host.\n"
        }
      },
      "type": "object",
      "required": [
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getClustersV2ClusterEntityNetworkHttpProxyList:getClustersV2ClusterEntityNetworkHttpProxyList": {
      "properties": {
        "ipAddresses": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetClustersV2ClusterEntityNetworkHttpProxyListIpAddress:getClustersV2ClusterEntityNetworkHttpProxyListIpAddress"
          },
          "description": "- An unique address that identifies a device on the internet or a local network in IPv4/IPv6 format or a Fully Qualified Domain Name.\n"
        },
        "name": {
          "type": "string",
          "description": "- HTTP Proxy server name configuration needed to access a cluster which is hosted behind a HTTP Proxy to not reveal its identity.\n"
        },
        "password": {
          "type": "string",
          "description": "- SMTP server password.\n"
        },
        "port": {
          "type": "integer",
          "description": "- SMTP port.\n"
        },
        "proxyTypes": {
          "type": "array",
          "items": {
            "type": "string"
          }
        },
        "username": {
          "type": "string",
          "description": "- SMTP server user name.\n"
        }
      },
      "type": "object",
      "required": [
        "ipAddresses",
        "name",
        "password",
        "port",
        "proxyTypes",
        "username"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getClustersV2ClusterEntityNetworkHttpProxyListIpAddress:getClustersV2ClusterEntityNetworkHttpProxyListIpAddress": {
      "properties": {
        "ipv4s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetClustersV2ClusterEntityNetworkHttpProxyListIpAddressIpv4:getClustersV2ClusterEntityNetworkHttpProxyListIpAddressIpv4"
          },
          "description": "- An unique address that identifies a device on the internet or a local network in IPv4 format.\n"
        },
        "ipv6s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetClustersV2ClusterEntityNetworkHttpProxyListIpAddressIpv6:getClustersV2ClusterEntityNetworkHttpProxyListIpAddressIpv6"
          },
          "description": "- An unique address that identifies a device on the internet or a local network in IPv6 format.\n"
        }
      },
      "type": "object",
      "required": [
        "ipv4s",
        "ipv6s"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getClustersV2ClusterEntityNetworkHttpProxyListIpAddressIpv4:getClustersV2ClusterEntityNetworkHttpProxyListIpAddressIpv4": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "- The prefix length of the network to which this host IPv4/IPv6 address belongs.\n"
        },
        "value": {
          "type": "string",
          "description": "- The fully qualified domain name of the host.\n"
        }
      },
      "type": "object",
      "required": [
        "prefixLength",
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getClustersV2ClusterEntityNetworkHttpProxyListIpAddressIpv6:getClustersV2ClusterEntityNetworkHttpProxyListIpAddressIpv6": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "- The prefix length of the network to which this host IPv4/IPv6 address belongs.\n"
        },
        "value": {
          "type": "string",
          "description": "- The fully qualified domain name of the host.\n"
        }
      },
      "type": "object",
      "required": [
        "prefixLength",
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getClustersV2ClusterEntityNetworkHttpProxyWhiteList:getClustersV2ClusterEntityNetworkHttpProxyWhiteList": {
      "properties": {
        "target": {
          "type": "string",
          "description": "- Target's identifier which is exempted from going through the configured HTTP Proxy.\n"
        },
        "targetType": {
          "type": "string",
          "description": "- Type of the target which is exempted from going through the configured HTTP Proxy.\nValid values are:\n- \"IPV6_ADDRESS\"\tIPV6 address.\n- \"HOST_NAME\"\tName of the host.\n- \"DOMAIN_NAME_SUFFIX\" Domain Name Suffix required for http proxy whitelist.\n- \"IPV4_NETWORK_MASK\" Network Mask of the IpV4 family.\n- \"IPV4_ADDRESS\" IPV4 address.\n"
        }
      },
      "type": "object",
      "required": [
        "target",
        "targetType"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getClustersV2ClusterEntityNetworkManagementServer:getClustersV2ClusterEntityNetworkManagementServer": {
      "properties": {
        "ips": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetClustersV2ClusterEntityNetworkManagementServerIp:getClustersV2ClusterEntityNetworkManagementServerIp"
          },
          "description": "- An unique address that identifies a device on the internet or a local network in IPv4/IPv6 format or a Fully Qualified Domain Name.\n"
        },
        "isDrsEnabled": {
          "type": "boolean",
          "description": "- Indicates whether it is DRS enabled or not.\n"
        },
        "isInUse": {
          "type": "boolean",
          "description": "- Indicates whether the host is managed by an entity or not.\n"
        },
        "isRegistered": {
          "type": "boolean",
          "description": "- Indicates whether it is registered or not.\n"
        },
        "type": {
          "type": "boolean",
          "description": "- Type of management server.\nValid values are:\n- \"VCENTER\"   \tVcenter management server.\n"
        }
      },
      "type": "object",
      "required": [
        "ips",
        "isDrsEnabled",
        "isInUse",
        "isRegistered",
        "type"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getClustersV2ClusterEntityNetworkManagementServerIp:getClustersV2ClusterEntityNetworkManagementServerIp": {
      "properties": {
        "ipv4s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetClustersV2ClusterEntityNetworkManagementServerIpIpv4:getClustersV2ClusterEntityNetworkManagementServerIpIpv4"
          },
          "description": "- An unique address that identifies a device on the internet or a local network in IPv4 format.\n"
        },
        "ipv6s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetClustersV2ClusterEntityNetworkManagementServerIpIpv6:getClustersV2ClusterEntityNetworkManagementServerIpIpv6"
          },
          "description": "- An unique address that identifies a device on the internet or a local network in IPv6 format.\n"
        }
      },
      "type": "object",
      "required": [
        "ipv4s",
        "ipv6s"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getClustersV2ClusterEntityNetworkManagementServerIpIpv4:getClustersV2ClusterEntityNetworkManagementServerIpIpv4": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "- The prefix length of the network to which this host IPv4/IPv6 address belongs.\n"
        },
        "value": {
          "type": "string",
          "description": "- The fully qualified domain name of the host.\n"
        }
      },
      "type": "object",
      "required": [
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getClustersV2ClusterEntityNetworkManagementServerIpIpv6:getClustersV2ClusterEntityNetworkManagementServerIpIpv6": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "- The prefix length of the network to which this host IPv4/IPv6 address belongs.\n"
        },
        "value": {
          "type": "string",
          "description": "- The fully qualified domain name of the host.\n"
        }
      },
      "type": "object",
      "required": [
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getClustersV2ClusterEntityNetworkMasqueradingIp:getClustersV2ClusterEntityNetworkMasqueradingIp": {
      "properties": {
        "ipv4s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetClustersV2ClusterEntityNetworkMasqueradingIpIpv4:getClustersV2ClusterEntityNetworkMasqueradingIpIpv4"
          },
          "description": "- An unique address that identifies a device on the internet or a local network in IPv4 format.\n"
        },
        "ipv6s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetClustersV2ClusterEntityNetworkMasqueradingIpIpv6:getClustersV2ClusterEntityNetworkMasqueradingIpIpv6"
          },
          "description": "- An unique address that identifies a device on the internet or a local network in IPv6 format.\n"
        }
      },
      "type": "object",
      "required": [
        "ipv4s",
        "ipv6s"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getClustersV2ClusterEntityNetworkMasqueradingIpIpv4:getClustersV2ClusterEntityNetworkMasqueradingIpIpv4": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "- The prefix length of the network to which this host IPv4/IPv6 address belongs.\n"
        },
        "value": {
          "type": "string",
          "description": "- The fully qualified domain name of the host.\n"
        }
      },
      "type": "object",
      "required": [
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getClustersV2ClusterEntityNetworkMasqueradingIpIpv6:getClustersV2ClusterEntityNetworkMasqueradingIpIpv6": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "- The prefix length of the network to which this host IPv4/IPv6 address belongs.\n"
        },
        "value": {
          "type": "string",
          "description": "- The fully qualified domain name of the host.\n"
        }
      },
      "type": "object",
      "required": [
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getClustersV2ClusterEntityNetworkNameServerIpList:getClustersV2ClusterEntityNetworkNameServerIpList": {
      "properties": {
        "fqdns": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetClustersV2ClusterEntityNetworkNameServerIpListFqdn:getClustersV2ClusterEntityNetworkNameServerIpListFqdn"
          },
          "description": "- Cluster fully qualified domain name. This is part of payload for cluster update operation only.\n"
        },
        "ipv4s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetClustersV2ClusterEntityNetworkNameServerIpListIpv4:getClustersV2ClusterEntityNetworkNameServerIpListIpv4"
          },
          "description": "- An unique address that identifies a device on the internet or a local network in IPv4 format.\n"
        },
        "ipv6s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetClustersV2ClusterEntityNetworkNameServerIpListIpv6:getClustersV2ClusterEntityNetworkNameServerIpListIpv6"
          },
          "description": "- An unique address that identifies a device on the internet or a local network in IPv6 format.\n"
        }
      },
      "type": "object",
      "required": [
        "fqdns",
        "ipv4s",
        "ipv6s"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getClustersV2ClusterEntityNetworkNameServerIpListFqdn:getClustersV2ClusterEntityNetworkNameServerIpListFqdn": {
      "properties": {
        "value": {
          "type": "string",
          "description": "- The fully qualified domain name of the host.\n"
        }
      },
      "type": "object",
      "required": [
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getClustersV2ClusterEntityNetworkNameServerIpListIpv4:getClustersV2ClusterEntityNetworkNameServerIpListIpv4": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "- The prefix length of the network to which this host IPv4/IPv6 address belongs.\n"
        },
        "value": {
          "type": "string",
          "description": "- The fully qualified domain name of the host.\n"
        }
      },
      "type": "object",
      "required": [
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getClustersV2ClusterEntityNetworkNameServerIpListIpv6:getClustersV2ClusterEntityNetworkNameServerIpListIpv6": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "- The prefix length of the network to which this host IPv4/IPv6 address belongs.\n"
        },
        "value": {
          "type": "string",
          "description": "- The fully qualified domain name of the host.\n"
        }
      },
      "type": "object",
      "required": [
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getClustersV2ClusterEntityNetworkNtpServerIpList:getClustersV2ClusterEntityNetworkNtpServerIpList": {
      "properties": {
        "fqdns": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetClustersV2ClusterEntityNetworkNtpServerIpListFqdn:getClustersV2ClusterEntityNetworkNtpServerIpListFqdn"
          },
          "description": "- Cluster fully qualified domain name. This is part of payload for cluster update operation only.\n"
        },
        "ipv4s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetClustersV2ClusterEntityNetworkNtpServerIpListIpv4:getClustersV2ClusterEntityNetworkNtpServerIpListIpv4"
          },
          "description": "- An unique address that identifies a device on the internet or a local network in IPv4 format.\n"
        },
        "ipv6s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetClustersV2ClusterEntityNetworkNtpServerIpListIpv6:getClustersV2ClusterEntityNetworkNtpServerIpListIpv6"
          },
          "description": "- An unique address that identifies a device on the internet or a local network in IPv6 format.\n"
        }
      },
      "type": "object",
      "required": [
        "fqdns",
        "ipv4s",
        "ipv6s"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getClustersV2ClusterEntityNetworkNtpServerIpListFqdn:getClustersV2ClusterEntityNetworkNtpServerIpListFqdn": {
      "properties": {
        "value": {
          "type": "string",
          "description": "- The fully qualified domain name of the host.\n"
        }
      },
      "type": "object",
      "required": [
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getClustersV2ClusterEntityNetworkNtpServerIpListIpv4:getClustersV2ClusterEntityNetworkNtpServerIpListIpv4": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "- The prefix length of the network to which this host IPv4/IPv6 address belongs.\n"
        },
        "value": {
          "type": "string",
          "description": "- The fully qualified domain name of the host.\n"
        }
      },
      "type": "object",
      "required": [
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getClustersV2ClusterEntityNetworkNtpServerIpListIpv6:getClustersV2ClusterEntityNetworkNtpServerIpListIpv6": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "- The prefix length of the network to which this host IPv4/IPv6 address belongs.\n"
        },
        "value": {
          "type": "string",
          "description": "- The fully qualified domain name of the host.\n"
        }
      },
      "type": "object",
      "required": [
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getClustersV2ClusterEntityNetworkSmtpServer:getClustersV2ClusterEntityNetworkSmtpServer": {
      "properties": {
        "emailAddress": {
          "type": "string",
          "description": "- SMTP email address.\n"
        },
        "servers": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetClustersV2ClusterEntityNetworkSmtpServerServer:getClustersV2ClusterEntityNetworkSmtpServerServer"
          },
          "description": "- SMTP network details.\n"
        },
        "type": {
          "type": "string",
          "description": "- Type of management server.\nValid values are:\n- \"VCENTER\"   \tVcenter management server.\n"
        }
      },
      "type": "object",
      "required": [
        "emailAddress",
        "servers",
        "type"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getClustersV2ClusterEntityNetworkSmtpServerServer:getClustersV2ClusterEntityNetworkSmtpServerServer": {
      "properties": {
        "ipAddresses": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetClustersV2ClusterEntityNetworkSmtpServerServerIpAddress:getClustersV2ClusterEntityNetworkSmtpServerServerIpAddress"
          },
          "description": "- An unique address that identifies a device on the internet or a local network in IPv4/IPv6 format or a Fully Qualified Domain Name.\n"
        },
        "password": {
          "type": "string",
          "description": "- SMTP server password.\n"
        },
        "port": {
          "type": "integer",
          "description": "- SMTP port.\n"
        },
        "username": {
          "type": "string",
          "description": "- SMTP server user name.\n"
        }
      },
      "type": "object",
      "required": [
        "ipAddresses",
        "password",
        "port",
        "username"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getClustersV2ClusterEntityNetworkSmtpServerServerIpAddress:getClustersV2ClusterEntityNetworkSmtpServerServerIpAddress": {
      "properties": {
        "fqdns": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetClustersV2ClusterEntityNetworkSmtpServerServerIpAddressFqdn:getClustersV2ClusterEntityNetworkSmtpServerServerIpAddressFqdn"
          },
          "description": "- Cluster fully qualified domain name. This is part of payload for cluster update operation only.\n"
        },
        "ipv4s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetClustersV2ClusterEntityNetworkSmtpServerServerIpAddressIpv4:getClustersV2ClusterEntityNetworkSmtpServerServerIpAddressIpv4"
          },
          "description": "- An unique address that identifies a device on the internet or a local network in IPv4 format.\n"
        },
        "ipv6s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetClustersV2ClusterEntityNetworkSmtpServerServerIpAddressIpv6:getClustersV2ClusterEntityNetworkSmtpServerServerIpAddressIpv6"
          },
          "description": "- An unique address that identifies a device on the internet or a local network in IPv6 format.\n"
        }
      },
      "type": "object",
      "required": [
        "fqdns",
        "ipv4s",
        "ipv6s"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getClustersV2ClusterEntityNetworkSmtpServerServerIpAddressFqdn:getClustersV2ClusterEntityNetworkSmtpServerServerIpAddressFqdn": {
      "properties": {
        "value": {
          "type": "string",
          "description": "- The fully qualified domain name of the host.\n"
        }
      },
      "type": "object",
      "required": [
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getClustersV2ClusterEntityNetworkSmtpServerServerIpAddressIpv4:getClustersV2ClusterEntityNetworkSmtpServerServerIpAddressIpv4": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "- The prefix length of the network to which this host IPv4/IPv6 address belongs.\n"
        },
        "value": {
          "type": "string",
          "description": "- The fully qualified domain name of the host.\n"
        }
      },
      "type": "object",
      "required": [
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getClustersV2ClusterEntityNetworkSmtpServerServerIpAddressIpv6:getClustersV2ClusterEntityNetworkSmtpServerServerIpAddressIpv6": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "- The prefix length of the network to which this host IPv4/IPv6 address belongs.\n"
        },
        "value": {
          "type": "string",
          "description": "- The fully qualified domain name of the host.\n"
        }
      },
      "type": "object",
      "required": [
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getClustersV2ClusterEntityNode:getClustersV2ClusterEntityNode": {
      "properties": {
        "nodeLists": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetClustersV2ClusterEntityNodeNodeList:getClustersV2ClusterEntityNodeNodeList"
          },
          "description": "- List of nodes in a cluster.\n"
        },
        "numberOfNodes": {
          "type": "integer",
          "description": "- Number of nodes in a cluster.\n"
        }
      },
      "type": "object",
      "required": [
        "nodeLists",
        "numberOfNodes"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getClustersV2ClusterEntityNodeNodeList:getClustersV2ClusterEntityNodeNodeList": {
      "properties": {
        "controllerVmIps": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetClustersV2ClusterEntityNodeNodeListControllerVmIp:getClustersV2ClusterEntityNodeNodeListControllerVmIp"
          },
          "description": "- An unique address that identifies a device on the internet or a local network in IPv4 or IPv6 format.\n"
        },
        "hostIps": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetClustersV2ClusterEntityNodeNodeListHostIp:getClustersV2ClusterEntityNodeNodeListHostIp"
          },
          "description": "- An unique address that identifies a device on the internet or a local network in IPv4 or IPv6 format.\n"
        },
        "nodeUuid": {
          "type": "string",
          "description": "- UUID of the host.\n"
        }
      },
      "type": "object",
      "required": [
        "controllerVmIps",
        "hostIps",
        "nodeUuid"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getClustersV2ClusterEntityNodeNodeListControllerVmIp:getClustersV2ClusterEntityNodeNodeListControllerVmIp": {
      "properties": {
        "ipv4s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetClustersV2ClusterEntityNodeNodeListControllerVmIpIpv4:getClustersV2ClusterEntityNodeNodeListControllerVmIpIpv4"
          },
          "description": "- An unique address that identifies a device on the internet or a local network in IPv4 format.\n"
        },
        "ipv6s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetClustersV2ClusterEntityNodeNodeListControllerVmIpIpv6:getClustersV2ClusterEntityNodeNodeListControllerVmIpIpv6"
          },
          "description": "- An unique address that identifies a device on the internet or a local network in IPv6 format.\n"
        }
      },
      "type": "object",
      "required": [
        "ipv4s",
        "ipv6s"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getClustersV2ClusterEntityNodeNodeListControllerVmIpIpv4:getClustersV2ClusterEntityNodeNodeListControllerVmIpIpv4": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "- The prefix length of the network to which this host IPv4/IPv6 address belongs.\n"
        },
        "value": {
          "type": "string",
          "description": "- The fully qualified domain name of the host.\n"
        }
      },
      "type": "object",
      "required": [
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getClustersV2ClusterEntityNodeNodeListControllerVmIpIpv6:getClustersV2ClusterEntityNodeNodeListControllerVmIpIpv6": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "- The prefix length of the network to which this host IPv4/IPv6 address belongs.\n"
        },
        "value": {
          "type": "string",
          "description": "- The fully qualified domain name of the host.\n"
        }
      },
      "type": "object",
      "required": [
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getClustersV2ClusterEntityNodeNodeListHostIp:getClustersV2ClusterEntityNodeNodeListHostIp": {
      "properties": {
        "ipv4s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetClustersV2ClusterEntityNodeNodeListHostIpIpv4:getClustersV2ClusterEntityNodeNodeListHostIpIpv4"
          },
          "description": "- An unique address that identifies a device on the internet or a local network in IPv4 format.\n"
        },
        "ipv6s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetClustersV2ClusterEntityNodeNodeListHostIpIpv6:getClustersV2ClusterEntityNodeNodeListHostIpIpv6"
          },
          "description": "- An unique address that identifies a device on the internet or a local network in IPv6 format.\n"
        }
      },
      "type": "object",
      "required": [
        "ipv4s",
        "ipv6s"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getClustersV2ClusterEntityNodeNodeListHostIpIpv4:getClustersV2ClusterEntityNodeNodeListHostIpIpv4": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "- The prefix length of the network to which this host IPv4/IPv6 address belongs.\n"
        },
        "value": {
          "type": "string",
          "description": "- The fully qualified domain name of the host.\n"
        }
      },
      "type": "object",
      "required": [
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getClustersV2ClusterEntityNodeNodeListHostIpIpv6:getClustersV2ClusterEntityNodeNodeListHostIpIpv6": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "- The prefix length of the network to which this host IPv4/IPv6 address belongs.\n"
        },
        "value": {
          "type": "string",
          "description": "- The fully qualified domain name of the host.\n"
        }
      },
      "type": "object",
      "required": [
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getDirectoryServiceV2OpenLdapConfiguration:getDirectoryServiceV2OpenLdapConfiguration": {
      "properties": {
        "userConfigurations": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetDirectoryServiceV2OpenLdapConfigurationUserConfiguration:getDirectoryServiceV2OpenLdapConfigurationUserConfiguration"
          },
          "description": "- this field will avoid down migration of data from the hot tier unless the overrides field is specified for the virtual disks.\n"
        },
        "userGroupConfigurations": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetDirectoryServiceV2OpenLdapConfigurationUserGroupConfiguration:getDirectoryServiceV2OpenLdapConfigurationUserGroupConfiguration"
          },
          "description": "- this field will avoid down migration of data from the hot tier unless the overrides field is specified for the virtual disks.\n"
        }
      },
      "type": "object",
      "required": [
        "userConfigurations",
        "userGroupConfigurations"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getDirectoryServiceV2OpenLdapConfigurationUserConfiguration:getDirectoryServiceV2OpenLdapConfigurationUserConfiguration": {
      "properties": {
        "userObjectClass": {
          "type": "string",
          "description": "- Object class in the OpenLDAP system that corresponds to Users.\n"
        },
        "userSearchBase": {
          "type": "string",
          "description": "- Base DN for User search.\n"
        },
        "usernameAttribute": {
          "type": "string",
          "description": "- Unique Identifier for each User which can be used in Authentication.\n"
        }
      },
      "type": "object",
      "required": [
        "userObjectClass",
        "userSearchBase",
        "usernameAttribute"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getDirectoryServiceV2OpenLdapConfigurationUserGroupConfiguration:getDirectoryServiceV2OpenLdapConfigurationUserGroupConfiguration": {
      "properties": {
        "groupMemberAttribute": {
          "type": "string",
          "description": "- Attribute in a group that associates Users to the group.\n"
        },
        "groupMemberAttributeValue": {
          "type": "string",
          "description": "- User attribute value that will be used in group entity to associate User to the group.\n"
        },
        "groupObjectClass": {
          "type": "string",
          "description": "- Object class in the OpenLDAP system that corresponds to groups.\n"
        },
        "groupSearchBase": {
          "type": "string",
          "description": "- Base DN for group search.\n"
        }
      },
      "type": "object",
      "required": [
        "groupMemberAttribute",
        "groupMemberAttributeValue",
        "groupObjectClass",
        "groupSearchBase"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getDirectoryServiceV2ServiceAccount:getDirectoryServiceV2ServiceAccount": {
      "properties": {
        "password": {
          "type": "string",
          "description": "- Password to connect to the Directory Service.\n"
        },
        "username": {
          "type": "string",
          "description": "- Username to connect to the Directory Service.\n"
        }
      },
      "type": "object",
      "required": [
        "password",
        "username"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getDirectoryServicesV2DirectoryService:getDirectoryServicesV2DirectoryService": {
      "properties": {
        "createdBy": {
          "type": "string",
          "description": "- User or Service who created the Directory Service.\n"
        },
        "createdTime": {
          "type": "string",
          "description": "- Creation time of the Directory Service.\n"
        },
        "directoryType": {
          "type": "string",
          "description": "- Type of Directory Service, Supported values are: \"ACTIVE_DIRECTORY\" (Directory Service type is Active Directory.) and \"OPEN_LDAP\" (Directory Service type is Open LDAP.)\n"
        },
        "domainName": {
          "type": "string",
          "description": "- Domain name for the Directory Service.\n"
        },
        "extId": {
          "type": "string",
          "description": "- A globally unique identifier of an instance that is suitable for external consumption.\n"
        },
        "groupSearchType": {
          "type": "string",
          "description": "- Group membership search type for the Directory Service. Supported values are: \"NON_RECURSIVE\" (Doesn't search recursively within groups.) and \"RECURSIVE\" (Searches recursively within groups.)\n"
        },
        "lastUpdatedTime": {
          "type": "string",
          "description": "- Last updated time of the Directory Service.\n"
        },
        "name": {
          "type": "string",
          "description": "- Name for the Directory Service.\n"
        },
        "openLdapConfigurations": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetDirectoryServicesV2DirectoryServiceOpenLdapConfiguration:getDirectoryServicesV2DirectoryServiceOpenLdapConfiguration"
          },
          "description": "- Configuration for OpenLDAP Directory Service.\n"
        },
        "secondaryUrls": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "- Secondary URL for the Directory Service.\n"
        },
        "serviceAccounts": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetDirectoryServicesV2DirectoryServiceServiceAccount:getDirectoryServicesV2DirectoryServiceServiceAccount"
          },
          "description": "- Information of Service account to connect to the Directory Service.\n"
        },
        "url": {
          "type": "string",
          "description": "- URL for the Directory Service.\n"
        },
        "whiteListedGroups": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "- List of allowed User Groups for the Directory Service.\n"
        }
      },
      "type": "object",
      "required": [
        "createdBy",
        "createdTime",
        "directoryType",
        "domainName",
        "extId",
        "groupSearchType",
        "lastUpdatedTime",
        "name",
        "openLdapConfigurations",
        "secondaryUrls",
        "serviceAccounts",
        "url",
        "whiteListedGroups"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getDirectoryServicesV2DirectoryServiceOpenLdapConfiguration:getDirectoryServicesV2DirectoryServiceOpenLdapConfiguration": {
      "properties": {
        "userConfigurations": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetDirectoryServicesV2DirectoryServiceOpenLdapConfigurationUserConfiguration:getDirectoryServicesV2DirectoryServiceOpenLdapConfigurationUserConfiguration"
          },
          "description": "- this field will avoid down migration of data from the hot tier unless the overrides field is specified for the virtual disks.\n"
        },
        "userGroupConfigurations": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetDirectoryServicesV2DirectoryServiceOpenLdapConfigurationUserGroupConfiguration:getDirectoryServicesV2DirectoryServiceOpenLdapConfigurationUserGroupConfiguration"
          },
          "description": "- this field will avoid down migration of data from the hot tier unless the overrides field is specified for the virtual disks.\n"
        }
      },
      "type": "object",
      "required": [
        "userConfigurations",
        "userGroupConfigurations"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getDirectoryServicesV2DirectoryServiceOpenLdapConfigurationUserConfiguration:getDirectoryServicesV2DirectoryServiceOpenLdapConfigurationUserConfiguration": {
      "properties": {
        "userObjectClass": {
          "type": "string",
          "description": "- Object class in the OpenLDAP system that corresponds to Users.\n"
        },
        "userSearchBase": {
          "type": "string",
          "description": "- Base DN for User search.\n"
        },
        "usernameAttribute": {
          "type": "string",
          "description": "- Unique Identifier for each User which can be used in Authentication.\n"
        }
      },
      "type": "object",
      "required": [
        "userObjectClass",
        "userSearchBase",
        "usernameAttribute"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getDirectoryServicesV2DirectoryServiceOpenLdapConfigurationUserGroupConfiguration:getDirectoryServicesV2DirectoryServiceOpenLdapConfigurationUserGroupConfiguration": {
      "properties": {
        "groupMemberAttribute": {
          "type": "string",
          "description": "- Attribute in a group that associates Users to the group.\n"
        },
        "groupMemberAttributeValue": {
          "type": "string",
          "description": "- User attribute value that will be used in group entity to associate User to the group.\n"
        },
        "groupObjectClass": {
          "type": "string",
          "description": "- Object class in the OpenLDAP system that corresponds to groups.\n"
        },
        "groupSearchBase": {
          "type": "string",
          "description": "- Base DN for group search.\n"
        }
      },
      "type": "object",
      "required": [
        "groupMemberAttribute",
        "groupMemberAttributeValue",
        "groupObjectClass",
        "groupSearchBase"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getDirectoryServicesV2DirectoryServiceServiceAccount:getDirectoryServicesV2DirectoryServiceServiceAccount": {
      "properties": {
        "password": {
          "type": "string",
          "description": "- Password to connect to the Directory Service.\n"
        },
        "username": {
          "type": "string",
          "description": "- Username to connect to the Directory Service.\n"
        }
      },
      "type": "object",
      "required": [
        "password",
        "username"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getFloatingIpSpec:getFloatingIpSpec": {
      "properties": {
        "resources": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetFloatingIpSpecResource:getFloatingIpSpecResource"
          },
          "description": "Floating IP allocation status.\n"
        }
      },
      "type": "object",
      "required": [
        "resources"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getFloatingIpSpecResource:getFloatingIpSpecResource": {
      "properties": {
        "externalSubnetReference": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          },
          "description": "The reference to a subnet\n"
        },
        "vmNicReference": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          },
          "description": "The reference to a vm_nic\n"
        },
        "vpcReference": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          },
          "description": "The reference to a vpc\n"
        }
      },
      "type": "object",
      "required": [
        "externalSubnetReference",
        "vmNicReference",
        "vpcReference"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getFloatingIpStatus:getFloatingIpStatus": {
      "properties": {
        "executionContexts": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetFloatingIpStatusExecutionContext:getFloatingIpStatusExecutionContext"
          },
          "description": "Execution Context of Floating IP.\n"
        },
        "name": {
          "type": "string",
          "description": "- the name.\n"
        },
        "resources": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetFloatingIpStatusResource:getFloatingIpStatusResource"
          },
          "description": "Floating IP allocation status.\n"
        },
        "state": {
          "type": "string",
          "description": "The state of the floating_ip.\n"
        }
      },
      "type": "object",
      "required": [
        "executionContexts",
        "name",
        "resources",
        "state"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getFloatingIpStatusExecutionContext:getFloatingIpStatusExecutionContext": {
      "properties": {
        "taskUuids": {
          "type": "array",
          "items": {
            "type": "string"
          }
        }
      },
      "type": "object",
      "required": [
        "taskUuids"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getFloatingIpStatusResource:getFloatingIpStatusResource": {
      "properties": {
        "externalSubnetReference": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          },
          "description": "The reference to a subnet\n"
        },
        "floatingIp": {
          "type": "string",
          "description": "Private IP with which the floating IP is associated.\n"
        },
        "vmNicReference": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          },
          "description": "The reference to a vm_nic\n"
        },
        "vpcReference": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          },
          "description": "The reference to a vpc\n"
        }
      },
      "type": "object",
      "required": [
        "externalSubnetReference",
        "floatingIp",
        "vmNicReference",
        "vpcReference"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getFloatingIpV2Association:getFloatingIpV2Association": {
      "properties": {
        "privateIpAssociations": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetFloatingIpV2AssociationPrivateIpAssociation:getFloatingIpV2AssociationPrivateIpAssociation"
          },
          "description": "Association of Floating IP with private IP\n"
        },
        "vmNicAssociations": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetFloatingIpV2AssociationVmNicAssociation:getFloatingIpV2AssociationVmNicAssociation"
          },
          "description": "Association of Floating IP with nic\n"
        }
      },
      "type": "object",
      "required": [
        "privateIpAssociations",
        "vmNicAssociations"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getFloatingIpV2AssociationPrivateIpAssociation:getFloatingIpV2AssociationPrivateIpAssociation": {
      "properties": {
        "privateIps": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetFloatingIpV2AssociationPrivateIpAssociationPrivateIp:getFloatingIpV2AssociationPrivateIpAssociationPrivateIp"
          },
          "description": "An unique address that identifies a device on the internet or a local network in IPv4 or IPv6 format.\n"
        },
        "vpcReference": {
          "type": "string",
          "description": "VPC in which the private IP exists.\n"
        }
      },
      "type": "object",
      "required": [
        "privateIps",
        "vpcReference"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getFloatingIpV2AssociationPrivateIpAssociationPrivateIp:getFloatingIpV2AssociationPrivateIpAssociationPrivateIp": {
      "properties": {
        "ipv4s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetFloatingIpV2AssociationPrivateIpAssociationPrivateIpIpv4:getFloatingIpV2AssociationPrivateIpAssociationPrivateIpIpv4"
          },
          "description": "Reference to IP Configuration\n"
        },
        "ipv6s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetFloatingIpV2AssociationPrivateIpAssociationPrivateIpIpv6:getFloatingIpV2AssociationPrivateIpAssociationPrivateIpIpv6"
          },
          "description": "Reference to IP Configuration\n"
        }
      },
      "type": "object",
      "required": [
        "ipv4s",
        "ipv6s"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getFloatingIpV2AssociationPrivateIpAssociationPrivateIpIpv4:getFloatingIpV2AssociationPrivateIpAssociationPrivateIpIpv4": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "Prefix length of the network to which this host IPv4 address belongs. Default value is 32.\n"
        },
        "value": {
          "type": "string",
          "description": "value of address\n"
        }
      },
      "type": "object",
      "required": [
        "prefixLength",
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getFloatingIpV2AssociationPrivateIpAssociationPrivateIpIpv6:getFloatingIpV2AssociationPrivateIpAssociationPrivateIpIpv6": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "Prefix length of the network to which this host IPv4 address belongs. Default value is 32.\n"
        },
        "value": {
          "type": "string",
          "description": "value of address\n"
        }
      },
      "type": "object",
      "required": [
        "prefixLength",
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getFloatingIpV2AssociationVmNicAssociation:getFloatingIpV2AssociationVmNicAssociation": {
      "properties": {
        "vmNicReference": {
          "type": "string",
          "description": "VM NIC reference.\n"
        },
        "vpcReference": {
          "type": "string",
          "description": "VPC reference to which the VM NIC subnet belongs.\n"
        }
      },
      "type": "object",
      "required": [
        "vmNicReference",
        "vpcReference"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getFloatingIpV2ExternalSubnet:getFloatingIpV2ExternalSubnet": {
      "properties": {
        "bridgeName": {
          "type": "string"
        },
        "clusterName": {
          "type": "string"
        },
        "clusterReference": {
          "type": "string"
        },
        "description": {
          "type": "string",
          "description": "Description for the Floating IP.\n"
        },
        "dhcpOptions": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetFloatingIpV2ExternalSubnetDhcpOption:getFloatingIpV2ExternalSubnetDhcpOption"
          }
        },
        "dynamicIpAddresses": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetFloatingIpV2ExternalSubnetDynamicIpAddress:getFloatingIpV2ExternalSubnetDynamicIpAddress"
          }
        },
        "extId": {
          "type": "string",
          "description": "Floating IP UUID\n"
        },
        "hypervisorType": {
          "type": "string"
        },
        "ipConfigs": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetFloatingIpV2ExternalSubnetIpConfig:getFloatingIpV2ExternalSubnetIpConfig"
          }
        },
        "ipPrefix": {
          "type": "string"
        },
        "ipUsages": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetFloatingIpV2ExternalSubnetIpUsage:getFloatingIpV2ExternalSubnetIpUsage"
          }
        },
        "isAdvancedNetworking": {
          "type": "boolean"
        },
        "isExternal": {
          "type": "boolean"
        },
        "isNatEnabled": {
          "type": "boolean"
        },
        "links": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetFloatingIpV2ExternalSubnetLink:getFloatingIpV2ExternalSubnetLink"
          },
          "description": "A HATEOAS style link for the response. Each link contains a user-friendly name identifying the link and an address for retrieving the particular resource.\n"
        },
        "migrationState": {
          "type": "string"
        },
        "name": {
          "type": "string",
          "description": "Name of the floating IP.\n"
        },
        "networkFunctionChainReference": {
          "type": "string"
        },
        "networkId": {
          "type": "integer"
        },
        "reservedIpAddresses": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetFloatingIpV2ExternalSubnetReservedIpAddress:getFloatingIpV2ExternalSubnetReservedIpAddress"
          }
        },
        "subnetType": {
          "type": "string"
        },
        "virtualSwitchReference": {
          "type": "string"
        },
        "virtualSwitches": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetFloatingIpV2ExternalSubnetVirtualSwitch:getFloatingIpV2ExternalSubnetVirtualSwitch"
          }
        },
        "vpcReference": {
          "type": "string",
          "description": "VPC reference UUID\n"
        },
        "vpcs": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetFloatingIpV2ExternalSubnetVpc:getFloatingIpV2ExternalSubnetVpc"
          },
          "description": "Networking common base object\n"
        }
      },
      "type": "object",
      "required": [
        "bridgeName",
        "clusterName",
        "clusterReference",
        "description",
        "dhcpOptions",
        "dynamicIpAddresses",
        "extId",
        "hypervisorType",
        "ipConfigs",
        "ipPrefix",
        "ipUsages",
        "isAdvancedNetworking",
        "isExternal",
        "isNatEnabled",
        "links",
        "migrationState",
        "name",
        "networkFunctionChainReference",
        "networkId",
        "reservedIpAddresses",
        "subnetType",
        "virtualSwitchReference",
        "virtualSwitches",
        "vpcReference",
        "vpcs"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getFloatingIpV2ExternalSubnetDhcpOption:getFloatingIpV2ExternalSubnetDhcpOption": {
      "properties": {
        "bootFileName": {
          "type": "string"
        },
        "domainName": {
          "type": "string"
        },
        "domainNameServers": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetFloatingIpV2ExternalSubnetDhcpOptionDomainNameServer:getFloatingIpV2ExternalSubnetDhcpOptionDomainNameServer"
          }
        },
        "ntpServers": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetFloatingIpV2ExternalSubnetDhcpOptionNtpServer:getFloatingIpV2ExternalSubnetDhcpOptionNtpServer"
          }
        },
        "searchDomains": {
          "type": "array",
          "items": {
            "type": "string"
          }
        },
        "tftpServerName": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "bootFileName",
        "domainName",
        "domainNameServers",
        "ntpServers",
        "searchDomains",
        "tftpServerName"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getFloatingIpV2ExternalSubnetDhcpOptionDomainNameServer:getFloatingIpV2ExternalSubnetDhcpOptionDomainNameServer": {
      "properties": {
        "ipv4s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetFloatingIpV2ExternalSubnetDhcpOptionDomainNameServerIpv4:getFloatingIpV2ExternalSubnetDhcpOptionDomainNameServerIpv4"
          },
          "description": "Reference to IP Configuration\n"
        },
        "ipv6s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetFloatingIpV2ExternalSubnetDhcpOptionDomainNameServerIpv6:getFloatingIpV2ExternalSubnetDhcpOptionDomainNameServerIpv6"
          },
          "description": "Reference to IP Configuration\n"
        }
      },
      "type": "object",
      "required": [
        "ipv4s",
        "ipv6s"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getFloatingIpV2ExternalSubnetDhcpOptionDomainNameServerIpv4:getFloatingIpV2ExternalSubnetDhcpOptionDomainNameServerIpv4": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "Prefix length of the network to which this host IPv4 address belongs. Default value is 32.\n"
        },
        "value": {
          "type": "string",
          "description": "value of address\n"
        }
      },
      "type": "object",
      "required": [
        "prefixLength",
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getFloatingIpV2ExternalSubnetDhcpOptionDomainNameServerIpv6:getFloatingIpV2ExternalSubnetDhcpOptionDomainNameServerIpv6": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "Prefix length of the network to which this host IPv4 address belongs. Default value is 32.\n"
        },
        "value": {
          "type": "string",
          "description": "value of address\n"
        }
      },
      "type": "object",
      "required": [
        "prefixLength",
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getFloatingIpV2ExternalSubnetDhcpOptionNtpServer:getFloatingIpV2ExternalSubnetDhcpOptionNtpServer": {
      "properties": {
        "ipv4s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetFloatingIpV2ExternalSubnetDhcpOptionNtpServerIpv4:getFloatingIpV2ExternalSubnetDhcpOptionNtpServerIpv4"
          },
          "description": "Reference to IP Configuration\n"
        },
        "ipv6s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetFloatingIpV2ExternalSubnetDhcpOptionNtpServerIpv6:getFloatingIpV2ExternalSubnetDhcpOptionNtpServerIpv6"
          },
          "description": "Reference to IP Configuration\n"
        }
      },
      "type": "object",
      "required": [
        "ipv4s",
        "ipv6s"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getFloatingIpV2ExternalSubnetDhcpOptionNtpServerIpv4:getFloatingIpV2ExternalSubnetDhcpOptionNtpServerIpv4": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "Prefix length of the network to which this host IPv4 address belongs. Default value is 32.\n"
        },
        "value": {
          "type": "string",
          "description": "value of address\n"
        }
      },
      "type": "object",
      "required": [
        "prefixLength",
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getFloatingIpV2ExternalSubnetDhcpOptionNtpServerIpv6:getFloatingIpV2ExternalSubnetDhcpOptionNtpServerIpv6": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "Prefix length of the network to which this host IPv4 address belongs. Default value is 32.\n"
        },
        "value": {
          "type": "string",
          "description": "value of address\n"
        }
      },
      "type": "object",
      "required": [
        "prefixLength",
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getFloatingIpV2ExternalSubnetDynamicIpAddress:getFloatingIpV2ExternalSubnetDynamicIpAddress": {
      "properties": {
        "ipv4s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetFloatingIpV2ExternalSubnetDynamicIpAddressIpv4:getFloatingIpV2ExternalSubnetDynamicIpAddressIpv4"
          },
          "description": "Reference to IP Configuration\n"
        },
        "ipv6s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetFloatingIpV2ExternalSubnetDynamicIpAddressIpv6:getFloatingIpV2ExternalSubnetDynamicIpAddressIpv6"
          },
          "description": "Reference to IP Configuration\n"
        }
      },
      "type": "object",
      "required": [
        "ipv4s",
        "ipv6s"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getFloatingIpV2ExternalSubnetDynamicIpAddressIpv4:getFloatingIpV2ExternalSubnetDynamicIpAddressIpv4": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "Prefix length of the network to which this host IPv4 address belongs. Default value is 32.\n"
        },
        "value": {
          "type": "string",
          "description": "value of address\n"
        }
      },
      "type": "object",
      "required": [
        "prefixLength",
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getFloatingIpV2ExternalSubnetDynamicIpAddressIpv6:getFloatingIpV2ExternalSubnetDynamicIpAddressIpv6": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "Prefix length of the network to which this host IPv4 address belongs. Default value is 32.\n"
        },
        "value": {
          "type": "string",
          "description": "value of address\n"
        }
      },
      "type": "object",
      "required": [
        "prefixLength",
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getFloatingIpV2ExternalSubnetIpConfig:getFloatingIpV2ExternalSubnetIpConfig": {
      "properties": {
        "ipv4s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetFloatingIpV2ExternalSubnetIpConfigIpv4:getFloatingIpV2ExternalSubnetIpConfigIpv4"
          },
          "description": "Reference to IP Configuration\n"
        },
        "ipv6s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetFloatingIpV2ExternalSubnetIpConfigIpv6:getFloatingIpV2ExternalSubnetIpConfigIpv6"
          },
          "description": "Reference to IP Configuration\n"
        }
      },
      "type": "object",
      "required": [
        "ipv4s",
        "ipv6s"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getFloatingIpV2ExternalSubnetIpConfigIpv4:getFloatingIpV2ExternalSubnetIpConfigIpv4": {
      "properties": {
        "defaultGatewayIps": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetFloatingIpV2ExternalSubnetIpConfigIpv4DefaultGatewayIp:getFloatingIpV2ExternalSubnetIpConfigIpv4DefaultGatewayIp"
          }
        },
        "dhcpServerAddresses": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetFloatingIpV2ExternalSubnetIpConfigIpv4DhcpServerAddress:getFloatingIpV2ExternalSubnetIpConfigIpv4DhcpServerAddress"
          }
        },
        "ipSubnets": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetFloatingIpV2ExternalSubnetIpConfigIpv4IpSubnet:getFloatingIpV2ExternalSubnetIpConfigIpv4IpSubnet"
          }
        },
        "poolLists": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetFloatingIpV2ExternalSubnetIpConfigIpv4PoolList:getFloatingIpV2ExternalSubnetIpConfigIpv4PoolList"
          }
        }
      },
      "type": "object",
      "required": [
        "defaultGatewayIps",
        "dhcpServerAddresses",
        "ipSubnets",
        "poolLists"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getFloatingIpV2ExternalSubnetIpConfigIpv4DefaultGatewayIp:getFloatingIpV2ExternalSubnetIpConfigIpv4DefaultGatewayIp": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "Prefix length of the network to which this host IPv4 address belongs. Default value is 32.\n"
        },
        "value": {
          "type": "string",
          "description": "value of address\n"
        }
      },
      "type": "object",
      "required": [
        "prefixLength",
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getFloatingIpV2ExternalSubnetIpConfigIpv4DhcpServerAddress:getFloatingIpV2ExternalSubnetIpConfigIpv4DhcpServerAddress": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "Prefix length of the network to which this host IPv4 address belongs. Default value is 32.\n"
        },
        "value": {
          "type": "string",
          "description": "value of address\n"
        }
      },
      "type": "object",
      "required": [
        "prefixLength",
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getFloatingIpV2ExternalSubnetIpConfigIpv4IpSubnet:getFloatingIpV2ExternalSubnetIpConfigIpv4IpSubnet": {
      "properties": {
        "ips": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetFloatingIpV2ExternalSubnetIpConfigIpv4IpSubnetIp:getFloatingIpV2ExternalSubnetIpConfigIpv4IpSubnetIp"
          }
        },
        "prefixLength": {
          "type": "integer",
          "description": "Prefix length of the network to which this host IPv4 address belongs. Default value is 32.\n"
        }
      },
      "type": "object",
      "required": [
        "ips",
        "prefixLength"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getFloatingIpV2ExternalSubnetIpConfigIpv4IpSubnetIp:getFloatingIpV2ExternalSubnetIpConfigIpv4IpSubnetIp": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "Prefix length of the network to which this host IPv4 address belongs. Default value is 32.\n"
        },
        "value": {
          "type": "string",
          "description": "value of address\n"
        }
      },
      "type": "object",
      "required": [
        "prefixLength",
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getFloatingIpV2ExternalSubnetIpConfigIpv4PoolList:getFloatingIpV2ExternalSubnetIpConfigIpv4PoolList": {
      "properties": {
        "endIps": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetFloatingIpV2ExternalSubnetIpConfigIpv4PoolListEndIp:getFloatingIpV2ExternalSubnetIpConfigIpv4PoolListEndIp"
          }
        },
        "startIps": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetFloatingIpV2ExternalSubnetIpConfigIpv4PoolListStartIp:getFloatingIpV2ExternalSubnetIpConfigIpv4PoolListStartIp"
          }
        }
      },
      "type": "object",
      "required": [
        "endIps",
        "startIps"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getFloatingIpV2ExternalSubnetIpConfigIpv4PoolListEndIp:getFloatingIpV2ExternalSubnetIpConfigIpv4PoolListEndIp": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "Prefix length of the network to which this host IPv4 address belongs. Default value is 32.\n"
        },
        "value": {
          "type": "string",
          "description": "value of address\n"
        }
      },
      "type": "object",
      "required": [
        "prefixLength",
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getFloatingIpV2ExternalSubnetIpConfigIpv4PoolListStartIp:getFloatingIpV2ExternalSubnetIpConfigIpv4PoolListStartIp": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "Prefix length of the network to which this host IPv4 address belongs. Default value is 32.\n"
        },
        "value": {
          "type": "string",
          "description": "value of address\n"
        }
      },
      "type": "object",
      "required": [
        "prefixLength",
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getFloatingIpV2ExternalSubnetIpConfigIpv6:getFloatingIpV2ExternalSubnetIpConfigIpv6": {
      "properties": {
        "defaultGatewayIps": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetFloatingIpV2ExternalSubnetIpConfigIpv6DefaultGatewayIp:getFloatingIpV2ExternalSubnetIpConfigIpv6DefaultGatewayIp"
          }
        },
        "dhcpServerAddresses": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetFloatingIpV2ExternalSubnetIpConfigIpv6DhcpServerAddress:getFloatingIpV2ExternalSubnetIpConfigIpv6DhcpServerAddress"
          }
        },
        "ipSubnets": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetFloatingIpV2ExternalSubnetIpConfigIpv6IpSubnet:getFloatingIpV2ExternalSubnetIpConfigIpv6IpSubnet"
          }
        },
        "poolLists": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetFloatingIpV2ExternalSubnetIpConfigIpv6PoolList:getFloatingIpV2ExternalSubnetIpConfigIpv6PoolList"
          }
        }
      },
      "type": "object",
      "required": [
        "defaultGatewayIps",
        "dhcpServerAddresses",
        "ipSubnets",
        "poolLists"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getFloatingIpV2ExternalSubnetIpConfigIpv6DefaultGatewayIp:getFloatingIpV2ExternalSubnetIpConfigIpv6DefaultGatewayIp": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "Prefix length of the network to which this host IPv4 address belongs. Default value is 32.\n"
        },
        "value": {
          "type": "string",
          "description": "value of address\n"
        }
      },
      "type": "object",
      "required": [
        "prefixLength",
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getFloatingIpV2ExternalSubnetIpConfigIpv6DhcpServerAddress:getFloatingIpV2ExternalSubnetIpConfigIpv6DhcpServerAddress": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "Prefix length of the network to which this host IPv4 address belongs. Default value is 32.\n"
        },
        "value": {
          "type": "string",
          "description": "value of address\n"
        }
      },
      "type": "object",
      "required": [
        "prefixLength",
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getFloatingIpV2ExternalSubnetIpConfigIpv6IpSubnet:getFloatingIpV2ExternalSubnetIpConfigIpv6IpSubnet": {
      "properties": {
        "ips": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetFloatingIpV2ExternalSubnetIpConfigIpv6IpSubnetIp:getFloatingIpV2ExternalSubnetIpConfigIpv6IpSubnetIp"
          }
        },
        "prefixLength": {
          "type": "integer",
          "description": "Prefix length of the network to which this host IPv4 address belongs. Default value is 32.\n"
        }
      },
      "type": "object",
      "required": [
        "ips",
        "prefixLength"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getFloatingIpV2ExternalSubnetIpConfigIpv6IpSubnetIp:getFloatingIpV2ExternalSubnetIpConfigIpv6IpSubnetIp": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "Prefix length of the network to which this host IPv4 address belongs. Default value is 32.\n"
        },
        "value": {
          "type": "string",
          "description": "value of address\n"
        }
      },
      "type": "object",
      "required": [
        "prefixLength",
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getFloatingIpV2ExternalSubnetIpConfigIpv6PoolList:getFloatingIpV2ExternalSubnetIpConfigIpv6PoolList": {
      "properties": {
        "endIps": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetFloatingIpV2ExternalSubnetIpConfigIpv6PoolListEndIp:getFloatingIpV2ExternalSubnetIpConfigIpv6PoolListEndIp"
          }
        },
        "startIps": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetFloatingIpV2ExternalSubnetIpConfigIpv6PoolListStartIp:getFloatingIpV2ExternalSubnetIpConfigIpv6PoolListStartIp"
          }
        }
      },
      "type": "object",
      "required": [
        "endIps",
        "startIps"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getFloatingIpV2ExternalSubnetIpConfigIpv6PoolListEndIp:getFloatingIpV2ExternalSubnetIpConfigIpv6PoolListEndIp": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "Prefix length of the network to which this host IPv4 address belongs. Default value is 32.\n"
        },
        "value": {
          "type": "string",
          "description": "value of address\n"
        }
      },
      "type": "object",
      "required": [
        "prefixLength",
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getFloatingIpV2ExternalSubnetIpConfigIpv6PoolListStartIp:getFloatingIpV2ExternalSubnetIpConfigIpv6PoolListStartIp": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "Prefix length of the network to which this host IPv4 address belongs. Default value is 32.\n"
        },
        "value": {
          "type": "string",
          "description": "value of address\n"
        }
      },
      "type": "object",
      "required": [
        "prefixLength",
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getFloatingIpV2ExternalSubnetIpUsage:getFloatingIpV2ExternalSubnetIpUsage": {
      "properties": {
        "ipPoolUsages": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetFloatingIpV2ExternalSubnetIpUsageIpPoolUsage:getFloatingIpV2ExternalSubnetIpUsageIpPoolUsage"
          }
        },
        "numAssignedIps": {
          "type": "integer"
        },
        "numFreeIps": {
          "type": "integer"
        },
        "numMacs": {
          "type": "integer"
        }
      },
      "type": "object",
      "required": [
        "ipPoolUsages",
        "numAssignedIps",
        "numFreeIps",
        "numMacs"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getFloatingIpV2ExternalSubnetIpUsageIpPoolUsage:getFloatingIpV2ExternalSubnetIpUsageIpPoolUsage": {
      "properties": {
        "numFreeIps": {
          "type": "integer"
        },
        "numTotalIps": {
          "type": "integer"
        },
        "ranges": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetFloatingIpV2ExternalSubnetIpUsageIpPoolUsageRange:getFloatingIpV2ExternalSubnetIpUsageIpPoolUsageRange"
          }
        }
      },
      "type": "object",
      "required": [
        "numFreeIps",
        "numTotalIps",
        "ranges"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getFloatingIpV2ExternalSubnetIpUsageIpPoolUsageRange:getFloatingIpV2ExternalSubnetIpUsageIpPoolUsageRange": {
      "properties": {
        "endIps": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetFloatingIpV2ExternalSubnetIpUsageIpPoolUsageRangeEndIp:getFloatingIpV2ExternalSubnetIpUsageIpPoolUsageRangeEndIp"
          }
        },
        "startIps": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetFloatingIpV2ExternalSubnetIpUsageIpPoolUsageRangeStartIp:getFloatingIpV2ExternalSubnetIpUsageIpPoolUsageRangeStartIp"
          }
        }
      },
      "type": "object",
      "required": [
        "endIps",
        "startIps"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getFloatingIpV2ExternalSubnetIpUsageIpPoolUsageRangeEndIp:getFloatingIpV2ExternalSubnetIpUsageIpPoolUsageRangeEndIp": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "Prefix length of the network to which this host IPv4 address belongs. Default value is 32.\n"
        },
        "value": {
          "type": "string",
          "description": "value of address\n"
        }
      },
      "type": "object",
      "required": [
        "prefixLength",
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getFloatingIpV2ExternalSubnetIpUsageIpPoolUsageRangeStartIp:getFloatingIpV2ExternalSubnetIpUsageIpPoolUsageRangeStartIp": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "Prefix length of the network to which this host IPv4 address belongs. Default value is 32.\n"
        },
        "value": {
          "type": "string",
          "description": "value of address\n"
        }
      },
      "type": "object",
      "required": [
        "prefixLength",
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getFloatingIpV2ExternalSubnetLink:getFloatingIpV2ExternalSubnetLink": {
      "properties": {
        "href": {
          "type": "string",
          "description": "- The URL at which the entity described by the link can be accessed.\n"
        },
        "rel": {
          "type": "string",
          "description": "- A name that identifies the relationship of the link to the object that is returned by the URL. The unique value of \"self\" identifies the URL for the object.\n"
        }
      },
      "type": "object",
      "required": [
        "href",
        "rel"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getFloatingIpV2ExternalSubnetReservedIpAddress:getFloatingIpV2ExternalSubnetReservedIpAddress": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "Prefix length of the network to which this host IPv4 address belongs. Default value is 32.\n"
        },
        "value": {
          "type": "string",
          "description": "value of address\n"
        }
      },
      "type": "object",
      "required": [
        "prefixLength",
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getFloatingIpV2ExternalSubnetVirtualSwitch:getFloatingIpV2ExternalSubnetVirtualSwitch": {
      "properties": {
        "bondMode": {
          "type": "boolean"
        },
        "clusters": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetFloatingIpV2ExternalSubnetVirtualSwitchCluster:getFloatingIpV2ExternalSubnetVirtualSwitchCluster"
          }
        },
        "description": {
          "type": "string",
          "description": "Description for the Floating IP.\n"
        },
        "extId": {
          "type": "string",
          "description": "Floating IP UUID\n"
        },
        "hasDeploymentError": {
          "type": "boolean"
        },
        "isDefault": {
          "type": "boolean"
        },
        "links": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetFloatingIpV2ExternalSubnetVirtualSwitchLink:getFloatingIpV2ExternalSubnetVirtualSwitchLink"
          },
          "description": "A HATEOAS style link for the response. Each link contains a user-friendly name identifying the link and an address for retrieving the particular resource.\n"
        },
        "metadatas": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetFloatingIpV2ExternalSubnetVirtualSwitchMetadata:getFloatingIpV2ExternalSubnetVirtualSwitchMetadata"
          },
          "description": "Metadata associated with this resource.\n"
        },
        "mtu": {
          "type": "integer"
        },
        "name": {
          "type": "string",
          "description": "Name of the floating IP.\n"
        },
        "tenantId": {
          "type": "string",
          "description": "A globally unique identifier that represents the tenant that owns this entity.\n"
        }
      },
      "type": "object",
      "required": [
        "bondMode",
        "clusters",
        "description",
        "extId",
        "hasDeploymentError",
        "isDefault",
        "links",
        "metadatas",
        "mtu",
        "name",
        "tenantId"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getFloatingIpV2ExternalSubnetVirtualSwitchCluster:getFloatingIpV2ExternalSubnetVirtualSwitchCluster": {
      "properties": {
        "extId": {
          "type": "string",
          "description": "Floating IP UUID\n"
        },
        "gatewayIpAddresses": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetFloatingIpV2ExternalSubnetVirtualSwitchClusterGatewayIpAddress:getFloatingIpV2ExternalSubnetVirtualSwitchClusterGatewayIpAddress"
          }
        },
        "hosts": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetFloatingIpV2ExternalSubnetVirtualSwitchClusterHost:getFloatingIpV2ExternalSubnetVirtualSwitchClusterHost"
          }
        }
      },
      "type": "object",
      "required": [
        "extId",
        "gatewayIpAddresses",
        "hosts"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getFloatingIpV2ExternalSubnetVirtualSwitchClusterGatewayIpAddress:getFloatingIpV2ExternalSubnetVirtualSwitchClusterGatewayIpAddress": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "Prefix length of the network to which this host IPv4 address belongs. Default value is 32.\n"
        },
        "value": {
          "type": "string",
          "description": "value of address\n"
        }
      },
      "type": "object",
      "required": [
        "prefixLength",
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getFloatingIpV2ExternalSubnetVirtualSwitchClusterHost:getFloatingIpV2ExternalSubnetVirtualSwitchClusterHost": {
      "properties": {
        "extId": {
          "type": "string",
          "description": "Floating IP UUID\n"
        },
        "hostNics": {
          "type": "array",
          "items": {
            "type": "string"
          }
        },
        "internalBridgeName": {
          "type": "string"
        },
        "ipAddresses": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetFloatingIpV2ExternalSubnetVirtualSwitchClusterHostIpAddress:getFloatingIpV2ExternalSubnetVirtualSwitchClusterHostIpAddress"
          }
        },
        "routeTable": {
          "type": "integer"
        }
      },
      "type": "object",
      "required": [
        "extId",
        "hostNics",
        "internalBridgeName",
        "ipAddresses",
        "routeTable"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getFloatingIpV2ExternalSubnetVirtualSwitchClusterHostIpAddress:getFloatingIpV2ExternalSubnetVirtualSwitchClusterHostIpAddress": {
      "properties": {
        "ips": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetFloatingIpV2ExternalSubnetVirtualSwitchClusterHostIpAddressIp:getFloatingIpV2ExternalSubnetVirtualSwitchClusterHostIpAddressIp"
          }
        },
        "prefixLength": {
          "type": "integer",
          "description": "Prefix length of the network to which this host IPv4 address belongs. Default value is 32.\n"
        }
      },
      "type": "object",
      "required": [
        "ips",
        "prefixLength"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getFloatingIpV2ExternalSubnetVirtualSwitchClusterHostIpAddressIp:getFloatingIpV2ExternalSubnetVirtualSwitchClusterHostIpAddressIp": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "Prefix length of the network to which this host IPv4 address belongs. Default value is 32.\n"
        },
        "value": {
          "type": "string",
          "description": "value of address\n"
        }
      },
      "type": "object",
      "required": [
        "prefixLength",
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getFloatingIpV2ExternalSubnetVirtualSwitchLink:getFloatingIpV2ExternalSubnetVirtualSwitchLink": {
      "properties": {
        "href": {
          "type": "string",
          "description": "- The URL at which the entity described by the link can be accessed.\n"
        },
        "rel": {
          "type": "string",
          "description": "- A name that identifies the relationship of the link to the object that is returned by the URL. The unique value of \"self\" identifies the URL for the object.\n"
        }
      },
      "type": "object",
      "required": [
        "href",
        "rel"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getFloatingIpV2ExternalSubnetVirtualSwitchMetadata:getFloatingIpV2ExternalSubnetVirtualSwitchMetadata": {
      "properties": {
        "categoryIds": {
          "type": "array",
          "items": {
            "type": "array",
            "items": {
              "$ref": "pulumi.json#/Any"
            }
          },
          "description": "A list of globally unique identifiers that represent all the categories the resource is associated with.\n"
        },
        "ownerReferenceId": {
          "type": "string",
          "description": "A globally unique identifier that represents the owner of this resource.\n"
        },
        "ownerUserName": {
          "type": "string",
          "description": "The userName of the owner of this resource.\n"
        },
        "projectName": {
          "type": "string",
          "description": "The name of the project this resource belongs to.\n"
        },
        "projectReferenceId": {
          "type": "string",
          "description": "A globally unique identifier that represents the project this resource belongs to.\n"
        }
      },
      "type": "object",
      "required": [
        "categoryIds",
        "ownerReferenceId",
        "ownerUserName",
        "projectName",
        "projectReferenceId"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getFloatingIpV2ExternalSubnetVpc:getFloatingIpV2ExternalSubnetVpc": {
      "properties": {
        "commonDhcpOptions": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetFloatingIpV2ExternalSubnetVpcCommonDhcpOption:getFloatingIpV2ExternalSubnetVpcCommonDhcpOption"
          }
        },
        "description": {
          "type": "string",
          "description": "Description for the Floating IP.\n"
        },
        "extId": {
          "type": "string",
          "description": "Floating IP UUID\n"
        },
        "externalRoutingDomainReference": {
          "type": "string"
        },
        "externalSubnets": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetFloatingIpV2ExternalSubnetVpcExternalSubnet:getFloatingIpV2ExternalSubnetVpcExternalSubnet"
          }
        },
        "externallyRoutablePrefixes": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetFloatingIpV2ExternalSubnetVpcExternallyRoutablePrefix:getFloatingIpV2ExternalSubnetVpcExternallyRoutablePrefix"
          }
        },
        "links": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetFloatingIpV2ExternalSubnetVpcLink:getFloatingIpV2ExternalSubnetVpcLink"
          },
          "description": "A HATEOAS style link for the response. Each link contains a user-friendly name identifying the link and an address for retrieving the particular resource.\n"
        },
        "metadatas": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetFloatingIpV2ExternalSubnetVpcMetadata:getFloatingIpV2ExternalSubnetVpcMetadata"
          },
          "description": "Metadata associated with this resource.\n"
        },
        "name": {
          "type": "string",
          "description": "Name of the floating IP.\n"
        },
        "snatIps": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetFloatingIpV2ExternalSubnetVpcSnatIp:getFloatingIpV2ExternalSubnetVpcSnatIp"
          }
        },
        "tenantId": {
          "type": "string",
          "description": "A globally unique identifier that represents the tenant that owns this entity.\n"
        },
        "vpcType": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "commonDhcpOptions",
        "description",
        "extId",
        "externalRoutingDomainReference",
        "externalSubnets",
        "externallyRoutablePrefixes",
        "links",
        "metadatas",
        "name",
        "snatIps",
        "tenantId",
        "vpcType"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getFloatingIpV2ExternalSubnetVpcCommonDhcpOption:getFloatingIpV2ExternalSubnetVpcCommonDhcpOption": {
      "properties": {
        "domainNameServers": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetFloatingIpV2ExternalSubnetVpcCommonDhcpOptionDomainNameServer:getFloatingIpV2ExternalSubnetVpcCommonDhcpOptionDomainNameServer"
          }
        }
      },
      "type": "object",
      "required": [
        "domainNameServers"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getFloatingIpV2ExternalSubnetVpcCommonDhcpOptionDomainNameServer:getFloatingIpV2ExternalSubnetVpcCommonDhcpOptionDomainNameServer": {
      "properties": {
        "ipv4s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetFloatingIpV2ExternalSubnetVpcCommonDhcpOptionDomainNameServerIpv4:getFloatingIpV2ExternalSubnetVpcCommonDhcpOptionDomainNameServerIpv4"
          },
          "description": "Reference to IP Configuration\n"
        },
        "ipv6s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetFloatingIpV2ExternalSubnetVpcCommonDhcpOptionDomainNameServerIpv6:getFloatingIpV2ExternalSubnetVpcCommonDhcpOptionDomainNameServerIpv6"
          },
          "description": "Reference to IP Configuration\n"
        }
      },
      "type": "object",
      "required": [
        "ipv4s",
        "ipv6s"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getFloatingIpV2ExternalSubnetVpcCommonDhcpOptionDomainNameServerIpv4:getFloatingIpV2ExternalSubnetVpcCommonDhcpOptionDomainNameServerIpv4": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "Prefix length of the network to which this host IPv4 address belongs. Default value is 32.\n"
        },
        "value": {
          "type": "string",
          "description": "value of address\n"
        }
      },
      "type": "object",
      "required": [
        "prefixLength",
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getFloatingIpV2ExternalSubnetVpcCommonDhcpOptionDomainNameServerIpv6:getFloatingIpV2ExternalSubnetVpcCommonDhcpOptionDomainNameServerIpv6": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "Prefix length of the network to which this host IPv4 address belongs. Default value is 32.\n"
        },
        "value": {
          "type": "string",
          "description": "value of address\n"
        }
      },
      "type": "object",
      "required": [
        "prefixLength",
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getFloatingIpV2ExternalSubnetVpcExternalSubnet:getFloatingIpV2ExternalSubnetVpcExternalSubnet": {
      "properties": {
        "activeGatewayCount": {
          "type": "integer"
        },
        "activeGatewayNodes": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetFloatingIpV2ExternalSubnetVpcExternalSubnetActiveGatewayNode:getFloatingIpV2ExternalSubnetVpcExternalSubnetActiveGatewayNode"
          }
        },
        "externalIps": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetFloatingIpV2ExternalSubnetVpcExternalSubnetExternalIp:getFloatingIpV2ExternalSubnetVpcExternalSubnetExternalIp"
          }
        },
        "gatewayNodes": {
          "type": "array",
          "items": {
            "type": "string"
          }
        },
        "subnetReference": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "activeGatewayCount",
        "activeGatewayNodes",
        "externalIps",
        "gatewayNodes",
        "subnetReference"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getFloatingIpV2ExternalSubnetVpcExternalSubnetActiveGatewayNode:getFloatingIpV2ExternalSubnetVpcExternalSubnetActiveGatewayNode": {
      "properties": {
        "nodeId": {
          "type": "string"
        },
        "nodeIpAddresses": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetFloatingIpV2ExternalSubnetVpcExternalSubnetActiveGatewayNodeNodeIpAddress:getFloatingIpV2ExternalSubnetVpcExternalSubnetActiveGatewayNodeNodeIpAddress"
          }
        }
      },
      "type": "object",
      "required": [
        "nodeId",
        "nodeIpAddresses"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getFloatingIpV2ExternalSubnetVpcExternalSubnetActiveGatewayNodeNodeIpAddress:getFloatingIpV2ExternalSubnetVpcExternalSubnetActiveGatewayNodeNodeIpAddress": {
      "properties": {
        "ipv4s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetFloatingIpV2ExternalSubnetVpcExternalSubnetActiveGatewayNodeNodeIpAddressIpv4:getFloatingIpV2ExternalSubnetVpcExternalSubnetActiveGatewayNodeNodeIpAddressIpv4"
          },
          "description": "Reference to IP Configuration\n"
        },
        "ipv6s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetFloatingIpV2ExternalSubnetVpcExternalSubnetActiveGatewayNodeNodeIpAddressIpv6:getFloatingIpV2ExternalSubnetVpcExternalSubnetActiveGatewayNodeNodeIpAddressIpv6"
          },
          "description": "Reference to IP Configuration\n"
        }
      },
      "type": "object",
      "required": [
        "ipv4s",
        "ipv6s"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getFloatingIpV2ExternalSubnetVpcExternalSubnetActiveGatewayNodeNodeIpAddressIpv4:getFloatingIpV2ExternalSubnetVpcExternalSubnetActiveGatewayNodeNodeIpAddressIpv4": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "Prefix length of the network to which this host IPv4 address belongs. Default value is 32.\n"
        },
        "value": {
          "type": "string",
          "description": "value of address\n"
        }
      },
      "type": "object",
      "required": [
        "prefixLength",
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getFloatingIpV2ExternalSubnetVpcExternalSubnetActiveGatewayNodeNodeIpAddressIpv6:getFloatingIpV2ExternalSubnetVpcExternalSubnetActiveGatewayNodeNodeIpAddressIpv6": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "Prefix length of the network to which this host IPv4 address belongs. Default value is 32.\n"
        },
        "value": {
          "type": "string",
          "description": "value of address\n"
        }
      },
      "type": "object",
      "required": [
        "prefixLength",
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getFloatingIpV2ExternalSubnetVpcExternalSubnetExternalIp:getFloatingIpV2ExternalSubnetVpcExternalSubnetExternalIp": {
      "properties": {
        "ipv4s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetFloatingIpV2ExternalSubnetVpcExternalSubnetExternalIpIpv4:getFloatingIpV2ExternalSubnetVpcExternalSubnetExternalIpIpv4"
          },
          "description": "Reference to IP Configuration\n"
        },
        "ipv6s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetFloatingIpV2ExternalSubnetVpcExternalSubnetExternalIpIpv6:getFloatingIpV2ExternalSubnetVpcExternalSubnetExternalIpIpv6"
          },
          "description": "Reference to IP Configuration\n"
        }
      },
      "type": "object",
      "required": [
        "ipv4s",
        "ipv6s"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getFloatingIpV2ExternalSubnetVpcExternalSubnetExternalIpIpv4:getFloatingIpV2ExternalSubnetVpcExternalSubnetExternalIpIpv4": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "Prefix length of the network to which this host IPv4 address belongs. Default value is 32.\n"
        },
        "value": {
          "type": "string",
          "description": "value of address\n"
        }
      },
      "type": "object",
      "required": [
        "prefixLength",
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getFloatingIpV2ExternalSubnetVpcExternalSubnetExternalIpIpv6:getFloatingIpV2ExternalSubnetVpcExternalSubnetExternalIpIpv6": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "Prefix length of the network to which this host IPv4 address belongs. Default value is 32.\n"
        },
        "value": {
          "type": "string",
          "description": "value of address\n"
        }
      },
      "type": "object",
      "required": [
        "prefixLength",
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getFloatingIpV2ExternalSubnetVpcExternallyRoutablePrefix:getFloatingIpV2ExternalSubnetVpcExternallyRoutablePrefix": {
      "properties": {
        "ipv4s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetFloatingIpV2ExternalSubnetVpcExternallyRoutablePrefixIpv4:getFloatingIpV2ExternalSubnetVpcExternallyRoutablePrefixIpv4"
          },
          "description": "Reference to IP Configuration\n"
        },
        "ipv6s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetFloatingIpV2ExternalSubnetVpcExternallyRoutablePrefixIpv6:getFloatingIpV2ExternalSubnetVpcExternallyRoutablePrefixIpv6"
          },
          "description": "Reference to IP Configuration\n"
        }
      },
      "type": "object",
      "required": [
        "ipv4s",
        "ipv6s"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getFloatingIpV2ExternalSubnetVpcExternallyRoutablePrefixIpv4:getFloatingIpV2ExternalSubnetVpcExternallyRoutablePrefixIpv4": {
      "properties": {
        "ips": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetFloatingIpV2ExternalSubnetVpcExternallyRoutablePrefixIpv4Ip:getFloatingIpV2ExternalSubnetVpcExternallyRoutablePrefixIpv4Ip"
          }
        },
        "prefixLength": {
          "type": "integer",
          "description": "Prefix length of the network to which this host IPv4 address belongs. Default value is 32.\n"
        }
      },
      "type": "object",
      "required": [
        "ips",
        "prefixLength"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getFloatingIpV2ExternalSubnetVpcExternallyRoutablePrefixIpv4Ip:getFloatingIpV2ExternalSubnetVpcExternallyRoutablePrefixIpv4Ip": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "Prefix length of the network to which this host IPv4 address belongs. Default value is 32.\n"
        },
        "value": {
          "type": "string",
          "description": "value of address\n"
        }
      },
      "type": "object",
      "required": [
        "prefixLength",
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getFloatingIpV2ExternalSubnetVpcExternallyRoutablePrefixIpv6:getFloatingIpV2ExternalSubnetVpcExternallyRoutablePrefixIpv6": {
      "properties": {
        "ips": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetFloatingIpV2ExternalSubnetVpcExternallyRoutablePrefixIpv6Ip:getFloatingIpV2ExternalSubnetVpcExternallyRoutablePrefixIpv6Ip"
          }
        },
        "prefixLength": {
          "type": "integer",
          "description": "Prefix length of the network to which this host IPv4 address belongs. Default value is 32.\n"
        }
      },
      "type": "object",
      "required": [
        "ips",
        "prefixLength"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getFloatingIpV2ExternalSubnetVpcExternallyRoutablePrefixIpv6Ip:getFloatingIpV2ExternalSubnetVpcExternallyRoutablePrefixIpv6Ip": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "Prefix length of the network to which this host IPv4 address belongs. Default value is 32.\n"
        },
        "value": {
          "type": "string",
          "description": "value of address\n"
        }
      },
      "type": "object",
      "required": [
        "prefixLength",
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getFloatingIpV2ExternalSubnetVpcLink:getFloatingIpV2ExternalSubnetVpcLink": {
      "properties": {
        "href": {
          "type": "string",
          "description": "- The URL at which the entity described by the link can be accessed.\n"
        },
        "rel": {
          "type": "string",
          "description": "- A name that identifies the relationship of the link to the object that is returned by the URL. The unique value of \"self\" identifies the URL for the object.\n"
        }
      },
      "type": "object",
      "required": [
        "href",
        "rel"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getFloatingIpV2ExternalSubnetVpcMetadata:getFloatingIpV2ExternalSubnetVpcMetadata": {
      "properties": {
        "categoryIds": {
          "type": "array",
          "items": {
            "type": "array",
            "items": {
              "$ref": "pulumi.json#/Any"
            }
          },
          "description": "A list of globally unique identifiers that represent all the categories the resource is associated with.\n"
        },
        "ownerReferenceId": {
          "type": "string",
          "description": "A globally unique identifier that represents the owner of this resource.\n"
        },
        "ownerUserName": {
          "type": "string",
          "description": "The userName of the owner of this resource.\n"
        },
        "projectName": {
          "type": "string",
          "description": "The name of the project this resource belongs to.\n"
        },
        "projectReferenceId": {
          "type": "string",
          "description": "A globally unique identifier that represents the project this resource belongs to.\n"
        }
      },
      "type": "object",
      "required": [
        "categoryIds",
        "ownerReferenceId",
        "ownerUserName",
        "projectName",
        "projectReferenceId"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getFloatingIpV2ExternalSubnetVpcSnatIp:getFloatingIpV2ExternalSubnetVpcSnatIp": {
      "properties": {
        "ipv4s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetFloatingIpV2ExternalSubnetVpcSnatIpIpv4:getFloatingIpV2ExternalSubnetVpcSnatIpIpv4"
          },
          "description": "Reference to IP Configuration\n"
        },
        "ipv6s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetFloatingIpV2ExternalSubnetVpcSnatIpIpv6:getFloatingIpV2ExternalSubnetVpcSnatIpIpv6"
          },
          "description": "Reference to IP Configuration\n"
        }
      },
      "type": "object",
      "required": [
        "ipv4s",
        "ipv6s"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getFloatingIpV2ExternalSubnetVpcSnatIpIpv4:getFloatingIpV2ExternalSubnetVpcSnatIpIpv4": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "Prefix length of the network to which this host IPv4 address belongs. Default value is 32.\n"
        },
        "value": {
          "type": "string",
          "description": "value of address\n"
        }
      },
      "type": "object",
      "required": [
        "prefixLength",
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getFloatingIpV2ExternalSubnetVpcSnatIpIpv6:getFloatingIpV2ExternalSubnetVpcSnatIpIpv6": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "Prefix length of the network to which this host IPv4 address belongs. Default value is 32.\n"
        },
        "value": {
          "type": "string",
          "description": "value of address\n"
        }
      },
      "type": "object",
      "required": [
        "prefixLength",
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getFloatingIpV2FloatingIp:getFloatingIpV2FloatingIp": {
      "properties": {
        "ipv4s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetFloatingIpV2FloatingIpIpv4:getFloatingIpV2FloatingIpIpv4"
          },
          "description": "Reference to IP Configuration\n"
        },
        "ipv6s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetFloatingIpV2FloatingIpIpv6:getFloatingIpV2FloatingIpIpv6"
          },
          "description": "Reference to IP Configuration\n"
        }
      },
      "type": "object",
      "required": [
        "ipv4s",
        "ipv6s"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getFloatingIpV2FloatingIpIpv4:getFloatingIpV2FloatingIpIpv4": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "Prefix length of the network to which this host IPv4 address belongs. Default value is 32.\n"
        },
        "value": {
          "type": "string",
          "description": "value of address\n"
        }
      },
      "type": "object",
      "required": [
        "prefixLength",
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getFloatingIpV2FloatingIpIpv6:getFloatingIpV2FloatingIpIpv6": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "Prefix length of the network to which this host IPv4 address belongs. Default value is 32.\n"
        },
        "value": {
          "type": "string",
          "description": "value of address\n"
        }
      },
      "type": "object",
      "required": [
        "prefixLength",
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getFloatingIpV2Link:getFloatingIpV2Link": {
      "properties": {
        "href": {
          "type": "string",
          "description": "- The URL at which the entity described by the link can be accessed.\n"
        },
        "rel": {
          "type": "string",
          "description": "- A name that identifies the relationship of the link to the object that is returned by the URL. The unique value of \"self\" identifies the URL for the object.\n"
        }
      },
      "type": "object",
      "required": [
        "href",
        "rel"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getFloatingIpV2Metadata:getFloatingIpV2Metadata": {
      "properties": {
        "categoryIds": {
          "type": "array",
          "items": {
            "type": "array",
            "items": {
              "$ref": "pulumi.json#/Any"
            }
          },
          "description": "A list of globally unique identifiers that represent all the categories the resource is associated with.\n"
        },
        "ownerReferenceId": {
          "type": "string",
          "description": "A globally unique identifier that represents the owner of this resource.\n"
        },
        "ownerUserName": {
          "type": "string",
          "description": "The userName of the owner of this resource.\n"
        },
        "projectName": {
          "type": "string",
          "description": "The name of the project this resource belongs to.\n"
        },
        "projectReferenceId": {
          "type": "string",
          "description": "A globally unique identifier that represents the project this resource belongs to.\n"
        }
      },
      "type": "object",
      "required": [
        "categoryIds",
        "ownerReferenceId",
        "ownerUserName",
        "projectName",
        "projectReferenceId"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getFloatingIpV2VmNic:getFloatingIpV2VmNic": {
      "properties": {
        "privateIp": {
          "type": "string",
          "description": "Private IP value in string\n"
        }
      },
      "type": "object",
      "required": [
        "privateIp"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getFloatingIpV2Vpc:getFloatingIpV2Vpc": {
      "properties": {
        "commonDhcpOptions": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetFloatingIpV2VpcCommonDhcpOption:getFloatingIpV2VpcCommonDhcpOption"
          }
        },
        "description": {
          "type": "string",
          "description": "Description for the Floating IP.\n"
        },
        "extId": {
          "type": "string",
          "description": "Floating IP UUID\n"
        },
        "externalRoutingDomainReference": {
          "type": "string"
        },
        "externalSubnets": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetFloatingIpV2VpcExternalSubnet:getFloatingIpV2VpcExternalSubnet"
          }
        },
        "externallyRoutablePrefixes": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetFloatingIpV2VpcExternallyRoutablePrefix:getFloatingIpV2VpcExternallyRoutablePrefix"
          }
        },
        "links": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetFloatingIpV2VpcLink:getFloatingIpV2VpcLink"
          },
          "description": "A HATEOAS style link for the response. Each link contains a user-friendly name identifying the link and an address for retrieving the particular resource.\n"
        },
        "metadatas": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetFloatingIpV2VpcMetadata:getFloatingIpV2VpcMetadata"
          },
          "description": "Metadata associated with this resource.\n"
        },
        "name": {
          "type": "string",
          "description": "Name of the floating IP.\n"
        },
        "snatIps": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetFloatingIpV2VpcSnatIp:getFloatingIpV2VpcSnatIp"
          }
        },
        "tenantId": {
          "type": "string",
          "description": "A globally unique identifier that represents the tenant that owns this entity.\n"
        },
        "vpcType": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "commonDhcpOptions",
        "description",
        "extId",
        "externalRoutingDomainReference",
        "externalSubnets",
        "externallyRoutablePrefixes",
        "links",
        "metadatas",
        "name",
        "snatIps",
        "tenantId",
        "vpcType"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getFloatingIpV2VpcCommonDhcpOption:getFloatingIpV2VpcCommonDhcpOption": {
      "properties": {
        "domainNameServers": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetFloatingIpV2VpcCommonDhcpOptionDomainNameServer:getFloatingIpV2VpcCommonDhcpOptionDomainNameServer"
          }
        }
      },
      "type": "object",
      "required": [
        "domainNameServers"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getFloatingIpV2VpcCommonDhcpOptionDomainNameServer:getFloatingIpV2VpcCommonDhcpOptionDomainNameServer": {
      "properties": {
        "ipv4s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetFloatingIpV2VpcCommonDhcpOptionDomainNameServerIpv4:getFloatingIpV2VpcCommonDhcpOptionDomainNameServerIpv4"
          },
          "description": "Reference to IP Configuration\n"
        },
        "ipv6s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetFloatingIpV2VpcCommonDhcpOptionDomainNameServerIpv6:getFloatingIpV2VpcCommonDhcpOptionDomainNameServerIpv6"
          },
          "description": "Reference to IP Configuration\n"
        }
      },
      "type": "object",
      "required": [
        "ipv4s",
        "ipv6s"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getFloatingIpV2VpcCommonDhcpOptionDomainNameServerIpv4:getFloatingIpV2VpcCommonDhcpOptionDomainNameServerIpv4": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "Prefix length of the network to which this host IPv4 address belongs. Default value is 32.\n"
        },
        "value": {
          "type": "string",
          "description": "value of address\n"
        }
      },
      "type": "object",
      "required": [
        "prefixLength",
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getFloatingIpV2VpcCommonDhcpOptionDomainNameServerIpv6:getFloatingIpV2VpcCommonDhcpOptionDomainNameServerIpv6": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "Prefix length of the network to which this host IPv4 address belongs. Default value is 32.\n"
        },
        "value": {
          "type": "string",
          "description": "value of address\n"
        }
      },
      "type": "object",
      "required": [
        "prefixLength",
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getFloatingIpV2VpcExternalSubnet:getFloatingIpV2VpcExternalSubnet": {
      "properties": {
        "activeGatewayCount": {
          "type": "integer"
        },
        "activeGatewayNodes": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetFloatingIpV2VpcExternalSubnetActiveGatewayNode:getFloatingIpV2VpcExternalSubnetActiveGatewayNode"
          }
        },
        "externalIps": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetFloatingIpV2VpcExternalSubnetExternalIp:getFloatingIpV2VpcExternalSubnetExternalIp"
          }
        },
        "gatewayNodes": {
          "type": "array",
          "items": {
            "type": "string"
          }
        },
        "subnetReference": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "activeGatewayCount",
        "activeGatewayNodes",
        "externalIps",
        "gatewayNodes",
        "subnetReference"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getFloatingIpV2VpcExternalSubnetActiveGatewayNode:getFloatingIpV2VpcExternalSubnetActiveGatewayNode": {
      "properties": {
        "nodeId": {
          "type": "string"
        },
        "nodeIpAddresses": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetFloatingIpV2VpcExternalSubnetActiveGatewayNodeNodeIpAddress:getFloatingIpV2VpcExternalSubnetActiveGatewayNodeNodeIpAddress"
          }
        }
      },
      "type": "object",
      "required": [
        "nodeId",
        "nodeIpAddresses"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getFloatingIpV2VpcExternalSubnetActiveGatewayNodeNodeIpAddress:getFloatingIpV2VpcExternalSubnetActiveGatewayNodeNodeIpAddress": {
      "properties": {
        "ipv4s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetFloatingIpV2VpcExternalSubnetActiveGatewayNodeNodeIpAddressIpv4:getFloatingIpV2VpcExternalSubnetActiveGatewayNodeNodeIpAddressIpv4"
          },
          "description": "Reference to IP Configuration\n"
        },
        "ipv6s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetFloatingIpV2VpcExternalSubnetActiveGatewayNodeNodeIpAddressIpv6:getFloatingIpV2VpcExternalSubnetActiveGatewayNodeNodeIpAddressIpv6"
          },
          "description": "Reference to IP Configuration\n"
        }
      },
      "type": "object",
      "required": [
        "ipv4s",
        "ipv6s"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getFloatingIpV2VpcExternalSubnetActiveGatewayNodeNodeIpAddressIpv4:getFloatingIpV2VpcExternalSubnetActiveGatewayNodeNodeIpAddressIpv4": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "Prefix length of the network to which this host IPv4 address belongs. Default value is 32.\n"
        },
        "value": {
          "type": "string",
          "description": "value of address\n"
        }
      },
      "type": "object",
      "required": [
        "prefixLength",
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getFloatingIpV2VpcExternalSubnetActiveGatewayNodeNodeIpAddressIpv6:getFloatingIpV2VpcExternalSubnetActiveGatewayNodeNodeIpAddressIpv6": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "Prefix length of the network to which this host IPv4 address belongs. Default value is 32.\n"
        },
        "value": {
          "type": "string",
          "description": "value of address\n"
        }
      },
      "type": "object",
      "required": [
        "prefixLength",
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getFloatingIpV2VpcExternalSubnetExternalIp:getFloatingIpV2VpcExternalSubnetExternalIp": {
      "properties": {
        "ipv4s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetFloatingIpV2VpcExternalSubnetExternalIpIpv4:getFloatingIpV2VpcExternalSubnetExternalIpIpv4"
          },
          "description": "Reference to IP Configuration\n"
        },
        "ipv6s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetFloatingIpV2VpcExternalSubnetExternalIpIpv6:getFloatingIpV2VpcExternalSubnetExternalIpIpv6"
          },
          "description": "Reference to IP Configuration\n"
        }
      },
      "type": "object",
      "required": [
        "ipv4s",
        "ipv6s"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getFloatingIpV2VpcExternalSubnetExternalIpIpv4:getFloatingIpV2VpcExternalSubnetExternalIpIpv4": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "Prefix length of the network to which this host IPv4 address belongs. Default value is 32.\n"
        },
        "value": {
          "type": "string",
          "description": "value of address\n"
        }
      },
      "type": "object",
      "required": [
        "prefixLength",
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getFloatingIpV2VpcExternalSubnetExternalIpIpv6:getFloatingIpV2VpcExternalSubnetExternalIpIpv6": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "Prefix length of the network to which this host IPv4 address belongs. Default value is 32.\n"
        },
        "value": {
          "type": "string",
          "description": "value of address\n"
        }
      },
      "type": "object",
      "required": [
        "prefixLength",
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getFloatingIpV2VpcExternallyRoutablePrefix:getFloatingIpV2VpcExternallyRoutablePrefix": {
      "properties": {
        "ipv4s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetFloatingIpV2VpcExternallyRoutablePrefixIpv4:getFloatingIpV2VpcExternallyRoutablePrefixIpv4"
          },
          "description": "Reference to IP Configuration\n"
        },
        "ipv6s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetFloatingIpV2VpcExternallyRoutablePrefixIpv6:getFloatingIpV2VpcExternallyRoutablePrefixIpv6"
          },
          "description": "Reference to IP Configuration\n"
        }
      },
      "type": "object",
      "required": [
        "ipv4s",
        "ipv6s"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getFloatingIpV2VpcExternallyRoutablePrefixIpv4:getFloatingIpV2VpcExternallyRoutablePrefixIpv4": {
      "properties": {
        "ips": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetFloatingIpV2VpcExternallyRoutablePrefixIpv4Ip:getFloatingIpV2VpcExternallyRoutablePrefixIpv4Ip"
          }
        },
        "prefixLength": {
          "type": "integer",
          "description": "Prefix length of the network to which this host IPv4 address belongs. Default value is 32.\n"
        }
      },
      "type": "object",
      "required": [
        "ips",
        "prefixLength"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getFloatingIpV2VpcExternallyRoutablePrefixIpv4Ip:getFloatingIpV2VpcExternallyRoutablePrefixIpv4Ip": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "Prefix length of the network to which this host IPv4 address belongs. Default value is 32.\n"
        },
        "value": {
          "type": "string",
          "description": "value of address\n"
        }
      },
      "type": "object",
      "required": [
        "prefixLength",
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getFloatingIpV2VpcExternallyRoutablePrefixIpv6:getFloatingIpV2VpcExternallyRoutablePrefixIpv6": {
      "properties": {
        "ips": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetFloatingIpV2VpcExternallyRoutablePrefixIpv6Ip:getFloatingIpV2VpcExternallyRoutablePrefixIpv6Ip"
          }
        },
        "prefixLength": {
          "type": "integer",
          "description": "Prefix length of the network to which this host IPv4 address belongs. Default value is 32.\n"
        }
      },
      "type": "object",
      "required": [
        "ips",
        "prefixLength"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getFloatingIpV2VpcExternallyRoutablePrefixIpv6Ip:getFloatingIpV2VpcExternallyRoutablePrefixIpv6Ip": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "Prefix length of the network to which this host IPv4 address belongs. Default value is 32.\n"
        },
        "value": {
          "type": "string",
          "description": "value of address\n"
        }
      },
      "type": "object",
      "required": [
        "prefixLength",
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getFloatingIpV2VpcLink:getFloatingIpV2VpcLink": {
      "properties": {
        "href": {
          "type": "string",
          "description": "- The URL at which the entity described by the link can be accessed.\n"
        },
        "rel": {
          "type": "string",
          "description": "- A name that identifies the relationship of the link to the object that is returned by the URL. The unique value of \"self\" identifies the URL for the object.\n"
        }
      },
      "type": "object",
      "required": [
        "href",
        "rel"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getFloatingIpV2VpcMetadata:getFloatingIpV2VpcMetadata": {
      "properties": {
        "categoryIds": {
          "type": "array",
          "items": {
            "type": "array",
            "items": {
              "$ref": "pulumi.json#/Any"
            }
          },
          "description": "A list of globally unique identifiers that represent all the categories the resource is associated with.\n"
        },
        "ownerReferenceId": {
          "type": "string",
          "description": "A globally unique identifier that represents the owner of this resource.\n"
        },
        "ownerUserName": {
          "type": "string",
          "description": "The userName of the owner of this resource.\n"
        },
        "projectName": {
          "type": "string",
          "description": "The name of the project this resource belongs to.\n"
        },
        "projectReferenceId": {
          "type": "string",
          "description": "A globally unique identifier that represents the project this resource belongs to.\n"
        }
      },
      "type": "object",
      "required": [
        "categoryIds",
        "ownerReferenceId",
        "ownerUserName",
        "projectName",
        "projectReferenceId"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getFloatingIpV2VpcSnatIp:getFloatingIpV2VpcSnatIp": {
      "properties": {
        "ipv4s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetFloatingIpV2VpcSnatIpIpv4:getFloatingIpV2VpcSnatIpIpv4"
          },
          "description": "Reference to IP Configuration\n"
        },
        "ipv6s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetFloatingIpV2VpcSnatIpIpv6:getFloatingIpV2VpcSnatIpIpv6"
          },
          "description": "Reference to IP Configuration\n"
        }
      },
      "type": "object",
      "required": [
        "ipv4s",
        "ipv6s"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getFloatingIpV2VpcSnatIpIpv4:getFloatingIpV2VpcSnatIpIpv4": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "Prefix length of the network to which this host IPv4 address belongs. Default value is 32.\n"
        },
        "value": {
          "type": "string",
          "description": "value of address\n"
        }
      },
      "type": "object",
      "required": [
        "prefixLength",
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getFloatingIpV2VpcSnatIpIpv6:getFloatingIpV2VpcSnatIpIpv6": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "Prefix length of the network to which this host IPv4 address belongs. Default value is 32.\n"
        },
        "value": {
          "type": "string",
          "description": "value of address\n"
        }
      },
      "type": "object",
      "required": [
        "prefixLength",
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getFloatingIpsEntity:getFloatingIpsEntity": {
      "properties": {
        "metadata": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          },
          "description": "- The<span pulumi-lang-nodejs=\" floatingIp \" pulumi-lang-dotnet=\" FloatingIp \" pulumi-lang-go=\" floatingIp \" pulumi-lang-python=\" floating_ip \" pulumi-lang-yaml=\" floatingIp \" pulumi-lang-java=\" floatingIp \"> floating_ip </span>kind metadata.\n"
        },
        "specs": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetFloatingIpsEntitySpec:getFloatingIpsEntitySpec"
          },
          "description": "Floating IP spec\n"
        },
        "statuses": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetFloatingIpsEntityStatus:getFloatingIpsEntityStatus"
          },
          "description": "Floating IP output status\n"
        }
      },
      "type": "object",
      "required": [
        "metadata",
        "specs",
        "statuses"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getFloatingIpsEntitySpec:getFloatingIpsEntitySpec": {
      "properties": {
        "resources": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetFloatingIpsEntitySpecResource:getFloatingIpsEntitySpecResource"
          },
          "description": "Floating IP allocation status.\n"
        }
      },
      "type": "object",
      "required": [
        "resources"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getFloatingIpsEntitySpecResource:getFloatingIpsEntitySpecResource": {
      "properties": {
        "externalSubnetReference": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          },
          "description": "The reference to a subnet\n"
        },
        "vmNicReference": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          },
          "description": "The reference to a vm_nic\n"
        },
        "vpcReference": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          },
          "description": "The reference to a vpc\n"
        }
      },
      "type": "object",
      "required": [
        "externalSubnetReference",
        "vmNicReference",
        "vpcReference"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getFloatingIpsEntityStatus:getFloatingIpsEntityStatus": {
      "properties": {
        "executionContexts": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetFloatingIpsEntityStatusExecutionContext:getFloatingIpsEntityStatusExecutionContext"
          },
          "description": "Execution Context of Floating IP.\n"
        },
        "name": {
          "type": "string",
          "description": "- the name.\n"
        },
        "resources": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetFloatingIpsEntityStatusResource:getFloatingIpsEntityStatusResource"
          },
          "description": "Floating IP allocation status.\n"
        },
        "state": {
          "type": "string",
          "description": "The state of the floating_ip.\n"
        }
      },
      "type": "object",
      "required": [
        "executionContexts",
        "name",
        "resources",
        "state"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getFloatingIpsEntityStatusExecutionContext:getFloatingIpsEntityStatusExecutionContext": {
      "properties": {
        "taskUuids": {
          "type": "array",
          "items": {
            "type": "string"
          }
        }
      },
      "type": "object",
      "required": [
        "taskUuids"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getFloatingIpsEntityStatusResource:getFloatingIpsEntityStatusResource": {
      "properties": {
        "externalSubnetReference": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          },
          "description": "The reference to a subnet\n"
        },
        "floatingIp": {
          "type": "string",
          "description": "Private IP with which the floating IP is associated.\n"
        },
        "vmNicReference": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          },
          "description": "The reference to a vm_nic\n"
        },
        "vpcReference": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          },
          "description": "The reference to a vpc\n"
        }
      },
      "type": "object",
      "required": [
        "externalSubnetReference",
        "floatingIp",
        "vmNicReference",
        "vpcReference"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getFloatingIpsMetadata:getFloatingIpsMetadata": {
      "properties": {
        "filter": {
          "type": "string"
        },
        "kind": {
          "type": "string",
          "description": "- The kind name (Default value: project).\n"
        },
        "length": {
          "type": "integer"
        },
        "offset": {
          "type": "integer"
        },
        "sortAttribute": {
          "type": "string"
        },
        "sortOrder": {
          "type": "string"
        },
        "totalMatches": {
          "type": "integer"
        }
      },
      "type": "object",
      "required": [
        "filter",
        "kind",
        "length",
        "offset",
        "sortAttribute",
        "sortOrder",
        "totalMatches"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getFloatingIpsV2FloatingIp:getFloatingIpsV2FloatingIp": {
      "properties": {
        "associationStatus": {
          "type": "string",
          "description": "Association status of floating IP.\n"
        },
        "associations": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetFloatingIpsV2FloatingIpAssociation:getFloatingIpsV2FloatingIpAssociation"
          },
          "description": "Association of the Floating IP with either NIC or Private IP\n"
        },
        "description": {
          "type": "string",
          "description": "Description for the Floating IP.\n"
        },
        "extId": {
          "type": "string",
          "description": "Floating IP UUID\n"
        },
        "externalSubnetReference": {
          "type": "string",
          "description": "External subnet reference for the Floating IP to be allocated in on-prem only.\n"
        },
        "externalSubnets": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetFloatingIpsV2FloatingIpExternalSubnet:getFloatingIpsV2FloatingIpExternalSubnet"
          },
          "description": "Networking common base object\n"
        },
        "floatingIpValue": {
          "type": "string",
          "description": "Floating IP value in string\n"
        },
        "floatingIps": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetFloatingIpsV2FloatingIpFloatingIp:getFloatingIpsV2FloatingIpFloatingIp"
          },
          "description": "Floating IP address.\n"
        },
        "links": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetFloatingIpsV2FloatingIpLink:getFloatingIpsV2FloatingIpLink"
          },
          "description": "A HATEOAS style link for the response. Each link contains a user-friendly name identifying the link and an address for retrieving the particular resource.\n"
        },
        "metadatas": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetFloatingIpsV2FloatingIpMetadata:getFloatingIpsV2FloatingIpMetadata"
          },
          "description": "Metadata associated with this resource.\n"
        },
        "name": {
          "type": "string",
          "description": "Name of the floating IP.\n"
        },
        "privateIp": {
          "type": "string",
          "description": "Private IP value in string\n"
        },
        "tenantId": {
          "type": "string",
          "description": "A globally unique identifier that represents the tenant that owns this entity.\n"
        },
        "vmNicReference": {
          "type": "string",
          "description": "VM NIC reference.\n"
        },
        "vmNics": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetFloatingIpsV2FloatingIpVmNic:getFloatingIpsV2FloatingIpVmNic"
          },
          "description": "Virtual NIC for projections\n"
        },
        "vpcReference": {
          "type": "string",
          "description": "VPC reference UUID\n"
        },
        "vpcs": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetFloatingIpsV2FloatingIpVpc:getFloatingIpsV2FloatingIpVpc"
          },
          "description": "Networking common base object\n"
        }
      },
      "type": "object",
      "required": [
        "associationStatus",
        "associations",
        "description",
        "extId",
        "externalSubnetReference",
        "externalSubnets",
        "floatingIpValue",
        "floatingIps",
        "links",
        "metadatas",
        "name",
        "privateIp",
        "tenantId",
        "vmNicReference",
        "vmNics",
        "vpcReference",
        "vpcs"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getFloatingIpsV2FloatingIpAssociation:getFloatingIpsV2FloatingIpAssociation": {
      "properties": {
        "privateIpAssociations": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetFloatingIpsV2FloatingIpAssociationPrivateIpAssociation:getFloatingIpsV2FloatingIpAssociationPrivateIpAssociation"
          },
          "description": "Association of Floating IP with private IP\n"
        },
        "vmNicAssociations": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetFloatingIpsV2FloatingIpAssociationVmNicAssociation:getFloatingIpsV2FloatingIpAssociationVmNicAssociation"
          },
          "description": "Association of Floating IP with nic\n"
        }
      },
      "type": "object",
      "required": [
        "privateIpAssociations",
        "vmNicAssociations"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getFloatingIpsV2FloatingIpAssociationPrivateIpAssociation:getFloatingIpsV2FloatingIpAssociationPrivateIpAssociation": {
      "properties": {
        "privateIps": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetFloatingIpsV2FloatingIpAssociationPrivateIpAssociationPrivateIp:getFloatingIpsV2FloatingIpAssociationPrivateIpAssociationPrivateIp"
          },
          "description": "An unique address that identifies a device on the internet or a local network in IPv4 or IPv6 format.\n"
        },
        "vpcReference": {
          "type": "string",
          "description": "VPC in which the private IP exists.\n"
        }
      },
      "type": "object",
      "required": [
        "privateIps",
        "vpcReference"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getFloatingIpsV2FloatingIpAssociationPrivateIpAssociationPrivateIp:getFloatingIpsV2FloatingIpAssociationPrivateIpAssociationPrivateIp": {
      "properties": {
        "ipv4s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetFloatingIpsV2FloatingIpAssociationPrivateIpAssociationPrivateIpIpv4:getFloatingIpsV2FloatingIpAssociationPrivateIpAssociationPrivateIpIpv4"
          },
          "description": "Reference to IP Configuration\n"
        },
        "ipv6s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetFloatingIpsV2FloatingIpAssociationPrivateIpAssociationPrivateIpIpv6:getFloatingIpsV2FloatingIpAssociationPrivateIpAssociationPrivateIpIpv6"
          },
          "description": "Reference to IP Configuration\n"
        }
      },
      "type": "object",
      "required": [
        "ipv4s",
        "ipv6s"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getFloatingIpsV2FloatingIpAssociationPrivateIpAssociationPrivateIpIpv4:getFloatingIpsV2FloatingIpAssociationPrivateIpAssociationPrivateIpIpv4": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "Prefix length of the network to which this host IPv4 address belongs. Default value is 32.\n"
        },
        "value": {
          "type": "string",
          "description": "value of address\n"
        }
      },
      "type": "object",
      "required": [
        "prefixLength",
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getFloatingIpsV2FloatingIpAssociationPrivateIpAssociationPrivateIpIpv6:getFloatingIpsV2FloatingIpAssociationPrivateIpAssociationPrivateIpIpv6": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "Prefix length of the network to which this host IPv4 address belongs. Default value is 32.\n"
        },
        "value": {
          "type": "string",
          "description": "value of address\n"
        }
      },
      "type": "object",
      "required": [
        "prefixLength",
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getFloatingIpsV2FloatingIpAssociationVmNicAssociation:getFloatingIpsV2FloatingIpAssociationVmNicAssociation": {
      "properties": {
        "vmNicReference": {
          "type": "string",
          "description": "VM NIC reference.\n"
        },
        "vpcReference": {
          "type": "string",
          "description": "VPC reference to which the VM NIC subnet belongs.\n"
        }
      },
      "type": "object",
      "required": [
        "vmNicReference",
        "vpcReference"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getFloatingIpsV2FloatingIpExternalSubnet:getFloatingIpsV2FloatingIpExternalSubnet": {
      "properties": {
        "bridgeName": {
          "type": "string"
        },
        "clusterName": {
          "type": "string"
        },
        "clusterReference": {
          "type": "string"
        },
        "description": {
          "type": "string",
          "description": "Description for the Floating IP.\n"
        },
        "dhcpOptions": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetFloatingIpsV2FloatingIpExternalSubnetDhcpOption:getFloatingIpsV2FloatingIpExternalSubnetDhcpOption"
          }
        },
        "dynamicIpAddresses": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetFloatingIpsV2FloatingIpExternalSubnetDynamicIpAddress:getFloatingIpsV2FloatingIpExternalSubnetDynamicIpAddress"
          }
        },
        "extId": {
          "type": "string",
          "description": "Floating IP UUID\n"
        },
        "hypervisorType": {
          "type": "string"
        },
        "ipConfigs": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetFloatingIpsV2FloatingIpExternalSubnetIpConfig:getFloatingIpsV2FloatingIpExternalSubnetIpConfig"
          }
        },
        "ipPrefix": {
          "type": "string"
        },
        "ipUsages": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetFloatingIpsV2FloatingIpExternalSubnetIpUsage:getFloatingIpsV2FloatingIpExternalSubnetIpUsage"
          }
        },
        "isAdvancedNetworking": {
          "type": "boolean"
        },
        "isExternal": {
          "type": "boolean"
        },
        "isNatEnabled": {
          "type": "boolean"
        },
        "links": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetFloatingIpsV2FloatingIpExternalSubnetLink:getFloatingIpsV2FloatingIpExternalSubnetLink"
          },
          "description": "A HATEOAS style link for the response. Each link contains a user-friendly name identifying the link and an address for retrieving the particular resource.\n"
        },
        "migrationState": {
          "type": "string"
        },
        "name": {
          "type": "string",
          "description": "Name of the floating IP.\n"
        },
        "networkFunctionChainReference": {
          "type": "string"
        },
        "networkId": {
          "type": "integer"
        },
        "reservedIpAddresses": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetFloatingIpsV2FloatingIpExternalSubnetReservedIpAddress:getFloatingIpsV2FloatingIpExternalSubnetReservedIpAddress"
          }
        },
        "subnetType": {
          "type": "string"
        },
        "virtualSwitchReference": {
          "type": "string"
        },
        "virtualSwitches": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetFloatingIpsV2FloatingIpExternalSubnetVirtualSwitch:getFloatingIpsV2FloatingIpExternalSubnetVirtualSwitch"
          }
        },
        "vpcReference": {
          "type": "string",
          "description": "VPC reference UUID\n"
        },
        "vpcs": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetFloatingIpsV2FloatingIpExternalSubnetVpc:getFloatingIpsV2FloatingIpExternalSubnetVpc"
          },
          "description": "Networking common base object\n"
        }
      },
      "type": "object",
      "required": [
        "bridgeName",
        "clusterName",
        "clusterReference",
        "description",
        "dhcpOptions",
        "dynamicIpAddresses",
        "extId",
        "hypervisorType",
        "ipConfigs",
        "ipPrefix",
        "ipUsages",
        "isAdvancedNetworking",
        "isExternal",
        "isNatEnabled",
        "links",
        "migrationState",
        "name",
        "networkFunctionChainReference",
        "networkId",
        "reservedIpAddresses",
        "subnetType",
        "virtualSwitchReference",
        "virtualSwitches",
        "vpcReference",
        "vpcs"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getFloatingIpsV2FloatingIpExternalSubnetDhcpOption:getFloatingIpsV2FloatingIpExternalSubnetDhcpOption": {
      "properties": {
        "bootFileName": {
          "type": "string"
        },
        "domainName": {
          "type": "string"
        },
        "domainNameServers": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetFloatingIpsV2FloatingIpExternalSubnetDhcpOptionDomainNameServer:getFloatingIpsV2FloatingIpExternalSubnetDhcpOptionDomainNameServer"
          }
        },
        "ntpServers": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetFloatingIpsV2FloatingIpExternalSubnetDhcpOptionNtpServer:getFloatingIpsV2FloatingIpExternalSubnetDhcpOptionNtpServer"
          }
        },
        "searchDomains": {
          "type": "array",
          "items": {
            "type": "string"
          }
        },
        "tftpServerName": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "bootFileName",
        "domainName",
        "domainNameServers",
        "ntpServers",
        "searchDomains",
        "tftpServerName"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getFloatingIpsV2FloatingIpExternalSubnetDhcpOptionDomainNameServer:getFloatingIpsV2FloatingIpExternalSubnetDhcpOptionDomainNameServer": {
      "properties": {
        "ipv4s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetFloatingIpsV2FloatingIpExternalSubnetDhcpOptionDomainNameServerIpv4:getFloatingIpsV2FloatingIpExternalSubnetDhcpOptionDomainNameServerIpv4"
          },
          "description": "Reference to IP Configuration\n"
        },
        "ipv6s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetFloatingIpsV2FloatingIpExternalSubnetDhcpOptionDomainNameServerIpv6:getFloatingIpsV2FloatingIpExternalSubnetDhcpOptionDomainNameServerIpv6"
          },
          "description": "Reference to IP Configuration\n"
        }
      },
      "type": "object",
      "required": [
        "ipv4s",
        "ipv6s"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getFloatingIpsV2FloatingIpExternalSubnetDhcpOptionDomainNameServerIpv4:getFloatingIpsV2FloatingIpExternalSubnetDhcpOptionDomainNameServerIpv4": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "Prefix length of the network to which this host IPv4 address belongs. Default value is 32.\n"
        },
        "value": {
          "type": "string",
          "description": "value of address\n"
        }
      },
      "type": "object",
      "required": [
        "prefixLength",
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getFloatingIpsV2FloatingIpExternalSubnetDhcpOptionDomainNameServerIpv6:getFloatingIpsV2FloatingIpExternalSubnetDhcpOptionDomainNameServerIpv6": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "Prefix length of the network to which this host IPv4 address belongs. Default value is 32.\n"
        },
        "value": {
          "type": "string",
          "description": "value of address\n"
        }
      },
      "type": "object",
      "required": [
        "prefixLength",
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getFloatingIpsV2FloatingIpExternalSubnetDhcpOptionNtpServer:getFloatingIpsV2FloatingIpExternalSubnetDhcpOptionNtpServer": {
      "properties": {
        "ipv4s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetFloatingIpsV2FloatingIpExternalSubnetDhcpOptionNtpServerIpv4:getFloatingIpsV2FloatingIpExternalSubnetDhcpOptionNtpServerIpv4"
          },
          "description": "Reference to IP Configuration\n"
        },
        "ipv6s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetFloatingIpsV2FloatingIpExternalSubnetDhcpOptionNtpServerIpv6:getFloatingIpsV2FloatingIpExternalSubnetDhcpOptionNtpServerIpv6"
          },
          "description": "Reference to IP Configuration\n"
        }
      },
      "type": "object",
      "required": [
        "ipv4s",
        "ipv6s"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getFloatingIpsV2FloatingIpExternalSubnetDhcpOptionNtpServerIpv4:getFloatingIpsV2FloatingIpExternalSubnetDhcpOptionNtpServerIpv4": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "Prefix length of the network to which this host IPv4 address belongs. Default value is 32.\n"
        },
        "value": {
          "type": "string",
          "description": "value of address\n"
        }
      },
      "type": "object",
      "required": [
        "prefixLength",
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getFloatingIpsV2FloatingIpExternalSubnetDhcpOptionNtpServerIpv6:getFloatingIpsV2FloatingIpExternalSubnetDhcpOptionNtpServerIpv6": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "Prefix length of the network to which this host IPv4 address belongs. Default value is 32.\n"
        },
        "value": {
          "type": "string",
          "description": "value of address\n"
        }
      },
      "type": "object",
      "required": [
        "prefixLength",
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getFloatingIpsV2FloatingIpExternalSubnetDynamicIpAddress:getFloatingIpsV2FloatingIpExternalSubnetDynamicIpAddress": {
      "properties": {
        "ipv4s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetFloatingIpsV2FloatingIpExternalSubnetDynamicIpAddressIpv4:getFloatingIpsV2FloatingIpExternalSubnetDynamicIpAddressIpv4"
          },
          "description": "Reference to IP Configuration\n"
        },
        "ipv6s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetFloatingIpsV2FloatingIpExternalSubnetDynamicIpAddressIpv6:getFloatingIpsV2FloatingIpExternalSubnetDynamicIpAddressIpv6"
          },
          "description": "Reference to IP Configuration\n"
        }
      },
      "type": "object",
      "required": [
        "ipv4s",
        "ipv6s"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getFloatingIpsV2FloatingIpExternalSubnetDynamicIpAddressIpv4:getFloatingIpsV2FloatingIpExternalSubnetDynamicIpAddressIpv4": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "Prefix length of the network to which this host IPv4 address belongs. Default value is 32.\n"
        },
        "value": {
          "type": "string",
          "description": "value of address\n"
        }
      },
      "type": "object",
      "required": [
        "prefixLength",
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getFloatingIpsV2FloatingIpExternalSubnetDynamicIpAddressIpv6:getFloatingIpsV2FloatingIpExternalSubnetDynamicIpAddressIpv6": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "Prefix length of the network to which this host IPv4 address belongs. Default value is 32.\n"
        },
        "value": {
          "type": "string",
          "description": "value of address\n"
        }
      },
      "type": "object",
      "required": [
        "prefixLength",
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getFloatingIpsV2FloatingIpExternalSubnetIpConfig:getFloatingIpsV2FloatingIpExternalSubnetIpConfig": {
      "properties": {
        "ipv4s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetFloatingIpsV2FloatingIpExternalSubnetIpConfigIpv4:getFloatingIpsV2FloatingIpExternalSubnetIpConfigIpv4"
          },
          "description": "Reference to IP Configuration\n"
        },
        "ipv6s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetFloatingIpsV2FloatingIpExternalSubnetIpConfigIpv6:getFloatingIpsV2FloatingIpExternalSubnetIpConfigIpv6"
          },
          "description": "Reference to IP Configuration\n"
        }
      },
      "type": "object",
      "required": [
        "ipv4s",
        "ipv6s"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getFloatingIpsV2FloatingIpExternalSubnetIpConfigIpv4:getFloatingIpsV2FloatingIpExternalSubnetIpConfigIpv4": {
      "properties": {
        "defaultGatewayIps": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetFloatingIpsV2FloatingIpExternalSubnetIpConfigIpv4DefaultGatewayIp:getFloatingIpsV2FloatingIpExternalSubnetIpConfigIpv4DefaultGatewayIp"
          }
        },
        "dhcpServerAddresses": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetFloatingIpsV2FloatingIpExternalSubnetIpConfigIpv4DhcpServerAddress:getFloatingIpsV2FloatingIpExternalSubnetIpConfigIpv4DhcpServerAddress"
          }
        },
        "ipSubnets": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetFloatingIpsV2FloatingIpExternalSubnetIpConfigIpv4IpSubnet:getFloatingIpsV2FloatingIpExternalSubnetIpConfigIpv4IpSubnet"
          }
        },
        "poolLists": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetFloatingIpsV2FloatingIpExternalSubnetIpConfigIpv4PoolList:getFloatingIpsV2FloatingIpExternalSubnetIpConfigIpv4PoolList"
          }
        }
      },
      "type": "object",
      "required": [
        "defaultGatewayIps",
        "dhcpServerAddresses",
        "ipSubnets",
        "poolLists"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getFloatingIpsV2FloatingIpExternalSubnetIpConfigIpv4DefaultGatewayIp:getFloatingIpsV2FloatingIpExternalSubnetIpConfigIpv4DefaultGatewayIp": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "Prefix length of the network to which this host IPv4 address belongs. Default value is 32.\n"
        },
        "value": {
          "type": "string",
          "description": "value of address\n"
        }
      },
      "type": "object",
      "required": [
        "prefixLength",
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getFloatingIpsV2FloatingIpExternalSubnetIpConfigIpv4DhcpServerAddress:getFloatingIpsV2FloatingIpExternalSubnetIpConfigIpv4DhcpServerAddress": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "Prefix length of the network to which this host IPv4 address belongs. Default value is 32.\n"
        },
        "value": {
          "type": "string",
          "description": "value of address\n"
        }
      },
      "type": "object",
      "required": [
        "prefixLength",
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getFloatingIpsV2FloatingIpExternalSubnetIpConfigIpv4IpSubnet:getFloatingIpsV2FloatingIpExternalSubnetIpConfigIpv4IpSubnet": {
      "properties": {
        "ips": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetFloatingIpsV2FloatingIpExternalSubnetIpConfigIpv4IpSubnetIp:getFloatingIpsV2FloatingIpExternalSubnetIpConfigIpv4IpSubnetIp"
          }
        },
        "prefixLength": {
          "type": "integer",
          "description": "Prefix length of the network to which this host IPv4 address belongs. Default value is 32.\n"
        }
      },
      "type": "object",
      "required": [
        "ips",
        "prefixLength"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getFloatingIpsV2FloatingIpExternalSubnetIpConfigIpv4IpSubnetIp:getFloatingIpsV2FloatingIpExternalSubnetIpConfigIpv4IpSubnetIp": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "Prefix length of the network to which this host IPv4 address belongs. Default value is 32.\n"
        },
        "value": {
          "type": "string",
          "description": "value of address\n"
        }
      },
      "type": "object",
      "required": [
        "prefixLength",
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getFloatingIpsV2FloatingIpExternalSubnetIpConfigIpv4PoolList:getFloatingIpsV2FloatingIpExternalSubnetIpConfigIpv4PoolList": {
      "properties": {
        "endIps": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetFloatingIpsV2FloatingIpExternalSubnetIpConfigIpv4PoolListEndIp:getFloatingIpsV2FloatingIpExternalSubnetIpConfigIpv4PoolListEndIp"
          }
        },
        "startIps": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetFloatingIpsV2FloatingIpExternalSubnetIpConfigIpv4PoolListStartIp:getFloatingIpsV2FloatingIpExternalSubnetIpConfigIpv4PoolListStartIp"
          }
        }
      },
      "type": "object",
      "required": [
        "endIps",
        "startIps"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getFloatingIpsV2FloatingIpExternalSubnetIpConfigIpv4PoolListEndIp:getFloatingIpsV2FloatingIpExternalSubnetIpConfigIpv4PoolListEndIp": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "Prefix length of the network to which this host IPv4 address belongs. Default value is 32.\n"
        },
        "value": {
          "type": "string",
          "description": "value of address\n"
        }
      },
      "type": "object",
      "required": [
        "prefixLength",
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getFloatingIpsV2FloatingIpExternalSubnetIpConfigIpv4PoolListStartIp:getFloatingIpsV2FloatingIpExternalSubnetIpConfigIpv4PoolListStartIp": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "Prefix length of the network to which this host IPv4 address belongs. Default value is 32.\n"
        },
        "value": {
          "type": "string",
          "description": "value of address\n"
        }
      },
      "type": "object",
      "required": [
        "prefixLength",
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getFloatingIpsV2FloatingIpExternalSubnetIpConfigIpv6:getFloatingIpsV2FloatingIpExternalSubnetIpConfigIpv6": {
      "properties": {
        "defaultGatewayIps": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetFloatingIpsV2FloatingIpExternalSubnetIpConfigIpv6DefaultGatewayIp:getFloatingIpsV2FloatingIpExternalSubnetIpConfigIpv6DefaultGatewayIp"
          }
        },
        "dhcpServerAddresses": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetFloatingIpsV2FloatingIpExternalSubnetIpConfigIpv6DhcpServerAddress:getFloatingIpsV2FloatingIpExternalSubnetIpConfigIpv6DhcpServerAddress"
          }
        },
        "ipSubnets": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetFloatingIpsV2FloatingIpExternalSubnetIpConfigIpv6IpSubnet:getFloatingIpsV2FloatingIpExternalSubnetIpConfigIpv6IpSubnet"
          }
        },
        "poolLists": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetFloatingIpsV2FloatingIpExternalSubnetIpConfigIpv6PoolList:getFloatingIpsV2FloatingIpExternalSubnetIpConfigIpv6PoolList"
          }
        }
      },
      "type": "object",
      "required": [
        "defaultGatewayIps",
        "dhcpServerAddresses",
        "ipSubnets",
        "poolLists"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getFloatingIpsV2FloatingIpExternalSubnetIpConfigIpv6DefaultGatewayIp:getFloatingIpsV2FloatingIpExternalSubnetIpConfigIpv6DefaultGatewayIp": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "Prefix length of the network to which this host IPv4 address belongs. Default value is 32.\n"
        },
        "value": {
          "type": "string",
          "description": "value of address\n"
        }
      },
      "type": "object",
      "required": [
        "prefixLength",
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getFloatingIpsV2FloatingIpExternalSubnetIpConfigIpv6DhcpServerAddress:getFloatingIpsV2FloatingIpExternalSubnetIpConfigIpv6DhcpServerAddress": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "Prefix length of the network to which this host IPv4 address belongs. Default value is 32.\n"
        },
        "value": {
          "type": "string",
          "description": "value of address\n"
        }
      },
      "type": "object",
      "required": [
        "prefixLength",
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getFloatingIpsV2FloatingIpExternalSubnetIpConfigIpv6IpSubnet:getFloatingIpsV2FloatingIpExternalSubnetIpConfigIpv6IpSubnet": {
      "properties": {
        "ips": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetFloatingIpsV2FloatingIpExternalSubnetIpConfigIpv6IpSubnetIp:getFloatingIpsV2FloatingIpExternalSubnetIpConfigIpv6IpSubnetIp"
          }
        },
        "prefixLength": {
          "type": "integer",
          "description": "Prefix length of the network to which this host IPv4 address belongs. Default value is 32.\n"
        }
      },
      "type": "object",
      "required": [
        "ips",
        "prefixLength"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getFloatingIpsV2FloatingIpExternalSubnetIpConfigIpv6IpSubnetIp:getFloatingIpsV2FloatingIpExternalSubnetIpConfigIpv6IpSubnetIp": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "Prefix length of the network to which this host IPv4 address belongs. Default value is 32.\n"
        },
        "value": {
          "type": "string",
          "description": "value of address\n"
        }
      },
      "type": "object",
      "required": [
        "prefixLength",
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getFloatingIpsV2FloatingIpExternalSubnetIpConfigIpv6PoolList:getFloatingIpsV2FloatingIpExternalSubnetIpConfigIpv6PoolList": {
      "properties": {
        "endIps": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetFloatingIpsV2FloatingIpExternalSubnetIpConfigIpv6PoolListEndIp:getFloatingIpsV2FloatingIpExternalSubnetIpConfigIpv6PoolListEndIp"
          }
        },
        "startIps": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetFloatingIpsV2FloatingIpExternalSubnetIpConfigIpv6PoolListStartIp:getFloatingIpsV2FloatingIpExternalSubnetIpConfigIpv6PoolListStartIp"
          }
        }
      },
      "type": "object",
      "required": [
        "endIps",
        "startIps"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getFloatingIpsV2FloatingIpExternalSubnetIpConfigIpv6PoolListEndIp:getFloatingIpsV2FloatingIpExternalSubnetIpConfigIpv6PoolListEndIp": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "Prefix length of the network to which this host IPv4 address belongs. Default value is 32.\n"
        },
        "value": {
          "type": "string",
          "description": "value of address\n"
        }
      },
      "type": "object",
      "required": [
        "prefixLength",
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getFloatingIpsV2FloatingIpExternalSubnetIpConfigIpv6PoolListStartIp:getFloatingIpsV2FloatingIpExternalSubnetIpConfigIpv6PoolListStartIp": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "Prefix length of the network to which this host IPv4 address belongs. Default value is 32.\n"
        },
        "value": {
          "type": "string",
          "description": "value of address\n"
        }
      },
      "type": "object",
      "required": [
        "prefixLength",
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getFloatingIpsV2FloatingIpExternalSubnetIpUsage:getFloatingIpsV2FloatingIpExternalSubnetIpUsage": {
      "properties": {
        "ipPoolUsages": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetFloatingIpsV2FloatingIpExternalSubnetIpUsageIpPoolUsage:getFloatingIpsV2FloatingIpExternalSubnetIpUsageIpPoolUsage"
          }
        },
        "numAssignedIps": {
          "type": "integer"
        },
        "numFreeIps": {
          "type": "integer"
        },
        "numMacs": {
          "type": "integer"
        }
      },
      "type": "object",
      "required": [
        "ipPoolUsages",
        "numAssignedIps",
        "numFreeIps",
        "numMacs"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getFloatingIpsV2FloatingIpExternalSubnetIpUsageIpPoolUsage:getFloatingIpsV2FloatingIpExternalSubnetIpUsageIpPoolUsage": {
      "properties": {
        "numFreeIps": {
          "type": "integer"
        },
        "numTotalIps": {
          "type": "integer"
        },
        "ranges": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetFloatingIpsV2FloatingIpExternalSubnetIpUsageIpPoolUsageRange:getFloatingIpsV2FloatingIpExternalSubnetIpUsageIpPoolUsageRange"
          }
        }
      },
      "type": "object",
      "required": [
        "numFreeIps",
        "numTotalIps",
        "ranges"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getFloatingIpsV2FloatingIpExternalSubnetIpUsageIpPoolUsageRange:getFloatingIpsV2FloatingIpExternalSubnetIpUsageIpPoolUsageRange": {
      "properties": {
        "endIps": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetFloatingIpsV2FloatingIpExternalSubnetIpUsageIpPoolUsageRangeEndIp:getFloatingIpsV2FloatingIpExternalSubnetIpUsageIpPoolUsageRangeEndIp"
          }
        },
        "startIps": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetFloatingIpsV2FloatingIpExternalSubnetIpUsageIpPoolUsageRangeStartIp:getFloatingIpsV2FloatingIpExternalSubnetIpUsageIpPoolUsageRangeStartIp"
          }
        }
      },
      "type": "object",
      "required": [
        "endIps",
        "startIps"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getFloatingIpsV2FloatingIpExternalSubnetIpUsageIpPoolUsageRangeEndIp:getFloatingIpsV2FloatingIpExternalSubnetIpUsageIpPoolUsageRangeEndIp": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "Prefix length of the network to which this host IPv4 address belongs. Default value is 32.\n"
        },
        "value": {
          "type": "string",
          "description": "value of address\n"
        }
      },
      "type": "object",
      "required": [
        "prefixLength",
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getFloatingIpsV2FloatingIpExternalSubnetIpUsageIpPoolUsageRangeStartIp:getFloatingIpsV2FloatingIpExternalSubnetIpUsageIpPoolUsageRangeStartIp": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "Prefix length of the network to which this host IPv4 address belongs. Default value is 32.\n"
        },
        "value": {
          "type": "string",
          "description": "value of address\n"
        }
      },
      "type": "object",
      "required": [
        "prefixLength",
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getFloatingIpsV2FloatingIpExternalSubnetLink:getFloatingIpsV2FloatingIpExternalSubnetLink": {
      "properties": {
        "href": {
          "type": "string",
          "description": "- The URL at which the entity described by the link can be accessed.\n"
        },
        "rel": {
          "type": "string",
          "description": "- A name that identifies the relationship of the link to the object that is returned by the URL. The unique value of \"self\" identifies the URL for the object.\n"
        }
      },
      "type": "object",
      "required": [
        "href",
        "rel"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getFloatingIpsV2FloatingIpExternalSubnetReservedIpAddress:getFloatingIpsV2FloatingIpExternalSubnetReservedIpAddress": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "Prefix length of the network to which this host IPv4 address belongs. Default value is 32.\n"
        },
        "value": {
          "type": "string",
          "description": "value of address\n"
        }
      },
      "type": "object",
      "required": [
        "prefixLength",
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getFloatingIpsV2FloatingIpExternalSubnetVirtualSwitch:getFloatingIpsV2FloatingIpExternalSubnetVirtualSwitch": {
      "properties": {
        "bondMode": {
          "type": "boolean"
        },
        "clusters": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetFloatingIpsV2FloatingIpExternalSubnetVirtualSwitchCluster:getFloatingIpsV2FloatingIpExternalSubnetVirtualSwitchCluster"
          }
        },
        "description": {
          "type": "string",
          "description": "Description for the Floating IP.\n"
        },
        "extId": {
          "type": "string",
          "description": "Floating IP UUID\n"
        },
        "hasDeploymentError": {
          "type": "boolean"
        },
        "isDefault": {
          "type": "boolean"
        },
        "links": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetFloatingIpsV2FloatingIpExternalSubnetVirtualSwitchLink:getFloatingIpsV2FloatingIpExternalSubnetVirtualSwitchLink"
          },
          "description": "A HATEOAS style link for the response. Each link contains a user-friendly name identifying the link and an address for retrieving the particular resource.\n"
        },
        "metadatas": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetFloatingIpsV2FloatingIpExternalSubnetVirtualSwitchMetadata:getFloatingIpsV2FloatingIpExternalSubnetVirtualSwitchMetadata"
          },
          "description": "Metadata associated with this resource.\n"
        },
        "mtu": {
          "type": "integer"
        },
        "name": {
          "type": "string",
          "description": "Name of the floating IP.\n"
        },
        "tenantId": {
          "type": "string",
          "description": "A globally unique identifier that represents the tenant that owns this entity.\n"
        }
      },
      "type": "object",
      "required": [
        "bondMode",
        "clusters",
        "description",
        "extId",
        "hasDeploymentError",
        "isDefault",
        "links",
        "metadatas",
        "mtu",
        "name",
        "tenantId"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getFloatingIpsV2FloatingIpExternalSubnetVirtualSwitchCluster:getFloatingIpsV2FloatingIpExternalSubnetVirtualSwitchCluster": {
      "properties": {
        "extId": {
          "type": "string",
          "description": "Floating IP UUID\n"
        },
        "gatewayIpAddresses": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetFloatingIpsV2FloatingIpExternalSubnetVirtualSwitchClusterGatewayIpAddress:getFloatingIpsV2FloatingIpExternalSubnetVirtualSwitchClusterGatewayIpAddress"
          }
        },
        "hosts": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetFloatingIpsV2FloatingIpExternalSubnetVirtualSwitchClusterHost:getFloatingIpsV2FloatingIpExternalSubnetVirtualSwitchClusterHost"
          }
        }
      },
      "type": "object",
      "required": [
        "extId",
        "gatewayIpAddresses",
        "hosts"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getFloatingIpsV2FloatingIpExternalSubnetVirtualSwitchClusterGatewayIpAddress:getFloatingIpsV2FloatingIpExternalSubnetVirtualSwitchClusterGatewayIpAddress": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "Prefix length of the network to which this host IPv4 address belongs. Default value is 32.\n"
        },
        "value": {
          "type": "string",
          "description": "value of address\n"
        }
      },
      "type": "object",
      "required": [
        "prefixLength",
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getFloatingIpsV2FloatingIpExternalSubnetVirtualSwitchClusterHost:getFloatingIpsV2FloatingIpExternalSubnetVirtualSwitchClusterHost": {
      "properties": {
        "extId": {
          "type": "string",
          "description": "Floating IP UUID\n"
        },
        "hostNics": {
          "type": "array",
          "items": {
            "type": "string"
          }
        },
        "internalBridgeName": {
          "type": "string"
        },
        "ipAddresses": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetFloatingIpsV2FloatingIpExternalSubnetVirtualSwitchClusterHostIpAddress:getFloatingIpsV2FloatingIpExternalSubnetVirtualSwitchClusterHostIpAddress"
          }
        },
        "routeTable": {
          "type": "integer"
        }
      },
      "type": "object",
      "required": [
        "extId",
        "hostNics",
        "internalBridgeName",
        "ipAddresses",
        "routeTable"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getFloatingIpsV2FloatingIpExternalSubnetVirtualSwitchClusterHostIpAddress:getFloatingIpsV2FloatingIpExternalSubnetVirtualSwitchClusterHostIpAddress": {
      "properties": {
        "ips": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetFloatingIpsV2FloatingIpExternalSubnetVirtualSwitchClusterHostIpAddressIp:getFloatingIpsV2FloatingIpExternalSubnetVirtualSwitchClusterHostIpAddressIp"
          }
        },
        "prefixLength": {
          "type": "integer",
          "description": "Prefix length of the network to which this host IPv4 address belongs. Default value is 32.\n"
        }
      },
      "type": "object",
      "required": [
        "ips",
        "prefixLength"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getFloatingIpsV2FloatingIpExternalSubnetVirtualSwitchClusterHostIpAddressIp:getFloatingIpsV2FloatingIpExternalSubnetVirtualSwitchClusterHostIpAddressIp": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "Prefix length of the network to which this host IPv4 address belongs. Default value is 32.\n"
        },
        "value": {
          "type": "string",
          "description": "value of address\n"
        }
      },
      "type": "object",
      "required": [
        "prefixLength",
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getFloatingIpsV2FloatingIpExternalSubnetVirtualSwitchLink:getFloatingIpsV2FloatingIpExternalSubnetVirtualSwitchLink": {
      "properties": {
        "href": {
          "type": "string",
          "description": "- The URL at which the entity described by the link can be accessed.\n"
        },
        "rel": {
          "type": "string",
          "description": "- A name that identifies the relationship of the link to the object that is returned by the URL. The unique value of \"self\" identifies the URL for the object.\n"
        }
      },
      "type": "object",
      "required": [
        "href",
        "rel"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getFloatingIpsV2FloatingIpExternalSubnetVirtualSwitchMetadata:getFloatingIpsV2FloatingIpExternalSubnetVirtualSwitchMetadata": {
      "properties": {
        "categoryIds": {
          "type": "array",
          "items": {
            "type": "array",
            "items": {
              "$ref": "pulumi.json#/Any"
            }
          },
          "description": "A list of globally unique identifiers that represent all the categories the resource is associated with.\n"
        },
        "ownerReferenceId": {
          "type": "string",
          "description": "A globally unique identifier that represents the owner of this resource.\n"
        },
        "ownerUserName": {
          "type": "string",
          "description": "The userName of the owner of this resource.\n"
        },
        "projectName": {
          "type": "string",
          "description": "The name of the project this resource belongs to.\n"
        },
        "projectReferenceId": {
          "type": "string",
          "description": "A globally unique identifier that represents the project this resource belongs to.\n"
        }
      },
      "type": "object",
      "required": [
        "categoryIds",
        "ownerReferenceId",
        "ownerUserName",
        "projectName",
        "projectReferenceId"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getFloatingIpsV2FloatingIpExternalSubnetVpc:getFloatingIpsV2FloatingIpExternalSubnetVpc": {
      "properties": {
        "commonDhcpOptions": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetFloatingIpsV2FloatingIpExternalSubnetVpcCommonDhcpOption:getFloatingIpsV2FloatingIpExternalSubnetVpcCommonDhcpOption"
          }
        },
        "description": {
          "type": "string",
          "description": "Description for the Floating IP.\n"
        },
        "extId": {
          "type": "string",
          "description": "Floating IP UUID\n"
        },
        "externalRoutingDomainReference": {
          "type": "string"
        },
        "externalSubnets": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetFloatingIpsV2FloatingIpExternalSubnetVpcExternalSubnet:getFloatingIpsV2FloatingIpExternalSubnetVpcExternalSubnet"
          }
        },
        "externallyRoutablePrefixes": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetFloatingIpsV2FloatingIpExternalSubnetVpcExternallyRoutablePrefix:getFloatingIpsV2FloatingIpExternalSubnetVpcExternallyRoutablePrefix"
          }
        },
        "links": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetFloatingIpsV2FloatingIpExternalSubnetVpcLink:getFloatingIpsV2FloatingIpExternalSubnetVpcLink"
          },
          "description": "A HATEOAS style link for the response. Each link contains a user-friendly name identifying the link and an address for retrieving the particular resource.\n"
        },
        "metadatas": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetFloatingIpsV2FloatingIpExternalSubnetVpcMetadata:getFloatingIpsV2FloatingIpExternalSubnetVpcMetadata"
          },
          "description": "Metadata associated with this resource.\n"
        },
        "name": {
          "type": "string",
          "description": "Name of the floating IP.\n"
        },
        "snatIps": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetFloatingIpsV2FloatingIpExternalSubnetVpcSnatIp:getFloatingIpsV2FloatingIpExternalSubnetVpcSnatIp"
          }
        },
        "tenantId": {
          "type": "string",
          "description": "A globally unique identifier that represents the tenant that owns this entity.\n"
        },
        "vpcType": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "commonDhcpOptions",
        "description",
        "extId",
        "externalRoutingDomainReference",
        "externalSubnets",
        "externallyRoutablePrefixes",
        "links",
        "metadatas",
        "name",
        "snatIps",
        "tenantId",
        "vpcType"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getFloatingIpsV2FloatingIpExternalSubnetVpcCommonDhcpOption:getFloatingIpsV2FloatingIpExternalSubnetVpcCommonDhcpOption": {
      "properties": {
        "domainNameServers": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetFloatingIpsV2FloatingIpExternalSubnetVpcCommonDhcpOptionDomainNameServer:getFloatingIpsV2FloatingIpExternalSubnetVpcCommonDhcpOptionDomainNameServer"
          }
        }
      },
      "type": "object",
      "required": [
        "domainNameServers"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getFloatingIpsV2FloatingIpExternalSubnetVpcCommonDhcpOptionDomainNameServer:getFloatingIpsV2FloatingIpExternalSubnetVpcCommonDhcpOptionDomainNameServer": {
      "properties": {
        "ipv4s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetFloatingIpsV2FloatingIpExternalSubnetVpcCommonDhcpOptionDomainNameServerIpv4:getFloatingIpsV2FloatingIpExternalSubnetVpcCommonDhcpOptionDomainNameServerIpv4"
          },
          "description": "Reference to IP Configuration\n"
        },
        "ipv6s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetFloatingIpsV2FloatingIpExternalSubnetVpcCommonDhcpOptionDomainNameServerIpv6:getFloatingIpsV2FloatingIpExternalSubnetVpcCommonDhcpOptionDomainNameServerIpv6"
          },
          "description": "Reference to IP Configuration\n"
        }
      },
      "type": "object",
      "required": [
        "ipv4s",
        "ipv6s"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getFloatingIpsV2FloatingIpExternalSubnetVpcCommonDhcpOptionDomainNameServerIpv4:getFloatingIpsV2FloatingIpExternalSubnetVpcCommonDhcpOptionDomainNameServerIpv4": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "Prefix length of the network to which this host IPv4 address belongs. Default value is 32.\n"
        },
        "value": {
          "type": "string",
          "description": "value of address\n"
        }
      },
      "type": "object",
      "required": [
        "prefixLength",
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getFloatingIpsV2FloatingIpExternalSubnetVpcCommonDhcpOptionDomainNameServerIpv6:getFloatingIpsV2FloatingIpExternalSubnetVpcCommonDhcpOptionDomainNameServerIpv6": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "Prefix length of the network to which this host IPv4 address belongs. Default value is 32.\n"
        },
        "value": {
          "type": "string",
          "description": "value of address\n"
        }
      },
      "type": "object",
      "required": [
        "prefixLength",
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getFloatingIpsV2FloatingIpExternalSubnetVpcExternalSubnet:getFloatingIpsV2FloatingIpExternalSubnetVpcExternalSubnet": {
      "properties": {
        "activeGatewayCount": {
          "type": "integer"
        },
        "activeGatewayNodes": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetFloatingIpsV2FloatingIpExternalSubnetVpcExternalSubnetActiveGatewayNode:getFloatingIpsV2FloatingIpExternalSubnetVpcExternalSubnetActiveGatewayNode"
          }
        },
        "externalIps": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetFloatingIpsV2FloatingIpExternalSubnetVpcExternalSubnetExternalIp:getFloatingIpsV2FloatingIpExternalSubnetVpcExternalSubnetExternalIp"
          }
        },
        "gatewayNodes": {
          "type": "array",
          "items": {
            "type": "string"
          }
        },
        "subnetReference": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "activeGatewayCount",
        "activeGatewayNodes",
        "externalIps",
        "gatewayNodes",
        "subnetReference"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getFloatingIpsV2FloatingIpExternalSubnetVpcExternalSubnetActiveGatewayNode:getFloatingIpsV2FloatingIpExternalSubnetVpcExternalSubnetActiveGatewayNode": {
      "properties": {
        "nodeId": {
          "type": "string"
        },
        "nodeIpAddresses": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetFloatingIpsV2FloatingIpExternalSubnetVpcExternalSubnetActiveGatewayNodeNodeIpAddress:getFloatingIpsV2FloatingIpExternalSubnetVpcExternalSubnetActiveGatewayNodeNodeIpAddress"
          }
        }
      },
      "type": "object",
      "required": [
        "nodeId",
        "nodeIpAddresses"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getFloatingIpsV2FloatingIpExternalSubnetVpcExternalSubnetActiveGatewayNodeNodeIpAddress:getFloatingIpsV2FloatingIpExternalSubnetVpcExternalSubnetActiveGatewayNodeNodeIpAddress": {
      "properties": {
        "ipv4s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetFloatingIpsV2FloatingIpExternalSubnetVpcExternalSubnetActiveGatewayNodeNodeIpAddressIpv4:getFloatingIpsV2FloatingIpExternalSubnetVpcExternalSubnetActiveGatewayNodeNodeIpAddressIpv4"
          },
          "description": "Reference to IP Configuration\n"
        },
        "ipv6s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetFloatingIpsV2FloatingIpExternalSubnetVpcExternalSubnetActiveGatewayNodeNodeIpAddressIpv6:getFloatingIpsV2FloatingIpExternalSubnetVpcExternalSubnetActiveGatewayNodeNodeIpAddressIpv6"
          },
          "description": "Reference to IP Configuration\n"
        }
      },
      "type": "object",
      "required": [
        "ipv4s",
        "ipv6s"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getFloatingIpsV2FloatingIpExternalSubnetVpcExternalSubnetActiveGatewayNodeNodeIpAddressIpv4:getFloatingIpsV2FloatingIpExternalSubnetVpcExternalSubnetActiveGatewayNodeNodeIpAddressIpv4": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "Prefix length of the network to which this host IPv4 address belongs. Default value is 32.\n"
        },
        "value": {
          "type": "string",
          "description": "value of address\n"
        }
      },
      "type": "object",
      "required": [
        "prefixLength",
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getFloatingIpsV2FloatingIpExternalSubnetVpcExternalSubnetActiveGatewayNodeNodeIpAddressIpv6:getFloatingIpsV2FloatingIpExternalSubnetVpcExternalSubnetActiveGatewayNodeNodeIpAddressIpv6": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "Prefix length of the network to which this host IPv4 address belongs. Default value is 32.\n"
        },
        "value": {
          "type": "string",
          "description": "value of address\n"
        }
      },
      "type": "object",
      "required": [
        "prefixLength",
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getFloatingIpsV2FloatingIpExternalSubnetVpcExternalSubnetExternalIp:getFloatingIpsV2FloatingIpExternalSubnetVpcExternalSubnetExternalIp": {
      "properties": {
        "ipv4s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetFloatingIpsV2FloatingIpExternalSubnetVpcExternalSubnetExternalIpIpv4:getFloatingIpsV2FloatingIpExternalSubnetVpcExternalSubnetExternalIpIpv4"
          },
          "description": "Reference to IP Configuration\n"
        },
        "ipv6s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetFloatingIpsV2FloatingIpExternalSubnetVpcExternalSubnetExternalIpIpv6:getFloatingIpsV2FloatingIpExternalSubnetVpcExternalSubnetExternalIpIpv6"
          },
          "description": "Reference to IP Configuration\n"
        }
      },
      "type": "object",
      "required": [
        "ipv4s",
        "ipv6s"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getFloatingIpsV2FloatingIpExternalSubnetVpcExternalSubnetExternalIpIpv4:getFloatingIpsV2FloatingIpExternalSubnetVpcExternalSubnetExternalIpIpv4": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "Prefix length of the network to which this host IPv4 address belongs. Default value is 32.\n"
        },
        "value": {
          "type": "string",
          "description": "value of address\n"
        }
      },
      "type": "object",
      "required": [
        "prefixLength",
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getFloatingIpsV2FloatingIpExternalSubnetVpcExternalSubnetExternalIpIpv6:getFloatingIpsV2FloatingIpExternalSubnetVpcExternalSubnetExternalIpIpv6": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "Prefix length of the network to which this host IPv4 address belongs. Default value is 32.\n"
        },
        "value": {
          "type": "string",
          "description": "value of address\n"
        }
      },
      "type": "object",
      "required": [
        "prefixLength",
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getFloatingIpsV2FloatingIpExternalSubnetVpcExternallyRoutablePrefix:getFloatingIpsV2FloatingIpExternalSubnetVpcExternallyRoutablePrefix": {
      "properties": {
        "ipv4s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetFloatingIpsV2FloatingIpExternalSubnetVpcExternallyRoutablePrefixIpv4:getFloatingIpsV2FloatingIpExternalSubnetVpcExternallyRoutablePrefixIpv4"
          },
          "description": "Reference to IP Configuration\n"
        },
        "ipv6s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetFloatingIpsV2FloatingIpExternalSubnetVpcExternallyRoutablePrefixIpv6:getFloatingIpsV2FloatingIpExternalSubnetVpcExternallyRoutablePrefixIpv6"
          },
          "description": "Reference to IP Configuration\n"
        }
      },
      "type": "object",
      "required": [
        "ipv4s",
        "ipv6s"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getFloatingIpsV2FloatingIpExternalSubnetVpcExternallyRoutablePrefixIpv4:getFloatingIpsV2FloatingIpExternalSubnetVpcExternallyRoutablePrefixIpv4": {
      "properties": {
        "ips": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetFloatingIpsV2FloatingIpExternalSubnetVpcExternallyRoutablePrefixIpv4Ip:getFloatingIpsV2FloatingIpExternalSubnetVpcExternallyRoutablePrefixIpv4Ip"
          }
        },
        "prefixLength": {
          "type": "integer",
          "description": "Prefix length of the network to which this host IPv4 address belongs. Default value is 32.\n"
        }
      },
      "type": "object",
      "required": [
        "ips",
        "prefixLength"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getFloatingIpsV2FloatingIpExternalSubnetVpcExternallyRoutablePrefixIpv4Ip:getFloatingIpsV2FloatingIpExternalSubnetVpcExternallyRoutablePrefixIpv4Ip": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "Prefix length of the network to which this host IPv4 address belongs. Default value is 32.\n"
        },
        "value": {
          "type": "string",
          "description": "value of address\n"
        }
      },
      "type": "object",
      "required": [
        "prefixLength",
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getFloatingIpsV2FloatingIpExternalSubnetVpcExternallyRoutablePrefixIpv6:getFloatingIpsV2FloatingIpExternalSubnetVpcExternallyRoutablePrefixIpv6": {
      "properties": {
        "ips": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetFloatingIpsV2FloatingIpExternalSubnetVpcExternallyRoutablePrefixIpv6Ip:getFloatingIpsV2FloatingIpExternalSubnetVpcExternallyRoutablePrefixIpv6Ip"
          }
        },
        "prefixLength": {
          "type": "integer",
          "description": "Prefix length of the network to which this host IPv4 address belongs. Default value is 32.\n"
        }
      },
      "type": "object",
      "required": [
        "ips",
        "prefixLength"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getFloatingIpsV2FloatingIpExternalSubnetVpcExternallyRoutablePrefixIpv6Ip:getFloatingIpsV2FloatingIpExternalSubnetVpcExternallyRoutablePrefixIpv6Ip": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "Prefix length of the network to which this host IPv4 address belongs. Default value is 32.\n"
        },
        "value": {
          "type": "string",
          "description": "value of address\n"
        }
      },
      "type": "object",
      "required": [
        "prefixLength",
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getFloatingIpsV2FloatingIpExternalSubnetVpcLink:getFloatingIpsV2FloatingIpExternalSubnetVpcLink": {
      "properties": {
        "href": {
          "type": "string",
          "description": "- The URL at which the entity described by the link can be accessed.\n"
        },
        "rel": {
          "type": "string",
          "description": "- A name that identifies the relationship of the link to the object that is returned by the URL. The unique value of \"self\" identifies the URL for the object.\n"
        }
      },
      "type": "object",
      "required": [
        "href",
        "rel"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getFloatingIpsV2FloatingIpExternalSubnetVpcMetadata:getFloatingIpsV2FloatingIpExternalSubnetVpcMetadata": {
      "properties": {
        "categoryIds": {
          "type": "array",
          "items": {
            "type": "array",
            "items": {
              "$ref": "pulumi.json#/Any"
            }
          },
          "description": "A list of globally unique identifiers that represent all the categories the resource is associated with.\n"
        },
        "ownerReferenceId": {
          "type": "string",
          "description": "A globally unique identifier that represents the owner of this resource.\n"
        },
        "ownerUserName": {
          "type": "string",
          "description": "The userName of the owner of this resource.\n"
        },
        "projectName": {
          "type": "string",
          "description": "The name of the project this resource belongs to.\n"
        },
        "projectReferenceId": {
          "type": "string",
          "description": "A globally unique identifier that represents the project this resource belongs to.\n"
        }
      },
      "type": "object",
      "required": [
        "categoryIds",
        "ownerReferenceId",
        "ownerUserName",
        "projectName",
        "projectReferenceId"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getFloatingIpsV2FloatingIpExternalSubnetVpcSnatIp:getFloatingIpsV2FloatingIpExternalSubnetVpcSnatIp": {
      "properties": {
        "ipv4s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetFloatingIpsV2FloatingIpExternalSubnetVpcSnatIpIpv4:getFloatingIpsV2FloatingIpExternalSubnetVpcSnatIpIpv4"
          },
          "description": "Reference to IP Configuration\n"
        },
        "ipv6s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetFloatingIpsV2FloatingIpExternalSubnetVpcSnatIpIpv6:getFloatingIpsV2FloatingIpExternalSubnetVpcSnatIpIpv6"
          },
          "description": "Reference to IP Configuration\n"
        }
      },
      "type": "object",
      "required": [
        "ipv4s",
        "ipv6s"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getFloatingIpsV2FloatingIpExternalSubnetVpcSnatIpIpv4:getFloatingIpsV2FloatingIpExternalSubnetVpcSnatIpIpv4": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "Prefix length of the network to which this host IPv4 address belongs. Default value is 32.\n"
        },
        "value": {
          "type": "string",
          "description": "value of address\n"
        }
      },
      "type": "object",
      "required": [
        "prefixLength",
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getFloatingIpsV2FloatingIpExternalSubnetVpcSnatIpIpv6:getFloatingIpsV2FloatingIpExternalSubnetVpcSnatIpIpv6": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "Prefix length of the network to which this host IPv4 address belongs. Default value is 32.\n"
        },
        "value": {
          "type": "string",
          "description": "value of address\n"
        }
      },
      "type": "object",
      "required": [
        "prefixLength",
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getFloatingIpsV2FloatingIpFloatingIp:getFloatingIpsV2FloatingIpFloatingIp": {
      "properties": {
        "ipv4s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetFloatingIpsV2FloatingIpFloatingIpIpv4:getFloatingIpsV2FloatingIpFloatingIpIpv4"
          },
          "description": "Reference to IP Configuration\n"
        },
        "ipv6s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetFloatingIpsV2FloatingIpFloatingIpIpv6:getFloatingIpsV2FloatingIpFloatingIpIpv6"
          },
          "description": "Reference to IP Configuration\n"
        }
      },
      "type": "object",
      "required": [
        "ipv4s",
        "ipv6s"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getFloatingIpsV2FloatingIpFloatingIpIpv4:getFloatingIpsV2FloatingIpFloatingIpIpv4": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "Prefix length of the network to which this host IPv4 address belongs. Default value is 32.\n"
        },
        "value": {
          "type": "string",
          "description": "value of address\n"
        }
      },
      "type": "object",
      "required": [
        "prefixLength",
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getFloatingIpsV2FloatingIpFloatingIpIpv6:getFloatingIpsV2FloatingIpFloatingIpIpv6": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "Prefix length of the network to which this host IPv4 address belongs. Default value is 32.\n"
        },
        "value": {
          "type": "string",
          "description": "value of address\n"
        }
      },
      "type": "object",
      "required": [
        "prefixLength",
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getFloatingIpsV2FloatingIpLink:getFloatingIpsV2FloatingIpLink": {
      "properties": {
        "href": {
          "type": "string",
          "description": "- The URL at which the entity described by the link can be accessed.\n"
        },
        "rel": {
          "type": "string",
          "description": "- A name that identifies the relationship of the link to the object that is returned by the URL. The unique value of \"self\" identifies the URL for the object.\n"
        }
      },
      "type": "object",
      "required": [
        "href",
        "rel"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getFloatingIpsV2FloatingIpMetadata:getFloatingIpsV2FloatingIpMetadata": {
      "properties": {
        "categoryIds": {
          "type": "array",
          "items": {
            "type": "array",
            "items": {
              "$ref": "pulumi.json#/Any"
            }
          },
          "description": "A list of globally unique identifiers that represent all the categories the resource is associated with.\n"
        },
        "ownerReferenceId": {
          "type": "string",
          "description": "A globally unique identifier that represents the owner of this resource.\n"
        },
        "ownerUserName": {
          "type": "string",
          "description": "The userName of the owner of this resource.\n"
        },
        "projectName": {
          "type": "string",
          "description": "The name of the project this resource belongs to.\n"
        },
        "projectReferenceId": {
          "type": "string",
          "description": "A globally unique identifier that represents the project this resource belongs to.\n"
        }
      },
      "type": "object",
      "required": [
        "categoryIds",
        "ownerReferenceId",
        "ownerUserName",
        "projectName",
        "projectReferenceId"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getFloatingIpsV2FloatingIpVmNic:getFloatingIpsV2FloatingIpVmNic": {
      "properties": {
        "privateIp": {
          "type": "string",
          "description": "Private IP value in string\n"
        }
      },
      "type": "object",
      "required": [
        "privateIp"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getFloatingIpsV2FloatingIpVpc:getFloatingIpsV2FloatingIpVpc": {
      "properties": {
        "commonDhcpOptions": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetFloatingIpsV2FloatingIpVpcCommonDhcpOption:getFloatingIpsV2FloatingIpVpcCommonDhcpOption"
          }
        },
        "description": {
          "type": "string",
          "description": "Description for the Floating IP.\n"
        },
        "extId": {
          "type": "string",
          "description": "Floating IP UUID\n"
        },
        "externalRoutingDomainReference": {
          "type": "string"
        },
        "externalSubnets": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetFloatingIpsV2FloatingIpVpcExternalSubnet:getFloatingIpsV2FloatingIpVpcExternalSubnet"
          }
        },
        "externallyRoutablePrefixes": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetFloatingIpsV2FloatingIpVpcExternallyRoutablePrefix:getFloatingIpsV2FloatingIpVpcExternallyRoutablePrefix"
          }
        },
        "links": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetFloatingIpsV2FloatingIpVpcLink:getFloatingIpsV2FloatingIpVpcLink"
          },
          "description": "A HATEOAS style link for the response. Each link contains a user-friendly name identifying the link and an address for retrieving the particular resource.\n"
        },
        "metadatas": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetFloatingIpsV2FloatingIpVpcMetadata:getFloatingIpsV2FloatingIpVpcMetadata"
          },
          "description": "Metadata associated with this resource.\n"
        },
        "name": {
          "type": "string",
          "description": "Name of the floating IP.\n"
        },
        "snatIps": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetFloatingIpsV2FloatingIpVpcSnatIp:getFloatingIpsV2FloatingIpVpcSnatIp"
          }
        },
        "tenantId": {
          "type": "string",
          "description": "A globally unique identifier that represents the tenant that owns this entity.\n"
        },
        "vpcType": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "commonDhcpOptions",
        "description",
        "extId",
        "externalRoutingDomainReference",
        "externalSubnets",
        "externallyRoutablePrefixes",
        "links",
        "metadatas",
        "name",
        "snatIps",
        "tenantId",
        "vpcType"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getFloatingIpsV2FloatingIpVpcCommonDhcpOption:getFloatingIpsV2FloatingIpVpcCommonDhcpOption": {
      "properties": {
        "domainNameServers": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetFloatingIpsV2FloatingIpVpcCommonDhcpOptionDomainNameServer:getFloatingIpsV2FloatingIpVpcCommonDhcpOptionDomainNameServer"
          }
        }
      },
      "type": "object",
      "required": [
        "domainNameServers"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getFloatingIpsV2FloatingIpVpcCommonDhcpOptionDomainNameServer:getFloatingIpsV2FloatingIpVpcCommonDhcpOptionDomainNameServer": {
      "properties": {
        "ipv4s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetFloatingIpsV2FloatingIpVpcCommonDhcpOptionDomainNameServerIpv4:getFloatingIpsV2FloatingIpVpcCommonDhcpOptionDomainNameServerIpv4"
          },
          "description": "Reference to IP Configuration\n"
        },
        "ipv6s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetFloatingIpsV2FloatingIpVpcCommonDhcpOptionDomainNameServerIpv6:getFloatingIpsV2FloatingIpVpcCommonDhcpOptionDomainNameServerIpv6"
          },
          "description": "Reference to IP Configuration\n"
        }
      },
      "type": "object",
      "required": [
        "ipv4s",
        "ipv6s"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getFloatingIpsV2FloatingIpVpcCommonDhcpOptionDomainNameServerIpv4:getFloatingIpsV2FloatingIpVpcCommonDhcpOptionDomainNameServerIpv4": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "Prefix length of the network to which this host IPv4 address belongs. Default value is 32.\n"
        },
        "value": {
          "type": "string",
          "description": "value of address\n"
        }
      },
      "type": "object",
      "required": [
        "prefixLength",
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getFloatingIpsV2FloatingIpVpcCommonDhcpOptionDomainNameServerIpv6:getFloatingIpsV2FloatingIpVpcCommonDhcpOptionDomainNameServerIpv6": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "Prefix length of the network to which this host IPv4 address belongs. Default value is 32.\n"
        },
        "value": {
          "type": "string",
          "description": "value of address\n"
        }
      },
      "type": "object",
      "required": [
        "prefixLength",
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getFloatingIpsV2FloatingIpVpcExternalSubnet:getFloatingIpsV2FloatingIpVpcExternalSubnet": {
      "properties": {
        "activeGatewayCount": {
          "type": "integer"
        },
        "activeGatewayNodes": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetFloatingIpsV2FloatingIpVpcExternalSubnetActiveGatewayNode:getFloatingIpsV2FloatingIpVpcExternalSubnetActiveGatewayNode"
          }
        },
        "externalIps": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetFloatingIpsV2FloatingIpVpcExternalSubnetExternalIp:getFloatingIpsV2FloatingIpVpcExternalSubnetExternalIp"
          }
        },
        "gatewayNodes": {
          "type": "array",
          "items": {
            "type": "string"
          }
        },
        "subnetReference": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "activeGatewayCount",
        "activeGatewayNodes",
        "externalIps",
        "gatewayNodes",
        "subnetReference"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getFloatingIpsV2FloatingIpVpcExternalSubnetActiveGatewayNode:getFloatingIpsV2FloatingIpVpcExternalSubnetActiveGatewayNode": {
      "properties": {
        "nodeId": {
          "type": "string"
        },
        "nodeIpAddresses": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetFloatingIpsV2FloatingIpVpcExternalSubnetActiveGatewayNodeNodeIpAddress:getFloatingIpsV2FloatingIpVpcExternalSubnetActiveGatewayNodeNodeIpAddress"
          }
        }
      },
      "type": "object",
      "required": [
        "nodeId",
        "nodeIpAddresses"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getFloatingIpsV2FloatingIpVpcExternalSubnetActiveGatewayNodeNodeIpAddress:getFloatingIpsV2FloatingIpVpcExternalSubnetActiveGatewayNodeNodeIpAddress": {
      "properties": {
        "ipv4s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetFloatingIpsV2FloatingIpVpcExternalSubnetActiveGatewayNodeNodeIpAddressIpv4:getFloatingIpsV2FloatingIpVpcExternalSubnetActiveGatewayNodeNodeIpAddressIpv4"
          },
          "description": "Reference to IP Configuration\n"
        },
        "ipv6s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetFloatingIpsV2FloatingIpVpcExternalSubnetActiveGatewayNodeNodeIpAddressIpv6:getFloatingIpsV2FloatingIpVpcExternalSubnetActiveGatewayNodeNodeIpAddressIpv6"
          },
          "description": "Reference to IP Configuration\n"
        }
      },
      "type": "object",
      "required": [
        "ipv4s",
        "ipv6s"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getFloatingIpsV2FloatingIpVpcExternalSubnetActiveGatewayNodeNodeIpAddressIpv4:getFloatingIpsV2FloatingIpVpcExternalSubnetActiveGatewayNodeNodeIpAddressIpv4": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "Prefix length of the network to which this host IPv4 address belongs. Default value is 32.\n"
        },
        "value": {
          "type": "string",
          "description": "value of address\n"
        }
      },
      "type": "object",
      "required": [
        "prefixLength",
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getFloatingIpsV2FloatingIpVpcExternalSubnetActiveGatewayNodeNodeIpAddressIpv6:getFloatingIpsV2FloatingIpVpcExternalSubnetActiveGatewayNodeNodeIpAddressIpv6": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "Prefix length of the network to which this host IPv4 address belongs. Default value is 32.\n"
        },
        "value": {
          "type": "string",
          "description": "value of address\n"
        }
      },
      "type": "object",
      "required": [
        "prefixLength",
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getFloatingIpsV2FloatingIpVpcExternalSubnetExternalIp:getFloatingIpsV2FloatingIpVpcExternalSubnetExternalIp": {
      "properties": {
        "ipv4s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetFloatingIpsV2FloatingIpVpcExternalSubnetExternalIpIpv4:getFloatingIpsV2FloatingIpVpcExternalSubnetExternalIpIpv4"
          },
          "description": "Reference to IP Configuration\n"
        },
        "ipv6s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetFloatingIpsV2FloatingIpVpcExternalSubnetExternalIpIpv6:getFloatingIpsV2FloatingIpVpcExternalSubnetExternalIpIpv6"
          },
          "description": "Reference to IP Configuration\n"
        }
      },
      "type": "object",
      "required": [
        "ipv4s",
        "ipv6s"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getFloatingIpsV2FloatingIpVpcExternalSubnetExternalIpIpv4:getFloatingIpsV2FloatingIpVpcExternalSubnetExternalIpIpv4": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "Prefix length of the network to which this host IPv4 address belongs. Default value is 32.\n"
        },
        "value": {
          "type": "string",
          "description": "value of address\n"
        }
      },
      "type": "object",
      "required": [
        "prefixLength",
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getFloatingIpsV2FloatingIpVpcExternalSubnetExternalIpIpv6:getFloatingIpsV2FloatingIpVpcExternalSubnetExternalIpIpv6": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "Prefix length of the network to which this host IPv4 address belongs. Default value is 32.\n"
        },
        "value": {
          "type": "string",
          "description": "value of address\n"
        }
      },
      "type": "object",
      "required": [
        "prefixLength",
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getFloatingIpsV2FloatingIpVpcExternallyRoutablePrefix:getFloatingIpsV2FloatingIpVpcExternallyRoutablePrefix": {
      "properties": {
        "ipv4s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetFloatingIpsV2FloatingIpVpcExternallyRoutablePrefixIpv4:getFloatingIpsV2FloatingIpVpcExternallyRoutablePrefixIpv4"
          },
          "description": "Reference to IP Configuration\n"
        },
        "ipv6s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetFloatingIpsV2FloatingIpVpcExternallyRoutablePrefixIpv6:getFloatingIpsV2FloatingIpVpcExternallyRoutablePrefixIpv6"
          },
          "description": "Reference to IP Configuration\n"
        }
      },
      "type": "object",
      "required": [
        "ipv4s",
        "ipv6s"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getFloatingIpsV2FloatingIpVpcExternallyRoutablePrefixIpv4:getFloatingIpsV2FloatingIpVpcExternallyRoutablePrefixIpv4": {
      "properties": {
        "ips": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetFloatingIpsV2FloatingIpVpcExternallyRoutablePrefixIpv4Ip:getFloatingIpsV2FloatingIpVpcExternallyRoutablePrefixIpv4Ip"
          }
        },
        "prefixLength": {
          "type": "integer",
          "description": "Prefix length of the network to which this host IPv4 address belongs. Default value is 32.\n"
        }
      },
      "type": "object",
      "required": [
        "ips",
        "prefixLength"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getFloatingIpsV2FloatingIpVpcExternallyRoutablePrefixIpv4Ip:getFloatingIpsV2FloatingIpVpcExternallyRoutablePrefixIpv4Ip": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "Prefix length of the network to which this host IPv4 address belongs. Default value is 32.\n"
        },
        "value": {
          "type": "string",
          "description": "value of address\n"
        }
      },
      "type": "object",
      "required": [
        "prefixLength",
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getFloatingIpsV2FloatingIpVpcExternallyRoutablePrefixIpv6:getFloatingIpsV2FloatingIpVpcExternallyRoutablePrefixIpv6": {
      "properties": {
        "ips": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetFloatingIpsV2FloatingIpVpcExternallyRoutablePrefixIpv6Ip:getFloatingIpsV2FloatingIpVpcExternallyRoutablePrefixIpv6Ip"
          }
        },
        "prefixLength": {
          "type": "integer",
          "description": "Prefix length of the network to which this host IPv4 address belongs. Default value is 32.\n"
        }
      },
      "type": "object",
      "required": [
        "ips",
        "prefixLength"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getFloatingIpsV2FloatingIpVpcExternallyRoutablePrefixIpv6Ip:getFloatingIpsV2FloatingIpVpcExternallyRoutablePrefixIpv6Ip": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "Prefix length of the network to which this host IPv4 address belongs. Default value is 32.\n"
        },
        "value": {
          "type": "string",
          "description": "value of address\n"
        }
      },
      "type": "object",
      "required": [
        "prefixLength",
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getFloatingIpsV2FloatingIpVpcLink:getFloatingIpsV2FloatingIpVpcLink": {
      "properties": {
        "href": {
          "type": "string",
          "description": "- The URL at which the entity described by the link can be accessed.\n"
        },
        "rel": {
          "type": "string",
          "description": "- A name that identifies the relationship of the link to the object that is returned by the URL. The unique value of \"self\" identifies the URL for the object.\n"
        }
      },
      "type": "object",
      "required": [
        "href",
        "rel"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getFloatingIpsV2FloatingIpVpcMetadata:getFloatingIpsV2FloatingIpVpcMetadata": {
      "properties": {
        "categoryIds": {
          "type": "array",
          "items": {
            "type": "array",
            "items": {
              "$ref": "pulumi.json#/Any"
            }
          },
          "description": "A list of globally unique identifiers that represent all the categories the resource is associated with.\n"
        },
        "ownerReferenceId": {
          "type": "string",
          "description": "A globally unique identifier that represents the owner of this resource.\n"
        },
        "ownerUserName": {
          "type": "string",
          "description": "The userName of the owner of this resource.\n"
        },
        "projectName": {
          "type": "string",
          "description": "The name of the project this resource belongs to.\n"
        },
        "projectReferenceId": {
          "type": "string",
          "description": "A globally unique identifier that represents the project this resource belongs to.\n"
        }
      },
      "type": "object",
      "required": [
        "categoryIds",
        "ownerReferenceId",
        "ownerUserName",
        "projectName",
        "projectReferenceId"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getFloatingIpsV2FloatingIpVpcSnatIp:getFloatingIpsV2FloatingIpVpcSnatIp": {
      "properties": {
        "ipv4s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetFloatingIpsV2FloatingIpVpcSnatIpIpv4:getFloatingIpsV2FloatingIpVpcSnatIpIpv4"
          },
          "description": "Reference to IP Configuration\n"
        },
        "ipv6s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetFloatingIpsV2FloatingIpVpcSnatIpIpv6:getFloatingIpsV2FloatingIpVpcSnatIpIpv6"
          },
          "description": "Reference to IP Configuration\n"
        }
      },
      "type": "object",
      "required": [
        "ipv4s",
        "ipv6s"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getFloatingIpsV2FloatingIpVpcSnatIpIpv4:getFloatingIpsV2FloatingIpVpcSnatIpIpv4": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "Prefix length of the network to which this host IPv4 address belongs. Default value is 32.\n"
        },
        "value": {
          "type": "string",
          "description": "value of address\n"
        }
      },
      "type": "object",
      "required": [
        "prefixLength",
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getFloatingIpsV2FloatingIpVpcSnatIpIpv6:getFloatingIpsV2FloatingIpVpcSnatIpIpv6": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "Prefix length of the network to which this host IPv4 address belongs. Default value is 32.\n"
        },
        "value": {
          "type": "string",
          "description": "value of address\n"
        }
      },
      "type": "object",
      "required": [
        "prefixLength",
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getFoundationCentralClusterDetailsClusterStatus:getFoundationCentralClusterDetailsClusterStatus": {
      "properties": {
        "aggregatePercentComplete": {
          "type": "number",
          "description": "Overall progress percentage including imaging and cluster creation.\n"
        },
        "clusterCreationStarted": {
          "type": "boolean",
          "description": "Denotes whether cluster creation has started in a phoenix workflow. For foundation workflows, this field will be same as intent_picked_up.\n"
        },
        "clusterProgressDetails": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetFoundationCentralClusterDetailsClusterStatusClusterProgressDetail:getFoundationCentralClusterDetailsClusterStatusClusterProgressDetail"
          },
          "description": "Denotes the progress status of cluster creation.\n"
        },
        "currentFoundationIp": {
          "type": "string",
          "description": "Current IP address of the coordinating foundation node.\n"
        },
        "foundationSessionId": {
          "type": "string",
          "description": "Foundation session id for cluster creation.\n"
        },
        "imagingStopped": {
          "type": "boolean",
          "description": "Describes whether imaging has stopped. True indicates that process has stopped. False indicates that process is still going on. This field will only be used by phoenix nodes to update FC.\n"
        },
        "intentPickedUp": {
          "type": "boolean",
          "description": "Denotes whether the remote nodes has picked up the cluster creation intent.\n"
        },
        "nodeProgressDetails": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetFoundationCentralClusterDetailsClusterStatusNodeProgressDetail:getFoundationCentralClusterDetailsClusterStatusNodeProgressDetail"
          },
          "description": "List of progress details of each node.\n"
        }
      },
      "type": "object",
      "required": [
        "aggregatePercentComplete",
        "clusterCreationStarted",
        "clusterProgressDetails",
        "currentFoundationIp",
        "foundationSessionId",
        "imagingStopped",
        "intentPickedUp",
        "nodeProgressDetails"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getFoundationCentralClusterDetailsClusterStatusClusterProgressDetail:getFoundationCentralClusterDetailsClusterStatusClusterProgressDetail": {
      "properties": {
        "clusterName": {
          "type": "string",
          "description": "Cluster name.\n"
        },
        "messageLists": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "List of messages for the client based on process state.\n"
        },
        "percentComplete": {
          "type": "number",
          "description": "Percent completion of cluster creation process.\n"
        },
        "status": {
          "type": "string",
          "description": "Current status of cluster creation process.\n"
        }
      },
      "type": "object",
      "required": [
        "clusterName",
        "messageLists",
        "percentComplete",
        "status"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getFoundationCentralClusterDetailsClusterStatusNodeProgressDetail:getFoundationCentralClusterDetailsClusterStatusNodeProgressDetail": {
      "properties": {
        "imagedNodeUuid": {
          "type": "string",
          "description": "UUID of the node.\n"
        },
        "imagingStopped": {
          "type": "boolean",
          "description": "Describes whether imaging has stopped. True indicates that process has stopped. False indicates that process is still going on. This field will only be used by phoenix nodes to update FC.\n"
        },
        "intentPickedUp": {
          "type": "boolean",
          "description": "Denotes whether the remote nodes has picked up the cluster creation intent.\n"
        },
        "messageLists": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "List of messages for the client based on process state.\n"
        },
        "percentComplete": {
          "type": "number",
          "description": "Percent completion of cluster creation process.\n"
        },
        "status": {
          "type": "string",
          "description": "Current status of cluster creation process.\n"
        }
      },
      "type": "object",
      "required": [
        "imagedNodeUuid",
        "imagingStopped",
        "intentPickedUp",
        "messageLists",
        "percentComplete",
        "status"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getFoundationCentralClusterDetailsCommonNetworkSettings:getFoundationCentralClusterDetailsCommonNetworkSettings": {
      "properties": {
        "cvmDnsServers": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "List of dns servers for the cvms in the cluster.\n"
        },
        "cvmNtpServers": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "List of ntp servers for the cvms in the cluster.\n"
        },
        "hypervisorDnsServers": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "List of dns servers for the hypervisors in the cluster.\n"
        },
        "hypervisorNtpServers": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "List of ntp servers for the hypervisors in the cluster.\n"
        }
      },
      "type": "object",
      "required": [
        "cvmDnsServers",
        "cvmNtpServers",
        "hypervisorDnsServers",
        "hypervisorNtpServers"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getFoundationCentralClusterDetailsFoundationInitConfig:getFoundationCentralClusterDetailsFoundationInitConfig": {
      "properties": {
        "blocks": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetFoundationCentralClusterDetailsFoundationInitConfigBlock:getFoundationCentralClusterDetailsFoundationInitConfigBlock"
          }
        },
        "clusters": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetFoundationCentralClusterDetailsFoundationInitConfigCluster:getFoundationCentralClusterDetailsFoundationInitConfigCluster"
          }
        },
        "cvmGateway": {
          "type": "string"
        },
        "cvmNetmask": {
          "type": "string"
        },
        "dnsServers": {
          "type": "string"
        },
        "hypervProductKey": {
          "type": "string"
        },
        "hypervSku": {
          "type": "string"
        },
        "hypervisorGateway": {
          "type": "string"
        },
        "hypervisorIsoUrl": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          }
        },
        "hypervisorIsos": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetFoundationCentralClusterDetailsFoundationInitConfigHypervisorIso:getFoundationCentralClusterDetailsFoundationInitConfigHypervisorIso"
          }
        },
        "hypervisorNetmask": {
          "type": "string"
        },
        "ipmiGateway": {
          "type": "string"
        },
        "ipmiNetmask": {
          "type": "string"
        },
        "nosPackageUrls": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetFoundationCentralClusterDetailsFoundationInitConfigNosPackageUrl:getFoundationCentralClusterDetailsFoundationInitConfigNosPackageUrl"
          }
        }
      },
      "type": "object",
      "required": [
        "blocks",
        "clusters",
        "cvmGateway",
        "cvmNetmask",
        "dnsServers",
        "hypervProductKey",
        "hypervSku",
        "hypervisorGateway",
        "hypervisorIsoUrl",
        "hypervisorIsos",
        "hypervisorNetmask",
        "ipmiGateway",
        "ipmiNetmask",
        "nosPackageUrls"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getFoundationCentralClusterDetailsFoundationInitConfigBlock:getFoundationCentralClusterDetailsFoundationInitConfigBlock": {
      "properties": {
        "blockId": {
          "type": "string"
        },
        "nodes": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetFoundationCentralClusterDetailsFoundationInitConfigBlockNode:getFoundationCentralClusterDetailsFoundationInitConfigBlockNode"
          }
        }
      },
      "type": "object",
      "required": [
        "blockId",
        "nodes"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getFoundationCentralClusterDetailsFoundationInitConfigBlockNode:getFoundationCentralClusterDetailsFoundationInitConfigBlockNode": {
      "properties": {
        "cvmIp": {
          "type": "string"
        },
        "cvmVlanId": {
          "type": "integer"
        },
        "fcImagedNodeUuid": {
          "type": "string"
        },
        "hardwareAttributesOverride": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          }
        },
        "hypervisor": {
          "type": "string"
        },
        "hypervisorHostname": {
          "type": "string"
        },
        "hypervisorIp": {
          "type": "string"
        },
        "imageNow": {
          "type": "boolean"
        },
        "ipmiIp": {
          "type": "string"
        },
        "ipv6Address": {
          "type": "string"
        },
        "nodePosition": {
          "type": "string"
        },
        "nodeSerial": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "cvmIp",
        "cvmVlanId",
        "fcImagedNodeUuid",
        "hardwareAttributesOverride",
        "hypervisor",
        "hypervisorHostname",
        "hypervisorIp",
        "imageNow",
        "ipmiIp",
        "ipv6Address",
        "nodePosition",
        "nodeSerial"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getFoundationCentralClusterDetailsFoundationInitConfigCluster:getFoundationCentralClusterDetailsFoundationInitConfigCluster": {
      "properties": {
        "clusterExternalIp": {
          "type": "string",
          "description": "External management ip of the cluster.\n"
        },
        "clusterInitNow": {
          "type": "boolean"
        },
        "clusterInitSuccessful": {
          "type": "boolean"
        },
        "clusterMembers": {
          "type": "array",
          "items": {
            "type": "string"
          }
        },
        "clusterName": {
          "type": "string",
          "description": "Cluster name.\n"
        },
        "cvmDnsServers": {
          "type": "string",
          "description": "List of dns servers for the cvms in the cluster.\n"
        },
        "cvmNtpServers": {
          "type": "string",
          "description": "List of ntp servers for the cvms in the cluster.\n"
        },
        "redundancyFactor": {
          "type": "integer",
          "description": "Redundancy factor of the cluster.\n"
        },
        "timezone": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "clusterExternalIp",
        "clusterInitNow",
        "clusterInitSuccessful",
        "clusterMembers",
        "clusterName",
        "cvmDnsServers",
        "cvmNtpServers",
        "redundancyFactor",
        "timezone"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getFoundationCentralClusterDetailsFoundationInitConfigHypervisorIso:getFoundationCentralClusterDetailsFoundationInitConfigHypervisorIso": {
      "properties": {
        "hypervisorType": {
          "type": "string"
        },
        "sha256sum": {
          "type": "string"
        },
        "url": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "hypervisorType",
        "sha256sum",
        "url"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getFoundationCentralClusterDetailsFoundationInitConfigNosPackageUrl:getFoundationCentralClusterDetailsFoundationInitConfigNosPackageUrl": {
      "properties": {
        "sha256sum": {
          "type": "string"
        },
        "url": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "sha256sum",
        "url"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getFoundationCentralImagedClustersListFilters:getFoundationCentralImagedClustersListFilters": {
      "properties": {
        "archived": {
          "type": "boolean",
          "description": "True if the cluster creation request is archived, False otherwise\n"
        }
      },
      "type": "object"
    },
    "nutanix:index/getFoundationCentralImagedClustersListImagedCluster:getFoundationCentralImagedClustersListImagedCluster": {
      "properties": {
        "archived": {
          "type": "boolean",
          "description": "True if the cluster creation request is archived, False otherwise\n"
        },
        "clusterExternalIp": {
          "type": "string",
          "description": "External management ip of the cluster.\n"
        },
        "clusterName": {
          "type": "string",
          "description": "Cluster name.\n"
        },
        "clusterSize": {
          "type": "integer",
          "description": "Number of nodes in the cluster.\n"
        },
        "clusterStatus": {
          "$ref": "#/types/nutanix:index%2FgetFoundationCentralImagedClustersListImagedClusterClusterStatus:getFoundationCentralImagedClustersListImagedClusterClusterStatus",
          "description": "Details of cluster creation process.\n"
        },
        "commonNetworkSettings": {
          "$ref": "#/types/nutanix:index%2FgetFoundationCentralImagedClustersListImagedClusterCommonNetworkSettings:getFoundationCentralImagedClustersListImagedClusterCommonNetworkSettings",
          "description": "Common network settings across the nodes in the cluster.\n"
        },
        "createdTimestamp": {
          "type": "string",
          "description": "Time when the cluster creation request was received in Foundation Central.\n"
        },
        "currentTime": {
          "type": "string",
          "description": "Current time of Foundation Central.\n"
        },
        "destroyed": {
          "type": "boolean",
          "description": "True if the cluster is destroyed, False otherwise\n"
        },
        "foundationInitConfigs": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetFoundationCentralImagedClustersListImagedClusterFoundationInitConfig:getFoundationCentralImagedClustersListImagedClusterFoundationInitConfig"
          },
          "description": "Json config used by Foundation to create the cluster.\n"
        },
        "foundationInitNodeUuid": {
          "type": "string",
          "description": "UUID of the first node coordinating cluster creation.\n"
        },
        "imagedClusterUuid": {
          "type": "string",
          "description": "UUID of the cluster.\n"
        },
        "imagedNodeUuidLists": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "List of UUIDs of imaged nodes.\n"
        },
        "redundancyFactor": {
          "type": "integer",
          "description": "Redundancy factor of the cluster.\n"
        },
        "storageNodeCount": {
          "type": "integer",
          "description": "Number of storage only nodes in the cluster. AHV iso for storage node will be taken from aos package.\n"
        },
        "workflowType": {
          "type": "string",
          "description": "If imaging and cluster creation is coordinated by Foundation, value will be FOUNDATION_WF. If the nodes are in phoenix, value will be PHOENIX_WF.\n"
        }
      },
      "type": "object",
      "required": [
        "archived",
        "clusterExternalIp",
        "clusterName",
        "clusterSize",
        "clusterStatus",
        "commonNetworkSettings",
        "createdTimestamp",
        "currentTime",
        "destroyed",
        "foundationInitConfigs",
        "foundationInitNodeUuid",
        "imagedClusterUuid",
        "imagedNodeUuidLists",
        "storageNodeCount",
        "workflowType"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getFoundationCentralImagedClustersListImagedClusterClusterStatus:getFoundationCentralImagedClustersListImagedClusterClusterStatus": {
      "properties": {
        "aggregatePercentComplete": {
          "type": "number",
          "description": "Overall progress percentage including imaging and cluster creation.\n"
        },
        "clusterCreationStarted": {
          "type": "boolean",
          "description": "Denotes whether cluster creation has started in a phoenix workflow. For foundation workflows, this field will be same as intent_picked_up.\n"
        },
        "clusterProgressDetails": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetFoundationCentralImagedClustersListImagedClusterClusterStatusClusterProgressDetail:getFoundationCentralImagedClustersListImagedClusterClusterStatusClusterProgressDetail"
          },
          "description": "Denotes the progress status of cluster creation.\n"
        },
        "currentFoundationIp": {
          "type": "string",
          "description": "Current IP address of the coordinating foundation node.\n"
        },
        "foundationSessionId": {
          "type": "string",
          "description": "Foundation session id for cluster creation.\n"
        },
        "imagingStopped": {
          "type": "boolean",
          "description": "Describes whether imaging has stopped. True indicates that process has stopped. False indicates that process is still going on. This field will only be used by phoenix nodes to update FC.\n"
        },
        "intentPickedUp": {
          "type": "boolean",
          "description": "Denotes whether the remote nodes has picked up the cluster creation intent.\n"
        },
        "nodeProgressDetails": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetFoundationCentralImagedClustersListImagedClusterClusterStatusNodeProgressDetail:getFoundationCentralImagedClustersListImagedClusterClusterStatusNodeProgressDetail"
          },
          "description": "List of progress details of each node.\n"
        }
      },
      "type": "object",
      "required": [
        "aggregatePercentComplete",
        "clusterCreationStarted",
        "clusterProgressDetails",
        "currentFoundationIp",
        "foundationSessionId",
        "imagingStopped",
        "intentPickedUp",
        "nodeProgressDetails"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getFoundationCentralImagedClustersListImagedClusterClusterStatusClusterProgressDetail:getFoundationCentralImagedClustersListImagedClusterClusterStatusClusterProgressDetail": {
      "properties": {
        "clusterName": {
          "type": "string",
          "description": "Cluster name.\n"
        },
        "messageLists": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "List of messages for the client based on process state.\n"
        },
        "percentComplete": {
          "type": "number",
          "description": "Percent completion of cluster creation process.\n"
        },
        "status": {
          "type": "string",
          "description": "Current status of cluster creation process.\n"
        }
      },
      "type": "object",
      "required": [
        "clusterName",
        "messageLists",
        "percentComplete",
        "status"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getFoundationCentralImagedClustersListImagedClusterClusterStatusNodeProgressDetail:getFoundationCentralImagedClustersListImagedClusterClusterStatusNodeProgressDetail": {
      "properties": {
        "imagedNodeUuid": {
          "type": "string",
          "description": "UUID of the node.\n"
        },
        "imagingStopped": {
          "type": "boolean",
          "description": "Describes whether imaging has stopped. True indicates that process has stopped. False indicates that process is still going on. This field will only be used by phoenix nodes to update FC.\n"
        },
        "intentPickedUp": {
          "type": "boolean",
          "description": "Denotes whether the remote nodes has picked up the cluster creation intent.\n"
        },
        "messageLists": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "List of messages for the client based on process state.\n"
        },
        "percentComplete": {
          "type": "number",
          "description": "Percent completion of cluster creation process.\n"
        },
        "status": {
          "type": "string",
          "description": "Current status of cluster creation process.\n"
        }
      },
      "type": "object",
      "required": [
        "imagedNodeUuid",
        "imagingStopped",
        "intentPickedUp",
        "messageLists",
        "percentComplete",
        "status"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getFoundationCentralImagedClustersListImagedClusterCommonNetworkSettings:getFoundationCentralImagedClustersListImagedClusterCommonNetworkSettings": {
      "properties": {
        "cvmDnsServers": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "List of dns servers for the cvms in the cluster.\n"
        },
        "cvmNtpServers": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "List of ntp servers for the cvms in the cluster.\n"
        },
        "hypervisorDnsServers": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "List of dns servers for the hypervisors in the cluster.\n"
        },
        "hypervisorNtpServers": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "List of ntp servers for the hypervisors in the cluster.\n"
        }
      },
      "type": "object",
      "required": [
        "cvmDnsServers",
        "cvmNtpServers",
        "hypervisorDnsServers",
        "hypervisorNtpServers"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getFoundationCentralImagedClustersListImagedClusterFoundationInitConfig:getFoundationCentralImagedClustersListImagedClusterFoundationInitConfig": {
      "properties": {
        "blocks": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetFoundationCentralImagedClustersListImagedClusterFoundationInitConfigBlock:getFoundationCentralImagedClustersListImagedClusterFoundationInitConfigBlock"
          }
        },
        "clusters": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetFoundationCentralImagedClustersListImagedClusterFoundationInitConfigCluster:getFoundationCentralImagedClustersListImagedClusterFoundationInitConfigCluster"
          }
        },
        "cvmGateway": {
          "type": "string"
        },
        "cvmNetmask": {
          "type": "string"
        },
        "dnsServers": {
          "type": "string"
        },
        "hypervProductKey": {
          "type": "string"
        },
        "hypervSku": {
          "type": "string"
        },
        "hypervisorGateway": {
          "type": "string"
        },
        "hypervisorIsoUrl": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          }
        },
        "hypervisorIsos": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetFoundationCentralImagedClustersListImagedClusterFoundationInitConfigHypervisorIso:getFoundationCentralImagedClustersListImagedClusterFoundationInitConfigHypervisorIso"
          }
        },
        "hypervisorNetmask": {
          "type": "string"
        },
        "ipmiGateway": {
          "type": "string"
        },
        "ipmiNetmask": {
          "type": "string"
        },
        "nosPackageUrls": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetFoundationCentralImagedClustersListImagedClusterFoundationInitConfigNosPackageUrl:getFoundationCentralImagedClustersListImagedClusterFoundationInitConfigNosPackageUrl"
          }
        }
      },
      "type": "object",
      "required": [
        "blocks",
        "clusters",
        "cvmGateway",
        "cvmNetmask",
        "dnsServers",
        "hypervProductKey",
        "hypervSku",
        "hypervisorGateway",
        "hypervisorIsoUrl",
        "hypervisorIsos",
        "hypervisorNetmask",
        "ipmiGateway",
        "ipmiNetmask",
        "nosPackageUrls"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getFoundationCentralImagedClustersListImagedClusterFoundationInitConfigBlock:getFoundationCentralImagedClustersListImagedClusterFoundationInitConfigBlock": {
      "properties": {
        "blockId": {
          "type": "string"
        },
        "nodes": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetFoundationCentralImagedClustersListImagedClusterFoundationInitConfigBlockNode:getFoundationCentralImagedClustersListImagedClusterFoundationInitConfigBlockNode"
          }
        }
      },
      "type": "object",
      "required": [
        "blockId",
        "nodes"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getFoundationCentralImagedClustersListImagedClusterFoundationInitConfigBlockNode:getFoundationCentralImagedClustersListImagedClusterFoundationInitConfigBlockNode": {
      "properties": {
        "cvmIp": {
          "type": "string"
        },
        "cvmVlanId": {
          "type": "integer"
        },
        "fcImagedNodeUuid": {
          "type": "string"
        },
        "hardwareAttributesOverride": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          }
        },
        "hypervisor": {
          "type": "string"
        },
        "hypervisorHostname": {
          "type": "string"
        },
        "hypervisorIp": {
          "type": "string"
        },
        "imageNow": {
          "type": "boolean"
        },
        "ipmiIp": {
          "type": "string"
        },
        "ipv6Address": {
          "type": "string"
        },
        "nodePosition": {
          "type": "string"
        },
        "nodeSerial": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "cvmIp",
        "cvmVlanId",
        "fcImagedNodeUuid",
        "hardwareAttributesOverride",
        "hypervisor",
        "hypervisorHostname",
        "hypervisorIp",
        "imageNow",
        "ipmiIp",
        "ipv6Address",
        "nodePosition",
        "nodeSerial"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getFoundationCentralImagedClustersListImagedClusterFoundationInitConfigCluster:getFoundationCentralImagedClustersListImagedClusterFoundationInitConfigCluster": {
      "properties": {
        "clusterExternalIp": {
          "type": "string",
          "description": "External management ip of the cluster.\n"
        },
        "clusterInitNow": {
          "type": "boolean"
        },
        "clusterInitSuccessful": {
          "type": "boolean"
        },
        "clusterMembers": {
          "type": "array",
          "items": {
            "type": "string"
          }
        },
        "clusterName": {
          "type": "string",
          "description": "Cluster name.\n"
        },
        "cvmDnsServers": {
          "type": "string",
          "description": "List of dns servers for the cvms in the cluster.\n"
        },
        "cvmNtpServers": {
          "type": "string",
          "description": "List of ntp servers for the cvms in the cluster.\n"
        },
        "redundancyFactor": {
          "type": "integer",
          "description": "Redundancy factor of the cluster.\n"
        },
        "timezone": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "clusterExternalIp",
        "clusterInitNow",
        "clusterInitSuccessful",
        "clusterMembers",
        "clusterName",
        "cvmDnsServers",
        "cvmNtpServers",
        "redundancyFactor",
        "timezone"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getFoundationCentralImagedClustersListImagedClusterFoundationInitConfigHypervisorIso:getFoundationCentralImagedClustersListImagedClusterFoundationInitConfigHypervisorIso": {
      "properties": {
        "hypervisorType": {
          "type": "string"
        },
        "sha256sum": {
          "type": "string"
        },
        "url": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "hypervisorType",
        "sha256sum",
        "url"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getFoundationCentralImagedClustersListImagedClusterFoundationInitConfigNosPackageUrl:getFoundationCentralImagedClustersListImagedClusterFoundationInitConfigNosPackageUrl": {
      "properties": {
        "sha256sum": {
          "type": "string"
        },
        "url": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "sha256sum",
        "url"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getFoundationCentralImagedClustersListMetadata:getFoundationCentralImagedClustersListMetadata": {
      "properties": {
        "length": {
          "type": "integer",
          "description": "The number of records retrieved.\n"
        },
        "offset": {
          "type": "integer",
          "description": "Offset from the start of the object list.\n"
        },
        "totalMatches": {
          "type": "integer",
          "description": "Total matches found.\n"
        }
      },
      "type": "object",
      "required": [
        "length",
        "offset",
        "totalMatches"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getFoundationCentralImagedNodesListFilters:getFoundationCentralImagedNodesListFilters": {
      "properties": {
        "nodeState": {
          "type": "string",
          "description": "Specifies whether the node is discovering, available or unavailable for cluster creation.\n"
        }
      },
      "type": "object"
    },
    "nutanix:index/getFoundationCentralImagedNodesListImagedNode:getFoundationCentralImagedNodesListImagedNode": {
      "properties": {
        "aosVersion": {
          "type": "string",
          "description": "AOS version currently installed on the node.\n"
        },
        "apiKeyUuid": {
          "type": "string",
          "description": "API key used to register the node.\n"
        },
        "available": {
          "type": "boolean",
          "description": "Specifies whether the node is available for cluster creation.\n"
        },
        "blockSerial": {
          "type": "string",
          "description": "Serial number of the block to which the node belongs.\n"
        },
        "createdTimestamp": {
          "type": "string",
          "description": "Time when the node was discovered in Foundation Central.\n"
        },
        "currentTime": {
          "type": "string",
          "description": "Current time of Foundation Central.\n"
        },
        "cvmGateway": {
          "type": "string",
          "description": "gateway of the cvm.\n"
        },
        "cvmIp": {
          "type": "string",
          "description": "IP address of the cvm.\n"
        },
        "cvmIpv6": {
          "type": "string",
          "description": "IPv6 address of the cvm.\n"
        },
        "cvmNetmask": {
          "type": "string",
          "description": "netmask of the cvm.\n"
        },
        "cvmUp": {
          "type": "boolean",
          "description": "Denotes whether the CVM is up or not on this node.\n"
        },
        "cvmUuid": {
          "type": "string",
          "description": "Node UUID from the node's cvm.\n"
        },
        "cvmVlanId": {
          "type": "integer",
          "description": "Vlan tag of the cvm, if the cvm is on a vlan.\n"
        },
        "foundationVersion": {
          "type": "string",
          "description": "Foundation version installed on the node.\n"
        },
        "hardwareAttributes": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          },
          "description": "Hardware attributes json of the node.\n"
        },
        "hypervisorGateway": {
          "type": "string",
          "description": "gateway of the hypervisor.\n"
        },
        "hypervisorHostname": {
          "type": "string",
          "description": "Name of the hypervisor host.\n"
        },
        "hypervisorIp": {
          "type": "string",
          "description": "IP address of the hypervisor.\n"
        },
        "hypervisorNetmask": {
          "type": "string",
          "description": "netmask of the hypervisor.\n"
        },
        "hypervisorType": {
          "type": "string",
          "description": "Hypervisor type currently installed on the node. Must be one of {kvm, esx, hyperv}.\n"
        },
        "hypervisorVersion": {
          "type": "string",
          "description": "Version of the hypervisor currently installed on the node.\n"
        },
        "imagedClusterUuid": {
          "type": "string",
          "description": "UUID of the cluster to which the node belongs, if any.\n"
        },
        "imagedNodeUuid": {
          "type": "string",
          "description": "UUID of the node.\n"
        },
        "ipmiGateway": {
          "type": "string",
          "description": "gateway of the ipmi.\n"
        },
        "ipmiIp": {
          "type": "string",
          "description": "IP address of the ipmi.\n"
        },
        "ipmiNetmask": {
          "type": "string",
          "description": "netmask of the ipmi.\n"
        },
        "ipv6Interface": {
          "type": "string",
          "description": "Name of the cvm interface having ipv6 address.\n"
        },
        "latestHbTsLists": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "List of timestamps when the node has sent heartbeats to Foundation Central.\n"
        },
        "model": {
          "type": "string",
          "description": "Model of the node.\n"
        },
        "nodePosition": {
          "type": "string",
          "description": "Position of the node in the block.\n"
        },
        "nodeSerial": {
          "type": "string",
          "description": "Serial number of the node.\n"
        },
        "nodeState": {
          "type": "string",
          "description": "Specifies whether the node is discovering, available or unavailable for cluster creation.\n"
        },
        "nodeType": {
          "type": "string",
          "description": "Specifies the type of node - on-prem, AWS, GCP etc.\n"
        },
        "objectVersion": {
          "type": "integer",
          "description": "Version of the node used for CAS.\n"
        },
        "supportedFeatures": {
          "type": "array",
          "items": {
            "type": "string"
          }
        }
      },
      "type": "object",
      "required": [
        "aosVersion",
        "apiKeyUuid",
        "available",
        "blockSerial",
        "createdTimestamp",
        "currentTime",
        "cvmGateway",
        "cvmIp",
        "cvmIpv6",
        "cvmNetmask",
        "cvmUp",
        "cvmUuid",
        "cvmVlanId",
        "foundationVersion",
        "hardwareAttributes",
        "hypervisorGateway",
        "hypervisorHostname",
        "hypervisorIp",
        "hypervisorNetmask",
        "hypervisorType",
        "hypervisorVersion",
        "imagedClusterUuid",
        "imagedNodeUuid",
        "ipmiGateway",
        "ipmiIp",
        "ipmiNetmask",
        "ipv6Interface",
        "latestHbTsLists",
        "model",
        "nodePosition",
        "nodeSerial",
        "nodeState",
        "nodeType",
        "objectVersion",
        "supportedFeatures"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getFoundationCentralImagedNodesListMetadata:getFoundationCentralImagedNodesListMetadata": {
      "properties": {
        "length": {
          "type": "integer",
          "description": "The number of records retrieved.\n"
        },
        "offset": {
          "type": "integer",
          "description": "Offset from the start of the object list.\n"
        },
        "totalMatches": {
          "type": "integer",
          "description": "Total matches found.\n"
        }
      },
      "type": "object",
      "required": [
        "length",
        "offset",
        "totalMatches"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getFoundationCentralListApiKeysApiKey:getFoundationCentralListApiKeysApiKey": {
      "properties": {
        "alias": {
          "type": "string",
          "description": "Alias of the api key.\n"
        },
        "apiKey": {
          "type": "string",
          "description": "Api key in string format.\n",
          "secret": true
        },
        "createdTimestamp": {
          "type": "string",
          "description": "Time when the api key was created.\n"
        },
        "currentTime": {
          "type": "string",
          "description": "Current time of Foundation Central.\n"
        },
        "keyUuid": {
          "type": "string",
          "description": "UUID of the api key.\n"
        }
      },
      "type": "object",
      "required": [
        "alias",
        "apiKey",
        "createdTimestamp",
        "currentTime",
        "keyUuid"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getFoundationCentralListApiKeysMetadata:getFoundationCentralListApiKeysMetadata": {
      "properties": {
        "length": {
          "type": "integer",
          "description": "The number of records retrieved.\n"
        },
        "offset": {
          "type": "integer",
          "description": "Offset from the start of the object list.\n"
        },
        "totalMatches": {
          "type": "integer",
          "description": "Total matches found.\n"
        }
      },
      "type": "object",
      "required": [
        "length",
        "offset",
        "totalMatches"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getFoundationDiscoverNodesEntity:getFoundationDiscoverNodesEntity": {
      "properties": {
        "blockId": {
          "type": "string",
          "description": "Chassis serial number.\n"
        },
        "chassisN": {
          "type": "integer",
          "description": "ID number of the block.\n"
        },
        "model": {
          "type": "string",
          "description": "Model name of the node.\n"
        },
        "nodes": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetFoundationDiscoverNodesEntityNode:getFoundationDiscoverNodesEntityNode"
          },
          "description": "Node level properties.\n"
        }
      },
      "type": "object",
      "required": [
        "blockId",
        "chassisN",
        "model",
        "nodes"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getFoundationDiscoverNodesEntityNode:getFoundationDiscoverNodesEntityNode": {
      "properties": {
        "clusterId": {
          "type": "string",
          "description": "ID of the cluster the node is part of.\n"
        },
        "configured": {
          "type": "boolean",
          "description": "Whether the node is configured.\n"
        },
        "currentCvmVlanTag": {
          "type": "string",
          "description": "vlan tag of cvm.\n"
        },
        "currentNetworkInterface": {
          "type": "string",
          "description": "Current network interface of the node.\n"
        },
        "foundationVersion": {
          "type": "string",
          "description": "Version of foundation.\n"
        },
        "hypervisor": {
          "type": "string",
          "description": "Type of hypervisor installed on the node.\n"
        },
        "hypervisorVersion": {
          "type": "string",
          "description": "Version of hypervisor installed.\n"
        },
        "ipv6Address": {
          "type": "string",
          "description": "IPV6 address of the node.\n"
        },
        "model": {
          "type": "string",
          "description": "Model name of the node.\n"
        },
        "nodePosition": {
          "type": "string",
          "description": "Position of the node in the block.\n"
        },
        "nodeSerial": {
          "type": "string",
          "description": "Node serial of the node.\n"
        },
        "nodeUuid": {
          "type": "string",
          "description": "UUID of the node.\n"
        },
        "nosVersion": {
          "type": "string",
          "description": "Version of NOS installed on the node.\n"
        },
        "svmIp": {
          "type": "string",
          "description": "IP address of CVM.\n"
        }
      },
      "type": "object",
      "required": [
        "clusterId",
        "configured",
        "currentCvmVlanTag",
        "currentNetworkInterface",
        "foundationVersion",
        "hypervisor",
        "hypervisorVersion",
        "ipv6Address",
        "model",
        "nodePosition",
        "nodeSerial",
        "nodeUuid",
        "nosVersion",
        "svmIp"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getFoundationHypervisorIsosEsx:getFoundationHypervisorIsosEsx": {
      "properties": {
        "filename": {
          "type": "string",
          "description": "Name of installer.\n"
        },
        "supported": {
          "type": "boolean",
          "description": "Whether front-end should treat hyp as supported.\n"
        }
      },
      "type": "object",
      "required": [
        "filename",
        "supported"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getFoundationHypervisorIsosHyperv:getFoundationHypervisorIsosHyperv": {
      "properties": {
        "filename": {
          "type": "string",
          "description": "Name of installer.\n"
        },
        "supported": {
          "type": "boolean",
          "description": "Whether front-end should treat hyp as supported.\n"
        }
      },
      "type": "object",
      "required": [
        "filename",
        "supported"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getFoundationHypervisorIsosKvm:getFoundationHypervisorIsosKvm": {
      "properties": {
        "filename": {
          "type": "string",
          "description": "Name of installer.\n"
        },
        "supported": {
          "type": "boolean",
          "description": "Whether front-end should treat hyp as supported.\n"
        }
      },
      "type": "object",
      "required": [
        "filename",
        "supported"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getFoundationHypervisorIsosLinux:getFoundationHypervisorIsosLinux": {
      "properties": {
        "filename": {
          "type": "string",
          "description": "Name of installer.\n"
        },
        "supported": {
          "type": "boolean",
          "description": "Whether front-end should treat hyp as supported.\n"
        }
      },
      "type": "object",
      "required": [
        "filename",
        "supported"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getFoundationHypervisorIsosXen:getFoundationHypervisorIsosXen": {
      "properties": {
        "filename": {
          "type": "string",
          "description": "Name of installer.\n"
        },
        "supported": {
          "type": "boolean",
          "description": "Whether front-end should treat hyp as supported.\n"
        }
      },
      "type": "object",
      "required": [
        "filename",
        "supported"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getFoundationNodeNetworkDetailsNode:getFoundationNodeNetworkDetailsNode": {
      "properties": {
        "cvmGateway": {
          "type": "string",
          "description": "Gateway of CVM.\n"
        },
        "cvmIp": {
          "type": "string",
          "description": "CVM IP address.\n"
        },
        "cvmNetmask": {
          "type": "string",
          "description": "Netmask of CVM.\n"
        },
        "cvmVlanId": {
          "type": "string",
          "description": "CVM vlan tag.\n"
        },
        "error": {
          "type": "string",
          "description": "Only exists when failed to fetch node_info, with the reason of failure. all other fields will be empty.\n"
        },
        "hypervisorGateway": {
          "type": "string",
          "description": "Gateway of the hypervisor.\n"
        },
        "hypervisorHostname": {
          "type": "string",
          "description": "Hypervisor hostname.\n"
        },
        "hypervisorIp": {
          "type": "string",
          "description": "Hypervisor IP address.\n"
        },
        "hypervisorNetmask": {
          "type": "string",
          "description": "Netmask of the hypervisor.\n"
        },
        "ipmiGateway": {
          "type": "string",
          "description": "IPMI gateway.\n"
        },
        "ipmiIp": {
          "type": "string",
          "description": "IPMI IP address.\n"
        },
        "ipmiNetmask": {
          "type": "string",
          "description": "IPMI netmask.\n"
        },
        "ipv6Address": {
          "type": "string",
          "description": "IPV6 address of the CVM.\n"
        },
        "nodeSerial": {
          "type": "string",
          "description": "Node serial.\n"
        }
      },
      "type": "object",
      "required": [
        "cvmGateway",
        "cvmIp",
        "cvmNetmask",
        "cvmVlanId",
        "error",
        "hypervisorGateway",
        "hypervisorHostname",
        "hypervisorIp",
        "hypervisorNetmask",
        "ipmiGateway",
        "ipmiIp",
        "ipmiNetmask",
        "ipv6Address",
        "nodeSerial"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getHostCategory:getHostCategory": {
      "properties": {
        "name": {
          "type": "string",
          "description": "- the key name.\n"
        },
        "value": {
          "type": "string",
          "description": "- value of the key.\n"
        }
      },
      "type": "object",
      "required": [
        "name",
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getHostGpuList:getHostGpuList": {
      "properties": {
        "assignable": {
          "type": "boolean"
        },
        "consumerReference": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          }
        },
        "deviceId": {
          "type": "integer"
        },
        "fraction": {
          "type": "integer"
        },
        "frameBufferSizeMib": {
          "type": "integer"
        },
        "guestDriverVersion": {
          "type": "string"
        },
        "index": {
          "type": "integer"
        },
        "licenseLists": {
          "type": "array",
          "items": {
            "type": "string"
          }
        },
        "maxResolution": {
          "type": "string"
        },
        "mode": {
          "type": "string"
        },
        "name": {
          "type": "string",
          "description": "- the name.\n"
        },
        "numVgpusAllocated": {
          "type": "integer"
        },
        "numVirtualDisplayHeads": {
          "type": "integer"
        },
        "numaNode": {
          "type": "integer"
        },
        "pciAddress": {
          "type": "string"
        },
        "status": {
          "type": "string"
        },
        "uuid": {
          "type": "string",
          "description": "- the uuid.\n"
        },
        "vendor": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "assignable",
        "consumerReference",
        "deviceId",
        "fraction",
        "frameBufferSizeMib",
        "guestDriverVersion",
        "index",
        "licenseLists",
        "maxResolution",
        "mode",
        "name",
        "numVgpusAllocated",
        "numVirtualDisplayHeads",
        "numaNode",
        "pciAddress",
        "status",
        "uuid",
        "vendor"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getHostHostDisksReferenceList:getHostHostDisksReferenceList": {
      "properties": {
        "kind": {
          "type": "string",
          "description": "- The kind name (Default value: project).\n"
        },
        "name": {
          "type": "string",
          "description": "- the name.\n"
        },
        "uuid": {
          "type": "string",
          "description": "- the uuid.\n"
        }
      },
      "type": "object",
      "required": [
        "kind",
        "name",
        "uuid"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getHostV2Cluster:getHostV2Cluster": {
      "properties": {
        "name": {
          "type": "string",
          "description": "- Cluster name. This is part of payload for both cluster create & update operations.\n"
        },
        "uuid": {
          "type": "string",
          "description": "- Disk UUID.\n"
        }
      },
      "type": "object",
      "required": [
        "name",
        "uuid"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getHostV2ControllerVm:getHostV2ControllerVm": {
      "properties": {
        "backplaneAddresses": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetHostV2ControllerVmBackplaneAddress:getHostV2ControllerVmBackplaneAddress"
          },
          "description": "- An unique address that identifies a device on the internet or a local network in IPv4 or IPv6 format.\n"
        },
        "externalAddresses": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetHostV2ControllerVmExternalAddress:getHostV2ControllerVmExternalAddress"
          },
          "description": "- An unique address that identifies a device on the internet or a local network in IPv4 or IPv6 format.\n"
        },
        "id": {
          "type": "integer",
          "description": "- Controller VM Id.\n"
        },
        "maintenanceMode": {
          "type": "boolean",
          "description": "- Maintenance mode status.\n"
        },
        "natIps": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetHostV2ControllerVmNatIp:getHostV2ControllerVmNatIp"
          },
          "description": "- An unique address that identifies a device on the internet or a local network in IPv4 or IPv6 format.\n"
        },
        "natPort": {
          "type": "integer",
          "description": "- NAT port.\n"
        },
        "rdmaBackplaneAddresses": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetHostV2ControllerVmRdmaBackplaneAddress:getHostV2ControllerVmRdmaBackplaneAddress"
          },
          "description": "- RDMA backplane address.\n"
        }
      },
      "type": "object",
      "required": [
        "backplaneAddresses",
        "externalAddresses",
        "id",
        "maintenanceMode",
        "natIps",
        "natPort",
        "rdmaBackplaneAddresses"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getHostV2ControllerVmBackplaneAddress:getHostV2ControllerVmBackplaneAddress": {
      "properties": {
        "ipv4s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetHostV2ControllerVmBackplaneAddressIpv4:getHostV2ControllerVmBackplaneAddressIpv4"
          },
          "description": "- An unique address that identifies a device on the internet or a local network in IPv4 format.\n"
        },
        "ipv6s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetHostV2ControllerVmBackplaneAddressIpv6:getHostV2ControllerVmBackplaneAddressIpv6"
          },
          "description": "- An unique address that identifies a device on the internet or a local network in IPv6 format.\n"
        }
      },
      "type": "object",
      "required": [
        "ipv4s",
        "ipv6s"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getHostV2ControllerVmBackplaneAddressIpv4:getHostV2ControllerVmBackplaneAddressIpv4": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "- The prefix length of the network to which this host IPv6 address belongs.\n"
        },
        "value": {
          "type": "string",
          "description": "- An unique address that identifies a device on the internet or a local network in IPv6 format.\n"
        }
      },
      "type": "object",
      "required": [
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getHostV2ControllerVmBackplaneAddressIpv6:getHostV2ControllerVmBackplaneAddressIpv6": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "- The prefix length of the network to which this host IPv6 address belongs.\n"
        },
        "value": {
          "type": "string",
          "description": "- An unique address that identifies a device on the internet or a local network in IPv6 format.\n"
        }
      },
      "type": "object",
      "required": [
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getHostV2ControllerVmExternalAddress:getHostV2ControllerVmExternalAddress": {
      "properties": {
        "ipv4s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetHostV2ControllerVmExternalAddressIpv4:getHostV2ControllerVmExternalAddressIpv4"
          },
          "description": "- An unique address that identifies a device on the internet or a local network in IPv4 format.\n"
        },
        "ipv6s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetHostV2ControllerVmExternalAddressIpv6:getHostV2ControllerVmExternalAddressIpv6"
          },
          "description": "- An unique address that identifies a device on the internet or a local network in IPv6 format.\n"
        }
      },
      "type": "object",
      "required": [
        "ipv4s",
        "ipv6s"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getHostV2ControllerVmExternalAddressIpv4:getHostV2ControllerVmExternalAddressIpv4": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "- The prefix length of the network to which this host IPv6 address belongs.\n"
        },
        "value": {
          "type": "string",
          "description": "- An unique address that identifies a device on the internet or a local network in IPv6 format.\n"
        }
      },
      "type": "object",
      "required": [
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getHostV2ControllerVmExternalAddressIpv6:getHostV2ControllerVmExternalAddressIpv6": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "- The prefix length of the network to which this host IPv6 address belongs.\n"
        },
        "value": {
          "type": "string",
          "description": "- An unique address that identifies a device on the internet or a local network in IPv6 format.\n"
        }
      },
      "type": "object",
      "required": [
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getHostV2ControllerVmNatIp:getHostV2ControllerVmNatIp": {
      "properties": {
        "ipv4s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetHostV2ControllerVmNatIpIpv4:getHostV2ControllerVmNatIpIpv4"
          },
          "description": "- An unique address that identifies a device on the internet or a local network in IPv4 format.\n"
        },
        "ipv6s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetHostV2ControllerVmNatIpIpv6:getHostV2ControllerVmNatIpIpv6"
          },
          "description": "- An unique address that identifies a device on the internet or a local network in IPv6 format.\n"
        }
      },
      "type": "object",
      "required": [
        "ipv4s",
        "ipv6s"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getHostV2ControllerVmNatIpIpv4:getHostV2ControllerVmNatIpIpv4": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "- The prefix length of the network to which this host IPv6 address belongs.\n"
        },
        "value": {
          "type": "string",
          "description": "- An unique address that identifies a device on the internet or a local network in IPv6 format.\n"
        }
      },
      "type": "object",
      "required": [
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getHostV2ControllerVmNatIpIpv6:getHostV2ControllerVmNatIpIpv6": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "- The prefix length of the network to which this host IPv6 address belongs.\n"
        },
        "value": {
          "type": "string",
          "description": "- An unique address that identifies a device on the internet or a local network in IPv6 format.\n"
        }
      },
      "type": "object",
      "required": [
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getHostV2ControllerVmRdmaBackplaneAddress:getHostV2ControllerVmRdmaBackplaneAddress": {
      "properties": {
        "ipv4s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetHostV2ControllerVmRdmaBackplaneAddressIpv4:getHostV2ControllerVmRdmaBackplaneAddressIpv4"
          },
          "description": "- An unique address that identifies a device on the internet or a local network in IPv4 format.\n"
        },
        "ipv6s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetHostV2ControllerVmRdmaBackplaneAddressIpv6:getHostV2ControllerVmRdmaBackplaneAddressIpv6"
          },
          "description": "- An unique address that identifies a device on the internet or a local network in IPv6 format.\n"
        }
      },
      "type": "object",
      "required": [
        "ipv4s",
        "ipv6s"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getHostV2ControllerVmRdmaBackplaneAddressIpv4:getHostV2ControllerVmRdmaBackplaneAddressIpv4": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "- The prefix length of the network to which this host IPv6 address belongs.\n"
        },
        "value": {
          "type": "string",
          "description": "- An unique address that identifies a device on the internet or a local network in IPv6 format.\n"
        }
      },
      "type": "object",
      "required": [
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getHostV2ControllerVmRdmaBackplaneAddressIpv6:getHostV2ControllerVmRdmaBackplaneAddressIpv6": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "- The prefix length of the network to which this host IPv6 address belongs.\n"
        },
        "value": {
          "type": "string",
          "description": "- An unique address that identifies a device on the internet or a local network in IPv6 format.\n"
        }
      },
      "type": "object",
      "required": [
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getHostV2Disk:getHostV2Disk": {
      "properties": {
        "mountPath": {
          "type": "string",
          "description": "- Disk mount path.\n"
        },
        "serialId": {
          "type": "string",
          "description": "- Disk serial Id.\n"
        },
        "sizeInBytes": {
          "type": "integer",
          "description": "- Disk size.\n"
        },
        "storageTier": {
          "type": "string",
          "description": "- Disk storage Tier type.\n* `HDD`: HDD storage tier.\n* `PCIE_SSD`: PCIE SSD storage tier.\n* `SATA_SSD`: SATA SSD storage tier.\n"
        },
        "uuid": {
          "type": "string",
          "description": "- Disk UUID.\n"
        }
      },
      "type": "object",
      "required": [
        "mountPath",
        "serialId",
        "sizeInBytes",
        "storageTier",
        "uuid"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getHostV2Hypervisor:getHostV2Hypervisor": {
      "properties": {
        "acropolisConnectionState": {
          "type": "string",
          "description": "- Status of Acropolis connection to hypervisor.\n* `DISCONNECTED`: Acropolis disconnected.\n* `CONNECTED`: Acropolis connected.\n"
        },
        "externalAddresses": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetHostV2HypervisorExternalAddress:getHostV2HypervisorExternalAddress"
          },
          "description": "- An unique address that identifies a device on the internet or a local network in IPv4 or IPv6 format.\n"
        },
        "fullName": {
          "type": "string",
          "description": "- Hypervisor full name.\n"
        },
        "numberOfVms": {
          "type": "integer",
          "description": "- Number of VMs.\n"
        },
        "state": {
          "type": "string",
          "description": "- Hypervisor state.\n* `HA_HEALING_TARGET`: Hypervisor in HA healing target state.\n* `ENTERING_MAINTENANCE_MODE`: Hypervisor entering maintenance mode.\n* `RESERVED_FOR_HA_FAILOVER`: Hypervisor reserved for HA failover.\n* `HA_HEALING_SOURCE`: Hypervisor in HA healing source state.\n* `RESERVING_FOR_HA_FAILOVER`: Hypervisor that is planned to be reserved for HA failover.\n* `HA_FAILOVER_SOURCE`: Hypervisor in HA failover source state.\n* `ACROPOLIS_NORMAL`: Hypervisor in Acropolis normal state.\n* `ENTERED_MAINTENANCE_MODE`: Hypervisor entered maintenance mode.\n* `ENTERING_MAINTENANCE_MODE_FROM_HA_FAILOVER`: Hypervisor entering maintenance mode from HA failover.\n* `HA_FAILOVER_TARGET`: Hypervisor in HA failover target state.\n"
        },
        "type": {
          "type": "string",
          "description": "- Hypervisor type.\n* `XEN`: Xen hypervisor.\n* `HYPERV`: HyperV hypervisor.\n* `ESX`: ESX hypervisor.\n* `AHV`: AHV hypervisor.\n"
        },
        "userName": {
          "type": "string",
          "description": "- Hypervisor user name.\n"
        }
      },
      "type": "object",
      "required": [
        "acropolisConnectionState",
        "externalAddresses",
        "fullName",
        "numberOfVms",
        "state",
        "type",
        "userName"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getHostV2HypervisorExternalAddress:getHostV2HypervisorExternalAddress": {
      "properties": {
        "ipv4s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetHostV2HypervisorExternalAddressIpv4:getHostV2HypervisorExternalAddressIpv4"
          },
          "description": "- An unique address that identifies a device on the internet or a local network in IPv4 format.\n"
        },
        "ipv6s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetHostV2HypervisorExternalAddressIpv6:getHostV2HypervisorExternalAddressIpv6"
          },
          "description": "- An unique address that identifies a device on the internet or a local network in IPv6 format.\n"
        }
      },
      "type": "object",
      "required": [
        "ipv4s",
        "ipv6s"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getHostV2HypervisorExternalAddressIpv4:getHostV2HypervisorExternalAddressIpv4": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "- The prefix length of the network to which this host IPv6 address belongs.\n"
        },
        "value": {
          "type": "string",
          "description": "- An unique address that identifies a device on the internet or a local network in IPv6 format.\n"
        }
      },
      "type": "object",
      "required": [
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getHostV2HypervisorExternalAddressIpv6:getHostV2HypervisorExternalAddressIpv6": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "- The prefix length of the network to which this host IPv6 address belongs.\n"
        },
        "value": {
          "type": "string",
          "description": "- An unique address that identifies a device on the internet or a local network in IPv6 format.\n"
        }
      },
      "type": "object",
      "required": [
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getHostV2Ipmi:getHostV2Ipmi": {
      "properties": {
        "ips": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetHostV2IpmiIp:getHostV2IpmiIp"
          },
          "description": "- An unique address that identifies a device on the internet or a local network in IPv4 or IPv6 format.\n"
        },
        "username": {
          "type": "string",
          "description": "- IPMI username.\n"
        }
      },
      "type": "object",
      "required": [
        "ips",
        "username"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getHostV2IpmiIp:getHostV2IpmiIp": {
      "properties": {
        "ipv4s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetHostV2IpmiIpIpv4:getHostV2IpmiIpIpv4"
          },
          "description": "- An unique address that identifies a device on the internet or a local network in IPv4 format.\n"
        },
        "ipv6s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetHostV2IpmiIpIpv6:getHostV2IpmiIpIpv6"
          },
          "description": "- An unique address that identifies a device on the internet or a local network in IPv6 format.\n"
        }
      },
      "type": "object",
      "required": [
        "ipv4s",
        "ipv6s"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getHostV2IpmiIpIpv4:getHostV2IpmiIpIpv4": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "- The prefix length of the network to which this host IPv6 address belongs.\n"
        },
        "value": {
          "type": "string",
          "description": "- An unique address that identifies a device on the internet or a local network in IPv6 format.\n"
        }
      },
      "type": "object",
      "required": [
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getHostV2IpmiIpIpv6:getHostV2IpmiIpIpv6": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "- The prefix length of the network to which this host IPv6 address belongs.\n"
        },
        "value": {
          "type": "string",
          "description": "- An unique address that identifies a device on the internet or a local network in IPv6 format.\n"
        }
      },
      "type": "object",
      "required": [
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getHostV2KeyManagementDeviceToCertStatus:getHostV2KeyManagementDeviceToCertStatus": {
      "properties": {
        "isCertificatePresent": {
          "type": "boolean"
        },
        "keyManagementServerName": {
          "type": "string",
          "description": "- Key management server name.\n"
        }
      },
      "type": "object",
      "required": [
        "isCertificatePresent",
        "keyManagementServerName"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getHostV2Link:getHostV2Link": {
      "properties": {
        "href": {
          "type": "string",
          "description": "- The URL at which the entity described by the link can be accessed.\n"
        },
        "rel": {
          "type": "string",
          "description": "- A name that identifies the relationship of the link to the object that is returned by the URL. The unique value of \"self\" identifies the URL for the object.\n"
        }
      },
      "type": "object",
      "required": [
        "href",
        "rel"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getHostsEntity:getHostsEntity": {
      "properties": {
        "apiVersion": {
          "type": "string",
          "description": "The API version.\n"
        },
        "block": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          },
          "description": "- Host block config info.\n"
        },
        "categories": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetHostsEntityCategory:getHostsEntityCategory"
          },
          "description": "- Categories for the image.\n"
        },
        "clusterReference": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          },
          "description": "- Reference to a kind. Either one of (kind, uuid) or url needs to be specified.\n"
        },
        "controllerVm": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          },
          "description": "- Host controller vm information.\n"
        },
        "cpuCapacityHz": {
          "type": "integer",
          "description": "- Host CPU capacity.\n"
        },
        "cpuModel": {
          "type": "string",
          "description": "- Host CPU model.\n"
        },
        "failoverCluster": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          },
          "description": "- Hyper-V failover cluster.\n"
        },
        "gpuDriverVersion": {
          "type": "string",
          "description": "- Host GPU driver version.\n"
        },
        "gpuLists": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetHostsEntityGpuList:getHostsEntityGpuList"
          },
          "description": "- List of GPUs on the host.\n"
        },
        "hostDisksReferenceLists": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetHostsEntityHostDisksReferenceList:getHostsEntityHostDisksReferenceList"
          },
          "description": "- The reference to a disk.\n"
        },
        "hostNicsIdLists": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "- Host NICs.\n"
        },
        "hostType": {
          "type": "string",
          "description": "- Host type.\n"
        },
        "hypervisor": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          },
          "description": "- Host Hypervisor information.\n"
        },
        "ipmi": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          },
          "description": "- Host IPMI info.\n"
        },
        "memoryCapacityMib": {
          "type": "integer",
          "description": "- Host memory capacity in MiB.\n"
        },
        "metadata": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          }
        },
        "monitoringState": {
          "type": "string",
          "description": "- Host monitoring status.\n"
        },
        "name": {
          "type": "string",
          "description": "- the name.\n"
        },
        "numCpuCores": {
          "type": "integer",
          "description": "- Number of CPU cores on Host.\n"
        },
        "numCpuSockets": {
          "type": "integer",
          "description": "- Number of CPU sockets.\n"
        },
        "ownerReference": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          },
          "description": "- The reference to a user.\n"
        },
        "projectReference": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          },
          "description": "- The reference to a project.\n"
        },
        "rackableUnitReference": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          },
          "description": "- The reference to a rackable_unit.\n"
        },
        "serialNumber": {
          "type": "string",
          "description": "- Node serial number.\n"
        },
        "windowsDomain": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          },
          "description": "- The name of the node to be renamed to during domain-join. If not given,a new name will be automatically assigned.\n"
        }
      },
      "type": "object",
      "required": [
        "apiVersion",
        "block",
        "categories",
        "clusterReference",
        "controllerVm",
        "cpuCapacityHz",
        "cpuModel",
        "failoverCluster",
        "gpuDriverVersion",
        "gpuLists",
        "hostDisksReferenceLists",
        "hostNicsIdLists",
        "hostType",
        "hypervisor",
        "ipmi",
        "memoryCapacityMib",
        "metadata",
        "monitoringState",
        "name",
        "numCpuCores",
        "numCpuSockets",
        "ownerReference",
        "projectReference",
        "rackableUnitReference",
        "serialNumber",
        "windowsDomain"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getHostsEntityCategory:getHostsEntityCategory": {
      "properties": {
        "name": {
          "type": "string",
          "description": "- the name.\n"
        },
        "value": {
          "type": "string",
          "description": "- value of the key.\n"
        }
      },
      "type": "object",
      "required": [
        "name",
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getHostsEntityGpuList:getHostsEntityGpuList": {
      "properties": {
        "assignable": {
          "type": "boolean"
        },
        "consumerReference": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          }
        },
        "deviceId": {
          "type": "integer"
        },
        "fraction": {
          "type": "integer"
        },
        "frameBufferSizeMib": {
          "type": "integer"
        },
        "guestDriverVersion": {
          "type": "string"
        },
        "index": {
          "type": "integer"
        },
        "licenseLists": {
          "type": "array",
          "items": {
            "type": "string"
          }
        },
        "maxResolution": {
          "type": "string"
        },
        "mode": {
          "type": "string"
        },
        "name": {
          "type": "string",
          "description": "- the name.\n"
        },
        "numVgpusAllocated": {
          "type": "integer"
        },
        "numVirtualDisplayHeads": {
          "type": "integer"
        },
        "numaNode": {
          "type": "integer"
        },
        "pciAddress": {
          "type": "string"
        },
        "status": {
          "type": "string"
        },
        "uuid": {
          "type": "string",
          "description": "- the uuid.\n"
        },
        "vendor": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "assignable",
        "consumerReference",
        "deviceId",
        "fraction",
        "frameBufferSizeMib",
        "guestDriverVersion",
        "index",
        "licenseLists",
        "maxResolution",
        "mode",
        "name",
        "numVgpusAllocated",
        "numVirtualDisplayHeads",
        "numaNode",
        "pciAddress",
        "status",
        "uuid",
        "vendor"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getHostsEntityHostDisksReferenceList:getHostsEntityHostDisksReferenceList": {
      "properties": {
        "kind": {
          "type": "string",
          "description": "- The kind name (Default value: project).\n"
        },
        "name": {
          "type": "string",
          "description": "- the name.\n"
        },
        "uuid": {
          "type": "string",
          "description": "- the uuid.\n"
        }
      },
      "type": "object",
      "required": [
        "kind",
        "name",
        "uuid"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getHostsV2HostEntity:getHostsV2HostEntity": {
      "properties": {
        "blockModel": {
          "type": "string"
        },
        "blockSerial": {
          "type": "string"
        },
        "bootTimeUsecs": {
          "type": "integer"
        },
        "clusterExtId": {
          "type": "string"
        },
        "clusters": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetHostsV2HostEntityCluster:getHostsV2HostEntityCluster"
          },
          "description": "* `cpuCapacityHz`\n* `cpuFrequencyHz`\n* `cpuModel`\n* `defaultVhdContainerUuid`\n* `defaultVhdLocation`\n* `defaultVmContainerUuid`\n* `defaultVmLocation`\n* `failoverClusterFqdn`\n* `failoverClusterNodeStatus`\n* `gpuDriverVersion`\n* `gpuList`\n* `hostName`\n* `hostType`\n* `maintenanceState`\n* `memorySizeBytes`\n* `nodeStatus`\n* `numberOfCpuCores`\n* `numberOfCpuSockets`\n* `numberOfCpuThreads`\n* `rebootPending`\n"
        },
        "controllerVms": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetHostsV2HostEntityControllerVm:getHostsV2HostEntityControllerVm"
          }
        },
        "cpuCapacityHz": {
          "type": "integer"
        },
        "cpuFrequencyHz": {
          "type": "integer"
        },
        "cpuModel": {
          "type": "string"
        },
        "defaultVhdContainerUuid": {
          "type": "string"
        },
        "defaultVhdLocation": {
          "type": "string"
        },
        "defaultVmContainerUuid": {
          "type": "string"
        },
        "defaultVmLocation": {
          "type": "string"
        },
        "disks": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetHostsV2HostEntityDisk:getHostsV2HostEntityDisk"
          }
        },
        "extId": {
          "type": "string"
        },
        "failoverClusterFqdn": {
          "type": "string"
        },
        "failoverClusterNodeStatus": {
          "type": "string"
        },
        "gpuDriverVersion": {
          "type": "string"
        },
        "gpuLists": {
          "type": "array",
          "items": {
            "type": "string"
          }
        },
        "hasCsr": {
          "type": "boolean"
        },
        "hostName": {
          "type": "string"
        },
        "hostType": {
          "type": "string"
        },
        "hypervisors": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetHostsV2HostEntityHypervisor:getHostsV2HostEntityHypervisor"
          }
        },
        "ipmis": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetHostsV2HostEntityIpmi:getHostsV2HostEntityIpmi"
          }
        },
        "isDegraded": {
          "type": "boolean"
        },
        "isHardwareVirtualized": {
          "type": "boolean"
        },
        "isRebootPending": {
          "type": "boolean"
        },
        "isSecureBooted": {
          "type": "boolean"
        },
        "keyManagementDeviceToCertStatuses": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetHostsV2HostEntityKeyManagementDeviceToCertStatus:getHostsV2HostEntityKeyManagementDeviceToCertStatus"
          }
        },
        "links": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetHostsV2HostEntityLink:getHostsV2HostEntityLink"
          }
        },
        "maintenanceState": {
          "type": "string"
        },
        "memorySizeBytes": {
          "type": "integer"
        },
        "nodeStatus": {
          "type": "string"
        },
        "numberOfCpuCores": {
          "type": "integer"
        },
        "numberOfCpuSockets": {
          "type": "integer"
        },
        "numberOfCpuThreads": {
          "type": "integer"
        },
        "rackableUnitUuid": {
          "type": "string"
        },
        "tenantId": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "blockModel",
        "blockSerial",
        "bootTimeUsecs",
        "clusterExtId",
        "clusters",
        "controllerVms",
        "cpuCapacityHz",
        "cpuFrequencyHz",
        "cpuModel",
        "defaultVhdContainerUuid",
        "defaultVhdLocation",
        "defaultVmContainerUuid",
        "defaultVmLocation",
        "disks",
        "extId",
        "failoverClusterFqdn",
        "failoverClusterNodeStatus",
        "gpuDriverVersion",
        "gpuLists",
        "hasCsr",
        "hostName",
        "hostType",
        "hypervisors",
        "ipmis",
        "isDegraded",
        "isHardwareVirtualized",
        "isRebootPending",
        "isSecureBooted",
        "keyManagementDeviceToCertStatuses",
        "links",
        "maintenanceState",
        "memorySizeBytes",
        "nodeStatus",
        "numberOfCpuCores",
        "numberOfCpuSockets",
        "numberOfCpuThreads",
        "rackableUnitUuid",
        "tenantId"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getHostsV2HostEntityCluster:getHostsV2HostEntityCluster": {
      "properties": {
        "name": {
          "type": "string"
        },
        "uuid": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "name",
        "uuid"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getHostsV2HostEntityControllerVm:getHostsV2HostEntityControllerVm": {
      "properties": {
        "backplaneAddresses": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetHostsV2HostEntityControllerVmBackplaneAddress:getHostsV2HostEntityControllerVmBackplaneAddress"
          }
        },
        "externalAddresses": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetHostsV2HostEntityControllerVmExternalAddress:getHostsV2HostEntityControllerVmExternalAddress"
          }
        },
        "id": {
          "type": "integer"
        },
        "maintenanceMode": {
          "type": "boolean"
        },
        "natIps": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetHostsV2HostEntityControllerVmNatIp:getHostsV2HostEntityControllerVmNatIp"
          }
        },
        "natPort": {
          "type": "integer"
        },
        "rdmaBackplaneAddresses": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetHostsV2HostEntityControllerVmRdmaBackplaneAddress:getHostsV2HostEntityControllerVmRdmaBackplaneAddress"
          }
        }
      },
      "type": "object",
      "required": [
        "backplaneAddresses",
        "externalAddresses",
        "id",
        "maintenanceMode",
        "natIps",
        "natPort",
        "rdmaBackplaneAddresses"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getHostsV2HostEntityControllerVmBackplaneAddress:getHostsV2HostEntityControllerVmBackplaneAddress": {
      "properties": {
        "ipv4s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetHostsV2HostEntityControllerVmBackplaneAddressIpv4:getHostsV2HostEntityControllerVmBackplaneAddressIpv4"
          }
        },
        "ipv6s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetHostsV2HostEntityControllerVmBackplaneAddressIpv6:getHostsV2HostEntityControllerVmBackplaneAddressIpv6"
          }
        }
      },
      "type": "object",
      "required": [
        "ipv4s",
        "ipv6s"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getHostsV2HostEntityControllerVmBackplaneAddressIpv4:getHostsV2HostEntityControllerVmBackplaneAddressIpv4": {
      "properties": {
        "prefixLength": {
          "type": "integer"
        },
        "value": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getHostsV2HostEntityControllerVmBackplaneAddressIpv6:getHostsV2HostEntityControllerVmBackplaneAddressIpv6": {
      "properties": {
        "prefixLength": {
          "type": "integer"
        },
        "value": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getHostsV2HostEntityControllerVmExternalAddress:getHostsV2HostEntityControllerVmExternalAddress": {
      "properties": {
        "ipv4s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetHostsV2HostEntityControllerVmExternalAddressIpv4:getHostsV2HostEntityControllerVmExternalAddressIpv4"
          }
        },
        "ipv6s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetHostsV2HostEntityControllerVmExternalAddressIpv6:getHostsV2HostEntityControllerVmExternalAddressIpv6"
          }
        }
      },
      "type": "object",
      "required": [
        "ipv4s",
        "ipv6s"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getHostsV2HostEntityControllerVmExternalAddressIpv4:getHostsV2HostEntityControllerVmExternalAddressIpv4": {
      "properties": {
        "prefixLength": {
          "type": "integer"
        },
        "value": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getHostsV2HostEntityControllerVmExternalAddressIpv6:getHostsV2HostEntityControllerVmExternalAddressIpv6": {
      "properties": {
        "prefixLength": {
          "type": "integer"
        },
        "value": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getHostsV2HostEntityControllerVmNatIp:getHostsV2HostEntityControllerVmNatIp": {
      "properties": {
        "ipv4s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetHostsV2HostEntityControllerVmNatIpIpv4:getHostsV2HostEntityControllerVmNatIpIpv4"
          }
        },
        "ipv6s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetHostsV2HostEntityControllerVmNatIpIpv6:getHostsV2HostEntityControllerVmNatIpIpv6"
          }
        }
      },
      "type": "object",
      "required": [
        "ipv4s",
        "ipv6s"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getHostsV2HostEntityControllerVmNatIpIpv4:getHostsV2HostEntityControllerVmNatIpIpv4": {
      "properties": {
        "prefixLength": {
          "type": "integer"
        },
        "value": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getHostsV2HostEntityControllerVmNatIpIpv6:getHostsV2HostEntityControllerVmNatIpIpv6": {
      "properties": {
        "prefixLength": {
          "type": "integer"
        },
        "value": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getHostsV2HostEntityControllerVmRdmaBackplaneAddress:getHostsV2HostEntityControllerVmRdmaBackplaneAddress": {
      "properties": {
        "ipv4s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetHostsV2HostEntityControllerVmRdmaBackplaneAddressIpv4:getHostsV2HostEntityControllerVmRdmaBackplaneAddressIpv4"
          }
        },
        "ipv6s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetHostsV2HostEntityControllerVmRdmaBackplaneAddressIpv6:getHostsV2HostEntityControllerVmRdmaBackplaneAddressIpv6"
          }
        }
      },
      "type": "object",
      "required": [
        "ipv4s",
        "ipv6s"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getHostsV2HostEntityControllerVmRdmaBackplaneAddressIpv4:getHostsV2HostEntityControllerVmRdmaBackplaneAddressIpv4": {
      "properties": {
        "prefixLength": {
          "type": "integer"
        },
        "value": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getHostsV2HostEntityControllerVmRdmaBackplaneAddressIpv6:getHostsV2HostEntityControllerVmRdmaBackplaneAddressIpv6": {
      "properties": {
        "prefixLength": {
          "type": "integer"
        },
        "value": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getHostsV2HostEntityDisk:getHostsV2HostEntityDisk": {
      "properties": {
        "mountPath": {
          "type": "string"
        },
        "serialId": {
          "type": "string"
        },
        "sizeInBytes": {
          "type": "integer"
        },
        "storageTier": {
          "type": "string"
        },
        "uuid": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "mountPath",
        "serialId",
        "sizeInBytes",
        "storageTier",
        "uuid"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getHostsV2HostEntityHypervisor:getHostsV2HostEntityHypervisor": {
      "properties": {
        "acropolisConnectionState": {
          "type": "string"
        },
        "externalAddresses": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetHostsV2HostEntityHypervisorExternalAddress:getHostsV2HostEntityHypervisorExternalAddress"
          }
        },
        "fullName": {
          "type": "string"
        },
        "numberOfVms": {
          "type": "integer"
        },
        "state": {
          "type": "string"
        },
        "type": {
          "type": "string"
        },
        "userName": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "acropolisConnectionState",
        "externalAddresses",
        "fullName",
        "numberOfVms",
        "state",
        "type",
        "userName"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getHostsV2HostEntityHypervisorExternalAddress:getHostsV2HostEntityHypervisorExternalAddress": {
      "properties": {
        "ipv4s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetHostsV2HostEntityHypervisorExternalAddressIpv4:getHostsV2HostEntityHypervisorExternalAddressIpv4"
          }
        },
        "ipv6s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetHostsV2HostEntityHypervisorExternalAddressIpv6:getHostsV2HostEntityHypervisorExternalAddressIpv6"
          }
        }
      },
      "type": "object",
      "required": [
        "ipv4s",
        "ipv6s"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getHostsV2HostEntityHypervisorExternalAddressIpv4:getHostsV2HostEntityHypervisorExternalAddressIpv4": {
      "properties": {
        "prefixLength": {
          "type": "integer"
        },
        "value": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getHostsV2HostEntityHypervisorExternalAddressIpv6:getHostsV2HostEntityHypervisorExternalAddressIpv6": {
      "properties": {
        "prefixLength": {
          "type": "integer"
        },
        "value": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getHostsV2HostEntityIpmi:getHostsV2HostEntityIpmi": {
      "properties": {
        "ips": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetHostsV2HostEntityIpmiIp:getHostsV2HostEntityIpmiIp"
          }
        },
        "username": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "ips",
        "username"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getHostsV2HostEntityIpmiIp:getHostsV2HostEntityIpmiIp": {
      "properties": {
        "ipv4s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetHostsV2HostEntityIpmiIpIpv4:getHostsV2HostEntityIpmiIpIpv4"
          }
        },
        "ipv6s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetHostsV2HostEntityIpmiIpIpv6:getHostsV2HostEntityIpmiIpIpv6"
          }
        }
      },
      "type": "object",
      "required": [
        "ipv4s",
        "ipv6s"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getHostsV2HostEntityIpmiIpIpv4:getHostsV2HostEntityIpmiIpIpv4": {
      "properties": {
        "prefixLength": {
          "type": "integer"
        },
        "value": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getHostsV2HostEntityIpmiIpIpv6:getHostsV2HostEntityIpmiIpIpv6": {
      "properties": {
        "prefixLength": {
          "type": "integer"
        },
        "value": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getHostsV2HostEntityKeyManagementDeviceToCertStatus:getHostsV2HostEntityKeyManagementDeviceToCertStatus": {
      "properties": {
        "isCertificatePresent": {
          "type": "boolean"
        },
        "keyManagementServerName": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "isCertificatePresent",
        "keyManagementServerName"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getHostsV2HostEntityLink:getHostsV2HostEntityLink": {
      "properties": {
        "href": {
          "type": "string"
        },
        "rel": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "href",
        "rel"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getImageCategory:getImageCategory": {
      "properties": {
        "name": {
          "type": "string",
          "description": "- the name.\n"
        },
        "value": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "name",
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getImageClusterReference:getImageClusterReference": {
      "properties": {
        "kind": {
          "type": "string",
          "description": "- The kind name (Default value: project).\n"
        },
        "name": {
          "type": "string",
          "description": "- the name.\n"
        },
        "uuid": {
          "type": "string",
          "description": "- the UUID.\n"
        }
      },
      "type": "object",
      "required": [
        "kind",
        "name",
        "uuid"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getImageCurrentClusterReferenceList:getImageCurrentClusterReferenceList": {
      "properties": {
        "kind": {
          "type": "string",
          "description": "- The kind name (Default value: project).\n"
        },
        "name": {
          "type": "string",
          "description": "- the name.\n"
        },
        "uuid": {
          "type": "string",
          "description": "- the UUID.\n"
        }
      },
      "type": "object",
      "required": [
        "kind",
        "name",
        "uuid"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getImageDataSourceReference:getImageDataSourceReference": {
      "properties": {
        "kind": {
          "type": "string",
          "description": "- The kind name (Default value: project).\n"
        },
        "uuid": {
          "type": "string",
          "description": "- the UUID.\n"
        }
      },
      "type": "object",
      "required": [
        "kind",
        "uuid"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getImagePlacementPoliciesV2PlacementPolicy:getImagePlacementPoliciesV2PlacementPolicy": {
      "properties": {
        "clusterEntityFilters": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetImagePlacementPoliciesV2PlacementPolicyClusterEntityFilter:getImagePlacementPoliciesV2PlacementPolicyClusterEntityFilter"
          },
          "description": "(Required) Category-based entity filter.\n"
        },
        "createTime": {
          "type": "string"
        },
        "description": {
          "type": "string",
          "description": "(Optional) Description of the image placement policy.\n"
        },
        "enforcementState": {
          "type": "string",
          "description": "(Optional) Enforcement status of the image placement policy. Valid values:\n- ACTIVE: The image placement policy is being actively enforced.\n- SUSPENDED: The policy enforcement for image placement is suspended.\n"
        },
        "extId": {
          "type": "string",
          "description": "The external identifier of an image placement policy.\n"
        },
        "imageEntityFilters": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetImagePlacementPoliciesV2PlacementPolicyImageEntityFilter:getImagePlacementPoliciesV2PlacementPolicyImageEntityFilter"
          },
          "description": "(Required) Category-based entity filter.\n"
        },
        "lastUpdateTime": {
          "type": "string"
        },
        "name": {
          "type": "string",
          "description": "(Required) Name of the image placement policy.\n"
        },
        "ownerExtId": {
          "type": "string"
        },
        "placementType": {
          "type": "string",
          "description": "(Required) Type of the image placement policy. Valid values:\n- HARD: Hard placement policy. Images can only be placed on clusters enforced by the image placement policy.\n- SOFT: Soft placement policy. Images can be placed on clusters apart from those enforced by the image placement policy.\n"
        }
      },
      "type": "object",
      "required": [
        "clusterEntityFilters",
        "createTime",
        "description",
        "enforcementState",
        "extId",
        "imageEntityFilters",
        "lastUpdateTime",
        "name",
        "ownerExtId",
        "placementType"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getImagePlacementPoliciesV2PlacementPolicyClusterEntityFilter:getImagePlacementPoliciesV2PlacementPolicyClusterEntityFilter": {
      "properties": {
        "categoryExtIds": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "Array of strings\n"
        },
        "type": {
          "type": "string",
          "description": "(Required) Filter matching type. Valid values:\n- CATEGORIES_MATCH_ALL: Image policy only applies to the entities that are matched to all the corresponding entity categories attached to the image policy.\n- CATEGORIES_MATCH_ANY: Image policy applies to the entities that match any subset of the entity categories attached to the image policy.\n"
        }
      },
      "type": "object",
      "required": [
        "categoryExtIds",
        "type"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getImagePlacementPoliciesV2PlacementPolicyImageEntityFilter:getImagePlacementPoliciesV2PlacementPolicyImageEntityFilter": {
      "properties": {
        "categoryExtIds": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "Array of strings\n"
        },
        "type": {
          "type": "string",
          "description": "(Required) Filter matching type. Valid values:\n- CATEGORIES_MATCH_ALL: Image policy only applies to the entities that are matched to all the corresponding entity categories attached to the image policy.\n- CATEGORIES_MATCH_ANY: Image policy applies to the entities that match any subset of the entity categories attached to the image policy.\n"
        }
      },
      "type": "object",
      "required": [
        "categoryExtIds",
        "type"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getImagePlacementPolicyV2ClusterEntityFilter:getImagePlacementPolicyV2ClusterEntityFilter": {
      "properties": {
        "categoryExtIds": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "Array of strings\n"
        },
        "type": {
          "type": "string",
          "description": "(Required) Filter matching type. Valid values:\n- CATEGORIES_MATCH_ALL: Image policy only applies to the entities that are matched to all the corresponding entity categories attached to the image policy.\n- CATEGORIES_MATCH_ANY: Image policy applies to the entities that match any subset of the entity categories attached to the image policy.\n"
        }
      },
      "type": "object",
      "required": [
        "categoryExtIds",
        "type"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getImagePlacementPolicyV2ImageEntityFilter:getImagePlacementPolicyV2ImageEntityFilter": {
      "properties": {
        "categoryExtIds": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "Array of strings\n"
        },
        "type": {
          "type": "string",
          "description": "(Required) Filter matching type. Valid values:\n- CATEGORIES_MATCH_ALL: Image policy only applies to the entities that are matched to all the corresponding entity categories attached to the image policy.\n- CATEGORIES_MATCH_ANY: Image policy applies to the entities that match any subset of the entity categories attached to the image policy.\n"
        }
      },
      "type": "object",
      "required": [
        "categoryExtIds",
        "type"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getImageV2Checksum:getImageV2Checksum": {
      "properties": {
        "hexDigest": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "hexDigest"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getImageV2PlacementPolicyStatus:getImageV2PlacementPolicyStatus": {
      "properties": {
        "complianceStatus": {
          "type": "string",
          "description": "Compliance status for a placement policy.\n"
        },
        "conflictingPolicyExtIds": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "List of image placement policy external identifier that conflict with the current one.\n"
        },
        "enforcedClusterExtIds": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "List of cluster external identifiers for the enforced placement policy.\n"
        },
        "enforcementMode": {
          "type": "string",
          "description": "Indicates whether the placement policy enforcement is ongoing or has failed.\n"
        },
        "placementPolicyExtId": {
          "type": "string",
          "description": "Image placement policy external identifier.\n"
        },
        "policyClusterExtIds": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "List of cluster external identifiers of the image location for the enforced placement policy.\n"
        }
      },
      "type": "object",
      "required": [
        "complianceStatus",
        "conflictingPolicyExtIds",
        "enforcedClusterExtIds",
        "enforcementMode",
        "placementPolicyExtId",
        "policyClusterExtIds"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getImageV2Source:getImageV2Source": {
      "properties": {
        "objectLiteSources": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetImageV2SourceObjectLiteSource:getImageV2SourceObjectLiteSource"
          }
        },
        "urlSources": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetImageV2SourceUrlSource:getImageV2SourceUrlSource"
          }
        },
        "vmDiskSources": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetImageV2SourceVmDiskSource:getImageV2SourceVmDiskSource"
          }
        }
      },
      "type": "object",
      "required": [
        "objectLiteSources",
        "urlSources",
        "vmDiskSources"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getImageV2SourceObjectLiteSource:getImageV2SourceObjectLiteSource": {
      "properties": {
        "key": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "key"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getImageV2SourceUrlSource:getImageV2SourceUrlSource": {
      "properties": {
        "basicAuths": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetImageV2SourceUrlSourceBasicAuth:getImageV2SourceUrlSourceBasicAuth"
          },
          "description": "Basic authentication credentials for image source HTTP/S URL.\n"
        },
        "shouldAllowInsecureUrl": {
          "type": "boolean"
        },
        "url": {
          "type": "string",
          "description": "The URL for creating an image.\n"
        }
      },
      "type": "object",
      "required": [
        "basicAuths",
        "shouldAllowInsecureUrl",
        "url"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getImageV2SourceUrlSourceBasicAuth:getImageV2SourceUrlSourceBasicAuth": {
      "properties": {
        "password": {
          "type": "string",
          "description": "Password for basic authentication.\n"
        },
        "username": {
          "type": "string",
          "description": "Username for basic authentication.\n"
        }
      },
      "type": "object",
      "required": [
        "password",
        "username"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getImageV2SourceVmDiskSource:getImageV2SourceVmDiskSource": {
      "properties": {
        "extId": {
          "type": "string",
          "description": "The external identifier of an image.\n"
        }
      },
      "type": "object",
      "required": [
        "extId"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getImagesV2Image:getImagesV2Image": {
      "properties": {
        "categoryExtIds": {
          "type": "array",
          "items": {
            "type": "string"
          }
        },
        "checksums": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetImagesV2ImageChecksum:getImagesV2ImageChecksum"
          }
        },
        "clusterLocationExtIds": {
          "type": "array",
          "items": {
            "type": "string"
          }
        },
        "createTime": {
          "type": "string"
        },
        "description": {
          "type": "string"
        },
        "extId": {
          "type": "string"
        },
        "lastUpdateTime": {
          "type": "string"
        },
        "name": {
          "type": "string"
        },
        "ownerExtId": {
          "type": "string"
        },
        "placementPolicyStatuses": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetImagesV2ImagePlacementPolicyStatus:getImagesV2ImagePlacementPolicyStatus"
          }
        },
        "sizeBytes": {
          "type": "integer"
        },
        "sources": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetImagesV2ImageSource:getImagesV2ImageSource"
          }
        },
        "type": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "categoryExtIds",
        "checksums",
        "clusterLocationExtIds",
        "createTime",
        "description",
        "extId",
        "lastUpdateTime",
        "name",
        "ownerExtId",
        "placementPolicyStatuses",
        "sizeBytes",
        "sources",
        "type"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getImagesV2ImageChecksum:getImagesV2ImageChecksum": {
      "properties": {
        "hexDigest": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "hexDigest"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getImagesV2ImagePlacementPolicyStatus:getImagesV2ImagePlacementPolicyStatus": {
      "properties": {
        "complianceStatus": {
          "type": "string"
        },
        "conflictingPolicyExtIds": {
          "type": "array",
          "items": {
            "type": "string"
          }
        },
        "enforcedClusterExtIds": {
          "type": "array",
          "items": {
            "type": "string"
          }
        },
        "enforcementMode": {
          "type": "string"
        },
        "placementPolicyExtId": {
          "type": "string"
        },
        "policyClusterExtIds": {
          "type": "array",
          "items": {
            "type": "string"
          }
        }
      },
      "type": "object",
      "required": [
        "complianceStatus",
        "conflictingPolicyExtIds",
        "enforcedClusterExtIds",
        "enforcementMode",
        "placementPolicyExtId",
        "policyClusterExtIds"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getImagesV2ImageSource:getImagesV2ImageSource": {
      "properties": {
        "objectLiteSources": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetImagesV2ImageSourceObjectLiteSource:getImagesV2ImageSourceObjectLiteSource"
          }
        },
        "urlSources": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetImagesV2ImageSourceUrlSource:getImagesV2ImageSourceUrlSource"
          }
        },
        "vmDiskSources": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetImagesV2ImageSourceVmDiskSource:getImagesV2ImageSourceVmDiskSource"
          }
        }
      },
      "type": "object",
      "required": [
        "objectLiteSources",
        "urlSources",
        "vmDiskSources"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getImagesV2ImageSourceObjectLiteSource:getImagesV2ImageSourceObjectLiteSource": {
      "properties": {
        "key": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "key"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getImagesV2ImageSourceUrlSource:getImagesV2ImageSourceUrlSource": {
      "properties": {
        "basicAuths": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetImagesV2ImageSourceUrlSourceBasicAuth:getImagesV2ImageSourceUrlSourceBasicAuth"
          }
        },
        "shouldAllowInsecureUrl": {
          "type": "boolean"
        },
        "url": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "basicAuths",
        "shouldAllowInsecureUrl",
        "url"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getImagesV2ImageSourceUrlSourceBasicAuth:getImagesV2ImageSourceUrlSourceBasicAuth": {
      "properties": {
        "password": {
          "type": "string"
        },
        "username": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "password",
        "username"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getImagesV2ImageSourceVmDiskSource:getImagesV2ImageSourceVmDiskSource": {
      "properties": {
        "extId": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "extId"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getKarbonClusterEtcdNodePool:getKarbonClusterEtcdNodePool": {
      "properties": {
        "ahvConfigs": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetKarbonClusterEtcdNodePoolAhvConfig:getKarbonClusterEtcdNodePoolAhvConfig"
          },
          "description": "- VM configuration in AHV.\n"
        },
        "name": {
          "type": "string",
          "description": "- Unique name of the node pool.\n"
        },
        "nodeOsVersion": {
          "type": "string",
          "description": "- The version of the node OS image.\n"
        },
        "nodes": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetKarbonClusterEtcdNodePoolNode:getKarbonClusterEtcdNodePoolNode"
          },
          "description": "- List of the deployed nodes in the node pool.\n"
        },
        "numInstances": {
          "type": "integer",
          "description": "- Number of nodes in the node pool.\n"
        }
      },
      "type": "object",
      "required": [
        "ahvConfigs",
        "name",
        "nodeOsVersion",
        "nodes",
        "numInstances"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getKarbonClusterEtcdNodePoolAhvConfig:getKarbonClusterEtcdNodePoolAhvConfig": {
      "properties": {
        "cpu": {
          "type": "integer",
          "description": "- The number of VCPUs allocated for each VM on the PE cluster.\n"
        },
        "diskMib": {
          "type": "integer",
          "description": "- Size of local storage for each VM on the PE cluster in MiB.\n"
        },
        "memoryMib": {
          "type": "integer",
          "description": "- Memory allocated for each VM on the PE cluster in MiB.\n"
        },
        "networkUuid": {
          "type": "string",
          "description": "- The UUID of the network for the VMs deployed with this resource configuration.\n"
        },
        "prismElementClusterUuid": {
          "type": "string",
          "description": "- The unique universal identifier (UUID) of the Prism Element cluster used to deploy VMs for this node pool.\n"
        }
      },
      "type": "object",
      "required": [
        "cpu",
        "diskMib",
        "memoryMib",
        "networkUuid",
        "prismElementClusterUuid"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getKarbonClusterEtcdNodePoolNode:getKarbonClusterEtcdNodePoolNode": {
      "properties": {
        "hostname": {
          "type": "string",
          "description": "- Hostname of the deployed node.\n"
        },
        "ipv4Address": {
          "type": "string",
          "description": "- IP of the deployed node.\n"
        }
      },
      "type": "object",
      "required": [
        "hostname",
        "ipv4Address"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getKarbonClusterMasterNodePool:getKarbonClusterMasterNodePool": {
      "properties": {
        "ahvConfigs": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetKarbonClusterMasterNodePoolAhvConfig:getKarbonClusterMasterNodePoolAhvConfig"
          },
          "description": "- VM configuration in AHV.\n"
        },
        "name": {
          "type": "string",
          "description": "- Unique name of the node pool.\n"
        },
        "nodeOsVersion": {
          "type": "string",
          "description": "- The version of the node OS image.\n"
        },
        "nodes": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetKarbonClusterMasterNodePoolNode:getKarbonClusterMasterNodePoolNode"
          },
          "description": "- List of the deployed nodes in the node pool.\n"
        },
        "numInstances": {
          "type": "integer",
          "description": "- Number of nodes in the node pool.\n"
        }
      },
      "type": "object",
      "required": [
        "ahvConfigs",
        "name",
        "nodeOsVersion",
        "nodes",
        "numInstances"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getKarbonClusterMasterNodePoolAhvConfig:getKarbonClusterMasterNodePoolAhvConfig": {
      "properties": {
        "cpu": {
          "type": "integer",
          "description": "- The number of VCPUs allocated for each VM on the PE cluster.\n"
        },
        "diskMib": {
          "type": "integer",
          "description": "- Size of local storage for each VM on the PE cluster in MiB.\n"
        },
        "memoryMib": {
          "type": "integer",
          "description": "- Memory allocated for each VM on the PE cluster in MiB.\n"
        },
        "networkUuid": {
          "type": "string",
          "description": "- The UUID of the network for the VMs deployed with this resource configuration.\n"
        },
        "prismElementClusterUuid": {
          "type": "string",
          "description": "- The unique universal identifier (UUID) of the Prism Element cluster used to deploy VMs for this node pool.\n"
        }
      },
      "type": "object",
      "required": [
        "cpu",
        "diskMib",
        "memoryMib",
        "networkUuid",
        "prismElementClusterUuid"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getKarbonClusterMasterNodePoolNode:getKarbonClusterMasterNodePoolNode": {
      "properties": {
        "hostname": {
          "type": "string",
          "description": "- Hostname of the deployed node.\n"
        },
        "ipv4Address": {
          "type": "string",
          "description": "- IP of the deployed node.\n"
        }
      },
      "type": "object",
      "required": [
        "hostname",
        "ipv4Address"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getKarbonClusterWorkerNodePool:getKarbonClusterWorkerNodePool": {
      "properties": {
        "ahvConfigs": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetKarbonClusterWorkerNodePoolAhvConfig:getKarbonClusterWorkerNodePoolAhvConfig"
          },
          "description": "- VM configuration in AHV.\n"
        },
        "name": {
          "type": "string",
          "description": "- Unique name of the node pool.\n"
        },
        "nodeOsVersion": {
          "type": "string",
          "description": "- The version of the node OS image.\n"
        },
        "nodes": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetKarbonClusterWorkerNodePoolNode:getKarbonClusterWorkerNodePoolNode"
          },
          "description": "- List of the deployed nodes in the node pool.\n"
        },
        "numInstances": {
          "type": "integer",
          "description": "- Number of nodes in the node pool.\n"
        }
      },
      "type": "object",
      "required": [
        "ahvConfigs",
        "name",
        "nodeOsVersion",
        "nodes",
        "numInstances"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getKarbonClusterWorkerNodePoolAhvConfig:getKarbonClusterWorkerNodePoolAhvConfig": {
      "properties": {
        "cpu": {
          "type": "integer",
          "description": "- The number of VCPUs allocated for each VM on the PE cluster.\n"
        },
        "diskMib": {
          "type": "integer",
          "description": "- Size of local storage for each VM on the PE cluster in MiB.\n"
        },
        "memoryMib": {
          "type": "integer",
          "description": "- Memory allocated for each VM on the PE cluster in MiB.\n"
        },
        "networkUuid": {
          "type": "string",
          "description": "- The UUID of the network for the VMs deployed with this resource configuration.\n"
        },
        "prismElementClusterUuid": {
          "type": "string",
          "description": "- The unique universal identifier (UUID) of the Prism Element cluster used to deploy VMs for this node pool.\n"
        }
      },
      "type": "object",
      "required": [
        "cpu",
        "diskMib",
        "memoryMib",
        "networkUuid",
        "prismElementClusterUuid"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getKarbonClusterWorkerNodePoolNode:getKarbonClusterWorkerNodePoolNode": {
      "properties": {
        "hostname": {
          "type": "string",
          "description": "- Hostname of the deployed node.\n"
        },
        "ipv4Address": {
          "type": "string",
          "description": "- IP of the deployed node.\n"
        }
      },
      "type": "object",
      "required": [
        "hostname",
        "ipv4Address"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getKarbonClustersCluster:getKarbonClustersCluster": {
      "properties": {
        "deploymentType": {
          "type": "string"
        },
        "etcdNodePools": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetKarbonClustersClusterEtcdNodePool:getKarbonClustersClusterEtcdNodePool"
          },
          "description": "- Configuration of the node pools that the nodes in the etcd cluster belong to. The etcd nodes require a minimum of 8,192 MiB memory and 409,60 MiB disk space.\n"
        },
        "kubeapiServerIpv4Address": {
          "type": "string"
        },
        "masterNodePools": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetKarbonClustersClusterMasterNodePool:getKarbonClustersClusterMasterNodePool"
          },
          "description": "- .\n"
        },
        "name": {
          "type": "string",
          "description": "- Unique name of the node pool.\n"
        },
        "status": {
          "type": "string"
        },
        "uuid": {
          "type": "string"
        },
        "version": {
          "type": "string",
          "description": "- K8s version of the cluster.\n"
        },
        "workerNodePools": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetKarbonClustersClusterWorkerNodePool:getKarbonClustersClusterWorkerNodePool"
          }
        }
      },
      "type": "object",
      "required": [
        "deploymentType",
        "etcdNodePools",
        "kubeapiServerIpv4Address",
        "masterNodePools",
        "name",
        "status",
        "uuid",
        "version",
        "workerNodePools"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getKarbonClustersClusterEtcdNodePool:getKarbonClustersClusterEtcdNodePool": {
      "properties": {
        "ahvConfigs": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetKarbonClustersClusterEtcdNodePoolAhvConfig:getKarbonClustersClusterEtcdNodePoolAhvConfig"
          },
          "description": "- .\n"
        },
        "name": {
          "type": "string",
          "description": "- Unique name of the node pool.\n"
        },
        "nodeOsVersion": {
          "type": "string",
          "description": "- The version of the node OS image.\n"
        },
        "nodes": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetKarbonClustersClusterEtcdNodePoolNode:getKarbonClustersClusterEtcdNodePoolNode"
          }
        },
        "numInstances": {
          "type": "integer",
          "description": "- Number of nodes in the node pool.\n"
        }
      },
      "type": "object",
      "required": [
        "ahvConfigs",
        "name",
        "nodeOsVersion",
        "nodes",
        "numInstances"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getKarbonClustersClusterEtcdNodePoolAhvConfig:getKarbonClustersClusterEtcdNodePoolAhvConfig": {
      "properties": {
        "cpu": {
          "type": "integer",
          "description": "- The number of VCPUs allocated for each VM on the PE cluster.\n"
        },
        "diskMib": {
          "type": "integer",
          "description": "- Size of local storage for each VM on the PE cluster in MiB.\n"
        },
        "memoryMib": {
          "type": "integer",
          "description": "- Memory allocated for each VM on the PE cluster in MiB.\n"
        },
        "networkUuid": {
          "type": "string",
          "description": "- The UUID of the network for the VMs deployed with this resource configuration.\n"
        },
        "prismElementClusterUuid": {
          "type": "string",
          "description": "- The unique universal identifier (UUID) of the Prism Element cluster used to deploy VMs for this node pool.\n"
        }
      },
      "type": "object",
      "required": [
        "cpu",
        "diskMib",
        "memoryMib",
        "networkUuid",
        "prismElementClusterUuid"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getKarbonClustersClusterEtcdNodePoolNode:getKarbonClustersClusterEtcdNodePoolNode": {
      "properties": {
        "hostname": {
          "type": "string"
        },
        "ipv4Address": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "hostname",
        "ipv4Address"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getKarbonClustersClusterMasterNodePool:getKarbonClustersClusterMasterNodePool": {
      "properties": {
        "ahvConfigs": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetKarbonClustersClusterMasterNodePoolAhvConfig:getKarbonClustersClusterMasterNodePoolAhvConfig"
          },
          "description": "- .\n"
        },
        "name": {
          "type": "string",
          "description": "- Unique name of the node pool.\n"
        },
        "nodeOsVersion": {
          "type": "string",
          "description": "- The version of the node OS image.\n"
        },
        "nodes": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetKarbonClustersClusterMasterNodePoolNode:getKarbonClustersClusterMasterNodePoolNode"
          }
        },
        "numInstances": {
          "type": "integer",
          "description": "- Number of nodes in the node pool.\n"
        }
      },
      "type": "object",
      "required": [
        "ahvConfigs",
        "name",
        "nodeOsVersion",
        "nodes",
        "numInstances"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getKarbonClustersClusterMasterNodePoolAhvConfig:getKarbonClustersClusterMasterNodePoolAhvConfig": {
      "properties": {
        "cpu": {
          "type": "integer",
          "description": "- The number of VCPUs allocated for each VM on the PE cluster.\n"
        },
        "diskMib": {
          "type": "integer",
          "description": "- Size of local storage for each VM on the PE cluster in MiB.\n"
        },
        "memoryMib": {
          "type": "integer",
          "description": "- Memory allocated for each VM on the PE cluster in MiB.\n"
        },
        "networkUuid": {
          "type": "string",
          "description": "- The UUID of the network for the VMs deployed with this resource configuration.\n"
        },
        "prismElementClusterUuid": {
          "type": "string",
          "description": "- The unique universal identifier (UUID) of the Prism Element cluster used to deploy VMs for this node pool.\n"
        }
      },
      "type": "object",
      "required": [
        "cpu",
        "diskMib",
        "memoryMib",
        "networkUuid",
        "prismElementClusterUuid"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getKarbonClustersClusterMasterNodePoolNode:getKarbonClustersClusterMasterNodePoolNode": {
      "properties": {
        "hostname": {
          "type": "string"
        },
        "ipv4Address": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "hostname",
        "ipv4Address"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getKarbonClustersClusterWorkerNodePool:getKarbonClustersClusterWorkerNodePool": {
      "properties": {
        "ahvConfigs": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetKarbonClustersClusterWorkerNodePoolAhvConfig:getKarbonClustersClusterWorkerNodePoolAhvConfig"
          },
          "description": "- .\n"
        },
        "name": {
          "type": "string",
          "description": "- Unique name of the node pool.\n"
        },
        "nodeOsVersion": {
          "type": "string",
          "description": "- The version of the node OS image.\n"
        },
        "nodes": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetKarbonClustersClusterWorkerNodePoolNode:getKarbonClustersClusterWorkerNodePoolNode"
          }
        },
        "numInstances": {
          "type": "integer",
          "description": "- Number of nodes in the node pool.\n"
        }
      },
      "type": "object",
      "required": [
        "ahvConfigs",
        "name",
        "nodeOsVersion",
        "nodes",
        "numInstances"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getKarbonClustersClusterWorkerNodePoolAhvConfig:getKarbonClustersClusterWorkerNodePoolAhvConfig": {
      "properties": {
        "cpu": {
          "type": "integer",
          "description": "- The number of VCPUs allocated for each VM on the PE cluster.\n"
        },
        "diskMib": {
          "type": "integer",
          "description": "- Size of local storage for each VM on the PE cluster in MiB.\n"
        },
        "memoryMib": {
          "type": "integer",
          "description": "- Memory allocated for each VM on the PE cluster in MiB.\n"
        },
        "networkUuid": {
          "type": "string",
          "description": "- The UUID of the network for the VMs deployed with this resource configuration.\n"
        },
        "prismElementClusterUuid": {
          "type": "string",
          "description": "- The unique universal identifier (UUID) of the Prism Element cluster used to deploy VMs for this node pool.\n"
        }
      },
      "type": "object",
      "required": [
        "cpu",
        "diskMib",
        "memoryMib",
        "networkUuid",
        "prismElementClusterUuid"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getKarbonClustersClusterWorkerNodePoolNode:getKarbonClustersClusterWorkerNodePoolNode": {
      "properties": {
        "hostname": {
          "type": "string"
        },
        "ipv4Address": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "hostname",
        "ipv4Address"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getKarbonPrivateRegistriesPrivateRegistry:getKarbonPrivateRegistriesPrivateRegistry": {
      "properties": {
        "endpoint": {
          "type": "string",
          "description": "- Endpoint of the private in format `url:port`.\n"
        },
        "name": {
          "type": "string",
          "description": "- Name of the private registry.\n"
        },
        "uuid": {
          "type": "string",
          "description": "- UUID of the private registry.\n"
        }
      },
      "type": "object",
      "required": [
        "endpoint",
        "name",
        "uuid"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getLcmConfigV2Link:getLcmConfigV2Link": {
      "properties": {
        "href": {
          "type": "string"
        },
        "rel": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "href",
        "rel"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getLcmEntitiesV2Entity:getLcmEntitiesV2Entity": {
      "properties": {
        "availableVersions": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetLcmEntitiesV2EntityAvailableVersion:getLcmEntitiesV2EntityAvailableVersion"
          },
          "description": "List of available versions for an LCM entity to update.\n"
        },
        "childEntities": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "Component information for the payload based entity.\n"
        },
        "clusterExtId": {
          "type": "string",
          "description": "Cluster uuid on which the resource is present or operation is being performed.\n"
        },
        "deviceId": {
          "type": "string",
          "description": "Unique identifier of an LCM entity e.g. \"HDD serial number\".\n"
        },
        "entityClass": {
          "type": "string",
          "description": "LCM entity class.\n"
        },
        "entityDescription": {
          "type": "string",
          "description": "Description of an LCM entity.\n"
        },
        "entityDetails": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetLcmEntitiesV2EntityEntityDetail:getLcmEntitiesV2EntityEntityDetail"
          },
          "description": "Detailed information for the LCM entity. For example, firmware entities contain additional information about NIC and so on.\n"
        },
        "entityModel": {
          "type": "string",
          "description": "LCM entity model.\n"
        },
        "entityType": {
          "type": "string",
          "description": "Type of an LCM entity.  Enum Values:\n* `FIRMWARE`: LCM entity type firmware.\n* `SOFTWARE`: LCM entity type software.\n"
        },
        "entityVersion": {
          "type": "string",
          "description": "Current version of an LCM entity.\n"
        },
        "extId": {
          "type": "string",
          "description": "A globally unique identifier of an instance that is suitable for external consumption.\n"
        },
        "groupUuid": {
          "type": "string",
          "description": "UUID of the group that this LCM entity is part of.\n"
        },
        "hardwareFamily": {
          "type": "string",
          "description": "A hardware family for a LCM entity.\n"
        },
        "hardwareVendor": {
          "type": "string",
          "description": "Hardware vendor information.\n"
        },
        "lastUpdatedTime": {
          "type": "string",
          "description": "UTC date and time in RFC-3339 format when the task was last updated.\n"
        },
        "links": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetLcmEntitiesV2EntityLink:getLcmEntitiesV2EntityLink"
          },
          "description": "A HATEOAS style link for the response. Each link contains a user-friendly name identifying the link and an address for retrieving the particular resource.\n"
        },
        "locationInfos": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetLcmEntitiesV2EntityLocationInfo:getLcmEntitiesV2EntityLocationInfo"
          },
          "description": "Location info corresponds to a tuple of location type (either node/cluster) and ExtID\n"
        },
        "subEntities": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetLcmEntitiesV2EntitySubEntity:getLcmEntitiesV2EntitySubEntity"
          },
          "description": "A list of sub-entities applicable to the entity.\n"
        },
        "targetVersion": {
          "type": "string",
          "description": "The requested update version of an LCM entity.\n"
        },
        "tenantId": {
          "type": "string",
          "description": "A globally unique identifier that represents the tenant that owns this entity. The system automatically assigns it, and it and is immutable from an API consumer perspective (some use cases may cause this Id to change - For instance, a use case may require the transfer of ownership of the entity, but these cases are handled automatically on the server).\n"
        }
      },
      "type": "object",
      "required": [
        "availableVersions",
        "childEntities",
        "clusterExtId",
        "deviceId",
        "entityClass",
        "entityDescription",
        "entityDetails",
        "entityModel",
        "entityType",
        "entityVersion",
        "extId",
        "groupUuid",
        "hardwareFamily",
        "hardwareVendor",
        "lastUpdatedTime",
        "links",
        "locationInfos",
        "subEntities",
        "targetVersion",
        "tenantId"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getLcmEntitiesV2EntityAvailableVersion:getLcmEntitiesV2EntityAvailableVersion": {
      "properties": {
        "availableVersionUuid": {
          "type": "string",
          "description": "Available version UUID.\n"
        },
        "childEntities": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "Component information for the payload based entity.\n"
        },
        "customMessage": {
          "type": "string",
          "description": "Custom message associated with the available version.\n"
        },
        "dependencies": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetLcmEntitiesV2EntityAvailableVersionDependency:getLcmEntitiesV2EntityAvailableVersionDependency"
          },
          "description": "List of dependencies for the available version.\n"
        },
        "disablementReason": {
          "type": "string",
          "description": "Reason for disablement of the available version.\n"
        },
        "groupUuid": {
          "type": "string",
          "description": "UUID of the group that this LCM entity is part of.\n"
        },
        "isEnabled": {
          "type": "boolean",
          "description": "Indicates if the available update is enabled.\n"
        },
        "order": {
          "type": "integer",
          "description": "Order of the available version.\n"
        },
        "releaseDate": {
          "type": "string",
          "description": "Release date of the available version.\n"
        },
        "releaseNotes": {
          "type": "string",
          "description": "Release notes for the available version.\n"
        },
        "status": {
          "type": "string",
          "description": "Status of the LCM entity. Enum Values:\n* `AVAILABLE`: Available version.\n* `EMERGENCY`: Emergency version.\n* `RECOMMENDED`: Deprecated version.\n* `STS`: Short-term supported version.\n* `LTS`: Long-term supported version.\n* `LATEST`: Latest version.\n* `DEPRECATED`: Deprecated version.\n* `ESTS`: Extended short-term supported version.\n* `CRITICAL`: Critical version.\n"
        },
        "version": {
          "type": "string",
          "description": "Version of the LCM entity.\n"
        }
      },
      "type": "object",
      "required": [
        "availableVersionUuid",
        "childEntities",
        "customMessage",
        "dependencies",
        "disablementReason",
        "groupUuid",
        "isEnabled",
        "order",
        "releaseDate",
        "releaseNotes",
        "status",
        "version"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getLcmEntitiesV2EntityAvailableVersionDependency:getLcmEntitiesV2EntityAvailableVersionDependency": {
      "properties": {
        "dependentVersions": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetLcmEntitiesV2EntityAvailableVersionDependencyDependentVersion:getLcmEntitiesV2EntityAvailableVersionDependencyDependentVersion"
          },
          "description": "Information of the dependent entity versions for this available entity.\n"
        },
        "entityClass": {
          "type": "string",
          "description": "LCM entity class.\n"
        },
        "entityModel": {
          "type": "string",
          "description": "LCM entity model.\n"
        },
        "entityType": {
          "type": "string",
          "description": "Type of an LCM entity.  Enum Values:\n* `FIRMWARE`: LCM entity type firmware.\n* `SOFTWARE`: LCM entity type software.\n"
        },
        "entityVersion": {
          "type": "string",
          "description": "Current version of an LCM entity.\n"
        },
        "extId": {
          "type": "string",
          "description": "A globally unique identifier of an instance that is suitable for external consumption.\n"
        },
        "hardwareFamily": {
          "type": "string",
          "description": "A hardware family for a LCM entity.\n"
        },
        "links": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetLcmEntitiesV2EntityAvailableVersionDependencyLink:getLcmEntitiesV2EntityAvailableVersionDependencyLink"
          },
          "description": "A HATEOAS style link for the response. Each link contains a user-friendly name identifying the link and an address for retrieving the particular resource.\n"
        },
        "tenantId": {
          "type": "string",
          "description": "A globally unique identifier that represents the tenant that owns this entity. The system automatically assigns it, and it and is immutable from an API consumer perspective (some use cases may cause this Id to change - For instance, a use case may require the transfer of ownership of the entity, but these cases are handled automatically on the server).\n"
        }
      },
      "type": "object",
      "required": [
        "dependentVersions",
        "entityClass",
        "entityModel",
        "entityType",
        "entityVersion",
        "extId",
        "hardwareFamily",
        "links",
        "tenantId"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getLcmEntitiesV2EntityAvailableVersionDependencyDependentVersion:getLcmEntitiesV2EntityAvailableVersionDependencyDependentVersion": {
      "properties": {
        "name": {
          "type": "string",
          "description": "The key of the key-value pair.\n"
        },
        "values": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetLcmEntitiesV2EntityAvailableVersionDependencyDependentVersionValue:getLcmEntitiesV2EntityAvailableVersionDependencyDependentVersionValue"
          },
          "description": "The value associated with the key for this key-value pair, string or integer or boolean or Array of strings or object or Array of MapOfString(objects) or Array of integers\n"
        }
      },
      "type": "object",
      "required": [
        "name",
        "values"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getLcmEntitiesV2EntityAvailableVersionDependencyDependentVersionValue:getLcmEntitiesV2EntityAvailableVersionDependencyDependentVersionValue": {
      "properties": {
        "boolean": {
          "type": "boolean"
        },
        "integer": {
          "type": "integer"
        },
        "integerLists": {
          "type": "array",
          "items": {
            "type": "integer"
          }
        },
        "mapOfStrings": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetLcmEntitiesV2EntityAvailableVersionDependencyDependentVersionValueMapOfString:getLcmEntitiesV2EntityAvailableVersionDependencyDependentVersionValueMapOfString"
          }
        },
        "object": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          }
        },
        "string": {
          "type": "string"
        },
        "stringLists": {
          "type": "array",
          "items": {
            "type": "string"
          }
        }
      },
      "type": "object",
      "required": [
        "boolean",
        "integer",
        "integerLists",
        "mapOfStrings",
        "object",
        "string",
        "stringLists"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getLcmEntitiesV2EntityAvailableVersionDependencyDependentVersionValueMapOfString:getLcmEntitiesV2EntityAvailableVersionDependencyDependentVersionValueMapOfString": {
      "properties": {
        "map": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          }
        }
      },
      "type": "object",
      "required": [
        "map"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getLcmEntitiesV2EntityAvailableVersionDependencyLink:getLcmEntitiesV2EntityAvailableVersionDependencyLink": {
      "properties": {
        "href": {
          "type": "string"
        },
        "rel": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "href",
        "rel"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getLcmEntitiesV2EntityEntityDetail:getLcmEntitiesV2EntityEntityDetail": {
      "properties": {
        "name": {
          "type": "string",
          "description": "The key of the key-value pair.\n"
        },
        "values": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetLcmEntitiesV2EntityEntityDetailValue:getLcmEntitiesV2EntityEntityDetailValue"
          },
          "description": "The value associated with the key for this key-value pair, string or integer or boolean or Array of strings or object or Array of MapOfString(objects) or Array of integers\n"
        }
      },
      "type": "object",
      "required": [
        "name",
        "values"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getLcmEntitiesV2EntityEntityDetailValue:getLcmEntitiesV2EntityEntityDetailValue": {
      "properties": {
        "boolean": {
          "type": "boolean"
        },
        "integer": {
          "type": "integer"
        },
        "integerLists": {
          "type": "array",
          "items": {
            "type": "integer"
          }
        },
        "mapOfStrings": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetLcmEntitiesV2EntityEntityDetailValueMapOfString:getLcmEntitiesV2EntityEntityDetailValueMapOfString"
          }
        },
        "object": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          }
        },
        "string": {
          "type": "string"
        },
        "stringLists": {
          "type": "array",
          "items": {
            "type": "string"
          }
        }
      },
      "type": "object",
      "required": [
        "boolean",
        "integer",
        "integerLists",
        "mapOfStrings",
        "object",
        "string",
        "stringLists"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getLcmEntitiesV2EntityEntityDetailValueMapOfString:getLcmEntitiesV2EntityEntityDetailValueMapOfString": {
      "properties": {
        "map": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          }
        }
      },
      "type": "object",
      "required": [
        "map"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getLcmEntitiesV2EntityLink:getLcmEntitiesV2EntityLink": {
      "properties": {
        "href": {
          "type": "string"
        },
        "rel": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "href",
        "rel"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getLcmEntitiesV2EntityLocationInfo:getLcmEntitiesV2EntityLocationInfo": {
      "properties": {
        "locationType": {
          "type": "string",
          "description": "Scope of entity represented in LCM. This could be either Node or cluster type. Enum Values:\n* `PC`: Entity for which the scope is Prism Central wide.\n* `NODE`: Entity that belongs to a node in the cluster.\n* `CLUSTER`: Entity for which the scope is cluster wide.\n"
        },
        "uuid": {
          "type": "string",
          "description": "Location UUID of the resource.\n"
        }
      },
      "type": "object",
      "required": [
        "locationType",
        "uuid"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getLcmEntitiesV2EntitySubEntity:getLcmEntitiesV2EntitySubEntity": {
      "properties": {
        "entityClass": {
          "type": "string",
          "description": "LCM entity class.\n"
        },
        "entityModel": {
          "type": "string",
          "description": "LCM entity model.\n"
        },
        "entityType": {
          "type": "string",
          "description": "Type of an LCM entity.  Enum Values:\n* `FIRMWARE`: LCM entity type firmware.\n* `SOFTWARE`: LCM entity type software.\n"
        },
        "entityVersion": {
          "type": "string",
          "description": "Current version of an LCM entity.\n"
        },
        "extId": {
          "type": "string",
          "description": "A globally unique identifier of an instance that is suitable for external consumption.\n"
        },
        "hardwareFamily": {
          "type": "string",
          "description": "A hardware family for a LCM entity.\n"
        },
        "links": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetLcmEntitiesV2EntitySubEntityLink:getLcmEntitiesV2EntitySubEntityLink"
          },
          "description": "A HATEOAS style link for the response. Each link contains a user-friendly name identifying the link and an address for retrieving the particular resource.\n"
        },
        "tenantId": {
          "type": "string",
          "description": "A globally unique identifier that represents the tenant that owns this entity. The system automatically assigns it, and it and is immutable from an API consumer perspective (some use cases may cause this Id to change - For instance, a use case may require the transfer of ownership of the entity, but these cases are handled automatically on the server).\n"
        }
      },
      "type": "object",
      "required": [
        "entityClass",
        "entityModel",
        "entityType",
        "entityVersion",
        "extId",
        "hardwareFamily",
        "links",
        "tenantId"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getLcmEntitiesV2EntitySubEntityLink:getLcmEntitiesV2EntitySubEntityLink": {
      "properties": {
        "href": {
          "type": "string"
        },
        "rel": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "href",
        "rel"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getLcmEntityV2AvailableVersion:getLcmEntityV2AvailableVersion": {
      "properties": {
        "availableVersionUuid": {
          "type": "string",
          "description": "Available version UUID.\n"
        },
        "childEntities": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "Component information for the payload based entity.\n"
        },
        "customMessage": {
          "type": "string",
          "description": "Custom message associated with the available version.\n"
        },
        "dependencies": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetLcmEntityV2AvailableVersionDependency:getLcmEntityV2AvailableVersionDependency"
          },
          "description": "List of dependencies for the available version.\n"
        },
        "disablementReason": {
          "type": "string",
          "description": "Reason for disablement of the available version.\n"
        },
        "groupUuid": {
          "type": "string",
          "description": "UUID of the group that this LCM entity is part of.\n"
        },
        "isEnabled": {
          "type": "boolean",
          "description": "Indicates if the available update is enabled.\n"
        },
        "order": {
          "type": "integer",
          "description": "Order of the available version.\n"
        },
        "releaseDate": {
          "type": "string",
          "description": "Release date of the available version.\n"
        },
        "releaseNotes": {
          "type": "string",
          "description": "Release notes for the available version.\n"
        },
        "status": {
          "type": "string",
          "description": "Status of the LCM entity. Enum Values:\n* `AVAILABLE`: Available version.\n* `EMERGENCY`: Emergency version.\n* `RECOMMENDED`: Deprecated version.\n* `STS`: Short-term supported version.\n* `LTS`: Long-term supported version.\n* `LATEST`: Latest version.\n* `DEPRECATED`: Deprecated version.\n* `ESTS`: Extended short-term supported version.\n* `CRITICAL`: Critical version.\n"
        },
        "version": {
          "type": "string",
          "description": "Version of the LCM entity.\n"
        }
      },
      "type": "object",
      "required": [
        "availableVersionUuid",
        "childEntities",
        "customMessage",
        "dependencies",
        "disablementReason",
        "groupUuid",
        "isEnabled",
        "order",
        "releaseDate",
        "releaseNotes",
        "status",
        "version"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getLcmEntityV2AvailableVersionDependency:getLcmEntityV2AvailableVersionDependency": {
      "properties": {
        "dependentVersions": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetLcmEntityV2AvailableVersionDependencyDependentVersion:getLcmEntityV2AvailableVersionDependencyDependentVersion"
          },
          "description": "Information of the dependent entity versions for this available entity.\n"
        },
        "entityClass": {
          "type": "string",
          "description": "LCM entity class.\n"
        },
        "entityModel": {
          "type": "string",
          "description": "LCM entity model.\n"
        },
        "entityType": {
          "type": "string",
          "description": "Type of an LCM entity.  Enum Values:\n* `FIRMWARE`: LCM entity type firmware.\n* `SOFTWARE`: LCM entity type software.\n"
        },
        "entityVersion": {
          "type": "string",
          "description": "Current version of an LCM entity.\n"
        },
        "extId": {
          "type": "string",
          "description": "ExtId of the LCM entity.\n"
        },
        "hardwareFamily": {
          "type": "string",
          "description": "A hardware family for a LCM entity.\n"
        },
        "links": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetLcmEntityV2AvailableVersionDependencyLink:getLcmEntityV2AvailableVersionDependencyLink"
          },
          "description": "A HATEOAS style link for the response. Each link contains a user-friendly name identifying the link and an address for retrieving the particular resource.\n"
        },
        "tenantId": {
          "type": "string",
          "description": "A globally unique identifier that represents the tenant that owns this entity. The system automatically assigns it, and it and is immutable from an API consumer perspective (some use cases may cause this Id to change - For instance, a use case may require the transfer of ownership of the entity, but these cases are handled automatically on the server).\n"
        }
      },
      "type": "object",
      "required": [
        "dependentVersions",
        "entityClass",
        "entityModel",
        "entityType",
        "entityVersion",
        "extId",
        "hardwareFamily",
        "links",
        "tenantId"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getLcmEntityV2AvailableVersionDependencyDependentVersion:getLcmEntityV2AvailableVersionDependencyDependentVersion": {
      "properties": {
        "name": {
          "type": "string",
          "description": "The key of the key-value pair.\n"
        },
        "values": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetLcmEntityV2AvailableVersionDependencyDependentVersionValue:getLcmEntityV2AvailableVersionDependencyDependentVersionValue"
          },
          "description": "The value associated with the key for this key-value pair, string or integer or boolean or Array of strings or object or Array of MapOfString(objects) or Array of integers\n"
        }
      },
      "type": "object",
      "required": [
        "name",
        "values"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getLcmEntityV2AvailableVersionDependencyDependentVersionValue:getLcmEntityV2AvailableVersionDependencyDependentVersionValue": {
      "properties": {
        "boolean": {
          "type": "boolean"
        },
        "integer": {
          "type": "integer"
        },
        "integerLists": {
          "type": "array",
          "items": {
            "type": "integer"
          }
        },
        "mapOfStrings": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetLcmEntityV2AvailableVersionDependencyDependentVersionValueMapOfString:getLcmEntityV2AvailableVersionDependencyDependentVersionValueMapOfString"
          }
        },
        "object": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          }
        },
        "string": {
          "type": "string"
        },
        "stringLists": {
          "type": "array",
          "items": {
            "type": "string"
          }
        }
      },
      "type": "object",
      "required": [
        "boolean",
        "integer",
        "integerLists",
        "mapOfStrings",
        "object",
        "string",
        "stringLists"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getLcmEntityV2AvailableVersionDependencyDependentVersionValueMapOfString:getLcmEntityV2AvailableVersionDependencyDependentVersionValueMapOfString": {
      "properties": {
        "map": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          }
        }
      },
      "type": "object",
      "required": [
        "map"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getLcmEntityV2AvailableVersionDependencyLink:getLcmEntityV2AvailableVersionDependencyLink": {
      "properties": {
        "href": {
          "type": "string"
        },
        "rel": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "href",
        "rel"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getLcmEntityV2EntityDetail:getLcmEntityV2EntityDetail": {
      "properties": {
        "name": {
          "type": "string",
          "description": "The key of the key-value pair.\n"
        },
        "values": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetLcmEntityV2EntityDetailValue:getLcmEntityV2EntityDetailValue"
          },
          "description": "The value associated with the key for this key-value pair, string or integer or boolean or Array of strings or object or Array of MapOfString(objects) or Array of integers\n"
        }
      },
      "type": "object",
      "required": [
        "name",
        "values"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getLcmEntityV2EntityDetailValue:getLcmEntityV2EntityDetailValue": {
      "properties": {
        "boolean": {
          "type": "boolean"
        },
        "integer": {
          "type": "integer"
        },
        "integerLists": {
          "type": "array",
          "items": {
            "type": "integer"
          }
        },
        "mapOfStrings": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetLcmEntityV2EntityDetailValueMapOfString:getLcmEntityV2EntityDetailValueMapOfString"
          }
        },
        "object": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          }
        },
        "string": {
          "type": "string"
        },
        "stringLists": {
          "type": "array",
          "items": {
            "type": "string"
          }
        }
      },
      "type": "object",
      "required": [
        "boolean",
        "integer",
        "integerLists",
        "mapOfStrings",
        "object",
        "string",
        "stringLists"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getLcmEntityV2EntityDetailValueMapOfString:getLcmEntityV2EntityDetailValueMapOfString": {
      "properties": {
        "map": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          }
        }
      },
      "type": "object",
      "required": [
        "map"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getLcmEntityV2Link:getLcmEntityV2Link": {
      "properties": {
        "href": {
          "type": "string"
        },
        "rel": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "href",
        "rel"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getLcmEntityV2LocationInfo:getLcmEntityV2LocationInfo": {
      "properties": {
        "locationType": {
          "type": "string",
          "description": "Scope of entity represented in LCM. This could be either Node or cluster type. Enum Values:\n* `PC`: Entity for which the scope is Prism Central wide.\n* `NODE`: Entity that belongs to a node in the cluster.\n* `CLUSTER`: Entity for which the scope is cluster wide.\n"
        },
        "uuid": {
          "type": "string",
          "description": "Location UUID of the resource.\n"
        }
      },
      "type": "object",
      "required": [
        "locationType",
        "uuid"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getLcmEntityV2SubEntity:getLcmEntityV2SubEntity": {
      "properties": {
        "entityClass": {
          "type": "string",
          "description": "LCM entity class.\n"
        },
        "entityModel": {
          "type": "string",
          "description": "LCM entity model.\n"
        },
        "entityType": {
          "type": "string",
          "description": "Type of an LCM entity.  Enum Values:\n* `FIRMWARE`: LCM entity type firmware.\n* `SOFTWARE`: LCM entity type software.\n"
        },
        "entityVersion": {
          "type": "string",
          "description": "Current version of an LCM entity.\n"
        },
        "extId": {
          "type": "string",
          "description": "ExtId of the LCM entity.\n"
        },
        "hardwareFamily": {
          "type": "string",
          "description": "A hardware family for a LCM entity.\n"
        },
        "links": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetLcmEntityV2SubEntityLink:getLcmEntityV2SubEntityLink"
          },
          "description": "A HATEOAS style link for the response. Each link contains a user-friendly name identifying the link and an address for retrieving the particular resource.\n"
        },
        "tenantId": {
          "type": "string",
          "description": "A globally unique identifier that represents the tenant that owns this entity. The system automatically assigns it, and it and is immutable from an API consumer perspective (some use cases may cause this Id to change - For instance, a use case may require the transfer of ownership of the entity, but these cases are handled automatically on the server).\n"
        }
      },
      "type": "object",
      "required": [
        "entityClass",
        "entityModel",
        "entityType",
        "entityVersion",
        "extId",
        "hardwareFamily",
        "links",
        "tenantId"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getLcmEntityV2SubEntityLink:getLcmEntityV2SubEntityLink": {
      "properties": {
        "href": {
          "type": "string"
        },
        "rel": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "href",
        "rel"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getLcmStatusV2FrameworkVersion:getLcmStatusV2FrameworkVersion": {
      "properties": {
        "availableVersion": {
          "type": "string",
          "description": "- LCM framework version present in the LCM URL.\n"
        },
        "currentVersion": {
          "type": "string",
          "description": "- Current LCM Version.\n"
        },
        "isUpdateNeeded": {
          "type": "boolean",
          "description": "- Boolean that indicates if LCM framework update is needed.\n"
        }
      },
      "type": "object",
      "required": [
        "availableVersion",
        "currentVersion",
        "isUpdateNeeded"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getLcmStatusV2InProgressOperation:getLcmStatusV2InProgressOperation": {
      "properties": {
        "operationId": {
          "type": "string",
          "description": "- Root task UUID of the operation, if it is in running state.\n"
        },
        "operationType": {
          "type": "string",
          "description": "- Type of the operation tracked by the task. Values are:\n- `PRECHECKS`: Perform LCM prechecks for the intended update operation.\n- `INVENTORY`: Perform an LCM inventory operation.\n- `UPGRADE`: Perform upgrade operation to a specific target version for discovered LCM entity/entities.\n- `NONE`: Indicates that no operation is currently ongoing.\n"
        }
      },
      "type": "object",
      "required": [
        "operationId",
        "operationType"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getLcmStatusV2Link:getLcmStatusV2Link": {
      "properties": {
        "href": {
          "type": "string"
        },
        "rel": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "href",
        "rel"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getNdbCloneDatabaseNode:getNdbCloneDatabaseNode": {
      "properties": {
        "accessLevel": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          }
        },
        "databaseId": {
          "type": "string"
        },
        "databaseStatus": {
          "type": "string",
          "description": "database status\n"
        },
        "dateCreated": {
          "type": "string",
          "description": "date created for clone\n"
        },
        "dateModified": {
          "type": "string",
          "description": "last modified date for clone\n"
        },
        "dbserver": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          }
        },
        "dbserverId": {
          "type": "string"
        },
        "description": {
          "type": "string",
          "description": "cloned description\n"
        },
        "id": {
          "type": "string",
          "description": "cloned id\n"
        },
        "infos": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetNdbCloneDatabaseNodeInfo:getNdbCloneDatabaseNodeInfo"
          },
          "description": "cloned info\n"
        },
        "name": {
          "type": "string",
          "description": "cloned name\n"
        },
        "primary": {
          "type": "boolean"
        },
        "properties": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetNdbCloneDatabaseNodeProperty:getNdbCloneDatabaseNodeProperty"
          },
          "description": "properties of clone\n"
        },
        "protectionDomainId": {
          "type": "string"
        },
        "protectionDomains": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetNdbCloneDatabaseNodeProtectionDomain:getNdbCloneDatabaseNodeProtectionDomain"
          }
        },
        "softwareInstallationId": {
          "type": "string"
        },
        "status": {
          "type": "string",
          "description": "status of clone\n"
        },
        "tags": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetNdbCloneDatabaseNodeTag:getNdbCloneDatabaseNodeTag"
          },
          "description": "allows you to assign metadata to entities (clones, time machines, databases, and database servers) by using tags.\n"
        }
      },
      "type": "object",
      "required": [
        "accessLevel",
        "databaseId",
        "databaseStatus",
        "dateCreated",
        "dateModified",
        "dbserver",
        "dbserverId",
        "description",
        "id",
        "infos",
        "name",
        "primary",
        "properties",
        "protectionDomainId",
        "protectionDomains",
        "softwareInstallationId",
        "status",
        "tags"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getNdbCloneDatabaseNodeInfo:getNdbCloneDatabaseNodeInfo": {
      "properties": {
        "info": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          },
          "description": "cloned info\n"
        },
        "secureInfo": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          }
        }
      },
      "type": "object",
      "required": [
        "info",
        "secureInfo"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getNdbCloneDatabaseNodeProperty:getNdbCloneDatabaseNodeProperty": {
      "properties": {
        "description": {
          "type": "string",
          "description": "cloned description\n"
        },
        "name": {
          "type": "string",
          "description": "cloned name\n"
        },
        "refId": {
          "type": "string"
        },
        "secure": {
          "type": "boolean"
        },
        "value": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "description",
        "name",
        "refId",
        "secure",
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getNdbCloneDatabaseNodeProtectionDomain:getNdbCloneDatabaseNodeProtectionDomain": {
      "properties": {
        "assocEntities": {
          "type": "array",
          "items": {
            "type": "string"
          }
        },
        "cloudId": {
          "type": "string"
        },
        "dateCreated": {
          "type": "string",
          "description": "date created for clone\n"
        },
        "dateModified": {
          "type": "string",
          "description": "last modified date for clone\n"
        },
        "description": {
          "type": "string",
          "description": "cloned description\n"
        },
        "eraCreated": {
          "type": "boolean"
        },
        "id": {
          "type": "string",
          "description": "cloned id\n"
        },
        "name": {
          "type": "string",
          "description": "cloned name\n"
        },
        "ownerId": {
          "type": "string"
        },
        "primaryHost": {
          "type": "string"
        },
        "properties": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetNdbCloneDatabaseNodeProtectionDomainProperty:getNdbCloneDatabaseNodeProtectionDomainProperty"
          },
          "description": "properties of clone\n"
        },
        "status": {
          "type": "string",
          "description": "status of clone\n"
        },
        "type": {
          "type": "string",
          "description": "type\n"
        }
      },
      "type": "object",
      "required": [
        "assocEntities",
        "cloudId",
        "dateCreated",
        "dateModified",
        "description",
        "eraCreated",
        "id",
        "name",
        "ownerId",
        "primaryHost",
        "properties",
        "status",
        "type"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getNdbCloneDatabaseNodeProtectionDomainProperty:getNdbCloneDatabaseNodeProtectionDomainProperty": {
      "properties": {
        "description": {
          "type": "string",
          "description": "cloned description\n"
        },
        "name": {
          "type": "string",
          "description": "cloned name\n"
        },
        "refId": {
          "type": "string"
        },
        "secure": {
          "type": "boolean"
        },
        "value": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "description",
        "name",
        "refId",
        "secure",
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getNdbCloneDatabaseNodeTag:getNdbCloneDatabaseNodeTag": {
      "properties": {
        "entityId": {
          "type": "string"
        },
        "entityType": {
          "type": "string"
        },
        "tagId": {
          "type": "string"
        },
        "tagName": {
          "type": "string"
        },
        "value": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "entityId",
        "entityType",
        "tagId",
        "tagName",
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getNdbCloneFilter:getNdbCloneFilter": {
      "properties": {
        "anyStatus": {
          "type": "string",
          "description": "Get entity(s) if it satisfies query criteria irrespective of status (retrieve even deleted). Default is false\n"
        },
        "detailed": {
          "type": "string",
          "description": "Load entities with complete details. Default is false\n"
        },
        "loadDbserverCluster": {
          "type": "string",
          "description": "Load cluster info. Default is false\n"
        },
        "timezone": {
          "type": "string",
          "description": "Default is UTC\n"
        }
      },
      "type": "object"
    },
    "nutanix:index/getNdbCloneInfo:getNdbCloneInfo": {
      "properties": {
        "bpgConfigs": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetNdbCloneInfoBpgConfig:getNdbCloneInfoBpgConfig"
          }
        },
        "secureInfo": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          }
        }
      },
      "type": "object",
      "required": [
        "bpgConfigs",
        "secureInfo"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getNdbCloneInfoBpgConfig:getNdbCloneInfoBpgConfig": {
      "properties": {
        "bpgDbParams": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetNdbCloneInfoBpgConfigBpgDbParam:getNdbCloneInfoBpgConfigBpgDbParam"
          }
        },
        "storages": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetNdbCloneInfoBpgConfigStorage:getNdbCloneInfoBpgConfigStorage"
          }
        },
        "vmProperties": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetNdbCloneInfoBpgConfigVmProperty:getNdbCloneInfoBpgConfigVmProperty"
          }
        }
      },
      "type": "object",
      "required": [
        "bpgDbParams",
        "storages",
        "vmProperties"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getNdbCloneInfoBpgConfigBpgDbParam:getNdbCloneInfoBpgConfigBpgDbParam": {
      "properties": {
        "effectiveCacheSize": {
          "type": "string"
        },
        "maintenanceWorkMem": {
          "type": "string"
        },
        "maxParallelWorkersPerGather": {
          "type": "string"
        },
        "maxWorkerProcesses": {
          "type": "string"
        },
        "sharedBuffers": {
          "type": "string"
        },
        "workMem": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "effectiveCacheSize",
        "maintenanceWorkMem",
        "maxParallelWorkersPerGather",
        "maxWorkerProcesses",
        "sharedBuffers",
        "workMem"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getNdbCloneInfoBpgConfigStorage:getNdbCloneInfoBpgConfigStorage": {
      "properties": {
        "archiveStorages": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetNdbCloneInfoBpgConfigStorageArchiveStorage:getNdbCloneInfoBpgConfigStorageArchiveStorage"
          }
        },
        "dataDisks": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetNdbCloneInfoBpgConfigStorageDataDisk:getNdbCloneInfoBpgConfigStorageDataDisk"
          }
        },
        "logDisks": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetNdbCloneInfoBpgConfigStorageLogDisk:getNdbCloneInfoBpgConfigStorageLogDisk"
          }
        }
      },
      "type": "object",
      "required": [
        "archiveStorages",
        "dataDisks",
        "logDisks"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getNdbCloneInfoBpgConfigStorageArchiveStorage:getNdbCloneInfoBpgConfigStorageArchiveStorage": {
      "properties": {
        "size": {
          "type": "number"
        }
      },
      "type": "object",
      "required": [
        "size"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getNdbCloneInfoBpgConfigStorageDataDisk:getNdbCloneInfoBpgConfigStorageDataDisk": {
      "properties": {
        "count": {
          "type": "number"
        }
      },
      "type": "object",
      "required": [
        "count"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getNdbCloneInfoBpgConfigStorageLogDisk:getNdbCloneInfoBpgConfigStorageLogDisk": {
      "properties": {
        "count": {
          "type": "number"
        },
        "size": {
          "type": "number"
        }
      },
      "type": "object",
      "required": [
        "count",
        "size"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getNdbCloneInfoBpgConfigVmProperty:getNdbCloneInfoBpgConfigVmProperty": {
      "properties": {
        "dirtyBackgroundRatio": {
          "type": "number"
        },
        "dirtyExpireCentisecs": {
          "type": "number"
        },
        "dirtyRatio": {
          "type": "number"
        },
        "dirtyWritebackCentisecs": {
          "type": "number"
        },
        "nrHugepages": {
          "type": "number"
        },
        "overcommitMemory": {
          "type": "number"
        },
        "swappiness": {
          "type": "number"
        }
      },
      "type": "object",
      "required": [
        "dirtyBackgroundRatio",
        "dirtyExpireCentisecs",
        "dirtyRatio",
        "dirtyWritebackCentisecs",
        "nrHugepages",
        "overcommitMemory",
        "swappiness"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getNdbCloneLcmConfig:getNdbCloneLcmConfig": {
      "properties": {
        "expiryDetails": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetNdbCloneLcmConfigExpiryDetail:getNdbCloneLcmConfigExpiryDetail"
          }
        },
        "postDeleteCommands": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetNdbCloneLcmConfigPostDeleteCommand:getNdbCloneLcmConfigPostDeleteCommand"
          }
        },
        "preDeleteCommands": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetNdbCloneLcmConfigPreDeleteCommand:getNdbCloneLcmConfigPreDeleteCommand"
          }
        },
        "refreshDetails": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetNdbCloneLcmConfigRefreshDetail:getNdbCloneLcmConfigRefreshDetail"
          }
        }
      },
      "type": "object",
      "required": [
        "expiryDetails",
        "postDeleteCommands",
        "preDeleteCommands",
        "refreshDetails"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getNdbCloneLcmConfigExpiryDetail:getNdbCloneLcmConfigExpiryDetail": {
      "properties": {
        "deleteDatabase": {
          "type": "boolean"
        },
        "deleteTimeMachine": {
          "type": "boolean"
        },
        "deleteVm": {
          "type": "boolean"
        },
        "effectiveTimestamp": {
          "type": "string"
        },
        "expireInDays": {
          "type": "integer"
        },
        "expiryDateTimezone": {
          "type": "string"
        },
        "expiryTimestamp": {
          "type": "string"
        },
        "remindBeforeInDays": {
          "type": "integer"
        },
        "userCreated": {
          "type": "boolean"
        }
      },
      "type": "object",
      "required": [
        "deleteDatabase",
        "deleteTimeMachine",
        "deleteVm",
        "effectiveTimestamp",
        "expireInDays",
        "expiryDateTimezone",
        "expiryTimestamp",
        "remindBeforeInDays",
        "userCreated"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getNdbCloneLcmConfigPostDeleteCommand:getNdbCloneLcmConfigPostDeleteCommand": {
      "properties": {
        "command": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "command"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getNdbCloneLcmConfigPreDeleteCommand:getNdbCloneLcmConfigPreDeleteCommand": {
      "properties": {
        "command": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "command"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getNdbCloneLcmConfigRefreshDetail:getNdbCloneLcmConfigRefreshDetail": {
      "properties": {
        "lastRefreshDate": {
          "type": "string"
        },
        "nextRefreshDate": {
          "type": "string"
        },
        "refreshDateTimezone": {
          "type": "string"
        },
        "refreshInDays": {
          "type": "integer"
        },
        "refreshInHours": {
          "type": "integer"
        },
        "refreshInMonths": {
          "type": "integer"
        },
        "refreshTime": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "lastRefreshDate",
        "nextRefreshDate",
        "refreshDateTimezone",
        "refreshInDays",
        "refreshInHours",
        "refreshInMonths",
        "refreshTime"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getNdbCloneLinkedDatabase:getNdbCloneLinkedDatabase": {
      "properties": {
        "databaseName": {
          "type": "string",
          "description": "database name\n"
        },
        "databaseStatus": {
          "type": "string",
          "description": "database status\n"
        },
        "dateCreated": {
          "type": "string",
          "description": "date created for clone\n"
        },
        "dateModified": {
          "type": "string",
          "description": "last modified date for clone\n"
        },
        "description": {
          "type": "string",
          "description": "cloned description\n"
        },
        "id": {
          "type": "string",
          "description": "cloned id\n"
        },
        "infos": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetNdbCloneLinkedDatabaseInfo:getNdbCloneLinkedDatabaseInfo"
          },
          "description": "cloned info\n"
        },
        "metric": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          },
          "description": "Metric of clone\n"
        },
        "name": {
          "type": "string",
          "description": "cloned name\n"
        },
        "parentDatabaseId": {
          "type": "string",
          "description": "parent database id\n"
        },
        "parentLinkedDatabaseId": {
          "type": "string"
        },
        "snapshotId": {
          "type": "string"
        },
        "status": {
          "type": "string",
          "description": "status of clone\n"
        },
        "timezone": {
          "type": "string",
          "description": "Default is UTC\n"
        }
      },
      "type": "object",
      "required": [
        "databaseName",
        "databaseStatus",
        "dateCreated",
        "dateModified",
        "description",
        "id",
        "infos",
        "metric",
        "name",
        "parentDatabaseId",
        "parentLinkedDatabaseId",
        "snapshotId",
        "status",
        "timezone"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getNdbCloneLinkedDatabaseInfo:getNdbCloneLinkedDatabaseInfo": {
      "properties": {
        "info": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          },
          "description": "cloned info\n"
        },
        "secureInfo": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          }
        }
      },
      "type": "object",
      "required": [
        "info",
        "secureInfo"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getNdbCloneProperty:getNdbCloneProperty": {
      "properties": {
        "description": {
          "type": "string",
          "description": "cloned description\n"
        },
        "name": {
          "type": "string",
          "description": "cloned name\n"
        },
        "refId": {
          "type": "string"
        },
        "secure": {
          "type": "boolean"
        },
        "value": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "description",
        "name",
        "refId",
        "secure",
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getNdbCloneTag:getNdbCloneTag": {
      "properties": {
        "entityId": {
          "type": "string"
        },
        "entityType": {
          "type": "string"
        },
        "tagId": {
          "type": "string"
        },
        "tagName": {
          "type": "string"
        },
        "value": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "entityId",
        "entityType",
        "tagId",
        "tagName",
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getNdbCloneTimeMachine:getNdbCloneTimeMachine": {
      "properties": {
        "accessLevel": {
          "type": "string"
        },
        "clone": {
          "type": "boolean",
          "description": "clone or not\n"
        },
        "clones": {
          "type": "string"
        },
        "clustered": {
          "type": "boolean",
          "description": "clustered or not\n"
        },
        "database": {
          "type": "string"
        },
        "databaseId": {
          "type": "string"
        },
        "dateCreated": {
          "type": "string",
          "description": "date created for clone\n"
        },
        "dateModified": {
          "type": "string",
          "description": "last modified date for clone\n"
        },
        "description": {
          "type": "string",
          "description": "cloned description\n"
        },
        "eaStatus": {
          "type": "string"
        },
        "id": {
          "type": "string",
          "description": "cloned id\n"
        },
        "metric": {
          "type": "string",
          "description": "Metric of clone\n"
        },
        "name": {
          "type": "string",
          "description": "cloned name\n"
        },
        "properties": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetNdbCloneTimeMachineProperty:getNdbCloneTimeMachineProperty"
          },
          "description": "properties of clone\n"
        },
        "scheduleId": {
          "type": "string"
        },
        "schedules": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetNdbCloneTimeMachineSchedule:getNdbCloneTimeMachineSchedule"
          }
        },
        "scope": {
          "type": "string"
        },
        "slaId": {
          "type": "string"
        },
        "slaUpdateInProgress": {
          "type": "boolean"
        },
        "slaUpdateMetadata": {
          "type": "string"
        },
        "slas": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetNdbCloneTimeMachineSla:getNdbCloneTimeMachineSla"
          }
        },
        "sourceNxClusters": {
          "type": "array",
          "items": {
            "type": "string"
          }
        },
        "status": {
          "type": "string",
          "description": "status of clone\n"
        },
        "tags": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetNdbCloneTimeMachineTag:getNdbCloneTimeMachineTag"
          },
          "description": "allows you to assign metadata to entities (clones, time machines, databases, and database servers) by using tags.\n"
        },
        "type": {
          "type": "string",
          "description": "type\n"
        }
      },
      "type": "object",
      "required": [
        "accessLevel",
        "clone",
        "clones",
        "clustered",
        "database",
        "databaseId",
        "dateCreated",
        "dateModified",
        "description",
        "eaStatus",
        "id",
        "metric",
        "name",
        "properties",
        "scheduleId",
        "schedules",
        "scope",
        "slaId",
        "slaUpdateInProgress",
        "slaUpdateMetadata",
        "slas",
        "sourceNxClusters",
        "status",
        "tags",
        "type"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getNdbCloneTimeMachineProperty:getNdbCloneTimeMachineProperty": {
      "properties": {
        "description": {
          "type": "string",
          "description": "cloned description\n"
        },
        "name": {
          "type": "string",
          "description": "cloned name\n"
        },
        "refId": {
          "type": "string"
        },
        "secure": {
          "type": "boolean"
        },
        "value": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "description",
        "name",
        "refId",
        "secure",
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getNdbCloneTimeMachineSchedule:getNdbCloneTimeMachineSchedule": {
      "properties": {
        "continuousSchedules": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetNdbCloneTimeMachineScheduleContinuousSchedule:getNdbCloneTimeMachineScheduleContinuousSchedule"
          }
        },
        "dailySchedules": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetNdbCloneTimeMachineScheduleDailySchedule:getNdbCloneTimeMachineScheduleDailySchedule"
          }
        },
        "dateCreated": {
          "type": "string",
          "description": "date created for clone\n"
        },
        "dateModified": {
          "type": "string",
          "description": "last modified date for clone\n"
        },
        "description": {
          "type": "string",
          "description": "cloned description\n"
        },
        "globalPolicy": {
          "type": "boolean"
        },
        "id": {
          "type": "string",
          "description": "cloned id\n"
        },
        "monthlySchedules": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetNdbCloneTimeMachineScheduleMonthlySchedule:getNdbCloneTimeMachineScheduleMonthlySchedule"
          }
        },
        "name": {
          "type": "string",
          "description": "cloned name\n"
        },
        "ownerId": {
          "type": "string"
        },
        "quartelySchedules": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetNdbCloneTimeMachineScheduleQuartelySchedule:getNdbCloneTimeMachineScheduleQuartelySchedule"
          }
        },
        "referenceCount": {
          "type": "integer"
        },
        "snapshotTimeOfDays": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetNdbCloneTimeMachineScheduleSnapshotTimeOfDay:getNdbCloneTimeMachineScheduleSnapshotTimeOfDay"
          }
        },
        "startTime": {
          "type": "string"
        },
        "systemPolicy": {
          "type": "boolean"
        },
        "timeZone": {
          "type": "string",
          "description": "time zone\n"
        },
        "uniqueName": {
          "type": "string"
        },
        "weeklySchedules": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetNdbCloneTimeMachineScheduleWeeklySchedule:getNdbCloneTimeMachineScheduleWeeklySchedule"
          }
        },
        "yearlySchedules": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetNdbCloneTimeMachineScheduleYearlySchedule:getNdbCloneTimeMachineScheduleYearlySchedule"
          }
        }
      },
      "type": "object",
      "required": [
        "continuousSchedules",
        "dailySchedules",
        "dateCreated",
        "dateModified",
        "description",
        "globalPolicy",
        "id",
        "monthlySchedules",
        "name",
        "ownerId",
        "quartelySchedules",
        "referenceCount",
        "snapshotTimeOfDays",
        "startTime",
        "systemPolicy",
        "timeZone",
        "uniqueName",
        "weeklySchedules",
        "yearlySchedules"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getNdbCloneTimeMachineScheduleContinuousSchedule:getNdbCloneTimeMachineScheduleContinuousSchedule": {
      "properties": {
        "enabled": {
          "type": "boolean"
        },
        "logBackupInterval": {
          "type": "integer"
        },
        "snapshotsPerDay": {
          "type": "integer"
        }
      },
      "type": "object",
      "required": [
        "enabled",
        "logBackupInterval",
        "snapshotsPerDay"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getNdbCloneTimeMachineScheduleDailySchedule:getNdbCloneTimeMachineScheduleDailySchedule": {
      "properties": {
        "enabled": {
          "type": "boolean"
        }
      },
      "type": "object",
      "required": [
        "enabled"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getNdbCloneTimeMachineScheduleMonthlySchedule:getNdbCloneTimeMachineScheduleMonthlySchedule": {
      "properties": {
        "dayOfMonth": {
          "type": "integer"
        },
        "enabled": {
          "type": "boolean"
        }
      },
      "type": "object",
      "required": [
        "dayOfMonth",
        "enabled"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getNdbCloneTimeMachineScheduleQuartelySchedule:getNdbCloneTimeMachineScheduleQuartelySchedule": {
      "properties": {
        "dayOfMonth": {
          "type": "integer"
        },
        "enabled": {
          "type": "boolean"
        },
        "startMonth": {
          "type": "string"
        },
        "startMonthValue": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "dayOfMonth",
        "enabled",
        "startMonth",
        "startMonthValue"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getNdbCloneTimeMachineScheduleSnapshotTimeOfDay:getNdbCloneTimeMachineScheduleSnapshotTimeOfDay": {
      "properties": {
        "extra": {
          "type": "boolean"
        },
        "hours": {
          "type": "integer"
        },
        "minutes": {
          "type": "integer"
        },
        "seconds": {
          "type": "integer"
        }
      },
      "type": "object",
      "required": [
        "extra",
        "hours",
        "minutes",
        "seconds"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getNdbCloneTimeMachineScheduleWeeklySchedule:getNdbCloneTimeMachineScheduleWeeklySchedule": {
      "properties": {
        "dayOfWeek": {
          "type": "string"
        },
        "dayOfWeekValue": {
          "type": "string"
        },
        "enabled": {
          "type": "boolean"
        }
      },
      "type": "object",
      "required": [
        "dayOfWeek",
        "dayOfWeekValue",
        "enabled"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getNdbCloneTimeMachineScheduleYearlySchedule:getNdbCloneTimeMachineScheduleYearlySchedule": {
      "properties": {
        "dayOfMonth": {
          "type": "integer"
        },
        "enabled": {
          "type": "boolean"
        },
        "month": {
          "type": "string"
        },
        "monthValue": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "dayOfMonth",
        "enabled",
        "month",
        "monthValue"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getNdbCloneTimeMachineSla:getNdbCloneTimeMachineSla": {
      "properties": {
        "continuousRetention": {
          "type": "integer"
        },
        "currentActiveFrequency": {
          "type": "string"
        },
        "dailyRetention": {
          "type": "integer"
        },
        "dateCreated": {
          "type": "string",
          "description": "date created for clone\n"
        },
        "dateModified": {
          "type": "string",
          "description": "last modified date for clone\n"
        },
        "description": {
          "type": "string",
          "description": "cloned description\n"
        },
        "id": {
          "type": "string",
          "description": "cloned id\n"
        },
        "monthlyRetention": {
          "type": "integer"
        },
        "name": {
          "type": "string",
          "description": "cloned name\n"
        },
        "ownerId": {
          "type": "string"
        },
        "pitrEnabled": {
          "type": "boolean"
        },
        "quarterlyRetention": {
          "type": "integer"
        },
        "referenceCount": {
          "type": "integer"
        },
        "systemSla": {
          "type": "boolean"
        },
        "uniqueName": {
          "type": "string"
        },
        "weeklyRetention": {
          "type": "integer"
        },
        "yearlyRetention": {
          "type": "integer"
        }
      },
      "type": "object",
      "required": [
        "continuousRetention",
        "currentActiveFrequency",
        "dailyRetention",
        "dateCreated",
        "dateModified",
        "description",
        "id",
        "monthlyRetention",
        "name",
        "ownerId",
        "pitrEnabled",
        "quarterlyRetention",
        "referenceCount",
        "systemSla",
        "uniqueName",
        "weeklyRetention",
        "yearlyRetention"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getNdbCloneTimeMachineTag:getNdbCloneTimeMachineTag": {
      "properties": {
        "entityId": {
          "type": "string"
        },
        "entityType": {
          "type": "string"
        },
        "tagId": {
          "type": "string"
        },
        "tagName": {
          "type": "string"
        },
        "value": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "entityId",
        "entityType",
        "tagId",
        "tagName",
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getNdbClonesClone:getNdbClonesClone": {
      "properties": {
        "clone": {
          "type": "boolean",
          "description": "clone or not\n"
        },
        "clustered": {
          "type": "boolean",
          "description": "clustered or not\n"
        },
        "databaseClusterType": {
          "type": "string",
          "description": "database cluster type\n"
        },
        "databaseName": {
          "type": "string",
          "description": "database name\n"
        },
        "databaseNodes": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetNdbClonesCloneDatabaseNode:getNdbClonesCloneDatabaseNode"
          },
          "description": "database nodes associated with database instance\n"
        },
        "databaseStatus": {
          "type": "string",
          "description": "database status\n"
        },
        "databases": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          },
          "description": "database for a cloned instance\n"
        },
        "dateCreated": {
          "type": "string",
          "description": "date created for clone\n"
        },
        "dateModified": {
          "type": "string",
          "description": "last modified date for clone\n"
        },
        "dbserverLogicalCluster": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          },
          "description": "dbserver logical cluster\n"
        },
        "dbserverLogicalClusterId": {
          "type": "string",
          "description": "dbserver logical cluster id\n"
        },
        "description": {
          "type": "string",
          "description": "cloned description\n"
        },
        "id": {
          "type": "string",
          "description": "cloned id\n"
        },
        "infos": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetNdbClonesCloneInfo:getNdbClonesCloneInfo"
          },
          "description": "cloned info\n"
        },
        "lcmConfigs": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetNdbClonesCloneLcmConfig:getNdbClonesCloneLcmConfig"
          },
          "description": "LCM Config\n"
        },
        "linkedDatabases": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetNdbClonesCloneLinkedDatabase:getNdbClonesCloneLinkedDatabase"
          },
          "description": "linked databases within database instance\n"
        },
        "metric": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          },
          "description": "Metric of clone\n"
        },
        "name": {
          "type": "string",
          "description": "cloned name\n"
        },
        "parentDatabaseId": {
          "type": "string",
          "description": "parent database id\n"
        },
        "parentSourceDatabaseId": {
          "type": "string",
          "description": "parent source database id\n"
        },
        "parentTimeMachineId": {
          "type": "string",
          "description": "parent time machine id\n"
        },
        "properties": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetNdbClonesCloneProperty:getNdbClonesCloneProperty"
          },
          "description": "properties of clone\n"
        },
        "status": {
          "type": "string",
          "description": "status of clone\n"
        },
        "tags": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetNdbClonesCloneTag:getNdbClonesCloneTag"
          },
          "description": "allows you to assign metadata to entities (clones, time machines, databases, and database servers) by using tags.\n"
        },
        "timeMachineId": {
          "type": "string",
          "description": "time machine id\n"
        },
        "timeMachines": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetNdbClonesCloneTimeMachine:getNdbClonesCloneTimeMachine"
          },
          "description": "Time machine info\n"
        },
        "timeZone": {
          "type": "string",
          "description": "time zone\n"
        },
        "type": {
          "type": "string",
          "description": "type\n"
        }
      },
      "type": "object",
      "required": [
        "clone",
        "clustered",
        "databaseClusterType",
        "databaseName",
        "databaseNodes",
        "databaseStatus",
        "databases",
        "dateCreated",
        "dateModified",
        "dbserverLogicalCluster",
        "dbserverLogicalClusterId",
        "description",
        "id",
        "infos",
        "lcmConfigs",
        "linkedDatabases",
        "metric",
        "name",
        "parentDatabaseId",
        "parentSourceDatabaseId",
        "parentTimeMachineId",
        "properties",
        "status",
        "tags",
        "timeMachineId",
        "timeMachines",
        "timeZone",
        "type"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getNdbClonesCloneDatabaseNode:getNdbClonesCloneDatabaseNode": {
      "properties": {
        "accessLevel": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          }
        },
        "databaseId": {
          "type": "string"
        },
        "databaseStatus": {
          "type": "string",
          "description": "database status\n"
        },
        "dateCreated": {
          "type": "string",
          "description": "date created for clone\n"
        },
        "dateModified": {
          "type": "string",
          "description": "last modified date for clone\n"
        },
        "dbserver": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          }
        },
        "dbserverId": {
          "type": "string"
        },
        "description": {
          "type": "string",
          "description": "cloned description\n"
        },
        "id": {
          "type": "string",
          "description": "cloned id\n"
        },
        "infos": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetNdbClonesCloneDatabaseNodeInfo:getNdbClonesCloneDatabaseNodeInfo"
          },
          "description": "cloned info\n"
        },
        "name": {
          "type": "string",
          "description": "cloned name\n"
        },
        "primary": {
          "type": "boolean"
        },
        "properties": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetNdbClonesCloneDatabaseNodeProperty:getNdbClonesCloneDatabaseNodeProperty"
          },
          "description": "properties of clone\n"
        },
        "protectionDomainId": {
          "type": "string"
        },
        "protectionDomains": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetNdbClonesCloneDatabaseNodeProtectionDomain:getNdbClonesCloneDatabaseNodeProtectionDomain"
          }
        },
        "softwareInstallationId": {
          "type": "string"
        },
        "status": {
          "type": "string",
          "description": "status of clone\n"
        },
        "tags": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetNdbClonesCloneDatabaseNodeTag:getNdbClonesCloneDatabaseNodeTag"
          },
          "description": "allows you to assign metadata to entities (clones, time machines, databases, and database servers) by using tags.\n"
        }
      },
      "type": "object",
      "required": [
        "accessLevel",
        "databaseId",
        "databaseStatus",
        "dateCreated",
        "dateModified",
        "dbserver",
        "dbserverId",
        "description",
        "id",
        "infos",
        "name",
        "primary",
        "properties",
        "protectionDomainId",
        "protectionDomains",
        "softwareInstallationId",
        "status",
        "tags"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getNdbClonesCloneDatabaseNodeInfo:getNdbClonesCloneDatabaseNodeInfo": {
      "properties": {
        "info": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          },
          "description": "cloned info\n"
        },
        "secureInfo": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          }
        }
      },
      "type": "object",
      "required": [
        "info",
        "secureInfo"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getNdbClonesCloneDatabaseNodeProperty:getNdbClonesCloneDatabaseNodeProperty": {
      "properties": {
        "description": {
          "type": "string",
          "description": "cloned description\n"
        },
        "name": {
          "type": "string",
          "description": "cloned name\n"
        },
        "refId": {
          "type": "string"
        },
        "secure": {
          "type": "boolean"
        },
        "value": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "description",
        "name",
        "refId",
        "secure",
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getNdbClonesCloneDatabaseNodeProtectionDomain:getNdbClonesCloneDatabaseNodeProtectionDomain": {
      "properties": {
        "assocEntities": {
          "type": "array",
          "items": {
            "type": "string"
          }
        },
        "cloudId": {
          "type": "string"
        },
        "dateCreated": {
          "type": "string",
          "description": "date created for clone\n"
        },
        "dateModified": {
          "type": "string",
          "description": "last modified date for clone\n"
        },
        "description": {
          "type": "string",
          "description": "cloned description\n"
        },
        "eraCreated": {
          "type": "boolean"
        },
        "id": {
          "type": "string",
          "description": "cloned id\n"
        },
        "name": {
          "type": "string",
          "description": "cloned name\n"
        },
        "ownerId": {
          "type": "string"
        },
        "primaryHost": {
          "type": "string"
        },
        "properties": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetNdbClonesCloneDatabaseNodeProtectionDomainProperty:getNdbClonesCloneDatabaseNodeProtectionDomainProperty"
          },
          "description": "properties of clone\n"
        },
        "status": {
          "type": "string",
          "description": "status of clone\n"
        },
        "type": {
          "type": "string",
          "description": "type\n"
        }
      },
      "type": "object",
      "required": [
        "assocEntities",
        "cloudId",
        "dateCreated",
        "dateModified",
        "description",
        "eraCreated",
        "id",
        "name",
        "ownerId",
        "primaryHost",
        "properties",
        "status",
        "type"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getNdbClonesCloneDatabaseNodeProtectionDomainProperty:getNdbClonesCloneDatabaseNodeProtectionDomainProperty": {
      "properties": {
        "description": {
          "type": "string",
          "description": "cloned description\n"
        },
        "name": {
          "type": "string",
          "description": "cloned name\n"
        },
        "refId": {
          "type": "string"
        },
        "secure": {
          "type": "boolean"
        },
        "value": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "description",
        "name",
        "refId",
        "secure",
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getNdbClonesCloneDatabaseNodeTag:getNdbClonesCloneDatabaseNodeTag": {
      "properties": {
        "entityId": {
          "type": "string"
        },
        "entityType": {
          "type": "string"
        },
        "tagId": {
          "type": "string"
        },
        "tagName": {
          "type": "string"
        },
        "value": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "entityId",
        "entityType",
        "tagId",
        "tagName",
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getNdbClonesCloneInfo:getNdbClonesCloneInfo": {
      "properties": {
        "bpgConfigs": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetNdbClonesCloneInfoBpgConfig:getNdbClonesCloneInfoBpgConfig"
          }
        },
        "secureInfo": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          }
        }
      },
      "type": "object",
      "required": [
        "bpgConfigs",
        "secureInfo"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getNdbClonesCloneInfoBpgConfig:getNdbClonesCloneInfoBpgConfig": {
      "properties": {
        "bpgDbParams": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetNdbClonesCloneInfoBpgConfigBpgDbParam:getNdbClonesCloneInfoBpgConfigBpgDbParam"
          }
        },
        "storages": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetNdbClonesCloneInfoBpgConfigStorage:getNdbClonesCloneInfoBpgConfigStorage"
          }
        },
        "vmProperties": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetNdbClonesCloneInfoBpgConfigVmProperty:getNdbClonesCloneInfoBpgConfigVmProperty"
          }
        }
      },
      "type": "object",
      "required": [
        "bpgDbParams",
        "storages",
        "vmProperties"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getNdbClonesCloneInfoBpgConfigBpgDbParam:getNdbClonesCloneInfoBpgConfigBpgDbParam": {
      "properties": {
        "effectiveCacheSize": {
          "type": "string"
        },
        "maintenanceWorkMem": {
          "type": "string"
        },
        "maxParallelWorkersPerGather": {
          "type": "string"
        },
        "maxWorkerProcesses": {
          "type": "string"
        },
        "sharedBuffers": {
          "type": "string"
        },
        "workMem": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "effectiveCacheSize",
        "maintenanceWorkMem",
        "maxParallelWorkersPerGather",
        "maxWorkerProcesses",
        "sharedBuffers",
        "workMem"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getNdbClonesCloneInfoBpgConfigStorage:getNdbClonesCloneInfoBpgConfigStorage": {
      "properties": {
        "archiveStorages": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetNdbClonesCloneInfoBpgConfigStorageArchiveStorage:getNdbClonesCloneInfoBpgConfigStorageArchiveStorage"
          }
        },
        "dataDisks": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetNdbClonesCloneInfoBpgConfigStorageDataDisk:getNdbClonesCloneInfoBpgConfigStorageDataDisk"
          }
        },
        "logDisks": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetNdbClonesCloneInfoBpgConfigStorageLogDisk:getNdbClonesCloneInfoBpgConfigStorageLogDisk"
          }
        }
      },
      "type": "object",
      "required": [
        "archiveStorages",
        "dataDisks",
        "logDisks"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getNdbClonesCloneInfoBpgConfigStorageArchiveStorage:getNdbClonesCloneInfoBpgConfigStorageArchiveStorage": {
      "properties": {
        "size": {
          "type": "number"
        }
      },
      "type": "object",
      "required": [
        "size"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getNdbClonesCloneInfoBpgConfigStorageDataDisk:getNdbClonesCloneInfoBpgConfigStorageDataDisk": {
      "properties": {
        "count": {
          "type": "number"
        }
      },
      "type": "object",
      "required": [
        "count"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getNdbClonesCloneInfoBpgConfigStorageLogDisk:getNdbClonesCloneInfoBpgConfigStorageLogDisk": {
      "properties": {
        "count": {
          "type": "number"
        },
        "size": {
          "type": "number"
        }
      },
      "type": "object",
      "required": [
        "count",
        "size"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getNdbClonesCloneInfoBpgConfigVmProperty:getNdbClonesCloneInfoBpgConfigVmProperty": {
      "properties": {
        "dirtyBackgroundRatio": {
          "type": "number"
        },
        "dirtyExpireCentisecs": {
          "type": "number"
        },
        "dirtyRatio": {
          "type": "number"
        },
        "dirtyWritebackCentisecs": {
          "type": "number"
        },
        "nrHugepages": {
          "type": "number"
        },
        "overcommitMemory": {
          "type": "number"
        },
        "swappiness": {
          "type": "number"
        }
      },
      "type": "object",
      "required": [
        "dirtyBackgroundRatio",
        "dirtyExpireCentisecs",
        "dirtyRatio",
        "dirtyWritebackCentisecs",
        "nrHugepages",
        "overcommitMemory",
        "swappiness"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getNdbClonesCloneLcmConfig:getNdbClonesCloneLcmConfig": {
      "properties": {
        "expiryDetails": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetNdbClonesCloneLcmConfigExpiryDetail:getNdbClonesCloneLcmConfigExpiryDetail"
          }
        },
        "postDeleteCommands": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetNdbClonesCloneLcmConfigPostDeleteCommand:getNdbClonesCloneLcmConfigPostDeleteCommand"
          }
        },
        "preDeleteCommands": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetNdbClonesCloneLcmConfigPreDeleteCommand:getNdbClonesCloneLcmConfigPreDeleteCommand"
          }
        },
        "refreshDetails": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetNdbClonesCloneLcmConfigRefreshDetail:getNdbClonesCloneLcmConfigRefreshDetail"
          }
        }
      },
      "type": "object",
      "required": [
        "expiryDetails",
        "postDeleteCommands",
        "preDeleteCommands",
        "refreshDetails"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getNdbClonesCloneLcmConfigExpiryDetail:getNdbClonesCloneLcmConfigExpiryDetail": {
      "properties": {
        "deleteDatabase": {
          "type": "boolean"
        },
        "deleteTimeMachine": {
          "type": "boolean"
        },
        "deleteVm": {
          "type": "boolean"
        },
        "effectiveTimestamp": {
          "type": "string"
        },
        "expireInDays": {
          "type": "integer"
        },
        "expiryDateTimezone": {
          "type": "string"
        },
        "expiryTimestamp": {
          "type": "string"
        },
        "remindBeforeInDays": {
          "type": "integer"
        },
        "userCreated": {
          "type": "boolean"
        }
      },
      "type": "object",
      "required": [
        "deleteDatabase",
        "deleteTimeMachine",
        "deleteVm",
        "effectiveTimestamp",
        "expireInDays",
        "expiryDateTimezone",
        "expiryTimestamp",
        "remindBeforeInDays",
        "userCreated"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getNdbClonesCloneLcmConfigPostDeleteCommand:getNdbClonesCloneLcmConfigPostDeleteCommand": {
      "properties": {
        "command": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "command"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getNdbClonesCloneLcmConfigPreDeleteCommand:getNdbClonesCloneLcmConfigPreDeleteCommand": {
      "properties": {
        "command": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "command"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getNdbClonesCloneLcmConfigRefreshDetail:getNdbClonesCloneLcmConfigRefreshDetail": {
      "properties": {
        "lastRefreshDate": {
          "type": "string"
        },
        "nextRefreshDate": {
          "type": "string"
        },
        "refreshDateTimezone": {
          "type": "string"
        },
        "refreshInDays": {
          "type": "integer"
        },
        "refreshInHours": {
          "type": "integer"
        },
        "refreshInMonths": {
          "type": "integer"
        },
        "refreshTime": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "lastRefreshDate",
        "nextRefreshDate",
        "refreshDateTimezone",
        "refreshInDays",
        "refreshInHours",
        "refreshInMonths",
        "refreshTime"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getNdbClonesCloneLinkedDatabase:getNdbClonesCloneLinkedDatabase": {
      "properties": {
        "databaseName": {
          "type": "string",
          "description": "database name\n"
        },
        "databaseStatus": {
          "type": "string",
          "description": "database status\n"
        },
        "dateCreated": {
          "type": "string",
          "description": "date created for clone\n"
        },
        "dateModified": {
          "type": "string",
          "description": "last modified date for clone\n"
        },
        "description": {
          "type": "string",
          "description": "cloned description\n"
        },
        "id": {
          "type": "string",
          "description": "cloned id\n"
        },
        "infos": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetNdbClonesCloneLinkedDatabaseInfo:getNdbClonesCloneLinkedDatabaseInfo"
          },
          "description": "cloned info\n"
        },
        "metric": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          },
          "description": "Metric of clone\n"
        },
        "name": {
          "type": "string",
          "description": "cloned name\n"
        },
        "parentDatabaseId": {
          "type": "string",
          "description": "parent database id\n"
        },
        "parentLinkedDatabaseId": {
          "type": "string"
        },
        "snapshotId": {
          "type": "string"
        },
        "status": {
          "type": "string",
          "description": "status of clone\n"
        },
        "timezone": {
          "type": "string",
          "description": "Default is UTC\n"
        }
      },
      "type": "object",
      "required": [
        "databaseName",
        "databaseStatus",
        "dateCreated",
        "dateModified",
        "description",
        "id",
        "infos",
        "metric",
        "name",
        "parentDatabaseId",
        "parentLinkedDatabaseId",
        "snapshotId",
        "status",
        "timezone"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getNdbClonesCloneLinkedDatabaseInfo:getNdbClonesCloneLinkedDatabaseInfo": {
      "properties": {
        "info": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          },
          "description": "cloned info\n"
        },
        "secureInfo": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          }
        }
      },
      "type": "object",
      "required": [
        "info",
        "secureInfo"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getNdbClonesCloneProperty:getNdbClonesCloneProperty": {
      "properties": {
        "description": {
          "type": "string",
          "description": "cloned description\n"
        },
        "name": {
          "type": "string",
          "description": "cloned name\n"
        },
        "refId": {
          "type": "string"
        },
        "secure": {
          "type": "boolean"
        },
        "value": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "description",
        "name",
        "refId",
        "secure",
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getNdbClonesCloneTag:getNdbClonesCloneTag": {
      "properties": {
        "entityId": {
          "type": "string"
        },
        "entityType": {
          "type": "string"
        },
        "tagId": {
          "type": "string"
        },
        "tagName": {
          "type": "string"
        },
        "value": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "entityId",
        "entityType",
        "tagId",
        "tagName",
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getNdbClonesCloneTimeMachine:getNdbClonesCloneTimeMachine": {
      "properties": {
        "accessLevel": {
          "type": "string"
        },
        "clone": {
          "type": "boolean",
          "description": "clone or not\n"
        },
        "clones": {
          "type": "string",
          "description": "List of clones based on filters\n"
        },
        "clustered": {
          "type": "boolean",
          "description": "clustered or not\n"
        },
        "database": {
          "type": "string"
        },
        "databaseId": {
          "type": "string"
        },
        "dateCreated": {
          "type": "string",
          "description": "date created for clone\n"
        },
        "dateModified": {
          "type": "string",
          "description": "last modified date for clone\n"
        },
        "description": {
          "type": "string",
          "description": "cloned description\n"
        },
        "eaStatus": {
          "type": "string"
        },
        "id": {
          "type": "string",
          "description": "cloned id\n"
        },
        "metric": {
          "type": "string",
          "description": "Metric of clone\n"
        },
        "name": {
          "type": "string",
          "description": "cloned name\n"
        },
        "properties": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetNdbClonesCloneTimeMachineProperty:getNdbClonesCloneTimeMachineProperty"
          },
          "description": "properties of clone\n"
        },
        "scheduleId": {
          "type": "string"
        },
        "schedules": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetNdbClonesCloneTimeMachineSchedule:getNdbClonesCloneTimeMachineSchedule"
          }
        },
        "scope": {
          "type": "string"
        },
        "slaId": {
          "type": "string"
        },
        "slaUpdateInProgress": {
          "type": "boolean"
        },
        "slaUpdateMetadata": {
          "type": "string"
        },
        "slas": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetNdbClonesCloneTimeMachineSla:getNdbClonesCloneTimeMachineSla"
          }
        },
        "sourceNxClusters": {
          "type": "array",
          "items": {
            "type": "string"
          }
        },
        "status": {
          "type": "string",
          "description": "status of clone\n"
        },
        "tags": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetNdbClonesCloneTimeMachineTag:getNdbClonesCloneTimeMachineTag"
          },
          "description": "allows you to assign metadata to entities (clones, time machines, databases, and database servers) by using tags.\n"
        },
        "type": {
          "type": "string",
          "description": "type\n"
        }
      },
      "type": "object",
      "required": [
        "accessLevel",
        "clone",
        "clones",
        "clustered",
        "database",
        "databaseId",
        "dateCreated",
        "dateModified",
        "description",
        "eaStatus",
        "id",
        "metric",
        "name",
        "properties",
        "scheduleId",
        "schedules",
        "scope",
        "slaId",
        "slaUpdateInProgress",
        "slaUpdateMetadata",
        "slas",
        "sourceNxClusters",
        "status",
        "tags",
        "type"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getNdbClonesCloneTimeMachineProperty:getNdbClonesCloneTimeMachineProperty": {
      "properties": {
        "description": {
          "type": "string",
          "description": "cloned description\n"
        },
        "name": {
          "type": "string",
          "description": "cloned name\n"
        },
        "refId": {
          "type": "string"
        },
        "secure": {
          "type": "boolean"
        },
        "value": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "description",
        "name",
        "refId",
        "secure",
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getNdbClonesCloneTimeMachineSchedule:getNdbClonesCloneTimeMachineSchedule": {
      "properties": {
        "continuousSchedules": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetNdbClonesCloneTimeMachineScheduleContinuousSchedule:getNdbClonesCloneTimeMachineScheduleContinuousSchedule"
          }
        },
        "dailySchedules": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetNdbClonesCloneTimeMachineScheduleDailySchedule:getNdbClonesCloneTimeMachineScheduleDailySchedule"
          }
        },
        "dateCreated": {
          "type": "string",
          "description": "date created for clone\n"
        },
        "dateModified": {
          "type": "string",
          "description": "last modified date for clone\n"
        },
        "description": {
          "type": "string",
          "description": "cloned description\n"
        },
        "globalPolicy": {
          "type": "boolean"
        },
        "id": {
          "type": "string",
          "description": "cloned id\n"
        },
        "monthlySchedules": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetNdbClonesCloneTimeMachineScheduleMonthlySchedule:getNdbClonesCloneTimeMachineScheduleMonthlySchedule"
          }
        },
        "name": {
          "type": "string",
          "description": "cloned name\n"
        },
        "ownerId": {
          "type": "string"
        },
        "quartelySchedules": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetNdbClonesCloneTimeMachineScheduleQuartelySchedule:getNdbClonesCloneTimeMachineScheduleQuartelySchedule"
          }
        },
        "referenceCount": {
          "type": "integer"
        },
        "snapshotTimeOfDays": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetNdbClonesCloneTimeMachineScheduleSnapshotTimeOfDay:getNdbClonesCloneTimeMachineScheduleSnapshotTimeOfDay"
          }
        },
        "startTime": {
          "type": "string"
        },
        "systemPolicy": {
          "type": "boolean"
        },
        "timeZone": {
          "type": "string",
          "description": "time zone\n"
        },
        "uniqueName": {
          "type": "string"
        },
        "weeklySchedules": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetNdbClonesCloneTimeMachineScheduleWeeklySchedule:getNdbClonesCloneTimeMachineScheduleWeeklySchedule"
          }
        },
        "yearlySchedules": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetNdbClonesCloneTimeMachineScheduleYearlySchedule:getNdbClonesCloneTimeMachineScheduleYearlySchedule"
          }
        }
      },
      "type": "object",
      "required": [
        "continuousSchedules",
        "dailySchedules",
        "dateCreated",
        "dateModified",
        "description",
        "globalPolicy",
        "id",
        "monthlySchedules",
        "name",
        "ownerId",
        "quartelySchedules",
        "referenceCount",
        "snapshotTimeOfDays",
        "startTime",
        "systemPolicy",
        "timeZone",
        "uniqueName",
        "weeklySchedules",
        "yearlySchedules"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getNdbClonesCloneTimeMachineScheduleContinuousSchedule:getNdbClonesCloneTimeMachineScheduleContinuousSchedule": {
      "properties": {
        "enabled": {
          "type": "boolean"
        },
        "logBackupInterval": {
          "type": "integer"
        },
        "snapshotsPerDay": {
          "type": "integer"
        }
      },
      "type": "object",
      "required": [
        "enabled",
        "logBackupInterval",
        "snapshotsPerDay"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getNdbClonesCloneTimeMachineScheduleDailySchedule:getNdbClonesCloneTimeMachineScheduleDailySchedule": {
      "properties": {
        "enabled": {
          "type": "boolean"
        }
      },
      "type": "object",
      "required": [
        "enabled"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getNdbClonesCloneTimeMachineScheduleMonthlySchedule:getNdbClonesCloneTimeMachineScheduleMonthlySchedule": {
      "properties": {
        "dayOfMonth": {
          "type": "integer"
        },
        "enabled": {
          "type": "boolean"
        }
      },
      "type": "object",
      "required": [
        "dayOfMonth",
        "enabled"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getNdbClonesCloneTimeMachineScheduleQuartelySchedule:getNdbClonesCloneTimeMachineScheduleQuartelySchedule": {
      "properties": {
        "dayOfMonth": {
          "type": "integer"
        },
        "enabled": {
          "type": "boolean"
        },
        "startMonth": {
          "type": "string"
        },
        "startMonthValue": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "dayOfMonth",
        "enabled",
        "startMonth",
        "startMonthValue"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getNdbClonesCloneTimeMachineScheduleSnapshotTimeOfDay:getNdbClonesCloneTimeMachineScheduleSnapshotTimeOfDay": {
      "properties": {
        "extra": {
          "type": "boolean"
        },
        "hours": {
          "type": "integer"
        },
        "minutes": {
          "type": "integer"
        },
        "seconds": {
          "type": "integer"
        }
      },
      "type": "object",
      "required": [
        "extra",
        "hours",
        "minutes",
        "seconds"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getNdbClonesCloneTimeMachineScheduleWeeklySchedule:getNdbClonesCloneTimeMachineScheduleWeeklySchedule": {
      "properties": {
        "dayOfWeek": {
          "type": "string"
        },
        "dayOfWeekValue": {
          "type": "string"
        },
        "enabled": {
          "type": "boolean"
        }
      },
      "type": "object",
      "required": [
        "dayOfWeek",
        "dayOfWeekValue",
        "enabled"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getNdbClonesCloneTimeMachineScheduleYearlySchedule:getNdbClonesCloneTimeMachineScheduleYearlySchedule": {
      "properties": {
        "dayOfMonth": {
          "type": "integer"
        },
        "enabled": {
          "type": "boolean"
        },
        "month": {
          "type": "string"
        },
        "monthValue": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "dayOfMonth",
        "enabled",
        "month",
        "monthValue"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getNdbClonesCloneTimeMachineSla:getNdbClonesCloneTimeMachineSla": {
      "properties": {
        "continuousRetention": {
          "type": "integer"
        },
        "currentActiveFrequency": {
          "type": "string"
        },
        "dailyRetention": {
          "type": "integer"
        },
        "dateCreated": {
          "type": "string",
          "description": "date created for clone\n"
        },
        "dateModified": {
          "type": "string",
          "description": "last modified date for clone\n"
        },
        "description": {
          "type": "string",
          "description": "cloned description\n"
        },
        "id": {
          "type": "string",
          "description": "cloned id\n"
        },
        "monthlyRetention": {
          "type": "integer"
        },
        "name": {
          "type": "string",
          "description": "cloned name\n"
        },
        "ownerId": {
          "type": "string"
        },
        "pitrEnabled": {
          "type": "boolean"
        },
        "quarterlyRetention": {
          "type": "integer"
        },
        "referenceCount": {
          "type": "integer"
        },
        "systemSla": {
          "type": "boolean"
        },
        "uniqueName": {
          "type": "string"
        },
        "weeklyRetention": {
          "type": "integer"
        },
        "yearlyRetention": {
          "type": "integer"
        }
      },
      "type": "object",
      "required": [
        "continuousRetention",
        "currentActiveFrequency",
        "dailyRetention",
        "dateCreated",
        "dateModified",
        "description",
        "id",
        "monthlyRetention",
        "name",
        "ownerId",
        "pitrEnabled",
        "quarterlyRetention",
        "referenceCount",
        "systemSla",
        "uniqueName",
        "weeklyRetention",
        "yearlyRetention"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getNdbClonesCloneTimeMachineTag:getNdbClonesCloneTimeMachineTag": {
      "properties": {
        "entityId": {
          "type": "string"
        },
        "entityType": {
          "type": "string"
        },
        "tagId": {
          "type": "string"
        },
        "tagName": {
          "type": "string"
        },
        "value": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "entityId",
        "entityType",
        "tagId",
        "tagName",
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getNdbClonesFilter:getNdbClonesFilter": {
      "properties": {
        "anyStatus": {
          "type": "string",
          "description": "Get entity(s) if it satisfies query criteria irrespective of status (retrieve even deleted). Default is false\n"
        },
        "detailed": {
          "type": "string",
          "description": "Load entities with complete details. Default is false\n"
        },
        "loadDbserverCluster": {
          "type": "string",
          "description": "Load cluster info. Default is false\n"
        },
        "orderByDbserverCluster": {
          "type": "string",
          "description": "Sorted by dbserver cluster. Default is false\n"
        },
        "orderByDbserverLogicalCluster": {
          "type": "string",
          "description": "Sorted by dbserver logical cluster.  Default is false\n"
        },
        "timezone": {
          "type": "string",
          "description": "Default is UTC\n"
        }
      },
      "type": "object"
    },
    "nutanix:index/getNdbClusterEntityCount:getNdbClusterEntityCount": {
      "properties": {
        "dbServers": {
          "type": "integer"
        },
        "engineCounts": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetNdbClusterEntityCountEngineCount:getNdbClusterEntityCountEngineCount"
          }
        }
      },
      "type": "object",
      "required": [
        "dbServers",
        "engineCounts"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getNdbClusterEntityCountEngineCount:getNdbClusterEntityCountEngineCount": {
      "properties": {
        "mariadbDatabases": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetNdbClusterEntityCountEngineCountMariadbDatabase:getNdbClusterEntityCountEngineCountMariadbDatabase"
          }
        },
        "mongodbDatabases": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetNdbClusterEntityCountEngineCountMongodbDatabase:getNdbClusterEntityCountEngineCountMongodbDatabase"
          }
        },
        "mysqlDatabases": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetNdbClusterEntityCountEngineCountMysqlDatabase:getNdbClusterEntityCountEngineCountMysqlDatabase"
          }
        },
        "oracleDatabases": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetNdbClusterEntityCountEngineCountOracleDatabase:getNdbClusterEntityCountEngineCountOracleDatabase"
          }
        },
        "postgresDatabases": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetNdbClusterEntityCountEngineCountPostgresDatabase:getNdbClusterEntityCountEngineCountPostgresDatabase"
          }
        },
        "saphanaDatabases": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetNdbClusterEntityCountEngineCountSaphanaDatabase:getNdbClusterEntityCountEngineCountSaphanaDatabase"
          }
        },
        "sqlserverDatabases": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetNdbClusterEntityCountEngineCountSqlserverDatabase:getNdbClusterEntityCountEngineCountSqlserverDatabase"
          }
        }
      },
      "type": "object",
      "required": [
        "mariadbDatabases",
        "mongodbDatabases",
        "mysqlDatabases",
        "oracleDatabases",
        "postgresDatabases",
        "saphanaDatabases",
        "sqlserverDatabases"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getNdbClusterEntityCountEngineCountMariadbDatabase:getNdbClusterEntityCountEngineCountMariadbDatabase": {
      "properties": {
        "profiles": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetNdbClusterEntityCountEngineCountMariadbDatabaseProfile:getNdbClusterEntityCountEngineCountMariadbDatabaseProfile"
          }
        },
        "timeMachines": {
          "type": "integer"
        }
      },
      "type": "object",
      "required": [
        "profiles",
        "timeMachines"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getNdbClusterEntityCountEngineCountMariadbDatabaseProfile:getNdbClusterEntityCountEngineCountMariadbDatabaseProfile": {
      "properties": {
        "compute": {
          "type": "integer"
        },
        "databaseParameter": {
          "type": "integer"
        },
        "network": {
          "type": "integer"
        },
        "software": {
          "type": "integer"
        },
        "storage": {
          "type": "integer"
        },
        "windowsDomain": {
          "type": "integer"
        }
      },
      "type": "object",
      "required": [
        "compute",
        "databaseParameter",
        "network",
        "software",
        "storage",
        "windowsDomain"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getNdbClusterEntityCountEngineCountMongodbDatabase:getNdbClusterEntityCountEngineCountMongodbDatabase": {
      "properties": {
        "profiles": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetNdbClusterEntityCountEngineCountMongodbDatabaseProfile:getNdbClusterEntityCountEngineCountMongodbDatabaseProfile"
          }
        },
        "timeMachines": {
          "type": "integer"
        }
      },
      "type": "object",
      "required": [
        "profiles",
        "timeMachines"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getNdbClusterEntityCountEngineCountMongodbDatabaseProfile:getNdbClusterEntityCountEngineCountMongodbDatabaseProfile": {
      "properties": {
        "compute": {
          "type": "integer"
        },
        "databaseParameter": {
          "type": "integer"
        },
        "network": {
          "type": "integer"
        },
        "software": {
          "type": "integer"
        },
        "storage": {
          "type": "integer"
        },
        "windowsDomain": {
          "type": "integer"
        }
      },
      "type": "object",
      "required": [
        "compute",
        "databaseParameter",
        "network",
        "software",
        "storage",
        "windowsDomain"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getNdbClusterEntityCountEngineCountMysqlDatabase:getNdbClusterEntityCountEngineCountMysqlDatabase": {
      "properties": {
        "profiles": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetNdbClusterEntityCountEngineCountMysqlDatabaseProfile:getNdbClusterEntityCountEngineCountMysqlDatabaseProfile"
          }
        },
        "timeMachines": {
          "type": "integer"
        }
      },
      "type": "object",
      "required": [
        "profiles",
        "timeMachines"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getNdbClusterEntityCountEngineCountMysqlDatabaseProfile:getNdbClusterEntityCountEngineCountMysqlDatabaseProfile": {
      "properties": {
        "compute": {
          "type": "integer"
        },
        "databaseParameter": {
          "type": "integer"
        },
        "network": {
          "type": "integer"
        },
        "software": {
          "type": "integer"
        },
        "storage": {
          "type": "integer"
        },
        "windowsDomain": {
          "type": "integer"
        }
      },
      "type": "object",
      "required": [
        "compute",
        "databaseParameter",
        "network",
        "software",
        "storage",
        "windowsDomain"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getNdbClusterEntityCountEngineCountOracleDatabase:getNdbClusterEntityCountEngineCountOracleDatabase": {
      "properties": {
        "profiles": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetNdbClusterEntityCountEngineCountOracleDatabaseProfile:getNdbClusterEntityCountEngineCountOracleDatabaseProfile"
          }
        },
        "timeMachines": {
          "type": "integer"
        }
      },
      "type": "object",
      "required": [
        "profiles",
        "timeMachines"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getNdbClusterEntityCountEngineCountOracleDatabaseProfile:getNdbClusterEntityCountEngineCountOracleDatabaseProfile": {
      "properties": {
        "compute": {
          "type": "integer"
        },
        "databaseParameter": {
          "type": "integer"
        },
        "network": {
          "type": "integer"
        },
        "software": {
          "type": "integer"
        },
        "storage": {
          "type": "integer"
        },
        "windowsDomain": {
          "type": "integer"
        }
      },
      "type": "object",
      "required": [
        "compute",
        "databaseParameter",
        "network",
        "software",
        "storage",
        "windowsDomain"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getNdbClusterEntityCountEngineCountPostgresDatabase:getNdbClusterEntityCountEngineCountPostgresDatabase": {
      "properties": {
        "profiles": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetNdbClusterEntityCountEngineCountPostgresDatabaseProfile:getNdbClusterEntityCountEngineCountPostgresDatabaseProfile"
          }
        },
        "timeMachines": {
          "type": "integer"
        }
      },
      "type": "object",
      "required": [
        "profiles",
        "timeMachines"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getNdbClusterEntityCountEngineCountPostgresDatabaseProfile:getNdbClusterEntityCountEngineCountPostgresDatabaseProfile": {
      "properties": {
        "compute": {
          "type": "integer"
        },
        "databaseParameter": {
          "type": "integer"
        },
        "network": {
          "type": "integer"
        },
        "software": {
          "type": "integer"
        },
        "storage": {
          "type": "integer"
        },
        "windowsDomain": {
          "type": "integer"
        }
      },
      "type": "object",
      "required": [
        "compute",
        "databaseParameter",
        "network",
        "software",
        "storage",
        "windowsDomain"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getNdbClusterEntityCountEngineCountSaphanaDatabase:getNdbClusterEntityCountEngineCountSaphanaDatabase": {
      "properties": {
        "profiles": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetNdbClusterEntityCountEngineCountSaphanaDatabaseProfile:getNdbClusterEntityCountEngineCountSaphanaDatabaseProfile"
          }
        },
        "timeMachines": {
          "type": "integer"
        }
      },
      "type": "object",
      "required": [
        "profiles",
        "timeMachines"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getNdbClusterEntityCountEngineCountSaphanaDatabaseProfile:getNdbClusterEntityCountEngineCountSaphanaDatabaseProfile": {
      "properties": {
        "compute": {
          "type": "integer"
        },
        "databaseParameter": {
          "type": "integer"
        },
        "network": {
          "type": "integer"
        },
        "software": {
          "type": "integer"
        },
        "storage": {
          "type": "integer"
        },
        "windowsDomain": {
          "type": "integer"
        }
      },
      "type": "object",
      "required": [
        "compute",
        "databaseParameter",
        "network",
        "software",
        "storage",
        "windowsDomain"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getNdbClusterEntityCountEngineCountSqlserverDatabase:getNdbClusterEntityCountEngineCountSqlserverDatabase": {
      "properties": {
        "profiles": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetNdbClusterEntityCountEngineCountSqlserverDatabaseProfile:getNdbClusterEntityCountEngineCountSqlserverDatabaseProfile"
          }
        },
        "timeMachines": {
          "type": "integer"
        }
      },
      "type": "object",
      "required": [
        "profiles",
        "timeMachines"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getNdbClusterEntityCountEngineCountSqlserverDatabaseProfile:getNdbClusterEntityCountEngineCountSqlserverDatabaseProfile": {
      "properties": {
        "compute": {
          "type": "integer"
        },
        "databaseParameter": {
          "type": "integer"
        },
        "network": {
          "type": "integer"
        },
        "software": {
          "type": "integer"
        },
        "storage": {
          "type": "integer"
        },
        "windowsDomain": {
          "type": "integer"
        }
      },
      "type": "object",
      "required": [
        "compute",
        "databaseParameter",
        "network",
        "software",
        "storage",
        "windowsDomain"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getNdbClusterProperty:getNdbClusterProperty": {
      "properties": {
        "description": {
          "type": "string",
          "description": "- description\n"
        },
        "name": {
          "type": "string",
          "description": "- name of cluster\n"
        },
        "refId": {
          "type": "string"
        },
        "secure": {
          "type": "boolean"
        },
        "value": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "description",
        "name",
        "refId",
        "secure",
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getNdbClusterResourceConfig:getNdbClusterResourceConfig": {
      "properties": {
        "memoryThresholdPercentage": {
          "type": "number"
        },
        "storageThresholdPercentage": {
          "type": "number"
        }
      },
      "type": "object",
      "required": [
        "memoryThresholdPercentage",
        "storageThresholdPercentage"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getNdbClustersCluster:getNdbClustersCluster": {
      "properties": {
        "cloudInfo": {
          "type": "string"
        },
        "cloudType": {
          "type": "string"
        },
        "dateCreated": {
          "type": "string"
        },
        "dateModified": {
          "type": "string"
        },
        "description": {
          "type": "string"
        },
        "entityCounts": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetNdbClustersClusterEntityCount:getNdbClustersClusterEntityCount"
          }
        },
        "fqdns": {
          "type": "string"
        },
        "healthy": {
          "type": "boolean"
        },
        "hypervisorType": {
          "type": "string"
        },
        "hypervisorVersion": {
          "type": "string"
        },
        "id": {
          "type": "string"
        },
        "ipAddresses": {
          "type": "array",
          "items": {
            "type": "string"
          }
        },
        "managementServerInfo": {
          "type": "string"
        },
        "name": {
          "type": "string"
        },
        "nxClusterUuid": {
          "type": "string"
        },
        "ownerId": {
          "type": "string"
        },
        "password": {
          "type": "string"
        },
        "properties": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetNdbClustersClusterProperty:getNdbClustersClusterProperty"
          }
        },
        "referenceCount": {
          "type": "integer"
        },
        "resourceConfigs": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetNdbClustersClusterResourceConfig:getNdbClustersClusterResourceConfig"
          }
        },
        "status": {
          "type": "string"
        },
        "uniqueName": {
          "type": "string"
        },
        "username": {
          "type": "string"
        },
        "version": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "cloudInfo",
        "cloudType",
        "dateCreated",
        "dateModified",
        "description",
        "entityCounts",
        "fqdns",
        "healthy",
        "hypervisorType",
        "hypervisorVersion",
        "id",
        "ipAddresses",
        "managementServerInfo",
        "name",
        "nxClusterUuid",
        "ownerId",
        "password",
        "properties",
        "referenceCount",
        "resourceConfigs",
        "status",
        "uniqueName",
        "username",
        "version"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getNdbClustersClusterEntityCount:getNdbClustersClusterEntityCount": {
      "properties": {
        "dbServers": {
          "type": "integer"
        },
        "engineCounts": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetNdbClustersClusterEntityCountEngineCount:getNdbClustersClusterEntityCountEngineCount"
          }
        }
      },
      "type": "object",
      "required": [
        "dbServers",
        "engineCounts"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getNdbClustersClusterEntityCountEngineCount:getNdbClustersClusterEntityCountEngineCount": {
      "properties": {
        "mariadbDatabases": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetNdbClustersClusterEntityCountEngineCountMariadbDatabase:getNdbClustersClusterEntityCountEngineCountMariadbDatabase"
          }
        },
        "mongodbDatabases": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetNdbClustersClusterEntityCountEngineCountMongodbDatabase:getNdbClustersClusterEntityCountEngineCountMongodbDatabase"
          }
        },
        "mysqlDatabases": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetNdbClustersClusterEntityCountEngineCountMysqlDatabase:getNdbClustersClusterEntityCountEngineCountMysqlDatabase"
          }
        },
        "oracleDatabases": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetNdbClustersClusterEntityCountEngineCountOracleDatabase:getNdbClustersClusterEntityCountEngineCountOracleDatabase"
          }
        },
        "postgresDatabases": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetNdbClustersClusterEntityCountEngineCountPostgresDatabase:getNdbClustersClusterEntityCountEngineCountPostgresDatabase"
          }
        },
        "saphanaDatabases": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetNdbClustersClusterEntityCountEngineCountSaphanaDatabase:getNdbClustersClusterEntityCountEngineCountSaphanaDatabase"
          }
        },
        "sqlserverDatabases": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetNdbClustersClusterEntityCountEngineCountSqlserverDatabase:getNdbClustersClusterEntityCountEngineCountSqlserverDatabase"
          }
        }
      },
      "type": "object",
      "required": [
        "mariadbDatabases",
        "mongodbDatabases",
        "mysqlDatabases",
        "oracleDatabases",
        "postgresDatabases",
        "saphanaDatabases",
        "sqlserverDatabases"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getNdbClustersClusterEntityCountEngineCountMariadbDatabase:getNdbClustersClusterEntityCountEngineCountMariadbDatabase": {
      "properties": {
        "profiles": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetNdbClustersClusterEntityCountEngineCountMariadbDatabaseProfile:getNdbClustersClusterEntityCountEngineCountMariadbDatabaseProfile"
          }
        },
        "timeMachines": {
          "type": "integer"
        }
      },
      "type": "object",
      "required": [
        "profiles",
        "timeMachines"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getNdbClustersClusterEntityCountEngineCountMariadbDatabaseProfile:getNdbClustersClusterEntityCountEngineCountMariadbDatabaseProfile": {
      "properties": {
        "compute": {
          "type": "integer"
        },
        "databaseParameter": {
          "type": "integer"
        },
        "network": {
          "type": "integer"
        },
        "software": {
          "type": "integer"
        },
        "storage": {
          "type": "integer"
        },
        "windowsDomain": {
          "type": "integer"
        }
      },
      "type": "object",
      "required": [
        "compute",
        "databaseParameter",
        "network",
        "software",
        "storage",
        "windowsDomain"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getNdbClustersClusterEntityCountEngineCountMongodbDatabase:getNdbClustersClusterEntityCountEngineCountMongodbDatabase": {
      "properties": {
        "profiles": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetNdbClustersClusterEntityCountEngineCountMongodbDatabaseProfile:getNdbClustersClusterEntityCountEngineCountMongodbDatabaseProfile"
          }
        },
        "timeMachines": {
          "type": "integer"
        }
      },
      "type": "object",
      "required": [
        "profiles",
        "timeMachines"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getNdbClustersClusterEntityCountEngineCountMongodbDatabaseProfile:getNdbClustersClusterEntityCountEngineCountMongodbDatabaseProfile": {
      "properties": {
        "compute": {
          "type": "integer"
        },
        "databaseParameter": {
          "type": "integer"
        },
        "network": {
          "type": "integer"
        },
        "software": {
          "type": "integer"
        },
        "storage": {
          "type": "integer"
        },
        "windowsDomain": {
          "type": "integer"
        }
      },
      "type": "object",
      "required": [
        "compute",
        "databaseParameter",
        "network",
        "software",
        "storage",
        "windowsDomain"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getNdbClustersClusterEntityCountEngineCountMysqlDatabase:getNdbClustersClusterEntityCountEngineCountMysqlDatabase": {
      "properties": {
        "profiles": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetNdbClustersClusterEntityCountEngineCountMysqlDatabaseProfile:getNdbClustersClusterEntityCountEngineCountMysqlDatabaseProfile"
          }
        },
        "timeMachines": {
          "type": "integer"
        }
      },
      "type": "object",
      "required": [
        "profiles",
        "timeMachines"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getNdbClustersClusterEntityCountEngineCountMysqlDatabaseProfile:getNdbClustersClusterEntityCountEngineCountMysqlDatabaseProfile": {
      "properties": {
        "compute": {
          "type": "integer"
        },
        "databaseParameter": {
          "type": "integer"
        },
        "network": {
          "type": "integer"
        },
        "software": {
          "type": "integer"
        },
        "storage": {
          "type": "integer"
        },
        "windowsDomain": {
          "type": "integer"
        }
      },
      "type": "object",
      "required": [
        "compute",
        "databaseParameter",
        "network",
        "software",
        "storage",
        "windowsDomain"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getNdbClustersClusterEntityCountEngineCountOracleDatabase:getNdbClustersClusterEntityCountEngineCountOracleDatabase": {
      "properties": {
        "profiles": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetNdbClustersClusterEntityCountEngineCountOracleDatabaseProfile:getNdbClustersClusterEntityCountEngineCountOracleDatabaseProfile"
          }
        },
        "timeMachines": {
          "type": "integer"
        }
      },
      "type": "object",
      "required": [
        "profiles",
        "timeMachines"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getNdbClustersClusterEntityCountEngineCountOracleDatabaseProfile:getNdbClustersClusterEntityCountEngineCountOracleDatabaseProfile": {
      "properties": {
        "compute": {
          "type": "integer"
        },
        "databaseParameter": {
          "type": "integer"
        },
        "network": {
          "type": "integer"
        },
        "software": {
          "type": "integer"
        },
        "storage": {
          "type": "integer"
        },
        "windowsDomain": {
          "type": "integer"
        }
      },
      "type": "object",
      "required": [
        "compute",
        "databaseParameter",
        "network",
        "software",
        "storage",
        "windowsDomain"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getNdbClustersClusterEntityCountEngineCountPostgresDatabase:getNdbClustersClusterEntityCountEngineCountPostgresDatabase": {
      "properties": {
        "profiles": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetNdbClustersClusterEntityCountEngineCountPostgresDatabaseProfile:getNdbClustersClusterEntityCountEngineCountPostgresDatabaseProfile"
          }
        },
        "timeMachines": {
          "type": "integer"
        }
      },
      "type": "object",
      "required": [
        "profiles",
        "timeMachines"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getNdbClustersClusterEntityCountEngineCountPostgresDatabaseProfile:getNdbClustersClusterEntityCountEngineCountPostgresDatabaseProfile": {
      "properties": {
        "compute": {
          "type": "integer"
        },
        "databaseParameter": {
          "type": "integer"
        },
        "network": {
          "type": "integer"
        },
        "software": {
          "type": "integer"
        },
        "storage": {
          "type": "integer"
        },
        "windowsDomain": {
          "type": "integer"
        }
      },
      "type": "object",
      "required": [
        "compute",
        "databaseParameter",
        "network",
        "software",
        "storage",
        "windowsDomain"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getNdbClustersClusterEntityCountEngineCountSaphanaDatabase:getNdbClustersClusterEntityCountEngineCountSaphanaDatabase": {
      "properties": {
        "profiles": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetNdbClustersClusterEntityCountEngineCountSaphanaDatabaseProfile:getNdbClustersClusterEntityCountEngineCountSaphanaDatabaseProfile"
          }
        },
        "timeMachines": {
          "type": "integer"
        }
      },
      "type": "object",
      "required": [
        "profiles",
        "timeMachines"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getNdbClustersClusterEntityCountEngineCountSaphanaDatabaseProfile:getNdbClustersClusterEntityCountEngineCountSaphanaDatabaseProfile": {
      "properties": {
        "compute": {
          "type": "integer"
        },
        "databaseParameter": {
          "type": "integer"
        },
        "network": {
          "type": "integer"
        },
        "software": {
          "type": "integer"
        },
        "storage": {
          "type": "integer"
        },
        "windowsDomain": {
          "type": "integer"
        }
      },
      "type": "object",
      "required": [
        "compute",
        "databaseParameter",
        "network",
        "software",
        "storage",
        "windowsDomain"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getNdbClustersClusterEntityCountEngineCountSqlserverDatabase:getNdbClustersClusterEntityCountEngineCountSqlserverDatabase": {
      "properties": {
        "profiles": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetNdbClustersClusterEntityCountEngineCountSqlserverDatabaseProfile:getNdbClustersClusterEntityCountEngineCountSqlserverDatabaseProfile"
          }
        },
        "timeMachines": {
          "type": "integer"
        }
      },
      "type": "object",
      "required": [
        "profiles",
        "timeMachines"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getNdbClustersClusterEntityCountEngineCountSqlserverDatabaseProfile:getNdbClustersClusterEntityCountEngineCountSqlserverDatabaseProfile": {
      "properties": {
        "compute": {
          "type": "integer"
        },
        "databaseParameter": {
          "type": "integer"
        },
        "network": {
          "type": "integer"
        },
        "software": {
          "type": "integer"
        },
        "storage": {
          "type": "integer"
        },
        "windowsDomain": {
          "type": "integer"
        }
      },
      "type": "object",
      "required": [
        "compute",
        "databaseParameter",
        "network",
        "software",
        "storage",
        "windowsDomain"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getNdbClustersClusterProperty:getNdbClustersClusterProperty": {
      "properties": {
        "description": {
          "type": "string"
        },
        "name": {
          "type": "string"
        },
        "refId": {
          "type": "string"
        },
        "secure": {
          "type": "boolean"
        },
        "value": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "description",
        "name",
        "refId",
        "secure",
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getNdbClustersClusterResourceConfig:getNdbClustersClusterResourceConfig": {
      "properties": {
        "memoryThresholdPercentage": {
          "type": "number"
        },
        "storageThresholdPercentage": {
          "type": "number"
        }
      },
      "type": "object",
      "required": [
        "memoryThresholdPercentage",
        "storageThresholdPercentage"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getNdbDatabaseDatabaseNode:getNdbDatabaseDatabaseNode": {
      "properties": {
        "accessLevel": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          }
        },
        "databaseId": {
          "type": "string",
          "description": "ID of database instance\n"
        },
        "databaseStatus": {
          "type": "string"
        },
        "dateCreated": {
          "type": "string",
          "description": "- creation date\n"
        },
        "dateModified": {
          "type": "string",
          "description": "- date modified\n"
        },
        "dbserver": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          }
        },
        "dbserverId": {
          "type": "string"
        },
        "description": {
          "type": "string",
          "description": "- description\n"
        },
        "id": {
          "type": "string",
          "description": "- id of database instance\n"
        },
        "infos": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetNdbDatabaseDatabaseNodeInfo:getNdbDatabaseDatabaseNodeInfo"
          },
          "description": "- info regarding disks, vm, storage, etc.\n"
        },
        "name": {
          "type": "string",
          "description": "- name of database instance\n"
        },
        "primary": {
          "type": "boolean"
        },
        "properties": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetNdbDatabaseDatabaseNodeProperty:getNdbDatabaseDatabaseNodeProperty"
          },
          "description": "- properties\n"
        },
        "protectionDomainId": {
          "type": "string"
        },
        "protectionDomains": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetNdbDatabaseDatabaseNodeProtectionDomain:getNdbDatabaseDatabaseNodeProtectionDomain"
          }
        },
        "softwareInstallationId": {
          "type": "string"
        },
        "status": {
          "type": "string",
          "description": "- status of database instance\n"
        },
        "tags": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetNdbDatabaseDatabaseNodeTag:getNdbDatabaseDatabaseNodeTag"
          },
          "description": "- tags attached\n"
        }
      },
      "type": "object",
      "required": [
        "accessLevel",
        "databaseId",
        "databaseStatus",
        "dateCreated",
        "dateModified",
        "dbserver",
        "dbserverId",
        "description",
        "id",
        "infos",
        "name",
        "primary",
        "properties",
        "protectionDomainId",
        "protectionDomains",
        "softwareInstallationId",
        "status",
        "tags"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getNdbDatabaseDatabaseNodeInfo:getNdbDatabaseDatabaseNodeInfo": {
      "properties": {
        "info": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          },
          "description": "- info regarding disks, vm, storage, etc.\n"
        },
        "secureInfo": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          }
        }
      },
      "type": "object",
      "required": [
        "info",
        "secureInfo"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getNdbDatabaseDatabaseNodeProperty:getNdbDatabaseDatabaseNodeProperty": {
      "properties": {
        "description": {
          "type": "string",
          "description": "- description\n"
        },
        "name": {
          "type": "string",
          "description": "- name of database instance\n"
        },
        "refId": {
          "type": "string"
        },
        "secure": {
          "type": "boolean"
        },
        "value": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "description",
        "name",
        "refId",
        "secure",
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getNdbDatabaseDatabaseNodeProtectionDomain:getNdbDatabaseDatabaseNodeProtectionDomain": {
      "properties": {
        "assocEntities": {
          "type": "array",
          "items": {
            "type": "string"
          }
        },
        "cloudId": {
          "type": "string"
        },
        "dateCreated": {
          "type": "string",
          "description": "- creation date\n"
        },
        "dateModified": {
          "type": "string",
          "description": "- date modified\n"
        },
        "description": {
          "type": "string",
          "description": "- description\n"
        },
        "eraCreated": {
          "type": "boolean"
        },
        "id": {
          "type": "string",
          "description": "- id of database instance\n"
        },
        "name": {
          "type": "string",
          "description": "- name of database instance\n"
        },
        "ownerId": {
          "type": "string"
        },
        "primaryHost": {
          "type": "string"
        },
        "properties": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetNdbDatabaseDatabaseNodeProtectionDomainProperty:getNdbDatabaseDatabaseNodeProtectionDomainProperty"
          },
          "description": "- properties\n"
        },
        "status": {
          "type": "string",
          "description": "- status of database instance\n"
        },
        "type": {
          "type": "string",
          "description": "- database engine type\n"
        }
      },
      "type": "object",
      "required": [
        "assocEntities",
        "cloudId",
        "dateCreated",
        "dateModified",
        "description",
        "eraCreated",
        "id",
        "name",
        "ownerId",
        "primaryHost",
        "properties",
        "status",
        "type"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getNdbDatabaseDatabaseNodeProtectionDomainProperty:getNdbDatabaseDatabaseNodeProtectionDomainProperty": {
      "properties": {
        "description": {
          "type": "string",
          "description": "- description\n"
        },
        "name": {
          "type": "string",
          "description": "- name of database instance\n"
        },
        "refId": {
          "type": "string"
        },
        "secure": {
          "type": "boolean"
        },
        "value": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "description",
        "name",
        "refId",
        "secure",
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getNdbDatabaseDatabaseNodeTag:getNdbDatabaseDatabaseNodeTag": {
      "properties": {
        "entityId": {
          "type": "string"
        },
        "entityType": {
          "type": "string"
        },
        "tagId": {
          "type": "string"
        },
        "tagName": {
          "type": "string"
        },
        "value": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "entityId",
        "entityType",
        "tagId",
        "tagName",
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getNdbDatabaseInfo:getNdbDatabaseInfo": {
      "properties": {
        "bpgConfigs": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetNdbDatabaseInfoBpgConfig:getNdbDatabaseInfoBpgConfig"
          }
        },
        "secureInfo": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          }
        }
      },
      "type": "object",
      "required": [
        "bpgConfigs",
        "secureInfo"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getNdbDatabaseInfoBpgConfig:getNdbDatabaseInfoBpgConfig": {
      "properties": {
        "bpgDbParams": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetNdbDatabaseInfoBpgConfigBpgDbParam:getNdbDatabaseInfoBpgConfigBpgDbParam"
          }
        },
        "storages": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetNdbDatabaseInfoBpgConfigStorage:getNdbDatabaseInfoBpgConfigStorage"
          }
        },
        "vmProperties": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetNdbDatabaseInfoBpgConfigVmProperty:getNdbDatabaseInfoBpgConfigVmProperty"
          }
        }
      },
      "type": "object",
      "required": [
        "bpgDbParams",
        "storages",
        "vmProperties"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getNdbDatabaseInfoBpgConfigBpgDbParam:getNdbDatabaseInfoBpgConfigBpgDbParam": {
      "properties": {
        "effectiveCacheSize": {
          "type": "string"
        },
        "maintenanceWorkMem": {
          "type": "string"
        },
        "maxParallelWorkersPerGather": {
          "type": "string"
        },
        "maxWorkerProcesses": {
          "type": "string"
        },
        "sharedBuffers": {
          "type": "string"
        },
        "workMem": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "effectiveCacheSize",
        "maintenanceWorkMem",
        "maxParallelWorkersPerGather",
        "maxWorkerProcesses",
        "sharedBuffers",
        "workMem"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getNdbDatabaseInfoBpgConfigStorage:getNdbDatabaseInfoBpgConfigStorage": {
      "properties": {
        "archiveStorages": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetNdbDatabaseInfoBpgConfigStorageArchiveStorage:getNdbDatabaseInfoBpgConfigStorageArchiveStorage"
          }
        },
        "dataDisks": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetNdbDatabaseInfoBpgConfigStorageDataDisk:getNdbDatabaseInfoBpgConfigStorageDataDisk"
          }
        },
        "logDisks": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetNdbDatabaseInfoBpgConfigStorageLogDisk:getNdbDatabaseInfoBpgConfigStorageLogDisk"
          }
        }
      },
      "type": "object",
      "required": [
        "archiveStorages",
        "dataDisks",
        "logDisks"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getNdbDatabaseInfoBpgConfigStorageArchiveStorage:getNdbDatabaseInfoBpgConfigStorageArchiveStorage": {
      "properties": {
        "size": {
          "type": "number"
        }
      },
      "type": "object",
      "required": [
        "size"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getNdbDatabaseInfoBpgConfigStorageDataDisk:getNdbDatabaseInfoBpgConfigStorageDataDisk": {
      "properties": {
        "count": {
          "type": "number"
        }
      },
      "type": "object",
      "required": [
        "count"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getNdbDatabaseInfoBpgConfigStorageLogDisk:getNdbDatabaseInfoBpgConfigStorageLogDisk": {
      "properties": {
        "count": {
          "type": "number"
        },
        "size": {
          "type": "number"
        }
      },
      "type": "object",
      "required": [
        "count",
        "size"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getNdbDatabaseInfoBpgConfigVmProperty:getNdbDatabaseInfoBpgConfigVmProperty": {
      "properties": {
        "dirtyBackgroundRatio": {
          "type": "number"
        },
        "dirtyExpireCentisecs": {
          "type": "number"
        },
        "dirtyRatio": {
          "type": "number"
        },
        "dirtyWritebackCentisecs": {
          "type": "number"
        },
        "nrHugepages": {
          "type": "number"
        },
        "overcommitMemory": {
          "type": "number"
        },
        "swappiness": {
          "type": "number"
        }
      },
      "type": "object",
      "required": [
        "dirtyBackgroundRatio",
        "dirtyExpireCentisecs",
        "dirtyRatio",
        "dirtyWritebackCentisecs",
        "nrHugepages",
        "overcommitMemory",
        "swappiness"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getNdbDatabaseLcmConfig:getNdbDatabaseLcmConfig": {
      "properties": {
        "expiryDetails": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetNdbDatabaseLcmConfigExpiryDetail:getNdbDatabaseLcmConfigExpiryDetail"
          }
        },
        "postDeleteCommands": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetNdbDatabaseLcmConfigPostDeleteCommand:getNdbDatabaseLcmConfigPostDeleteCommand"
          }
        },
        "preDeleteCommands": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetNdbDatabaseLcmConfigPreDeleteCommand:getNdbDatabaseLcmConfigPreDeleteCommand"
          }
        },
        "refreshDetails": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetNdbDatabaseLcmConfigRefreshDetail:getNdbDatabaseLcmConfigRefreshDetail"
          }
        }
      },
      "type": "object",
      "required": [
        "expiryDetails",
        "postDeleteCommands",
        "preDeleteCommands",
        "refreshDetails"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getNdbDatabaseLcmConfigExpiryDetail:getNdbDatabaseLcmConfigExpiryDetail": {
      "properties": {
        "deleteDatabase": {
          "type": "boolean"
        },
        "deleteTimeMachine": {
          "type": "boolean"
        },
        "deleteVm": {
          "type": "boolean"
        },
        "effectiveTimestamp": {
          "type": "string"
        },
        "expireInDays": {
          "type": "integer"
        },
        "expiryDateTimezone": {
          "type": "string"
        },
        "expiryTimestamp": {
          "type": "string"
        },
        "remindBeforeInDays": {
          "type": "integer"
        },
        "userCreated": {
          "type": "boolean"
        }
      },
      "type": "object",
      "required": [
        "deleteDatabase",
        "deleteTimeMachine",
        "deleteVm",
        "effectiveTimestamp",
        "expireInDays",
        "expiryDateTimezone",
        "expiryTimestamp",
        "remindBeforeInDays",
        "userCreated"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getNdbDatabaseLcmConfigPostDeleteCommand:getNdbDatabaseLcmConfigPostDeleteCommand": {
      "properties": {
        "command": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "command"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getNdbDatabaseLcmConfigPreDeleteCommand:getNdbDatabaseLcmConfigPreDeleteCommand": {
      "properties": {
        "command": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "command"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getNdbDatabaseLcmConfigRefreshDetail:getNdbDatabaseLcmConfigRefreshDetail": {
      "properties": {
        "lastRefreshDate": {
          "type": "string"
        },
        "nextRefreshDate": {
          "type": "string"
        },
        "refreshDateTimezone": {
          "type": "string"
        },
        "refreshInDays": {
          "type": "integer"
        },
        "refreshInHours": {
          "type": "integer"
        },
        "refreshInMonths": {
          "type": "integer"
        },
        "refreshTime": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "lastRefreshDate",
        "nextRefreshDate",
        "refreshDateTimezone",
        "refreshInDays",
        "refreshInHours",
        "refreshInMonths",
        "refreshTime"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getNdbDatabaseLinkedDatabase:getNdbDatabaseLinkedDatabase": {
      "properties": {
        "databaseName": {
          "type": "string",
          "description": "- database instance name\n"
        },
        "databaseStatus": {
          "type": "string"
        },
        "dateCreated": {
          "type": "string",
          "description": "- creation date\n"
        },
        "dateModified": {
          "type": "string",
          "description": "- date modified\n"
        },
        "description": {
          "type": "string",
          "description": "- description\n"
        },
        "id": {
          "type": "string",
          "description": "- id of database instance\n"
        },
        "infos": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetNdbDatabaseLinkedDatabaseInfo:getNdbDatabaseLinkedDatabaseInfo"
          },
          "description": "- info regarding disks, vm, storage, etc.\n"
        },
        "metric": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          },
          "description": "- metrics\n"
        },
        "name": {
          "type": "string",
          "description": "- name of database instance\n"
        },
        "parentDatabaseId": {
          "type": "string",
          "description": "- parent database ID\n"
        },
        "parentLinkedDatabaseId": {
          "type": "string"
        },
        "snapshotId": {
          "type": "string"
        },
        "status": {
          "type": "string",
          "description": "- status of database instance\n"
        },
        "timezone": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "databaseName",
        "databaseStatus",
        "dateCreated",
        "dateModified",
        "description",
        "id",
        "infos",
        "metric",
        "name",
        "parentDatabaseId",
        "parentLinkedDatabaseId",
        "snapshotId",
        "status",
        "timezone"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getNdbDatabaseLinkedDatabaseInfo:getNdbDatabaseLinkedDatabaseInfo": {
      "properties": {
        "info": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          },
          "description": "- info regarding disks, vm, storage, etc.\n"
        },
        "secureInfo": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          }
        }
      },
      "type": "object",
      "required": [
        "info",
        "secureInfo"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getNdbDatabaseProperty:getNdbDatabaseProperty": {
      "properties": {
        "description": {
          "type": "string",
          "description": "- description\n"
        },
        "name": {
          "type": "string",
          "description": "- name of database instance\n"
        },
        "refId": {
          "type": "string"
        },
        "secure": {
          "type": "boolean"
        },
        "value": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "description",
        "name",
        "refId",
        "secure",
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getNdbDatabaseTag:getNdbDatabaseTag": {
      "properties": {
        "entityId": {
          "type": "string"
        },
        "entityType": {
          "type": "string"
        },
        "tagId": {
          "type": "string"
        },
        "tagName": {
          "type": "string"
        },
        "value": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "entityId",
        "entityType",
        "tagId",
        "tagName",
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getNdbDatabaseTimeMachine:getNdbDatabaseTimeMachine": {
      "properties": {
        "accessLevel": {
          "type": "string"
        },
        "clone": {
          "type": "boolean",
          "description": "- if cloned\n"
        },
        "clones": {
          "type": "string"
        },
        "clustered": {
          "type": "boolean",
          "description": "- if clustered or not\n"
        },
        "database": {
          "type": "string"
        },
        "databaseId": {
          "type": "string",
          "description": "ID of database instance\n"
        },
        "dateCreated": {
          "type": "string",
          "description": "- creation date\n"
        },
        "dateModified": {
          "type": "string",
          "description": "- date modified\n"
        },
        "description": {
          "type": "string",
          "description": "- description\n"
        },
        "eaStatus": {
          "type": "string"
        },
        "id": {
          "type": "string",
          "description": "- id of database instance\n"
        },
        "metric": {
          "type": "string",
          "description": "- metrics\n"
        },
        "name": {
          "type": "string",
          "description": "- name of database instance\n"
        },
        "properties": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetNdbDatabaseTimeMachineProperty:getNdbDatabaseTimeMachineProperty"
          },
          "description": "- properties\n"
        },
        "scheduleId": {
          "type": "string"
        },
        "schedules": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetNdbDatabaseTimeMachineSchedule:getNdbDatabaseTimeMachineSchedule"
          }
        },
        "scope": {
          "type": "string"
        },
        "slaId": {
          "type": "string"
        },
        "slaUpdateInProgress": {
          "type": "boolean"
        },
        "slaUpdateMetadata": {
          "type": "string"
        },
        "slas": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetNdbDatabaseTimeMachineSla:getNdbDatabaseTimeMachineSla"
          }
        },
        "sourceNxClusters": {
          "type": "array",
          "items": {
            "type": "string"
          }
        },
        "status": {
          "type": "string",
          "description": "- status of database instance\n"
        },
        "tags": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetNdbDatabaseTimeMachineTag:getNdbDatabaseTimeMachineTag"
          },
          "description": "- tags attached\n"
        },
        "type": {
          "type": "string",
          "description": "- database engine type\n"
        }
      },
      "type": "object",
      "required": [
        "accessLevel",
        "clone",
        "clones",
        "clustered",
        "database",
        "databaseId",
        "dateCreated",
        "dateModified",
        "description",
        "eaStatus",
        "id",
        "metric",
        "name",
        "properties",
        "scheduleId",
        "schedules",
        "scope",
        "slaId",
        "slaUpdateInProgress",
        "slaUpdateMetadata",
        "slas",
        "sourceNxClusters",
        "status",
        "tags",
        "type"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getNdbDatabaseTimeMachineProperty:getNdbDatabaseTimeMachineProperty": {
      "properties": {
        "description": {
          "type": "string",
          "description": "- description\n"
        },
        "name": {
          "type": "string",
          "description": "- name of database instance\n"
        },
        "refId": {
          "type": "string"
        },
        "secure": {
          "type": "boolean"
        },
        "value": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "description",
        "name",
        "refId",
        "secure",
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getNdbDatabaseTimeMachineSchedule:getNdbDatabaseTimeMachineSchedule": {
      "properties": {
        "continuousSchedules": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetNdbDatabaseTimeMachineScheduleContinuousSchedule:getNdbDatabaseTimeMachineScheduleContinuousSchedule"
          }
        },
        "dailySchedules": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetNdbDatabaseTimeMachineScheduleDailySchedule:getNdbDatabaseTimeMachineScheduleDailySchedule"
          }
        },
        "dateCreated": {
          "type": "string",
          "description": "- creation date\n"
        },
        "dateModified": {
          "type": "string",
          "description": "- date modified\n"
        },
        "description": {
          "type": "string",
          "description": "- description\n"
        },
        "globalPolicy": {
          "type": "boolean"
        },
        "id": {
          "type": "string",
          "description": "- id of database instance\n"
        },
        "monthlySchedules": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetNdbDatabaseTimeMachineScheduleMonthlySchedule:getNdbDatabaseTimeMachineScheduleMonthlySchedule"
          }
        },
        "name": {
          "type": "string",
          "description": "- name of database instance\n"
        },
        "ownerId": {
          "type": "string"
        },
        "quartelySchedules": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetNdbDatabaseTimeMachineScheduleQuartelySchedule:getNdbDatabaseTimeMachineScheduleQuartelySchedule"
          }
        },
        "referenceCount": {
          "type": "integer"
        },
        "snapshotTimeOfDays": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetNdbDatabaseTimeMachineScheduleSnapshotTimeOfDay:getNdbDatabaseTimeMachineScheduleSnapshotTimeOfDay"
          }
        },
        "startTime": {
          "type": "string"
        },
        "systemPolicy": {
          "type": "boolean"
        },
        "timeZone": {
          "type": "string",
          "description": "- timezone\n"
        },
        "uniqueName": {
          "type": "string"
        },
        "weeklySchedules": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetNdbDatabaseTimeMachineScheduleWeeklySchedule:getNdbDatabaseTimeMachineScheduleWeeklySchedule"
          }
        },
        "yearlySchedules": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetNdbDatabaseTimeMachineScheduleYearlySchedule:getNdbDatabaseTimeMachineScheduleYearlySchedule"
          }
        }
      },
      "type": "object",
      "required": [
        "continuousSchedules",
        "dailySchedules",
        "dateCreated",
        "dateModified",
        "description",
        "globalPolicy",
        "id",
        "monthlySchedules",
        "name",
        "ownerId",
        "quartelySchedules",
        "referenceCount",
        "snapshotTimeOfDays",
        "startTime",
        "systemPolicy",
        "timeZone",
        "uniqueName",
        "weeklySchedules",
        "yearlySchedules"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getNdbDatabaseTimeMachineScheduleContinuousSchedule:getNdbDatabaseTimeMachineScheduleContinuousSchedule": {
      "properties": {
        "enabled": {
          "type": "boolean"
        },
        "logBackupInterval": {
          "type": "integer"
        },
        "snapshotsPerDay": {
          "type": "integer"
        }
      },
      "type": "object",
      "required": [
        "enabled",
        "logBackupInterval",
        "snapshotsPerDay"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getNdbDatabaseTimeMachineScheduleDailySchedule:getNdbDatabaseTimeMachineScheduleDailySchedule": {
      "properties": {
        "enabled": {
          "type": "boolean"
        }
      },
      "type": "object",
      "required": [
        "enabled"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getNdbDatabaseTimeMachineScheduleMonthlySchedule:getNdbDatabaseTimeMachineScheduleMonthlySchedule": {
      "properties": {
        "dayOfMonth": {
          "type": "integer"
        },
        "enabled": {
          "type": "boolean"
        }
      },
      "type": "object",
      "required": [
        "dayOfMonth",
        "enabled"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getNdbDatabaseTimeMachineScheduleQuartelySchedule:getNdbDatabaseTimeMachineScheduleQuartelySchedule": {
      "properties": {
        "dayOfMonth": {
          "type": "integer"
        },
        "enabled": {
          "type": "boolean"
        },
        "startMonth": {
          "type": "string"
        },
        "startMonthValue": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "dayOfMonth",
        "enabled",
        "startMonth",
        "startMonthValue"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getNdbDatabaseTimeMachineScheduleSnapshotTimeOfDay:getNdbDatabaseTimeMachineScheduleSnapshotTimeOfDay": {
      "properties": {
        "extra": {
          "type": "boolean"
        },
        "hours": {
          "type": "integer"
        },
        "minutes": {
          "type": "integer"
        },
        "seconds": {
          "type": "integer"
        }
      },
      "type": "object",
      "required": [
        "extra",
        "hours",
        "minutes",
        "seconds"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getNdbDatabaseTimeMachineScheduleWeeklySchedule:getNdbDatabaseTimeMachineScheduleWeeklySchedule": {
      "properties": {
        "dayOfWeek": {
          "type": "string"
        },
        "dayOfWeekValue": {
          "type": "string"
        },
        "enabled": {
          "type": "boolean"
        }
      },
      "type": "object",
      "required": [
        "dayOfWeek",
        "dayOfWeekValue",
        "enabled"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getNdbDatabaseTimeMachineScheduleYearlySchedule:getNdbDatabaseTimeMachineScheduleYearlySchedule": {
      "properties": {
        "dayOfMonth": {
          "type": "integer"
        },
        "enabled": {
          "type": "boolean"
        },
        "month": {
          "type": "string"
        },
        "monthValue": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "dayOfMonth",
        "enabled",
        "month",
        "monthValue"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getNdbDatabaseTimeMachineSla:getNdbDatabaseTimeMachineSla": {
      "properties": {
        "continuousRetention": {
          "type": "integer"
        },
        "currentActiveFrequency": {
          "type": "string"
        },
        "dailyRetention": {
          "type": "integer"
        },
        "dateCreated": {
          "type": "string",
          "description": "- creation date\n"
        },
        "dateModified": {
          "type": "string",
          "description": "- date modified\n"
        },
        "description": {
          "type": "string",
          "description": "- description\n"
        },
        "id": {
          "type": "string",
          "description": "- id of database instance\n"
        },
        "monthlyRetention": {
          "type": "integer"
        },
        "name": {
          "type": "string",
          "description": "- name of database instance\n"
        },
        "ownerId": {
          "type": "string"
        },
        "pitrEnabled": {
          "type": "boolean"
        },
        "quarterlyRetention": {
          "type": "integer"
        },
        "referenceCount": {
          "type": "integer"
        },
        "systemSla": {
          "type": "boolean"
        },
        "uniqueName": {
          "type": "string"
        },
        "weeklyRetention": {
          "type": "integer"
        },
        "yearlyRetention": {
          "type": "integer"
        }
      },
      "type": "object",
      "required": [
        "continuousRetention",
        "currentActiveFrequency",
        "dailyRetention",
        "dateCreated",
        "dateModified",
        "description",
        "id",
        "monthlyRetention",
        "name",
        "ownerId",
        "pitrEnabled",
        "quarterlyRetention",
        "referenceCount",
        "systemSla",
        "uniqueName",
        "weeklyRetention",
        "yearlyRetention"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getNdbDatabaseTimeMachineTag:getNdbDatabaseTimeMachineTag": {
      "properties": {
        "entityId": {
          "type": "string"
        },
        "entityType": {
          "type": "string"
        },
        "tagId": {
          "type": "string"
        },
        "tagName": {
          "type": "string"
        },
        "value": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "entityId",
        "entityType",
        "tagId",
        "tagName",
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getNdbDatabasesDatabaseInstance:getNdbDatabasesDatabaseInstance": {
      "properties": {
        "clone": {
          "type": "boolean"
        },
        "clustered": {
          "type": "boolean"
        },
        "databaseClusterType": {
          "type": "string"
        },
        "databaseName": {
          "type": "string"
        },
        "databaseNodes": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetNdbDatabasesDatabaseInstanceDatabaseNode:getNdbDatabasesDatabaseInstanceDatabaseNode"
          }
        },
        "databases": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          }
        },
        "dateCreated": {
          "type": "string"
        },
        "dateModified": {
          "type": "string"
        },
        "dbserverLogicalCluster": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          }
        },
        "dbserverLogicalClusterId": {
          "type": "string"
        },
        "description": {
          "type": "string"
        },
        "id": {
          "type": "string"
        },
        "infos": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetNdbDatabasesDatabaseInstanceInfo:getNdbDatabasesDatabaseInstanceInfo"
          }
        },
        "lcmConfigs": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetNdbDatabasesDatabaseInstanceLcmConfig:getNdbDatabasesDatabaseInstanceLcmConfig"
          }
        },
        "linkedDatabases": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetNdbDatabasesDatabaseInstanceLinkedDatabase:getNdbDatabasesDatabaseInstanceLinkedDatabase"
          }
        },
        "metadatas": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetNdbDatabasesDatabaseInstanceMetadata:getNdbDatabasesDatabaseInstanceMetadata"
          }
        },
        "metric": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          }
        },
        "name": {
          "type": "string"
        },
        "parentDatabaseId": {
          "type": "string"
        },
        "properties": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetNdbDatabasesDatabaseInstanceProperty:getNdbDatabasesDatabaseInstanceProperty"
          },
          "description": "List of all the properties\n"
        },
        "status": {
          "type": "string"
        },
        "tags": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetNdbDatabasesDatabaseInstanceTag:getNdbDatabasesDatabaseInstanceTag"
          }
        },
        "timeMachineId": {
          "type": "string"
        },
        "timeMachines": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetNdbDatabasesDatabaseInstanceTimeMachine:getNdbDatabasesDatabaseInstanceTimeMachine"
          }
        },
        "timeZone": {
          "type": "string"
        },
        "type": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "clone",
        "clustered",
        "databaseClusterType",
        "databaseName",
        "databaseNodes",
        "databases",
        "dateCreated",
        "dateModified",
        "dbserverLogicalCluster",
        "dbserverLogicalClusterId",
        "description",
        "id",
        "infos",
        "lcmConfigs",
        "linkedDatabases",
        "metadatas",
        "metric",
        "name",
        "parentDatabaseId",
        "properties",
        "status",
        "tags",
        "timeMachineId",
        "timeMachines",
        "timeZone",
        "type"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getNdbDatabasesDatabaseInstanceDatabaseNode:getNdbDatabasesDatabaseInstanceDatabaseNode": {
      "properties": {
        "accessLevel": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          }
        },
        "databaseId": {
          "type": "string"
        },
        "databaseStatus": {
          "type": "string"
        },
        "dateCreated": {
          "type": "string"
        },
        "dateModified": {
          "type": "string"
        },
        "dbserver": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          }
        },
        "dbserverId": {
          "type": "string"
        },
        "description": {
          "type": "string"
        },
        "id": {
          "type": "string"
        },
        "infos": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetNdbDatabasesDatabaseInstanceDatabaseNodeInfo:getNdbDatabasesDatabaseInstanceDatabaseNodeInfo"
          }
        },
        "name": {
          "type": "string"
        },
        "primary": {
          "type": "boolean"
        },
        "properties": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetNdbDatabasesDatabaseInstanceDatabaseNodeProperty:getNdbDatabasesDatabaseInstanceDatabaseNodeProperty"
          },
          "description": "List of all the properties\n"
        },
        "protectionDomainId": {
          "type": "string"
        },
        "protectionDomains": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetNdbDatabasesDatabaseInstanceDatabaseNodeProtectionDomain:getNdbDatabasesDatabaseInstanceDatabaseNodeProtectionDomain"
          }
        },
        "softwareInstallationId": {
          "type": "string"
        },
        "status": {
          "type": "string"
        },
        "tags": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetNdbDatabasesDatabaseInstanceDatabaseNodeTag:getNdbDatabasesDatabaseInstanceDatabaseNodeTag"
          }
        }
      },
      "type": "object",
      "required": [
        "accessLevel",
        "databaseId",
        "databaseStatus",
        "dateCreated",
        "dateModified",
        "dbserver",
        "dbserverId",
        "description",
        "id",
        "infos",
        "name",
        "primary",
        "properties",
        "protectionDomainId",
        "protectionDomains",
        "softwareInstallationId",
        "status",
        "tags"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getNdbDatabasesDatabaseInstanceDatabaseNodeInfo:getNdbDatabasesDatabaseInstanceDatabaseNodeInfo": {
      "properties": {
        "info": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          }
        },
        "secureInfo": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          }
        }
      },
      "type": "object",
      "required": [
        "info",
        "secureInfo"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getNdbDatabasesDatabaseInstanceDatabaseNodeProperty:getNdbDatabasesDatabaseInstanceDatabaseNodeProperty": {
      "properties": {
        "description": {
          "type": "string"
        },
        "name": {
          "type": "string"
        },
        "refId": {
          "type": "string"
        },
        "secure": {
          "type": "boolean"
        },
        "value": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "description",
        "name",
        "refId",
        "secure",
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getNdbDatabasesDatabaseInstanceDatabaseNodeProtectionDomain:getNdbDatabasesDatabaseInstanceDatabaseNodeProtectionDomain": {
      "properties": {
        "assocEntities": {
          "type": "array",
          "items": {
            "type": "string"
          }
        },
        "cloudId": {
          "type": "string"
        },
        "dateCreated": {
          "type": "string"
        },
        "dateModified": {
          "type": "string"
        },
        "description": {
          "type": "string"
        },
        "eraCreated": {
          "type": "boolean"
        },
        "id": {
          "type": "string"
        },
        "name": {
          "type": "string"
        },
        "ownerId": {
          "type": "string"
        },
        "primaryHost": {
          "type": "string"
        },
        "properties": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetNdbDatabasesDatabaseInstanceDatabaseNodeProtectionDomainProperty:getNdbDatabasesDatabaseInstanceDatabaseNodeProtectionDomainProperty"
          },
          "description": "List of all the properties\n"
        },
        "status": {
          "type": "string"
        },
        "type": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "assocEntities",
        "cloudId",
        "dateCreated",
        "dateModified",
        "description",
        "eraCreated",
        "id",
        "name",
        "ownerId",
        "primaryHost",
        "properties",
        "status",
        "type"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getNdbDatabasesDatabaseInstanceDatabaseNodeProtectionDomainProperty:getNdbDatabasesDatabaseInstanceDatabaseNodeProtectionDomainProperty": {
      "properties": {
        "description": {
          "type": "string"
        },
        "name": {
          "type": "string"
        },
        "refId": {
          "type": "string"
        },
        "secure": {
          "type": "boolean"
        },
        "value": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "description",
        "name",
        "refId",
        "secure",
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getNdbDatabasesDatabaseInstanceDatabaseNodeTag:getNdbDatabasesDatabaseInstanceDatabaseNodeTag": {
      "properties": {
        "entityId": {
          "type": "string"
        },
        "entityType": {
          "type": "string"
        },
        "tagId": {
          "type": "string"
        },
        "tagName": {
          "type": "string"
        },
        "value": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "entityId",
        "entityType",
        "tagId",
        "tagName",
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getNdbDatabasesDatabaseInstanceInfo:getNdbDatabasesDatabaseInstanceInfo": {
      "properties": {
        "bpgConfigs": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetNdbDatabasesDatabaseInstanceInfoBpgConfig:getNdbDatabasesDatabaseInstanceInfoBpgConfig"
          }
        },
        "secureInfo": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          }
        }
      },
      "type": "object",
      "required": [
        "bpgConfigs",
        "secureInfo"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getNdbDatabasesDatabaseInstanceInfoBpgConfig:getNdbDatabasesDatabaseInstanceInfoBpgConfig": {
      "properties": {
        "bpgDbParams": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetNdbDatabasesDatabaseInstanceInfoBpgConfigBpgDbParam:getNdbDatabasesDatabaseInstanceInfoBpgConfigBpgDbParam"
          }
        },
        "storages": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetNdbDatabasesDatabaseInstanceInfoBpgConfigStorage:getNdbDatabasesDatabaseInstanceInfoBpgConfigStorage"
          }
        },
        "vmProperties": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetNdbDatabasesDatabaseInstanceInfoBpgConfigVmProperty:getNdbDatabasesDatabaseInstanceInfoBpgConfigVmProperty"
          }
        }
      },
      "type": "object",
      "required": [
        "bpgDbParams",
        "storages",
        "vmProperties"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getNdbDatabasesDatabaseInstanceInfoBpgConfigBpgDbParam:getNdbDatabasesDatabaseInstanceInfoBpgConfigBpgDbParam": {
      "properties": {
        "effectiveCacheSize": {
          "type": "string"
        },
        "maintenanceWorkMem": {
          "type": "string"
        },
        "maxParallelWorkersPerGather": {
          "type": "string"
        },
        "maxWorkerProcesses": {
          "type": "string"
        },
        "sharedBuffers": {
          "type": "string"
        },
        "workMem": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "effectiveCacheSize",
        "maintenanceWorkMem",
        "maxParallelWorkersPerGather",
        "maxWorkerProcesses",
        "sharedBuffers",
        "workMem"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getNdbDatabasesDatabaseInstanceInfoBpgConfigStorage:getNdbDatabasesDatabaseInstanceInfoBpgConfigStorage": {
      "properties": {
        "archiveStorages": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetNdbDatabasesDatabaseInstanceInfoBpgConfigStorageArchiveStorage:getNdbDatabasesDatabaseInstanceInfoBpgConfigStorageArchiveStorage"
          }
        },
        "dataDisks": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetNdbDatabasesDatabaseInstanceInfoBpgConfigStorageDataDisk:getNdbDatabasesDatabaseInstanceInfoBpgConfigStorageDataDisk"
          }
        },
        "logDisks": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetNdbDatabasesDatabaseInstanceInfoBpgConfigStorageLogDisk:getNdbDatabasesDatabaseInstanceInfoBpgConfigStorageLogDisk"
          }
        }
      },
      "type": "object",
      "required": [
        "archiveStorages",
        "dataDisks",
        "logDisks"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getNdbDatabasesDatabaseInstanceInfoBpgConfigStorageArchiveStorage:getNdbDatabasesDatabaseInstanceInfoBpgConfigStorageArchiveStorage": {
      "properties": {
        "size": {
          "type": "number"
        }
      },
      "type": "object",
      "required": [
        "size"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getNdbDatabasesDatabaseInstanceInfoBpgConfigStorageDataDisk:getNdbDatabasesDatabaseInstanceInfoBpgConfigStorageDataDisk": {
      "properties": {
        "count": {
          "type": "number"
        }
      },
      "type": "object",
      "required": [
        "count"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getNdbDatabasesDatabaseInstanceInfoBpgConfigStorageLogDisk:getNdbDatabasesDatabaseInstanceInfoBpgConfigStorageLogDisk": {
      "properties": {
        "count": {
          "type": "number"
        },
        "size": {
          "type": "number"
        }
      },
      "type": "object",
      "required": [
        "count",
        "size"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getNdbDatabasesDatabaseInstanceInfoBpgConfigVmProperty:getNdbDatabasesDatabaseInstanceInfoBpgConfigVmProperty": {
      "properties": {
        "dirtyBackgroundRatio": {
          "type": "number"
        },
        "dirtyExpireCentisecs": {
          "type": "number"
        },
        "dirtyRatio": {
          "type": "number"
        },
        "dirtyWritebackCentisecs": {
          "type": "number"
        },
        "nrHugepages": {
          "type": "number"
        },
        "overcommitMemory": {
          "type": "number"
        },
        "swappiness": {
          "type": "number"
        }
      },
      "type": "object",
      "required": [
        "dirtyBackgroundRatio",
        "dirtyExpireCentisecs",
        "dirtyRatio",
        "dirtyWritebackCentisecs",
        "nrHugepages",
        "overcommitMemory",
        "swappiness"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getNdbDatabasesDatabaseInstanceLcmConfig:getNdbDatabasesDatabaseInstanceLcmConfig": {
      "properties": {
        "expiryDetails": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetNdbDatabasesDatabaseInstanceLcmConfigExpiryDetail:getNdbDatabasesDatabaseInstanceLcmConfigExpiryDetail"
          }
        },
        "postDeleteCommands": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetNdbDatabasesDatabaseInstanceLcmConfigPostDeleteCommand:getNdbDatabasesDatabaseInstanceLcmConfigPostDeleteCommand"
          }
        },
        "preDeleteCommands": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetNdbDatabasesDatabaseInstanceLcmConfigPreDeleteCommand:getNdbDatabasesDatabaseInstanceLcmConfigPreDeleteCommand"
          }
        },
        "refreshDetails": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetNdbDatabasesDatabaseInstanceLcmConfigRefreshDetail:getNdbDatabasesDatabaseInstanceLcmConfigRefreshDetail"
          }
        }
      },
      "type": "object",
      "required": [
        "expiryDetails",
        "postDeleteCommands",
        "preDeleteCommands",
        "refreshDetails"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getNdbDatabasesDatabaseInstanceLcmConfigExpiryDetail:getNdbDatabasesDatabaseInstanceLcmConfigExpiryDetail": {
      "properties": {
        "deleteDatabase": {
          "type": "boolean"
        },
        "deleteTimeMachine": {
          "type": "boolean"
        },
        "deleteVm": {
          "type": "boolean"
        },
        "effectiveTimestamp": {
          "type": "string"
        },
        "expireInDays": {
          "type": "integer"
        },
        "expiryDateTimezone": {
          "type": "string"
        },
        "expiryTimestamp": {
          "type": "string"
        },
        "remindBeforeInDays": {
          "type": "integer"
        },
        "userCreated": {
          "type": "boolean"
        }
      },
      "type": "object",
      "required": [
        "deleteDatabase",
        "deleteTimeMachine",
        "deleteVm",
        "effectiveTimestamp",
        "expireInDays",
        "expiryDateTimezone",
        "expiryTimestamp",
        "remindBeforeInDays",
        "userCreated"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getNdbDatabasesDatabaseInstanceLcmConfigPostDeleteCommand:getNdbDatabasesDatabaseInstanceLcmConfigPostDeleteCommand": {
      "properties": {
        "command": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "command"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getNdbDatabasesDatabaseInstanceLcmConfigPreDeleteCommand:getNdbDatabasesDatabaseInstanceLcmConfigPreDeleteCommand": {
      "properties": {
        "command": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "command"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getNdbDatabasesDatabaseInstanceLcmConfigRefreshDetail:getNdbDatabasesDatabaseInstanceLcmConfigRefreshDetail": {
      "properties": {
        "lastRefreshDate": {
          "type": "string"
        },
        "nextRefreshDate": {
          "type": "string"
        },
        "refreshDateTimezone": {
          "type": "string"
        },
        "refreshInDays": {
          "type": "integer"
        },
        "refreshInHours": {
          "type": "integer"
        },
        "refreshInMonths": {
          "type": "integer"
        },
        "refreshTime": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "lastRefreshDate",
        "nextRefreshDate",
        "refreshDateTimezone",
        "refreshInDays",
        "refreshInHours",
        "refreshInMonths",
        "refreshTime"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getNdbDatabasesDatabaseInstanceLinkedDatabase:getNdbDatabasesDatabaseInstanceLinkedDatabase": {
      "properties": {
        "databaseName": {
          "type": "string"
        },
        "databaseStatus": {
          "type": "string"
        },
        "dateCreated": {
          "type": "string"
        },
        "dateModified": {
          "type": "string"
        },
        "description": {
          "type": "string"
        },
        "id": {
          "type": "string"
        },
        "infos": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetNdbDatabasesDatabaseInstanceLinkedDatabaseInfo:getNdbDatabasesDatabaseInstanceLinkedDatabaseInfo"
          }
        },
        "metric": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          }
        },
        "name": {
          "type": "string"
        },
        "parentDatabaseId": {
          "type": "string"
        },
        "parentLinkedDatabaseId": {
          "type": "string"
        },
        "snapshotId": {
          "type": "string"
        },
        "status": {
          "type": "string"
        },
        "timezone": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "databaseName",
        "databaseStatus",
        "dateCreated",
        "dateModified",
        "description",
        "id",
        "infos",
        "metric",
        "name",
        "parentDatabaseId",
        "parentLinkedDatabaseId",
        "snapshotId",
        "status",
        "timezone"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getNdbDatabasesDatabaseInstanceLinkedDatabaseInfo:getNdbDatabasesDatabaseInstanceLinkedDatabaseInfo": {
      "properties": {
        "info": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          }
        },
        "secureInfo": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          }
        }
      },
      "type": "object",
      "required": [
        "info",
        "secureInfo"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getNdbDatabasesDatabaseInstanceMetadata:getNdbDatabasesDatabaseInstanceMetadata": {
      "properties": {
        "baseSizeComputed": {
          "type": "boolean"
        },
        "capabilityResetTime": {
          "type": "string"
        },
        "createdDbservers": {
          "type": "array",
          "items": {
            "type": "string"
          }
        },
        "deregisterInfos": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetNdbDatabasesDatabaseInstanceMetadataDeregisterInfo:getNdbDatabasesDatabaseInstanceMetadataDeregisterInfo"
          }
        },
        "deregisteredWithDeleteTimeMachine": {
          "type": "boolean"
        },
        "info": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          }
        },
        "lastLogCatchupForRestoreOperationId": {
          "type": "string"
        },
        "lastRefreshTimestamp": {
          "type": "string"
        },
        "lastRequestedRefreshTimestamp": {
          "type": "string"
        },
        "logCatchupForRestoreDispatched": {
          "type": "boolean"
        },
        "originalDatabaseName": {
          "type": "string"
        },
        "pitrBased": {
          "type": "boolean"
        },
        "provisionOperationId": {
          "type": "string"
        },
        "refreshBlockerInfo": {
          "type": "string"
        },
        "registeredDbservers": {
          "type": "array",
          "items": {
            "type": "string"
          }
        },
        "secureInfo": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          }
        },
        "sourceSnapshotId": {
          "type": "string"
        },
        "stateBeforeRefresh": {
          "type": "string"
        },
        "stateBeforeRestore": {
          "type": "string"
        },
        "stateBeforeScaling": {
          "type": "string"
        },
        "tmActivateOperationId": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "baseSizeComputed",
        "capabilityResetTime",
        "createdDbservers",
        "deregisterInfos",
        "deregisteredWithDeleteTimeMachine",
        "info",
        "lastLogCatchupForRestoreOperationId",
        "lastRefreshTimestamp",
        "lastRequestedRefreshTimestamp",
        "logCatchupForRestoreDispatched",
        "originalDatabaseName",
        "pitrBased",
        "provisionOperationId",
        "refreshBlockerInfo",
        "registeredDbservers",
        "secureInfo",
        "sourceSnapshotId",
        "stateBeforeRefresh",
        "stateBeforeRestore",
        "stateBeforeScaling",
        "tmActivateOperationId"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getNdbDatabasesDatabaseInstanceMetadataDeregisterInfo:getNdbDatabasesDatabaseInstanceMetadataDeregisterInfo": {
      "properties": {
        "message": {
          "type": "string"
        },
        "operations": {
          "type": "array",
          "items": {
            "type": "string"
          }
        }
      },
      "type": "object",
      "required": [
        "message",
        "operations"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getNdbDatabasesDatabaseInstanceProperty:getNdbDatabasesDatabaseInstanceProperty": {
      "properties": {
        "description": {
          "type": "string"
        },
        "name": {
          "type": "string"
        },
        "refId": {
          "type": "string"
        },
        "secure": {
          "type": "boolean"
        },
        "value": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "description",
        "name",
        "refId",
        "secure",
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getNdbDatabasesDatabaseInstanceTag:getNdbDatabasesDatabaseInstanceTag": {
      "properties": {
        "entityId": {
          "type": "string"
        },
        "entityType": {
          "type": "string"
        },
        "tagId": {
          "type": "string"
        },
        "tagName": {
          "type": "string"
        },
        "value": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "entityId",
        "entityType",
        "tagId",
        "tagName",
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getNdbDatabasesDatabaseInstanceTimeMachine:getNdbDatabasesDatabaseInstanceTimeMachine": {
      "properties": {
        "accessLevel": {
          "type": "string"
        },
        "clone": {
          "type": "boolean"
        },
        "clones": {
          "type": "string"
        },
        "clustered": {
          "type": "boolean"
        },
        "database": {
          "type": "string"
        },
        "databaseId": {
          "type": "string"
        },
        "dateCreated": {
          "type": "string"
        },
        "dateModified": {
          "type": "string"
        },
        "description": {
          "type": "string"
        },
        "eaStatus": {
          "type": "string"
        },
        "id": {
          "type": "string"
        },
        "metric": {
          "type": "string"
        },
        "name": {
          "type": "string"
        },
        "properties": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetNdbDatabasesDatabaseInstanceTimeMachineProperty:getNdbDatabasesDatabaseInstanceTimeMachineProperty"
          },
          "description": "List of all the properties\n"
        },
        "scheduleId": {
          "type": "string"
        },
        "schedules": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetNdbDatabasesDatabaseInstanceTimeMachineSchedule:getNdbDatabasesDatabaseInstanceTimeMachineSchedule"
          }
        },
        "scope": {
          "type": "string"
        },
        "slaId": {
          "type": "string"
        },
        "slaUpdateInProgress": {
          "type": "boolean"
        },
        "slaUpdateMetadata": {
          "type": "string"
        },
        "slas": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetNdbDatabasesDatabaseInstanceTimeMachineSla:getNdbDatabasesDatabaseInstanceTimeMachineSla"
          }
        },
        "sourceNxClusters": {
          "type": "array",
          "items": {
            "type": "string"
          }
        },
        "status": {
          "type": "string"
        },
        "tags": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetNdbDatabasesDatabaseInstanceTimeMachineTag:getNdbDatabasesDatabaseInstanceTimeMachineTag"
          }
        },
        "type": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "accessLevel",
        "clone",
        "clones",
        "clustered",
        "database",
        "databaseId",
        "dateCreated",
        "dateModified",
        "description",
        "eaStatus",
        "id",
        "metric",
        "name",
        "properties",
        "scheduleId",
        "schedules",
        "scope",
        "slaId",
        "slaUpdateInProgress",
        "slaUpdateMetadata",
        "slas",
        "sourceNxClusters",
        "status",
        "tags",
        "type"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getNdbDatabasesDatabaseInstanceTimeMachineProperty:getNdbDatabasesDatabaseInstanceTimeMachineProperty": {
      "properties": {
        "description": {
          "type": "string"
        },
        "name": {
          "type": "string"
        },
        "refId": {
          "type": "string"
        },
        "secure": {
          "type": "boolean"
        },
        "value": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "description",
        "name",
        "refId",
        "secure",
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getNdbDatabasesDatabaseInstanceTimeMachineSchedule:getNdbDatabasesDatabaseInstanceTimeMachineSchedule": {
      "properties": {
        "continuousSchedules": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetNdbDatabasesDatabaseInstanceTimeMachineScheduleContinuousSchedule:getNdbDatabasesDatabaseInstanceTimeMachineScheduleContinuousSchedule"
          }
        },
        "dailySchedules": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetNdbDatabasesDatabaseInstanceTimeMachineScheduleDailySchedule:getNdbDatabasesDatabaseInstanceTimeMachineScheduleDailySchedule"
          }
        },
        "dateCreated": {
          "type": "string"
        },
        "dateModified": {
          "type": "string"
        },
        "description": {
          "type": "string"
        },
        "globalPolicy": {
          "type": "boolean"
        },
        "id": {
          "type": "string"
        },
        "monthlySchedules": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetNdbDatabasesDatabaseInstanceTimeMachineScheduleMonthlySchedule:getNdbDatabasesDatabaseInstanceTimeMachineScheduleMonthlySchedule"
          }
        },
        "name": {
          "type": "string"
        },
        "ownerId": {
          "type": "string"
        },
        "quartelySchedules": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetNdbDatabasesDatabaseInstanceTimeMachineScheduleQuartelySchedule:getNdbDatabasesDatabaseInstanceTimeMachineScheduleQuartelySchedule"
          }
        },
        "referenceCount": {
          "type": "integer"
        },
        "snapshotTimeOfDays": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetNdbDatabasesDatabaseInstanceTimeMachineScheduleSnapshotTimeOfDay:getNdbDatabasesDatabaseInstanceTimeMachineScheduleSnapshotTimeOfDay"
          }
        },
        "startTime": {
          "type": "string"
        },
        "systemPolicy": {
          "type": "boolean"
        },
        "timeZone": {
          "type": "string"
        },
        "uniqueName": {
          "type": "string"
        },
        "weeklySchedules": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetNdbDatabasesDatabaseInstanceTimeMachineScheduleWeeklySchedule:getNdbDatabasesDatabaseInstanceTimeMachineScheduleWeeklySchedule"
          }
        },
        "yearlySchedules": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetNdbDatabasesDatabaseInstanceTimeMachineScheduleYearlySchedule:getNdbDatabasesDatabaseInstanceTimeMachineScheduleYearlySchedule"
          }
        }
      },
      "type": "object",
      "required": [
        "continuousSchedules",
        "dailySchedules",
        "dateCreated",
        "dateModified",
        "description",
        "globalPolicy",
        "id",
        "monthlySchedules",
        "name",
        "ownerId",
        "quartelySchedules",
        "referenceCount",
        "snapshotTimeOfDays",
        "startTime",
        "systemPolicy",
        "timeZone",
        "uniqueName",
        "weeklySchedules",
        "yearlySchedules"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getNdbDatabasesDatabaseInstanceTimeMachineScheduleContinuousSchedule:getNdbDatabasesDatabaseInstanceTimeMachineScheduleContinuousSchedule": {
      "properties": {
        "enabled": {
          "type": "boolean"
        },
        "logBackupInterval": {
          "type": "integer"
        },
        "snapshotsPerDay": {
          "type": "integer"
        }
      },
      "type": "object",
      "required": [
        "enabled",
        "logBackupInterval",
        "snapshotsPerDay"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getNdbDatabasesDatabaseInstanceTimeMachineScheduleDailySchedule:getNdbDatabasesDatabaseInstanceTimeMachineScheduleDailySchedule": {
      "properties": {
        "enabled": {
          "type": "boolean"
        }
      },
      "type": "object",
      "required": [
        "enabled"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getNdbDatabasesDatabaseInstanceTimeMachineScheduleMonthlySchedule:getNdbDatabasesDatabaseInstanceTimeMachineScheduleMonthlySchedule": {
      "properties": {
        "dayOfMonth": {
          "type": "integer"
        },
        "enabled": {
          "type": "boolean"
        }
      },
      "type": "object",
      "required": [
        "dayOfMonth",
        "enabled"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getNdbDatabasesDatabaseInstanceTimeMachineScheduleQuartelySchedule:getNdbDatabasesDatabaseInstanceTimeMachineScheduleQuartelySchedule": {
      "properties": {
        "dayOfMonth": {
          "type": "integer"
        },
        "enabled": {
          "type": "boolean"
        },
        "startMonth": {
          "type": "string"
        },
        "startMonthValue": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "dayOfMonth",
        "enabled",
        "startMonth",
        "startMonthValue"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getNdbDatabasesDatabaseInstanceTimeMachineScheduleSnapshotTimeOfDay:getNdbDatabasesDatabaseInstanceTimeMachineScheduleSnapshotTimeOfDay": {
      "properties": {
        "extra": {
          "type": "boolean"
        },
        "hours": {
          "type": "integer"
        },
        "minutes": {
          "type": "integer"
        },
        "seconds": {
          "type": "integer"
        }
      },
      "type": "object",
      "required": [
        "extra",
        "hours",
        "minutes",
        "seconds"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getNdbDatabasesDatabaseInstanceTimeMachineScheduleWeeklySchedule:getNdbDatabasesDatabaseInstanceTimeMachineScheduleWeeklySchedule": {
      "properties": {
        "dayOfWeek": {
          "type": "string"
        },
        "dayOfWeekValue": {
          "type": "string"
        },
        "enabled": {
          "type": "boolean"
        }
      },
      "type": "object",
      "required": [
        "dayOfWeek",
        "dayOfWeekValue",
        "enabled"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getNdbDatabasesDatabaseInstanceTimeMachineScheduleYearlySchedule:getNdbDatabasesDatabaseInstanceTimeMachineScheduleYearlySchedule": {
      "properties": {
        "dayOfMonth": {
          "type": "integer"
        },
        "enabled": {
          "type": "boolean"
        },
        "month": {
          "type": "string"
        },
        "monthValue": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "dayOfMonth",
        "enabled",
        "month",
        "monthValue"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getNdbDatabasesDatabaseInstanceTimeMachineSla:getNdbDatabasesDatabaseInstanceTimeMachineSla": {
      "properties": {
        "continuousRetention": {
          "type": "integer"
        },
        "currentActiveFrequency": {
          "type": "string"
        },
        "dailyRetention": {
          "type": "integer"
        },
        "dateCreated": {
          "type": "string"
        },
        "dateModified": {
          "type": "string"
        },
        "description": {
          "type": "string"
        },
        "id": {
          "type": "string"
        },
        "monthlyRetention": {
          "type": "integer"
        },
        "name": {
          "type": "string"
        },
        "ownerId": {
          "type": "string"
        },
        "pitrEnabled": {
          "type": "boolean"
        },
        "quarterlyRetention": {
          "type": "integer"
        },
        "referenceCount": {
          "type": "integer"
        },
        "systemSla": {
          "type": "boolean"
        },
        "uniqueName": {
          "type": "string"
        },
        "weeklyRetention": {
          "type": "integer"
        },
        "yearlyRetention": {
          "type": "integer"
        }
      },
      "type": "object",
      "required": [
        "continuousRetention",
        "currentActiveFrequency",
        "dailyRetention",
        "dateCreated",
        "dateModified",
        "description",
        "id",
        "monthlyRetention",
        "name",
        "ownerId",
        "pitrEnabled",
        "quarterlyRetention",
        "referenceCount",
        "systemSla",
        "uniqueName",
        "weeklyRetention",
        "yearlyRetention"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getNdbDatabasesDatabaseInstanceTimeMachineTag:getNdbDatabasesDatabaseInstanceTimeMachineTag": {
      "properties": {
        "entityId": {
          "type": "string"
        },
        "entityType": {
          "type": "string"
        },
        "tagId": {
          "type": "string"
        },
        "tagName": {
          "type": "string"
        },
        "value": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "entityId",
        "entityType",
        "tagId",
        "tagName",
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getNdbDbserverProperty:getNdbDbserverProperty": {
      "properties": {
        "name": {
          "type": "string",
          "description": "name of database server vm\n"
        },
        "value": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "name",
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getNdbDbserverTag:getNdbDbserverTag": {
      "properties": {
        "entityId": {
          "type": "string"
        },
        "entityType": {
          "type": "string"
        },
        "tagId": {
          "type": "string"
        },
        "tagName": {
          "type": "string"
        },
        "value": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "entityId",
        "entityType",
        "tagId",
        "tagName",
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getNdbDbserverVmInfo:getNdbDbserverVmInfo": {
      "properties": {
        "deregisterInfos": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetNdbDbserverVmInfoDeregisterInfo:getNdbDbserverVmInfoDeregisterInfo"
          }
        },
        "distribution": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          }
        },
        "infos": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetNdbDbserverVmInfoInfo:getNdbDbserverVmInfoInfo"
          }
        },
        "networkInfos": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetNdbDbserverVmInfoNetworkInfo:getNdbDbserverVmInfoNetworkInfo"
          }
        },
        "osType": {
          "type": "string"
        },
        "osVersion": {
          "type": "string"
        },
        "secureInfo": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          }
        }
      },
      "type": "object",
      "required": [
        "deregisterInfos",
        "distribution",
        "infos",
        "networkInfos",
        "osType",
        "osVersion",
        "secureInfo"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getNdbDbserverVmInfoDeregisterInfo:getNdbDbserverVmInfoDeregisterInfo": {
      "properties": {
        "message": {
          "type": "string"
        },
        "operations": {
          "type": "array",
          "items": {
            "type": "string"
          }
        }
      },
      "type": "object",
      "required": [
        "message",
        "operations"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getNdbDbserverVmInfoInfo:getNdbDbserverVmInfoInfo": {
      "properties": {
        "bpgConfigs": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetNdbDbserverVmInfoInfoBpgConfig:getNdbDbserverVmInfoInfoBpgConfig"
          }
        },
        "secureInfo": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          }
        }
      },
      "type": "object",
      "required": [
        "bpgConfigs",
        "secureInfo"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getNdbDbserverVmInfoInfoBpgConfig:getNdbDbserverVmInfoInfoBpgConfig": {
      "properties": {
        "bpgDbParams": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetNdbDbserverVmInfoInfoBpgConfigBpgDbParam:getNdbDbserverVmInfoInfoBpgConfigBpgDbParam"
          }
        },
        "storages": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetNdbDbserverVmInfoInfoBpgConfigStorage:getNdbDbserverVmInfoInfoBpgConfigStorage"
          }
        },
        "vmProperties": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetNdbDbserverVmInfoInfoBpgConfigVmProperty:getNdbDbserverVmInfoInfoBpgConfigVmProperty"
          }
        }
      },
      "type": "object",
      "required": [
        "bpgDbParams",
        "storages",
        "vmProperties"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getNdbDbserverVmInfoInfoBpgConfigBpgDbParam:getNdbDbserverVmInfoInfoBpgConfigBpgDbParam": {
      "properties": {
        "effectiveCacheSize": {
          "type": "string"
        },
        "maintenanceWorkMem": {
          "type": "string"
        },
        "maxParallelWorkersPerGather": {
          "type": "string"
        },
        "maxWorkerProcesses": {
          "type": "string"
        },
        "sharedBuffers": {
          "type": "string"
        },
        "workMem": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "effectiveCacheSize",
        "maintenanceWorkMem",
        "maxParallelWorkersPerGather",
        "maxWorkerProcesses",
        "sharedBuffers",
        "workMem"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getNdbDbserverVmInfoInfoBpgConfigStorage:getNdbDbserverVmInfoInfoBpgConfigStorage": {
      "properties": {
        "archiveStorages": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetNdbDbserverVmInfoInfoBpgConfigStorageArchiveStorage:getNdbDbserverVmInfoInfoBpgConfigStorageArchiveStorage"
          }
        },
        "dataDisks": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetNdbDbserverVmInfoInfoBpgConfigStorageDataDisk:getNdbDbserverVmInfoInfoBpgConfigStorageDataDisk"
          }
        },
        "logDisks": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetNdbDbserverVmInfoInfoBpgConfigStorageLogDisk:getNdbDbserverVmInfoInfoBpgConfigStorageLogDisk"
          }
        }
      },
      "type": "object",
      "required": [
        "archiveStorages",
        "dataDisks",
        "logDisks"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getNdbDbserverVmInfoInfoBpgConfigStorageArchiveStorage:getNdbDbserverVmInfoInfoBpgConfigStorageArchiveStorage": {
      "properties": {
        "size": {
          "type": "number"
        }
      },
      "type": "object",
      "required": [
        "size"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getNdbDbserverVmInfoInfoBpgConfigStorageDataDisk:getNdbDbserverVmInfoInfoBpgConfigStorageDataDisk": {
      "properties": {
        "count": {
          "type": "number"
        }
      },
      "type": "object",
      "required": [
        "count"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getNdbDbserverVmInfoInfoBpgConfigStorageLogDisk:getNdbDbserverVmInfoInfoBpgConfigStorageLogDisk": {
      "properties": {
        "count": {
          "type": "number"
        },
        "size": {
          "type": "number"
        }
      },
      "type": "object",
      "required": [
        "count",
        "size"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getNdbDbserverVmInfoInfoBpgConfigVmProperty:getNdbDbserverVmInfoInfoBpgConfigVmProperty": {
      "properties": {
        "dirtyBackgroundRatio": {
          "type": "number"
        },
        "dirtyExpireCentisecs": {
          "type": "number"
        },
        "dirtyRatio": {
          "type": "number"
        },
        "dirtyWritebackCentisecs": {
          "type": "number"
        },
        "nrHugepages": {
          "type": "number"
        },
        "overcommitMemory": {
          "type": "number"
        },
        "swappiness": {
          "type": "number"
        }
      },
      "type": "object",
      "required": [
        "dirtyBackgroundRatio",
        "dirtyExpireCentisecs",
        "dirtyRatio",
        "dirtyWritebackCentisecs",
        "nrHugepages",
        "overcommitMemory",
        "swappiness"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getNdbDbserverVmInfoNetworkInfo:getNdbDbserverVmInfoNetworkInfo": {
      "properties": {
        "accessInfos": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetNdbDbserverVmInfoNetworkInfoAccessInfo:getNdbDbserverVmInfoNetworkInfoAccessInfo"
          }
        },
        "defaultGatewayDevice": {
          "type": "boolean"
        },
        "deviceName": {
          "type": "string"
        },
        "eraConfigured": {
          "type": "boolean"
        },
        "flags": {
          "type": "string"
        },
        "gateway": {
          "type": "string"
        },
        "hostname": {
          "type": "string"
        },
        "ipAddresses": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "IP addresses of the dbserver vm\n"
        },
        "macAddress": {
          "type": "string"
        },
        "mtu": {
          "type": "string"
        },
        "subnetMask": {
          "type": "string"
        },
        "vlanName": {
          "type": "string"
        },
        "vlanType": {
          "type": "string"
        },
        "vlanUuid": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "accessInfos",
        "defaultGatewayDevice",
        "deviceName",
        "eraConfigured",
        "flags",
        "gateway",
        "hostname",
        "ipAddresses",
        "macAddress",
        "mtu",
        "subnetMask",
        "vlanName",
        "vlanType",
        "vlanUuid"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getNdbDbserverVmInfoNetworkInfoAccessInfo:getNdbDbserverVmInfoNetworkInfoAccessInfo": {
      "properties": {
        "accessType": {
          "type": "string"
        },
        "destinationSubnet": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "accessType",
        "destinationSubnet"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getNdbDbserversDbserver:getNdbDbserversDbserver": {
      "properties": {
        "accessKeyId": {
          "type": "string",
          "description": "access key id of dbserver vm\n"
        },
        "accessLevel": {
          "type": "string",
          "description": "access level\n"
        },
        "associatedTimeMachineIds": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "associated time machines ids\n"
        },
        "clientId": {
          "type": "string",
          "description": "client id\n"
        },
        "clustered": {
          "type": "boolean",
          "description": "clustered or not\n"
        },
        "databaseType": {
          "type": "string",
          "description": "database type\n"
        },
        "dateCreated": {
          "type": "string",
          "description": "date created of db server vm\n"
        },
        "dateModified": {
          "type": "string",
          "description": "date modified of db server vm\n"
        },
        "dbserverInvalidEaState": {
          "type": "boolean",
          "description": "dbserver invalid ea state\n"
        },
        "description": {
          "type": "string",
          "description": "description of db server vm\n"
        },
        "eraDriveId": {
          "type": "string",
          "description": "era drive id\n"
        },
        "eraVersion": {
          "type": "string",
          "description": "era version\n"
        },
        "fqdns": {
          "type": "string"
        },
        "id": {
          "type": "string"
        },
        "ipAddresses": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "IP addresses of the dbserver vm\n"
        },
        "isServerDriven": {
          "type": "boolean",
          "description": "is server down or not\n"
        },
        "macAddresses": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "Mac addresses of dbserver vm\n"
        },
        "name": {
          "type": "string",
          "description": "name of dbserver vm\n"
        },
        "properties": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetNdbDbserversDbserverProperty:getNdbDbserversDbserverProperty"
          },
          "description": "properties of db server vm\n"
        },
        "protectionDomainId": {
          "type": "string",
          "description": "protection domain id\n"
        },
        "queryCount": {
          "type": "integer",
          "description": "query count\n"
        },
        "status": {
          "type": "string",
          "description": "Status of Dbserver . Active or not.\n"
        },
        "tags": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetNdbDbserversDbserverTag:getNdbDbserversDbserverTag"
          },
          "description": "tags for db server vm\n"
        },
        "type": {
          "type": "string",
          "description": "Type of entity. i.e. Dbserver\n"
        },
        "validDiagnosticBundleState": {
          "type": "boolean",
          "description": "valid diagnostic bundle state\n"
        },
        "vmClusterUuid": {
          "type": "string",
          "description": "clusetr uuid for dbserver vm\n"
        },
        "vmInfos": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetNdbDbserversDbserverVmInfo:getNdbDbserversDbserverVmInfo"
          },
          "description": "info of dbserver vm\n"
        },
        "vmTimezone": {
          "type": "string",
          "description": "timezone of dbserver vm\n"
        },
        "windowsDbServer": {
          "type": "boolean",
          "description": "window db server\n"
        },
        "workingDirectory": {
          "type": "string",
          "description": "working directory of db server vm\n"
        }
      },
      "type": "object",
      "required": [
        "accessKeyId",
        "accessLevel",
        "associatedTimeMachineIds",
        "clientId",
        "clustered",
        "databaseType",
        "dateCreated",
        "dateModified",
        "dbserverInvalidEaState",
        "description",
        "eraDriveId",
        "eraVersion",
        "fqdns",
        "id",
        "ipAddresses",
        "isServerDriven",
        "macAddresses",
        "name",
        "properties",
        "protectionDomainId",
        "queryCount",
        "status",
        "tags",
        "type",
        "validDiagnosticBundleState",
        "vmClusterUuid",
        "vmInfos",
        "vmTimezone",
        "windowsDbServer",
        "workingDirectory"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getNdbDbserversDbserverProperty:getNdbDbserversDbserverProperty": {
      "properties": {
        "name": {
          "type": "string",
          "description": "name of dbserver vm\n"
        },
        "value": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "name",
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getNdbDbserversDbserverTag:getNdbDbserversDbserverTag": {
      "properties": {
        "entityId": {
          "type": "string"
        },
        "entityType": {
          "type": "string"
        },
        "tagId": {
          "type": "string"
        },
        "tagName": {
          "type": "string"
        },
        "value": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "entityId",
        "entityType",
        "tagId",
        "tagName",
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getNdbDbserversDbserverVmInfo:getNdbDbserversDbserverVmInfo": {
      "properties": {
        "deregisterInfos": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetNdbDbserversDbserverVmInfoDeregisterInfo:getNdbDbserversDbserverVmInfoDeregisterInfo"
          }
        },
        "distribution": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          }
        },
        "infos": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetNdbDbserversDbserverVmInfoInfo:getNdbDbserversDbserverVmInfoInfo"
          }
        },
        "networkInfos": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetNdbDbserversDbserverVmInfoNetworkInfo:getNdbDbserversDbserverVmInfoNetworkInfo"
          }
        },
        "osType": {
          "type": "string"
        },
        "osVersion": {
          "type": "string"
        },
        "secureInfo": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          }
        }
      },
      "type": "object",
      "required": [
        "deregisterInfos",
        "distribution",
        "infos",
        "networkInfos",
        "osType",
        "osVersion",
        "secureInfo"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getNdbDbserversDbserverVmInfoDeregisterInfo:getNdbDbserversDbserverVmInfoDeregisterInfo": {
      "properties": {
        "message": {
          "type": "string"
        },
        "operations": {
          "type": "array",
          "items": {
            "type": "string"
          }
        }
      },
      "type": "object",
      "required": [
        "message",
        "operations"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getNdbDbserversDbserverVmInfoInfo:getNdbDbserversDbserverVmInfoInfo": {
      "properties": {
        "bpgConfigs": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetNdbDbserversDbserverVmInfoInfoBpgConfig:getNdbDbserversDbserverVmInfoInfoBpgConfig"
          }
        },
        "secureInfo": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          }
        }
      },
      "type": "object",
      "required": [
        "bpgConfigs",
        "secureInfo"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getNdbDbserversDbserverVmInfoInfoBpgConfig:getNdbDbserversDbserverVmInfoInfoBpgConfig": {
      "properties": {
        "bpgDbParams": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetNdbDbserversDbserverVmInfoInfoBpgConfigBpgDbParam:getNdbDbserversDbserverVmInfoInfoBpgConfigBpgDbParam"
          }
        },
        "storages": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetNdbDbserversDbserverVmInfoInfoBpgConfigStorage:getNdbDbserversDbserverVmInfoInfoBpgConfigStorage"
          }
        },
        "vmProperties": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetNdbDbserversDbserverVmInfoInfoBpgConfigVmProperty:getNdbDbserversDbserverVmInfoInfoBpgConfigVmProperty"
          }
        }
      },
      "type": "object",
      "required": [
        "bpgDbParams",
        "storages",
        "vmProperties"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getNdbDbserversDbserverVmInfoInfoBpgConfigBpgDbParam:getNdbDbserversDbserverVmInfoInfoBpgConfigBpgDbParam": {
      "properties": {
        "effectiveCacheSize": {
          "type": "string"
        },
        "maintenanceWorkMem": {
          "type": "string"
        },
        "maxParallelWorkersPerGather": {
          "type": "string"
        },
        "maxWorkerProcesses": {
          "type": "string"
        },
        "sharedBuffers": {
          "type": "string"
        },
        "workMem": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "effectiveCacheSize",
        "maintenanceWorkMem",
        "maxParallelWorkersPerGather",
        "maxWorkerProcesses",
        "sharedBuffers",
        "workMem"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getNdbDbserversDbserverVmInfoInfoBpgConfigStorage:getNdbDbserversDbserverVmInfoInfoBpgConfigStorage": {
      "properties": {
        "archiveStorages": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetNdbDbserversDbserverVmInfoInfoBpgConfigStorageArchiveStorage:getNdbDbserversDbserverVmInfoInfoBpgConfigStorageArchiveStorage"
          }
        },
        "dataDisks": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetNdbDbserversDbserverVmInfoInfoBpgConfigStorageDataDisk:getNdbDbserversDbserverVmInfoInfoBpgConfigStorageDataDisk"
          }
        },
        "logDisks": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetNdbDbserversDbserverVmInfoInfoBpgConfigStorageLogDisk:getNdbDbserversDbserverVmInfoInfoBpgConfigStorageLogDisk"
          }
        }
      },
      "type": "object",
      "required": [
        "archiveStorages",
        "dataDisks",
        "logDisks"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getNdbDbserversDbserverVmInfoInfoBpgConfigStorageArchiveStorage:getNdbDbserversDbserverVmInfoInfoBpgConfigStorageArchiveStorage": {
      "properties": {
        "size": {
          "type": "number"
        }
      },
      "type": "object",
      "required": [
        "size"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getNdbDbserversDbserverVmInfoInfoBpgConfigStorageDataDisk:getNdbDbserversDbserverVmInfoInfoBpgConfigStorageDataDisk": {
      "properties": {
        "count": {
          "type": "number"
        }
      },
      "type": "object",
      "required": [
        "count"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getNdbDbserversDbserverVmInfoInfoBpgConfigStorageLogDisk:getNdbDbserversDbserverVmInfoInfoBpgConfigStorageLogDisk": {
      "properties": {
        "count": {
          "type": "number"
        },
        "size": {
          "type": "number"
        }
      },
      "type": "object",
      "required": [
        "count",
        "size"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getNdbDbserversDbserverVmInfoInfoBpgConfigVmProperty:getNdbDbserversDbserverVmInfoInfoBpgConfigVmProperty": {
      "properties": {
        "dirtyBackgroundRatio": {
          "type": "number"
        },
        "dirtyExpireCentisecs": {
          "type": "number"
        },
        "dirtyRatio": {
          "type": "number"
        },
        "dirtyWritebackCentisecs": {
          "type": "number"
        },
        "nrHugepages": {
          "type": "number"
        },
        "overcommitMemory": {
          "type": "number"
        },
        "swappiness": {
          "type": "number"
        }
      },
      "type": "object",
      "required": [
        "dirtyBackgroundRatio",
        "dirtyExpireCentisecs",
        "dirtyRatio",
        "dirtyWritebackCentisecs",
        "nrHugepages",
        "overcommitMemory",
        "swappiness"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getNdbDbserversDbserverVmInfoNetworkInfo:getNdbDbserversDbserverVmInfoNetworkInfo": {
      "properties": {
        "accessInfos": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetNdbDbserversDbserverVmInfoNetworkInfoAccessInfo:getNdbDbserversDbserverVmInfoNetworkInfoAccessInfo"
          }
        },
        "defaultGatewayDevice": {
          "type": "boolean"
        },
        "deviceName": {
          "type": "string"
        },
        "eraConfigured": {
          "type": "boolean"
        },
        "flags": {
          "type": "string"
        },
        "gateway": {
          "type": "string"
        },
        "hostname": {
          "type": "string"
        },
        "ipAddresses": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "IP addresses of the dbserver vm\n"
        },
        "macAddress": {
          "type": "string"
        },
        "mtu": {
          "type": "string"
        },
        "subnetMask": {
          "type": "string"
        },
        "vlanName": {
          "type": "string"
        },
        "vlanType": {
          "type": "string"
        },
        "vlanUuid": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "accessInfos",
        "defaultGatewayDevice",
        "deviceName",
        "eraConfigured",
        "flags",
        "gateway",
        "hostname",
        "ipAddresses",
        "macAddress",
        "mtu",
        "subnetMask",
        "vlanName",
        "vlanType",
        "vlanUuid"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getNdbDbserversDbserverVmInfoNetworkInfoAccessInfo:getNdbDbserversDbserverVmInfoNetworkInfoAccessInfo": {
      "properties": {
        "accessType": {
          "type": "string"
        },
        "destinationSubnet": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "accessType",
        "destinationSubnet"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getNdbMaintenanceWindowEntityTaskAssoc:getNdbMaintenanceWindowEntityTaskAssoc": {
      "properties": {
        "accessLevel": {
          "type": "string",
          "description": "access level\n"
        },
        "dateCreated": {
          "type": "string",
          "description": "created date of maintenance window\n"
        },
        "dateModified": {
          "type": "string",
          "description": "modified date of maintenance window\n"
        },
        "description": {
          "type": "string",
          "description": "description of maintenance window\n"
        },
        "entity": {
          "type": "string"
        },
        "entityId": {
          "type": "string"
        },
        "entityType": {
          "type": "string"
        },
        "id": {
          "type": "string",
          "description": "Maintenance window id.\n"
        },
        "maintenanceWindowId": {
          "type": "string"
        },
        "maintenanceWindowOwnerId": {
          "type": "string"
        },
        "name": {
          "type": "string",
          "description": "name of maintenance window\n"
        },
        "ownerId": {
          "type": "string",
          "description": "owner id of maintenance window\n"
        },
        "payloads": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetNdbMaintenanceWindowEntityTaskAssocPayload:getNdbMaintenanceWindowEntityTaskAssocPayload"
          }
        },
        "properties": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetNdbMaintenanceWindowEntityTaskAssocProperty:getNdbMaintenanceWindowEntityTaskAssocProperty"
          },
          "description": "properties of maintenance window\n"
        },
        "status": {
          "type": "string",
          "description": "status of maintennace window\n"
        },
        "tags": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetNdbMaintenanceWindowEntityTaskAssocTag:getNdbMaintenanceWindowEntityTaskAssocTag"
          },
          "description": "tags of maintenance window\n"
        },
        "taskType": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "accessLevel",
        "dateCreated",
        "dateModified",
        "description",
        "entity",
        "entityId",
        "entityType",
        "id",
        "maintenanceWindowId",
        "maintenanceWindowOwnerId",
        "name",
        "ownerId",
        "payloads",
        "properties",
        "status",
        "tags",
        "taskType"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getNdbMaintenanceWindowEntityTaskAssocPayload:getNdbMaintenanceWindowEntityTaskAssocPayload": {
      "properties": {
        "prePostCommands": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetNdbMaintenanceWindowEntityTaskAssocPayloadPrePostCommand:getNdbMaintenanceWindowEntityTaskAssocPayloadPrePostCommand"
          }
        }
      },
      "type": "object",
      "required": [
        "prePostCommands"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getNdbMaintenanceWindowEntityTaskAssocPayloadPrePostCommand:getNdbMaintenanceWindowEntityTaskAssocPayloadPrePostCommand": {
      "properties": {
        "postCommand": {
          "type": "string"
        },
        "preCommand": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "postCommand",
        "preCommand"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getNdbMaintenanceWindowEntityTaskAssocProperty:getNdbMaintenanceWindowEntityTaskAssocProperty": {
      "properties": {
        "name": {
          "type": "string",
          "description": "name of maintenance window\n"
        },
        "value": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "name",
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getNdbMaintenanceWindowEntityTaskAssocTag:getNdbMaintenanceWindowEntityTaskAssocTag": {
      "properties": {
        "entityId": {
          "type": "string"
        },
        "entityType": {
          "type": "string"
        },
        "tagId": {
          "type": "string"
        },
        "tagName": {
          "type": "string"
        },
        "value": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "entityId",
        "entityType",
        "tagId",
        "tagName",
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getNdbMaintenanceWindowProperty:getNdbMaintenanceWindowProperty": {
      "properties": {
        "name": {
          "type": "string",
          "description": "name of maintenance window\n"
        },
        "value": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "name",
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getNdbMaintenanceWindowSchedule:getNdbMaintenanceWindowSchedule": {
      "properties": {
        "dayOfWeek": {
          "type": "string"
        },
        "duration": {
          "type": "integer"
        },
        "hour": {
          "type": "integer"
        },
        "minute": {
          "type": "integer"
        },
        "recurrence": {
          "type": "string"
        },
        "startTime": {
          "type": "string"
        },
        "threshold": {
          "type": "string"
        },
        "timezone": {
          "type": "string",
          "description": "timezone\n"
        },
        "weekOfMonth": {
          "type": "integer"
        }
      },
      "type": "object",
      "required": [
        "dayOfWeek",
        "duration",
        "hour",
        "minute",
        "recurrence",
        "threshold",
        "timezone",
        "weekOfMonth"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getNdbMaintenanceWindowTag:getNdbMaintenanceWindowTag": {
      "properties": {
        "entityId": {
          "type": "string"
        },
        "entityType": {
          "type": "string"
        },
        "tagId": {
          "type": "string"
        },
        "tagName": {
          "type": "string"
        },
        "value": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "entityId",
        "entityType",
        "tagId",
        "tagName",
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getNdbMaintenanceWindowsMaintenanceWindow:getNdbMaintenanceWindowsMaintenanceWindow": {
      "properties": {
        "accessLevel": {
          "type": "string",
          "description": "access level\n"
        },
        "dateCreated": {
          "type": "string",
          "description": "created date of maintenance window\n"
        },
        "dateModified": {
          "type": "string",
          "description": "modified date of maintenance window\n"
        },
        "description": {
          "type": "string",
          "description": "description of maintenance window\n"
        },
        "entityTaskAssocs": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetNdbMaintenanceWindowsMaintenanceWindowEntityTaskAssoc:getNdbMaintenanceWindowsMaintenanceWindowEntityTaskAssoc"
          },
          "description": "entity task association for maintenance window\n"
        },
        "id": {
          "type": "string"
        },
        "name": {
          "type": "string",
          "description": "name of maintenance window\n"
        },
        "nextRunTime": {
          "type": "string",
          "description": "next run time for maintenance window to trigger\n"
        },
        "ownerId": {
          "type": "string",
          "description": "owner id of maintenance window\n"
        },
        "properties": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetNdbMaintenanceWindowsMaintenanceWindowProperty:getNdbMaintenanceWindowsMaintenanceWindowProperty"
          },
          "description": "properties of maintenance window\n"
        },
        "schedules": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetNdbMaintenanceWindowsMaintenanceWindowSchedule:getNdbMaintenanceWindowsMaintenanceWindowSchedule"
          },
          "description": "schedule of maintenance window\n"
        },
        "status": {
          "type": "string",
          "description": "status of maintennace window\n"
        },
        "tags": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetNdbMaintenanceWindowsMaintenanceWindowTag:getNdbMaintenanceWindowsMaintenanceWindowTag"
          },
          "description": "tags of maintenance window\n"
        },
        "timezone": {
          "type": "string",
          "description": "timezone\n"
        }
      },
      "type": "object",
      "required": [
        "accessLevel",
        "dateCreated",
        "dateModified",
        "description",
        "entityTaskAssocs",
        "id",
        "name",
        "nextRunTime",
        "ownerId",
        "properties",
        "schedules",
        "status",
        "tags",
        "timezone"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getNdbMaintenanceWindowsMaintenanceWindowEntityTaskAssoc:getNdbMaintenanceWindowsMaintenanceWindowEntityTaskAssoc": {
      "properties": {
        "accessLevel": {
          "type": "string",
          "description": "access level\n"
        },
        "dateCreated": {
          "type": "string",
          "description": "created date of maintenance window\n"
        },
        "dateModified": {
          "type": "string",
          "description": "modified date of maintenance window\n"
        },
        "description": {
          "type": "string",
          "description": "description of maintenance window\n"
        },
        "entity": {
          "type": "string"
        },
        "entityId": {
          "type": "string"
        },
        "entityType": {
          "type": "string"
        },
        "id": {
          "type": "string"
        },
        "maintenanceWindowId": {
          "type": "string"
        },
        "maintenanceWindowOwnerId": {
          "type": "string"
        },
        "name": {
          "type": "string",
          "description": "name of maintenance window\n"
        },
        "ownerId": {
          "type": "string",
          "description": "owner id of maintenance window\n"
        },
        "payloads": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetNdbMaintenanceWindowsMaintenanceWindowEntityTaskAssocPayload:getNdbMaintenanceWindowsMaintenanceWindowEntityTaskAssocPayload"
          }
        },
        "properties": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetNdbMaintenanceWindowsMaintenanceWindowEntityTaskAssocProperty:getNdbMaintenanceWindowsMaintenanceWindowEntityTaskAssocProperty"
          },
          "description": "properties of maintenance window\n"
        },
        "status": {
          "type": "string",
          "description": "status of maintennace window\n"
        },
        "tags": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetNdbMaintenanceWindowsMaintenanceWindowEntityTaskAssocTag:getNdbMaintenanceWindowsMaintenanceWindowEntityTaskAssocTag"
          },
          "description": "tags of maintenance window\n"
        },
        "taskType": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "accessLevel",
        "dateCreated",
        "dateModified",
        "description",
        "entity",
        "entityId",
        "entityType",
        "id",
        "maintenanceWindowId",
        "maintenanceWindowOwnerId",
        "name",
        "ownerId",
        "payloads",
        "properties",
        "status",
        "tags",
        "taskType"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getNdbMaintenanceWindowsMaintenanceWindowEntityTaskAssocPayload:getNdbMaintenanceWindowsMaintenanceWindowEntityTaskAssocPayload": {
      "properties": {
        "prePostCommands": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetNdbMaintenanceWindowsMaintenanceWindowEntityTaskAssocPayloadPrePostCommand:getNdbMaintenanceWindowsMaintenanceWindowEntityTaskAssocPayloadPrePostCommand"
          }
        }
      },
      "type": "object",
      "required": [
        "prePostCommands"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getNdbMaintenanceWindowsMaintenanceWindowEntityTaskAssocPayloadPrePostCommand:getNdbMaintenanceWindowsMaintenanceWindowEntityTaskAssocPayloadPrePostCommand": {
      "properties": {
        "postCommand": {
          "type": "string"
        },
        "preCommand": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "postCommand",
        "preCommand"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getNdbMaintenanceWindowsMaintenanceWindowEntityTaskAssocProperty:getNdbMaintenanceWindowsMaintenanceWindowEntityTaskAssocProperty": {
      "properties": {
        "name": {
          "type": "string",
          "description": "name of maintenance window\n"
        },
        "value": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "name",
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getNdbMaintenanceWindowsMaintenanceWindowEntityTaskAssocTag:getNdbMaintenanceWindowsMaintenanceWindowEntityTaskAssocTag": {
      "properties": {
        "entityId": {
          "type": "string"
        },
        "entityType": {
          "type": "string"
        },
        "tagId": {
          "type": "string"
        },
        "tagName": {
          "type": "string"
        },
        "value": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "entityId",
        "entityType",
        "tagId",
        "tagName",
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getNdbMaintenanceWindowsMaintenanceWindowProperty:getNdbMaintenanceWindowsMaintenanceWindowProperty": {
      "properties": {
        "name": {
          "type": "string",
          "description": "name of maintenance window\n"
        },
        "value": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "name",
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getNdbMaintenanceWindowsMaintenanceWindowSchedule:getNdbMaintenanceWindowsMaintenanceWindowSchedule": {
      "properties": {
        "dayOfWeek": {
          "type": "string"
        },
        "duration": {
          "type": "integer"
        },
        "hour": {
          "type": "integer"
        },
        "minute": {
          "type": "integer"
        },
        "recurrence": {
          "type": "string"
        },
        "startTime": {
          "type": "string"
        },
        "threshold": {
          "type": "string"
        },
        "timezone": {
          "type": "string",
          "description": "timezone\n"
        },
        "weekOfMonth": {
          "type": "integer"
        }
      },
      "type": "object",
      "required": [
        "dayOfWeek",
        "duration",
        "hour",
        "minute",
        "recurrence",
        "threshold",
        "timezone",
        "weekOfMonth"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getNdbMaintenanceWindowsMaintenanceWindowTag:getNdbMaintenanceWindowsMaintenanceWindowTag": {
      "properties": {
        "entityId": {
          "type": "string"
        },
        "entityType": {
          "type": "string"
        },
        "tagId": {
          "type": "string"
        },
        "tagName": {
          "type": "string"
        },
        "value": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "entityId",
        "entityType",
        "tagId",
        "tagName",
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getNdbNetworkAvailableIpsAvailableIp:getNdbNetworkAvailableIpsAvailableIp": {
      "properties": {
        "clusterId": {
          "type": "string",
          "description": "cluster id\n"
        },
        "clusterName": {
          "type": "string",
          "description": "cluster name\n"
        },
        "id": {
          "type": "string",
          "description": "network profile id\n"
        },
        "ipAddresses": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "list of available ips in network\n"
        },
        "managed": {
          "type": "boolean",
          "description": "managed by ndb or not\n"
        },
        "name": {
          "type": "string",
          "description": "Network Name\n"
        },
        "propertyName": {
          "type": "string",
          "description": "property name of vlan\n"
        },
        "type": {
          "type": "string",
          "description": "type of network\n"
        }
      },
      "type": "object",
      "required": [
        "clusterId",
        "clusterName",
        "id",
        "ipAddresses",
        "managed",
        "name",
        "propertyName",
        "type"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getNdbNetworkIpAddress:getNdbNetworkIpAddress": {
      "properties": {
        "dbserverId": {
          "type": "string",
          "description": "dbserver id\n"
        },
        "dbserverName": {
          "type": "string",
          "description": "dbserver name\n"
        },
        "ip": {
          "type": "string",
          "description": "ip of pool\n"
        },
        "status": {
          "type": "string",
          "description": "ip status\n"
        }
      },
      "type": "object",
      "required": [
        "dbserverId",
        "dbserverName",
        "ip",
        "status"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getNdbNetworkIpPool:getNdbNetworkIpPool": {
      "properties": {
        "addresses": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetNdbNetworkIpPoolAddress:getNdbNetworkIpPoolAddress"
          },
          "description": "address of ips ranges\n"
        },
        "endIp": {
          "type": "string",
          "description": "end ip\n"
        },
        "startIp": {
          "type": "string",
          "description": "start ip\n"
        }
      },
      "type": "object",
      "required": [
        "addresses",
        "endIp",
        "startIp"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getNdbNetworkIpPoolAddress:getNdbNetworkIpPoolAddress": {
      "properties": {
        "ip": {
          "type": "string",
          "description": "ip of pool\n"
        },
        "status": {
          "type": "string",
          "description": "ip status\n"
        }
      },
      "type": "object",
      "required": [
        "ip",
        "status"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getNdbNetworkPropertiesMap:getNdbNetworkPropertiesMap": {
      "properties": {
        "vlanGateway": {
          "type": "string",
          "description": "gateway of vlan\n"
        },
        "vlanPrimaryDns": {
          "type": "string",
          "description": "primary dns of vlan\n"
        },
        "vlanSecondaryDns": {
          "type": "string",
          "description": "secondary dns of vlan\n"
        },
        "vlanSubnetMask": {
          "type": "string",
          "description": "subnet mask of vlan\n"
        }
      },
      "type": "object",
      "required": [
        "vlanGateway",
        "vlanPrimaryDns",
        "vlanSecondaryDns",
        "vlanSubnetMask"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getNdbNetworkProperty:getNdbNetworkProperty": {
      "properties": {
        "name": {
          "type": "string",
          "description": "name of network\n"
        },
        "secure": {
          "type": "boolean"
        },
        "value": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "name",
        "secure",
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getNdbNetworksNetwork:getNdbNetworksNetwork": {
      "properties": {
        "clusterId": {
          "type": "string",
          "description": "cluster id where network is present\n"
        },
        "id": {
          "type": "string",
          "description": "network id\n"
        },
        "ipAddresses": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetNdbNetworksNetworkIpAddress:getNdbNetworksNetworkIpAddress"
          },
          "description": "IP addresses of network\n"
        },
        "ipPools": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetNdbNetworksNetworkIpPool:getNdbNetworksNetworkIpPool"
          },
          "description": "IP Pools of network\n"
        },
        "managed": {
          "type": "boolean",
          "description": "network managed by NDB or not\n"
        },
        "name": {
          "type": "string",
          "description": "network name\n"
        },
        "properties": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetNdbNetworksNetworkProperty:getNdbNetworksNetworkProperty"
          },
          "description": "properties of network\n"
        },
        "propertiesMaps": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetNdbNetworksNetworkPropertiesMap:getNdbNetworksNetworkPropertiesMap"
          },
          "description": "properties map of network\n"
        },
        "stretchedVlanId": {
          "type": "string",
          "description": "stretched vlan id\n"
        },
        "type": {
          "type": "string",
          "description": "type of network\n"
        }
      },
      "type": "object",
      "required": [
        "clusterId",
        "id",
        "ipAddresses",
        "ipPools",
        "managed",
        "name",
        "properties",
        "propertiesMaps",
        "stretchedVlanId",
        "type"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getNdbNetworksNetworkIpAddress:getNdbNetworksNetworkIpAddress": {
      "properties": {
        "dbserverId": {
          "type": "string",
          "description": "dbserver id\n"
        },
        "dbserverName": {
          "type": "string",
          "description": "dbserver name\n"
        },
        "ip": {
          "type": "string",
          "description": "ip of pool\n"
        },
        "status": {
          "type": "string",
          "description": "ip status\n"
        }
      },
      "type": "object",
      "required": [
        "dbserverId",
        "dbserverName",
        "ip",
        "status"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getNdbNetworksNetworkIpPool:getNdbNetworksNetworkIpPool": {
      "properties": {
        "addresses": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetNdbNetworksNetworkIpPoolAddress:getNdbNetworksNetworkIpPoolAddress"
          },
          "description": "address of ips ranges\n"
        },
        "endIp": {
          "type": "string",
          "description": "end ip\n"
        },
        "startIp": {
          "type": "string",
          "description": "start ip\n"
        }
      },
      "type": "object",
      "required": [
        "addresses",
        "endIp",
        "startIp"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getNdbNetworksNetworkIpPoolAddress:getNdbNetworksNetworkIpPoolAddress": {
      "properties": {
        "ip": {
          "type": "string",
          "description": "ip of pool\n"
        },
        "status": {
          "type": "string",
          "description": "ip status\n"
        }
      },
      "type": "object",
      "required": [
        "ip",
        "status"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getNdbNetworksNetworkPropertiesMap:getNdbNetworksNetworkPropertiesMap": {
      "properties": {
        "vlanGateway": {
          "type": "string",
          "description": "gateway of vlan\n"
        },
        "vlanPrimaryDns": {
          "type": "string",
          "description": "primary dns of vlan\n"
        },
        "vlanSecondaryDns": {
          "type": "string",
          "description": "secondary dns of vlan\n"
        },
        "vlanSubnetMask": {
          "type": "string",
          "description": "subnet mask of vlan\n"
        }
      },
      "type": "object",
      "required": [
        "vlanGateway",
        "vlanPrimaryDns",
        "vlanSecondaryDns",
        "vlanSubnetMask"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getNdbNetworksNetworkProperty:getNdbNetworksNetworkProperty": {
      "properties": {
        "name": {
          "type": "string",
          "description": "network name\n"
        },
        "secure": {
          "type": "boolean"
        },
        "value": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "name",
        "secure",
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getNdbProfileClusterAvailability:getNdbProfileClusterAvailability": {
      "properties": {
        "dateCreated": {
          "type": "string"
        },
        "dateModified": {
          "type": "string"
        },
        "nxClusterId": {
          "type": "string",
          "description": "- era cluster ID\n"
        },
        "ownerId": {
          "type": "string"
        },
        "profileId": {
          "type": "string",
          "description": "Profile ID for query\n"
        },
        "status": {
          "type": "string",
          "description": "- status of profile\n"
        }
      },
      "type": "object",
      "required": [
        "dateCreated",
        "dateModified",
        "nxClusterId",
        "ownerId",
        "profileId",
        "status"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getNdbProfileVersion:getNdbProfileVersion": {
      "properties": {
        "dbVersion": {
          "type": "string",
          "description": "- database version\n"
        },
        "deprecated": {
          "type": "boolean"
        },
        "description": {
          "type": "string",
          "description": "- description of profile\n"
        },
        "engineType": {
          "type": "string",
          "description": "- database engine type\n"
        },
        "id": {
          "type": "string",
          "description": "- id of profile\n"
        },
        "name": {
          "type": "string",
          "description": "- profile name\n"
        },
        "owner": {
          "type": "string",
          "description": "- owner name\n"
        },
        "profileId": {
          "type": "string",
          "description": "Profile ID for query\n"
        },
        "properties": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetNdbProfileVersionProperty:getNdbProfileVersionProperty"
          }
        },
        "propertiesMap": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          }
        },
        "published": {
          "type": "boolean"
        },
        "status": {
          "type": "string",
          "description": "- status of profile\n"
        },
        "systemProfile": {
          "type": "boolean",
          "description": "- if system profile or not\n"
        },
        "topology": {
          "type": "string",
          "description": "- topology\n"
        },
        "type": {
          "type": "string"
        },
        "version": {
          "type": "string"
        },
        "versionClusterAssociations": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetNdbProfileVersionVersionClusterAssociation:getNdbProfileVersionVersionClusterAssociation"
          }
        }
      },
      "type": "object",
      "required": [
        "dbVersion",
        "deprecated",
        "description",
        "engineType",
        "id",
        "name",
        "owner",
        "profileId",
        "properties",
        "propertiesMap",
        "published",
        "status",
        "systemProfile",
        "topology",
        "type",
        "version",
        "versionClusterAssociations"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getNdbProfileVersionProperty:getNdbProfileVersionProperty": {
      "properties": {
        "name": {
          "type": "string",
          "description": "- profile name\n"
        },
        "secure": {
          "type": "boolean"
        },
        "value": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "name",
        "secure",
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getNdbProfileVersionVersionClusterAssociation:getNdbProfileVersionVersionClusterAssociation": {
      "properties": {
        "dateCreated": {
          "type": "string"
        },
        "dateModified": {
          "type": "string"
        },
        "nxClusterId": {
          "type": "string",
          "description": "- era cluster ID\n"
        },
        "optimizedForProvisioning": {
          "type": "boolean"
        },
        "ownerId": {
          "type": "string"
        },
        "profileVersionId": {
          "type": "string"
        },
        "properties": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetNdbProfileVersionVersionClusterAssociationProperty:getNdbProfileVersionVersionClusterAssociationProperty"
          }
        },
        "status": {
          "type": "string",
          "description": "- status of profile\n"
        }
      },
      "type": "object",
      "required": [
        "dateCreated",
        "dateModified",
        "nxClusterId",
        "optimizedForProvisioning",
        "ownerId",
        "profileVersionId",
        "properties",
        "status"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getNdbProfileVersionVersionClusterAssociationProperty:getNdbProfileVersionVersionClusterAssociationProperty": {
      "properties": {
        "name": {
          "type": "string",
          "description": "- profile name\n"
        },
        "secure": {
          "type": "boolean"
        },
        "value": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "name",
        "secure",
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getNdbProfilesProfile:getNdbProfilesProfile": {
      "properties": {
        "assocDatabases": {
          "type": "array",
          "items": {
            "type": "string"
          }
        },
        "assocDbServers": {
          "type": "array",
          "items": {
            "type": "string"
          }
        },
        "clusterAvailabilities": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetNdbProfilesProfileClusterAvailability:getNdbProfilesProfileClusterAvailability"
          }
        },
        "dbVersion": {
          "type": "string"
        },
        "description": {
          "type": "string"
        },
        "engineType": {
          "type": "string"
        },
        "id": {
          "type": "string"
        },
        "latestVersion": {
          "type": "string"
        },
        "latestVersionId": {
          "type": "string"
        },
        "name": {
          "type": "string"
        },
        "nxClusterId": {
          "type": "string"
        },
        "owner": {
          "type": "string"
        },
        "status": {
          "type": "string"
        },
        "systemProfile": {
          "type": "boolean"
        },
        "topology": {
          "type": "string"
        },
        "type": {
          "type": "string"
        },
        "versions": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetNdbProfilesProfileVersion:getNdbProfilesProfileVersion"
          }
        }
      },
      "type": "object",
      "required": [
        "assocDatabases",
        "assocDbServers",
        "clusterAvailabilities",
        "dbVersion",
        "description",
        "engineType",
        "id",
        "latestVersion",
        "latestVersionId",
        "name",
        "nxClusterId",
        "owner",
        "status",
        "systemProfile",
        "topology",
        "type",
        "versions"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getNdbProfilesProfileClusterAvailability:getNdbProfilesProfileClusterAvailability": {
      "properties": {
        "dateCreated": {
          "type": "string"
        },
        "dateModified": {
          "type": "string"
        },
        "nxClusterId": {
          "type": "string"
        },
        "ownerId": {
          "type": "string"
        },
        "profileId": {
          "type": "string"
        },
        "status": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "dateCreated",
        "dateModified",
        "nxClusterId",
        "ownerId",
        "profileId",
        "status"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getNdbProfilesProfileVersion:getNdbProfilesProfileVersion": {
      "properties": {
        "dbVersion": {
          "type": "string"
        },
        "deprecated": {
          "type": "boolean"
        },
        "description": {
          "type": "string"
        },
        "engineType": {
          "type": "string"
        },
        "id": {
          "type": "string"
        },
        "name": {
          "type": "string"
        },
        "owner": {
          "type": "string"
        },
        "profileId": {
          "type": "string"
        },
        "properties": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetNdbProfilesProfileVersionProperty:getNdbProfilesProfileVersionProperty"
          }
        },
        "propertiesMap": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          }
        },
        "published": {
          "type": "boolean"
        },
        "status": {
          "type": "string"
        },
        "systemProfile": {
          "type": "boolean"
        },
        "topology": {
          "type": "string"
        },
        "type": {
          "type": "string"
        },
        "version": {
          "type": "string"
        },
        "versionClusterAssociations": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetNdbProfilesProfileVersionVersionClusterAssociation:getNdbProfilesProfileVersionVersionClusterAssociation"
          }
        }
      },
      "type": "object",
      "required": [
        "dbVersion",
        "deprecated",
        "description",
        "engineType",
        "id",
        "name",
        "owner",
        "profileId",
        "properties",
        "propertiesMap",
        "published",
        "status",
        "systemProfile",
        "topology",
        "type",
        "version",
        "versionClusterAssociations"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getNdbProfilesProfileVersionProperty:getNdbProfilesProfileVersionProperty": {
      "properties": {
        "name": {
          "type": "string"
        },
        "secure": {
          "type": "boolean"
        },
        "value": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "name",
        "secure",
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getNdbProfilesProfileVersionVersionClusterAssociation:getNdbProfilesProfileVersionVersionClusterAssociation": {
      "properties": {
        "dateCreated": {
          "type": "string"
        },
        "dateModified": {
          "type": "string"
        },
        "nxClusterId": {
          "type": "string"
        },
        "optimizedForProvisioning": {
          "type": "boolean"
        },
        "ownerId": {
          "type": "string"
        },
        "profileVersionId": {
          "type": "string"
        },
        "properties": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetNdbProfilesProfileVersionVersionClusterAssociationProperty:getNdbProfilesProfileVersionVersionClusterAssociationProperty"
          }
        },
        "status": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "dateCreated",
        "dateModified",
        "nxClusterId",
        "optimizedForProvisioning",
        "ownerId",
        "profileVersionId",
        "properties",
        "status"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getNdbProfilesProfileVersionVersionClusterAssociationProperty:getNdbProfilesProfileVersionVersionClusterAssociationProperty": {
      "properties": {
        "name": {
          "type": "string"
        },
        "secure": {
          "type": "boolean"
        },
        "value": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "name",
        "secure",
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getNdbSlasSla:getNdbSlasSla": {
      "properties": {
        "continuousRetention": {
          "type": "integer",
          "description": "- continuous retention of logs limit\n"
        },
        "currentActiveFrequency": {
          "type": "string",
          "description": "- Current active frequency\n"
        },
        "dailyRetention": {
          "type": "integer",
          "description": "- Daily snapshots retention limit\n"
        },
        "dateCreated": {
          "type": "string",
          "description": "- creation date\n"
        },
        "dateModified": {
          "type": "string",
          "description": "- last modified\n"
        },
        "description": {
          "type": "string",
          "description": "- description of sla\n"
        },
        "id": {
          "type": "string",
          "description": "- ID of sla\n"
        },
        "monthlyRetention": {
          "type": "integer",
          "description": "- Monthly snapshots retention limit\n"
        },
        "name": {
          "type": "string",
          "description": "- sla name\n"
        },
        "ownerId": {
          "type": "string",
          "description": "- owner ID\n"
        },
        "pitrEnabled": {
          "type": "boolean",
          "description": "- If point in time recovery enabled\n"
        },
        "quartelyRetention": {
          "type": "integer",
          "description": "- Daily snapshots retention limit\n"
        },
        "referenceCount": {
          "type": "integer",
          "description": "- Reference count\n"
        },
        "systemSla": {
          "type": "boolean",
          "description": "- if system sla\n"
        },
        "uniqueName": {
          "type": "string",
          "description": "- unique name\n"
        },
        "weeklyRetention": {
          "type": "integer",
          "description": "- weeky snapshots retention limit\n"
        },
        "yearlyRetention": {
          "type": "integer",
          "description": "- Yearly snapshots retention limit\n"
        }
      },
      "type": "object",
      "required": [
        "continuousRetention",
        "currentActiveFrequency",
        "dailyRetention",
        "dateCreated",
        "dateModified",
        "description",
        "id",
        "monthlyRetention",
        "name",
        "ownerId",
        "pitrEnabled",
        "quartelyRetention",
        "referenceCount",
        "systemSla",
        "uniqueName",
        "weeklyRetention",
        "yearlyRetention"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getNdbSnapshotFilter:getNdbSnapshotFilter": {
      "properties": {
        "loadReplicatedChildSnapshots": {
          "type": "string",
          "description": "load child snapshots. Default is false\n"
        },
        "timezone": {
          "type": "string",
          "description": "Default is UTC\n"
        }
      },
      "type": "object"
    },
    "nutanix:index/getNdbSnapshotLcmConfig:getNdbSnapshotLcmConfig": {
      "properties": {
        "expiryDetails": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetNdbSnapshotLcmConfigExpiryDetail:getNdbSnapshotLcmConfigExpiryDetail"
          }
        },
        "postDeleteCommands": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetNdbSnapshotLcmConfigPostDeleteCommand:getNdbSnapshotLcmConfigPostDeleteCommand"
          }
        },
        "preDeleteCommands": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetNdbSnapshotLcmConfigPreDeleteCommand:getNdbSnapshotLcmConfigPreDeleteCommand"
          }
        },
        "refreshDetails": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetNdbSnapshotLcmConfigRefreshDetail:getNdbSnapshotLcmConfigRefreshDetail"
          }
        }
      },
      "type": "object",
      "required": [
        "expiryDetails",
        "postDeleteCommands",
        "preDeleteCommands",
        "refreshDetails"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getNdbSnapshotLcmConfigExpiryDetail:getNdbSnapshotLcmConfigExpiryDetail": {
      "properties": {
        "deleteDatabase": {
          "type": "boolean"
        },
        "deleteTimeMachine": {
          "type": "boolean"
        },
        "deleteVm": {
          "type": "boolean"
        },
        "effectiveTimestamp": {
          "type": "string"
        },
        "expireInDays": {
          "type": "integer"
        },
        "expiryDateTimezone": {
          "type": "string"
        },
        "expiryTimestamp": {
          "type": "string"
        },
        "remindBeforeInDays": {
          "type": "integer"
        },
        "userCreated": {
          "type": "boolean"
        }
      },
      "type": "object",
      "required": [
        "deleteDatabase",
        "deleteTimeMachine",
        "deleteVm",
        "effectiveTimestamp",
        "expireInDays",
        "expiryDateTimezone",
        "expiryTimestamp",
        "remindBeforeInDays",
        "userCreated"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getNdbSnapshotLcmConfigPostDeleteCommand:getNdbSnapshotLcmConfigPostDeleteCommand": {
      "properties": {
        "command": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "command"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getNdbSnapshotLcmConfigPreDeleteCommand:getNdbSnapshotLcmConfigPreDeleteCommand": {
      "properties": {
        "command": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "command"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getNdbSnapshotLcmConfigRefreshDetail:getNdbSnapshotLcmConfigRefreshDetail": {
      "properties": {
        "lastRefreshDate": {
          "type": "string"
        },
        "nextRefreshDate": {
          "type": "string"
        },
        "refreshDateTimezone": {
          "type": "string"
        },
        "refreshInDays": {
          "type": "integer"
        },
        "refreshInHours": {
          "type": "integer"
        },
        "refreshInMonths": {
          "type": "integer"
        },
        "refreshTime": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "lastRefreshDate",
        "nextRefreshDate",
        "refreshDateTimezone",
        "refreshInDays",
        "refreshInHours",
        "refreshInMonths",
        "refreshTime"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getNdbSnapshotProperty:getNdbSnapshotProperty": {
      "properties": {
        "description": {
          "type": "string",
          "description": "description of snapshot\n"
        },
        "name": {
          "type": "string"
        },
        "refId": {
          "type": "string"
        },
        "secure": {
          "type": "boolean"
        },
        "value": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "description",
        "name",
        "refId",
        "secure",
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getNdbSnapshotTag:getNdbSnapshotTag": {
      "properties": {
        "entityId": {
          "type": "string"
        },
        "entityType": {
          "type": "string"
        },
        "tagId": {
          "type": "string"
        },
        "tagName": {
          "type": "string"
        },
        "value": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "entityId",
        "entityType",
        "tagId",
        "tagName",
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getNdbSnapshotsFilter:getNdbSnapshotsFilter": {
      "properties": {
        "timeMachineId": {
          "type": "string",
          "description": "Fetches all the snapshots for a given time machine\n"
        }
      },
      "type": "object"
    },
    "nutanix:index/getNdbSnapshotsSnapshot:getNdbSnapshotsSnapshot": {
      "properties": {
        "appInfoVersion": {
          "type": "string"
        },
        "applicableTypes": {
          "type": "array",
          "items": {
            "type": "string"
          }
        },
        "databaseNodeId": {
          "type": "string"
        },
        "databaseSnapshot": {
          "type": "boolean"
        },
        "dateCreated": {
          "type": "string"
        },
        "dateModified": {
          "type": "string"
        },
        "dbserverId": {
          "type": "string"
        },
        "dbserverIp": {
          "type": "string"
        },
        "dbserverName": {
          "type": "string"
        },
        "dbserverStorageMetadataVersion": {
          "type": "integer"
        },
        "description": {
          "type": "string"
        },
        "fromTimestamp": {
          "type": "string"
        },
        "id": {
          "type": "string"
        },
        "lcmConfigs": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetNdbSnapshotsSnapshotLcmConfig:getNdbSnapshotsSnapshotLcmConfig"
          }
        },
        "name": {
          "type": "string"
        },
        "nxClusterId": {
          "type": "string"
        },
        "parentSnapshot": {
          "type": "boolean"
        },
        "parentSnapshotId": {
          "type": "string"
        },
        "processed": {
          "type": "boolean"
        },
        "properties": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetNdbSnapshotsSnapshotProperty:getNdbSnapshotsSnapshotProperty"
          },
          "description": "List of all the properties\n"
        },
        "protectionDomainId": {
          "type": "string"
        },
        "replicatedSnapshots": {
          "type": "array",
          "items": {
            "type": "string"
          }
        },
        "santized": {
          "type": "boolean"
        },
        "santizedFromSnapshotId": {
          "type": "string"
        },
        "santizedSnapshots": {
          "type": "string"
        },
        "snapshotFamily": {
          "type": "string"
        },
        "snapshotSize": {
          "type": "number"
        },
        "snapshotTimestamp": {
          "type": "string"
        },
        "snapshotTimestampDate": {
          "type": "integer"
        },
        "snapshotUuid": {
          "type": "string"
        },
        "softwareDatabaseSnapshot": {
          "type": "boolean"
        },
        "softwareSnapshot": {
          "type": "string"
        },
        "softwareSnapshotId": {
          "type": "string"
        },
        "status": {
          "type": "string"
        },
        "tags": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetNdbSnapshotsSnapshotTag:getNdbSnapshotsSnapshotTag"
          }
        },
        "timeMachineId": {
          "type": "string",
          "description": "Fetches all the snapshots for a given time machine\n"
        },
        "timezone": {
          "type": "string"
        },
        "toTimestamp": {
          "type": "string"
        },
        "type": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "appInfoVersion",
        "applicableTypes",
        "databaseNodeId",
        "databaseSnapshot",
        "dateCreated",
        "dateModified",
        "dbserverId",
        "dbserverIp",
        "dbserverName",
        "dbserverStorageMetadataVersion",
        "description",
        "fromTimestamp",
        "id",
        "lcmConfigs",
        "name",
        "nxClusterId",
        "parentSnapshot",
        "parentSnapshotId",
        "processed",
        "properties",
        "protectionDomainId",
        "replicatedSnapshots",
        "santized",
        "santizedFromSnapshotId",
        "santizedSnapshots",
        "snapshotFamily",
        "snapshotSize",
        "snapshotTimestamp",
        "snapshotTimestampDate",
        "snapshotUuid",
        "softwareDatabaseSnapshot",
        "softwareSnapshot",
        "softwareSnapshotId",
        "status",
        "tags",
        "timeMachineId",
        "timezone",
        "toTimestamp",
        "type"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getNdbSnapshotsSnapshotLcmConfig:getNdbSnapshotsSnapshotLcmConfig": {
      "properties": {
        "expiryDetails": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetNdbSnapshotsSnapshotLcmConfigExpiryDetail:getNdbSnapshotsSnapshotLcmConfigExpiryDetail"
          }
        },
        "postDeleteCommands": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetNdbSnapshotsSnapshotLcmConfigPostDeleteCommand:getNdbSnapshotsSnapshotLcmConfigPostDeleteCommand"
          }
        },
        "preDeleteCommands": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetNdbSnapshotsSnapshotLcmConfigPreDeleteCommand:getNdbSnapshotsSnapshotLcmConfigPreDeleteCommand"
          }
        },
        "refreshDetails": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetNdbSnapshotsSnapshotLcmConfigRefreshDetail:getNdbSnapshotsSnapshotLcmConfigRefreshDetail"
          }
        }
      },
      "type": "object",
      "required": [
        "expiryDetails",
        "postDeleteCommands",
        "preDeleteCommands",
        "refreshDetails"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getNdbSnapshotsSnapshotLcmConfigExpiryDetail:getNdbSnapshotsSnapshotLcmConfigExpiryDetail": {
      "properties": {
        "deleteDatabase": {
          "type": "boolean"
        },
        "deleteTimeMachine": {
          "type": "boolean"
        },
        "deleteVm": {
          "type": "boolean"
        },
        "effectiveTimestamp": {
          "type": "string"
        },
        "expireInDays": {
          "type": "integer"
        },
        "expiryDateTimezone": {
          "type": "string"
        },
        "expiryTimestamp": {
          "type": "string"
        },
        "remindBeforeInDays": {
          "type": "integer"
        },
        "userCreated": {
          "type": "boolean"
        }
      },
      "type": "object",
      "required": [
        "deleteDatabase",
        "deleteTimeMachine",
        "deleteVm",
        "effectiveTimestamp",
        "expireInDays",
        "expiryDateTimezone",
        "expiryTimestamp",
        "remindBeforeInDays",
        "userCreated"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getNdbSnapshotsSnapshotLcmConfigPostDeleteCommand:getNdbSnapshotsSnapshotLcmConfigPostDeleteCommand": {
      "properties": {
        "command": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "command"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getNdbSnapshotsSnapshotLcmConfigPreDeleteCommand:getNdbSnapshotsSnapshotLcmConfigPreDeleteCommand": {
      "properties": {
        "command": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "command"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getNdbSnapshotsSnapshotLcmConfigRefreshDetail:getNdbSnapshotsSnapshotLcmConfigRefreshDetail": {
      "properties": {
        "lastRefreshDate": {
          "type": "string"
        },
        "nextRefreshDate": {
          "type": "string"
        },
        "refreshDateTimezone": {
          "type": "string"
        },
        "refreshInDays": {
          "type": "integer"
        },
        "refreshInHours": {
          "type": "integer"
        },
        "refreshInMonths": {
          "type": "integer"
        },
        "refreshTime": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "lastRefreshDate",
        "nextRefreshDate",
        "refreshDateTimezone",
        "refreshInDays",
        "refreshInHours",
        "refreshInMonths",
        "refreshTime"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getNdbSnapshotsSnapshotProperty:getNdbSnapshotsSnapshotProperty": {
      "properties": {
        "description": {
          "type": "string"
        },
        "name": {
          "type": "string"
        },
        "refId": {
          "type": "string"
        },
        "secure": {
          "type": "boolean"
        },
        "value": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "description",
        "name",
        "refId",
        "secure",
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getNdbSnapshotsSnapshotTag:getNdbSnapshotsSnapshotTag": {
      "properties": {
        "entityId": {
          "type": "string"
        },
        "entityType": {
          "type": "string"
        },
        "tagId": {
          "type": "string"
        },
        "tagName": {
          "type": "string"
        },
        "value": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "entityId",
        "entityType",
        "tagId",
        "tagName",
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getNdbTagsTag:getNdbTagsTag": {
      "properties": {
        "dateCreated": {
          "type": "string",
          "description": "date created of the tag\n"
        },
        "dateModified": {
          "type": "string",
          "description": "modified date of tha tag\n"
        },
        "description": {
          "type": "string",
          "description": "description for the tag\n"
        },
        "entityType": {
          "type": "string",
          "description": "entity for the tag to be associated with.\n"
        },
        "id": {
          "type": "string"
        },
        "name": {
          "type": "string",
          "description": "name for the tag\n"
        },
        "owner": {
          "type": "string",
          "description": "owner id of the tag\n"
        },
        "required": {
          "type": "boolean",
          "description": "tag value for entities.\n"
        },
        "status": {
          "type": "string",
          "description": "Status of the tag\n"
        },
        "values": {
          "type": "integer",
          "description": "value for the tag\n"
        }
      },
      "type": "object",
      "required": [
        "dateCreated",
        "dateModified",
        "description",
        "entityType",
        "id",
        "name",
        "owner",
        "required",
        "status",
        "values"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getNdbTimeMachineProperty:getNdbTimeMachineProperty": {
      "properties": {
        "description": {
          "type": "string",
          "description": "time machine description\n"
        },
        "name": {
          "type": "string",
          "description": "time machine name\n"
        },
        "refId": {
          "type": "string"
        },
        "secure": {
          "type": "boolean"
        },
        "value": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "description",
        "name",
        "refId",
        "secure",
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getNdbTimeMachineSchedule:getNdbTimeMachineSchedule": {
      "properties": {
        "continuousSchedules": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetNdbTimeMachineScheduleContinuousSchedule:getNdbTimeMachineScheduleContinuousSchedule"
          }
        },
        "dailySchedules": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetNdbTimeMachineScheduleDailySchedule:getNdbTimeMachineScheduleDailySchedule"
          }
        },
        "dateCreated": {
          "type": "string",
          "description": "date created\n"
        },
        "dateModified": {
          "type": "string",
          "description": "date modified\n"
        },
        "description": {
          "type": "string",
          "description": "time machine description\n"
        },
        "globalPolicy": {
          "type": "boolean"
        },
        "id": {
          "type": "string",
          "description": "time machine id\n"
        },
        "monthlySchedules": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetNdbTimeMachineScheduleMonthlySchedule:getNdbTimeMachineScheduleMonthlySchedule"
          }
        },
        "name": {
          "type": "string",
          "description": "time machine name\n"
        },
        "ownerId": {
          "type": "string"
        },
        "quartelySchedules": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetNdbTimeMachineScheduleQuartelySchedule:getNdbTimeMachineScheduleQuartelySchedule"
          }
        },
        "referenceCount": {
          "type": "integer"
        },
        "snapshotTimeOfDays": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetNdbTimeMachineScheduleSnapshotTimeOfDay:getNdbTimeMachineScheduleSnapshotTimeOfDay"
          }
        },
        "startTime": {
          "type": "string"
        },
        "systemPolicy": {
          "type": "boolean"
        },
        "timeZone": {
          "type": "string"
        },
        "uniqueName": {
          "type": "string"
        },
        "weeklySchedules": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetNdbTimeMachineScheduleWeeklySchedule:getNdbTimeMachineScheduleWeeklySchedule"
          }
        },
        "yearlySchedules": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetNdbTimeMachineScheduleYearlySchedule:getNdbTimeMachineScheduleYearlySchedule"
          }
        }
      },
      "type": "object",
      "required": [
        "continuousSchedules",
        "dailySchedules",
        "dateCreated",
        "dateModified",
        "description",
        "globalPolicy",
        "id",
        "monthlySchedules",
        "name",
        "ownerId",
        "quartelySchedules",
        "referenceCount",
        "snapshotTimeOfDays",
        "startTime",
        "systemPolicy",
        "timeZone",
        "uniqueName",
        "weeklySchedules",
        "yearlySchedules"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getNdbTimeMachineScheduleContinuousSchedule:getNdbTimeMachineScheduleContinuousSchedule": {
      "properties": {
        "enabled": {
          "type": "boolean"
        },
        "logBackupInterval": {
          "type": "integer"
        },
        "snapshotsPerDay": {
          "type": "integer"
        }
      },
      "type": "object",
      "required": [
        "enabled",
        "logBackupInterval",
        "snapshotsPerDay"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getNdbTimeMachineScheduleDailySchedule:getNdbTimeMachineScheduleDailySchedule": {
      "properties": {
        "enabled": {
          "type": "boolean"
        }
      },
      "type": "object",
      "required": [
        "enabled"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getNdbTimeMachineScheduleMonthlySchedule:getNdbTimeMachineScheduleMonthlySchedule": {
      "properties": {
        "dayOfMonth": {
          "type": "integer"
        },
        "enabled": {
          "type": "boolean"
        }
      },
      "type": "object",
      "required": [
        "dayOfMonth",
        "enabled"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getNdbTimeMachineScheduleQuartelySchedule:getNdbTimeMachineScheduleQuartelySchedule": {
      "properties": {
        "dayOfMonth": {
          "type": "integer"
        },
        "enabled": {
          "type": "boolean"
        },
        "startMonth": {
          "type": "string"
        },
        "startMonthValue": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "dayOfMonth",
        "enabled",
        "startMonth",
        "startMonthValue"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getNdbTimeMachineScheduleSnapshotTimeOfDay:getNdbTimeMachineScheduleSnapshotTimeOfDay": {
      "properties": {
        "extra": {
          "type": "boolean"
        },
        "hours": {
          "type": "integer"
        },
        "minutes": {
          "type": "integer"
        },
        "seconds": {
          "type": "integer"
        }
      },
      "type": "object",
      "required": [
        "extra",
        "hours",
        "minutes",
        "seconds"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getNdbTimeMachineScheduleWeeklySchedule:getNdbTimeMachineScheduleWeeklySchedule": {
      "properties": {
        "dayOfWeek": {
          "type": "string"
        },
        "dayOfWeekValue": {
          "type": "string"
        },
        "enabled": {
          "type": "boolean"
        }
      },
      "type": "object",
      "required": [
        "dayOfWeek",
        "dayOfWeekValue",
        "enabled"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getNdbTimeMachineScheduleYearlySchedule:getNdbTimeMachineScheduleYearlySchedule": {
      "properties": {
        "dayOfMonth": {
          "type": "integer"
        },
        "enabled": {
          "type": "boolean"
        },
        "month": {
          "type": "string"
        },
        "monthValue": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "dayOfMonth",
        "enabled",
        "month",
        "monthValue"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getNdbTimeMachineSla:getNdbTimeMachineSla": {
      "properties": {
        "continuousRetention": {
          "type": "integer"
        },
        "currentActiveFrequency": {
          "type": "string"
        },
        "dailyRetention": {
          "type": "integer"
        },
        "dateCreated": {
          "type": "string",
          "description": "date created\n"
        },
        "dateModified": {
          "type": "string",
          "description": "date modified\n"
        },
        "description": {
          "type": "string",
          "description": "time machine description\n"
        },
        "id": {
          "type": "string",
          "description": "time machine id\n"
        },
        "monthlyRetention": {
          "type": "integer"
        },
        "name": {
          "type": "string",
          "description": "time machine name\n"
        },
        "ownerId": {
          "type": "string"
        },
        "pitrEnabled": {
          "type": "boolean"
        },
        "quarterlyRetention": {
          "type": "integer"
        },
        "referenceCount": {
          "type": "integer"
        },
        "systemSla": {
          "type": "boolean"
        },
        "uniqueName": {
          "type": "string"
        },
        "weeklyRetention": {
          "type": "integer"
        },
        "yearlyRetention": {
          "type": "integer"
        }
      },
      "type": "object",
      "required": [
        "continuousRetention",
        "currentActiveFrequency",
        "dailyRetention",
        "dateCreated",
        "dateModified",
        "description",
        "id",
        "monthlyRetention",
        "name",
        "ownerId",
        "pitrEnabled",
        "quarterlyRetention",
        "referenceCount",
        "systemSla",
        "uniqueName",
        "weeklyRetention",
        "yearlyRetention"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getNdbTimeMachineTag:getNdbTimeMachineTag": {
      "properties": {
        "entityId": {
          "type": "string"
        },
        "entityType": {
          "type": "string"
        },
        "tagId": {
          "type": "string"
        },
        "tagName": {
          "type": "string"
        },
        "value": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "entityId",
        "entityType",
        "tagId",
        "tagName",
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getNdbTimeMachinesTimeMachine:getNdbTimeMachinesTimeMachine": {
      "properties": {
        "accessLevel": {
          "type": "string",
          "description": "access level to time machines\n"
        },
        "clone": {
          "type": "boolean",
          "description": "clone time machine or not\n"
        },
        "clones": {
          "type": "string",
          "description": "clone info\n"
        },
        "clustered": {
          "type": "boolean",
          "description": "clustered or not\n"
        },
        "database": {
          "type": "string",
          "description": "database info\n"
        },
        "databaseId": {
          "type": "string",
          "description": "database id\n"
        },
        "dateCreated": {
          "type": "string",
          "description": "date created\n"
        },
        "dateModified": {
          "type": "string",
          "description": "date modified\n"
        },
        "description": {
          "type": "string",
          "description": "time machine description\n"
        },
        "eaStatus": {
          "type": "string",
          "description": "ea status of time machine\n"
        },
        "id": {
          "type": "string",
          "description": "time machine id\n"
        },
        "metric": {
          "type": "string",
          "description": "Metric info\n"
        },
        "name": {
          "type": "string",
          "description": "time machine name\n"
        },
        "properties": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetNdbTimeMachinesTimeMachineProperty:getNdbTimeMachinesTimeMachineProperty"
          },
          "description": "List of all the properties\n"
        },
        "scheduleId": {
          "type": "string",
          "description": "schedule id\n"
        },
        "schedules": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetNdbTimeMachinesTimeMachineSchedule:getNdbTimeMachinesTimeMachineSchedule"
          },
          "description": "schedule info\n\n\nSee detailed information in [NDB Time Machines](https://www.nutanix.dev/api_references/ndb/#/e68ba687086ed-get-list-of-all-time-machines).\n"
        },
        "scope": {
          "type": "string",
          "description": "scope\n"
        },
        "slaId": {
          "type": "string",
          "description": "sla id\n"
        },
        "slaUpdateInProgress": {
          "type": "boolean",
          "description": "sla update in progress\n"
        },
        "slaUpdateMetadata": {
          "type": "string",
          "description": "sla update metadata\n"
        },
        "slas": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetNdbTimeMachinesTimeMachineSla:getNdbTimeMachinesTimeMachineSla"
          },
          "description": "sla info\n"
        },
        "sourceNxClusters": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "source clusters\n"
        },
        "status": {
          "type": "string",
          "description": "status of time machine\n"
        },
        "tags": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetNdbTimeMachinesTimeMachineTag:getNdbTimeMachinesTimeMachineTag"
          },
          "description": "tags\n"
        },
        "type": {
          "type": "string",
          "description": "type of time machine\n"
        }
      },
      "type": "object",
      "required": [
        "accessLevel",
        "clone",
        "clones",
        "clustered",
        "database",
        "databaseId",
        "dateCreated",
        "dateModified",
        "description",
        "eaStatus",
        "id",
        "metric",
        "name",
        "properties",
        "scheduleId",
        "schedules",
        "scope",
        "slaId",
        "slaUpdateInProgress",
        "slaUpdateMetadata",
        "slas",
        "sourceNxClusters",
        "status",
        "tags",
        "type"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getNdbTimeMachinesTimeMachineProperty:getNdbTimeMachinesTimeMachineProperty": {
      "properties": {
        "description": {
          "type": "string",
          "description": "time machine description\n"
        },
        "name": {
          "type": "string",
          "description": "time machine name\n"
        },
        "refId": {
          "type": "string"
        },
        "secure": {
          "type": "boolean"
        },
        "value": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "description",
        "name",
        "refId",
        "secure",
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getNdbTimeMachinesTimeMachineSchedule:getNdbTimeMachinesTimeMachineSchedule": {
      "properties": {
        "continuousSchedules": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetNdbTimeMachinesTimeMachineScheduleContinuousSchedule:getNdbTimeMachinesTimeMachineScheduleContinuousSchedule"
          }
        },
        "dailySchedules": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetNdbTimeMachinesTimeMachineScheduleDailySchedule:getNdbTimeMachinesTimeMachineScheduleDailySchedule"
          }
        },
        "dateCreated": {
          "type": "string",
          "description": "date created\n"
        },
        "dateModified": {
          "type": "string",
          "description": "date modified\n"
        },
        "description": {
          "type": "string",
          "description": "time machine description\n"
        },
        "globalPolicy": {
          "type": "boolean"
        },
        "id": {
          "type": "string",
          "description": "time machine id\n"
        },
        "monthlySchedules": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetNdbTimeMachinesTimeMachineScheduleMonthlySchedule:getNdbTimeMachinesTimeMachineScheduleMonthlySchedule"
          }
        },
        "name": {
          "type": "string",
          "description": "time machine name\n"
        },
        "ownerId": {
          "type": "string"
        },
        "quartelySchedules": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetNdbTimeMachinesTimeMachineScheduleQuartelySchedule:getNdbTimeMachinesTimeMachineScheduleQuartelySchedule"
          }
        },
        "referenceCount": {
          "type": "integer"
        },
        "snapshotTimeOfDays": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetNdbTimeMachinesTimeMachineScheduleSnapshotTimeOfDay:getNdbTimeMachinesTimeMachineScheduleSnapshotTimeOfDay"
          }
        },
        "startTime": {
          "type": "string"
        },
        "systemPolicy": {
          "type": "boolean"
        },
        "timeZone": {
          "type": "string"
        },
        "uniqueName": {
          "type": "string"
        },
        "weeklySchedules": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetNdbTimeMachinesTimeMachineScheduleWeeklySchedule:getNdbTimeMachinesTimeMachineScheduleWeeklySchedule"
          }
        },
        "yearlySchedules": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetNdbTimeMachinesTimeMachineScheduleYearlySchedule:getNdbTimeMachinesTimeMachineScheduleYearlySchedule"
          }
        }
      },
      "type": "object",
      "required": [
        "continuousSchedules",
        "dailySchedules",
        "dateCreated",
        "dateModified",
        "description",
        "globalPolicy",
        "id",
        "monthlySchedules",
        "name",
        "ownerId",
        "quartelySchedules",
        "referenceCount",
        "snapshotTimeOfDays",
        "startTime",
        "systemPolicy",
        "timeZone",
        "uniqueName",
        "weeklySchedules",
        "yearlySchedules"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getNdbTimeMachinesTimeMachineScheduleContinuousSchedule:getNdbTimeMachinesTimeMachineScheduleContinuousSchedule": {
      "properties": {
        "enabled": {
          "type": "boolean"
        },
        "logBackupInterval": {
          "type": "integer"
        },
        "snapshotsPerDay": {
          "type": "integer"
        }
      },
      "type": "object",
      "required": [
        "enabled",
        "logBackupInterval",
        "snapshotsPerDay"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getNdbTimeMachinesTimeMachineScheduleDailySchedule:getNdbTimeMachinesTimeMachineScheduleDailySchedule": {
      "properties": {
        "enabled": {
          "type": "boolean"
        }
      },
      "type": "object",
      "required": [
        "enabled"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getNdbTimeMachinesTimeMachineScheduleMonthlySchedule:getNdbTimeMachinesTimeMachineScheduleMonthlySchedule": {
      "properties": {
        "dayOfMonth": {
          "type": "integer"
        },
        "enabled": {
          "type": "boolean"
        }
      },
      "type": "object",
      "required": [
        "dayOfMonth",
        "enabled"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getNdbTimeMachinesTimeMachineScheduleQuartelySchedule:getNdbTimeMachinesTimeMachineScheduleQuartelySchedule": {
      "properties": {
        "dayOfMonth": {
          "type": "integer"
        },
        "enabled": {
          "type": "boolean"
        },
        "startMonth": {
          "type": "string"
        },
        "startMonthValue": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "dayOfMonth",
        "enabled",
        "startMonth",
        "startMonthValue"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getNdbTimeMachinesTimeMachineScheduleSnapshotTimeOfDay:getNdbTimeMachinesTimeMachineScheduleSnapshotTimeOfDay": {
      "properties": {
        "extra": {
          "type": "boolean"
        },
        "hours": {
          "type": "integer"
        },
        "minutes": {
          "type": "integer"
        },
        "seconds": {
          "type": "integer"
        }
      },
      "type": "object",
      "required": [
        "extra",
        "hours",
        "minutes",
        "seconds"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getNdbTimeMachinesTimeMachineScheduleWeeklySchedule:getNdbTimeMachinesTimeMachineScheduleWeeklySchedule": {
      "properties": {
        "dayOfWeek": {
          "type": "string"
        },
        "dayOfWeekValue": {
          "type": "string"
        },
        "enabled": {
          "type": "boolean"
        }
      },
      "type": "object",
      "required": [
        "dayOfWeek",
        "dayOfWeekValue",
        "enabled"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getNdbTimeMachinesTimeMachineScheduleYearlySchedule:getNdbTimeMachinesTimeMachineScheduleYearlySchedule": {
      "properties": {
        "dayOfMonth": {
          "type": "integer"
        },
        "enabled": {
          "type": "boolean"
        },
        "month": {
          "type": "string"
        },
        "monthValue": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "dayOfMonth",
        "enabled",
        "month",
        "monthValue"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getNdbTimeMachinesTimeMachineSla:getNdbTimeMachinesTimeMachineSla": {
      "properties": {
        "continuousRetention": {
          "type": "integer"
        },
        "currentActiveFrequency": {
          "type": "string"
        },
        "dailyRetention": {
          "type": "integer"
        },
        "dateCreated": {
          "type": "string",
          "description": "date created\n"
        },
        "dateModified": {
          "type": "string",
          "description": "date modified\n"
        },
        "description": {
          "type": "string",
          "description": "time machine description\n"
        },
        "id": {
          "type": "string",
          "description": "time machine id\n"
        },
        "monthlyRetention": {
          "type": "integer"
        },
        "name": {
          "type": "string",
          "description": "time machine name\n"
        },
        "ownerId": {
          "type": "string"
        },
        "pitrEnabled": {
          "type": "boolean"
        },
        "quarterlyRetention": {
          "type": "integer"
        },
        "referenceCount": {
          "type": "integer"
        },
        "systemSla": {
          "type": "boolean"
        },
        "uniqueName": {
          "type": "string"
        },
        "weeklyRetention": {
          "type": "integer"
        },
        "yearlyRetention": {
          "type": "integer"
        }
      },
      "type": "object",
      "required": [
        "continuousRetention",
        "currentActiveFrequency",
        "dailyRetention",
        "dateCreated",
        "dateModified",
        "description",
        "id",
        "monthlyRetention",
        "name",
        "ownerId",
        "pitrEnabled",
        "quarterlyRetention",
        "referenceCount",
        "systemSla",
        "uniqueName",
        "weeklyRetention",
        "yearlyRetention"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getNdbTimeMachinesTimeMachineTag:getNdbTimeMachinesTimeMachineTag": {
      "properties": {
        "entityId": {
          "type": "string"
        },
        "entityType": {
          "type": "string"
        },
        "tagId": {
          "type": "string"
        },
        "tagName": {
          "type": "string"
        },
        "value": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "entityId",
        "entityType",
        "tagId",
        "tagName",
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getNdbTmsCapabilityCapability:getNdbTmsCapabilityCapability": {
      "properties": {
        "continuousRegions": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetNdbTmsCapabilityCapabilityContinuousRegion:getNdbTmsCapabilityCapabilityContinuousRegion"
          }
        },
        "databaseIds": {
          "type": "array",
          "items": {
            "type": "string"
          }
        },
        "databasesContinuousRegion": {
          "type": "string"
        },
        "from": {
          "type": "string"
        },
        "mode": {
          "type": "string"
        },
        "snapshots": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetNdbTmsCapabilityCapabilitySnapshot:getNdbTmsCapabilityCapabilitySnapshot"
          }
        },
        "timeUnit": {
          "type": "string"
        },
        "timeUnitNumber": {
          "type": "string"
        },
        "to": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "continuousRegions",
        "databaseIds",
        "databasesContinuousRegion",
        "from",
        "mode",
        "snapshots",
        "timeUnit",
        "timeUnitNumber",
        "to"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getNdbTmsCapabilityCapabilityContinuousRegion:getNdbTmsCapabilityCapabilityContinuousRegion": {
      "properties": {
        "dbLogs": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetNdbTmsCapabilityCapabilityContinuousRegionDbLog:getNdbTmsCapabilityCapabilityContinuousRegionDbLog"
          }
        },
        "fromTime": {
          "type": "string"
        },
        "message": {
          "type": "string"
        },
        "partialRanges": {
          "type": "boolean"
        },
        "processedRanges": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetNdbTmsCapabilityCapabilityContinuousRegionProcessedRange:getNdbTmsCapabilityCapabilityContinuousRegionProcessedRange"
          }
        },
        "snapshotIds": {
          "type": "array",
          "items": {
            "type": "string"
          }
        },
        "snapshots": {
          "type": "string"
        },
        "subRange": {
          "type": "boolean"
        },
        "timeRangeAndDatabases": {
          "type": "string"
        },
        "timezone": {
          "type": "string"
        },
        "toTime": {
          "type": "string"
        },
        "unknownTimeRanges": {
          "type": "string"
        },
        "unprocessedRanges": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetNdbTmsCapabilityCapabilityContinuousRegionUnprocessedRange:getNdbTmsCapabilityCapabilityContinuousRegionUnprocessedRange"
          }
        }
      },
      "type": "object",
      "required": [
        "dbLogs",
        "fromTime",
        "message",
        "partialRanges",
        "processedRanges",
        "snapshotIds",
        "snapshots",
        "subRange",
        "timeRangeAndDatabases",
        "timezone",
        "toTime",
        "unknownTimeRanges",
        "unprocessedRanges"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getNdbTmsCapabilityCapabilityContinuousRegionDbLog:getNdbTmsCapabilityCapabilityContinuousRegionDbLog": {
      "properties": {
        "databaseId": {
          "type": "string"
        },
        "databaseNodeId": {
          "type": "string"
        },
        "dateCreated": {
          "type": "string"
        },
        "dateModified": {
          "type": "string"
        },
        "eraLogDriveId": {
          "type": "string"
        },
        "fromTime": {
          "type": "string"
        },
        "id": {
          "type": "string"
        },
        "infos": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetNdbTmsCapabilityCapabilityContinuousRegionDbLogInfo:getNdbTmsCapabilityCapabilityContinuousRegionDbLogInfo"
          }
        },
        "logCopyOperationId": {
          "type": "string"
        },
        "message": {
          "type": "string"
        },
        "metadatas": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetNdbTmsCapabilityCapabilityContinuousRegionDbLogMetadata:getNdbTmsCapabilityCapabilityContinuousRegionDbLogMetadata"
          }
        },
        "name": {
          "type": "string"
        },
        "ownerId": {
          "type": "string"
        },
        "size": {
          "type": "integer"
        },
        "status": {
          "type": "string"
        },
        "toTime": {
          "type": "string"
        },
        "unprocessed": {
          "type": "boolean"
        }
      },
      "type": "object",
      "required": [
        "databaseId",
        "databaseNodeId",
        "dateCreated",
        "dateModified",
        "eraLogDriveId",
        "fromTime",
        "id",
        "infos",
        "logCopyOperationId",
        "message",
        "metadatas",
        "name",
        "ownerId",
        "size",
        "status",
        "toTime",
        "unprocessed"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getNdbTmsCapabilityCapabilityContinuousRegionDbLogInfo:getNdbTmsCapabilityCapabilityContinuousRegionDbLogInfo": {
      "properties": {
        "info": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          }
        },
        "secureInfo": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          }
        },
        "unknownTimeRange": {
          "type": "boolean"
        }
      },
      "type": "object",
      "required": [
        "info",
        "secureInfo",
        "unknownTimeRange"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getNdbTmsCapabilityCapabilityContinuousRegionDbLogMetadata:getNdbTmsCapabilityCapabilityContinuousRegionDbLogMetadata": {
      "properties": {
        "createdDirectly": {
          "type": "boolean"
        },
        "curationRetryCount": {
          "type": "integer"
        },
        "deregisterInfos": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetNdbTmsCapabilityCapabilityContinuousRegionDbLogMetadataDeregisterInfo:getNdbTmsCapabilityCapabilityContinuousRegionDbLogMetadataDeregisterInfo"
          }
        },
        "info": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          }
        },
        "secureInfo": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          }
        },
        "updatedDirectly": {
          "type": "boolean"
        }
      },
      "type": "object",
      "required": [
        "createdDirectly",
        "curationRetryCount",
        "deregisterInfos",
        "info",
        "secureInfo",
        "updatedDirectly"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getNdbTmsCapabilityCapabilityContinuousRegionDbLogMetadataDeregisterInfo:getNdbTmsCapabilityCapabilityContinuousRegionDbLogMetadataDeregisterInfo": {
      "properties": {
        "message": {
          "type": "string"
        },
        "operations": {
          "type": "array",
          "items": {
            "type": "string"
          }
        }
      },
      "type": "object",
      "required": [
        "message",
        "operations"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getNdbTmsCapabilityCapabilityContinuousRegionProcessedRange:getNdbTmsCapabilityCapabilityContinuousRegionProcessedRange": {
      "properties": {
        "first": {
          "type": "string"
        },
        "second": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "first",
        "second"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getNdbTmsCapabilityCapabilityContinuousRegionUnprocessedRange:getNdbTmsCapabilityCapabilityContinuousRegionUnprocessedRange": {
      "properties": {
        "first": {
          "type": "string"
        },
        "second": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "first",
        "second"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getNdbTmsCapabilityCapabilitySnapshot:getNdbTmsCapabilityCapabilitySnapshot": {
      "properties": {
        "appInfoVersion": {
          "type": "string"
        },
        "applicableTypes": {
          "type": "array",
          "items": {
            "type": "string"
          }
        },
        "databaseNodeId": {
          "type": "string"
        },
        "databaseSnapshot": {
          "type": "boolean"
        },
        "dateCreated": {
          "type": "string"
        },
        "dateModified": {
          "type": "string"
        },
        "dbserverId": {
          "type": "string"
        },
        "dbserverIp": {
          "type": "string"
        },
        "dbserverName": {
          "type": "string"
        },
        "dbserverStorageMetadataVersion": {
          "type": "integer"
        },
        "description": {
          "type": "string"
        },
        "fromTimestamp": {
          "type": "string"
        },
        "id": {
          "type": "string"
        },
        "lcmConfigs": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetNdbTmsCapabilityCapabilitySnapshotLcmConfig:getNdbTmsCapabilityCapabilitySnapshotLcmConfig"
          }
        },
        "metadatas": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetNdbTmsCapabilityCapabilitySnapshotMetadata:getNdbTmsCapabilityCapabilitySnapshotMetadata"
          }
        },
        "name": {
          "type": "string"
        },
        "nxClusterId": {
          "type": "string"
        },
        "ownerId": {
          "type": "string"
        },
        "parentSnapshot": {
          "type": "boolean"
        },
        "parentSnapshotId": {
          "type": "string"
        },
        "processed": {
          "type": "boolean"
        },
        "properties": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetNdbTmsCapabilityCapabilitySnapshotProperty:getNdbTmsCapabilityCapabilitySnapshotProperty"
          },
          "description": "List of all the properties\n"
        },
        "protectionDomainId": {
          "type": "string"
        },
        "replicatedSnapshots": {
          "type": "array",
          "items": {
            "type": "string"
          }
        },
        "santized": {
          "type": "boolean"
        },
        "santizedFromSnapshotId": {
          "type": "string"
        },
        "santizedSnapshots": {
          "type": "string"
        },
        "snapshotFamily": {
          "type": "string"
        },
        "snapshotSize": {
          "type": "number"
        },
        "snapshotTimestamp": {
          "type": "string"
        },
        "snapshotTimestampDate": {
          "type": "integer"
        },
        "snapshotUuid": {
          "type": "string"
        },
        "softwareDatabaseSnapshot": {
          "type": "boolean"
        },
        "softwareSnapshot": {
          "type": "string"
        },
        "softwareSnapshotId": {
          "type": "string"
        },
        "status": {
          "type": "string"
        },
        "tags": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetNdbTmsCapabilityCapabilitySnapshotTag:getNdbTmsCapabilityCapabilitySnapshotTag"
          }
        },
        "timeMachineId": {
          "type": "string"
        },
        "timezone": {
          "type": "string"
        },
        "toTimestamp": {
          "type": "string"
        },
        "type": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "appInfoVersion",
        "applicableTypes",
        "databaseNodeId",
        "databaseSnapshot",
        "dateCreated",
        "dateModified",
        "dbserverId",
        "dbserverIp",
        "dbserverName",
        "dbserverStorageMetadataVersion",
        "description",
        "fromTimestamp",
        "id",
        "lcmConfigs",
        "metadatas",
        "name",
        "nxClusterId",
        "ownerId",
        "parentSnapshot",
        "parentSnapshotId",
        "processed",
        "properties",
        "protectionDomainId",
        "replicatedSnapshots",
        "santized",
        "santizedFromSnapshotId",
        "santizedSnapshots",
        "snapshotFamily",
        "snapshotSize",
        "snapshotTimestamp",
        "snapshotTimestampDate",
        "snapshotUuid",
        "softwareDatabaseSnapshot",
        "softwareSnapshot",
        "softwareSnapshotId",
        "status",
        "tags",
        "timeMachineId",
        "timezone",
        "toTimestamp",
        "type"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getNdbTmsCapabilityCapabilitySnapshotLcmConfig:getNdbTmsCapabilityCapabilitySnapshotLcmConfig": {
      "properties": {
        "expiryDetails": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetNdbTmsCapabilityCapabilitySnapshotLcmConfigExpiryDetail:getNdbTmsCapabilityCapabilitySnapshotLcmConfigExpiryDetail"
          }
        },
        "postDeleteCommands": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetNdbTmsCapabilityCapabilitySnapshotLcmConfigPostDeleteCommand:getNdbTmsCapabilityCapabilitySnapshotLcmConfigPostDeleteCommand"
          }
        },
        "preDeleteCommands": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetNdbTmsCapabilityCapabilitySnapshotLcmConfigPreDeleteCommand:getNdbTmsCapabilityCapabilitySnapshotLcmConfigPreDeleteCommand"
          }
        },
        "refreshDetails": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetNdbTmsCapabilityCapabilitySnapshotLcmConfigRefreshDetail:getNdbTmsCapabilityCapabilitySnapshotLcmConfigRefreshDetail"
          }
        }
      },
      "type": "object",
      "required": [
        "expiryDetails",
        "postDeleteCommands",
        "preDeleteCommands",
        "refreshDetails"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getNdbTmsCapabilityCapabilitySnapshotLcmConfigExpiryDetail:getNdbTmsCapabilityCapabilitySnapshotLcmConfigExpiryDetail": {
      "properties": {
        "deleteDatabase": {
          "type": "boolean"
        },
        "deleteTimeMachine": {
          "type": "boolean"
        },
        "deleteVm": {
          "type": "boolean"
        },
        "effectiveTimestamp": {
          "type": "string"
        },
        "expireInDays": {
          "type": "integer"
        },
        "expiryDateTimezone": {
          "type": "string"
        },
        "expiryTimestamp": {
          "type": "string"
        },
        "remindBeforeInDays": {
          "type": "integer"
        },
        "userCreated": {
          "type": "boolean"
        }
      },
      "type": "object",
      "required": [
        "deleteDatabase",
        "deleteTimeMachine",
        "deleteVm",
        "effectiveTimestamp",
        "expireInDays",
        "expiryDateTimezone",
        "expiryTimestamp",
        "remindBeforeInDays",
        "userCreated"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getNdbTmsCapabilityCapabilitySnapshotLcmConfigPostDeleteCommand:getNdbTmsCapabilityCapabilitySnapshotLcmConfigPostDeleteCommand": {
      "properties": {
        "command": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "command"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getNdbTmsCapabilityCapabilitySnapshotLcmConfigPreDeleteCommand:getNdbTmsCapabilityCapabilitySnapshotLcmConfigPreDeleteCommand": {
      "properties": {
        "command": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "command"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getNdbTmsCapabilityCapabilitySnapshotLcmConfigRefreshDetail:getNdbTmsCapabilityCapabilitySnapshotLcmConfigRefreshDetail": {
      "properties": {
        "lastRefreshDate": {
          "type": "string"
        },
        "nextRefreshDate": {
          "type": "string"
        },
        "refreshDateTimezone": {
          "type": "string"
        },
        "refreshInDays": {
          "type": "integer"
        },
        "refreshInHours": {
          "type": "integer"
        },
        "refreshInMonths": {
          "type": "integer"
        },
        "refreshTime": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "lastRefreshDate",
        "nextRefreshDate",
        "refreshDateTimezone",
        "refreshInDays",
        "refreshInHours",
        "refreshInMonths",
        "refreshTime"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getNdbTmsCapabilityCapabilitySnapshotMetadata:getNdbTmsCapabilityCapabilitySnapshotMetadata": {
      "properties": {
        "async": {
          "type": "boolean"
        },
        "curationRetryCount": {
          "type": "integer"
        },
        "deregisterInfo": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          }
        },
        "fromTimestamp": {
          "type": "string"
        },
        "infos": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetNdbTmsCapabilityCapabilitySnapshotMetadataInfo:getNdbTmsCapabilityCapabilitySnapshotMetadataInfo"
          }
        },
        "lastReplicationRetyrSourceSnapshotId": {
          "type": "string"
        },
        "operationsUsingSnapshots": {
          "type": "array",
          "items": {
            "type": "string"
          }
        },
        "replicationRetryCount": {
          "type": "integer"
        },
        "secureInfo": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          }
        },
        "standBy": {
          "type": "boolean"
        },
        "toTimestamp": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "async",
        "curationRetryCount",
        "deregisterInfo",
        "fromTimestamp",
        "infos",
        "lastReplicationRetyrSourceSnapshotId",
        "operationsUsingSnapshots",
        "replicationRetryCount",
        "secureInfo",
        "standBy",
        "toTimestamp"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getNdbTmsCapabilityCapabilitySnapshotMetadataInfo:getNdbTmsCapabilityCapabilitySnapshotMetadataInfo": {
      "properties": {
        "bpgConfigs": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetNdbTmsCapabilityCapabilitySnapshotMetadataInfoBpgConfig:getNdbTmsCapabilityCapabilitySnapshotMetadataInfoBpgConfig"
          }
        },
        "secureInfo": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          }
        }
      },
      "type": "object",
      "required": [
        "bpgConfigs",
        "secureInfo"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getNdbTmsCapabilityCapabilitySnapshotMetadataInfoBpgConfig:getNdbTmsCapabilityCapabilitySnapshotMetadataInfoBpgConfig": {
      "properties": {
        "bpgDbParams": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetNdbTmsCapabilityCapabilitySnapshotMetadataInfoBpgConfigBpgDbParam:getNdbTmsCapabilityCapabilitySnapshotMetadataInfoBpgConfigBpgDbParam"
          }
        },
        "storages": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetNdbTmsCapabilityCapabilitySnapshotMetadataInfoBpgConfigStorage:getNdbTmsCapabilityCapabilitySnapshotMetadataInfoBpgConfigStorage"
          }
        },
        "vmProperties": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetNdbTmsCapabilityCapabilitySnapshotMetadataInfoBpgConfigVmProperty:getNdbTmsCapabilityCapabilitySnapshotMetadataInfoBpgConfigVmProperty"
          }
        }
      },
      "type": "object",
      "required": [
        "bpgDbParams",
        "storages",
        "vmProperties"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getNdbTmsCapabilityCapabilitySnapshotMetadataInfoBpgConfigBpgDbParam:getNdbTmsCapabilityCapabilitySnapshotMetadataInfoBpgConfigBpgDbParam": {
      "properties": {
        "effectiveCacheSize": {
          "type": "string"
        },
        "maintenanceWorkMem": {
          "type": "string"
        },
        "maxParallelWorkersPerGather": {
          "type": "string"
        },
        "maxWorkerProcesses": {
          "type": "string"
        },
        "sharedBuffers": {
          "type": "string"
        },
        "workMem": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "effectiveCacheSize",
        "maintenanceWorkMem",
        "maxParallelWorkersPerGather",
        "maxWorkerProcesses",
        "sharedBuffers",
        "workMem"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getNdbTmsCapabilityCapabilitySnapshotMetadataInfoBpgConfigStorage:getNdbTmsCapabilityCapabilitySnapshotMetadataInfoBpgConfigStorage": {
      "properties": {
        "archiveStorages": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetNdbTmsCapabilityCapabilitySnapshotMetadataInfoBpgConfigStorageArchiveStorage:getNdbTmsCapabilityCapabilitySnapshotMetadataInfoBpgConfigStorageArchiveStorage"
          }
        },
        "dataDisks": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetNdbTmsCapabilityCapabilitySnapshotMetadataInfoBpgConfigStorageDataDisk:getNdbTmsCapabilityCapabilitySnapshotMetadataInfoBpgConfigStorageDataDisk"
          }
        },
        "logDisks": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetNdbTmsCapabilityCapabilitySnapshotMetadataInfoBpgConfigStorageLogDisk:getNdbTmsCapabilityCapabilitySnapshotMetadataInfoBpgConfigStorageLogDisk"
          }
        }
      },
      "type": "object",
      "required": [
        "archiveStorages",
        "dataDisks",
        "logDisks"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getNdbTmsCapabilityCapabilitySnapshotMetadataInfoBpgConfigStorageArchiveStorage:getNdbTmsCapabilityCapabilitySnapshotMetadataInfoBpgConfigStorageArchiveStorage": {
      "properties": {
        "size": {
          "type": "number"
        }
      },
      "type": "object",
      "required": [
        "size"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getNdbTmsCapabilityCapabilitySnapshotMetadataInfoBpgConfigStorageDataDisk:getNdbTmsCapabilityCapabilitySnapshotMetadataInfoBpgConfigStorageDataDisk": {
      "properties": {
        "count": {
          "type": "number"
        }
      },
      "type": "object",
      "required": [
        "count"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getNdbTmsCapabilityCapabilitySnapshotMetadataInfoBpgConfigStorageLogDisk:getNdbTmsCapabilityCapabilitySnapshotMetadataInfoBpgConfigStorageLogDisk": {
      "properties": {
        "count": {
          "type": "number"
        },
        "size": {
          "type": "number"
        }
      },
      "type": "object",
      "required": [
        "count",
        "size"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getNdbTmsCapabilityCapabilitySnapshotMetadataInfoBpgConfigVmProperty:getNdbTmsCapabilityCapabilitySnapshotMetadataInfoBpgConfigVmProperty": {
      "properties": {
        "dirtyBackgroundRatio": {
          "type": "number"
        },
        "dirtyExpireCentisecs": {
          "type": "number"
        },
        "dirtyRatio": {
          "type": "number"
        },
        "dirtyWritebackCentisecs": {
          "type": "number"
        },
        "nrHugepages": {
          "type": "number"
        },
        "overcommitMemory": {
          "type": "number"
        },
        "swappiness": {
          "type": "number"
        }
      },
      "type": "object",
      "required": [
        "dirtyBackgroundRatio",
        "dirtyExpireCentisecs",
        "dirtyRatio",
        "dirtyWritebackCentisecs",
        "nrHugepages",
        "overcommitMemory",
        "swappiness"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getNdbTmsCapabilityCapabilitySnapshotProperty:getNdbTmsCapabilityCapabilitySnapshotProperty": {
      "properties": {
        "description": {
          "type": "string"
        },
        "name": {
          "type": "string"
        },
        "refId": {
          "type": "string"
        },
        "secure": {
          "type": "boolean"
        },
        "value": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "description",
        "name",
        "refId",
        "secure",
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getNdbTmsCapabilityCapabilitySnapshotTag:getNdbTmsCapabilityCapabilitySnapshotTag": {
      "properties": {
        "entityId": {
          "type": "string"
        },
        "entityType": {
          "type": "string"
        },
        "tagId": {
          "type": "string"
        },
        "tagName": {
          "type": "string"
        },
        "value": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "entityId",
        "entityType",
        "tagId",
        "tagName",
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getNdbTmsCapabilityLastContinuousSnapshot:getNdbTmsCapabilityLastContinuousSnapshot": {
      "properties": {
        "appInfoVersion": {
          "type": "string"
        },
        "applicableTypes": {
          "type": "array",
          "items": {
            "type": "string"
          }
        },
        "databaseNodeId": {
          "type": "string"
        },
        "databaseSnapshot": {
          "type": "boolean"
        },
        "dateCreated": {
          "type": "string"
        },
        "dateModified": {
          "type": "string"
        },
        "dbserverId": {
          "type": "string"
        },
        "dbserverIp": {
          "type": "string"
        },
        "dbserverName": {
          "type": "string"
        },
        "dbserverStorageMetadataVersion": {
          "type": "integer"
        },
        "description": {
          "type": "string"
        },
        "fromTimestamp": {
          "type": "string"
        },
        "id": {
          "type": "string"
        },
        "lcmConfigs": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetNdbTmsCapabilityLastContinuousSnapshotLcmConfig:getNdbTmsCapabilityLastContinuousSnapshotLcmConfig"
          }
        },
        "metadatas": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetNdbTmsCapabilityLastContinuousSnapshotMetadata:getNdbTmsCapabilityLastContinuousSnapshotMetadata"
          }
        },
        "name": {
          "type": "string"
        },
        "nxClusterId": {
          "type": "string"
        },
        "ownerId": {
          "type": "string"
        },
        "parentSnapshot": {
          "type": "boolean"
        },
        "parentSnapshotId": {
          "type": "string"
        },
        "processed": {
          "type": "boolean"
        },
        "properties": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetNdbTmsCapabilityLastContinuousSnapshotProperty:getNdbTmsCapabilityLastContinuousSnapshotProperty"
          },
          "description": "List of all the properties\n"
        },
        "protectionDomainId": {
          "type": "string"
        },
        "replicatedSnapshots": {
          "type": "array",
          "items": {
            "type": "string"
          }
        },
        "santized": {
          "type": "boolean"
        },
        "santizedFromSnapshotId": {
          "type": "string"
        },
        "santizedSnapshots": {
          "type": "string"
        },
        "snapshotFamily": {
          "type": "string"
        },
        "snapshotSize": {
          "type": "number"
        },
        "snapshotTimestamp": {
          "type": "string"
        },
        "snapshotTimestampDate": {
          "type": "integer"
        },
        "snapshotUuid": {
          "type": "string"
        },
        "softwareDatabaseSnapshot": {
          "type": "boolean"
        },
        "softwareSnapshot": {
          "type": "string"
        },
        "softwareSnapshotId": {
          "type": "string"
        },
        "status": {
          "type": "string"
        },
        "tags": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetNdbTmsCapabilityLastContinuousSnapshotTag:getNdbTmsCapabilityLastContinuousSnapshotTag"
          }
        },
        "timeMachineId": {
          "type": "string"
        },
        "timezone": {
          "type": "string"
        },
        "toTimestamp": {
          "type": "string"
        },
        "type": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "appInfoVersion",
        "applicableTypes",
        "databaseNodeId",
        "databaseSnapshot",
        "dateCreated",
        "dateModified",
        "dbserverId",
        "dbserverIp",
        "dbserverName",
        "dbserverStorageMetadataVersion",
        "description",
        "fromTimestamp",
        "id",
        "lcmConfigs",
        "metadatas",
        "name",
        "nxClusterId",
        "ownerId",
        "parentSnapshot",
        "parentSnapshotId",
        "processed",
        "properties",
        "protectionDomainId",
        "replicatedSnapshots",
        "santized",
        "santizedFromSnapshotId",
        "santizedSnapshots",
        "snapshotFamily",
        "snapshotSize",
        "snapshotTimestamp",
        "snapshotTimestampDate",
        "snapshotUuid",
        "softwareDatabaseSnapshot",
        "softwareSnapshot",
        "softwareSnapshotId",
        "status",
        "tags",
        "timeMachineId",
        "timezone",
        "toTimestamp",
        "type"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getNdbTmsCapabilityLastContinuousSnapshotLcmConfig:getNdbTmsCapabilityLastContinuousSnapshotLcmConfig": {
      "properties": {
        "expiryDetails": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetNdbTmsCapabilityLastContinuousSnapshotLcmConfigExpiryDetail:getNdbTmsCapabilityLastContinuousSnapshotLcmConfigExpiryDetail"
          }
        },
        "postDeleteCommands": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetNdbTmsCapabilityLastContinuousSnapshotLcmConfigPostDeleteCommand:getNdbTmsCapabilityLastContinuousSnapshotLcmConfigPostDeleteCommand"
          }
        },
        "preDeleteCommands": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetNdbTmsCapabilityLastContinuousSnapshotLcmConfigPreDeleteCommand:getNdbTmsCapabilityLastContinuousSnapshotLcmConfigPreDeleteCommand"
          }
        },
        "refreshDetails": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetNdbTmsCapabilityLastContinuousSnapshotLcmConfigRefreshDetail:getNdbTmsCapabilityLastContinuousSnapshotLcmConfigRefreshDetail"
          }
        }
      },
      "type": "object",
      "required": [
        "expiryDetails",
        "postDeleteCommands",
        "preDeleteCommands",
        "refreshDetails"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getNdbTmsCapabilityLastContinuousSnapshotLcmConfigExpiryDetail:getNdbTmsCapabilityLastContinuousSnapshotLcmConfigExpiryDetail": {
      "properties": {
        "deleteDatabase": {
          "type": "boolean"
        },
        "deleteTimeMachine": {
          "type": "boolean"
        },
        "deleteVm": {
          "type": "boolean"
        },
        "effectiveTimestamp": {
          "type": "string"
        },
        "expireInDays": {
          "type": "integer"
        },
        "expiryDateTimezone": {
          "type": "string"
        },
        "expiryTimestamp": {
          "type": "string"
        },
        "remindBeforeInDays": {
          "type": "integer"
        },
        "userCreated": {
          "type": "boolean"
        }
      },
      "type": "object",
      "required": [
        "deleteDatabase",
        "deleteTimeMachine",
        "deleteVm",
        "effectiveTimestamp",
        "expireInDays",
        "expiryDateTimezone",
        "expiryTimestamp",
        "remindBeforeInDays",
        "userCreated"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getNdbTmsCapabilityLastContinuousSnapshotLcmConfigPostDeleteCommand:getNdbTmsCapabilityLastContinuousSnapshotLcmConfigPostDeleteCommand": {
      "properties": {
        "command": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "command"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getNdbTmsCapabilityLastContinuousSnapshotLcmConfigPreDeleteCommand:getNdbTmsCapabilityLastContinuousSnapshotLcmConfigPreDeleteCommand": {
      "properties": {
        "command": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "command"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getNdbTmsCapabilityLastContinuousSnapshotLcmConfigRefreshDetail:getNdbTmsCapabilityLastContinuousSnapshotLcmConfigRefreshDetail": {
      "properties": {
        "lastRefreshDate": {
          "type": "string"
        },
        "nextRefreshDate": {
          "type": "string"
        },
        "refreshDateTimezone": {
          "type": "string"
        },
        "refreshInDays": {
          "type": "integer"
        },
        "refreshInHours": {
          "type": "integer"
        },
        "refreshInMonths": {
          "type": "integer"
        },
        "refreshTime": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "lastRefreshDate",
        "nextRefreshDate",
        "refreshDateTimezone",
        "refreshInDays",
        "refreshInHours",
        "refreshInMonths",
        "refreshTime"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getNdbTmsCapabilityLastContinuousSnapshotMetadata:getNdbTmsCapabilityLastContinuousSnapshotMetadata": {
      "properties": {
        "async": {
          "type": "boolean"
        },
        "curationRetryCount": {
          "type": "integer"
        },
        "deregisterInfo": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          }
        },
        "fromTimestamp": {
          "type": "string"
        },
        "infos": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetNdbTmsCapabilityLastContinuousSnapshotMetadataInfo:getNdbTmsCapabilityLastContinuousSnapshotMetadataInfo"
          }
        },
        "lastReplicationRetrySourceSnapshotId": {
          "type": "string"
        },
        "lastReplicationRetryTimestamp": {
          "type": "string"
        },
        "operationsUsingSnapshots": {
          "type": "array",
          "items": {
            "type": "string"
          }
        },
        "replicationRetryCount": {
          "type": "integer"
        },
        "secureInfo": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          }
        },
        "standBy": {
          "type": "boolean"
        },
        "toTimestamp": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "async",
        "curationRetryCount",
        "deregisterInfo",
        "fromTimestamp",
        "infos",
        "lastReplicationRetrySourceSnapshotId",
        "lastReplicationRetryTimestamp",
        "operationsUsingSnapshots",
        "replicationRetryCount",
        "secureInfo",
        "standBy",
        "toTimestamp"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getNdbTmsCapabilityLastContinuousSnapshotMetadataInfo:getNdbTmsCapabilityLastContinuousSnapshotMetadataInfo": {
      "properties": {
        "bpgConfigs": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetNdbTmsCapabilityLastContinuousSnapshotMetadataInfoBpgConfig:getNdbTmsCapabilityLastContinuousSnapshotMetadataInfoBpgConfig"
          }
        },
        "secureInfo": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          }
        }
      },
      "type": "object",
      "required": [
        "bpgConfigs",
        "secureInfo"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getNdbTmsCapabilityLastContinuousSnapshotMetadataInfoBpgConfig:getNdbTmsCapabilityLastContinuousSnapshotMetadataInfoBpgConfig": {
      "properties": {
        "bpgDbParams": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetNdbTmsCapabilityLastContinuousSnapshotMetadataInfoBpgConfigBpgDbParam:getNdbTmsCapabilityLastContinuousSnapshotMetadataInfoBpgConfigBpgDbParam"
          }
        },
        "storages": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetNdbTmsCapabilityLastContinuousSnapshotMetadataInfoBpgConfigStorage:getNdbTmsCapabilityLastContinuousSnapshotMetadataInfoBpgConfigStorage"
          }
        },
        "vmProperties": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetNdbTmsCapabilityLastContinuousSnapshotMetadataInfoBpgConfigVmProperty:getNdbTmsCapabilityLastContinuousSnapshotMetadataInfoBpgConfigVmProperty"
          }
        }
      },
      "type": "object",
      "required": [
        "bpgDbParams",
        "storages",
        "vmProperties"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getNdbTmsCapabilityLastContinuousSnapshotMetadataInfoBpgConfigBpgDbParam:getNdbTmsCapabilityLastContinuousSnapshotMetadataInfoBpgConfigBpgDbParam": {
      "properties": {
        "effectiveCacheSize": {
          "type": "string"
        },
        "maintenanceWorkMem": {
          "type": "string"
        },
        "maxParallelWorkersPerGather": {
          "type": "string"
        },
        "maxWorkerProcesses": {
          "type": "string"
        },
        "sharedBuffers": {
          "type": "string"
        },
        "workMem": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "effectiveCacheSize",
        "maintenanceWorkMem",
        "maxParallelWorkersPerGather",
        "maxWorkerProcesses",
        "sharedBuffers",
        "workMem"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getNdbTmsCapabilityLastContinuousSnapshotMetadataInfoBpgConfigStorage:getNdbTmsCapabilityLastContinuousSnapshotMetadataInfoBpgConfigStorage": {
      "properties": {
        "archiveStorages": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetNdbTmsCapabilityLastContinuousSnapshotMetadataInfoBpgConfigStorageArchiveStorage:getNdbTmsCapabilityLastContinuousSnapshotMetadataInfoBpgConfigStorageArchiveStorage"
          }
        },
        "dataDisks": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetNdbTmsCapabilityLastContinuousSnapshotMetadataInfoBpgConfigStorageDataDisk:getNdbTmsCapabilityLastContinuousSnapshotMetadataInfoBpgConfigStorageDataDisk"
          }
        },
        "logDisks": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetNdbTmsCapabilityLastContinuousSnapshotMetadataInfoBpgConfigStorageLogDisk:getNdbTmsCapabilityLastContinuousSnapshotMetadataInfoBpgConfigStorageLogDisk"
          }
        }
      },
      "type": "object",
      "required": [
        "archiveStorages",
        "dataDisks",
        "logDisks"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getNdbTmsCapabilityLastContinuousSnapshotMetadataInfoBpgConfigStorageArchiveStorage:getNdbTmsCapabilityLastContinuousSnapshotMetadataInfoBpgConfigStorageArchiveStorage": {
      "properties": {
        "size": {
          "type": "number"
        }
      },
      "type": "object",
      "required": [
        "size"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getNdbTmsCapabilityLastContinuousSnapshotMetadataInfoBpgConfigStorageDataDisk:getNdbTmsCapabilityLastContinuousSnapshotMetadataInfoBpgConfigStorageDataDisk": {
      "properties": {
        "count": {
          "type": "number"
        }
      },
      "type": "object",
      "required": [
        "count"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getNdbTmsCapabilityLastContinuousSnapshotMetadataInfoBpgConfigStorageLogDisk:getNdbTmsCapabilityLastContinuousSnapshotMetadataInfoBpgConfigStorageLogDisk": {
      "properties": {
        "count": {
          "type": "number"
        },
        "size": {
          "type": "number"
        }
      },
      "type": "object",
      "required": [
        "count",
        "size"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getNdbTmsCapabilityLastContinuousSnapshotMetadataInfoBpgConfigVmProperty:getNdbTmsCapabilityLastContinuousSnapshotMetadataInfoBpgConfigVmProperty": {
      "properties": {
        "dirtyBackgroundRatio": {
          "type": "number"
        },
        "dirtyExpireCentisecs": {
          "type": "number"
        },
        "dirtyRatio": {
          "type": "number"
        },
        "dirtyWritebackCentisecs": {
          "type": "number"
        },
        "nrHugepages": {
          "type": "number"
        },
        "overcommitMemory": {
          "type": "number"
        },
        "swappiness": {
          "type": "number"
        }
      },
      "type": "object",
      "required": [
        "dirtyBackgroundRatio",
        "dirtyExpireCentisecs",
        "dirtyRatio",
        "dirtyWritebackCentisecs",
        "nrHugepages",
        "overcommitMemory",
        "swappiness"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getNdbTmsCapabilityLastContinuousSnapshotProperty:getNdbTmsCapabilityLastContinuousSnapshotProperty": {
      "properties": {
        "description": {
          "type": "string"
        },
        "name": {
          "type": "string"
        },
        "refId": {
          "type": "string"
        },
        "secure": {
          "type": "boolean"
        },
        "value": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "description",
        "name",
        "refId",
        "secure",
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getNdbTmsCapabilityLastContinuousSnapshotTag:getNdbTmsCapabilityLastContinuousSnapshotTag": {
      "properties": {
        "entityId": {
          "type": "string"
        },
        "entityType": {
          "type": "string"
        },
        "tagId": {
          "type": "string"
        },
        "tagName": {
          "type": "string"
        },
        "value": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "entityId",
        "entityType",
        "tagId",
        "tagName",
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getNdbTmsCapabilityLastDbLog:getNdbTmsCapabilityLastDbLog": {
      "properties": {
        "databaseId": {
          "type": "string"
        },
        "databaseNodeId": {
          "type": "string"
        },
        "dateCreated": {
          "type": "string"
        },
        "dateModified": {
          "type": "string"
        },
        "eraLogDriveId": {
          "type": "string"
        },
        "fromTime": {
          "type": "string"
        },
        "id": {
          "type": "string"
        },
        "logCopyOperationId": {
          "type": "string"
        },
        "message": {
          "type": "string"
        },
        "metadatas": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetNdbTmsCapabilityLastDbLogMetadata:getNdbTmsCapabilityLastDbLogMetadata"
          }
        },
        "name": {
          "type": "string"
        },
        "ownerId": {
          "type": "string"
        },
        "size": {
          "type": "integer"
        },
        "status": {
          "type": "string"
        },
        "toTime": {
          "type": "string"
        },
        "unprocessed": {
          "type": "boolean"
        }
      },
      "type": "object",
      "required": [
        "databaseId",
        "databaseNodeId",
        "dateCreated",
        "dateModified",
        "eraLogDriveId",
        "fromTime",
        "id",
        "logCopyOperationId",
        "message",
        "metadatas",
        "name",
        "ownerId",
        "size",
        "status",
        "toTime",
        "unprocessed"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getNdbTmsCapabilityLastDbLogMetadata:getNdbTmsCapabilityLastDbLogMetadata": {
      "properties": {
        "createdDirectly": {
          "type": "boolean"
        },
        "curationRetryCount": {
          "type": "integer"
        },
        "deregisterInfos": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetNdbTmsCapabilityLastDbLogMetadataDeregisterInfo:getNdbTmsCapabilityLastDbLogMetadataDeregisterInfo"
          }
        },
        "info": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          }
        },
        "secureInfo": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          }
        },
        "updatedDirectly": {
          "type": "boolean"
        }
      },
      "type": "object",
      "required": [
        "createdDirectly",
        "curationRetryCount",
        "deregisterInfos",
        "info",
        "secureInfo",
        "updatedDirectly"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getNdbTmsCapabilityLastDbLogMetadataDeregisterInfo:getNdbTmsCapabilityLastDbLogMetadataDeregisterInfo": {
      "properties": {
        "message": {
          "type": "string"
        },
        "operations": {
          "type": "array",
          "items": {
            "type": "string"
          }
        }
      },
      "type": "object",
      "required": [
        "message",
        "operations"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getNetworkSecurityPoliciesV2NetworkPolicy:getNetworkSecurityPoliciesV2NetworkPolicy": {
      "properties": {
        "createdBy": {
          "type": "string",
          "description": "created by.\n"
        },
        "creationTime": {
          "type": "string",
          "description": "creation time of NSP\n"
        },
        "description": {
          "type": "string",
          "description": "A user defined annotation for a policy.\n"
        },
        "extId": {
          "type": "string",
          "description": "Network security policy UUID.\n"
        },
        "isHitlogEnabled": {
          "type": "boolean",
          "description": "If Hitlog is enabled.\n"
        },
        "isIpv6TrafficAllowed": {
          "type": "boolean",
          "description": "If Ipv6 Traffic is allowed.\n"
        },
        "isSystemDefined": {
          "type": "boolean",
          "description": "Is system defined NSP\n"
        },
        "lastUpdateTime": {
          "type": "string",
          "description": "last updated time\n"
        },
        "links": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetNetworkSecurityPoliciesV2NetworkPolicyLink:getNetworkSecurityPoliciesV2NetworkPolicyLink"
          },
          "description": "A HATEOAS style link for the response. Each link contains a user-friendly name identifying the link and an address for retrieving the particular resource.\n"
        },
        "name": {
          "type": "string",
          "description": "Name of the Flow Network Security Policy.\n"
        },
        "rules": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetNetworkSecurityPoliciesV2NetworkPolicyRule:getNetworkSecurityPoliciesV2NetworkPolicyRule"
          },
          "description": "A list of rules that form a policy. For isolation policies, use isolation rules; for application or quarantine policies, use application rules.\n"
        },
        "scope": {
          "type": "string",
          "description": "Defines the scope of the policy. Currently, only ALL_VLAN and VPC_LIST are supported. If scope is not provided, the default is set based on whether vpcReferences field is provided or not.\n"
        },
        "securedGroups": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "Uuids of the secured groups in the NSP.\n"
        },
        "state": {
          "type": "string",
          "description": "Whether the policy is applied or monitored; can be omitted or set null to save the policy without applying or monitoring it.\n"
        },
        "tenantId": {
          "type": "string",
          "description": "A globally unique identifier that represents the tenant that owns this entity\n"
        },
        "type": {
          "type": "string",
          "description": "Defines the type of rules that can be used in a policy.\n"
        },
        "vpcReferences": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "A list of external ids for VPCs, used only when the scope of policy is a list of VPCs.\n"
        }
      },
      "type": "object",
      "required": [
        "createdBy",
        "creationTime",
        "description",
        "extId",
        "isHitlogEnabled",
        "isIpv6TrafficAllowed",
        "isSystemDefined",
        "lastUpdateTime",
        "links",
        "name",
        "rules",
        "scope",
        "securedGroups",
        "state",
        "tenantId",
        "type",
        "vpcReferences"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getNetworkSecurityPoliciesV2NetworkPolicyLink:getNetworkSecurityPoliciesV2NetworkPolicyLink": {
      "properties": {
        "href": {
          "type": "string",
          "description": "- The URL at which the entity described by the link can be accessed.\n"
        },
        "rel": {
          "type": "string",
          "description": "- A name that identifies the relationship of the link to the object that is returned by the URL. The unique value of \"self\" identifies the URL for the object.\n\nSee detailed information in [Nutanix List Security Policies v4](https://developers.nutanix.com/api-reference?namespace=microseg&version=v4.0#tag/NetworkSecurityPolicies/operation/listNetworkSecurityPolicies).\n"
        }
      },
      "type": "object",
      "required": [
        "href",
        "rel"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getNetworkSecurityPoliciesV2NetworkPolicyRule:getNetworkSecurityPoliciesV2NetworkPolicyRule": {
      "properties": {
        "description": {
          "type": "string",
          "description": "A user defined annotation for a rule.\n"
        },
        "extId": {
          "type": "string",
          "description": "A globally unique identifier of an instance that is suitable for external consumption.\n"
        },
        "links": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetNetworkSecurityPoliciesV2NetworkPolicyRuleLink:getNetworkSecurityPoliciesV2NetworkPolicyRuleLink"
          },
          "description": "A HATEOAS style link for the response. Each link contains a user-friendly name identifying the link and an address for retrieving the particular resource.\n"
        },
        "specs": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetNetworkSecurityPoliciesV2NetworkPolicyRuleSpec:getNetworkSecurityPoliciesV2NetworkPolicyRuleSpec"
          },
          "description": "Spec for rules.\n"
        },
        "type": {
          "type": "string",
          "description": "The type for a rule - the value chosen here restricts which specification can be chosen.\n"
        }
      },
      "type": "object",
      "required": [
        "description",
        "extId",
        "links",
        "specs",
        "type"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getNetworkSecurityPoliciesV2NetworkPolicyRuleLink:getNetworkSecurityPoliciesV2NetworkPolicyRuleLink": {
      "properties": {
        "href": {
          "type": "string",
          "description": "- The URL at which the entity described by the link can be accessed.\n"
        },
        "rel": {
          "type": "string",
          "description": "- A name that identifies the relationship of the link to the object that is returned by the URL. The unique value of \"self\" identifies the URL for the object.\n\nSee detailed information in [Nutanix List Security Policies v4](https://developers.nutanix.com/api-reference?namespace=microseg&version=v4.0#tag/NetworkSecurityPolicies/operation/listNetworkSecurityPolicies).\n"
        }
      },
      "type": "object",
      "required": [
        "href",
        "rel"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getNetworkSecurityPoliciesV2NetworkPolicyRuleSpec:getNetworkSecurityPoliciesV2NetworkPolicyRuleSpec": {
      "properties": {
        "applicationRuleSpecs": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetNetworkSecurityPoliciesV2NetworkPolicyRuleSpecApplicationRuleSpec:getNetworkSecurityPoliciesV2NetworkPolicyRuleSpecApplicationRuleSpec"
          },
          "description": "Application Rule Spec.\n"
        },
        "intraEntityGroupRuleSpecs": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetNetworkSecurityPoliciesV2NetworkPolicyRuleSpecIntraEntityGroupRuleSpec:getNetworkSecurityPoliciesV2NetworkPolicyRuleSpecIntraEntityGroupRuleSpec"
          },
          "description": "Intra entity group Rule Spec\n"
        },
        "multiEnvIsolationRuleSpecs": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetNetworkSecurityPoliciesV2NetworkPolicyRuleSpecMultiEnvIsolationRuleSpec:getNetworkSecurityPoliciesV2NetworkPolicyRuleSpecMultiEnvIsolationRuleSpec"
          },
          "description": "Multi Environment Isolation Rule Spec.\n"
        },
        "twoEnvIsolationRuleSpecs": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetNetworkSecurityPoliciesV2NetworkPolicyRuleSpecTwoEnvIsolationRuleSpec:getNetworkSecurityPoliciesV2NetworkPolicyRuleSpecTwoEnvIsolationRuleSpec"
          },
          "description": "Two Environment Isolation Rule Spec.\n"
        }
      },
      "type": "object",
      "required": [
        "applicationRuleSpecs",
        "intraEntityGroupRuleSpecs",
        "multiEnvIsolationRuleSpecs",
        "twoEnvIsolationRuleSpecs"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getNetworkSecurityPoliciesV2NetworkPolicyRuleSpecApplicationRuleSpec:getNetworkSecurityPoliciesV2NetworkPolicyRuleSpecApplicationRuleSpec": {
      "properties": {
        "destAddressGroupReferences": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "A list of address group references.\n"
        },
        "destAllowSpec": {
          "type": "string",
          "description": "A specification to how allow mode traffic should be applied, either ALL or NONE.\n"
        },
        "destCategoryReferences": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "List of categories that define a set of network endpoints as outbound.\n"
        },
        "destSubnets": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetNetworkSecurityPoliciesV2NetworkPolicyRuleSpecApplicationRuleSpecDestSubnet:getNetworkSecurityPoliciesV2NetworkPolicyRuleSpecApplicationRuleSpecDestSubnet"
          },
          "description": "destination subnet value\n"
        },
        "icmpServices": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetNetworkSecurityPoliciesV2NetworkPolicyRuleSpecApplicationRuleSpecIcmpService:getNetworkSecurityPoliciesV2NetworkPolicyRuleSpecApplicationRuleSpecIcmpService"
          },
          "description": "icmp services\n"
        },
        "isAllProtocolAllowed": {
          "type": "boolean",
          "description": "Denotes if rule allows traffic for all protocol.\n"
        },
        "networkFunctionChainReference": {
          "type": "string",
          "description": "A reference to the network function chain in the rule.\n"
        },
        "securedGroupCategoryReferences": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "A set of network endpoints which is protected by a Network Security Policy and defined as a list of categories.\n"
        },
        "serviceGroupReferences": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "A list of service group references.\n"
        },
        "srcAddressGroupReferences": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "A list of address group references.\n"
        },
        "srcAllowSpec": {
          "type": "string",
          "description": "A specification to how allow mode traffic should be applied, either ALL or NONE.\n"
        },
        "srcCategoryReferences": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "List of categories that define a set of network endpoints as inbound.\n"
        },
        "srcSubnets": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetNetworkSecurityPoliciesV2NetworkPolicyRuleSpecApplicationRuleSpecSrcSubnet:getNetworkSecurityPoliciesV2NetworkPolicyRuleSpecApplicationRuleSpecSrcSubnet"
          },
          "description": "source subnet value\n"
        },
        "tcpServices": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetNetworkSecurityPoliciesV2NetworkPolicyRuleSpecApplicationRuleSpecTcpService:getNetworkSecurityPoliciesV2NetworkPolicyRuleSpecApplicationRuleSpecTcpService"
          },
          "description": "tcp services\n"
        },
        "udpServices": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetNetworkSecurityPoliciesV2NetworkPolicyRuleSpecApplicationRuleSpecUdpService:getNetworkSecurityPoliciesV2NetworkPolicyRuleSpecApplicationRuleSpecUdpService"
          },
          "description": "udp services\n"
        }
      },
      "type": "object",
      "required": [
        "destAddressGroupReferences",
        "destAllowSpec",
        "destCategoryReferences",
        "destSubnets",
        "icmpServices",
        "isAllProtocolAllowed",
        "networkFunctionChainReference",
        "securedGroupCategoryReferences",
        "serviceGroupReferences",
        "srcAddressGroupReferences",
        "srcAllowSpec",
        "srcCategoryReferences",
        "srcSubnets",
        "tcpServices",
        "udpServices"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getNetworkSecurityPoliciesV2NetworkPolicyRuleSpecApplicationRuleSpecDestSubnet:getNetworkSecurityPoliciesV2NetworkPolicyRuleSpecApplicationRuleSpecDestSubnet": {
      "properties": {
        "prefixLength": {
          "type": "integer"
        },
        "value": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "prefixLength",
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getNetworkSecurityPoliciesV2NetworkPolicyRuleSpecApplicationRuleSpecIcmpService:getNetworkSecurityPoliciesV2NetworkPolicyRuleSpecApplicationRuleSpecIcmpService": {
      "properties": {
        "code": {
          "type": "integer",
          "description": "Icmp service Code. Ignore this field if Code has to be ANY.\n"
        },
        "isAllAllowed": {
          "type": "boolean",
          "description": "Set this field to true if both Type and Code is ANY.\n"
        },
        "type": {
          "type": "integer",
          "description": "Icmp service Type. Ignore this field if Type has to be ANY.\n"
        }
      },
      "type": "object",
      "required": [
        "code",
        "isAllAllowed",
        "type"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getNetworkSecurityPoliciesV2NetworkPolicyRuleSpecApplicationRuleSpecSrcSubnet:getNetworkSecurityPoliciesV2NetworkPolicyRuleSpecApplicationRuleSpecSrcSubnet": {
      "properties": {
        "prefixLength": {
          "type": "integer"
        },
        "value": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "prefixLength",
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getNetworkSecurityPoliciesV2NetworkPolicyRuleSpecApplicationRuleSpecTcpService:getNetworkSecurityPoliciesV2NetworkPolicyRuleSpecApplicationRuleSpecTcpService": {
      "properties": {
        "endPort": {
          "type": "integer",
          "description": "end port\n"
        },
        "startPort": {
          "type": "integer",
          "description": "start port\n"
        }
      },
      "type": "object",
      "required": [
        "endPort",
        "startPort"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getNetworkSecurityPoliciesV2NetworkPolicyRuleSpecApplicationRuleSpecUdpService:getNetworkSecurityPoliciesV2NetworkPolicyRuleSpecApplicationRuleSpecUdpService": {
      "properties": {
        "endPort": {
          "type": "integer",
          "description": "end port\n"
        },
        "startPort": {
          "type": "integer",
          "description": "start port\n"
        }
      },
      "type": "object",
      "required": [
        "endPort",
        "startPort"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getNetworkSecurityPoliciesV2NetworkPolicyRuleSpecIntraEntityGroupRuleSpec:getNetworkSecurityPoliciesV2NetworkPolicyRuleSpecIntraEntityGroupRuleSpec": {
      "properties": {
        "securedGroupAction": {
          "type": "string",
          "description": "List of secured group action.\n"
        },
        "securedGroupCategoryReferences": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "A specification to whether traffic between intra secured group entities should be allowed or denied.\n"
        }
      },
      "type": "object",
      "required": [
        "securedGroupAction",
        "securedGroupCategoryReferences"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getNetworkSecurityPoliciesV2NetworkPolicyRuleSpecMultiEnvIsolationRuleSpec:getNetworkSecurityPoliciesV2NetworkPolicyRuleSpecMultiEnvIsolationRuleSpec": {
      "properties": {
        "specs": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetNetworkSecurityPoliciesV2NetworkPolicyRuleSpecMultiEnvIsolationRuleSpecSpec:getNetworkSecurityPoliciesV2NetworkPolicyRuleSpecMultiEnvIsolationRuleSpecSpec"
          },
          "description": "Multi Environment Isolation Rule Spec.\n"
        }
      },
      "type": "object",
      "required": [
        "specs"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getNetworkSecurityPoliciesV2NetworkPolicyRuleSpecMultiEnvIsolationRuleSpecSpec:getNetworkSecurityPoliciesV2NetworkPolicyRuleSpecMultiEnvIsolationRuleSpecSpec": {
      "properties": {
        "allToAllIsolationGroups": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetNetworkSecurityPoliciesV2NetworkPolicyRuleSpecMultiEnvIsolationRuleSpecSpecAllToAllIsolationGroup:getNetworkSecurityPoliciesV2NetworkPolicyRuleSpecMultiEnvIsolationRuleSpecSpecAllToAllIsolationGroup"
          },
          "description": "all to all isolation group\n"
        }
      },
      "type": "object",
      "required": [
        "allToAllIsolationGroups"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getNetworkSecurityPoliciesV2NetworkPolicyRuleSpecMultiEnvIsolationRuleSpecSpecAllToAllIsolationGroup:getNetworkSecurityPoliciesV2NetworkPolicyRuleSpecMultiEnvIsolationRuleSpecSpecAllToAllIsolationGroup": {
      "properties": {
        "isolationGroups": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetNetworkSecurityPoliciesV2NetworkPolicyRuleSpecMultiEnvIsolationRuleSpecSpecAllToAllIsolationGroupIsolationGroup:getNetworkSecurityPoliciesV2NetworkPolicyRuleSpecMultiEnvIsolationRuleSpecSpecAllToAllIsolationGroupIsolationGroup"
          },
          "description": "Denotes the list of secured groups that will be used in All to All mutual isolation.\n"
        }
      },
      "type": "object",
      "required": [
        "isolationGroups"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getNetworkSecurityPoliciesV2NetworkPolicyRuleSpecMultiEnvIsolationRuleSpecSpecAllToAllIsolationGroupIsolationGroup:getNetworkSecurityPoliciesV2NetworkPolicyRuleSpecMultiEnvIsolationRuleSpecSpecAllToAllIsolationGroupIsolationGroup": {
      "properties": {
        "groupCategoryReferences": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "External identifiers of categories belonging to the isolation group.\n"
        }
      },
      "type": "object",
      "required": [
        "groupCategoryReferences"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getNetworkSecurityPoliciesV2NetworkPolicyRuleSpecTwoEnvIsolationRuleSpec:getNetworkSecurityPoliciesV2NetworkPolicyRuleSpecTwoEnvIsolationRuleSpec": {
      "properties": {
        "firstIsolationGroups": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "Denotes the first group of category uuids that will be used in an isolation policy.\n"
        },
        "secondIsolationGroups": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "Denotes the second group of category uuids that will be used in an isolation policy.\n"
        }
      },
      "type": "object",
      "required": [
        "firstIsolationGroups",
        "secondIsolationGroups"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getNetworkSecurityPolicyV2Link:getNetworkSecurityPolicyV2Link": {
      "properties": {
        "href": {
          "type": "string",
          "description": "- The URL at which the entity described by the link can be accessed.\n"
        },
        "rel": {
          "type": "string",
          "description": "- A name that identifies the relationship of the link to the object that is returned by the URL. The unique value of \"self\" identifies the URL for the object.\n"
        }
      },
      "type": "object",
      "required": [
        "href",
        "rel"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getNetworkSecurityPolicyV2Rule:getNetworkSecurityPolicyV2Rule": {
      "properties": {
        "description": {
          "type": "string",
          "description": "A user defined annotation for a rule.\n"
        },
        "extId": {
          "type": "string",
          "description": "Network security policy UUID.\n"
        },
        "links": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetNetworkSecurityPolicyV2RuleLink:getNetworkSecurityPolicyV2RuleLink"
          },
          "description": "A HATEOAS style link for the response. Each link contains a user-friendly name identifying the link and an address for retrieving the particular resource.\n"
        },
        "specs": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetNetworkSecurityPolicyV2RuleSpec:getNetworkSecurityPolicyV2RuleSpec"
          },
          "description": "Multi Environment Isolation Rule Spec.\n"
        },
        "type": {
          "type": "string",
          "description": "Icmp service Type. Ignore this field if Type has to be ANY.\n"
        }
      },
      "type": "object",
      "required": [
        "description",
        "extId",
        "links",
        "specs",
        "type"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getNetworkSecurityPolicyV2RuleLink:getNetworkSecurityPolicyV2RuleLink": {
      "properties": {
        "href": {
          "type": "string",
          "description": "- The URL at which the entity described by the link can be accessed.\n"
        },
        "rel": {
          "type": "string",
          "description": "- A name that identifies the relationship of the link to the object that is returned by the URL. The unique value of \"self\" identifies the URL for the object.\n"
        }
      },
      "type": "object",
      "required": [
        "href",
        "rel"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getNetworkSecurityPolicyV2RuleSpec:getNetworkSecurityPolicyV2RuleSpec": {
      "properties": {
        "applicationRuleSpecs": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetNetworkSecurityPolicyV2RuleSpecApplicationRuleSpec:getNetworkSecurityPolicyV2RuleSpecApplicationRuleSpec"
          },
          "description": "Application Rule Spec.\n"
        },
        "intraEntityGroupRuleSpecs": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetNetworkSecurityPolicyV2RuleSpecIntraEntityGroupRuleSpec:getNetworkSecurityPolicyV2RuleSpecIntraEntityGroupRuleSpec"
          },
          "description": "Intra entity group Rule Spec\n"
        },
        "multiEnvIsolationRuleSpecs": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetNetworkSecurityPolicyV2RuleSpecMultiEnvIsolationRuleSpec:getNetworkSecurityPolicyV2RuleSpecMultiEnvIsolationRuleSpec"
          },
          "description": "Multi Environment Isolation Rule Spec.\n"
        },
        "twoEnvIsolationRuleSpecs": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetNetworkSecurityPolicyV2RuleSpecTwoEnvIsolationRuleSpec:getNetworkSecurityPolicyV2RuleSpecTwoEnvIsolationRuleSpec"
          },
          "description": "Two Environment Isolation Rule Spec.\n"
        }
      },
      "type": "object",
      "required": [
        "applicationRuleSpecs",
        "intraEntityGroupRuleSpecs",
        "multiEnvIsolationRuleSpecs",
        "twoEnvIsolationRuleSpecs"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getNetworkSecurityPolicyV2RuleSpecApplicationRuleSpec:getNetworkSecurityPolicyV2RuleSpecApplicationRuleSpec": {
      "properties": {
        "destAddressGroupReferences": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "A list of address group references.\n"
        },
        "destAllowSpec": {
          "type": "string",
          "description": "A specification to how allow mode traffic should be applied, either ALL or NONE.\n"
        },
        "destCategoryReferences": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "List of categories that define a set of network endpoints as outbound.\n"
        },
        "destSubnets": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetNetworkSecurityPolicyV2RuleSpecApplicationRuleSpecDestSubnet:getNetworkSecurityPolicyV2RuleSpecApplicationRuleSpecDestSubnet"
          },
          "description": "destination subnet value\n"
        },
        "icmpServices": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetNetworkSecurityPolicyV2RuleSpecApplicationRuleSpecIcmpService:getNetworkSecurityPolicyV2RuleSpecApplicationRuleSpecIcmpService"
          },
          "description": "icmp services\n"
        },
        "isAllProtocolAllowed": {
          "type": "boolean",
          "description": "Denotes if rule allows traffic for all protocol.\n"
        },
        "networkFunctionChainReference": {
          "type": "string",
          "description": "A reference to the network function chain in the rule.\n"
        },
        "securedGroupCategoryReferences": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "A specification to whether traffic between intra secured group entities should be allowed or denied.\n"
        },
        "serviceGroupReferences": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "A list of service group references.\n"
        },
        "srcAddressGroupReferences": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "A list of address group references.\n"
        },
        "srcAllowSpec": {
          "type": "string",
          "description": "A specification to how allow mode traffic should be applied, either ALL or NONE.\n"
        },
        "srcCategoryReferences": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "List of categories that define a set of network endpoints as inbound.\n"
        },
        "srcSubnets": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetNetworkSecurityPolicyV2RuleSpecApplicationRuleSpecSrcSubnet:getNetworkSecurityPolicyV2RuleSpecApplicationRuleSpecSrcSubnet"
          },
          "description": "source subnet value\n"
        },
        "tcpServices": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetNetworkSecurityPolicyV2RuleSpecApplicationRuleSpecTcpService:getNetworkSecurityPolicyV2RuleSpecApplicationRuleSpecTcpService"
          },
          "description": "tcp services\n"
        },
        "udpServices": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetNetworkSecurityPolicyV2RuleSpecApplicationRuleSpecUdpService:getNetworkSecurityPolicyV2RuleSpecApplicationRuleSpecUdpService"
          },
          "description": "udp services\n"
        }
      },
      "type": "object",
      "required": [
        "destAddressGroupReferences",
        "destAllowSpec",
        "destCategoryReferences",
        "destSubnets",
        "icmpServices",
        "isAllProtocolAllowed",
        "networkFunctionChainReference",
        "securedGroupCategoryReferences",
        "serviceGroupReferences",
        "srcAddressGroupReferences",
        "srcAllowSpec",
        "srcCategoryReferences",
        "srcSubnets",
        "tcpServices",
        "udpServices"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getNetworkSecurityPolicyV2RuleSpecApplicationRuleSpecDestSubnet:getNetworkSecurityPolicyV2RuleSpecApplicationRuleSpecDestSubnet": {
      "properties": {
        "prefixLength": {
          "type": "integer"
        },
        "value": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "prefixLength",
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getNetworkSecurityPolicyV2RuleSpecApplicationRuleSpecIcmpService:getNetworkSecurityPolicyV2RuleSpecApplicationRuleSpecIcmpService": {
      "properties": {
        "code": {
          "type": "integer",
          "description": "Icmp service Code. Ignore this field if Code has to be ANY.\n"
        },
        "isAllAllowed": {
          "type": "boolean",
          "description": "Set this field to true if both Type and Code is ANY.\n"
        },
        "type": {
          "type": "integer",
          "description": "Icmp service Type. Ignore this field if Type has to be ANY.\n"
        }
      },
      "type": "object",
      "required": [
        "code",
        "isAllAllowed",
        "type"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getNetworkSecurityPolicyV2RuleSpecApplicationRuleSpecSrcSubnet:getNetworkSecurityPolicyV2RuleSpecApplicationRuleSpecSrcSubnet": {
      "properties": {
        "prefixLength": {
          "type": "integer"
        },
        "value": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "prefixLength",
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getNetworkSecurityPolicyV2RuleSpecApplicationRuleSpecTcpService:getNetworkSecurityPolicyV2RuleSpecApplicationRuleSpecTcpService": {
      "properties": {
        "endPort": {
          "type": "integer",
          "description": "end port\n"
        },
        "startPort": {
          "type": "integer",
          "description": "start port\n"
        }
      },
      "type": "object",
      "required": [
        "endPort",
        "startPort"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getNetworkSecurityPolicyV2RuleSpecApplicationRuleSpecUdpService:getNetworkSecurityPolicyV2RuleSpecApplicationRuleSpecUdpService": {
      "properties": {
        "endPort": {
          "type": "integer",
          "description": "end port\n"
        },
        "startPort": {
          "type": "integer",
          "description": "start port\n"
        }
      },
      "type": "object",
      "required": [
        "endPort",
        "startPort"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getNetworkSecurityPolicyV2RuleSpecIntraEntityGroupRuleSpec:getNetworkSecurityPolicyV2RuleSpecIntraEntityGroupRuleSpec": {
      "properties": {
        "securedGroupAction": {
          "type": "string",
          "description": "List of secured group action.\n"
        },
        "securedGroupCategoryReferences": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "A specification to whether traffic between intra secured group entities should be allowed or denied.\n"
        }
      },
      "type": "object",
      "required": [
        "securedGroupAction",
        "securedGroupCategoryReferences"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getNetworkSecurityPolicyV2RuleSpecMultiEnvIsolationRuleSpec:getNetworkSecurityPolicyV2RuleSpecMultiEnvIsolationRuleSpec": {
      "properties": {
        "specs": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetNetworkSecurityPolicyV2RuleSpecMultiEnvIsolationRuleSpecSpec:getNetworkSecurityPolicyV2RuleSpecMultiEnvIsolationRuleSpecSpec"
          },
          "description": "Multi Environment Isolation Rule Spec.\n"
        }
      },
      "type": "object",
      "required": [
        "specs"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getNetworkSecurityPolicyV2RuleSpecMultiEnvIsolationRuleSpecSpec:getNetworkSecurityPolicyV2RuleSpecMultiEnvIsolationRuleSpecSpec": {
      "properties": {
        "allToAllIsolationGroups": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetNetworkSecurityPolicyV2RuleSpecMultiEnvIsolationRuleSpecSpecAllToAllIsolationGroup:getNetworkSecurityPolicyV2RuleSpecMultiEnvIsolationRuleSpecSpecAllToAllIsolationGroup"
          },
          "description": "all to all isolation group\n"
        }
      },
      "type": "object",
      "required": [
        "allToAllIsolationGroups"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getNetworkSecurityPolicyV2RuleSpecMultiEnvIsolationRuleSpecSpecAllToAllIsolationGroup:getNetworkSecurityPolicyV2RuleSpecMultiEnvIsolationRuleSpecSpecAllToAllIsolationGroup": {
      "properties": {
        "isolationGroups": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetNetworkSecurityPolicyV2RuleSpecMultiEnvIsolationRuleSpecSpecAllToAllIsolationGroupIsolationGroup:getNetworkSecurityPolicyV2RuleSpecMultiEnvIsolationRuleSpecSpecAllToAllIsolationGroupIsolationGroup"
          },
          "description": "Denotes the list of secured groups that will be used in All to All mutual isolation.\n"
        }
      },
      "type": "object",
      "required": [
        "isolationGroups"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getNetworkSecurityPolicyV2RuleSpecMultiEnvIsolationRuleSpecSpecAllToAllIsolationGroupIsolationGroup:getNetworkSecurityPolicyV2RuleSpecMultiEnvIsolationRuleSpecSpecAllToAllIsolationGroupIsolationGroup": {
      "properties": {
        "groupCategoryReferences": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "External identifiers of categories belonging to the isolation group.\n"
        }
      },
      "type": "object",
      "required": [
        "groupCategoryReferences"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getNetworkSecurityPolicyV2RuleSpecTwoEnvIsolationRuleSpec:getNetworkSecurityPolicyV2RuleSpecTwoEnvIsolationRuleSpec": {
      "properties": {
        "firstIsolationGroups": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "Denotes the first group of category uuids that will be used in an isolation policy.\n"
        },
        "secondIsolationGroups": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "Denotes the second group of category uuids that will be used in an isolation policy.\n"
        }
      },
      "type": "object",
      "required": [
        "firstIsolationGroups",
        "secondIsolationGroups"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getNetworkSecurityRuleAdRuleInboundAllowList:getNetworkSecurityRuleAdRuleInboundAllowList": {
      "properties": {
        "addressGroupInclusionLists": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetNetworkSecurityRuleAdRuleInboundAllowListAddressGroupInclusionList:getNetworkSecurityRuleAdRuleInboundAllowListAddressGroupInclusionList"
          }
        },
        "expirationTime": {
          "type": "string"
        },
        "filterKindLists": {
          "type": "array",
          "items": {
            "type": "string"
          }
        },
        "filterParams": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetNetworkSecurityRuleAdRuleInboundAllowListFilterParam:getNetworkSecurityRuleAdRuleInboundAllowListFilterParam"
          }
        },
        "filterType": {
          "type": "string"
        },
        "icmpTypeCodeLists": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetNetworkSecurityRuleAdRuleInboundAllowListIcmpTypeCodeList:getNetworkSecurityRuleAdRuleInboundAllowListIcmpTypeCodeList"
          }
        },
        "ipSubnet": {
          "type": "string"
        },
        "ipSubnetPrefixLength": {
          "type": "string"
        },
        "networkFunctionChainReference": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          }
        },
        "peerSpecificationType": {
          "type": "string"
        },
        "protocol": {
          "type": "string"
        },
        "serviceGroupLists": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetNetworkSecurityRuleAdRuleInboundAllowListServiceGroupList:getNetworkSecurityRuleAdRuleInboundAllowListServiceGroupList"
          }
        },
        "tcpPortRangeLists": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetNetworkSecurityRuleAdRuleInboundAllowListTcpPortRangeList:getNetworkSecurityRuleAdRuleInboundAllowListTcpPortRangeList"
          }
        },
        "udpPortRangeLists": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetNetworkSecurityRuleAdRuleInboundAllowListUdpPortRangeList:getNetworkSecurityRuleAdRuleInboundAllowListUdpPortRangeList"
          }
        }
      },
      "type": "object",
      "required": [
        "addressGroupInclusionLists",
        "expirationTime",
        "filterKindLists",
        "filterParams",
        "filterType",
        "icmpTypeCodeLists",
        "ipSubnet",
        "ipSubnetPrefixLength",
        "networkFunctionChainReference",
        "peerSpecificationType",
        "protocol",
        "serviceGroupLists",
        "tcpPortRangeLists",
        "udpPortRangeLists"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getNetworkSecurityRuleAdRuleInboundAllowListAddressGroupInclusionList:getNetworkSecurityRuleAdRuleInboundAllowListAddressGroupInclusionList": {
      "properties": {
        "kind": {
          "type": "string",
          "description": "- The kind name (Default value: project).\n"
        },
        "name": {
          "type": "string",
          "description": "- the name.\n"
        },
        "uuid": {
          "type": "string",
          "description": "- the UUID.\n"
        }
      },
      "type": "object",
      "required": [
        "kind",
        "name",
        "uuid"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getNetworkSecurityRuleAdRuleInboundAllowListFilterParam:getNetworkSecurityRuleAdRuleInboundAllowListFilterParam": {
      "properties": {
        "name": {
          "type": "string",
          "description": "- the name.\n"
        },
        "values": {
          "type": "array",
          "items": {
            "type": "string"
          }
        }
      },
      "type": "object",
      "required": [
        "name",
        "values"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getNetworkSecurityRuleAdRuleInboundAllowListIcmpTypeCodeList:getNetworkSecurityRuleAdRuleInboundAllowListIcmpTypeCodeList": {
      "properties": {
        "code": {
          "type": "string"
        },
        "type": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "code",
        "type"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getNetworkSecurityRuleAdRuleInboundAllowListServiceGroupList:getNetworkSecurityRuleAdRuleInboundAllowListServiceGroupList": {
      "properties": {
        "kind": {
          "type": "string",
          "description": "- The kind name (Default value: project).\n"
        },
        "name": {
          "type": "string",
          "description": "- the name.\n"
        },
        "uuid": {
          "type": "string",
          "description": "- the UUID.\n"
        }
      },
      "type": "object",
      "required": [
        "kind",
        "name",
        "uuid"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getNetworkSecurityRuleAdRuleInboundAllowListTcpPortRangeList:getNetworkSecurityRuleAdRuleInboundAllowListTcpPortRangeList": {
      "properties": {
        "endPort": {
          "type": "integer"
        },
        "startPort": {
          "type": "integer"
        }
      },
      "type": "object",
      "required": [
        "endPort",
        "startPort"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getNetworkSecurityRuleAdRuleInboundAllowListUdpPortRangeList:getNetworkSecurityRuleAdRuleInboundAllowListUdpPortRangeList": {
      "properties": {
        "endPort": {
          "type": "integer"
        },
        "startPort": {
          "type": "integer"
        }
      },
      "type": "object",
      "required": [
        "endPort",
        "startPort"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getNetworkSecurityRuleAdRuleOutboundAllowList:getNetworkSecurityRuleAdRuleOutboundAllowList": {
      "properties": {
        "addressGroupInclusionLists": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetNetworkSecurityRuleAdRuleOutboundAllowListAddressGroupInclusionList:getNetworkSecurityRuleAdRuleOutboundAllowListAddressGroupInclusionList"
          }
        },
        "expirationTime": {
          "type": "string"
        },
        "filterKindLists": {
          "type": "array",
          "items": {
            "type": "string"
          }
        },
        "filterParams": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetNetworkSecurityRuleAdRuleOutboundAllowListFilterParam:getNetworkSecurityRuleAdRuleOutboundAllowListFilterParam"
          }
        },
        "filterType": {
          "type": "string"
        },
        "icmpTypeCodeLists": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetNetworkSecurityRuleAdRuleOutboundAllowListIcmpTypeCodeList:getNetworkSecurityRuleAdRuleOutboundAllowListIcmpTypeCodeList"
          }
        },
        "ipSubnet": {
          "type": "string"
        },
        "ipSubnetPrefixLength": {
          "type": "string"
        },
        "networkFunctionChainReference": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          }
        },
        "peerSpecificationType": {
          "type": "string"
        },
        "protocol": {
          "type": "string"
        },
        "serviceGroupLists": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetNetworkSecurityRuleAdRuleOutboundAllowListServiceGroupList:getNetworkSecurityRuleAdRuleOutboundAllowListServiceGroupList"
          }
        },
        "tcpPortRangeLists": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetNetworkSecurityRuleAdRuleOutboundAllowListTcpPortRangeList:getNetworkSecurityRuleAdRuleOutboundAllowListTcpPortRangeList"
          }
        },
        "udpPortRangeLists": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetNetworkSecurityRuleAdRuleOutboundAllowListUdpPortRangeList:getNetworkSecurityRuleAdRuleOutboundAllowListUdpPortRangeList"
          }
        }
      },
      "type": "object",
      "required": [
        "addressGroupInclusionLists",
        "expirationTime",
        "filterKindLists",
        "filterParams",
        "filterType",
        "icmpTypeCodeLists",
        "ipSubnet",
        "ipSubnetPrefixLength",
        "networkFunctionChainReference",
        "peerSpecificationType",
        "protocol",
        "serviceGroupLists",
        "tcpPortRangeLists",
        "udpPortRangeLists"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getNetworkSecurityRuleAdRuleOutboundAllowListAddressGroupInclusionList:getNetworkSecurityRuleAdRuleOutboundAllowListAddressGroupInclusionList": {
      "properties": {
        "kind": {
          "type": "string",
          "description": "- The kind name (Default value: project).\n"
        },
        "name": {
          "type": "string",
          "description": "- the name.\n"
        },
        "uuid": {
          "type": "string",
          "description": "- the UUID.\n"
        }
      },
      "type": "object",
      "required": [
        "kind",
        "name",
        "uuid"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getNetworkSecurityRuleAdRuleOutboundAllowListFilterParam:getNetworkSecurityRuleAdRuleOutboundAllowListFilterParam": {
      "properties": {
        "name": {
          "type": "string",
          "description": "- the name.\n"
        },
        "values": {
          "type": "array",
          "items": {
            "type": "string"
          }
        }
      },
      "type": "object",
      "required": [
        "name",
        "values"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getNetworkSecurityRuleAdRuleOutboundAllowListIcmpTypeCodeList:getNetworkSecurityRuleAdRuleOutboundAllowListIcmpTypeCodeList": {
      "properties": {
        "code": {
          "type": "string"
        },
        "type": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "code",
        "type"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getNetworkSecurityRuleAdRuleOutboundAllowListServiceGroupList:getNetworkSecurityRuleAdRuleOutboundAllowListServiceGroupList": {
      "properties": {
        "kind": {
          "type": "string",
          "description": "- The kind name (Default value: project).\n"
        },
        "name": {
          "type": "string",
          "description": "- the name.\n"
        },
        "uuid": {
          "type": "string",
          "description": "- the UUID.\n"
        }
      },
      "type": "object",
      "required": [
        "kind",
        "name",
        "uuid"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getNetworkSecurityRuleAdRuleOutboundAllowListTcpPortRangeList:getNetworkSecurityRuleAdRuleOutboundAllowListTcpPortRangeList": {
      "properties": {
        "endPort": {
          "type": "integer"
        },
        "startPort": {
          "type": "integer"
        }
      },
      "type": "object",
      "required": [
        "endPort",
        "startPort"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getNetworkSecurityRuleAdRuleOutboundAllowListUdpPortRangeList:getNetworkSecurityRuleAdRuleOutboundAllowListUdpPortRangeList": {
      "properties": {
        "endPort": {
          "type": "integer"
        },
        "startPort": {
          "type": "integer"
        }
      },
      "type": "object",
      "required": [
        "endPort",
        "startPort"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getNetworkSecurityRuleAdRuleTargetGroupFilterParam:getNetworkSecurityRuleAdRuleTargetGroupFilterParam": {
      "properties": {
        "name": {
          "type": "string",
          "description": "- the name.\n"
        },
        "values": {
          "type": "array",
          "items": {
            "type": "string"
          }
        }
      },
      "type": "object",
      "required": [
        "name",
        "values"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getNetworkSecurityRuleAppRuleInboundAllowList:getNetworkSecurityRuleAppRuleInboundAllowList": {
      "properties": {
        "addressGroupInclusionLists": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetNetworkSecurityRuleAppRuleInboundAllowListAddressGroupInclusionList:getNetworkSecurityRuleAppRuleInboundAllowListAddressGroupInclusionList"
          }
        },
        "expirationTime": {
          "type": "string"
        },
        "filterKindLists": {
          "type": "array",
          "items": {
            "type": "string"
          }
        },
        "filterParams": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetNetworkSecurityRuleAppRuleInboundAllowListFilterParam:getNetworkSecurityRuleAppRuleInboundAllowListFilterParam"
          }
        },
        "filterType": {
          "type": "string"
        },
        "icmpTypeCodeLists": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetNetworkSecurityRuleAppRuleInboundAllowListIcmpTypeCodeList:getNetworkSecurityRuleAppRuleInboundAllowListIcmpTypeCodeList"
          }
        },
        "ipSubnet": {
          "type": "string"
        },
        "ipSubnetPrefixLength": {
          "type": "string"
        },
        "networkFunctionChainReference": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          }
        },
        "peerSpecificationType": {
          "type": "string"
        },
        "protocol": {
          "type": "string"
        },
        "serviceGroupLists": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetNetworkSecurityRuleAppRuleInboundAllowListServiceGroupList:getNetworkSecurityRuleAppRuleInboundAllowListServiceGroupList"
          }
        },
        "tcpPortRangeLists": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetNetworkSecurityRuleAppRuleInboundAllowListTcpPortRangeList:getNetworkSecurityRuleAppRuleInboundAllowListTcpPortRangeList"
          }
        },
        "udpPortRangeLists": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetNetworkSecurityRuleAppRuleInboundAllowListUdpPortRangeList:getNetworkSecurityRuleAppRuleInboundAllowListUdpPortRangeList"
          }
        }
      },
      "type": "object",
      "required": [
        "addressGroupInclusionLists",
        "expirationTime",
        "filterKindLists",
        "filterParams",
        "filterType",
        "icmpTypeCodeLists",
        "ipSubnet",
        "ipSubnetPrefixLength",
        "networkFunctionChainReference",
        "peerSpecificationType",
        "protocol",
        "serviceGroupLists",
        "tcpPortRangeLists",
        "udpPortRangeLists"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getNetworkSecurityRuleAppRuleInboundAllowListAddressGroupInclusionList:getNetworkSecurityRuleAppRuleInboundAllowListAddressGroupInclusionList": {
      "properties": {
        "kind": {
          "type": "string",
          "description": "- The kind name (Default value: project).\n"
        },
        "name": {
          "type": "string",
          "description": "- the name.\n"
        },
        "uuid": {
          "type": "string",
          "description": "- the UUID.\n"
        }
      },
      "type": "object",
      "required": [
        "kind",
        "name",
        "uuid"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getNetworkSecurityRuleAppRuleInboundAllowListFilterParam:getNetworkSecurityRuleAppRuleInboundAllowListFilterParam": {
      "properties": {
        "name": {
          "type": "string",
          "description": "- the name.\n"
        },
        "values": {
          "type": "array",
          "items": {
            "type": "string"
          }
        }
      },
      "type": "object",
      "required": [
        "name",
        "values"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getNetworkSecurityRuleAppRuleInboundAllowListIcmpTypeCodeList:getNetworkSecurityRuleAppRuleInboundAllowListIcmpTypeCodeList": {
      "properties": {
        "code": {
          "type": "string"
        },
        "type": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "code",
        "type"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getNetworkSecurityRuleAppRuleInboundAllowListServiceGroupList:getNetworkSecurityRuleAppRuleInboundAllowListServiceGroupList": {
      "properties": {
        "kind": {
          "type": "string",
          "description": "- The kind name (Default value: project).\n"
        },
        "name": {
          "type": "string",
          "description": "- the name.\n"
        },
        "uuid": {
          "type": "string",
          "description": "- the UUID.\n"
        }
      },
      "type": "object",
      "required": [
        "kind",
        "name",
        "uuid"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getNetworkSecurityRuleAppRuleInboundAllowListTcpPortRangeList:getNetworkSecurityRuleAppRuleInboundAllowListTcpPortRangeList": {
      "properties": {
        "endPort": {
          "type": "integer"
        },
        "startPort": {
          "type": "integer"
        }
      },
      "type": "object",
      "required": [
        "endPort",
        "startPort"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getNetworkSecurityRuleAppRuleInboundAllowListUdpPortRangeList:getNetworkSecurityRuleAppRuleInboundAllowListUdpPortRangeList": {
      "properties": {
        "endPort": {
          "type": "integer"
        },
        "startPort": {
          "type": "integer"
        }
      },
      "type": "object",
      "required": [
        "endPort",
        "startPort"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getNetworkSecurityRuleAppRuleOutboundAllowList:getNetworkSecurityRuleAppRuleOutboundAllowList": {
      "properties": {
        "expirationTime": {
          "type": "string"
        },
        "filterKindLists": {
          "type": "array",
          "items": {
            "type": "string"
          }
        },
        "filterParams": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetNetworkSecurityRuleAppRuleOutboundAllowListFilterParam:getNetworkSecurityRuleAppRuleOutboundAllowListFilterParam"
          }
        },
        "filterType": {
          "type": "string"
        },
        "icmpTypeCodeLists": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetNetworkSecurityRuleAppRuleOutboundAllowListIcmpTypeCodeList:getNetworkSecurityRuleAppRuleOutboundAllowListIcmpTypeCodeList"
          }
        },
        "ipSubnet": {
          "type": "string"
        },
        "ipSubnetPrefixLength": {
          "type": "string"
        },
        "networkFunctionChainReference": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          }
        },
        "peerSpecificationType": {
          "type": "string"
        },
        "protocol": {
          "type": "string"
        },
        "tcpPortRangeLists": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetNetworkSecurityRuleAppRuleOutboundAllowListTcpPortRangeList:getNetworkSecurityRuleAppRuleOutboundAllowListTcpPortRangeList"
          }
        },
        "udpPortRangeLists": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetNetworkSecurityRuleAppRuleOutboundAllowListUdpPortRangeList:getNetworkSecurityRuleAppRuleOutboundAllowListUdpPortRangeList"
          }
        }
      },
      "type": "object",
      "required": [
        "expirationTime",
        "filterKindLists",
        "filterParams",
        "filterType",
        "icmpTypeCodeLists",
        "ipSubnet",
        "ipSubnetPrefixLength",
        "networkFunctionChainReference",
        "peerSpecificationType",
        "protocol",
        "tcpPortRangeLists",
        "udpPortRangeLists"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getNetworkSecurityRuleAppRuleOutboundAllowListFilterParam:getNetworkSecurityRuleAppRuleOutboundAllowListFilterParam": {
      "properties": {
        "name": {
          "type": "string",
          "description": "- the name.\n"
        },
        "values": {
          "type": "array",
          "items": {
            "type": "string"
          }
        }
      },
      "type": "object",
      "required": [
        "name",
        "values"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getNetworkSecurityRuleAppRuleOutboundAllowListIcmpTypeCodeList:getNetworkSecurityRuleAppRuleOutboundAllowListIcmpTypeCodeList": {
      "properties": {
        "code": {
          "type": "string"
        },
        "type": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "code",
        "type"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getNetworkSecurityRuleAppRuleOutboundAllowListTcpPortRangeList:getNetworkSecurityRuleAppRuleOutboundAllowListTcpPortRangeList": {
      "properties": {
        "endPort": {
          "type": "integer"
        },
        "startPort": {
          "type": "integer"
        }
      },
      "type": "object",
      "required": [
        "endPort",
        "startPort"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getNetworkSecurityRuleAppRuleOutboundAllowListUdpPortRangeList:getNetworkSecurityRuleAppRuleOutboundAllowListUdpPortRangeList": {
      "properties": {
        "endPort": {
          "type": "integer"
        },
        "startPort": {
          "type": "integer"
        }
      },
      "type": "object",
      "required": [
        "endPort",
        "startPort"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getNetworkSecurityRuleAppRuleTargetGroupFilterParam:getNetworkSecurityRuleAppRuleTargetGroupFilterParam": {
      "properties": {
        "name": {
          "type": "string",
          "description": "- the name.\n"
        },
        "values": {
          "type": "array",
          "items": {
            "type": "string"
          }
        }
      },
      "type": "object",
      "required": [
        "name",
        "values"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getNetworkSecurityRuleCategory:getNetworkSecurityRuleCategory": {
      "properties": {
        "name": {
          "type": "string",
          "description": "- the name.\n"
        },
        "value": {
          "type": "string",
          "description": "- value of the key.\n"
        }
      },
      "type": "object",
      "required": [
        "name",
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getNetworkSecurityRuleIsolationRuleFirstEntityFilterParam:getNetworkSecurityRuleIsolationRuleFirstEntityFilterParam": {
      "properties": {
        "name": {
          "type": "string",
          "description": "- the name.\n"
        },
        "values": {
          "type": "array",
          "items": {
            "type": "string"
          }
        }
      },
      "type": "object",
      "required": [
        "name",
        "values"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getNetworkSecurityRuleIsolationRuleSecondEntityFilterParam:getNetworkSecurityRuleIsolationRuleSecondEntityFilterParam": {
      "properties": {
        "name": {
          "type": "string",
          "description": "- the name.\n"
        },
        "values": {
          "type": "array",
          "items": {
            "type": "string"
          }
        }
      },
      "type": "object",
      "required": [
        "name",
        "values"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getNetworkSecurityRuleQuarantineRuleInboundAllowList:getNetworkSecurityRuleQuarantineRuleInboundAllowList": {
      "properties": {
        "expirationTime": {
          "type": "string"
        },
        "filterKindLists": {
          "type": "array",
          "items": {
            "type": "string"
          }
        },
        "filterParams": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetNetworkSecurityRuleQuarantineRuleInboundAllowListFilterParam:getNetworkSecurityRuleQuarantineRuleInboundAllowListFilterParam"
          }
        },
        "filterType": {
          "type": "string"
        },
        "icmpTypeCodeLists": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetNetworkSecurityRuleQuarantineRuleInboundAllowListIcmpTypeCodeList:getNetworkSecurityRuleQuarantineRuleInboundAllowListIcmpTypeCodeList"
          }
        },
        "ipSubnet": {
          "type": "string"
        },
        "ipSubnetPrefixLength": {
          "type": "string"
        },
        "networkFunctionChainReference": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          }
        },
        "peerSpecificationType": {
          "type": "string"
        },
        "protocol": {
          "type": "string"
        },
        "tcpPortRangeLists": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetNetworkSecurityRuleQuarantineRuleInboundAllowListTcpPortRangeList:getNetworkSecurityRuleQuarantineRuleInboundAllowListTcpPortRangeList"
          }
        },
        "udpPortRangeLists": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetNetworkSecurityRuleQuarantineRuleInboundAllowListUdpPortRangeList:getNetworkSecurityRuleQuarantineRuleInboundAllowListUdpPortRangeList"
          }
        }
      },
      "type": "object",
      "required": [
        "expirationTime",
        "filterKindLists",
        "filterParams",
        "filterType",
        "icmpTypeCodeLists",
        "ipSubnet",
        "ipSubnetPrefixLength",
        "networkFunctionChainReference",
        "peerSpecificationType",
        "protocol",
        "tcpPortRangeLists",
        "udpPortRangeLists"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getNetworkSecurityRuleQuarantineRuleInboundAllowListFilterParam:getNetworkSecurityRuleQuarantineRuleInboundAllowListFilterParam": {
      "properties": {
        "name": {
          "type": "string",
          "description": "- the name.\n"
        },
        "values": {
          "type": "array",
          "items": {
            "type": "string"
          }
        }
      },
      "type": "object",
      "required": [
        "name",
        "values"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getNetworkSecurityRuleQuarantineRuleInboundAllowListIcmpTypeCodeList:getNetworkSecurityRuleQuarantineRuleInboundAllowListIcmpTypeCodeList": {
      "properties": {
        "code": {
          "type": "string"
        },
        "type": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "code",
        "type"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getNetworkSecurityRuleQuarantineRuleInboundAllowListTcpPortRangeList:getNetworkSecurityRuleQuarantineRuleInboundAllowListTcpPortRangeList": {
      "properties": {
        "endPort": {
          "type": "integer"
        },
        "startPort": {
          "type": "integer"
        }
      },
      "type": "object",
      "required": [
        "endPort",
        "startPort"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getNetworkSecurityRuleQuarantineRuleInboundAllowListUdpPortRangeList:getNetworkSecurityRuleQuarantineRuleInboundAllowListUdpPortRangeList": {
      "properties": {
        "endPort": {
          "type": "integer"
        },
        "startPort": {
          "type": "integer"
        }
      },
      "type": "object",
      "required": [
        "endPort",
        "startPort"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getNetworkSecurityRuleQuarantineRuleOutboundAllowList:getNetworkSecurityRuleQuarantineRuleOutboundAllowList": {
      "properties": {
        "addressGroupInclusionLists": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetNetworkSecurityRuleQuarantineRuleOutboundAllowListAddressGroupInclusionList:getNetworkSecurityRuleQuarantineRuleOutboundAllowListAddressGroupInclusionList"
          }
        },
        "expirationTime": {
          "type": "string"
        },
        "filterKindLists": {
          "type": "array",
          "items": {
            "type": "string"
          }
        },
        "filterParams": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetNetworkSecurityRuleQuarantineRuleOutboundAllowListFilterParam:getNetworkSecurityRuleQuarantineRuleOutboundAllowListFilterParam"
          }
        },
        "filterType": {
          "type": "string"
        },
        "icmpTypeCodeLists": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetNetworkSecurityRuleQuarantineRuleOutboundAllowListIcmpTypeCodeList:getNetworkSecurityRuleQuarantineRuleOutboundAllowListIcmpTypeCodeList"
          }
        },
        "ipSubnet": {
          "type": "string"
        },
        "ipSubnetPrefixLength": {
          "type": "string"
        },
        "networkFunctionChainReference": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          }
        },
        "peerSpecificationType": {
          "type": "string"
        },
        "protocol": {
          "type": "string"
        },
        "serviceGroupLists": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetNetworkSecurityRuleQuarantineRuleOutboundAllowListServiceGroupList:getNetworkSecurityRuleQuarantineRuleOutboundAllowListServiceGroupList"
          }
        },
        "tcpPortRangeLists": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetNetworkSecurityRuleQuarantineRuleOutboundAllowListTcpPortRangeList:getNetworkSecurityRuleQuarantineRuleOutboundAllowListTcpPortRangeList"
          }
        },
        "udpPortRangeLists": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetNetworkSecurityRuleQuarantineRuleOutboundAllowListUdpPortRangeList:getNetworkSecurityRuleQuarantineRuleOutboundAllowListUdpPortRangeList"
          }
        }
      },
      "type": "object",
      "required": [
        "addressGroupInclusionLists",
        "expirationTime",
        "filterKindLists",
        "filterParams",
        "filterType",
        "icmpTypeCodeLists",
        "ipSubnet",
        "ipSubnetPrefixLength",
        "networkFunctionChainReference",
        "peerSpecificationType",
        "protocol",
        "serviceGroupLists",
        "tcpPortRangeLists",
        "udpPortRangeLists"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getNetworkSecurityRuleQuarantineRuleOutboundAllowListAddressGroupInclusionList:getNetworkSecurityRuleQuarantineRuleOutboundAllowListAddressGroupInclusionList": {
      "properties": {
        "kind": {
          "type": "string",
          "description": "- The kind name (Default value: project).\n"
        },
        "name": {
          "type": "string",
          "description": "- the name.\n"
        },
        "uuid": {
          "type": "string",
          "description": "- the UUID.\n"
        }
      },
      "type": "object",
      "required": [
        "kind",
        "name",
        "uuid"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getNetworkSecurityRuleQuarantineRuleOutboundAllowListFilterParam:getNetworkSecurityRuleQuarantineRuleOutboundAllowListFilterParam": {
      "properties": {
        "name": {
          "type": "string",
          "description": "- the name.\n"
        },
        "values": {
          "type": "array",
          "items": {
            "type": "string"
          }
        }
      },
      "type": "object",
      "required": [
        "name",
        "values"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getNetworkSecurityRuleQuarantineRuleOutboundAllowListIcmpTypeCodeList:getNetworkSecurityRuleQuarantineRuleOutboundAllowListIcmpTypeCodeList": {
      "properties": {
        "code": {
          "type": "string"
        },
        "type": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "code",
        "type"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getNetworkSecurityRuleQuarantineRuleOutboundAllowListServiceGroupList:getNetworkSecurityRuleQuarantineRuleOutboundAllowListServiceGroupList": {
      "properties": {
        "kind": {
          "type": "string",
          "description": "- The kind name (Default value: project).\n"
        },
        "name": {
          "type": "string",
          "description": "- the name.\n"
        },
        "uuid": {
          "type": "string",
          "description": "- the UUID.\n"
        }
      },
      "type": "object",
      "required": [
        "kind",
        "name",
        "uuid"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getNetworkSecurityRuleQuarantineRuleOutboundAllowListTcpPortRangeList:getNetworkSecurityRuleQuarantineRuleOutboundAllowListTcpPortRangeList": {
      "properties": {
        "endPort": {
          "type": "integer"
        },
        "startPort": {
          "type": "integer"
        }
      },
      "type": "object",
      "required": [
        "endPort",
        "startPort"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getNetworkSecurityRuleQuarantineRuleOutboundAllowListUdpPortRangeList:getNetworkSecurityRuleQuarantineRuleOutboundAllowListUdpPortRangeList": {
      "properties": {
        "endPort": {
          "type": "integer"
        },
        "startPort": {
          "type": "integer"
        }
      },
      "type": "object",
      "required": [
        "endPort",
        "startPort"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getNetworkSecurityRuleQuarantineRuleTargetGroupFilterParam:getNetworkSecurityRuleQuarantineRuleTargetGroupFilterParam": {
      "properties": {
        "name": {
          "type": "string",
          "description": "- the name.\n"
        },
        "values": {
          "type": "array",
          "items": {
            "type": "string"
          }
        }
      },
      "type": "object",
      "required": [
        "name",
        "values"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getObjectStoreV2Link:getObjectStoreV2Link": {
      "properties": {
        "href": {
          "type": "string",
          "description": "- The URL at which the entity described by the link can be accessed.\n"
        },
        "rel": {
          "type": "string",
          "description": "- A name that identifies the relationship of the link to the object that is returned by the URL. The unique value of \"self\" identifies the URL for the object.\n"
        }
      },
      "type": "object",
      "required": [
        "href",
        "rel"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getObjectStoreV2Metadata:getObjectStoreV2Metadata": {
      "properties": {
        "categoryIds": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "- A list of globally unique identifiers that represent all the categories the resource is associated with.\n"
        },
        "ownerReferenceId": {
          "type": "string",
          "description": "- A globally unique identifier that represents the owner of this resource.\n"
        },
        "ownerUserName": {
          "type": "string",
          "description": "- The userName of the owner of this resource.\n"
        },
        "projectName": {
          "type": "string",
          "description": "- The name of the project this resource belongs to.\n"
        },
        "projectReferenceId": {
          "type": "string",
          "description": "- A globally unique identifier that represents the project this resource belongs to.\n"
        }
      },
      "type": "object",
      "required": [
        "categoryIds",
        "ownerReferenceId",
        "ownerUserName",
        "projectName",
        "projectReferenceId"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getObjectStoreV2PublicNetworkIp:getObjectStoreV2PublicNetworkIp": {
      "properties": {
        "ipv4": {
          "$ref": "#/types/nutanix:index%2FgetObjectStoreV2PublicNetworkIpIpv4:getObjectStoreV2PublicNetworkIpIpv4",
          "description": "An unique address that identifies a device on the internet or a local network in IPv4 format.\n"
        },
        "ipv6": {
          "$ref": "#/types/nutanix:index%2FgetObjectStoreV2PublicNetworkIpIpv6:getObjectStoreV2PublicNetworkIpIpv6",
          "description": "An unique address that identifies a device on the internet or a local network in IPv6 format.\n"
        }
      },
      "type": "object",
      "required": [
        "ipv4",
        "ipv6"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getObjectStoreV2PublicNetworkIpIpv4:getObjectStoreV2PublicNetworkIpIpv4": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "- The prefix length of the network to which this host IPv4 address belongs. Default for IPv4 is 32 and for IPv6 is 128.\n"
        },
        "value": {
          "type": "string",
          "description": "- The IPv4/IPv6 address of the host.\n"
        }
      },
      "type": "object",
      "required": [
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getObjectStoreV2PublicNetworkIpIpv6:getObjectStoreV2PublicNetworkIpIpv6": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "- The prefix length of the network to which this host IPv4 address belongs. Default for IPv4 is 32 and for IPv6 is 128.\n"
        },
        "value": {
          "type": "string",
          "description": "- The IPv4/IPv6 address of the host.\n"
        }
      },
      "type": "object",
      "required": [
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getObjectStoreV2StorageNetworkDnsIp:getObjectStoreV2StorageNetworkDnsIp": {
      "properties": {
        "ipv4": {
          "$ref": "#/types/nutanix:index%2FgetObjectStoreV2StorageNetworkDnsIpIpv4:getObjectStoreV2StorageNetworkDnsIpIpv4",
          "description": "An unique address that identifies a device on the internet or a local network in IPv4 format.\n"
        },
        "ipv6": {
          "$ref": "#/types/nutanix:index%2FgetObjectStoreV2StorageNetworkDnsIpIpv6:getObjectStoreV2StorageNetworkDnsIpIpv6",
          "description": "An unique address that identifies a device on the internet or a local network in IPv6 format.\n"
        }
      },
      "type": "object",
      "required": [
        "ipv4",
        "ipv6"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getObjectStoreV2StorageNetworkDnsIpIpv4:getObjectStoreV2StorageNetworkDnsIpIpv4": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "- The prefix length of the network to which this host IPv4 address belongs. Default for IPv4 is 32 and for IPv6 is 128.\n"
        },
        "value": {
          "type": "string",
          "description": "- The IPv4/IPv6 address of the host.\n"
        }
      },
      "type": "object",
      "required": [
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getObjectStoreV2StorageNetworkDnsIpIpv6:getObjectStoreV2StorageNetworkDnsIpIpv6": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "- The prefix length of the network to which this host IPv4 address belongs. Default for IPv4 is 32 and for IPv6 is 128.\n"
        },
        "value": {
          "type": "string",
          "description": "- The IPv4/IPv6 address of the host.\n"
        }
      },
      "type": "object",
      "required": [
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getObjectStoreV2StorageNetworkVip:getObjectStoreV2StorageNetworkVip": {
      "properties": {
        "ipv4": {
          "$ref": "#/types/nutanix:index%2FgetObjectStoreV2StorageNetworkVipIpv4:getObjectStoreV2StorageNetworkVipIpv4",
          "description": "An unique address that identifies a device on the internet or a local network in IPv4 format.\n"
        },
        "ipv6": {
          "$ref": "#/types/nutanix:index%2FgetObjectStoreV2StorageNetworkVipIpv6:getObjectStoreV2StorageNetworkVipIpv6",
          "description": "An unique address that identifies a device on the internet or a local network in IPv6 format.\n"
        }
      },
      "type": "object",
      "required": [
        "ipv4",
        "ipv6"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getObjectStoreV2StorageNetworkVipIpv4:getObjectStoreV2StorageNetworkVipIpv4": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "- The prefix length of the network to which this host IPv4 address belongs. Default for IPv4 is 32 and for IPv6 is 128.\n"
        },
        "value": {
          "type": "string",
          "description": "- The IPv4/IPv6 address of the host.\n"
        }
      },
      "type": "object",
      "required": [
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getObjectStoreV2StorageNetworkVipIpv6:getObjectStoreV2StorageNetworkVipIpv6": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "- The prefix length of the network to which this host IPv4 address belongs. Default for IPv4 is 32 and for IPv6 is 128.\n"
        },
        "value": {
          "type": "string",
          "description": "- The IPv4/IPv6 address of the host.\n"
        }
      },
      "type": "object",
      "required": [
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getObjectStoresV2ObjectStore:getObjectStoresV2ObjectStore": {
      "properties": {
        "certificateExtIds": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "- A list of the UUIDs of the certificates of an Object store.\n"
        },
        "clusterExtId": {
          "type": "string",
          "description": "- UUID of the AHV or ESXi cluster.\n"
        },
        "creationTime": {
          "type": "string",
          "description": "- The time when the Object store was created.\n"
        },
        "deploymentVersion": {
          "type": "string",
          "description": "- The deployment version of the Object store.\n"
        },
        "description": {
          "type": "string",
          "description": "- A brief description of the Object store.\n"
        },
        "domain": {
          "type": "string",
          "description": "- The DNS domain/subdomain the Object store belongs to. All the Object stores under one Prism Central must have the same domain name. The domain name must consist of at least 2 parts separated by a '.'. Each part can contain upper and lower case letters, digits, hyphens, or underscores. Each part can be up to 63 characters long. The domain must begin and end with an alphanumeric character. For example - 'objects-0.pc_nutanix.com'.\n"
        },
        "extId": {
          "type": "string",
          "description": "- A globally unique identifier of an instance that is suitable for external consumption.\n"
        },
        "lastUpdateTime": {
          "type": "string",
          "description": "- The time when the Object store was last updated.\n"
        },
        "links": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetObjectStoresV2ObjectStoreLink:getObjectStoresV2ObjectStoreLink"
          },
          "description": "- A HATEOAS style link for the response. Each link contains a user-friendly name identifying the link and an address for retrieving the particular resource.\n"
        },
        "metadatas": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetObjectStoresV2ObjectStoreMetadata:getObjectStoresV2ObjectStoreMetadata"
          },
          "description": "- Metadata associated with this resource.\n"
        },
        "name": {
          "type": "string",
          "description": "- The name of the Object store.\n"
        },
        "numWorkerNodes": {
          "type": "integer",
          "description": "- The number of worker nodes (VMs) to be created for the Object store. Each worker node requires 10 vCPUs and 32 GiB of memory.\n"
        },
        "publicNetworkIps": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetObjectStoresV2ObjectStorePublicNetworkIp:getObjectStoresV2ObjectStorePublicNetworkIp"
          },
          "description": "- A list of static IP addresses used as public IPs to access the Object store.\n"
        },
        "publicNetworkReference": {
          "type": "string",
          "description": "- Public network reference of the Object store. This is the subnet UUID for an AHV cluster or the IPAM name for an ESXi cluster.\n"
        },
        "region": {
          "type": "string",
          "description": "- The region in which the Object store is deployed.\n"
        },
        "state": {
          "type": "string",
          "description": "- Enum for the state of the Object store.\n| Enum                                   | Description                                                     |\n|----------------------------------------|-----------------------------------------------------------------|\n| `DEPLOYING_OBJECT_STORE`             | The Object store is being deployed.                             |\n| `OBJECT_STORE_DEPLOYMENT_FAILED`     | The Object store deployment has failed.                         |\n| `DELETING_OBJECT_STORE`              | A deployed Object store is being deleted.                       |\n| `OBJECT_STORE_OPERATION_FAILED`      | There was an error while performing an operation on the Object store. |\n| `UNDEPLOYED_OBJECT_STORE`            | The Object store is not deployed.                               |\n| `OBJECT_STORE_OPERATION_PENDING`     | There is an ongoing operation on the Object store.              |\n| `OBJECT_STORE_AVAILABLE`            | There are no ongoing operations on the deployed Object store.   |\n| `OBJECT_STORE_CERT_CREATION_FAILED`  | Creating the Object store certificate has failed.               |\n| `CREATING_OBJECT_STORE_CERT`         | A certificate is being created for the Object store.            |\n| `OBJECT_STORE_DELETION_FAILED`       | There was an error deleting the Object store.                   |\n"
        },
        "storageNetworkDnsIps": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetObjectStoresV2ObjectStoreStorageNetworkDnsIp:getObjectStoresV2ObjectStoreStorageNetworkDnsIp"
          },
          "description": "- An unique address that identifies a device on the internet or a local network in IPv4 or IPv6 format.\n"
        },
        "storageNetworkReference": {
          "type": "string",
          "description": "- Reference to the Storage Network of the Object store. This is the subnet UUID for an AHV cluster or the IPAM name for an ESXi cluster.\n"
        },
        "storageNetworkVips": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetObjectStoresV2ObjectStoreStorageNetworkVip:getObjectStoresV2ObjectStoreStorageNetworkVip"
          },
          "description": "- An unique address that identifies a device on the internet or a local network in IPv4 or IPv6 format.\n"
        },
        "tenantId": {
          "type": "string",
          "description": "- A globally unique identifier that represents the tenant that owns this entity. The system automatically assigns it, and it and is immutable from an API consumer perspective (some use cases may cause this Id to change - For instance, a use case may require the transfer of ownership of the entity, but these cases are handled automatically on the server).\n"
        },
        "totalCapacityGib": {
          "type": "integer",
          "description": "- Size of the Object store in GiB.\n"
        }
      },
      "type": "object",
      "required": [
        "certificateExtIds",
        "clusterExtId",
        "creationTime",
        "deploymentVersion",
        "description",
        "domain",
        "extId",
        "lastUpdateTime",
        "links",
        "metadatas",
        "name",
        "numWorkerNodes",
        "publicNetworkIps",
        "publicNetworkReference",
        "region",
        "state",
        "storageNetworkDnsIps",
        "storageNetworkReference",
        "storageNetworkVips",
        "tenantId",
        "totalCapacityGib"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getObjectStoresV2ObjectStoreLink:getObjectStoresV2ObjectStoreLink": {
      "properties": {
        "href": {
          "type": "string",
          "description": "- The URL at which the entity described by the link can be accessed.\n"
        },
        "rel": {
          "type": "string",
          "description": "- A name that identifies the relationship of the link to the object that is returned by the URL. The unique value of \"self\" identifies the URL for the object.\n"
        }
      },
      "type": "object",
      "required": [
        "href",
        "rel"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getObjectStoresV2ObjectStoreMetadata:getObjectStoresV2ObjectStoreMetadata": {
      "properties": {
        "categoryIds": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "- A list of globally unique identifiers that represent all the categories the resource is associated with.\n"
        },
        "ownerReferenceId": {
          "type": "string",
          "description": "- A globally unique identifier that represents the owner of this resource.\n"
        },
        "ownerUserName": {
          "type": "string",
          "description": "- The userName of the owner of this resource.\n"
        },
        "projectName": {
          "type": "string",
          "description": "- The name of the project this resource belongs to.\n"
        },
        "projectReferenceId": {
          "type": "string",
          "description": "- A globally unique identifier that represents the project this resource belongs to.\n"
        }
      },
      "type": "object",
      "required": [
        "categoryIds",
        "ownerReferenceId",
        "ownerUserName",
        "projectName",
        "projectReferenceId"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getObjectStoresV2ObjectStorePublicNetworkIp:getObjectStoresV2ObjectStorePublicNetworkIp": {
      "properties": {
        "ipv4": {
          "$ref": "#/types/nutanix:index%2FgetObjectStoresV2ObjectStorePublicNetworkIpIpv4:getObjectStoresV2ObjectStorePublicNetworkIpIpv4",
          "description": "An unique address that identifies a device on the internet or a local network in IPv4 format.\n"
        },
        "ipv6": {
          "$ref": "#/types/nutanix:index%2FgetObjectStoresV2ObjectStorePublicNetworkIpIpv6:getObjectStoresV2ObjectStorePublicNetworkIpIpv6",
          "description": "An unique address that identifies a device on the internet or a local network in IPv6 format.\n"
        }
      },
      "type": "object",
      "required": [
        "ipv4",
        "ipv6"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getObjectStoresV2ObjectStorePublicNetworkIpIpv4:getObjectStoresV2ObjectStorePublicNetworkIpIpv4": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "- The prefix length of the network to which this host IPv4 address belongs. Default for IPv4 is 32 and for IPv6 is 128.\n"
        },
        "value": {
          "type": "string",
          "description": "- The IPv4/IPv6 address of the host.\n"
        }
      },
      "type": "object",
      "required": [
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getObjectStoresV2ObjectStorePublicNetworkIpIpv6:getObjectStoresV2ObjectStorePublicNetworkIpIpv6": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "- The prefix length of the network to which this host IPv4 address belongs. Default for IPv4 is 32 and for IPv6 is 128.\n"
        },
        "value": {
          "type": "string",
          "description": "- The IPv4/IPv6 address of the host.\n"
        }
      },
      "type": "object",
      "required": [
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getObjectStoresV2ObjectStoreStorageNetworkDnsIp:getObjectStoresV2ObjectStoreStorageNetworkDnsIp": {
      "properties": {
        "ipv4": {
          "$ref": "#/types/nutanix:index%2FgetObjectStoresV2ObjectStoreStorageNetworkDnsIpIpv4:getObjectStoresV2ObjectStoreStorageNetworkDnsIpIpv4",
          "description": "An unique address that identifies a device on the internet or a local network in IPv4 format.\n"
        },
        "ipv6": {
          "$ref": "#/types/nutanix:index%2FgetObjectStoresV2ObjectStoreStorageNetworkDnsIpIpv6:getObjectStoresV2ObjectStoreStorageNetworkDnsIpIpv6",
          "description": "An unique address that identifies a device on the internet or a local network in IPv6 format.\n"
        }
      },
      "type": "object",
      "required": [
        "ipv4",
        "ipv6"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getObjectStoresV2ObjectStoreStorageNetworkDnsIpIpv4:getObjectStoresV2ObjectStoreStorageNetworkDnsIpIpv4": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "- The prefix length of the network to which this host IPv4 address belongs. Default for IPv4 is 32 and for IPv6 is 128.\n"
        },
        "value": {
          "type": "string",
          "description": "- The IPv4/IPv6 address of the host.\n"
        }
      },
      "type": "object",
      "required": [
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getObjectStoresV2ObjectStoreStorageNetworkDnsIpIpv6:getObjectStoresV2ObjectStoreStorageNetworkDnsIpIpv6": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "- The prefix length of the network to which this host IPv4 address belongs. Default for IPv4 is 32 and for IPv6 is 128.\n"
        },
        "value": {
          "type": "string",
          "description": "- The IPv4/IPv6 address of the host.\n"
        }
      },
      "type": "object",
      "required": [
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getObjectStoresV2ObjectStoreStorageNetworkVip:getObjectStoresV2ObjectStoreStorageNetworkVip": {
      "properties": {
        "ipv4": {
          "$ref": "#/types/nutanix:index%2FgetObjectStoresV2ObjectStoreStorageNetworkVipIpv4:getObjectStoresV2ObjectStoreStorageNetworkVipIpv4",
          "description": "An unique address that identifies a device on the internet or a local network in IPv4 format.\n"
        },
        "ipv6": {
          "$ref": "#/types/nutanix:index%2FgetObjectStoresV2ObjectStoreStorageNetworkVipIpv6:getObjectStoresV2ObjectStoreStorageNetworkVipIpv6",
          "description": "An unique address that identifies a device on the internet or a local network in IPv6 format.\n"
        }
      },
      "type": "object",
      "required": [
        "ipv4",
        "ipv6"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getObjectStoresV2ObjectStoreStorageNetworkVipIpv4:getObjectStoresV2ObjectStoreStorageNetworkVipIpv4": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "- The prefix length of the network to which this host IPv4 address belongs. Default for IPv4 is 32 and for IPv6 is 128.\n"
        },
        "value": {
          "type": "string",
          "description": "- The IPv4/IPv6 address of the host.\n"
        }
      },
      "type": "object",
      "required": [
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getObjectStoresV2ObjectStoreStorageNetworkVipIpv6:getObjectStoresV2ObjectStoreStorageNetworkVipIpv6": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "- The prefix length of the network to which this host IPv4 address belongs. Default for IPv4 is 32 and for IPv6 is 128.\n"
        },
        "value": {
          "type": "string",
          "description": "- The IPv4/IPv6 address of the host.\n"
        }
      },
      "type": "object",
      "required": [
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getOperationV2AssociatedEndpointList:getOperationV2AssociatedEndpointList": {
      "properties": {
        "apiVersion": {
          "type": "string",
          "description": "Version of the API for the provided associated endpoint.\n"
        },
        "endpointUrl": {
          "type": "string",
          "description": "Endpoint URL.\n"
        },
        "httpMethod": {
          "type": "string",
          "description": "HTTP method for the provided associated endpoint.\n"
        }
      },
      "type": "object",
      "required": [
        "apiVersion",
        "endpointUrl",
        "httpMethod"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getOperationsV2Operation:getOperationsV2Operation": {
      "properties": {
        "associatedEndpointLists": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetOperationsV2OperationAssociatedEndpointList:getOperationsV2OperationAssociatedEndpointList"
          },
          "description": "List of associated endpoint objects for the Operation.\n"
        },
        "clientName": {
          "type": "string",
          "description": "Client that created the entity.\n"
        },
        "createdTime": {
          "type": "string",
          "description": "Permission creation time\n"
        },
        "description": {
          "type": "string",
          "description": "Permission description\n"
        },
        "displayName": {
          "type": "string",
          "description": "Permission name.\n"
        },
        "entityType": {
          "type": "string",
          "description": "Type of entity associated with this Operation.\n"
        },
        "extId": {
          "type": "string",
          "description": "A globally unique identifier of an instance that is suitable for external consumption.\n"
        },
        "lastUpdatedTime": {
          "type": "string",
          "description": "Permission last updated time.\n"
        },
        "operationType": {
          "type": "string",
          "description": "The Operation type. Currently we support INTERNAL, EXTERNAL and SYSTEM_DEFINED_ONLY.\n"
        },
        "relatedOperationLists": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "List of related Operations. These are the Operations which might need to be given access to, along with the current Operation, for certain workflows to succeed.\n"
        }
      },
      "type": "object",
      "required": [
        "associatedEndpointLists",
        "clientName",
        "createdTime",
        "description",
        "displayName",
        "entityType",
        "extId",
        "lastUpdatedTime",
        "operationType",
        "relatedOperationLists"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getOperationsV2OperationAssociatedEndpointList:getOperationsV2OperationAssociatedEndpointList": {
      "properties": {
        "apiVersion": {
          "type": "string",
          "description": "Version of the API for the provided associated endpoint.\n"
        },
        "endpointUrl": {
          "type": "string",
          "description": "Endpoint URL.\n"
        },
        "httpMethod": {
          "type": "string",
          "description": "HTTP method for the provided associated endpoint.\n"
        }
      },
      "type": "object",
      "required": [
        "apiVersion",
        "endpointUrl",
        "httpMethod"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getPbrSpec:getPbrSpec": {
      "properties": {
        "name": {
          "type": "string",
          "description": "- the name.\n"
        },
        "resources": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetPbrSpecResource:getPbrSpecResource"
          },
          "description": "PBR resources status\n"
        }
      },
      "type": "object",
      "required": [
        "name",
        "resources"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getPbrSpecResource:getPbrSpecResource": {
      "properties": {
        "actions": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetPbrSpecResourceAction:getPbrSpecResourceAction"
          },
          "description": "Routing policy action\n"
        },
        "destinations": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetPbrSpecResourceDestination:getPbrSpecResourceDestination"
          },
          "description": "destination address of an IP.\n"
        },
        "isBidirectional": {
          "type": "boolean",
          "description": "Policy in reverse direction.\n"
        },
        "priority": {
          "type": "integer",
          "description": "priority of routing policy\n"
        },
        "protocolParameters": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetPbrSpecResourceProtocolParameter:getPbrSpecResourceProtocolParameter"
          },
          "description": "Routing policy IP protocol parameters\n"
        },
        "protocolType": {
          "type": "string",
          "description": "Protocol type of routing policy\n"
        },
        "sources": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetPbrSpecResourceSource:getPbrSpecResourceSource"
          },
          "description": "source address of an IP.\n"
        },
        "vpcReference": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          },
          "description": "Reference to VPC\n"
        }
      },
      "type": "object",
      "required": [
        "actions",
        "destinations",
        "isBidirectional",
        "priority",
        "protocolParameters",
        "protocolType",
        "sources",
        "vpcReference"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getPbrSpecResourceAction:getPbrSpecResourceAction": {
      "properties": {
        "action": {
          "type": "string",
          "description": "Routing policy action\n"
        },
        "serviceIpLists": {
          "type": "array",
          "items": {
            "type": "string"
          }
        }
      },
      "type": "object",
      "required": [
        "action",
        "serviceIpLists"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getPbrSpecResourceDestination:getPbrSpecResourceDestination": {
      "properties": {
        "addressType": {
          "type": "string"
        },
        "prefixLength": {
          "type": "integer",
          "description": "prefix length of provided subnet.\n"
        },
        "subnetIp": {
          "type": "string",
          "description": "IP subnet provided as an address.\n"
        }
      },
      "type": "object",
      "required": [
        "addressType"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getPbrSpecResourceProtocolParameter:getPbrSpecResourceProtocolParameter": {
      "properties": {
        "icmps": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetPbrSpecResourceProtocolParameterIcmp:getPbrSpecResourceProtocolParameterIcmp"
          },
          "description": "ICMP parameters in routing policy.\n"
        },
        "protocolNumber": {
          "type": "integer",
          "description": "Protocol number in routing policy\n"
        },
        "tcps": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetPbrSpecResourceProtocolParameterTcp:getPbrSpecResourceProtocolParameterTcp"
          },
          "description": "TCP parameters in routing policy\n"
        },
        "udps": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetPbrSpecResourceProtocolParameterUdp:getPbrSpecResourceProtocolParameterUdp"
          },
          "description": "UDP parameters in routing policy\n"
        }
      },
      "type": "object",
      "required": [
        "icmps",
        "protocolNumber",
        "tcps",
        "udps"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getPbrSpecResourceProtocolParameterIcmp:getPbrSpecResourceProtocolParameterIcmp": {
      "properties": {
        "icmpCode": {
          "type": "integer"
        },
        "icmpType": {
          "type": "integer"
        }
      },
      "type": "object",
      "required": [
        "icmpCode",
        "icmpType"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getPbrSpecResourceProtocolParameterTcp:getPbrSpecResourceProtocolParameterTcp": {
      "properties": {
        "destinationPortRangeLists": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetPbrSpecResourceProtocolParameterTcpDestinationPortRangeList:getPbrSpecResourceProtocolParameterTcpDestinationPortRangeList"
          }
        },
        "sourcePortRangeLists": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetPbrSpecResourceProtocolParameterTcpSourcePortRangeList:getPbrSpecResourceProtocolParameterTcpSourcePortRangeList"
          }
        }
      },
      "type": "object",
      "required": [
        "destinationPortRangeLists",
        "sourcePortRangeLists"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getPbrSpecResourceProtocolParameterTcpDestinationPortRangeList:getPbrSpecResourceProtocolParameterTcpDestinationPortRangeList": {
      "properties": {
        "endPort": {
          "type": "integer"
        },
        "startPort": {
          "type": "integer"
        }
      },
      "type": "object",
      "required": [
        "endPort",
        "startPort"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getPbrSpecResourceProtocolParameterTcpSourcePortRangeList:getPbrSpecResourceProtocolParameterTcpSourcePortRangeList": {
      "properties": {
        "endPort": {
          "type": "integer"
        },
        "startPort": {
          "type": "integer"
        }
      },
      "type": "object",
      "required": [
        "endPort",
        "startPort"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getPbrSpecResourceProtocolParameterUdp:getPbrSpecResourceProtocolParameterUdp": {
      "properties": {
        "destinationPortRangeLists": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetPbrSpecResourceProtocolParameterUdpDestinationPortRangeList:getPbrSpecResourceProtocolParameterUdpDestinationPortRangeList"
          }
        },
        "sourcePortRangeLists": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetPbrSpecResourceProtocolParameterUdpSourcePortRangeList:getPbrSpecResourceProtocolParameterUdpSourcePortRangeList"
          }
        }
      },
      "type": "object",
      "required": [
        "destinationPortRangeLists",
        "sourcePortRangeLists"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getPbrSpecResourceProtocolParameterUdpDestinationPortRangeList:getPbrSpecResourceProtocolParameterUdpDestinationPortRangeList": {
      "properties": {
        "endPort": {
          "type": "integer"
        },
        "startPort": {
          "type": "integer"
        }
      },
      "type": "object",
      "required": [
        "endPort",
        "startPort"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getPbrSpecResourceProtocolParameterUdpSourcePortRangeList:getPbrSpecResourceProtocolParameterUdpSourcePortRangeList": {
      "properties": {
        "endPort": {
          "type": "integer"
        },
        "startPort": {
          "type": "integer"
        }
      },
      "type": "object",
      "required": [
        "endPort",
        "startPort"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getPbrSpecResourceSource:getPbrSpecResourceSource": {
      "properties": {
        "addressType": {
          "type": "string"
        },
        "prefixLength": {
          "type": "integer",
          "description": "prefix length of provided subnet.\n"
        },
        "subnetIp": {
          "type": "string",
          "description": "IP subnet provided as an address.\n"
        }
      },
      "type": "object",
      "required": [
        "addressType"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getPbrStatus:getPbrStatus": {
      "properties": {
        "executionContexts": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetPbrStatusExecutionContext:getPbrStatusExecutionContext"
          },
          "description": "Execution Context of PBR.\n"
        },
        "name": {
          "type": "string",
          "description": "- the name.\n"
        },
        "resources": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetPbrStatusResource:getPbrStatusResource"
          },
          "description": "PBR resources status\n"
        },
        "state": {
          "type": "string",
          "description": "The state of the PBR\n"
        }
      },
      "type": "object",
      "required": [
        "executionContexts",
        "name",
        "resources",
        "state"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getPbrStatusExecutionContext:getPbrStatusExecutionContext": {
      "properties": {
        "taskUuids": {
          "type": "array",
          "items": {
            "type": "string"
          }
        }
      },
      "type": "object",
      "required": [
        "taskUuids"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getPbrStatusResource:getPbrStatusResource": {
      "properties": {
        "actions": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetPbrStatusResourceAction:getPbrStatusResourceAction"
          },
          "description": "Routing policy action\n"
        },
        "destinations": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetPbrStatusResourceDestination:getPbrStatusResourceDestination"
          },
          "description": "destination address of an IP.\n"
        },
        "isBidirectional": {
          "type": "boolean",
          "description": "Policy in reverse direction.\n"
        },
        "priority": {
          "type": "integer",
          "description": "priority of routing policy\n"
        },
        "protocolParameters": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetPbrStatusResourceProtocolParameter:getPbrStatusResourceProtocolParameter"
          },
          "description": "Routing policy IP protocol parameters\n"
        },
        "protocolType": {
          "type": "string",
          "description": "Protocol type of routing policy\n"
        },
        "routingPolicyCounters": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetPbrStatusResourceRoutingPolicyCounter:getPbrStatusResourceRoutingPolicyCounter"
          }
        },
        "sources": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetPbrStatusResourceSource:getPbrStatusResourceSource"
          },
          "description": "source address of an IP.\n"
        },
        "vpcReference": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          },
          "description": "Reference to VPC\n"
        }
      },
      "type": "object",
      "required": [
        "actions",
        "destinations",
        "isBidirectional",
        "priority",
        "protocolParameters",
        "protocolType",
        "routingPolicyCounters",
        "sources",
        "vpcReference"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getPbrStatusResourceAction:getPbrStatusResourceAction": {
      "properties": {
        "action": {
          "type": "string",
          "description": "Routing policy action\n"
        },
        "serviceIpLists": {
          "type": "array",
          "items": {
            "type": "string"
          }
        }
      },
      "type": "object",
      "required": [
        "action",
        "serviceIpLists"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getPbrStatusResourceDestination:getPbrStatusResourceDestination": {
      "properties": {
        "addressType": {
          "type": "string"
        },
        "prefixLength": {
          "type": "integer",
          "description": "prefix length of provided subnet.\n"
        },
        "subnetIp": {
          "type": "string",
          "description": "IP subnet provided as an address.\n"
        }
      },
      "type": "object",
      "required": [
        "addressType"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getPbrStatusResourceProtocolParameter:getPbrStatusResourceProtocolParameter": {
      "properties": {
        "icmps": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetPbrStatusResourceProtocolParameterIcmp:getPbrStatusResourceProtocolParameterIcmp"
          },
          "description": "ICMP parameters in routing policy.\n"
        },
        "protocolNumber": {
          "type": "integer",
          "description": "Protocol number in routing policy\n"
        },
        "tcps": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetPbrStatusResourceProtocolParameterTcp:getPbrStatusResourceProtocolParameterTcp"
          },
          "description": "TCP parameters in routing policy\n"
        },
        "udps": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetPbrStatusResourceProtocolParameterUdp:getPbrStatusResourceProtocolParameterUdp"
          },
          "description": "UDP parameters in routing policy\n"
        }
      },
      "type": "object",
      "required": [
        "icmps",
        "protocolNumber",
        "tcps",
        "udps"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getPbrStatusResourceProtocolParameterIcmp:getPbrStatusResourceProtocolParameterIcmp": {
      "properties": {
        "icmpCode": {
          "type": "integer"
        },
        "icmpType": {
          "type": "integer"
        }
      },
      "type": "object",
      "required": [
        "icmpCode",
        "icmpType"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getPbrStatusResourceProtocolParameterTcp:getPbrStatusResourceProtocolParameterTcp": {
      "properties": {
        "destinationPortRangeLists": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetPbrStatusResourceProtocolParameterTcpDestinationPortRangeList:getPbrStatusResourceProtocolParameterTcpDestinationPortRangeList"
          }
        },
        "sourcePortRangeLists": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetPbrStatusResourceProtocolParameterTcpSourcePortRangeList:getPbrStatusResourceProtocolParameterTcpSourcePortRangeList"
          }
        }
      },
      "type": "object",
      "required": [
        "destinationPortRangeLists",
        "sourcePortRangeLists"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getPbrStatusResourceProtocolParameterTcpDestinationPortRangeList:getPbrStatusResourceProtocolParameterTcpDestinationPortRangeList": {
      "properties": {
        "endPort": {
          "type": "integer"
        },
        "startPort": {
          "type": "integer"
        }
      },
      "type": "object",
      "required": [
        "endPort",
        "startPort"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getPbrStatusResourceProtocolParameterTcpSourcePortRangeList:getPbrStatusResourceProtocolParameterTcpSourcePortRangeList": {
      "properties": {
        "endPort": {
          "type": "integer"
        },
        "startPort": {
          "type": "integer"
        }
      },
      "type": "object",
      "required": [
        "endPort",
        "startPort"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getPbrStatusResourceProtocolParameterUdp:getPbrStatusResourceProtocolParameterUdp": {
      "properties": {
        "destinationPortRangeLists": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetPbrStatusResourceProtocolParameterUdpDestinationPortRangeList:getPbrStatusResourceProtocolParameterUdpDestinationPortRangeList"
          }
        },
        "sourcePortRangeLists": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetPbrStatusResourceProtocolParameterUdpSourcePortRangeList:getPbrStatusResourceProtocolParameterUdpSourcePortRangeList"
          }
        }
      },
      "type": "object",
      "required": [
        "destinationPortRangeLists",
        "sourcePortRangeLists"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getPbrStatusResourceProtocolParameterUdpDestinationPortRangeList:getPbrStatusResourceProtocolParameterUdpDestinationPortRangeList": {
      "properties": {
        "endPort": {
          "type": "integer"
        },
        "startPort": {
          "type": "integer"
        }
      },
      "type": "object",
      "required": [
        "endPort",
        "startPort"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getPbrStatusResourceProtocolParameterUdpSourcePortRangeList:getPbrStatusResourceProtocolParameterUdpSourcePortRangeList": {
      "properties": {
        "endPort": {
          "type": "integer"
        },
        "startPort": {
          "type": "integer"
        }
      },
      "type": "object",
      "required": [
        "endPort",
        "startPort"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getPbrStatusResourceRoutingPolicyCounter:getPbrStatusResourceRoutingPolicyCounter": {
      "properties": {
        "byteCount": {
          "type": "integer"
        },
        "packetCount": {
          "type": "integer"
        }
      },
      "type": "object",
      "required": [
        "byteCount",
        "packetCount"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getPbrStatusResourceSource:getPbrStatusResourceSource": {
      "properties": {
        "addressType": {
          "type": "string"
        },
        "prefixLength": {
          "type": "integer",
          "description": "prefix length of provided subnet.\n"
        },
        "subnetIp": {
          "type": "string",
          "description": "IP subnet provided as an address.\n"
        }
      },
      "type": "object",
      "required": [
        "addressType"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getPbrV2Link:getPbrV2Link": {
      "properties": {
        "href": {
          "type": "string",
          "description": "- The URL at which the entity described by the link can be accessed.\n"
        },
        "rel": {
          "type": "string",
          "description": "- A name that identifies the relationship of the link to the object that is returned by the URL. The unique value of \"self\" identifies the URL for the object.\n"
        }
      },
      "type": "object",
      "required": [
        "href",
        "rel"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getPbrV2Metadata:getPbrV2Metadata": {
      "properties": {
        "categoryIds": {
          "type": "array",
          "items": {
            "type": "array",
            "items": {
              "$ref": "pulumi.json#/Any"
            }
          },
          "description": "A list of globally unique identifiers that represent all the categories the resource is associated with.\n"
        },
        "ownerReferenceId": {
          "type": "string",
          "description": "A globally unique identifier that represents the owner of this resource.\n"
        },
        "ownerUserName": {
          "type": "string",
          "description": "The userName of the owner of this resource.\n"
        },
        "projectName": {
          "type": "string",
          "description": "The name of the project this resource belongs to.\n"
        },
        "projectReferenceId": {
          "type": "string",
          "description": "A globally unique identifier that represents the project this resource belongs to.\n"
        }
      },
      "type": "object",
      "required": [
        "categoryIds",
        "ownerReferenceId",
        "ownerUserName",
        "projectName",
        "projectReferenceId"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getPbrV2Policy:getPbrV2Policy": {
      "properties": {
        "isBidirectional": {
          "type": "boolean",
          "description": "If True, policies in the reverse direction will be installed with the same action but source and destination will be swapped.\n"
        },
        "policyActions": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetPbrV2PolicyPolicyAction:getPbrV2PolicyPolicyAction"
          },
          "description": "The action to be taken on the traffic matching the routing policy.\n"
        },
        "policyMatches": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetPbrV2PolicyPolicyMatch:getPbrV2PolicyPolicyMatch"
          },
          "description": "Match condition for the traffic that is entering the VPC.\n"
        }
      },
      "type": "object",
      "required": [
        "isBidirectional",
        "policyActions",
        "policyMatches"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getPbrV2PolicyPolicyAction:getPbrV2PolicyPolicyAction": {
      "properties": {
        "actionType": {
          "type": "string",
          "description": "Routing policy action type.\n"
        },
        "nexthopIpAddresses": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetPbrV2PolicyPolicyActionNexthopIpAddress:getPbrV2PolicyPolicyActionNexthopIpAddress"
          },
          "description": "An unique address that identifies a device on the internet or a local network in IPv4 or IPv6 format.\n"
        },
        "rerouteParams": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetPbrV2PolicyPolicyActionRerouteParam:getPbrV2PolicyPolicyActionRerouteParam"
          },
          "description": "Routing policy Reroute params.\n"
        }
      },
      "type": "object",
      "required": [
        "actionType",
        "nexthopIpAddresses",
        "rerouteParams"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getPbrV2PolicyPolicyActionNexthopIpAddress:getPbrV2PolicyPolicyActionNexthopIpAddress": {
      "properties": {
        "ipv4s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetPbrV2PolicyPolicyActionNexthopIpAddressIpv4:getPbrV2PolicyPolicyActionNexthopIpAddressIpv4"
          }
        },
        "ipv6s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetPbrV2PolicyPolicyActionNexthopIpAddressIpv6:getPbrV2PolicyPolicyActionNexthopIpAddressIpv6"
          }
        }
      },
      "type": "object",
      "required": [
        "ipv4s",
        "ipv6s"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getPbrV2PolicyPolicyActionNexthopIpAddressIpv4:getPbrV2PolicyPolicyActionNexthopIpAddressIpv4": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "The prefix length of the network to which this host IPv4/IPv6 address belongs.\n"
        },
        "value": {
          "type": "string",
          "description": "ip value\n"
        }
      },
      "type": "object",
      "required": [
        "prefixLength",
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getPbrV2PolicyPolicyActionNexthopIpAddressIpv6:getPbrV2PolicyPolicyActionNexthopIpAddressIpv6": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "The prefix length of the network to which this host IPv4/IPv6 address belongs.\n"
        },
        "value": {
          "type": "string",
          "description": "ip value\n"
        }
      },
      "type": "object",
      "required": [
        "prefixLength",
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getPbrV2PolicyPolicyActionRerouteParam:getPbrV2PolicyPolicyActionRerouteParam": {
      "properties": {
        "egressServiceIps": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetPbrV2PolicyPolicyActionRerouteParamEgressServiceIp:getPbrV2PolicyPolicyActionRerouteParamEgressServiceIp"
          },
          "description": "An unique address that identifies a device on the internet or a local network in IPv4 or IPv6 format.\n"
        },
        "ingressServiceIps": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetPbrV2PolicyPolicyActionRerouteParamIngressServiceIp:getPbrV2PolicyPolicyActionRerouteParamIngressServiceIp"
          },
          "description": "An unique address that identifies a device on the internet or a local network in IPv4 or IPv6 format.\n"
        },
        "rerouteFallbackAction": {
          "type": "string",
          "description": "Type of fallback action in reroute case when service VM is down.\n"
        },
        "serviceIps": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetPbrV2PolicyPolicyActionRerouteParamServiceIp:getPbrV2PolicyPolicyActionRerouteParamServiceIp"
          },
          "description": "An unique address that identifies a device on the internet or a local network in IPv4 or IPv6 format.\n"
        }
      },
      "type": "object",
      "required": [
        "egressServiceIps",
        "ingressServiceIps",
        "rerouteFallbackAction",
        "serviceIps"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getPbrV2PolicyPolicyActionRerouteParamEgressServiceIp:getPbrV2PolicyPolicyActionRerouteParamEgressServiceIp": {
      "properties": {
        "ipv4s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetPbrV2PolicyPolicyActionRerouteParamEgressServiceIpIpv4:getPbrV2PolicyPolicyActionRerouteParamEgressServiceIpIpv4"
          }
        },
        "ipv6s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetPbrV2PolicyPolicyActionRerouteParamEgressServiceIpIpv6:getPbrV2PolicyPolicyActionRerouteParamEgressServiceIpIpv6"
          }
        }
      },
      "type": "object",
      "required": [
        "ipv4s",
        "ipv6s"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getPbrV2PolicyPolicyActionRerouteParamEgressServiceIpIpv4:getPbrV2PolicyPolicyActionRerouteParamEgressServiceIpIpv4": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "The prefix length of the network to which this host IPv4/IPv6 address belongs.\n"
        },
        "value": {
          "type": "string",
          "description": "ip value\n"
        }
      },
      "type": "object",
      "required": [
        "prefixLength",
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getPbrV2PolicyPolicyActionRerouteParamEgressServiceIpIpv6:getPbrV2PolicyPolicyActionRerouteParamEgressServiceIpIpv6": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "The prefix length of the network to which this host IPv4/IPv6 address belongs.\n"
        },
        "value": {
          "type": "string",
          "description": "ip value\n"
        }
      },
      "type": "object",
      "required": [
        "prefixLength",
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getPbrV2PolicyPolicyActionRerouteParamIngressServiceIp:getPbrV2PolicyPolicyActionRerouteParamIngressServiceIp": {
      "properties": {
        "ipv4s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetPbrV2PolicyPolicyActionRerouteParamIngressServiceIpIpv4:getPbrV2PolicyPolicyActionRerouteParamIngressServiceIpIpv4"
          }
        },
        "ipv6s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetPbrV2PolicyPolicyActionRerouteParamIngressServiceIpIpv6:getPbrV2PolicyPolicyActionRerouteParamIngressServiceIpIpv6"
          }
        }
      },
      "type": "object",
      "required": [
        "ipv4s",
        "ipv6s"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getPbrV2PolicyPolicyActionRerouteParamIngressServiceIpIpv4:getPbrV2PolicyPolicyActionRerouteParamIngressServiceIpIpv4": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "The prefix length of the network to which this host IPv4/IPv6 address belongs.\n"
        },
        "value": {
          "type": "string",
          "description": "ip value\n"
        }
      },
      "type": "object",
      "required": [
        "prefixLength",
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getPbrV2PolicyPolicyActionRerouteParamIngressServiceIpIpv6:getPbrV2PolicyPolicyActionRerouteParamIngressServiceIpIpv6": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "The prefix length of the network to which this host IPv4/IPv6 address belongs.\n"
        },
        "value": {
          "type": "string",
          "description": "ip value\n"
        }
      },
      "type": "object",
      "required": [
        "prefixLength",
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getPbrV2PolicyPolicyActionRerouteParamServiceIp:getPbrV2PolicyPolicyActionRerouteParamServiceIp": {
      "properties": {
        "ipv4s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetPbrV2PolicyPolicyActionRerouteParamServiceIpIpv4:getPbrV2PolicyPolicyActionRerouteParamServiceIpIpv4"
          }
        },
        "ipv6s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetPbrV2PolicyPolicyActionRerouteParamServiceIpIpv6:getPbrV2PolicyPolicyActionRerouteParamServiceIpIpv6"
          }
        }
      },
      "type": "object",
      "required": [
        "ipv4s",
        "ipv6s"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getPbrV2PolicyPolicyActionRerouteParamServiceIpIpv4:getPbrV2PolicyPolicyActionRerouteParamServiceIpIpv4": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "The prefix length of the network to which this host IPv4/IPv6 address belongs.\n"
        },
        "value": {
          "type": "string",
          "description": "ip value\n"
        }
      },
      "type": "object",
      "required": [
        "prefixLength",
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getPbrV2PolicyPolicyActionRerouteParamServiceIpIpv6:getPbrV2PolicyPolicyActionRerouteParamServiceIpIpv6": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "The prefix length of the network to which this host IPv4/IPv6 address belongs.\n"
        },
        "value": {
          "type": "string",
          "description": "ip value\n"
        }
      },
      "type": "object",
      "required": [
        "prefixLength",
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getPbrV2PolicyPolicyMatch:getPbrV2PolicyPolicyMatch": {
      "properties": {
        "destinations": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetPbrV2PolicyPolicyMatchDestination:getPbrV2PolicyPolicyMatchDestination"
          },
          "description": "Address Type like \"EXTERNAL\" or \"ANY\".\n"
        },
        "protocolParameters": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetPbrV2PolicyPolicyMatchProtocolParameter:getPbrV2PolicyPolicyMatchProtocolParameter"
          },
          "description": "Protocol Params Object.\n"
        },
        "protocolType": {
          "type": "string",
          "description": "Routing Policy IP protocol type.\n"
        },
        "sources": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetPbrV2PolicyPolicyMatchSource:getPbrV2PolicyPolicyMatchSource"
          },
          "description": "Address Type like \"EXTERNAL\" or \"ANY\".\n"
        }
      },
      "type": "object",
      "required": [
        "destinations",
        "protocolParameters",
        "protocolType",
        "sources"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getPbrV2PolicyPolicyMatchDestination:getPbrV2PolicyPolicyMatchDestination": {
      "properties": {
        "addressType": {
          "type": "string",
          "description": "Address Type like \"EXTERNAL\" or \"ANY\".\n"
        },
        "subnetPrefixes": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetPbrV2PolicyPolicyMatchDestinationSubnetPrefix:getPbrV2PolicyPolicyMatchDestinationSubnetPrefix"
          },
          "description": "Subnet Prefix\n"
        }
      },
      "type": "object",
      "required": [
        "addressType",
        "subnetPrefixes"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getPbrV2PolicyPolicyMatchDestinationSubnetPrefix:getPbrV2PolicyPolicyMatchDestinationSubnetPrefix": {
      "properties": {
        "ipv4s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetPbrV2PolicyPolicyMatchDestinationSubnetPrefixIpv4:getPbrV2PolicyPolicyMatchDestinationSubnetPrefixIpv4"
          }
        },
        "ipv6s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetPbrV2PolicyPolicyMatchDestinationSubnetPrefixIpv6:getPbrV2PolicyPolicyMatchDestinationSubnetPrefixIpv6"
          }
        }
      },
      "type": "object",
      "required": [
        "ipv4s",
        "ipv6s"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getPbrV2PolicyPolicyMatchDestinationSubnetPrefixIpv4:getPbrV2PolicyPolicyMatchDestinationSubnetPrefixIpv4": {
      "properties": {
        "ips": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetPbrV2PolicyPolicyMatchDestinationSubnetPrefixIpv4Ip:getPbrV2PolicyPolicyMatchDestinationSubnetPrefixIpv4Ip"
          },
          "description": "IP of address\n"
        },
        "prefixLength": {
          "type": "integer",
          "description": "The prefix length of the network to which this host IPv4/IPv6 address belongs.\n"
        }
      },
      "type": "object",
      "required": [
        "ips",
        "prefixLength"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getPbrV2PolicyPolicyMatchDestinationSubnetPrefixIpv4Ip:getPbrV2PolicyPolicyMatchDestinationSubnetPrefixIpv4Ip": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "The prefix length of the network to which this host IPv4/IPv6 address belongs.\n"
        },
        "value": {
          "type": "string",
          "description": "ip value\n"
        }
      },
      "type": "object",
      "required": [
        "prefixLength",
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getPbrV2PolicyPolicyMatchDestinationSubnetPrefixIpv6:getPbrV2PolicyPolicyMatchDestinationSubnetPrefixIpv6": {
      "properties": {
        "ips": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetPbrV2PolicyPolicyMatchDestinationSubnetPrefixIpv6Ip:getPbrV2PolicyPolicyMatchDestinationSubnetPrefixIpv6Ip"
          },
          "description": "IP of address\n"
        },
        "prefixLength": {
          "type": "integer",
          "description": "The prefix length of the network to which this host IPv4/IPv6 address belongs.\n"
        }
      },
      "type": "object",
      "required": [
        "ips",
        "prefixLength"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getPbrV2PolicyPolicyMatchDestinationSubnetPrefixIpv6Ip:getPbrV2PolicyPolicyMatchDestinationSubnetPrefixIpv6Ip": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "The prefix length of the network to which this host IPv4/IPv6 address belongs.\n"
        },
        "value": {
          "type": "string",
          "description": "ip value\n"
        }
      },
      "type": "object",
      "required": [
        "prefixLength",
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getPbrV2PolicyPolicyMatchProtocolParameter:getPbrV2PolicyPolicyMatchProtocolParameter": {
      "properties": {
        "icmpObjects": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetPbrV2PolicyPolicyMatchProtocolParameterIcmpObject:getPbrV2PolicyPolicyMatchProtocolParameterIcmpObject"
          },
          "description": "ICMP object\n"
        },
        "layerFourProtocolObjects": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetPbrV2PolicyPolicyMatchProtocolParameterLayerFourProtocolObject:getPbrV2PolicyPolicyMatchProtocolParameterLayerFourProtocolObject"
          },
          "description": "Layer Four Protocol Object.\n"
        },
        "protocolNumberObjects": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetPbrV2PolicyPolicyMatchProtocolParameterProtocolNumberObject:getPbrV2PolicyPolicyMatchProtocolParameterProtocolNumberObject"
          },
          "description": "Protocol Number Object.\n"
        }
      },
      "type": "object",
      "required": [
        "icmpObjects",
        "layerFourProtocolObjects",
        "protocolNumberObjects"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getPbrV2PolicyPolicyMatchProtocolParameterIcmpObject:getPbrV2PolicyPolicyMatchProtocolParameterIcmpObject": {
      "properties": {
        "icmpCode": {
          "type": "integer",
          "description": "icmp code\n"
        },
        "icmpType": {
          "type": "integer",
          "description": "icmp type\n"
        }
      },
      "type": "object",
      "required": [
        "icmpCode",
        "icmpType"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getPbrV2PolicyPolicyMatchProtocolParameterLayerFourProtocolObject:getPbrV2PolicyPolicyMatchProtocolParameterLayerFourProtocolObject": {
      "properties": {
        "destinationPortRanges": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetPbrV2PolicyPolicyMatchProtocolParameterLayerFourProtocolObjectDestinationPortRange:getPbrV2PolicyPolicyMatchProtocolParameterLayerFourProtocolObjectDestinationPortRange"
          },
          "description": "Start and end port ranges object.\n"
        },
        "sourcePortRanges": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetPbrV2PolicyPolicyMatchProtocolParameterLayerFourProtocolObjectSourcePortRange:getPbrV2PolicyPolicyMatchProtocolParameterLayerFourProtocolObjectSourcePortRange"
          },
          "description": "Start and end port ranges object.\n"
        }
      },
      "type": "object",
      "required": [
        "destinationPortRanges",
        "sourcePortRanges"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getPbrV2PolicyPolicyMatchProtocolParameterLayerFourProtocolObjectDestinationPortRange:getPbrV2PolicyPolicyMatchProtocolParameterLayerFourProtocolObjectDestinationPortRange": {
      "properties": {
        "endPort": {
          "type": "integer"
        },
        "startPort": {
          "type": "integer"
        }
      },
      "type": "object",
      "required": [
        "endPort",
        "startPort"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getPbrV2PolicyPolicyMatchProtocolParameterLayerFourProtocolObjectSourcePortRange:getPbrV2PolicyPolicyMatchProtocolParameterLayerFourProtocolObjectSourcePortRange": {
      "properties": {
        "endPort": {
          "type": "integer"
        },
        "startPort": {
          "type": "integer"
        }
      },
      "type": "object",
      "required": [
        "endPort",
        "startPort"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getPbrV2PolicyPolicyMatchProtocolParameterProtocolNumberObject:getPbrV2PolicyPolicyMatchProtocolParameterProtocolNumberObject": {
      "properties": {
        "protocolNumber": {
          "type": "integer",
          "description": "protocol number\n"
        }
      },
      "type": "object",
      "required": [
        "protocolNumber"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getPbrV2PolicyPolicyMatchSource:getPbrV2PolicyPolicyMatchSource": {
      "properties": {
        "addressType": {
          "type": "string",
          "description": "Address Type like \"EXTERNAL\" or \"ANY\".\n"
        },
        "subnetPrefixes": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetPbrV2PolicyPolicyMatchSourceSubnetPrefix:getPbrV2PolicyPolicyMatchSourceSubnetPrefix"
          },
          "description": "Subnet Prefix\n"
        }
      },
      "type": "object",
      "required": [
        "addressType",
        "subnetPrefixes"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getPbrV2PolicyPolicyMatchSourceSubnetPrefix:getPbrV2PolicyPolicyMatchSourceSubnetPrefix": {
      "properties": {
        "ipv4s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetPbrV2PolicyPolicyMatchSourceSubnetPrefixIpv4:getPbrV2PolicyPolicyMatchSourceSubnetPrefixIpv4"
          }
        },
        "ipv6s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetPbrV2PolicyPolicyMatchSourceSubnetPrefixIpv6:getPbrV2PolicyPolicyMatchSourceSubnetPrefixIpv6"
          }
        }
      },
      "type": "object",
      "required": [
        "ipv4s",
        "ipv6s"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getPbrV2PolicyPolicyMatchSourceSubnetPrefixIpv4:getPbrV2PolicyPolicyMatchSourceSubnetPrefixIpv4": {
      "properties": {
        "ips": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetPbrV2PolicyPolicyMatchSourceSubnetPrefixIpv4Ip:getPbrV2PolicyPolicyMatchSourceSubnetPrefixIpv4Ip"
          },
          "description": "IP of address\n"
        },
        "prefixLength": {
          "type": "integer",
          "description": "The prefix length of the network to which this host IPv4/IPv6 address belongs.\n"
        }
      },
      "type": "object",
      "required": [
        "ips",
        "prefixLength"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getPbrV2PolicyPolicyMatchSourceSubnetPrefixIpv4Ip:getPbrV2PolicyPolicyMatchSourceSubnetPrefixIpv4Ip": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "The prefix length of the network to which this host IPv4/IPv6 address belongs.\n"
        },
        "value": {
          "type": "string",
          "description": "ip value\n"
        }
      },
      "type": "object",
      "required": [
        "prefixLength",
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getPbrV2PolicyPolicyMatchSourceSubnetPrefixIpv6:getPbrV2PolicyPolicyMatchSourceSubnetPrefixIpv6": {
      "properties": {
        "ips": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetPbrV2PolicyPolicyMatchSourceSubnetPrefixIpv6Ip:getPbrV2PolicyPolicyMatchSourceSubnetPrefixIpv6Ip"
          },
          "description": "IP of address\n"
        },
        "prefixLength": {
          "type": "integer",
          "description": "The prefix length of the network to which this host IPv4/IPv6 address belongs.\n"
        }
      },
      "type": "object",
      "required": [
        "ips",
        "prefixLength"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getPbrV2PolicyPolicyMatchSourceSubnetPrefixIpv6Ip:getPbrV2PolicyPolicyMatchSourceSubnetPrefixIpv6Ip": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "The prefix length of the network to which this host IPv4/IPv6 address belongs.\n"
        },
        "value": {
          "type": "string",
          "description": "ip value\n"
        }
      },
      "type": "object",
      "required": [
        "prefixLength",
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getPbrV2Vpc:getPbrV2Vpc": {
      "properties": {
        "name": {
          "type": "string",
          "description": "Name of the routing policy.\n"
        }
      },
      "type": "object",
      "required": [
        "name"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getPbrsEntity:getPbrsEntity": {
      "properties": {
        "metadata": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          },
          "description": "- The routing policies kind metadata.\n"
        },
        "specs": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetPbrsEntitySpec:getPbrsEntitySpec"
          },
          "description": "PBR spec\n"
        },
        "statuses": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetPbrsEntityStatus:getPbrsEntityStatus"
          },
          "description": "PBR output status\n"
        }
      },
      "type": "object",
      "required": [
        "metadata",
        "specs",
        "statuses"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getPbrsEntitySpec:getPbrsEntitySpec": {
      "properties": {
        "name": {
          "type": "string",
          "description": "- the name.\n"
        },
        "resources": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetPbrsEntitySpecResource:getPbrsEntitySpecResource"
          },
          "description": "PBR resources status\n"
        }
      },
      "type": "object",
      "required": [
        "name",
        "resources"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getPbrsEntitySpecResource:getPbrsEntitySpecResource": {
      "properties": {
        "actions": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetPbrsEntitySpecResourceAction:getPbrsEntitySpecResourceAction"
          },
          "description": "Routing policy action\n"
        },
        "destinations": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetPbrsEntitySpecResourceDestination:getPbrsEntitySpecResourceDestination"
          },
          "description": "destination address of an IP.\n"
        },
        "isBidirectional": {
          "type": "boolean",
          "description": "Policy in reverse direction.\n"
        },
        "priority": {
          "type": "integer",
          "description": "priority of routing policy\n"
        },
        "protocolParameters": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetPbrsEntitySpecResourceProtocolParameter:getPbrsEntitySpecResourceProtocolParameter"
          },
          "description": "Routing policy IP protocol parameters\n"
        },
        "protocolType": {
          "type": "string",
          "description": "Protocol type of routing policy\n"
        },
        "sources": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetPbrsEntitySpecResourceSource:getPbrsEntitySpecResourceSource"
          },
          "description": "source address of an IP.\n"
        },
        "vpcReference": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          },
          "description": "Reference to VPC\n"
        }
      },
      "type": "object",
      "required": [
        "actions",
        "destinations",
        "isBidirectional",
        "priority",
        "protocolParameters",
        "protocolType",
        "sources",
        "vpcReference"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getPbrsEntitySpecResourceAction:getPbrsEntitySpecResourceAction": {
      "properties": {
        "action": {
          "type": "string",
          "description": "Routing policy action\n"
        },
        "serviceIpLists": {
          "type": "array",
          "items": {
            "type": "string"
          }
        }
      },
      "type": "object",
      "required": [
        "action",
        "serviceIpLists"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getPbrsEntitySpecResourceDestination:getPbrsEntitySpecResourceDestination": {
      "properties": {
        "addressType": {
          "type": "string"
        },
        "prefixLength": {
          "type": "integer",
          "description": "prefix length of provided subnet.\n"
        },
        "subnetIp": {
          "type": "string",
          "description": "IP subnet provided as an address.\n"
        }
      },
      "type": "object",
      "required": [
        "addressType"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getPbrsEntitySpecResourceProtocolParameter:getPbrsEntitySpecResourceProtocolParameter": {
      "properties": {
        "icmps": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetPbrsEntitySpecResourceProtocolParameterIcmp:getPbrsEntitySpecResourceProtocolParameterIcmp"
          },
          "description": "ICMP parameters in routing policy.\n"
        },
        "protocolNumber": {
          "type": "integer",
          "description": "Protocol number in routing policy\n"
        },
        "tcps": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetPbrsEntitySpecResourceProtocolParameterTcp:getPbrsEntitySpecResourceProtocolParameterTcp"
          },
          "description": "TCP parameters in routing policy\n"
        },
        "udps": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetPbrsEntitySpecResourceProtocolParameterUdp:getPbrsEntitySpecResourceProtocolParameterUdp"
          },
          "description": "UDP parameters in routing policy\n"
        }
      },
      "type": "object",
      "required": [
        "icmps",
        "protocolNumber",
        "tcps",
        "udps"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getPbrsEntitySpecResourceProtocolParameterIcmp:getPbrsEntitySpecResourceProtocolParameterIcmp": {
      "properties": {
        "icmpCode": {
          "type": "integer"
        },
        "icmpType": {
          "type": "integer"
        }
      },
      "type": "object",
      "required": [
        "icmpCode",
        "icmpType"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getPbrsEntitySpecResourceProtocolParameterTcp:getPbrsEntitySpecResourceProtocolParameterTcp": {
      "properties": {
        "destinationPortRangeLists": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetPbrsEntitySpecResourceProtocolParameterTcpDestinationPortRangeList:getPbrsEntitySpecResourceProtocolParameterTcpDestinationPortRangeList"
          }
        },
        "sourcePortRangeLists": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetPbrsEntitySpecResourceProtocolParameterTcpSourcePortRangeList:getPbrsEntitySpecResourceProtocolParameterTcpSourcePortRangeList"
          }
        }
      },
      "type": "object",
      "required": [
        "destinationPortRangeLists",
        "sourcePortRangeLists"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getPbrsEntitySpecResourceProtocolParameterTcpDestinationPortRangeList:getPbrsEntitySpecResourceProtocolParameterTcpDestinationPortRangeList": {
      "properties": {
        "endPort": {
          "type": "integer"
        },
        "startPort": {
          "type": "integer"
        }
      },
      "type": "object",
      "required": [
        "endPort",
        "startPort"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getPbrsEntitySpecResourceProtocolParameterTcpSourcePortRangeList:getPbrsEntitySpecResourceProtocolParameterTcpSourcePortRangeList": {
      "properties": {
        "endPort": {
          "type": "integer"
        },
        "startPort": {
          "type": "integer"
        }
      },
      "type": "object",
      "required": [
        "endPort",
        "startPort"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getPbrsEntitySpecResourceProtocolParameterUdp:getPbrsEntitySpecResourceProtocolParameterUdp": {
      "properties": {
        "destinationPortRangeLists": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetPbrsEntitySpecResourceProtocolParameterUdpDestinationPortRangeList:getPbrsEntitySpecResourceProtocolParameterUdpDestinationPortRangeList"
          }
        },
        "sourcePortRangeLists": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetPbrsEntitySpecResourceProtocolParameterUdpSourcePortRangeList:getPbrsEntitySpecResourceProtocolParameterUdpSourcePortRangeList"
          }
        }
      },
      "type": "object",
      "required": [
        "destinationPortRangeLists",
        "sourcePortRangeLists"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getPbrsEntitySpecResourceProtocolParameterUdpDestinationPortRangeList:getPbrsEntitySpecResourceProtocolParameterUdpDestinationPortRangeList": {
      "properties": {
        "endPort": {
          "type": "integer"
        },
        "startPort": {
          "type": "integer"
        }
      },
      "type": "object",
      "required": [
        "endPort",
        "startPort"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getPbrsEntitySpecResourceProtocolParameterUdpSourcePortRangeList:getPbrsEntitySpecResourceProtocolParameterUdpSourcePortRangeList": {
      "properties": {
        "endPort": {
          "type": "integer"
        },
        "startPort": {
          "type": "integer"
        }
      },
      "type": "object",
      "required": [
        "endPort",
        "startPort"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getPbrsEntitySpecResourceSource:getPbrsEntitySpecResourceSource": {
      "properties": {
        "addressType": {
          "type": "string"
        },
        "prefixLength": {
          "type": "integer",
          "description": "prefix length of provided subnet.\n"
        },
        "subnetIp": {
          "type": "string",
          "description": "IP subnet provided as an address.\n"
        }
      },
      "type": "object",
      "required": [
        "addressType"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getPbrsEntityStatus:getPbrsEntityStatus": {
      "properties": {
        "executionContexts": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetPbrsEntityStatusExecutionContext:getPbrsEntityStatusExecutionContext"
          },
          "description": "Execution Context of PBR.\n"
        },
        "name": {
          "type": "string",
          "description": "- the name.\n"
        },
        "resources": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetPbrsEntityStatusResource:getPbrsEntityStatusResource"
          },
          "description": "PBR resources status\n"
        },
        "state": {
          "type": "string",
          "description": "The state of the PBR\n"
        }
      },
      "type": "object",
      "required": [
        "executionContexts",
        "name",
        "resources",
        "state"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getPbrsEntityStatusExecutionContext:getPbrsEntityStatusExecutionContext": {
      "properties": {
        "taskUuids": {
          "type": "array",
          "items": {
            "type": "string"
          }
        }
      },
      "type": "object",
      "required": [
        "taskUuids"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getPbrsEntityStatusResource:getPbrsEntityStatusResource": {
      "properties": {
        "actions": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetPbrsEntityStatusResourceAction:getPbrsEntityStatusResourceAction"
          },
          "description": "Routing policy action\n"
        },
        "destinations": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetPbrsEntityStatusResourceDestination:getPbrsEntityStatusResourceDestination"
          },
          "description": "destination address of an IP.\n"
        },
        "isBidirectional": {
          "type": "boolean",
          "description": "Policy in reverse direction.\n"
        },
        "priority": {
          "type": "integer",
          "description": "priority of routing policy\n"
        },
        "protocolParameters": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetPbrsEntityStatusResourceProtocolParameter:getPbrsEntityStatusResourceProtocolParameter"
          },
          "description": "Routing policy IP protocol parameters\n"
        },
        "protocolType": {
          "type": "string",
          "description": "Protocol type of routing policy\n"
        },
        "routingPolicyCounters": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetPbrsEntityStatusResourceRoutingPolicyCounter:getPbrsEntityStatusResourceRoutingPolicyCounter"
          }
        },
        "sources": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetPbrsEntityStatusResourceSource:getPbrsEntityStatusResourceSource"
          },
          "description": "source address of an IP.\n"
        },
        "vpcReference": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          },
          "description": "Reference to VPC\n"
        }
      },
      "type": "object",
      "required": [
        "actions",
        "destinations",
        "isBidirectional",
        "priority",
        "protocolParameters",
        "protocolType",
        "routingPolicyCounters",
        "sources",
        "vpcReference"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getPbrsEntityStatusResourceAction:getPbrsEntityStatusResourceAction": {
      "properties": {
        "action": {
          "type": "string",
          "description": "Routing policy action\n"
        },
        "serviceIpLists": {
          "type": "array",
          "items": {
            "type": "string"
          }
        }
      },
      "type": "object",
      "required": [
        "action",
        "serviceIpLists"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getPbrsEntityStatusResourceDestination:getPbrsEntityStatusResourceDestination": {
      "properties": {
        "addressType": {
          "type": "string"
        },
        "prefixLength": {
          "type": "integer",
          "description": "prefix length of provided subnet.\n"
        },
        "subnetIp": {
          "type": "string",
          "description": "IP subnet provided as an address.\n"
        }
      },
      "type": "object",
      "required": [
        "addressType"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getPbrsEntityStatusResourceProtocolParameter:getPbrsEntityStatusResourceProtocolParameter": {
      "properties": {
        "icmps": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetPbrsEntityStatusResourceProtocolParameterIcmp:getPbrsEntityStatusResourceProtocolParameterIcmp"
          },
          "description": "ICMP parameters in routing policy.\n"
        },
        "protocolNumber": {
          "type": "integer",
          "description": "Protocol number in routing policy\n"
        },
        "tcps": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetPbrsEntityStatusResourceProtocolParameterTcp:getPbrsEntityStatusResourceProtocolParameterTcp"
          },
          "description": "TCP parameters in routing policy\n"
        },
        "udps": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetPbrsEntityStatusResourceProtocolParameterUdp:getPbrsEntityStatusResourceProtocolParameterUdp"
          },
          "description": "UDP parameters in routing policy\n"
        }
      },
      "type": "object",
      "required": [
        "icmps",
        "protocolNumber",
        "tcps",
        "udps"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getPbrsEntityStatusResourceProtocolParameterIcmp:getPbrsEntityStatusResourceProtocolParameterIcmp": {
      "properties": {
        "icmpCode": {
          "type": "integer"
        },
        "icmpType": {
          "type": "integer"
        }
      },
      "type": "object",
      "required": [
        "icmpCode",
        "icmpType"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getPbrsEntityStatusResourceProtocolParameterTcp:getPbrsEntityStatusResourceProtocolParameterTcp": {
      "properties": {
        "destinationPortRangeLists": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetPbrsEntityStatusResourceProtocolParameterTcpDestinationPortRangeList:getPbrsEntityStatusResourceProtocolParameterTcpDestinationPortRangeList"
          }
        },
        "sourcePortRangeLists": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetPbrsEntityStatusResourceProtocolParameterTcpSourcePortRangeList:getPbrsEntityStatusResourceProtocolParameterTcpSourcePortRangeList"
          }
        }
      },
      "type": "object",
      "required": [
        "destinationPortRangeLists",
        "sourcePortRangeLists"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getPbrsEntityStatusResourceProtocolParameterTcpDestinationPortRangeList:getPbrsEntityStatusResourceProtocolParameterTcpDestinationPortRangeList": {
      "properties": {
        "endPort": {
          "type": "integer"
        },
        "startPort": {
          "type": "integer"
        }
      },
      "type": "object",
      "required": [
        "endPort",
        "startPort"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getPbrsEntityStatusResourceProtocolParameterTcpSourcePortRangeList:getPbrsEntityStatusResourceProtocolParameterTcpSourcePortRangeList": {
      "properties": {
        "endPort": {
          "type": "integer"
        },
        "startPort": {
          "type": "integer"
        }
      },
      "type": "object",
      "required": [
        "endPort",
        "startPort"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getPbrsEntityStatusResourceProtocolParameterUdp:getPbrsEntityStatusResourceProtocolParameterUdp": {
      "properties": {
        "destinationPortRangeLists": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetPbrsEntityStatusResourceProtocolParameterUdpDestinationPortRangeList:getPbrsEntityStatusResourceProtocolParameterUdpDestinationPortRangeList"
          }
        },
        "sourcePortRangeLists": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetPbrsEntityStatusResourceProtocolParameterUdpSourcePortRangeList:getPbrsEntityStatusResourceProtocolParameterUdpSourcePortRangeList"
          }
        }
      },
      "type": "object",
      "required": [
        "destinationPortRangeLists",
        "sourcePortRangeLists"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getPbrsEntityStatusResourceProtocolParameterUdpDestinationPortRangeList:getPbrsEntityStatusResourceProtocolParameterUdpDestinationPortRangeList": {
      "properties": {
        "endPort": {
          "type": "integer"
        },
        "startPort": {
          "type": "integer"
        }
      },
      "type": "object",
      "required": [
        "endPort",
        "startPort"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getPbrsEntityStatusResourceProtocolParameterUdpSourcePortRangeList:getPbrsEntityStatusResourceProtocolParameterUdpSourcePortRangeList": {
      "properties": {
        "endPort": {
          "type": "integer"
        },
        "startPort": {
          "type": "integer"
        }
      },
      "type": "object",
      "required": [
        "endPort",
        "startPort"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getPbrsEntityStatusResourceRoutingPolicyCounter:getPbrsEntityStatusResourceRoutingPolicyCounter": {
      "properties": {
        "byteCount": {
          "type": "integer"
        },
        "packetCount": {
          "type": "integer"
        }
      },
      "type": "object",
      "required": [
        "byteCount",
        "packetCount"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getPbrsEntityStatusResourceSource:getPbrsEntityStatusResourceSource": {
      "properties": {
        "addressType": {
          "type": "string"
        },
        "prefixLength": {
          "type": "integer",
          "description": "prefix length of provided subnet.\n"
        },
        "subnetIp": {
          "type": "string",
          "description": "IP subnet provided as an address.\n"
        }
      },
      "type": "object",
      "required": [
        "addressType"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getPbrsMetadata:getPbrsMetadata": {
      "properties": {
        "filter": {
          "type": "string"
        },
        "kind": {
          "type": "string",
          "description": "- The kind name (Default value: project).\n"
        },
        "length": {
          "type": "integer"
        },
        "offset": {
          "type": "integer"
        },
        "sortAttribute": {
          "type": "string"
        },
        "sortOrder": {
          "type": "string"
        },
        "totalMatches": {
          "type": "integer"
        }
      },
      "type": "object",
      "required": [
        "filter",
        "kind",
        "length",
        "offset",
        "sortAttribute",
        "sortOrder",
        "totalMatches"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getPbrsV2RoutingPolicy:getPbrsV2RoutingPolicy": {
      "properties": {
        "description": {
          "type": "string",
          "description": "A description of the routing policy.\n"
        },
        "extId": {
          "type": "string",
          "description": "A globally unique identifier of an instance that is suitable for external consumption.\n"
        },
        "links": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetPbrsV2RoutingPolicyLink:getPbrsV2RoutingPolicyLink"
          },
          "description": "A HATEOAS style link for the response. Each link contains a user-friendly name identifying the link and an address for retrieving the particular resource.\n"
        },
        "metadatas": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetPbrsV2RoutingPolicyMetadata:getPbrsV2RoutingPolicyMetadata"
          },
          "description": "Metadata associated with this resource.\n"
        },
        "name": {
          "type": "string",
          "description": "Name of the routing policy.\n"
        },
        "policies": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetPbrsV2RoutingPolicyPolicy:getPbrsV2RoutingPolicyPolicy"
          },
          "description": "Routing Policies\n"
        },
        "priority": {
          "type": "integer",
          "description": "Priority of the routing policy.\n"
        },
        "tenantId": {
          "type": "string",
          "description": "A globally unique identifier that represents the tenant that owns this entity\n"
        },
        "vpcExtId": {
          "type": "string",
          "description": "ExtId of the VPC extId to which the routing policy belongs.\n"
        },
        "vpcs": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetPbrsV2RoutingPolicyVpc:getPbrsV2RoutingPolicyVpc"
          },
          "description": "VPC name for projections\n"
        }
      },
      "type": "object",
      "required": [
        "description",
        "extId",
        "links",
        "metadatas",
        "name",
        "policies",
        "priority",
        "tenantId",
        "vpcExtId",
        "vpcs"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getPbrsV2RoutingPolicyLink:getPbrsV2RoutingPolicyLink": {
      "properties": {
        "href": {
          "type": "string",
          "description": "- The URL at which the entity described by the link can be accessed.\n"
        },
        "rel": {
          "type": "string",
          "description": "- A name that identifies the relationship of the link to the object that is returned by the URL. The unique value of \"self\" identifies the URL for the object.\n"
        }
      },
      "type": "object",
      "required": [
        "href",
        "rel"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getPbrsV2RoutingPolicyMetadata:getPbrsV2RoutingPolicyMetadata": {
      "properties": {
        "categoryIds": {
          "type": "array",
          "items": {
            "type": "array",
            "items": {
              "$ref": "pulumi.json#/Any"
            }
          },
          "description": "A list of globally unique identifiers that represent all the categories the resource is associated with.\n"
        },
        "ownerReferenceId": {
          "type": "string",
          "description": "A globally unique identifier that represents the owner of this resource.\n"
        },
        "ownerUserName": {
          "type": "string",
          "description": "The userName of the owner of this resource.\n"
        },
        "projectName": {
          "type": "string",
          "description": "The name of the project this resource belongs to.\n"
        },
        "projectReferenceId": {
          "type": "string",
          "description": "A globally unique identifier that represents the project this resource belongs to.\n"
        }
      },
      "type": "object",
      "required": [
        "categoryIds",
        "ownerReferenceId",
        "ownerUserName",
        "projectName",
        "projectReferenceId"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getPbrsV2RoutingPolicyPolicy:getPbrsV2RoutingPolicyPolicy": {
      "properties": {
        "isBidirectional": {
          "type": "boolean",
          "description": "If True, policies in the reverse direction will be installed with the same action but source and destination will be swapped.\n"
        },
        "policyActions": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetPbrsV2RoutingPolicyPolicyPolicyAction:getPbrsV2RoutingPolicyPolicyPolicyAction"
          },
          "description": "The action to be taken on the traffic matching the routing policy.\n"
        },
        "policyMatches": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetPbrsV2RoutingPolicyPolicyPolicyMatch:getPbrsV2RoutingPolicyPolicyPolicyMatch"
          },
          "description": "Match condition for the traffic that is entering the VPC.\n"
        }
      },
      "type": "object",
      "required": [
        "isBidirectional",
        "policyActions",
        "policyMatches"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getPbrsV2RoutingPolicyPolicyPolicyAction:getPbrsV2RoutingPolicyPolicyPolicyAction": {
      "properties": {
        "actionType": {
          "type": "string",
          "description": "Routing policy action type.\n"
        },
        "nexthopIpAddresses": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetPbrsV2RoutingPolicyPolicyPolicyActionNexthopIpAddress:getPbrsV2RoutingPolicyPolicyPolicyActionNexthopIpAddress"
          },
          "description": "An unique address that identifies a device on the internet or a local network in IPv4 or IPv6 format.\n"
        },
        "rerouteParams": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetPbrsV2RoutingPolicyPolicyPolicyActionRerouteParam:getPbrsV2RoutingPolicyPolicyPolicyActionRerouteParam"
          },
          "description": "Routing policy Reroute params.\n"
        }
      },
      "type": "object",
      "required": [
        "actionType",
        "nexthopIpAddresses",
        "rerouteParams"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getPbrsV2RoutingPolicyPolicyPolicyActionNexthopIpAddress:getPbrsV2RoutingPolicyPolicyPolicyActionNexthopIpAddress": {
      "properties": {
        "ipv4s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetPbrsV2RoutingPolicyPolicyPolicyActionNexthopIpAddressIpv4:getPbrsV2RoutingPolicyPolicyPolicyActionNexthopIpAddressIpv4"
          }
        },
        "ipv6s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetPbrsV2RoutingPolicyPolicyPolicyActionNexthopIpAddressIpv6:getPbrsV2RoutingPolicyPolicyPolicyActionNexthopIpAddressIpv6"
          }
        }
      },
      "type": "object",
      "required": [
        "ipv4s",
        "ipv6s"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getPbrsV2RoutingPolicyPolicyPolicyActionNexthopIpAddressIpv4:getPbrsV2RoutingPolicyPolicyPolicyActionNexthopIpAddressIpv4": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "The prefix length of the network to which this host IPv4/IPv6 address belongs.\n"
        },
        "value": {
          "type": "string",
          "description": "ip value\n"
        }
      },
      "type": "object",
      "required": [
        "prefixLength",
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getPbrsV2RoutingPolicyPolicyPolicyActionNexthopIpAddressIpv6:getPbrsV2RoutingPolicyPolicyPolicyActionNexthopIpAddressIpv6": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "The prefix length of the network to which this host IPv4/IPv6 address belongs.\n"
        },
        "value": {
          "type": "string",
          "description": "ip value\n"
        }
      },
      "type": "object",
      "required": [
        "prefixLength",
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getPbrsV2RoutingPolicyPolicyPolicyActionRerouteParam:getPbrsV2RoutingPolicyPolicyPolicyActionRerouteParam": {
      "properties": {
        "egressServiceIps": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetPbrsV2RoutingPolicyPolicyPolicyActionRerouteParamEgressServiceIp:getPbrsV2RoutingPolicyPolicyPolicyActionRerouteParamEgressServiceIp"
          },
          "description": "An unique address that identifies a device on the internet or a local network in IPv4 or IPv6 format.\n"
        },
        "ingressServiceIps": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetPbrsV2RoutingPolicyPolicyPolicyActionRerouteParamIngressServiceIp:getPbrsV2RoutingPolicyPolicyPolicyActionRerouteParamIngressServiceIp"
          },
          "description": "An unique address that identifies a device on the internet or a local network in IPv4 or IPv6 format.\n"
        },
        "rerouteFallbackAction": {
          "type": "string",
          "description": "Type of fallback action in reroute case when service VM is down.\n"
        },
        "serviceIps": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetPbrsV2RoutingPolicyPolicyPolicyActionRerouteParamServiceIp:getPbrsV2RoutingPolicyPolicyPolicyActionRerouteParamServiceIp"
          },
          "description": "An unique address that identifies a device on the internet or a local network in IPv4 or IPv6 format.\n"
        }
      },
      "type": "object",
      "required": [
        "egressServiceIps",
        "ingressServiceIps",
        "rerouteFallbackAction",
        "serviceIps"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getPbrsV2RoutingPolicyPolicyPolicyActionRerouteParamEgressServiceIp:getPbrsV2RoutingPolicyPolicyPolicyActionRerouteParamEgressServiceIp": {
      "properties": {
        "ipv4s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetPbrsV2RoutingPolicyPolicyPolicyActionRerouteParamEgressServiceIpIpv4:getPbrsV2RoutingPolicyPolicyPolicyActionRerouteParamEgressServiceIpIpv4"
          }
        },
        "ipv6s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetPbrsV2RoutingPolicyPolicyPolicyActionRerouteParamEgressServiceIpIpv6:getPbrsV2RoutingPolicyPolicyPolicyActionRerouteParamEgressServiceIpIpv6"
          }
        }
      },
      "type": "object",
      "required": [
        "ipv4s",
        "ipv6s"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getPbrsV2RoutingPolicyPolicyPolicyActionRerouteParamEgressServiceIpIpv4:getPbrsV2RoutingPolicyPolicyPolicyActionRerouteParamEgressServiceIpIpv4": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "The prefix length of the network to which this host IPv4/IPv6 address belongs.\n"
        },
        "value": {
          "type": "string",
          "description": "ip value\n"
        }
      },
      "type": "object",
      "required": [
        "prefixLength",
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getPbrsV2RoutingPolicyPolicyPolicyActionRerouteParamEgressServiceIpIpv6:getPbrsV2RoutingPolicyPolicyPolicyActionRerouteParamEgressServiceIpIpv6": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "The prefix length of the network to which this host IPv4/IPv6 address belongs.\n"
        },
        "value": {
          "type": "string",
          "description": "ip value\n"
        }
      },
      "type": "object",
      "required": [
        "prefixLength",
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getPbrsV2RoutingPolicyPolicyPolicyActionRerouteParamIngressServiceIp:getPbrsV2RoutingPolicyPolicyPolicyActionRerouteParamIngressServiceIp": {
      "properties": {
        "ipv4s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetPbrsV2RoutingPolicyPolicyPolicyActionRerouteParamIngressServiceIpIpv4:getPbrsV2RoutingPolicyPolicyPolicyActionRerouteParamIngressServiceIpIpv4"
          }
        },
        "ipv6s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetPbrsV2RoutingPolicyPolicyPolicyActionRerouteParamIngressServiceIpIpv6:getPbrsV2RoutingPolicyPolicyPolicyActionRerouteParamIngressServiceIpIpv6"
          }
        }
      },
      "type": "object",
      "required": [
        "ipv4s",
        "ipv6s"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getPbrsV2RoutingPolicyPolicyPolicyActionRerouteParamIngressServiceIpIpv4:getPbrsV2RoutingPolicyPolicyPolicyActionRerouteParamIngressServiceIpIpv4": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "The prefix length of the network to which this host IPv4/IPv6 address belongs.\n"
        },
        "value": {
          "type": "string",
          "description": "ip value\n"
        }
      },
      "type": "object",
      "required": [
        "prefixLength",
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getPbrsV2RoutingPolicyPolicyPolicyActionRerouteParamIngressServiceIpIpv6:getPbrsV2RoutingPolicyPolicyPolicyActionRerouteParamIngressServiceIpIpv6": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "The prefix length of the network to which this host IPv4/IPv6 address belongs.\n"
        },
        "value": {
          "type": "string",
          "description": "ip value\n"
        }
      },
      "type": "object",
      "required": [
        "prefixLength",
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getPbrsV2RoutingPolicyPolicyPolicyActionRerouteParamServiceIp:getPbrsV2RoutingPolicyPolicyPolicyActionRerouteParamServiceIp": {
      "properties": {
        "ipv4s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetPbrsV2RoutingPolicyPolicyPolicyActionRerouteParamServiceIpIpv4:getPbrsV2RoutingPolicyPolicyPolicyActionRerouteParamServiceIpIpv4"
          }
        },
        "ipv6s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetPbrsV2RoutingPolicyPolicyPolicyActionRerouteParamServiceIpIpv6:getPbrsV2RoutingPolicyPolicyPolicyActionRerouteParamServiceIpIpv6"
          }
        }
      },
      "type": "object",
      "required": [
        "ipv4s",
        "ipv6s"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getPbrsV2RoutingPolicyPolicyPolicyActionRerouteParamServiceIpIpv4:getPbrsV2RoutingPolicyPolicyPolicyActionRerouteParamServiceIpIpv4": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "The prefix length of the network to which this host IPv4/IPv6 address belongs.\n"
        },
        "value": {
          "type": "string",
          "description": "ip value\n"
        }
      },
      "type": "object",
      "required": [
        "prefixLength",
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getPbrsV2RoutingPolicyPolicyPolicyActionRerouteParamServiceIpIpv6:getPbrsV2RoutingPolicyPolicyPolicyActionRerouteParamServiceIpIpv6": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "The prefix length of the network to which this host IPv4/IPv6 address belongs.\n"
        },
        "value": {
          "type": "string",
          "description": "ip value\n"
        }
      },
      "type": "object",
      "required": [
        "prefixLength",
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getPbrsV2RoutingPolicyPolicyPolicyMatch:getPbrsV2RoutingPolicyPolicyPolicyMatch": {
      "properties": {
        "destinations": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetPbrsV2RoutingPolicyPolicyPolicyMatchDestination:getPbrsV2RoutingPolicyPolicyPolicyMatchDestination"
          },
          "description": "Address Type like \"EXTERNAL\" or \"ANY\".\n"
        },
        "protocolParameters": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetPbrsV2RoutingPolicyPolicyPolicyMatchProtocolParameter:getPbrsV2RoutingPolicyPolicyPolicyMatchProtocolParameter"
          },
          "description": "Protocol Params Object.\n"
        },
        "protocolType": {
          "type": "string",
          "description": "Routing Policy IP protocol type.\n"
        },
        "sources": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetPbrsV2RoutingPolicyPolicyPolicyMatchSource:getPbrsV2RoutingPolicyPolicyPolicyMatchSource"
          },
          "description": "Address Type like \"EXTERNAL\" or \"ANY\".\n"
        }
      },
      "type": "object",
      "required": [
        "destinations",
        "protocolParameters",
        "protocolType",
        "sources"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getPbrsV2RoutingPolicyPolicyPolicyMatchDestination:getPbrsV2RoutingPolicyPolicyPolicyMatchDestination": {
      "properties": {
        "addressType": {
          "type": "string",
          "description": "Address Type like \"EXTERNAL\" or \"ANY\".\n"
        },
        "subnetPrefixes": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetPbrsV2RoutingPolicyPolicyPolicyMatchDestinationSubnetPrefix:getPbrsV2RoutingPolicyPolicyPolicyMatchDestinationSubnetPrefix"
          },
          "description": "Subnet Prefix\n"
        }
      },
      "type": "object",
      "required": [
        "addressType",
        "subnetPrefixes"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getPbrsV2RoutingPolicyPolicyPolicyMatchDestinationSubnetPrefix:getPbrsV2RoutingPolicyPolicyPolicyMatchDestinationSubnetPrefix": {
      "properties": {
        "ipv4s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetPbrsV2RoutingPolicyPolicyPolicyMatchDestinationSubnetPrefixIpv4:getPbrsV2RoutingPolicyPolicyPolicyMatchDestinationSubnetPrefixIpv4"
          }
        },
        "ipv6s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetPbrsV2RoutingPolicyPolicyPolicyMatchDestinationSubnetPrefixIpv6:getPbrsV2RoutingPolicyPolicyPolicyMatchDestinationSubnetPrefixIpv6"
          }
        }
      },
      "type": "object",
      "required": [
        "ipv4s",
        "ipv6s"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getPbrsV2RoutingPolicyPolicyPolicyMatchDestinationSubnetPrefixIpv4:getPbrsV2RoutingPolicyPolicyPolicyMatchDestinationSubnetPrefixIpv4": {
      "properties": {
        "ips": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetPbrsV2RoutingPolicyPolicyPolicyMatchDestinationSubnetPrefixIpv4Ip:getPbrsV2RoutingPolicyPolicyPolicyMatchDestinationSubnetPrefixIpv4Ip"
          },
          "description": "IP of address\n"
        },
        "prefixLength": {
          "type": "integer",
          "description": "The prefix length of the network to which this host IPv4/IPv6 address belongs.\n"
        }
      },
      "type": "object",
      "required": [
        "ips",
        "prefixLength"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getPbrsV2RoutingPolicyPolicyPolicyMatchDestinationSubnetPrefixIpv4Ip:getPbrsV2RoutingPolicyPolicyPolicyMatchDestinationSubnetPrefixIpv4Ip": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "The prefix length of the network to which this host IPv4/IPv6 address belongs.\n"
        },
        "value": {
          "type": "string",
          "description": "ip value\n"
        }
      },
      "type": "object",
      "required": [
        "prefixLength",
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getPbrsV2RoutingPolicyPolicyPolicyMatchDestinationSubnetPrefixIpv6:getPbrsV2RoutingPolicyPolicyPolicyMatchDestinationSubnetPrefixIpv6": {
      "properties": {
        "ips": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetPbrsV2RoutingPolicyPolicyPolicyMatchDestinationSubnetPrefixIpv6Ip:getPbrsV2RoutingPolicyPolicyPolicyMatchDestinationSubnetPrefixIpv6Ip"
          },
          "description": "IP of address\n"
        },
        "prefixLength": {
          "type": "integer",
          "description": "The prefix length of the network to which this host IPv4/IPv6 address belongs.\n"
        }
      },
      "type": "object",
      "required": [
        "ips",
        "prefixLength"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getPbrsV2RoutingPolicyPolicyPolicyMatchDestinationSubnetPrefixIpv6Ip:getPbrsV2RoutingPolicyPolicyPolicyMatchDestinationSubnetPrefixIpv6Ip": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "The prefix length of the network to which this host IPv4/IPv6 address belongs.\n"
        },
        "value": {
          "type": "string",
          "description": "ip value\n"
        }
      },
      "type": "object",
      "required": [
        "prefixLength",
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getPbrsV2RoutingPolicyPolicyPolicyMatchProtocolParameter:getPbrsV2RoutingPolicyPolicyPolicyMatchProtocolParameter": {
      "properties": {
        "icmpObjects": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetPbrsV2RoutingPolicyPolicyPolicyMatchProtocolParameterIcmpObject:getPbrsV2RoutingPolicyPolicyPolicyMatchProtocolParameterIcmpObject"
          },
          "description": "ICMP object\n"
        },
        "layerFourProtocolObjects": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetPbrsV2RoutingPolicyPolicyPolicyMatchProtocolParameterLayerFourProtocolObject:getPbrsV2RoutingPolicyPolicyPolicyMatchProtocolParameterLayerFourProtocolObject"
          },
          "description": "Layer Four Protocol Object.\n"
        },
        "protocolNumberObjects": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetPbrsV2RoutingPolicyPolicyPolicyMatchProtocolParameterProtocolNumberObject:getPbrsV2RoutingPolicyPolicyPolicyMatchProtocolParameterProtocolNumberObject"
          },
          "description": "Protocol Number Object.\n"
        }
      },
      "type": "object",
      "required": [
        "icmpObjects",
        "layerFourProtocolObjects",
        "protocolNumberObjects"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getPbrsV2RoutingPolicyPolicyPolicyMatchProtocolParameterIcmpObject:getPbrsV2RoutingPolicyPolicyPolicyMatchProtocolParameterIcmpObject": {
      "properties": {
        "icmpCode": {
          "type": "integer",
          "description": "icmp code\n"
        },
        "icmpType": {
          "type": "integer",
          "description": "icmp type\n"
        }
      },
      "type": "object",
      "required": [
        "icmpCode",
        "icmpType"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getPbrsV2RoutingPolicyPolicyPolicyMatchProtocolParameterLayerFourProtocolObject:getPbrsV2RoutingPolicyPolicyPolicyMatchProtocolParameterLayerFourProtocolObject": {
      "properties": {
        "destinationPortRanges": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetPbrsV2RoutingPolicyPolicyPolicyMatchProtocolParameterLayerFourProtocolObjectDestinationPortRange:getPbrsV2RoutingPolicyPolicyPolicyMatchProtocolParameterLayerFourProtocolObjectDestinationPortRange"
          },
          "description": "Start and end port ranges object.\n"
        },
        "sourcePortRanges": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetPbrsV2RoutingPolicyPolicyPolicyMatchProtocolParameterLayerFourProtocolObjectSourcePortRange:getPbrsV2RoutingPolicyPolicyPolicyMatchProtocolParameterLayerFourProtocolObjectSourcePortRange"
          },
          "description": "Start and end port ranges object.\n"
        }
      },
      "type": "object",
      "required": [
        "destinationPortRanges",
        "sourcePortRanges"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getPbrsV2RoutingPolicyPolicyPolicyMatchProtocolParameterLayerFourProtocolObjectDestinationPortRange:getPbrsV2RoutingPolicyPolicyPolicyMatchProtocolParameterLayerFourProtocolObjectDestinationPortRange": {
      "properties": {
        "endPort": {
          "type": "integer"
        },
        "startPort": {
          "type": "integer"
        }
      },
      "type": "object",
      "required": [
        "endPort",
        "startPort"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getPbrsV2RoutingPolicyPolicyPolicyMatchProtocolParameterLayerFourProtocolObjectSourcePortRange:getPbrsV2RoutingPolicyPolicyPolicyMatchProtocolParameterLayerFourProtocolObjectSourcePortRange": {
      "properties": {
        "endPort": {
          "type": "integer"
        },
        "startPort": {
          "type": "integer"
        }
      },
      "type": "object",
      "required": [
        "endPort",
        "startPort"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getPbrsV2RoutingPolicyPolicyPolicyMatchProtocolParameterProtocolNumberObject:getPbrsV2RoutingPolicyPolicyPolicyMatchProtocolParameterProtocolNumberObject": {
      "properties": {
        "protocolNumber": {
          "type": "integer",
          "description": "protocol number\n"
        }
      },
      "type": "object",
      "required": [
        "protocolNumber"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getPbrsV2RoutingPolicyPolicyPolicyMatchSource:getPbrsV2RoutingPolicyPolicyPolicyMatchSource": {
      "properties": {
        "addressType": {
          "type": "string",
          "description": "Address Type like \"EXTERNAL\" or \"ANY\".\n"
        },
        "subnetPrefixes": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetPbrsV2RoutingPolicyPolicyPolicyMatchSourceSubnetPrefix:getPbrsV2RoutingPolicyPolicyPolicyMatchSourceSubnetPrefix"
          },
          "description": "Subnet Prefix\n"
        }
      },
      "type": "object",
      "required": [
        "addressType",
        "subnetPrefixes"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getPbrsV2RoutingPolicyPolicyPolicyMatchSourceSubnetPrefix:getPbrsV2RoutingPolicyPolicyPolicyMatchSourceSubnetPrefix": {
      "properties": {
        "ipv4s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetPbrsV2RoutingPolicyPolicyPolicyMatchSourceSubnetPrefixIpv4:getPbrsV2RoutingPolicyPolicyPolicyMatchSourceSubnetPrefixIpv4"
          }
        },
        "ipv6s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetPbrsV2RoutingPolicyPolicyPolicyMatchSourceSubnetPrefixIpv6:getPbrsV2RoutingPolicyPolicyPolicyMatchSourceSubnetPrefixIpv6"
          }
        }
      },
      "type": "object",
      "required": [
        "ipv4s",
        "ipv6s"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getPbrsV2RoutingPolicyPolicyPolicyMatchSourceSubnetPrefixIpv4:getPbrsV2RoutingPolicyPolicyPolicyMatchSourceSubnetPrefixIpv4": {
      "properties": {
        "ips": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetPbrsV2RoutingPolicyPolicyPolicyMatchSourceSubnetPrefixIpv4Ip:getPbrsV2RoutingPolicyPolicyPolicyMatchSourceSubnetPrefixIpv4Ip"
          },
          "description": "IP of address\n"
        },
        "prefixLength": {
          "type": "integer",
          "description": "The prefix length of the network to which this host IPv4/IPv6 address belongs.\n"
        }
      },
      "type": "object",
      "required": [
        "ips",
        "prefixLength"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getPbrsV2RoutingPolicyPolicyPolicyMatchSourceSubnetPrefixIpv4Ip:getPbrsV2RoutingPolicyPolicyPolicyMatchSourceSubnetPrefixIpv4Ip": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "The prefix length of the network to which this host IPv4/IPv6 address belongs.\n"
        },
        "value": {
          "type": "string",
          "description": "ip value\n"
        }
      },
      "type": "object",
      "required": [
        "prefixLength",
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getPbrsV2RoutingPolicyPolicyPolicyMatchSourceSubnetPrefixIpv6:getPbrsV2RoutingPolicyPolicyPolicyMatchSourceSubnetPrefixIpv6": {
      "properties": {
        "ips": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetPbrsV2RoutingPolicyPolicyPolicyMatchSourceSubnetPrefixIpv6Ip:getPbrsV2RoutingPolicyPolicyPolicyMatchSourceSubnetPrefixIpv6Ip"
          },
          "description": "IP of address\n"
        },
        "prefixLength": {
          "type": "integer",
          "description": "The prefix length of the network to which this host IPv4/IPv6 address belongs.\n"
        }
      },
      "type": "object",
      "required": [
        "ips",
        "prefixLength"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getPbrsV2RoutingPolicyPolicyPolicyMatchSourceSubnetPrefixIpv6Ip:getPbrsV2RoutingPolicyPolicyPolicyMatchSourceSubnetPrefixIpv6Ip": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "The prefix length of the network to which this host IPv4/IPv6 address belongs.\n"
        },
        "value": {
          "type": "string",
          "description": "ip value\n"
        }
      },
      "type": "object",
      "required": [
        "prefixLength",
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getPbrsV2RoutingPolicyVpc:getPbrsV2RoutingPolicyVpc": {
      "properties": {
        "name": {
          "type": "string",
          "description": "Name of the routing policy.\n"
        }
      },
      "type": "object",
      "required": [
        "name"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getPcBackupTargetV2Link:getPcBackupTargetV2Link": {
      "properties": {
        "href": {
          "type": "string"
        },
        "rel": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "href",
        "rel"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getPcBackupTargetV2Location:getPcBackupTargetV2Location": {
      "properties": {
        "clusterLocations": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetPcBackupTargetV2LocationClusterLocation:getPcBackupTargetV2LocationClusterLocation"
          },
          "description": "- A boolean value indicating whether to enable lockdown mode for a cluster.\n"
        },
        "objectStoreLocations": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetPcBackupTargetV2LocationObjectStoreLocation:getPcBackupTargetV2LocationObjectStoreLocation"
          },
          "description": "- Currently representing the build information to be used for the cluster creation.\n"
        }
      },
      "type": "object",
      "required": [
        "clusterLocations",
        "objectStoreLocations"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getPcBackupTargetV2LocationClusterLocation:getPcBackupTargetV2LocationClusterLocation": {
      "properties": {
        "configs": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetPcBackupTargetV2LocationClusterLocationConfig:getPcBackupTargetV2LocationClusterLocationConfig"
          },
          "description": "- Cluster reference of the remote cluster to be connected.\n"
        }
      },
      "type": "object",
      "required": [
        "configs"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getPcBackupTargetV2LocationClusterLocationConfig:getPcBackupTargetV2LocationClusterLocationConfig": {
      "properties": {
        "extId": {
          "type": "string",
          "description": "-(Required) A globally unique identifier of an instance that is suitable for external consumption.\n"
        },
        "name": {
          "type": "string",
          "description": "- Name of the cluster.\n"
        }
      },
      "type": "object",
      "required": [
        "extId",
        "name"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getPcBackupTargetV2LocationObjectStoreLocation:getPcBackupTargetV2LocationObjectStoreLocation": {
      "properties": {
        "backupPolicies": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetPcBackupTargetV2LocationObjectStoreLocationBackupPolicy:getPcBackupTargetV2LocationObjectStoreLocationBackupPolicy"
          },
          "description": "-(Optional) Backup policy for the object store provided.\n"
        },
        "providerConfigs": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetPcBackupTargetV2LocationObjectStoreLocationProviderConfig:getPcBackupTargetV2LocationObjectStoreLocationProviderConfig"
          },
          "description": "-(Required) The base model of S3 object store endpoint where domain manager is backed up.\n"
        }
      },
      "type": "object",
      "required": [
        "backupPolicies",
        "providerConfigs"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getPcBackupTargetV2LocationObjectStoreLocationBackupPolicy:getPcBackupTargetV2LocationObjectStoreLocationBackupPolicy": {
      "properties": {
        "rpoInMinutes": {
          "type": "integer",
          "description": "- RPO interval in minutes at which the backup will be taken. The Value should be in the range of 60 to 1440.\n"
        }
      },
      "type": "object",
      "required": [
        "rpoInMinutes"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getPcBackupTargetV2LocationObjectStoreLocationProviderConfig:getPcBackupTargetV2LocationObjectStoreLocationProviderConfig": {
      "properties": {
        "bucketName": {
          "type": "string",
          "description": "- The bucket name of the object store endpoint where backup data of domain manager is to be stored.\n"
        },
        "credentials": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetPcBackupTargetV2LocationObjectStoreLocationProviderConfigCredential:getPcBackupTargetV2LocationObjectStoreLocationProviderConfigCredential"
          },
          "description": "- Secret credentials model for the object store containing access key ID and secret access key.\n"
        },
        "region": {
          "type": "string",
          "description": "- The region name of the object store endpoint where backup data of domain manager is stored. Default is `us-east-1`.\n"
        }
      },
      "type": "object",
      "required": [
        "bucketName",
        "credentials",
        "region"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getPcBackupTargetV2LocationObjectStoreLocationProviderConfigCredential:getPcBackupTargetV2LocationObjectStoreLocationProviderConfigCredential": {
      "properties": {
        "accessKeyId": {
          "type": "string",
          "description": "- Access key ID for the object store provided for backup target.\n"
        },
        "secretAccessKey": {
          "type": "string",
          "description": "- Secret access key for the object store provided for backup target.\n"
        }
      },
      "type": "object",
      "required": [
        "accessKeyId",
        "secretAccessKey"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getPcBackupTargetsV2BackupTarget:getPcBackupTargetsV2BackupTarget": {
      "properties": {
        "backupPauseReason": {
          "type": "string"
        },
        "extId": {
          "type": "string"
        },
        "isBackupPaused": {
          "type": "boolean"
        },
        "lastSyncTime": {
          "type": "string"
        },
        "links": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetPcBackupTargetsV2BackupTargetLink:getPcBackupTargetsV2BackupTargetLink"
          }
        },
        "locations": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetPcBackupTargetsV2BackupTargetLocation:getPcBackupTargetsV2BackupTargetLocation"
          }
        },
        "tenantId": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "backupPauseReason",
        "extId",
        "isBackupPaused",
        "lastSyncTime",
        "links",
        "locations",
        "tenantId"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getPcBackupTargetsV2BackupTargetLink:getPcBackupTargetsV2BackupTargetLink": {
      "properties": {
        "href": {
          "type": "string"
        },
        "rel": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "href",
        "rel"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getPcBackupTargetsV2BackupTargetLocation:getPcBackupTargetsV2BackupTargetLocation": {
      "properties": {
        "clusterLocations": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetPcBackupTargetsV2BackupTargetLocationClusterLocation:getPcBackupTargetsV2BackupTargetLocationClusterLocation"
          }
        },
        "objectStoreLocations": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetPcBackupTargetsV2BackupTargetLocationObjectStoreLocation:getPcBackupTargetsV2BackupTargetLocationObjectStoreLocation"
          }
        }
      },
      "type": "object",
      "required": [
        "clusterLocations",
        "objectStoreLocations"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getPcBackupTargetsV2BackupTargetLocationClusterLocation:getPcBackupTargetsV2BackupTargetLocationClusterLocation": {
      "properties": {
        "configs": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetPcBackupTargetsV2BackupTargetLocationClusterLocationConfig:getPcBackupTargetsV2BackupTargetLocationClusterLocationConfig"
          }
        }
      },
      "type": "object",
      "required": [
        "configs"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getPcBackupTargetsV2BackupTargetLocationClusterLocationConfig:getPcBackupTargetsV2BackupTargetLocationClusterLocationConfig": {
      "properties": {
        "extId": {
          "type": "string"
        },
        "name": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "extId",
        "name"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getPcBackupTargetsV2BackupTargetLocationObjectStoreLocation:getPcBackupTargetsV2BackupTargetLocationObjectStoreLocation": {
      "properties": {
        "backupPolicies": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetPcBackupTargetsV2BackupTargetLocationObjectStoreLocationBackupPolicy:getPcBackupTargetsV2BackupTargetLocationObjectStoreLocationBackupPolicy"
          }
        },
        "providerConfigs": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetPcBackupTargetsV2BackupTargetLocationObjectStoreLocationProviderConfig:getPcBackupTargetsV2BackupTargetLocationObjectStoreLocationProviderConfig"
          }
        }
      },
      "type": "object",
      "required": [
        "backupPolicies",
        "providerConfigs"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getPcBackupTargetsV2BackupTargetLocationObjectStoreLocationBackupPolicy:getPcBackupTargetsV2BackupTargetLocationObjectStoreLocationBackupPolicy": {
      "properties": {
        "rpoInMinutes": {
          "type": "integer"
        }
      },
      "type": "object",
      "required": [
        "rpoInMinutes"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getPcBackupTargetsV2BackupTargetLocationObjectStoreLocationProviderConfig:getPcBackupTargetsV2BackupTargetLocationObjectStoreLocationProviderConfig": {
      "properties": {
        "bucketName": {
          "type": "string"
        },
        "credentials": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetPcBackupTargetsV2BackupTargetLocationObjectStoreLocationProviderConfigCredential:getPcBackupTargetsV2BackupTargetLocationObjectStoreLocationProviderConfigCredential"
          }
        },
        "region": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "bucketName",
        "credentials",
        "region"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getPcBackupTargetsV2BackupTargetLocationObjectStoreLocationProviderConfigCredential:getPcBackupTargetsV2BackupTargetLocationObjectStoreLocationProviderConfigCredential": {
      "properties": {
        "accessKeyId": {
          "type": "string"
        },
        "secretAccessKey": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "accessKeyId",
        "secretAccessKey"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getPcRestorePointV2DomainManager:getPcRestorePointV2DomainManager": {
      "properties": {
        "configs": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetPcRestorePointV2DomainManagerConfig:getPcRestorePointV2DomainManagerConfig"
          },
          "description": "- Domain manager (Prism Central) cluster configuration details.\n"
        },
        "extId": {
          "type": "string",
          "description": "Restore point ID for the backup created in cluster/object store.\n"
        },
        "hostingClusterExtId": {
          "type": "string",
          "description": "- The external identifier of the cluster hosting the domain manager (Prism Central) instance.\n"
        },
        "isRegisteredWithHostingCluster": {
          "type": "boolean",
          "description": "- Boolean value indicating if the domain manager (Prism Central) is registered with the hosting cluster, that is, Prism Element.\n"
        },
        "networks": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetPcRestorePointV2DomainManagerNetwork:getPcRestorePointV2DomainManagerNetwork"
          },
          "description": "- Domain manager (Prism Central) network configuration details.\n"
        },
        "nodeExtIds": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "- Domain manager (Prism Central) nodes external identifier.\n"
        },
        "shouldEnableHighAvailability": {
          "type": "boolean",
          "description": "- This configuration enables Prism Central to be deployed in scale-out mode.\n"
        },
        "tenantId": {
          "type": "string",
          "description": "- A globally unique identifier that represents the tenant that owns this entity. The system automatically assigns it, and it and is immutable from an API consumer perspective (some use cases may cause this Id to change - For instance, a use case may require the transfer of ownership of the entity, but these cases are handled automatically on the server).\n"
        }
      },
      "type": "object",
      "required": [
        "configs",
        "extId",
        "hostingClusterExtId",
        "isRegisteredWithHostingCluster",
        "networks",
        "nodeExtIds",
        "shouldEnableHighAvailability",
        "tenantId"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getPcRestorePointV2DomainManagerConfig:getPcRestorePointV2DomainManagerConfig": {
      "properties": {
        "bootstrapConfig": {
          "$ref": "#/types/nutanix:index%2FgetPcRestorePointV2DomainManagerConfigBootstrapConfig:getPcRestorePointV2DomainManagerConfigBootstrapConfig",
          "description": "- Bootstrap configuration details for the domain manager (Prism Central).\n"
        },
        "buildInfo": {
          "$ref": "#/types/nutanix:index%2FgetPcRestorePointV2DomainManagerConfigBuildInfo:getPcRestorePointV2DomainManagerConfigBuildInfo",
          "description": "-Currently representing the build information to be used for the cluster creation.\n"
        },
        "credentials": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetPcRestorePointV2DomainManagerConfigCredential:getPcRestorePointV2DomainManagerConfigCredential"
          }
        },
        "name": {
          "type": "string",
          "description": "- Name of the domain manager (Prism Central).\n"
        },
        "resourceConfigs": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetPcRestorePointV2DomainManagerConfigResourceConfig:getPcRestorePointV2DomainManagerConfigResourceConfig"
          },
          "description": "- This configuration is used to provide the resource-related details like container external identifiers, number of VCPUs, memory size, data disk size of the domain manager (Prism Central). In the case of a multi-node setup, the sum of resources like number of VCPUs, memory size and data disk size are provided.\n"
        },
        "shouldEnableLockdownMode": {
          "type": "boolean",
          "description": "- A boolean value indicating whether to enable lockdown mode for a cluster.\n"
        },
        "size": {
          "type": "string",
          "description": "- Domain manager (Prism Central) size is an enumeration of starter, small, large, or extra large starter values. possible values are:\n- `SMALL` : Domain manager (Prism Central) of size small.\n- `LARGE` : Domain manager (Prism Central) of size large.\n- `EXTRALARGE` : Domain manager (Prism Central) of size extra large.\n- `STARTER` : Domain manager (Prism Central) of size starter.\n"
        }
      },
      "type": "object",
      "required": [
        "bootstrapConfig",
        "buildInfo",
        "name",
        "resourceConfigs",
        "shouldEnableLockdownMode",
        "size"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getPcRestorePointV2DomainManagerConfigBootstrapConfig:getPcRestorePointV2DomainManagerConfigBootstrapConfig": {
      "properties": {
        "cloudInitConfigs": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetPcRestorePointV2DomainManagerConfigBootstrapConfigCloudInitConfig:getPcRestorePointV2DomainManagerConfigBootstrapConfigCloudInitConfig"
          }
        },
        "environmentInfo": {
          "$ref": "#/types/nutanix:index%2FgetPcRestorePointV2DomainManagerConfigBootstrapConfigEnvironmentInfo:getPcRestorePointV2DomainManagerConfigBootstrapConfigEnvironmentInfo",
          "description": "- Environment information for the domain manager (Prism Central) cluster.\n"
        }
      },
      "type": "object",
      "required": [
        "environmentInfo"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getPcRestorePointV2DomainManagerConfigBootstrapConfigCloudInitConfig:getPcRestorePointV2DomainManagerConfigBootstrapConfigCloudInitConfig": {
      "properties": {
        "cloudInitScripts": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetPcRestorePointV2DomainManagerConfigBootstrapConfigCloudInitConfigCloudInitScript:getPcRestorePointV2DomainManagerConfigBootstrapConfigCloudInitConfigCloudInitScript"
          }
        },
        "datasourceType": {
          "type": "string"
        },
        "metadata": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "cloudInitScripts",
        "metadata"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getPcRestorePointV2DomainManagerConfigBootstrapConfigCloudInitConfigCloudInitScript:getPcRestorePointV2DomainManagerConfigBootstrapConfigCloudInitConfigCloudInitScript": {
      "properties": {
        "customKeyValues": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetPcRestorePointV2DomainManagerConfigBootstrapConfigCloudInitConfigCloudInitScriptCustomKeyValue:getPcRestorePointV2DomainManagerConfigBootstrapConfigCloudInitConfigCloudInitScriptCustomKeyValue"
          }
        },
        "userDatas": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetPcRestorePointV2DomainManagerConfigBootstrapConfigCloudInitConfigCloudInitScriptUserData:getPcRestorePointV2DomainManagerConfigBootstrapConfigCloudInitConfigCloudInitScriptUserData"
          }
        }
      },
      "type": "object",
      "required": [
        "customKeyValues",
        "userDatas"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getPcRestorePointV2DomainManagerConfigBootstrapConfigCloudInitConfigCloudInitScriptCustomKeyValue:getPcRestorePointV2DomainManagerConfigBootstrapConfigCloudInitConfigCloudInitScriptCustomKeyValue": {
      "properties": {
        "keyValuePairs": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetPcRestorePointV2DomainManagerConfigBootstrapConfigCloudInitConfigCloudInitScriptCustomKeyValueKeyValuePair:getPcRestorePointV2DomainManagerConfigBootstrapConfigCloudInitConfigCloudInitScriptCustomKeyValueKeyValuePair"
          }
        }
      },
      "type": "object",
      "required": [
        "keyValuePairs"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getPcRestorePointV2DomainManagerConfigBootstrapConfigCloudInitConfigCloudInitScriptCustomKeyValueKeyValuePair:getPcRestorePointV2DomainManagerConfigBootstrapConfigCloudInitConfigCloudInitScriptCustomKeyValueKeyValuePair": {
      "properties": {
        "name": {
          "type": "string",
          "description": "- Name of the domain manager (Prism Central).\n"
        },
        "values": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetPcRestorePointV2DomainManagerConfigBootstrapConfigCloudInitConfigCloudInitScriptCustomKeyValueKeyValuePairValue:getPcRestorePointV2DomainManagerConfigBootstrapConfigCloudInitConfigCloudInitScriptCustomKeyValueKeyValuePairValue"
          },
          "description": "- The fully qualified domain name of the host.\n"
        }
      },
      "type": "object",
      "required": [
        "name",
        "values"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getPcRestorePointV2DomainManagerConfigBootstrapConfigCloudInitConfigCloudInitScriptCustomKeyValueKeyValuePairValue:getPcRestorePointV2DomainManagerConfigBootstrapConfigCloudInitConfigCloudInitScriptCustomKeyValueKeyValuePairValue": {
      "properties": {
        "boolean": {
          "type": "boolean"
        },
        "integer": {
          "type": "integer"
        },
        "integerLists": {
          "type": "array",
          "items": {
            "type": "integer"
          }
        },
        "mapOfStrings": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetPcRestorePointV2DomainManagerConfigBootstrapConfigCloudInitConfigCloudInitScriptCustomKeyValueKeyValuePairValueMapOfString:getPcRestorePointV2DomainManagerConfigBootstrapConfigCloudInitConfigCloudInitScriptCustomKeyValueKeyValuePairValueMapOfString"
          }
        },
        "object": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          }
        },
        "string": {
          "type": "string"
        },
        "stringLists": {
          "type": "array",
          "items": {
            "type": "string"
          }
        }
      },
      "type": "object",
      "required": [
        "boolean",
        "integer",
        "integerLists",
        "mapOfStrings",
        "object",
        "string",
        "stringLists"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getPcRestorePointV2DomainManagerConfigBootstrapConfigCloudInitConfigCloudInitScriptCustomKeyValueKeyValuePairValueMapOfString:getPcRestorePointV2DomainManagerConfigBootstrapConfigCloudInitConfigCloudInitScriptCustomKeyValueKeyValuePairValueMapOfString": {
      "properties": {
        "map": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          }
        }
      },
      "type": "object",
      "required": [
        "map"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getPcRestorePointV2DomainManagerConfigBootstrapConfigCloudInitConfigCloudInitScriptUserData:getPcRestorePointV2DomainManagerConfigBootstrapConfigCloudInitConfigCloudInitScriptUserData": {
      "properties": {
        "value": {
          "type": "string",
          "description": "- The fully qualified domain name of the host.\n"
        }
      },
      "type": "object",
      "required": [
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getPcRestorePointV2DomainManagerConfigBootstrapConfigEnvironmentInfo:getPcRestorePointV2DomainManagerConfigBootstrapConfigEnvironmentInfo": {
      "properties": {
        "providerType": {
          "type": "string",
          "description": "- Enums denoting the provider type of the PC, that is, AHV or ESXi.\nFollowing are the supported provider types:\n- `VSPHERE` : Vsphere cloud provider.\n- `AZURE` : Azure cloud provider.\n- `NTNX` : Nutanix cloud provider.\n- `GCP` : GCP cloud provider.\n- `AWS` : AWS cloud provider.\n"
        },
        "provisioningType": {
          "type": "string",
          "description": "- Enums denoting the instance type of the cloud PC. It indicates whether the PC is created on bare-metal or on a cloud-provisioned VM. Hence, it supports two possible values:\n- `NTNX` : Nutanix instance.\n- `NATIVE` : Native instance.\n"
        },
        "type": {
          "type": "string",
          "description": "- Enums denoting the environment type of the PC, that is, on-prem PC or cloud PC.\nFollowing are the supported entity types:\n- `ONPREM` : On-prem environment.\n- `NTNX_CLOUD` : Nutanix cloud environment.\n"
        }
      },
      "type": "object",
      "required": [
        "providerType",
        "provisioningType",
        "type"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getPcRestorePointV2DomainManagerConfigBuildInfo:getPcRestorePointV2DomainManagerConfigBuildInfo": {
      "properties": {
        "version": {
          "type": "string",
          "description": "- Software version.\n"
        }
      },
      "type": "object",
      "required": [
        "version"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getPcRestorePointV2DomainManagerConfigCredential:getPcRestorePointV2DomainManagerConfigCredential": {
      "properties": {
        "password": {
          "type": "string",
          "secret": true
        },
        "username": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "password",
        "username"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getPcRestorePointV2DomainManagerConfigResourceConfig:getPcRestorePointV2DomainManagerConfigResourceConfig": {
      "properties": {
        "containerExtIds": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "- The external identifier of the container that will be used to create the domain manager (Prism Central) cluster.\n"
        },
        "dataDiskSizeBytes": {
          "type": "integer",
          "description": "- This property is used for readOnly purposes to display Prism Central data disk size allocation at a cluster level.\n"
        },
        "memorySizeBytes": {
          "type": "integer",
          "description": "- This property is used for readOnly purposes to display Prism Central RAM allocation at the cluster level.\n"
        },
        "numVcpus": {
          "type": "integer",
          "description": "- This property is used for readOnly purposes to display Prism Central number of VCPUs allocation.\n"
        }
      },
      "type": "object",
      "required": [
        "containerExtIds",
        "dataDiskSizeBytes",
        "memorySizeBytes",
        "numVcpus"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getPcRestorePointV2DomainManagerNetwork:getPcRestorePointV2DomainManagerNetwork": {
      "properties": {
        "externalAddress": {
          "$ref": "#/types/nutanix:index%2FgetPcRestorePointV2DomainManagerNetworkExternalAddress:getPcRestorePointV2DomainManagerNetworkExternalAddress",
          "description": "- An unique address that identifies a device on the internet or a local network in IPv4 or IPv6 format.\n"
        },
        "externalNetworks": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetPcRestorePointV2DomainManagerNetworkExternalNetwork:getPcRestorePointV2DomainManagerNetworkExternalNetwork"
          },
          "description": "- This configuration is used to manage Prism Central.\n"
        },
        "fqdn": {
          "type": "string",
          "description": "- A fully qualified domain name that specifies its exact location in the tree hierarchy of the Domain Name System.\n"
        },
        "internalNetworks": {
          "$ref": "#/types/nutanix:index%2FgetPcRestorePointV2DomainManagerNetworkInternalNetworks:getPcRestorePointV2DomainManagerNetworkInternalNetworks"
        },
        "nameServers": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetPcRestorePointV2DomainManagerNetworkNameServer:getPcRestorePointV2DomainManagerNetworkNameServer"
          },
          "description": "- List of name servers on a cluster. This is part of payload for both cluster create & update operations. For create operation, only ipv4 address / fqdn values are supported currently.\n"
        },
        "ntpServers": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetPcRestorePointV2DomainManagerNetworkNtpServer:getPcRestorePointV2DomainManagerNetworkNtpServer"
          },
          "description": "- List of NTP servers on a cluster. This is part of payload for both cluster create & update operations. For create operation, only ipv4 address / fqdn values are supported currently.\n"
        }
      },
      "type": "object",
      "required": [
        "externalNetworks",
        "fqdn",
        "internalNetworks",
        "nameServers",
        "ntpServers"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getPcRestorePointV2DomainManagerNetworkExternalAddress:getPcRestorePointV2DomainManagerNetworkExternalAddress": {
      "properties": {
        "ipv4s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetPcRestorePointV2DomainManagerNetworkExternalAddressIpv4:getPcRestorePointV2DomainManagerNetworkExternalAddressIpv4"
          },
          "description": "- An unique address that identifies a device on the internet or a local network in IPv4 format.\n"
        },
        "ipv6s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetPcRestorePointV2DomainManagerNetworkExternalAddressIpv6:getPcRestorePointV2DomainManagerNetworkExternalAddressIpv6"
          },
          "description": "- An unique address that identifies a device on the internet or a local network in IPv6 format.\n"
        }
      },
      "type": "object",
      "required": [
        "ipv4s",
        "ipv6s"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getPcRestorePointV2DomainManagerNetworkExternalAddressIpv4:getPcRestorePointV2DomainManagerNetworkExternalAddressIpv4": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "- The prefix length of the network to which this host IPv4/IPv6 address belongs.\n"
        },
        "value": {
          "type": "string",
          "description": "- The fully qualified domain name of the host.\n"
        }
      },
      "type": "object",
      "required": [
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getPcRestorePointV2DomainManagerNetworkExternalAddressIpv6:getPcRestorePointV2DomainManagerNetworkExternalAddressIpv6": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "- The prefix length of the network to which this host IPv4/IPv6 address belongs.\n"
        },
        "value": {
          "type": "string",
          "description": "- The fully qualified domain name of the host.\n"
        }
      },
      "type": "object",
      "required": [
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getPcRestorePointV2DomainManagerNetworkExternalNetwork:getPcRestorePointV2DomainManagerNetworkExternalNetwork": {
      "properties": {
        "defaultGateway": {
          "$ref": "#/types/nutanix:index%2FgetPcRestorePointV2DomainManagerNetworkExternalNetworkDefaultGateway:getPcRestorePointV2DomainManagerNetworkExternalNetworkDefaultGateway",
          "description": "- An unique address that identifies a device on the internet or a local network in IPv4/IPv6 format or a Fully Qualified Domain Name.\n"
        },
        "ipRanges": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetPcRestorePointV2DomainManagerNetworkExternalNetworkIpRange:getPcRestorePointV2DomainManagerNetworkExternalNetworkIpRange"
          },
          "description": "- Range of IPs used for Prism Central network setup.\n"
        },
        "networkExtId": {
          "type": "string",
          "description": "- The network external identifier to which Domain Manager (Prism Central) is to be deployed or is already configured.\n"
        },
        "subnetMask": {
          "$ref": "#/types/nutanix:index%2FgetPcRestorePointV2DomainManagerNetworkExternalNetworkSubnetMask:getPcRestorePointV2DomainManagerNetworkExternalNetworkSubnetMask",
          "description": "- An unique address that identifies a device on the internet or a local network in IPv4/IPv6 format or a Fully Qualified Domain Name.\n"
        }
      },
      "type": "object",
      "required": [
        "defaultGateway",
        "ipRanges",
        "networkExtId",
        "subnetMask"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getPcRestorePointV2DomainManagerNetworkExternalNetworkDefaultGateway:getPcRestorePointV2DomainManagerNetworkExternalNetworkDefaultGateway": {
      "properties": {
        "fqdns": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetPcRestorePointV2DomainManagerNetworkExternalNetworkDefaultGatewayFqdn:getPcRestorePointV2DomainManagerNetworkExternalNetworkDefaultGatewayFqdn"
          },
          "description": "- A fully qualified domain name that specifies its exact location in the tree hierarchy of the Domain Name System.\n"
        },
        "ipv4s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetPcRestorePointV2DomainManagerNetworkExternalNetworkDefaultGatewayIpv4:getPcRestorePointV2DomainManagerNetworkExternalNetworkDefaultGatewayIpv4"
          },
          "description": "- An unique address that identifies a device on the internet or a local network in IPv4 format.\n"
        },
        "ipv6s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetPcRestorePointV2DomainManagerNetworkExternalNetworkDefaultGatewayIpv6:getPcRestorePointV2DomainManagerNetworkExternalNetworkDefaultGatewayIpv6"
          },
          "description": "- An unique address that identifies a device on the internet or a local network in IPv6 format.\n"
        }
      },
      "type": "object",
      "required": [
        "fqdns",
        "ipv4s",
        "ipv6s"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getPcRestorePointV2DomainManagerNetworkExternalNetworkDefaultGatewayFqdn:getPcRestorePointV2DomainManagerNetworkExternalNetworkDefaultGatewayFqdn": {
      "properties": {
        "value": {
          "type": "string",
          "description": "- The fully qualified domain name of the host.\n"
        }
      },
      "type": "object",
      "required": [
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getPcRestorePointV2DomainManagerNetworkExternalNetworkDefaultGatewayIpv4:getPcRestorePointV2DomainManagerNetworkExternalNetworkDefaultGatewayIpv4": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "- The prefix length of the network to which this host IPv4/IPv6 address belongs.\n"
        },
        "value": {
          "type": "string",
          "description": "- The fully qualified domain name of the host.\n"
        }
      },
      "type": "object",
      "required": [
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getPcRestorePointV2DomainManagerNetworkExternalNetworkDefaultGatewayIpv6:getPcRestorePointV2DomainManagerNetworkExternalNetworkDefaultGatewayIpv6": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "- The prefix length of the network to which this host IPv4/IPv6 address belongs.\n"
        },
        "value": {
          "type": "string",
          "description": "- The fully qualified domain name of the host.\n"
        }
      },
      "type": "object",
      "required": [
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getPcRestorePointV2DomainManagerNetworkExternalNetworkIpRange:getPcRestorePointV2DomainManagerNetworkExternalNetworkIpRange": {
      "properties": {
        "begin": {
          "$ref": "#/types/nutanix:index%2FgetPcRestorePointV2DomainManagerNetworkExternalNetworkIpRangeBegin:getPcRestorePointV2DomainManagerNetworkExternalNetworkIpRangeBegin",
          "description": "- The beginning IP address of the range.\n"
        },
        "end": {
          "$ref": "#/types/nutanix:index%2FgetPcRestorePointV2DomainManagerNetworkExternalNetworkIpRangeEnd:getPcRestorePointV2DomainManagerNetworkExternalNetworkIpRangeEnd",
          "description": "- The ending IP address of the range.\n"
        }
      },
      "type": "object",
      "required": [
        "begin",
        "end"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getPcRestorePointV2DomainManagerNetworkExternalNetworkIpRangeBegin:getPcRestorePointV2DomainManagerNetworkExternalNetworkIpRangeBegin": {
      "properties": {
        "ipv4s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetPcRestorePointV2DomainManagerNetworkExternalNetworkIpRangeBeginIpv4:getPcRestorePointV2DomainManagerNetworkExternalNetworkIpRangeBeginIpv4"
          },
          "description": "- An unique address that identifies a device on the internet or a local network in IPv4 format.\n"
        },
        "ipv6s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetPcRestorePointV2DomainManagerNetworkExternalNetworkIpRangeBeginIpv6:getPcRestorePointV2DomainManagerNetworkExternalNetworkIpRangeBeginIpv6"
          },
          "description": "- An unique address that identifies a device on the internet or a local network in IPv6 format.\n"
        }
      },
      "type": "object",
      "required": [
        "ipv4s",
        "ipv6s"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getPcRestorePointV2DomainManagerNetworkExternalNetworkIpRangeBeginIpv4:getPcRestorePointV2DomainManagerNetworkExternalNetworkIpRangeBeginIpv4": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "- The prefix length of the network to which this host IPv4/IPv6 address belongs.\n"
        },
        "value": {
          "type": "string",
          "description": "- The fully qualified domain name of the host.\n"
        }
      },
      "type": "object",
      "required": [
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getPcRestorePointV2DomainManagerNetworkExternalNetworkIpRangeBeginIpv6:getPcRestorePointV2DomainManagerNetworkExternalNetworkIpRangeBeginIpv6": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "- The prefix length of the network to which this host IPv4/IPv6 address belongs.\n"
        },
        "value": {
          "type": "string",
          "description": "- The fully qualified domain name of the host.\n"
        }
      },
      "type": "object",
      "required": [
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getPcRestorePointV2DomainManagerNetworkExternalNetworkIpRangeEnd:getPcRestorePointV2DomainManagerNetworkExternalNetworkIpRangeEnd": {
      "properties": {
        "ipv4s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetPcRestorePointV2DomainManagerNetworkExternalNetworkIpRangeEndIpv4:getPcRestorePointV2DomainManagerNetworkExternalNetworkIpRangeEndIpv4"
          },
          "description": "- An unique address that identifies a device on the internet or a local network in IPv4 format.\n"
        },
        "ipv6s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetPcRestorePointV2DomainManagerNetworkExternalNetworkIpRangeEndIpv6:getPcRestorePointV2DomainManagerNetworkExternalNetworkIpRangeEndIpv6"
          },
          "description": "- An unique address that identifies a device on the internet or a local network in IPv6 format.\n"
        }
      },
      "type": "object",
      "required": [
        "ipv4s",
        "ipv6s"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getPcRestorePointV2DomainManagerNetworkExternalNetworkIpRangeEndIpv4:getPcRestorePointV2DomainManagerNetworkExternalNetworkIpRangeEndIpv4": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "- The prefix length of the network to which this host IPv4/IPv6 address belongs.\n"
        },
        "value": {
          "type": "string",
          "description": "- The fully qualified domain name of the host.\n"
        }
      },
      "type": "object",
      "required": [
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getPcRestorePointV2DomainManagerNetworkExternalNetworkIpRangeEndIpv6:getPcRestorePointV2DomainManagerNetworkExternalNetworkIpRangeEndIpv6": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "- The prefix length of the network to which this host IPv4/IPv6 address belongs.\n"
        },
        "value": {
          "type": "string",
          "description": "- The fully qualified domain name of the host.\n"
        }
      },
      "type": "object",
      "required": [
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getPcRestorePointV2DomainManagerNetworkExternalNetworkSubnetMask:getPcRestorePointV2DomainManagerNetworkExternalNetworkSubnetMask": {
      "properties": {
        "fqdns": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetPcRestorePointV2DomainManagerNetworkExternalNetworkSubnetMaskFqdn:getPcRestorePointV2DomainManagerNetworkExternalNetworkSubnetMaskFqdn"
          },
          "description": "- A fully qualified domain name that specifies its exact location in the tree hierarchy of the Domain Name System.\n"
        },
        "ipv4s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetPcRestorePointV2DomainManagerNetworkExternalNetworkSubnetMaskIpv4:getPcRestorePointV2DomainManagerNetworkExternalNetworkSubnetMaskIpv4"
          },
          "description": "- An unique address that identifies a device on the internet or a local network in IPv4 format.\n"
        },
        "ipv6s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetPcRestorePointV2DomainManagerNetworkExternalNetworkSubnetMaskIpv6:getPcRestorePointV2DomainManagerNetworkExternalNetworkSubnetMaskIpv6"
          },
          "description": "- An unique address that identifies a device on the internet or a local network in IPv6 format.\n"
        }
      },
      "type": "object",
      "required": [
        "fqdns",
        "ipv4s",
        "ipv6s"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getPcRestorePointV2DomainManagerNetworkExternalNetworkSubnetMaskFqdn:getPcRestorePointV2DomainManagerNetworkExternalNetworkSubnetMaskFqdn": {
      "properties": {
        "value": {
          "type": "string",
          "description": "- The fully qualified domain name of the host.\n"
        }
      },
      "type": "object",
      "required": [
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getPcRestorePointV2DomainManagerNetworkExternalNetworkSubnetMaskIpv4:getPcRestorePointV2DomainManagerNetworkExternalNetworkSubnetMaskIpv4": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "- The prefix length of the network to which this host IPv4/IPv6 address belongs.\n"
        },
        "value": {
          "type": "string",
          "description": "- The fully qualified domain name of the host.\n"
        }
      },
      "type": "object",
      "required": [
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getPcRestorePointV2DomainManagerNetworkExternalNetworkSubnetMaskIpv6:getPcRestorePointV2DomainManagerNetworkExternalNetworkSubnetMaskIpv6": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "- The prefix length of the network to which this host IPv4/IPv6 address belongs.\n"
        },
        "value": {
          "type": "string",
          "description": "- The fully qualified domain name of the host.\n"
        }
      },
      "type": "object",
      "required": [
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getPcRestorePointV2DomainManagerNetworkInternalNetworks:getPcRestorePointV2DomainManagerNetworkInternalNetworks": {
      "properties": {
        "defaultGateway": {
          "$ref": "#/types/nutanix:index%2FgetPcRestorePointV2DomainManagerNetworkInternalNetworksDefaultGateway:getPcRestorePointV2DomainManagerNetworkInternalNetworksDefaultGateway",
          "description": "- An unique address that identifies a device on the internet or a local network in IPv4/IPv6 format or a Fully Qualified Domain Name.\n"
        },
        "ipRanges": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetPcRestorePointV2DomainManagerNetworkInternalNetworksIpRange:getPcRestorePointV2DomainManagerNetworkInternalNetworksIpRange"
          },
          "description": "- Range of IPs used for Prism Central network setup.\n"
        },
        "subnetMask": {
          "$ref": "#/types/nutanix:index%2FgetPcRestorePointV2DomainManagerNetworkInternalNetworksSubnetMask:getPcRestorePointV2DomainManagerNetworkInternalNetworksSubnetMask",
          "description": "- An unique address that identifies a device on the internet or a local network in IPv4/IPv6 format or a Fully Qualified Domain Name.\n"
        }
      },
      "type": "object",
      "required": [
        "defaultGateway",
        "ipRanges",
        "subnetMask"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getPcRestorePointV2DomainManagerNetworkInternalNetworksDefaultGateway:getPcRestorePointV2DomainManagerNetworkInternalNetworksDefaultGateway": {
      "properties": {
        "fqdns": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetPcRestorePointV2DomainManagerNetworkInternalNetworksDefaultGatewayFqdn:getPcRestorePointV2DomainManagerNetworkInternalNetworksDefaultGatewayFqdn"
          },
          "description": "- A fully qualified domain name that specifies its exact location in the tree hierarchy of the Domain Name System.\n"
        },
        "ipv4s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetPcRestorePointV2DomainManagerNetworkInternalNetworksDefaultGatewayIpv4:getPcRestorePointV2DomainManagerNetworkInternalNetworksDefaultGatewayIpv4"
          },
          "description": "- An unique address that identifies a device on the internet or a local network in IPv4 format.\n"
        },
        "ipv6s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetPcRestorePointV2DomainManagerNetworkInternalNetworksDefaultGatewayIpv6:getPcRestorePointV2DomainManagerNetworkInternalNetworksDefaultGatewayIpv6"
          },
          "description": "- An unique address that identifies a device on the internet or a local network in IPv6 format.\n"
        }
      },
      "type": "object",
      "required": [
        "fqdns",
        "ipv4s",
        "ipv6s"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getPcRestorePointV2DomainManagerNetworkInternalNetworksDefaultGatewayFqdn:getPcRestorePointV2DomainManagerNetworkInternalNetworksDefaultGatewayFqdn": {
      "properties": {
        "value": {
          "type": "string",
          "description": "- The fully qualified domain name of the host.\n"
        }
      },
      "type": "object",
      "required": [
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getPcRestorePointV2DomainManagerNetworkInternalNetworksDefaultGatewayIpv4:getPcRestorePointV2DomainManagerNetworkInternalNetworksDefaultGatewayIpv4": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "- The prefix length of the network to which this host IPv4/IPv6 address belongs.\n"
        },
        "value": {
          "type": "string",
          "description": "- The fully qualified domain name of the host.\n"
        }
      },
      "type": "object",
      "required": [
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getPcRestorePointV2DomainManagerNetworkInternalNetworksDefaultGatewayIpv6:getPcRestorePointV2DomainManagerNetworkInternalNetworksDefaultGatewayIpv6": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "- The prefix length of the network to which this host IPv4/IPv6 address belongs.\n"
        },
        "value": {
          "type": "string",
          "description": "- The fully qualified domain name of the host.\n"
        }
      },
      "type": "object",
      "required": [
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getPcRestorePointV2DomainManagerNetworkInternalNetworksIpRange:getPcRestorePointV2DomainManagerNetworkInternalNetworksIpRange": {
      "properties": {
        "begin": {
          "$ref": "#/types/nutanix:index%2FgetPcRestorePointV2DomainManagerNetworkInternalNetworksIpRangeBegin:getPcRestorePointV2DomainManagerNetworkInternalNetworksIpRangeBegin",
          "description": "- The beginning IP address of the range.\n"
        },
        "end": {
          "$ref": "#/types/nutanix:index%2FgetPcRestorePointV2DomainManagerNetworkInternalNetworksIpRangeEnd:getPcRestorePointV2DomainManagerNetworkInternalNetworksIpRangeEnd",
          "description": "- The ending IP address of the range.\n"
        }
      },
      "type": "object",
      "required": [
        "begin",
        "end"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getPcRestorePointV2DomainManagerNetworkInternalNetworksIpRangeBegin:getPcRestorePointV2DomainManagerNetworkInternalNetworksIpRangeBegin": {
      "properties": {
        "ipv4s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetPcRestorePointV2DomainManagerNetworkInternalNetworksIpRangeBeginIpv4:getPcRestorePointV2DomainManagerNetworkInternalNetworksIpRangeBeginIpv4"
          },
          "description": "- An unique address that identifies a device on the internet or a local network in IPv4 format.\n"
        },
        "ipv6s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetPcRestorePointV2DomainManagerNetworkInternalNetworksIpRangeBeginIpv6:getPcRestorePointV2DomainManagerNetworkInternalNetworksIpRangeBeginIpv6"
          },
          "description": "- An unique address that identifies a device on the internet or a local network in IPv6 format.\n"
        }
      },
      "type": "object",
      "required": [
        "ipv4s",
        "ipv6s"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getPcRestorePointV2DomainManagerNetworkInternalNetworksIpRangeBeginIpv4:getPcRestorePointV2DomainManagerNetworkInternalNetworksIpRangeBeginIpv4": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "- The prefix length of the network to which this host IPv4/IPv6 address belongs.\n"
        },
        "value": {
          "type": "string",
          "description": "- The fully qualified domain name of the host.\n"
        }
      },
      "type": "object",
      "required": [
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getPcRestorePointV2DomainManagerNetworkInternalNetworksIpRangeBeginIpv6:getPcRestorePointV2DomainManagerNetworkInternalNetworksIpRangeBeginIpv6": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "- The prefix length of the network to which this host IPv4/IPv6 address belongs.\n"
        },
        "value": {
          "type": "string",
          "description": "- The fully qualified domain name of the host.\n"
        }
      },
      "type": "object",
      "required": [
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getPcRestorePointV2DomainManagerNetworkInternalNetworksIpRangeEnd:getPcRestorePointV2DomainManagerNetworkInternalNetworksIpRangeEnd": {
      "properties": {
        "ipv4s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetPcRestorePointV2DomainManagerNetworkInternalNetworksIpRangeEndIpv4:getPcRestorePointV2DomainManagerNetworkInternalNetworksIpRangeEndIpv4"
          },
          "description": "- An unique address that identifies a device on the internet or a local network in IPv4 format.\n"
        },
        "ipv6s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetPcRestorePointV2DomainManagerNetworkInternalNetworksIpRangeEndIpv6:getPcRestorePointV2DomainManagerNetworkInternalNetworksIpRangeEndIpv6"
          },
          "description": "- An unique address that identifies a device on the internet or a local network in IPv6 format.\n"
        }
      },
      "type": "object",
      "required": [
        "ipv4s",
        "ipv6s"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getPcRestorePointV2DomainManagerNetworkInternalNetworksIpRangeEndIpv4:getPcRestorePointV2DomainManagerNetworkInternalNetworksIpRangeEndIpv4": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "- The prefix length of the network to which this host IPv4/IPv6 address belongs.\n"
        },
        "value": {
          "type": "string",
          "description": "- The fully qualified domain name of the host.\n"
        }
      },
      "type": "object",
      "required": [
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getPcRestorePointV2DomainManagerNetworkInternalNetworksIpRangeEndIpv6:getPcRestorePointV2DomainManagerNetworkInternalNetworksIpRangeEndIpv6": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "- The prefix length of the network to which this host IPv4/IPv6 address belongs.\n"
        },
        "value": {
          "type": "string",
          "description": "- The fully qualified domain name of the host.\n"
        }
      },
      "type": "object",
      "required": [
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getPcRestorePointV2DomainManagerNetworkInternalNetworksSubnetMask:getPcRestorePointV2DomainManagerNetworkInternalNetworksSubnetMask": {
      "properties": {
        "fqdns": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetPcRestorePointV2DomainManagerNetworkInternalNetworksSubnetMaskFqdn:getPcRestorePointV2DomainManagerNetworkInternalNetworksSubnetMaskFqdn"
          },
          "description": "- A fully qualified domain name that specifies its exact location in the tree hierarchy of the Domain Name System.\n"
        },
        "ipv4s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetPcRestorePointV2DomainManagerNetworkInternalNetworksSubnetMaskIpv4:getPcRestorePointV2DomainManagerNetworkInternalNetworksSubnetMaskIpv4"
          },
          "description": "- An unique address that identifies a device on the internet or a local network in IPv4 format.\n"
        },
        "ipv6s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetPcRestorePointV2DomainManagerNetworkInternalNetworksSubnetMaskIpv6:getPcRestorePointV2DomainManagerNetworkInternalNetworksSubnetMaskIpv6"
          },
          "description": "- An unique address that identifies a device on the internet or a local network in IPv6 format.\n"
        }
      },
      "type": "object",
      "required": [
        "fqdns",
        "ipv4s",
        "ipv6s"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getPcRestorePointV2DomainManagerNetworkInternalNetworksSubnetMaskFqdn:getPcRestorePointV2DomainManagerNetworkInternalNetworksSubnetMaskFqdn": {
      "properties": {
        "value": {
          "type": "string",
          "description": "- The fully qualified domain name of the host.\n"
        }
      },
      "type": "object",
      "required": [
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getPcRestorePointV2DomainManagerNetworkInternalNetworksSubnetMaskIpv4:getPcRestorePointV2DomainManagerNetworkInternalNetworksSubnetMaskIpv4": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "- The prefix length of the network to which this host IPv4/IPv6 address belongs.\n"
        },
        "value": {
          "type": "string",
          "description": "- The fully qualified domain name of the host.\n"
        }
      },
      "type": "object",
      "required": [
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getPcRestorePointV2DomainManagerNetworkInternalNetworksSubnetMaskIpv6:getPcRestorePointV2DomainManagerNetworkInternalNetworksSubnetMaskIpv6": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "- The prefix length of the network to which this host IPv4/IPv6 address belongs.\n"
        },
        "value": {
          "type": "string",
          "description": "- The fully qualified domain name of the host.\n"
        }
      },
      "type": "object",
      "required": [
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getPcRestorePointV2DomainManagerNetworkNameServer:getPcRestorePointV2DomainManagerNetworkNameServer": {
      "properties": {
        "fqdns": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetPcRestorePointV2DomainManagerNetworkNameServerFqdn:getPcRestorePointV2DomainManagerNetworkNameServerFqdn"
          },
          "description": "- A fully qualified domain name that specifies its exact location in the tree hierarchy of the Domain Name System.\n"
        },
        "ipv4s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetPcRestorePointV2DomainManagerNetworkNameServerIpv4:getPcRestorePointV2DomainManagerNetworkNameServerIpv4"
          },
          "description": "- An unique address that identifies a device on the internet or a local network in IPv4 format.\n"
        },
        "ipv6s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetPcRestorePointV2DomainManagerNetworkNameServerIpv6:getPcRestorePointV2DomainManagerNetworkNameServerIpv6"
          },
          "description": "- An unique address that identifies a device on the internet or a local network in IPv6 format.\n"
        }
      },
      "type": "object",
      "required": [
        "fqdns",
        "ipv4s",
        "ipv6s"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getPcRestorePointV2DomainManagerNetworkNameServerFqdn:getPcRestorePointV2DomainManagerNetworkNameServerFqdn": {
      "properties": {
        "value": {
          "type": "string",
          "description": "- The fully qualified domain name of the host.\n"
        }
      },
      "type": "object",
      "required": [
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getPcRestorePointV2DomainManagerNetworkNameServerIpv4:getPcRestorePointV2DomainManagerNetworkNameServerIpv4": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "- The prefix length of the network to which this host IPv4/IPv6 address belongs.\n"
        },
        "value": {
          "type": "string",
          "description": "- The fully qualified domain name of the host.\n"
        }
      },
      "type": "object",
      "required": [
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getPcRestorePointV2DomainManagerNetworkNameServerIpv6:getPcRestorePointV2DomainManagerNetworkNameServerIpv6": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "- The prefix length of the network to which this host IPv4/IPv6 address belongs.\n"
        },
        "value": {
          "type": "string",
          "description": "- The fully qualified domain name of the host.\n"
        }
      },
      "type": "object",
      "required": [
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getPcRestorePointV2DomainManagerNetworkNtpServer:getPcRestorePointV2DomainManagerNetworkNtpServer": {
      "properties": {
        "fqdns": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetPcRestorePointV2DomainManagerNetworkNtpServerFqdn:getPcRestorePointV2DomainManagerNetworkNtpServerFqdn"
          },
          "description": "- A fully qualified domain name that specifies its exact location in the tree hierarchy of the Domain Name System.\n"
        },
        "ipv4s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetPcRestorePointV2DomainManagerNetworkNtpServerIpv4:getPcRestorePointV2DomainManagerNetworkNtpServerIpv4"
          },
          "description": "- An unique address that identifies a device on the internet or a local network in IPv4 format.\n"
        },
        "ipv6s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetPcRestorePointV2DomainManagerNetworkNtpServerIpv6:getPcRestorePointV2DomainManagerNetworkNtpServerIpv6"
          },
          "description": "- An unique address that identifies a device on the internet or a local network in IPv6 format.\n"
        }
      },
      "type": "object",
      "required": [
        "fqdns",
        "ipv4s",
        "ipv6s"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getPcRestorePointV2DomainManagerNetworkNtpServerFqdn:getPcRestorePointV2DomainManagerNetworkNtpServerFqdn": {
      "properties": {
        "value": {
          "type": "string",
          "description": "- The fully qualified domain name of the host.\n"
        }
      },
      "type": "object",
      "required": [
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getPcRestorePointV2DomainManagerNetworkNtpServerIpv4:getPcRestorePointV2DomainManagerNetworkNtpServerIpv4": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "- The prefix length of the network to which this host IPv4/IPv6 address belongs.\n"
        },
        "value": {
          "type": "string",
          "description": "- The fully qualified domain name of the host.\n"
        }
      },
      "type": "object",
      "required": [
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getPcRestorePointV2DomainManagerNetworkNtpServerIpv6:getPcRestorePointV2DomainManagerNetworkNtpServerIpv6": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "- The prefix length of the network to which this host IPv4/IPv6 address belongs.\n"
        },
        "value": {
          "type": "string",
          "description": "- The fully qualified domain name of the host.\n"
        }
      },
      "type": "object",
      "required": [
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getPcRestorePointV2Link:getPcRestorePointV2Link": {
      "properties": {
        "href": {
          "type": "string",
          "description": "- The URL at which the entity described by the link can be accessed.\n"
        },
        "rel": {
          "type": "string",
          "description": "- A name that identifies the relationship of the link to the object that is returned by the URL. The unique value of \"self\" identifies the URL for the object.\n"
        }
      },
      "type": "object",
      "required": [
        "href",
        "rel"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getPcRestorePointsV2RestorePoint:getPcRestorePointsV2RestorePoint": {
      "properties": {
        "creationTime": {
          "type": "string"
        },
        "domainManagers": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetPcRestorePointsV2RestorePointDomainManager:getPcRestorePointsV2RestorePointDomainManager"
          }
        },
        "extId": {
          "type": "string"
        },
        "links": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetPcRestorePointsV2RestorePointLink:getPcRestorePointsV2RestorePointLink"
          },
          "description": "- `tenantId`\n"
        },
        "restorableDomainManagerExtId": {
          "type": "string",
          "description": "A unique identifier for the domain manager.\n"
        },
        "restoreSourceExtId": {
          "type": "string",
          "description": "A unique identifier obtained from the restore source API that corresponds to the details provided for the restore source.\n"
        },
        "tenantId": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "creationTime",
        "domainManagers",
        "extId",
        "links",
        "restorableDomainManagerExtId",
        "restoreSourceExtId",
        "tenantId"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getPcRestorePointsV2RestorePointDomainManager:getPcRestorePointsV2RestorePointDomainManager": {
      "properties": {
        "configs": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetPcRestorePointsV2RestorePointDomainManagerConfig:getPcRestorePointsV2RestorePointDomainManagerConfig"
          }
        },
        "extId": {
          "type": "string"
        },
        "hostingClusterExtId": {
          "type": "string"
        },
        "isRegisteredWithHostingCluster": {
          "type": "boolean"
        },
        "networks": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetPcRestorePointsV2RestorePointDomainManagerNetwork:getPcRestorePointsV2RestorePointDomainManagerNetwork"
          }
        },
        "nodeExtIds": {
          "type": "array",
          "items": {
            "type": "string"
          }
        },
        "shouldEnableHighAvailability": {
          "type": "boolean"
        },
        "tenantId": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "configs",
        "extId",
        "hostingClusterExtId",
        "isRegisteredWithHostingCluster",
        "networks",
        "nodeExtIds",
        "shouldEnableHighAvailability",
        "tenantId"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getPcRestorePointsV2RestorePointDomainManagerConfig:getPcRestorePointsV2RestorePointDomainManagerConfig": {
      "properties": {
        "bootstrapConfig": {
          "$ref": "#/types/nutanix:index%2FgetPcRestorePointsV2RestorePointDomainManagerConfigBootstrapConfig:getPcRestorePointsV2RestorePointDomainManagerConfigBootstrapConfig"
        },
        "buildInfo": {
          "$ref": "#/types/nutanix:index%2FgetPcRestorePointsV2RestorePointDomainManagerConfigBuildInfo:getPcRestorePointsV2RestorePointDomainManagerConfigBuildInfo"
        },
        "credentials": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetPcRestorePointsV2RestorePointDomainManagerConfigCredential:getPcRestorePointsV2RestorePointDomainManagerConfigCredential"
          }
        },
        "name": {
          "type": "string"
        },
        "resourceConfigs": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetPcRestorePointsV2RestorePointDomainManagerConfigResourceConfig:getPcRestorePointsV2RestorePointDomainManagerConfigResourceConfig"
          }
        },
        "shouldEnableLockdownMode": {
          "type": "boolean"
        },
        "size": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "bootstrapConfig",
        "buildInfo",
        "name",
        "resourceConfigs",
        "shouldEnableLockdownMode",
        "size"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getPcRestorePointsV2RestorePointDomainManagerConfigBootstrapConfig:getPcRestorePointsV2RestorePointDomainManagerConfigBootstrapConfig": {
      "properties": {
        "cloudInitConfigs": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetPcRestorePointsV2RestorePointDomainManagerConfigBootstrapConfigCloudInitConfig:getPcRestorePointsV2RestorePointDomainManagerConfigBootstrapConfigCloudInitConfig"
          }
        },
        "environmentInfo": {
          "$ref": "#/types/nutanix:index%2FgetPcRestorePointsV2RestorePointDomainManagerConfigBootstrapConfigEnvironmentInfo:getPcRestorePointsV2RestorePointDomainManagerConfigBootstrapConfigEnvironmentInfo"
        }
      },
      "type": "object",
      "required": [
        "environmentInfo"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getPcRestorePointsV2RestorePointDomainManagerConfigBootstrapConfigCloudInitConfig:getPcRestorePointsV2RestorePointDomainManagerConfigBootstrapConfigCloudInitConfig": {
      "properties": {
        "cloudInitScripts": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetPcRestorePointsV2RestorePointDomainManagerConfigBootstrapConfigCloudInitConfigCloudInitScript:getPcRestorePointsV2RestorePointDomainManagerConfigBootstrapConfigCloudInitConfigCloudInitScript"
          }
        },
        "datasourceType": {
          "type": "string"
        },
        "metadata": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "cloudInitScripts",
        "metadata"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getPcRestorePointsV2RestorePointDomainManagerConfigBootstrapConfigCloudInitConfigCloudInitScript:getPcRestorePointsV2RestorePointDomainManagerConfigBootstrapConfigCloudInitConfigCloudInitScript": {
      "properties": {
        "customKeyValues": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetPcRestorePointsV2RestorePointDomainManagerConfigBootstrapConfigCloudInitConfigCloudInitScriptCustomKeyValue:getPcRestorePointsV2RestorePointDomainManagerConfigBootstrapConfigCloudInitConfigCloudInitScriptCustomKeyValue"
          }
        },
        "userDatas": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetPcRestorePointsV2RestorePointDomainManagerConfigBootstrapConfigCloudInitConfigCloudInitScriptUserData:getPcRestorePointsV2RestorePointDomainManagerConfigBootstrapConfigCloudInitConfigCloudInitScriptUserData"
          }
        }
      },
      "type": "object",
      "required": [
        "customKeyValues",
        "userDatas"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getPcRestorePointsV2RestorePointDomainManagerConfigBootstrapConfigCloudInitConfigCloudInitScriptCustomKeyValue:getPcRestorePointsV2RestorePointDomainManagerConfigBootstrapConfigCloudInitConfigCloudInitScriptCustomKeyValue": {
      "properties": {
        "keyValuePairs": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetPcRestorePointsV2RestorePointDomainManagerConfigBootstrapConfigCloudInitConfigCloudInitScriptCustomKeyValueKeyValuePair:getPcRestorePointsV2RestorePointDomainManagerConfigBootstrapConfigCloudInitConfigCloudInitScriptCustomKeyValueKeyValuePair"
          }
        }
      },
      "type": "object",
      "required": [
        "keyValuePairs"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getPcRestorePointsV2RestorePointDomainManagerConfigBootstrapConfigCloudInitConfigCloudInitScriptCustomKeyValueKeyValuePair:getPcRestorePointsV2RestorePointDomainManagerConfigBootstrapConfigCloudInitConfigCloudInitScriptCustomKeyValueKeyValuePair": {
      "properties": {
        "name": {
          "type": "string"
        },
        "values": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetPcRestorePointsV2RestorePointDomainManagerConfigBootstrapConfigCloudInitConfigCloudInitScriptCustomKeyValueKeyValuePairValue:getPcRestorePointsV2RestorePointDomainManagerConfigBootstrapConfigCloudInitConfigCloudInitScriptCustomKeyValueKeyValuePairValue"
          }
        }
      },
      "type": "object",
      "required": [
        "name",
        "values"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getPcRestorePointsV2RestorePointDomainManagerConfigBootstrapConfigCloudInitConfigCloudInitScriptCustomKeyValueKeyValuePairValue:getPcRestorePointsV2RestorePointDomainManagerConfigBootstrapConfigCloudInitConfigCloudInitScriptCustomKeyValueKeyValuePairValue": {
      "properties": {
        "boolean": {
          "type": "boolean"
        },
        "integer": {
          "type": "integer"
        },
        "integerLists": {
          "type": "array",
          "items": {
            "type": "integer"
          }
        },
        "mapOfStrings": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetPcRestorePointsV2RestorePointDomainManagerConfigBootstrapConfigCloudInitConfigCloudInitScriptCustomKeyValueKeyValuePairValueMapOfString:getPcRestorePointsV2RestorePointDomainManagerConfigBootstrapConfigCloudInitConfigCloudInitScriptCustomKeyValueKeyValuePairValueMapOfString"
          }
        },
        "object": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          }
        },
        "string": {
          "type": "string"
        },
        "stringLists": {
          "type": "array",
          "items": {
            "type": "string"
          }
        }
      },
      "type": "object",
      "required": [
        "boolean",
        "integer",
        "integerLists",
        "mapOfStrings",
        "object",
        "string",
        "stringLists"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getPcRestorePointsV2RestorePointDomainManagerConfigBootstrapConfigCloudInitConfigCloudInitScriptCustomKeyValueKeyValuePairValueMapOfString:getPcRestorePointsV2RestorePointDomainManagerConfigBootstrapConfigCloudInitConfigCloudInitScriptCustomKeyValueKeyValuePairValueMapOfString": {
      "properties": {
        "map": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          }
        }
      },
      "type": "object",
      "required": [
        "map"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getPcRestorePointsV2RestorePointDomainManagerConfigBootstrapConfigCloudInitConfigCloudInitScriptUserData:getPcRestorePointsV2RestorePointDomainManagerConfigBootstrapConfigCloudInitConfigCloudInitScriptUserData": {
      "properties": {
        "value": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getPcRestorePointsV2RestorePointDomainManagerConfigBootstrapConfigEnvironmentInfo:getPcRestorePointsV2RestorePointDomainManagerConfigBootstrapConfigEnvironmentInfo": {
      "properties": {
        "providerType": {
          "type": "string"
        },
        "provisioningType": {
          "type": "string"
        },
        "type": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "providerType",
        "provisioningType",
        "type"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getPcRestorePointsV2RestorePointDomainManagerConfigBuildInfo:getPcRestorePointsV2RestorePointDomainManagerConfigBuildInfo": {
      "properties": {
        "version": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "version"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getPcRestorePointsV2RestorePointDomainManagerConfigCredential:getPcRestorePointsV2RestorePointDomainManagerConfigCredential": {
      "properties": {
        "password": {
          "type": "string",
          "secret": true
        },
        "username": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "password",
        "username"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getPcRestorePointsV2RestorePointDomainManagerConfigResourceConfig:getPcRestorePointsV2RestorePointDomainManagerConfigResourceConfig": {
      "properties": {
        "containerExtIds": {
          "type": "array",
          "items": {
            "type": "string"
          }
        },
        "dataDiskSizeBytes": {
          "type": "integer"
        },
        "memorySizeBytes": {
          "type": "integer"
        },
        "numVcpus": {
          "type": "integer"
        }
      },
      "type": "object",
      "required": [
        "containerExtIds",
        "dataDiskSizeBytes",
        "memorySizeBytes",
        "numVcpus"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getPcRestorePointsV2RestorePointDomainManagerNetwork:getPcRestorePointsV2RestorePointDomainManagerNetwork": {
      "properties": {
        "externalAddress": {
          "$ref": "#/types/nutanix:index%2FgetPcRestorePointsV2RestorePointDomainManagerNetworkExternalAddress:getPcRestorePointsV2RestorePointDomainManagerNetworkExternalAddress"
        },
        "externalNetworks": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetPcRestorePointsV2RestorePointDomainManagerNetworkExternalNetwork:getPcRestorePointsV2RestorePointDomainManagerNetworkExternalNetwork"
          }
        },
        "fqdn": {
          "type": "string"
        },
        "internalNetworks": {
          "$ref": "#/types/nutanix:index%2FgetPcRestorePointsV2RestorePointDomainManagerNetworkInternalNetworks:getPcRestorePointsV2RestorePointDomainManagerNetworkInternalNetworks"
        },
        "nameServers": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetPcRestorePointsV2RestorePointDomainManagerNetworkNameServer:getPcRestorePointsV2RestorePointDomainManagerNetworkNameServer"
          }
        },
        "ntpServers": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetPcRestorePointsV2RestorePointDomainManagerNetworkNtpServer:getPcRestorePointsV2RestorePointDomainManagerNetworkNtpServer"
          }
        }
      },
      "type": "object",
      "required": [
        "externalNetworks",
        "fqdn",
        "internalNetworks",
        "nameServers",
        "ntpServers"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getPcRestorePointsV2RestorePointDomainManagerNetworkExternalAddress:getPcRestorePointsV2RestorePointDomainManagerNetworkExternalAddress": {
      "properties": {
        "ipv4s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetPcRestorePointsV2RestorePointDomainManagerNetworkExternalAddressIpv4:getPcRestorePointsV2RestorePointDomainManagerNetworkExternalAddressIpv4"
          }
        },
        "ipv6s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetPcRestorePointsV2RestorePointDomainManagerNetworkExternalAddressIpv6:getPcRestorePointsV2RestorePointDomainManagerNetworkExternalAddressIpv6"
          }
        }
      },
      "type": "object",
      "required": [
        "ipv4s",
        "ipv6s"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getPcRestorePointsV2RestorePointDomainManagerNetworkExternalAddressIpv4:getPcRestorePointsV2RestorePointDomainManagerNetworkExternalAddressIpv4": {
      "properties": {
        "prefixLength": {
          "type": "integer"
        },
        "value": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getPcRestorePointsV2RestorePointDomainManagerNetworkExternalAddressIpv6:getPcRestorePointsV2RestorePointDomainManagerNetworkExternalAddressIpv6": {
      "properties": {
        "prefixLength": {
          "type": "integer"
        },
        "value": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getPcRestorePointsV2RestorePointDomainManagerNetworkExternalNetwork:getPcRestorePointsV2RestorePointDomainManagerNetworkExternalNetwork": {
      "properties": {
        "defaultGateway": {
          "$ref": "#/types/nutanix:index%2FgetPcRestorePointsV2RestorePointDomainManagerNetworkExternalNetworkDefaultGateway:getPcRestorePointsV2RestorePointDomainManagerNetworkExternalNetworkDefaultGateway"
        },
        "ipRanges": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetPcRestorePointsV2RestorePointDomainManagerNetworkExternalNetworkIpRange:getPcRestorePointsV2RestorePointDomainManagerNetworkExternalNetworkIpRange"
          }
        },
        "networkExtId": {
          "type": "string"
        },
        "subnetMask": {
          "$ref": "#/types/nutanix:index%2FgetPcRestorePointsV2RestorePointDomainManagerNetworkExternalNetworkSubnetMask:getPcRestorePointsV2RestorePointDomainManagerNetworkExternalNetworkSubnetMask"
        }
      },
      "type": "object",
      "required": [
        "defaultGateway",
        "ipRanges",
        "networkExtId",
        "subnetMask"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getPcRestorePointsV2RestorePointDomainManagerNetworkExternalNetworkDefaultGateway:getPcRestorePointsV2RestorePointDomainManagerNetworkExternalNetworkDefaultGateway": {
      "properties": {
        "fqdns": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetPcRestorePointsV2RestorePointDomainManagerNetworkExternalNetworkDefaultGatewayFqdn:getPcRestorePointsV2RestorePointDomainManagerNetworkExternalNetworkDefaultGatewayFqdn"
          }
        },
        "ipv4s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetPcRestorePointsV2RestorePointDomainManagerNetworkExternalNetworkDefaultGatewayIpv4:getPcRestorePointsV2RestorePointDomainManagerNetworkExternalNetworkDefaultGatewayIpv4"
          }
        },
        "ipv6s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetPcRestorePointsV2RestorePointDomainManagerNetworkExternalNetworkDefaultGatewayIpv6:getPcRestorePointsV2RestorePointDomainManagerNetworkExternalNetworkDefaultGatewayIpv6"
          }
        }
      },
      "type": "object",
      "required": [
        "fqdns",
        "ipv4s",
        "ipv6s"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getPcRestorePointsV2RestorePointDomainManagerNetworkExternalNetworkDefaultGatewayFqdn:getPcRestorePointsV2RestorePointDomainManagerNetworkExternalNetworkDefaultGatewayFqdn": {
      "properties": {
        "value": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getPcRestorePointsV2RestorePointDomainManagerNetworkExternalNetworkDefaultGatewayIpv4:getPcRestorePointsV2RestorePointDomainManagerNetworkExternalNetworkDefaultGatewayIpv4": {
      "properties": {
        "prefixLength": {
          "type": "integer"
        },
        "value": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getPcRestorePointsV2RestorePointDomainManagerNetworkExternalNetworkDefaultGatewayIpv6:getPcRestorePointsV2RestorePointDomainManagerNetworkExternalNetworkDefaultGatewayIpv6": {
      "properties": {
        "prefixLength": {
          "type": "integer"
        },
        "value": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getPcRestorePointsV2RestorePointDomainManagerNetworkExternalNetworkIpRange:getPcRestorePointsV2RestorePointDomainManagerNetworkExternalNetworkIpRange": {
      "properties": {
        "begin": {
          "$ref": "#/types/nutanix:index%2FgetPcRestorePointsV2RestorePointDomainManagerNetworkExternalNetworkIpRangeBegin:getPcRestorePointsV2RestorePointDomainManagerNetworkExternalNetworkIpRangeBegin"
        },
        "end": {
          "$ref": "#/types/nutanix:index%2FgetPcRestorePointsV2RestorePointDomainManagerNetworkExternalNetworkIpRangeEnd:getPcRestorePointsV2RestorePointDomainManagerNetworkExternalNetworkIpRangeEnd"
        }
      },
      "type": "object",
      "required": [
        "begin",
        "end"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getPcRestorePointsV2RestorePointDomainManagerNetworkExternalNetworkIpRangeBegin:getPcRestorePointsV2RestorePointDomainManagerNetworkExternalNetworkIpRangeBegin": {
      "properties": {
        "ipv4s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetPcRestorePointsV2RestorePointDomainManagerNetworkExternalNetworkIpRangeBeginIpv4:getPcRestorePointsV2RestorePointDomainManagerNetworkExternalNetworkIpRangeBeginIpv4"
          }
        },
        "ipv6s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetPcRestorePointsV2RestorePointDomainManagerNetworkExternalNetworkIpRangeBeginIpv6:getPcRestorePointsV2RestorePointDomainManagerNetworkExternalNetworkIpRangeBeginIpv6"
          }
        }
      },
      "type": "object",
      "required": [
        "ipv4s",
        "ipv6s"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getPcRestorePointsV2RestorePointDomainManagerNetworkExternalNetworkIpRangeBeginIpv4:getPcRestorePointsV2RestorePointDomainManagerNetworkExternalNetworkIpRangeBeginIpv4": {
      "properties": {
        "prefixLength": {
          "type": "integer"
        },
        "value": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getPcRestorePointsV2RestorePointDomainManagerNetworkExternalNetworkIpRangeBeginIpv6:getPcRestorePointsV2RestorePointDomainManagerNetworkExternalNetworkIpRangeBeginIpv6": {
      "properties": {
        "prefixLength": {
          "type": "integer"
        },
        "value": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getPcRestorePointsV2RestorePointDomainManagerNetworkExternalNetworkIpRangeEnd:getPcRestorePointsV2RestorePointDomainManagerNetworkExternalNetworkIpRangeEnd": {
      "properties": {
        "ipv4s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetPcRestorePointsV2RestorePointDomainManagerNetworkExternalNetworkIpRangeEndIpv4:getPcRestorePointsV2RestorePointDomainManagerNetworkExternalNetworkIpRangeEndIpv4"
          }
        },
        "ipv6s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetPcRestorePointsV2RestorePointDomainManagerNetworkExternalNetworkIpRangeEndIpv6:getPcRestorePointsV2RestorePointDomainManagerNetworkExternalNetworkIpRangeEndIpv6"
          }
        }
      },
      "type": "object",
      "required": [
        "ipv4s",
        "ipv6s"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getPcRestorePointsV2RestorePointDomainManagerNetworkExternalNetworkIpRangeEndIpv4:getPcRestorePointsV2RestorePointDomainManagerNetworkExternalNetworkIpRangeEndIpv4": {
      "properties": {
        "prefixLength": {
          "type": "integer"
        },
        "value": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getPcRestorePointsV2RestorePointDomainManagerNetworkExternalNetworkIpRangeEndIpv6:getPcRestorePointsV2RestorePointDomainManagerNetworkExternalNetworkIpRangeEndIpv6": {
      "properties": {
        "prefixLength": {
          "type": "integer"
        },
        "value": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getPcRestorePointsV2RestorePointDomainManagerNetworkExternalNetworkSubnetMask:getPcRestorePointsV2RestorePointDomainManagerNetworkExternalNetworkSubnetMask": {
      "properties": {
        "fqdns": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetPcRestorePointsV2RestorePointDomainManagerNetworkExternalNetworkSubnetMaskFqdn:getPcRestorePointsV2RestorePointDomainManagerNetworkExternalNetworkSubnetMaskFqdn"
          }
        },
        "ipv4s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetPcRestorePointsV2RestorePointDomainManagerNetworkExternalNetworkSubnetMaskIpv4:getPcRestorePointsV2RestorePointDomainManagerNetworkExternalNetworkSubnetMaskIpv4"
          }
        },
        "ipv6s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetPcRestorePointsV2RestorePointDomainManagerNetworkExternalNetworkSubnetMaskIpv6:getPcRestorePointsV2RestorePointDomainManagerNetworkExternalNetworkSubnetMaskIpv6"
          }
        }
      },
      "type": "object",
      "required": [
        "fqdns",
        "ipv4s",
        "ipv6s"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getPcRestorePointsV2RestorePointDomainManagerNetworkExternalNetworkSubnetMaskFqdn:getPcRestorePointsV2RestorePointDomainManagerNetworkExternalNetworkSubnetMaskFqdn": {
      "properties": {
        "value": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getPcRestorePointsV2RestorePointDomainManagerNetworkExternalNetworkSubnetMaskIpv4:getPcRestorePointsV2RestorePointDomainManagerNetworkExternalNetworkSubnetMaskIpv4": {
      "properties": {
        "prefixLength": {
          "type": "integer"
        },
        "value": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getPcRestorePointsV2RestorePointDomainManagerNetworkExternalNetworkSubnetMaskIpv6:getPcRestorePointsV2RestorePointDomainManagerNetworkExternalNetworkSubnetMaskIpv6": {
      "properties": {
        "prefixLength": {
          "type": "integer"
        },
        "value": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getPcRestorePointsV2RestorePointDomainManagerNetworkInternalNetworks:getPcRestorePointsV2RestorePointDomainManagerNetworkInternalNetworks": {
      "properties": {
        "defaultGateway": {
          "$ref": "#/types/nutanix:index%2FgetPcRestorePointsV2RestorePointDomainManagerNetworkInternalNetworksDefaultGateway:getPcRestorePointsV2RestorePointDomainManagerNetworkInternalNetworksDefaultGateway"
        },
        "ipRanges": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetPcRestorePointsV2RestorePointDomainManagerNetworkInternalNetworksIpRange:getPcRestorePointsV2RestorePointDomainManagerNetworkInternalNetworksIpRange"
          }
        },
        "subnetMask": {
          "$ref": "#/types/nutanix:index%2FgetPcRestorePointsV2RestorePointDomainManagerNetworkInternalNetworksSubnetMask:getPcRestorePointsV2RestorePointDomainManagerNetworkInternalNetworksSubnetMask"
        }
      },
      "type": "object",
      "required": [
        "defaultGateway",
        "ipRanges",
        "subnetMask"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getPcRestorePointsV2RestorePointDomainManagerNetworkInternalNetworksDefaultGateway:getPcRestorePointsV2RestorePointDomainManagerNetworkInternalNetworksDefaultGateway": {
      "properties": {
        "fqdns": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetPcRestorePointsV2RestorePointDomainManagerNetworkInternalNetworksDefaultGatewayFqdn:getPcRestorePointsV2RestorePointDomainManagerNetworkInternalNetworksDefaultGatewayFqdn"
          }
        },
        "ipv4s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetPcRestorePointsV2RestorePointDomainManagerNetworkInternalNetworksDefaultGatewayIpv4:getPcRestorePointsV2RestorePointDomainManagerNetworkInternalNetworksDefaultGatewayIpv4"
          }
        },
        "ipv6s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetPcRestorePointsV2RestorePointDomainManagerNetworkInternalNetworksDefaultGatewayIpv6:getPcRestorePointsV2RestorePointDomainManagerNetworkInternalNetworksDefaultGatewayIpv6"
          }
        }
      },
      "type": "object",
      "required": [
        "fqdns",
        "ipv4s",
        "ipv6s"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getPcRestorePointsV2RestorePointDomainManagerNetworkInternalNetworksDefaultGatewayFqdn:getPcRestorePointsV2RestorePointDomainManagerNetworkInternalNetworksDefaultGatewayFqdn": {
      "properties": {
        "value": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getPcRestorePointsV2RestorePointDomainManagerNetworkInternalNetworksDefaultGatewayIpv4:getPcRestorePointsV2RestorePointDomainManagerNetworkInternalNetworksDefaultGatewayIpv4": {
      "properties": {
        "prefixLength": {
          "type": "integer"
        },
        "value": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getPcRestorePointsV2RestorePointDomainManagerNetworkInternalNetworksDefaultGatewayIpv6:getPcRestorePointsV2RestorePointDomainManagerNetworkInternalNetworksDefaultGatewayIpv6": {
      "properties": {
        "prefixLength": {
          "type": "integer"
        },
        "value": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getPcRestorePointsV2RestorePointDomainManagerNetworkInternalNetworksIpRange:getPcRestorePointsV2RestorePointDomainManagerNetworkInternalNetworksIpRange": {
      "properties": {
        "begin": {
          "$ref": "#/types/nutanix:index%2FgetPcRestorePointsV2RestorePointDomainManagerNetworkInternalNetworksIpRangeBegin:getPcRestorePointsV2RestorePointDomainManagerNetworkInternalNetworksIpRangeBegin"
        },
        "end": {
          "$ref": "#/types/nutanix:index%2FgetPcRestorePointsV2RestorePointDomainManagerNetworkInternalNetworksIpRangeEnd:getPcRestorePointsV2RestorePointDomainManagerNetworkInternalNetworksIpRangeEnd"
        }
      },
      "type": "object",
      "required": [
        "begin",
        "end"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getPcRestorePointsV2RestorePointDomainManagerNetworkInternalNetworksIpRangeBegin:getPcRestorePointsV2RestorePointDomainManagerNetworkInternalNetworksIpRangeBegin": {
      "properties": {
        "ipv4s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetPcRestorePointsV2RestorePointDomainManagerNetworkInternalNetworksIpRangeBeginIpv4:getPcRestorePointsV2RestorePointDomainManagerNetworkInternalNetworksIpRangeBeginIpv4"
          }
        },
        "ipv6s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetPcRestorePointsV2RestorePointDomainManagerNetworkInternalNetworksIpRangeBeginIpv6:getPcRestorePointsV2RestorePointDomainManagerNetworkInternalNetworksIpRangeBeginIpv6"
          }
        }
      },
      "type": "object",
      "required": [
        "ipv4s",
        "ipv6s"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getPcRestorePointsV2RestorePointDomainManagerNetworkInternalNetworksIpRangeBeginIpv4:getPcRestorePointsV2RestorePointDomainManagerNetworkInternalNetworksIpRangeBeginIpv4": {
      "properties": {
        "prefixLength": {
          "type": "integer"
        },
        "value": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getPcRestorePointsV2RestorePointDomainManagerNetworkInternalNetworksIpRangeBeginIpv6:getPcRestorePointsV2RestorePointDomainManagerNetworkInternalNetworksIpRangeBeginIpv6": {
      "properties": {
        "prefixLength": {
          "type": "integer"
        },
        "value": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getPcRestorePointsV2RestorePointDomainManagerNetworkInternalNetworksIpRangeEnd:getPcRestorePointsV2RestorePointDomainManagerNetworkInternalNetworksIpRangeEnd": {
      "properties": {
        "ipv4s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetPcRestorePointsV2RestorePointDomainManagerNetworkInternalNetworksIpRangeEndIpv4:getPcRestorePointsV2RestorePointDomainManagerNetworkInternalNetworksIpRangeEndIpv4"
          }
        },
        "ipv6s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetPcRestorePointsV2RestorePointDomainManagerNetworkInternalNetworksIpRangeEndIpv6:getPcRestorePointsV2RestorePointDomainManagerNetworkInternalNetworksIpRangeEndIpv6"
          }
        }
      },
      "type": "object",
      "required": [
        "ipv4s",
        "ipv6s"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getPcRestorePointsV2RestorePointDomainManagerNetworkInternalNetworksIpRangeEndIpv4:getPcRestorePointsV2RestorePointDomainManagerNetworkInternalNetworksIpRangeEndIpv4": {
      "properties": {
        "prefixLength": {
          "type": "integer"
        },
        "value": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getPcRestorePointsV2RestorePointDomainManagerNetworkInternalNetworksIpRangeEndIpv6:getPcRestorePointsV2RestorePointDomainManagerNetworkInternalNetworksIpRangeEndIpv6": {
      "properties": {
        "prefixLength": {
          "type": "integer"
        },
        "value": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getPcRestorePointsV2RestorePointDomainManagerNetworkInternalNetworksSubnetMask:getPcRestorePointsV2RestorePointDomainManagerNetworkInternalNetworksSubnetMask": {
      "properties": {
        "fqdns": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetPcRestorePointsV2RestorePointDomainManagerNetworkInternalNetworksSubnetMaskFqdn:getPcRestorePointsV2RestorePointDomainManagerNetworkInternalNetworksSubnetMaskFqdn"
          }
        },
        "ipv4s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetPcRestorePointsV2RestorePointDomainManagerNetworkInternalNetworksSubnetMaskIpv4:getPcRestorePointsV2RestorePointDomainManagerNetworkInternalNetworksSubnetMaskIpv4"
          }
        },
        "ipv6s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetPcRestorePointsV2RestorePointDomainManagerNetworkInternalNetworksSubnetMaskIpv6:getPcRestorePointsV2RestorePointDomainManagerNetworkInternalNetworksSubnetMaskIpv6"
          }
        }
      },
      "type": "object",
      "required": [
        "fqdns",
        "ipv4s",
        "ipv6s"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getPcRestorePointsV2RestorePointDomainManagerNetworkInternalNetworksSubnetMaskFqdn:getPcRestorePointsV2RestorePointDomainManagerNetworkInternalNetworksSubnetMaskFqdn": {
      "properties": {
        "value": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getPcRestorePointsV2RestorePointDomainManagerNetworkInternalNetworksSubnetMaskIpv4:getPcRestorePointsV2RestorePointDomainManagerNetworkInternalNetworksSubnetMaskIpv4": {
      "properties": {
        "prefixLength": {
          "type": "integer"
        },
        "value": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getPcRestorePointsV2RestorePointDomainManagerNetworkInternalNetworksSubnetMaskIpv6:getPcRestorePointsV2RestorePointDomainManagerNetworkInternalNetworksSubnetMaskIpv6": {
      "properties": {
        "prefixLength": {
          "type": "integer"
        },
        "value": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getPcRestorePointsV2RestorePointDomainManagerNetworkNameServer:getPcRestorePointsV2RestorePointDomainManagerNetworkNameServer": {
      "properties": {
        "fqdns": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetPcRestorePointsV2RestorePointDomainManagerNetworkNameServerFqdn:getPcRestorePointsV2RestorePointDomainManagerNetworkNameServerFqdn"
          }
        },
        "ipv4s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetPcRestorePointsV2RestorePointDomainManagerNetworkNameServerIpv4:getPcRestorePointsV2RestorePointDomainManagerNetworkNameServerIpv4"
          }
        },
        "ipv6s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetPcRestorePointsV2RestorePointDomainManagerNetworkNameServerIpv6:getPcRestorePointsV2RestorePointDomainManagerNetworkNameServerIpv6"
          }
        }
      },
      "type": "object",
      "required": [
        "fqdns",
        "ipv4s",
        "ipv6s"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getPcRestorePointsV2RestorePointDomainManagerNetworkNameServerFqdn:getPcRestorePointsV2RestorePointDomainManagerNetworkNameServerFqdn": {
      "properties": {
        "value": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getPcRestorePointsV2RestorePointDomainManagerNetworkNameServerIpv4:getPcRestorePointsV2RestorePointDomainManagerNetworkNameServerIpv4": {
      "properties": {
        "prefixLength": {
          "type": "integer"
        },
        "value": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getPcRestorePointsV2RestorePointDomainManagerNetworkNameServerIpv6:getPcRestorePointsV2RestorePointDomainManagerNetworkNameServerIpv6": {
      "properties": {
        "prefixLength": {
          "type": "integer"
        },
        "value": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getPcRestorePointsV2RestorePointDomainManagerNetworkNtpServer:getPcRestorePointsV2RestorePointDomainManagerNetworkNtpServer": {
      "properties": {
        "fqdns": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetPcRestorePointsV2RestorePointDomainManagerNetworkNtpServerFqdn:getPcRestorePointsV2RestorePointDomainManagerNetworkNtpServerFqdn"
          }
        },
        "ipv4s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetPcRestorePointsV2RestorePointDomainManagerNetworkNtpServerIpv4:getPcRestorePointsV2RestorePointDomainManagerNetworkNtpServerIpv4"
          }
        },
        "ipv6s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetPcRestorePointsV2RestorePointDomainManagerNetworkNtpServerIpv6:getPcRestorePointsV2RestorePointDomainManagerNetworkNtpServerIpv6"
          }
        }
      },
      "type": "object",
      "required": [
        "fqdns",
        "ipv4s",
        "ipv6s"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getPcRestorePointsV2RestorePointDomainManagerNetworkNtpServerFqdn:getPcRestorePointsV2RestorePointDomainManagerNetworkNtpServerFqdn": {
      "properties": {
        "value": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getPcRestorePointsV2RestorePointDomainManagerNetworkNtpServerIpv4:getPcRestorePointsV2RestorePointDomainManagerNetworkNtpServerIpv4": {
      "properties": {
        "prefixLength": {
          "type": "integer"
        },
        "value": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getPcRestorePointsV2RestorePointDomainManagerNetworkNtpServerIpv6:getPcRestorePointsV2RestorePointDomainManagerNetworkNtpServerIpv6": {
      "properties": {
        "prefixLength": {
          "type": "integer"
        },
        "value": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getPcRestorePointsV2RestorePointLink:getPcRestorePointsV2RestorePointLink": {
      "properties": {
        "href": {
          "type": "string"
        },
        "rel": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "href",
        "rel"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getPcRestoreSourceV2Link:getPcRestoreSourceV2Link": {
      "properties": {
        "href": {
          "type": "string"
        },
        "rel": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "href",
        "rel"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getPcRestoreSourceV2Location:getPcRestoreSourceV2Location": {
      "properties": {
        "clusterLocations": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetPcRestoreSourceV2LocationClusterLocation:getPcRestoreSourceV2LocationClusterLocation"
          },
          "description": "- A boolean value indicating whether to enable lockdown mode for a cluster.\n"
        },
        "objectStoreLocations": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetPcRestoreSourceV2LocationObjectStoreLocation:getPcRestoreSourceV2LocationObjectStoreLocation"
          },
          "description": "- Currently representing the build information to be used for the cluster creation.\n"
        }
      },
      "type": "object",
      "required": [
        "clusterLocations",
        "objectStoreLocations"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getPcRestoreSourceV2LocationClusterLocation:getPcRestoreSourceV2LocationClusterLocation": {
      "properties": {
        "configs": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetPcRestoreSourceV2LocationClusterLocationConfig:getPcRestoreSourceV2LocationClusterLocationConfig"
          },
          "description": "- Cluster reference of the remote cluster to be connected.\n"
        }
      },
      "type": "object",
      "required": [
        "configs"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getPcRestoreSourceV2LocationClusterLocationConfig:getPcRestoreSourceV2LocationClusterLocationConfig": {
      "properties": {
        "extId": {
          "type": "string",
          "description": "-(Required) A globally unique identifier of an instance that is suitable for external consumption.\n"
        }
      },
      "type": "object",
      "required": [
        "extId"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getPcRestoreSourceV2LocationObjectStoreLocation:getPcRestoreSourceV2LocationObjectStoreLocation": {
      "properties": {
        "backupPolicies": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetPcRestoreSourceV2LocationObjectStoreLocationBackupPolicy:getPcRestoreSourceV2LocationObjectStoreLocationBackupPolicy"
          },
          "description": "- Backup policy for the object store provided.\n"
        },
        "providerConfigs": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetPcRestoreSourceV2LocationObjectStoreLocationProviderConfig:getPcRestoreSourceV2LocationObjectStoreLocationProviderConfig"
          },
          "description": "- The base model of S3 object store endpoint where domain manager is backed up.\n"
        }
      },
      "type": "object",
      "required": [
        "backupPolicies",
        "providerConfigs"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getPcRestoreSourceV2LocationObjectStoreLocationBackupPolicy:getPcRestoreSourceV2LocationObjectStoreLocationBackupPolicy": {
      "properties": {
        "rpoInMinutes": {
          "type": "integer",
          "description": "- RPO interval in minutes at which the backup will be taken. The Value should be in the range of 60 to 1440.\n"
        }
      },
      "type": "object",
      "required": [
        "rpoInMinutes"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getPcRestoreSourceV2LocationObjectStoreLocationProviderConfig:getPcRestoreSourceV2LocationObjectStoreLocationProviderConfig": {
      "properties": {
        "bucketName": {
          "type": "string",
          "description": "- The bucket name of the object store endpoint where backup data of domain manager is to be stored.\n"
        },
        "credentials": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetPcRestoreSourceV2LocationObjectStoreLocationProviderConfigCredential:getPcRestoreSourceV2LocationObjectStoreLocationProviderConfigCredential"
          },
          "description": "- Secret credentials model for the object store containing access key ID and secret access key.\n"
        },
        "region": {
          "type": "string",
          "description": "- The region name of the object store endpoint where backup data of domain manager is stored. Default is `us-east-1`.\n"
        }
      },
      "type": "object",
      "required": [
        "bucketName",
        "credentials",
        "region"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getPcRestoreSourceV2LocationObjectStoreLocationProviderConfigCredential:getPcRestoreSourceV2LocationObjectStoreLocationProviderConfigCredential": {
      "properties": {
        "accessKeyId": {
          "type": "string",
          "description": "- Access key ID for the object store provided for backup target.\n"
        },
        "secretAccessKey": {
          "type": "string",
          "description": "- Secret access key for the object store provided for backup target.\n"
        }
      },
      "type": "object",
      "required": [
        "accessKeyId",
        "secretAccessKey"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getPcV2Config:getPcV2Config": {
      "properties": {
        "bootstrapConfigs": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetPcV2ConfigBootstrapConfig:getPcV2ConfigBootstrapConfig"
          },
          "description": "- Bootstrap configuration details for the domain manager (Prism Central).\n"
        },
        "buildInfos": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetPcV2ConfigBuildInfo:getPcV2ConfigBuildInfo"
          },
          "description": "-Currently representing the build information to be used for the cluster creation.\n"
        },
        "name": {
          "type": "string",
          "description": "- Name of the domain manager (Prism Central).\n"
        },
        "resourceConfigs": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetPcV2ConfigResourceConfig:getPcV2ConfigResourceConfig"
          },
          "description": "- This configuration is used to provide the resource-related details like container external identifiers, number of VCPUs, memory size, data disk size of the domain manager (Prism Central). In the case of a multi-node setup, the sum of resources like number of VCPUs, memory size and data disk size are provided.\n"
        },
        "shouldEnableLockdownMode": {
          "type": "boolean",
          "description": "- A boolean value indicating whether to enable lockdown mode for a cluster.\n"
        },
        "size": {
          "type": "string",
          "description": "- Domain manager (Prism Central) size is an enumeration of starter, small, large, or extra large starter values. possible values are:\n* `SMALL` : Domain manager (Prism Central) of size small.\n* `LARGE` : Domain manager (Prism Central) of size large.\n* `EXTRALARGE` : Domain manager (Prism Central) of size extra large.\n* `STARTER` : Domain manager (Prism Central) of size starter.\n"
        }
      },
      "type": "object",
      "required": [
        "bootstrapConfigs",
        "buildInfos",
        "name",
        "resourceConfigs",
        "shouldEnableLockdownMode",
        "size"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getPcV2ConfigBootstrapConfig:getPcV2ConfigBootstrapConfig": {
      "properties": {
        "environmentInfos": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetPcV2ConfigBootstrapConfigEnvironmentInfo:getPcV2ConfigBootstrapConfigEnvironmentInfo"
          },
          "description": "- Environment information for the domain manager (Prism Central) cluster.\n"
        }
      },
      "type": "object",
      "required": [
        "environmentInfos"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getPcV2ConfigBootstrapConfigEnvironmentInfo:getPcV2ConfigBootstrapConfigEnvironmentInfo": {
      "properties": {
        "providerType": {
          "type": "string",
          "description": "- Enums denoting the provider type of the PC, that is, AHV or ESXi.\nFollowing are the supported provider types:\n* `VSPHERE` : Vsphere cloud provider.\n* `AZURE` : Azure cloud provider.\n* `NTNX` : Nutanix cloud provider.\n* `GCP` : GCP cloud provider.\n* `AWS` : AWS cloud provider.\n"
        },
        "provisioningType": {
          "type": "string",
          "description": "- Enums denoting the instance type of the cloud PC. It indicates whether the PC is created on bare-metal or on a cloud-provisioned VM. Hence, it supports two possible values:\n* `NTNX` : Nutanix instance.\n* `NATIVE` : Native instance.\n"
        },
        "type": {
          "type": "string",
          "description": "- Enums denoting the environment type of the PC, that is, on-prem PC or cloud PC.\nFollowing are the supported entity types:\n* `ONPREM` : On-prem environment.\n* `NTNX_CLOUD` : Nutanix cloud environment.\n"
        }
      },
      "type": "object",
      "required": [
        "providerType",
        "provisioningType",
        "type"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getPcV2ConfigBuildInfo:getPcV2ConfigBuildInfo": {
      "properties": {
        "version": {
          "type": "string",
          "description": "- Software version.\n"
        }
      },
      "type": "object",
      "required": [
        "version"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getPcV2ConfigResourceConfig:getPcV2ConfigResourceConfig": {
      "properties": {
        "containerExtIds": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "- The external identifier of the container that will be used to create the domain manager (Prism Central) cluster.\n"
        },
        "dataDiskSizeBytes": {
          "type": "integer",
          "description": "- This property is used for readOnly purposes to display Prism Central data disk size allocation at a cluster level.\n"
        },
        "memorySizeBytes": {
          "type": "integer",
          "description": "- This property is used for readOnly purposes to display Prism Central RAM allocation at the cluster level.\n"
        },
        "numVcpus": {
          "type": "integer",
          "description": "- This property is used for readOnly purposes to display Prism Central number of VCPUs allocation.\n"
        }
      },
      "type": "object",
      "required": [
        "containerExtIds",
        "dataDiskSizeBytes",
        "memorySizeBytes",
        "numVcpus"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getPcV2Link:getPcV2Link": {
      "properties": {
        "href": {
          "type": "string"
        },
        "rel": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "href",
        "rel"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getPcV2Network:getPcV2Network": {
      "properties": {
        "externalAddresses": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetPcV2NetworkExternalAddress:getPcV2NetworkExternalAddress"
          },
          "description": "- An unique address that identifies a device on the internet or a local network in IPv4 or IPv6 format.\n"
        },
        "externalNetworks": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetPcV2NetworkExternalNetwork:getPcV2NetworkExternalNetwork"
          },
          "description": "- This configuration is used to manage Prism Central.\n"
        },
        "fqdn": {
          "type": "string",
          "description": "- A fully qualified domain name that specifies its exact location in the tree hierarchy of the Domain Name System.\n"
        },
        "nameServers": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetPcV2NetworkNameServer:getPcV2NetworkNameServer"
          },
          "description": "- List of name servers on a cluster. This is part of payload for both cluster create & update operations. For create operation, only ipv4 address / fqdn values are supported currently.\n"
        },
        "ntpServers": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetPcV2NetworkNtpServer:getPcV2NetworkNtpServer"
          },
          "description": "- List of NTP servers on a cluster. This is part of payload for both cluster create & update operations. For create operation, only ipv4 address / fqdn values are supported currently.\n"
        }
      },
      "type": "object",
      "required": [
        "externalAddresses",
        "externalNetworks",
        "fqdn",
        "nameServers",
        "ntpServers"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getPcV2NetworkExternalAddress:getPcV2NetworkExternalAddress": {
      "properties": {
        "ipv4s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetPcV2NetworkExternalAddressIpv4:getPcV2NetworkExternalAddressIpv4"
          },
          "description": "- An unique address that identifies a device on the internet or a local network in IPv4 format.\n"
        },
        "ipv6s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetPcV2NetworkExternalAddressIpv6:getPcV2NetworkExternalAddressIpv6"
          },
          "description": "- An unique address that identifies a device on the internet or a local network in IPv6 format.\n"
        }
      },
      "type": "object",
      "required": [
        "ipv4s",
        "ipv6s"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getPcV2NetworkExternalAddressIpv4:getPcV2NetworkExternalAddressIpv4": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "- The prefix length of the network to which this host IPv4/IPv6 address belongs.\n"
        },
        "value": {
          "type": "string",
          "description": "- The fully qualified domain name of the host.\n"
        }
      },
      "type": "object",
      "required": [
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getPcV2NetworkExternalAddressIpv6:getPcV2NetworkExternalAddressIpv6": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "- The prefix length of the network to which this host IPv4/IPv6 address belongs.\n"
        },
        "value": {
          "type": "string",
          "description": "- The fully qualified domain name of the host.\n"
        }
      },
      "type": "object",
      "required": [
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getPcV2NetworkExternalNetwork:getPcV2NetworkExternalNetwork": {
      "properties": {
        "defaultGateways": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetPcV2NetworkExternalNetworkDefaultGateway:getPcV2NetworkExternalNetworkDefaultGateway"
          },
          "description": "- An unique address that identifies a device on the internet or a local network in IPv4/IPv6 format or a Fully Qualified Domain Name.\n"
        },
        "ipRanges": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetPcV2NetworkExternalNetworkIpRange:getPcV2NetworkExternalNetworkIpRange"
          },
          "description": "- Range of IPs used for Prism Central network setup.\n"
        },
        "networkExtId": {
          "type": "string",
          "description": "- The network external identifier to which Domain Manager (Prism Central) is to be deployed or is already configured.\n"
        },
        "subnetMasks": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetPcV2NetworkExternalNetworkSubnetMask:getPcV2NetworkExternalNetworkSubnetMask"
          },
          "description": "- An unique address that identifies a device on the internet or a local network in IPv4/IPv6 format or a Fully Qualified Domain Name.\n"
        }
      },
      "type": "object",
      "required": [
        "defaultGateways",
        "ipRanges",
        "networkExtId",
        "subnetMasks"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getPcV2NetworkExternalNetworkDefaultGateway:getPcV2NetworkExternalNetworkDefaultGateway": {
      "properties": {
        "fqdns": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetPcV2NetworkExternalNetworkDefaultGatewayFqdn:getPcV2NetworkExternalNetworkDefaultGatewayFqdn"
          },
          "description": "- A fully qualified domain name that specifies its exact location in the tree hierarchy of the Domain Name System.\n"
        },
        "ipv4s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetPcV2NetworkExternalNetworkDefaultGatewayIpv4:getPcV2NetworkExternalNetworkDefaultGatewayIpv4"
          },
          "description": "- An unique address that identifies a device on the internet or a local network in IPv4 format.\n"
        },
        "ipv6s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetPcV2NetworkExternalNetworkDefaultGatewayIpv6:getPcV2NetworkExternalNetworkDefaultGatewayIpv6"
          },
          "description": "- An unique address that identifies a device on the internet or a local network in IPv6 format.\n"
        }
      },
      "type": "object",
      "required": [
        "fqdns",
        "ipv4s",
        "ipv6s"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getPcV2NetworkExternalNetworkDefaultGatewayFqdn:getPcV2NetworkExternalNetworkDefaultGatewayFqdn": {
      "properties": {
        "value": {
          "type": "string",
          "description": "- The fully qualified domain name of the host.\n"
        }
      },
      "type": "object",
      "required": [
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getPcV2NetworkExternalNetworkDefaultGatewayIpv4:getPcV2NetworkExternalNetworkDefaultGatewayIpv4": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "- The prefix length of the network to which this host IPv4/IPv6 address belongs.\n"
        },
        "value": {
          "type": "string",
          "description": "- The fully qualified domain name of the host.\n"
        }
      },
      "type": "object",
      "required": [
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getPcV2NetworkExternalNetworkDefaultGatewayIpv6:getPcV2NetworkExternalNetworkDefaultGatewayIpv6": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "- The prefix length of the network to which this host IPv4/IPv6 address belongs.\n"
        },
        "value": {
          "type": "string",
          "description": "- The fully qualified domain name of the host.\n"
        }
      },
      "type": "object",
      "required": [
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getPcV2NetworkExternalNetworkIpRange:getPcV2NetworkExternalNetworkIpRange": {
      "properties": {
        "begins": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetPcV2NetworkExternalNetworkIpRangeBegin:getPcV2NetworkExternalNetworkIpRangeBegin"
          },
          "description": "- The beginning IP address of the range.\n"
        },
        "ends": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetPcV2NetworkExternalNetworkIpRangeEnd:getPcV2NetworkExternalNetworkIpRangeEnd"
          },
          "description": "- The ending IP address of the range.\n"
        }
      },
      "type": "object",
      "required": [
        "begins",
        "ends"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getPcV2NetworkExternalNetworkIpRangeBegin:getPcV2NetworkExternalNetworkIpRangeBegin": {
      "properties": {
        "ipv4s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetPcV2NetworkExternalNetworkIpRangeBeginIpv4:getPcV2NetworkExternalNetworkIpRangeBeginIpv4"
          },
          "description": "- An unique address that identifies a device on the internet or a local network in IPv4 format.\n"
        },
        "ipv6s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetPcV2NetworkExternalNetworkIpRangeBeginIpv6:getPcV2NetworkExternalNetworkIpRangeBeginIpv6"
          },
          "description": "- An unique address that identifies a device on the internet or a local network in IPv6 format.\n"
        }
      },
      "type": "object",
      "required": [
        "ipv4s",
        "ipv6s"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getPcV2NetworkExternalNetworkIpRangeBeginIpv4:getPcV2NetworkExternalNetworkIpRangeBeginIpv4": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "- The prefix length of the network to which this host IPv4/IPv6 address belongs.\n"
        },
        "value": {
          "type": "string",
          "description": "- The fully qualified domain name of the host.\n"
        }
      },
      "type": "object",
      "required": [
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getPcV2NetworkExternalNetworkIpRangeBeginIpv6:getPcV2NetworkExternalNetworkIpRangeBeginIpv6": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "- The prefix length of the network to which this host IPv4/IPv6 address belongs.\n"
        },
        "value": {
          "type": "string",
          "description": "- The fully qualified domain name of the host.\n"
        }
      },
      "type": "object",
      "required": [
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getPcV2NetworkExternalNetworkIpRangeEnd:getPcV2NetworkExternalNetworkIpRangeEnd": {
      "properties": {
        "ipv4s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetPcV2NetworkExternalNetworkIpRangeEndIpv4:getPcV2NetworkExternalNetworkIpRangeEndIpv4"
          },
          "description": "- An unique address that identifies a device on the internet or a local network in IPv4 format.\n"
        },
        "ipv6s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetPcV2NetworkExternalNetworkIpRangeEndIpv6:getPcV2NetworkExternalNetworkIpRangeEndIpv6"
          },
          "description": "- An unique address that identifies a device on the internet or a local network in IPv6 format.\n"
        }
      },
      "type": "object",
      "required": [
        "ipv4s",
        "ipv6s"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getPcV2NetworkExternalNetworkIpRangeEndIpv4:getPcV2NetworkExternalNetworkIpRangeEndIpv4": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "- The prefix length of the network to which this host IPv4/IPv6 address belongs.\n"
        },
        "value": {
          "type": "string",
          "description": "- The fully qualified domain name of the host.\n"
        }
      },
      "type": "object",
      "required": [
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getPcV2NetworkExternalNetworkIpRangeEndIpv6:getPcV2NetworkExternalNetworkIpRangeEndIpv6": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "- The prefix length of the network to which this host IPv4/IPv6 address belongs.\n"
        },
        "value": {
          "type": "string",
          "description": "- The fully qualified domain name of the host.\n"
        }
      },
      "type": "object",
      "required": [
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getPcV2NetworkExternalNetworkSubnetMask:getPcV2NetworkExternalNetworkSubnetMask": {
      "properties": {
        "fqdns": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetPcV2NetworkExternalNetworkSubnetMaskFqdn:getPcV2NetworkExternalNetworkSubnetMaskFqdn"
          },
          "description": "- A fully qualified domain name that specifies its exact location in the tree hierarchy of the Domain Name System.\n"
        },
        "ipv4s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetPcV2NetworkExternalNetworkSubnetMaskIpv4:getPcV2NetworkExternalNetworkSubnetMaskIpv4"
          },
          "description": "- An unique address that identifies a device on the internet or a local network in IPv4 format.\n"
        },
        "ipv6s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetPcV2NetworkExternalNetworkSubnetMaskIpv6:getPcV2NetworkExternalNetworkSubnetMaskIpv6"
          },
          "description": "- An unique address that identifies a device on the internet or a local network in IPv6 format.\n"
        }
      },
      "type": "object",
      "required": [
        "fqdns",
        "ipv4s",
        "ipv6s"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getPcV2NetworkExternalNetworkSubnetMaskFqdn:getPcV2NetworkExternalNetworkSubnetMaskFqdn": {
      "properties": {
        "value": {
          "type": "string",
          "description": "- The fully qualified domain name of the host.\n"
        }
      },
      "type": "object",
      "required": [
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getPcV2NetworkExternalNetworkSubnetMaskIpv4:getPcV2NetworkExternalNetworkSubnetMaskIpv4": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "- The prefix length of the network to which this host IPv4/IPv6 address belongs.\n"
        },
        "value": {
          "type": "string",
          "description": "- The fully qualified domain name of the host.\n"
        }
      },
      "type": "object",
      "required": [
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getPcV2NetworkExternalNetworkSubnetMaskIpv6:getPcV2NetworkExternalNetworkSubnetMaskIpv6": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "- The prefix length of the network to which this host IPv4/IPv6 address belongs.\n"
        },
        "value": {
          "type": "string",
          "description": "- The fully qualified domain name of the host.\n"
        }
      },
      "type": "object",
      "required": [
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getPcV2NetworkNameServer:getPcV2NetworkNameServer": {
      "properties": {
        "fqdns": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetPcV2NetworkNameServerFqdn:getPcV2NetworkNameServerFqdn"
          },
          "description": "- A fully qualified domain name that specifies its exact location in the tree hierarchy of the Domain Name System.\n"
        },
        "ipv4s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetPcV2NetworkNameServerIpv4:getPcV2NetworkNameServerIpv4"
          },
          "description": "- An unique address that identifies a device on the internet or a local network in IPv4 format.\n"
        },
        "ipv6s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetPcV2NetworkNameServerIpv6:getPcV2NetworkNameServerIpv6"
          },
          "description": "- An unique address that identifies a device on the internet or a local network in IPv6 format.\n"
        }
      },
      "type": "object",
      "required": [
        "fqdns",
        "ipv4s",
        "ipv6s"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getPcV2NetworkNameServerFqdn:getPcV2NetworkNameServerFqdn": {
      "properties": {
        "value": {
          "type": "string",
          "description": "- The fully qualified domain name of the host.\n"
        }
      },
      "type": "object",
      "required": [
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getPcV2NetworkNameServerIpv4:getPcV2NetworkNameServerIpv4": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "- The prefix length of the network to which this host IPv4/IPv6 address belongs.\n"
        },
        "value": {
          "type": "string",
          "description": "- The fully qualified domain name of the host.\n"
        }
      },
      "type": "object",
      "required": [
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getPcV2NetworkNameServerIpv6:getPcV2NetworkNameServerIpv6": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "- The prefix length of the network to which this host IPv4/IPv6 address belongs.\n"
        },
        "value": {
          "type": "string",
          "description": "- The fully qualified domain name of the host.\n"
        }
      },
      "type": "object",
      "required": [
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getPcV2NetworkNtpServer:getPcV2NetworkNtpServer": {
      "properties": {
        "fqdns": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetPcV2NetworkNtpServerFqdn:getPcV2NetworkNtpServerFqdn"
          },
          "description": "- A fully qualified domain name that specifies its exact location in the tree hierarchy of the Domain Name System.\n"
        },
        "ipv4s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetPcV2NetworkNtpServerIpv4:getPcV2NetworkNtpServerIpv4"
          },
          "description": "- An unique address that identifies a device on the internet or a local network in IPv4 format.\n"
        },
        "ipv6s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetPcV2NetworkNtpServerIpv6:getPcV2NetworkNtpServerIpv6"
          },
          "description": "- An unique address that identifies a device on the internet or a local network in IPv6 format.\n"
        }
      },
      "type": "object",
      "required": [
        "fqdns",
        "ipv4s",
        "ipv6s"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getPcV2NetworkNtpServerFqdn:getPcV2NetworkNtpServerFqdn": {
      "properties": {
        "value": {
          "type": "string",
          "description": "- The fully qualified domain name of the host.\n"
        }
      },
      "type": "object",
      "required": [
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getPcV2NetworkNtpServerIpv4:getPcV2NetworkNtpServerIpv4": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "- The prefix length of the network to which this host IPv4/IPv6 address belongs.\n"
        },
        "value": {
          "type": "string",
          "description": "- The fully qualified domain name of the host.\n"
        }
      },
      "type": "object",
      "required": [
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getPcV2NetworkNtpServerIpv6:getPcV2NetworkNtpServerIpv6": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "- The prefix length of the network to which this host IPv4/IPv6 address belongs.\n"
        },
        "value": {
          "type": "string",
          "description": "- The fully qualified domain name of the host.\n"
        }
      },
      "type": "object",
      "required": [
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getPcsV2Pc:getPcsV2Pc": {
      "properties": {
        "configs": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetPcsV2PcConfig:getPcsV2PcConfig"
          },
          "description": "* `extId`\n"
        },
        "extId": {
          "type": "string"
        },
        "hostingClusterExtId": {
          "type": "string"
        },
        "isRegisteredWithHostingCluster": {
          "type": "boolean"
        },
        "links": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetPcsV2PcLink:getPcsV2PcLink"
          }
        },
        "networks": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetPcsV2PcNetwork:getPcsV2PcNetwork"
          }
        },
        "nodeExtIds": {
          "type": "array",
          "items": {
            "type": "string"
          }
        },
        "shouldEnableHighAvailability": {
          "type": "boolean"
        },
        "tenantId": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "configs",
        "extId",
        "hostingClusterExtId",
        "isRegisteredWithHostingCluster",
        "links",
        "networks",
        "nodeExtIds",
        "tenantId"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getPcsV2PcConfig:getPcsV2PcConfig": {
      "properties": {
        "bootstrapConfigs": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetPcsV2PcConfigBootstrapConfig:getPcsV2PcConfigBootstrapConfig"
          }
        },
        "buildInfos": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetPcsV2PcConfigBuildInfo:getPcsV2PcConfigBuildInfo"
          }
        },
        "name": {
          "type": "string"
        },
        "resourceConfigs": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetPcsV2PcConfigResourceConfig:getPcsV2PcConfigResourceConfig"
          }
        },
        "shouldEnableLockdownMode": {
          "type": "boolean"
        },
        "size": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "bootstrapConfigs",
        "buildInfos",
        "name",
        "resourceConfigs",
        "shouldEnableLockdownMode",
        "size"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getPcsV2PcConfigBootstrapConfig:getPcsV2PcConfigBootstrapConfig": {
      "properties": {
        "environmentInfos": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetPcsV2PcConfigBootstrapConfigEnvironmentInfo:getPcsV2PcConfigBootstrapConfigEnvironmentInfo"
          }
        }
      },
      "type": "object",
      "required": [
        "environmentInfos"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getPcsV2PcConfigBootstrapConfigEnvironmentInfo:getPcsV2PcConfigBootstrapConfigEnvironmentInfo": {
      "properties": {
        "providerType": {
          "type": "string"
        },
        "provisioningType": {
          "type": "string"
        },
        "type": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "providerType",
        "provisioningType",
        "type"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getPcsV2PcConfigBuildInfo:getPcsV2PcConfigBuildInfo": {
      "properties": {
        "version": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "version"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getPcsV2PcConfigResourceConfig:getPcsV2PcConfigResourceConfig": {
      "properties": {
        "containerExtIds": {
          "type": "array",
          "items": {
            "type": "string"
          }
        },
        "dataDiskSizeBytes": {
          "type": "integer"
        },
        "memorySizeBytes": {
          "type": "integer"
        },
        "numVcpus": {
          "type": "integer"
        }
      },
      "type": "object",
      "required": [
        "containerExtIds",
        "dataDiskSizeBytes",
        "memorySizeBytes",
        "numVcpus"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getPcsV2PcLink:getPcsV2PcLink": {
      "properties": {
        "href": {
          "type": "string"
        },
        "rel": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "href",
        "rel"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getPcsV2PcNetwork:getPcsV2PcNetwork": {
      "properties": {
        "externalAddresses": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetPcsV2PcNetworkExternalAddress:getPcsV2PcNetworkExternalAddress"
          }
        },
        "externalNetworks": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetPcsV2PcNetworkExternalNetwork:getPcsV2PcNetworkExternalNetwork"
          }
        },
        "fqdn": {
          "type": "string"
        },
        "nameServers": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetPcsV2PcNetworkNameServer:getPcsV2PcNetworkNameServer"
          }
        },
        "ntpServers": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetPcsV2PcNetworkNtpServer:getPcsV2PcNetworkNtpServer"
          }
        }
      },
      "type": "object",
      "required": [
        "externalAddresses",
        "externalNetworks",
        "fqdn",
        "nameServers",
        "ntpServers"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getPcsV2PcNetworkExternalAddress:getPcsV2PcNetworkExternalAddress": {
      "properties": {
        "ipv4s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetPcsV2PcNetworkExternalAddressIpv4:getPcsV2PcNetworkExternalAddressIpv4"
          }
        },
        "ipv6s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetPcsV2PcNetworkExternalAddressIpv6:getPcsV2PcNetworkExternalAddressIpv6"
          }
        }
      },
      "type": "object",
      "required": [
        "ipv4s",
        "ipv6s"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getPcsV2PcNetworkExternalAddressIpv4:getPcsV2PcNetworkExternalAddressIpv4": {
      "properties": {
        "prefixLength": {
          "type": "integer"
        },
        "value": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getPcsV2PcNetworkExternalAddressIpv6:getPcsV2PcNetworkExternalAddressIpv6": {
      "properties": {
        "prefixLength": {
          "type": "integer"
        },
        "value": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getPcsV2PcNetworkExternalNetwork:getPcsV2PcNetworkExternalNetwork": {
      "properties": {
        "defaultGateways": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetPcsV2PcNetworkExternalNetworkDefaultGateway:getPcsV2PcNetworkExternalNetworkDefaultGateway"
          }
        },
        "ipRanges": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetPcsV2PcNetworkExternalNetworkIpRange:getPcsV2PcNetworkExternalNetworkIpRange"
          }
        },
        "networkExtId": {
          "type": "string"
        },
        "subnetMasks": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetPcsV2PcNetworkExternalNetworkSubnetMask:getPcsV2PcNetworkExternalNetworkSubnetMask"
          }
        }
      },
      "type": "object",
      "required": [
        "defaultGateways",
        "ipRanges",
        "networkExtId",
        "subnetMasks"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getPcsV2PcNetworkExternalNetworkDefaultGateway:getPcsV2PcNetworkExternalNetworkDefaultGateway": {
      "properties": {
        "fqdns": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetPcsV2PcNetworkExternalNetworkDefaultGatewayFqdn:getPcsV2PcNetworkExternalNetworkDefaultGatewayFqdn"
          }
        },
        "ipv4s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetPcsV2PcNetworkExternalNetworkDefaultGatewayIpv4:getPcsV2PcNetworkExternalNetworkDefaultGatewayIpv4"
          }
        },
        "ipv6s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetPcsV2PcNetworkExternalNetworkDefaultGatewayIpv6:getPcsV2PcNetworkExternalNetworkDefaultGatewayIpv6"
          }
        }
      },
      "type": "object",
      "required": [
        "fqdns",
        "ipv4s",
        "ipv6s"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getPcsV2PcNetworkExternalNetworkDefaultGatewayFqdn:getPcsV2PcNetworkExternalNetworkDefaultGatewayFqdn": {
      "properties": {
        "value": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getPcsV2PcNetworkExternalNetworkDefaultGatewayIpv4:getPcsV2PcNetworkExternalNetworkDefaultGatewayIpv4": {
      "properties": {
        "prefixLength": {
          "type": "integer"
        },
        "value": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getPcsV2PcNetworkExternalNetworkDefaultGatewayIpv6:getPcsV2PcNetworkExternalNetworkDefaultGatewayIpv6": {
      "properties": {
        "prefixLength": {
          "type": "integer"
        },
        "value": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getPcsV2PcNetworkExternalNetworkIpRange:getPcsV2PcNetworkExternalNetworkIpRange": {
      "properties": {
        "begins": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetPcsV2PcNetworkExternalNetworkIpRangeBegin:getPcsV2PcNetworkExternalNetworkIpRangeBegin"
          }
        },
        "ends": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetPcsV2PcNetworkExternalNetworkIpRangeEnd:getPcsV2PcNetworkExternalNetworkIpRangeEnd"
          }
        }
      },
      "type": "object",
      "required": [
        "begins",
        "ends"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getPcsV2PcNetworkExternalNetworkIpRangeBegin:getPcsV2PcNetworkExternalNetworkIpRangeBegin": {
      "properties": {
        "ipv4s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetPcsV2PcNetworkExternalNetworkIpRangeBeginIpv4:getPcsV2PcNetworkExternalNetworkIpRangeBeginIpv4"
          }
        },
        "ipv6s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetPcsV2PcNetworkExternalNetworkIpRangeBeginIpv6:getPcsV2PcNetworkExternalNetworkIpRangeBeginIpv6"
          }
        }
      },
      "type": "object",
      "required": [
        "ipv4s",
        "ipv6s"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getPcsV2PcNetworkExternalNetworkIpRangeBeginIpv4:getPcsV2PcNetworkExternalNetworkIpRangeBeginIpv4": {
      "properties": {
        "prefixLength": {
          "type": "integer"
        },
        "value": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getPcsV2PcNetworkExternalNetworkIpRangeBeginIpv6:getPcsV2PcNetworkExternalNetworkIpRangeBeginIpv6": {
      "properties": {
        "prefixLength": {
          "type": "integer"
        },
        "value": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getPcsV2PcNetworkExternalNetworkIpRangeEnd:getPcsV2PcNetworkExternalNetworkIpRangeEnd": {
      "properties": {
        "ipv4s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetPcsV2PcNetworkExternalNetworkIpRangeEndIpv4:getPcsV2PcNetworkExternalNetworkIpRangeEndIpv4"
          }
        },
        "ipv6s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetPcsV2PcNetworkExternalNetworkIpRangeEndIpv6:getPcsV2PcNetworkExternalNetworkIpRangeEndIpv6"
          }
        }
      },
      "type": "object",
      "required": [
        "ipv4s",
        "ipv6s"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getPcsV2PcNetworkExternalNetworkIpRangeEndIpv4:getPcsV2PcNetworkExternalNetworkIpRangeEndIpv4": {
      "properties": {
        "prefixLength": {
          "type": "integer"
        },
        "value": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getPcsV2PcNetworkExternalNetworkIpRangeEndIpv6:getPcsV2PcNetworkExternalNetworkIpRangeEndIpv6": {
      "properties": {
        "prefixLength": {
          "type": "integer"
        },
        "value": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getPcsV2PcNetworkExternalNetworkSubnetMask:getPcsV2PcNetworkExternalNetworkSubnetMask": {
      "properties": {
        "fqdns": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetPcsV2PcNetworkExternalNetworkSubnetMaskFqdn:getPcsV2PcNetworkExternalNetworkSubnetMaskFqdn"
          }
        },
        "ipv4s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetPcsV2PcNetworkExternalNetworkSubnetMaskIpv4:getPcsV2PcNetworkExternalNetworkSubnetMaskIpv4"
          }
        },
        "ipv6s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetPcsV2PcNetworkExternalNetworkSubnetMaskIpv6:getPcsV2PcNetworkExternalNetworkSubnetMaskIpv6"
          }
        }
      },
      "type": "object",
      "required": [
        "fqdns",
        "ipv4s",
        "ipv6s"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getPcsV2PcNetworkExternalNetworkSubnetMaskFqdn:getPcsV2PcNetworkExternalNetworkSubnetMaskFqdn": {
      "properties": {
        "value": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getPcsV2PcNetworkExternalNetworkSubnetMaskIpv4:getPcsV2PcNetworkExternalNetworkSubnetMaskIpv4": {
      "properties": {
        "prefixLength": {
          "type": "integer"
        },
        "value": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getPcsV2PcNetworkExternalNetworkSubnetMaskIpv6:getPcsV2PcNetworkExternalNetworkSubnetMaskIpv6": {
      "properties": {
        "prefixLength": {
          "type": "integer"
        },
        "value": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getPcsV2PcNetworkNameServer:getPcsV2PcNetworkNameServer": {
      "properties": {
        "fqdns": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetPcsV2PcNetworkNameServerFqdn:getPcsV2PcNetworkNameServerFqdn"
          }
        },
        "ipv4s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetPcsV2PcNetworkNameServerIpv4:getPcsV2PcNetworkNameServerIpv4"
          }
        },
        "ipv6s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetPcsV2PcNetworkNameServerIpv6:getPcsV2PcNetworkNameServerIpv6"
          }
        }
      },
      "type": "object",
      "required": [
        "fqdns",
        "ipv4s",
        "ipv6s"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getPcsV2PcNetworkNameServerFqdn:getPcsV2PcNetworkNameServerFqdn": {
      "properties": {
        "value": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getPcsV2PcNetworkNameServerIpv4:getPcsV2PcNetworkNameServerIpv4": {
      "properties": {
        "prefixLength": {
          "type": "integer"
        },
        "value": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getPcsV2PcNetworkNameServerIpv6:getPcsV2PcNetworkNameServerIpv6": {
      "properties": {
        "prefixLength": {
          "type": "integer"
        },
        "value": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getPcsV2PcNetworkNtpServer:getPcsV2PcNetworkNtpServer": {
      "properties": {
        "fqdns": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetPcsV2PcNetworkNtpServerFqdn:getPcsV2PcNetworkNtpServerFqdn"
          }
        },
        "ipv4s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetPcsV2PcNetworkNtpServerIpv4:getPcsV2PcNetworkNtpServerIpv4"
          }
        },
        "ipv6s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetPcsV2PcNetworkNtpServerIpv6:getPcsV2PcNetworkNtpServerIpv6"
          }
        }
      },
      "type": "object",
      "required": [
        "fqdns",
        "ipv4s",
        "ipv6s"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getPcsV2PcNetworkNtpServerFqdn:getPcsV2PcNetworkNtpServerFqdn": {
      "properties": {
        "value": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getPcsV2PcNetworkNtpServerIpv4:getPcsV2PcNetworkNtpServerIpv4": {
      "properties": {
        "prefixLength": {
          "type": "integer"
        },
        "value": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getPcsV2PcNetworkNtpServerIpv6:getPcsV2PcNetworkNtpServerIpv6": {
      "properties": {
        "prefixLength": {
          "type": "integer"
        },
        "value": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getPermissionCategory:getPermissionCategory": {
      "properties": {
        "name": {
          "type": "string",
          "description": "the name.\n"
        },
        "value": {
          "type": "string",
          "description": "value of the key.\n"
        }
      },
      "type": "object",
      "required": [
        "name",
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getPermissionField:getPermissionField": {
      "properties": {
        "fieldMode": {
          "type": "string",
          "description": "Allow or disallow the fields mentioned.\n"
        },
        "fieldNameLists": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "The list of fields.\n"
        }
      },
      "type": "object",
      "required": [
        "fieldMode",
        "fieldNameLists"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getPermissionsEntity:getPermissionsEntity": {
      "properties": {
        "apiVersion": {
          "type": "string",
          "description": "version of the API\n"
        },
        "categories": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetPermissionsEntityCategory:getPermissionsEntityCategory"
          },
          "description": "The categories for this resource.\n"
        },
        "description": {
          "type": "string",
          "description": "A description for the permission.\n"
        },
        "fields": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetPermissionsEntityField:getPermissionsEntityField"
          },
          "description": ". The fields that can/cannot be accessed during the specified operation.<span pulumi-lang-nodejs=\" fieldNameList \" pulumi-lang-dotnet=\" FieldNameList \" pulumi-lang-go=\" fieldNameList \" pulumi-lang-python=\" field_name_list \" pulumi-lang-yaml=\" fieldNameList \" pulumi-lang-java=\" fieldNameList \"> field_name_list </span>will be a list of fields. e.g. if<span pulumi-lang-nodejs=\" fieldMode \" pulumi-lang-dotnet=\" FieldMode \" pulumi-lang-go=\" fieldMode \" pulumi-lang-python=\" field_mode \" pulumi-lang-yaml=\" fieldMode \" pulumi-lang-java=\" fieldMode \"> field_mode </span>= disallowed,<span pulumi-lang-nodejs=\" fieldNameList \" pulumi-lang-dotnet=\" FieldNameList \" pulumi-lang-go=\" fieldNameList \" pulumi-lang-python=\" field_name_list \" pulumi-lang-yaml=\" fieldNameList \" pulumi-lang-java=\" fieldNameList \"> field_name_list </span>= [“xyz”] then the list of allowed fields is ALL fields minus xyz. Seee Field for more info.\n"
        },
        "kind": {
          "type": "string",
          "description": "(Required) The kind name (Default value: <span pulumi-lang-nodejs=\"`project`\" pulumi-lang-dotnet=\"`Project`\" pulumi-lang-go=\"`project`\" pulumi-lang-python=\"`project`\" pulumi-lang-yaml=\"`project`\" pulumi-lang-java=\"`project`\">`project`</span>).\n"
        },
        "metadata": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          },
          "description": "The permission kind metadata.\n"
        },
        "name": {
          "type": "string",
          "description": "the name.\n"
        },
        "operation": {
          "type": "string",
          "description": "The operation that is being performed on a given kind.\n"
        },
        "ownerReference": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          },
          "description": "The reference to a user.\n"
        },
        "projectReference": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          },
          "description": "The reference to a project.\n"
        },
        "state": {
          "type": "string",
          "description": "The state of the permission.\n"
        }
      },
      "type": "object",
      "required": [
        "apiVersion",
        "categories",
        "description",
        "fields",
        "kind",
        "metadata",
        "name",
        "operation",
        "ownerReference",
        "projectReference",
        "state"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getPermissionsEntityCategory:getPermissionsEntityCategory": {
      "properties": {
        "name": {
          "type": "string",
          "description": "the name.\n"
        },
        "value": {
          "type": "string",
          "description": "value of the key.\n"
        }
      },
      "type": "object",
      "required": [
        "name",
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getPermissionsEntityField:getPermissionsEntityField": {
      "properties": {
        "fieldMode": {
          "type": "string",
          "description": "Allow or disallow the fields mentioned.\n"
        },
        "fieldNameLists": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "The list of fields.\n"
        }
      },
      "type": "object",
      "required": [
        "fieldMode",
        "fieldNameLists"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getPermissionsMetadata:getPermissionsMetadata": {
      "properties": {
        "filter": {
          "type": "string"
        },
        "kind": {
          "type": "string",
          "description": "(Required) The kind name (Default value: <span pulumi-lang-nodejs=\"`project`\" pulumi-lang-dotnet=\"`Project`\" pulumi-lang-go=\"`project`\" pulumi-lang-python=\"`project`\" pulumi-lang-yaml=\"`project`\" pulumi-lang-java=\"`project`\">`project`</span>).\n"
        },
        "length": {
          "type": "integer"
        },
        "offset": {
          "type": "integer"
        },
        "sortAttribute": {
          "type": "string"
        },
        "sortOrder": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "filter",
        "kind",
        "length",
        "offset",
        "sortAttribute",
        "sortOrder"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getProjectAccountReferenceList:getProjectAccountReferenceList": {
      "properties": {
        "kind": {
          "type": "string",
          "description": "(Required) The kind name (Default value: <span pulumi-lang-nodejs=\"`project`\" pulumi-lang-dotnet=\"`Project`\" pulumi-lang-go=\"`project`\" pulumi-lang-python=\"`project`\" pulumi-lang-yaml=\"`project`\" pulumi-lang-java=\"`project`\">`project`</span>).\n"
        },
        "name": {
          "type": "string",
          "description": "the name.\n"
        },
        "uuid": {
          "type": "string",
          "description": "(Required) the UUID.\n"
        }
      },
      "type": "object",
      "required": [
        "kind",
        "name",
        "uuid"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getProjectAcp:getProjectAcp": {
      "properties": {
        "contextFilterLists": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetProjectAcpContextFilterList:getProjectAcpContextFilterList"
          },
          "description": "The list of context filters. These are OR filters. The scope-expression-list defines the context, and the filter works in conjunction with the entity-expression-list.\n"
        },
        "description": {
          "type": "string",
          "description": "Description of ACP\n"
        },
        "metadata": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          }
        },
        "name": {
          "type": "string",
          "description": "the name.\n"
        },
        "roleReferences": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetProjectAcpRoleReference:getProjectAcpRoleReference"
          },
          "description": "Reference to role.\n"
        },
        "userGroupReferenceLists": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetProjectAcpUserGroupReferenceList:getProjectAcpUserGroupReferenceList"
          },
          "description": "List of Reference of users groups.\n"
        },
        "userReferenceLists": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetProjectAcpUserReferenceList:getProjectAcpUserReferenceList"
          },
          "description": "List of Reference of users.\n"
        }
      },
      "type": "object",
      "required": [
        "contextFilterLists",
        "description",
        "metadata",
        "name",
        "roleReferences",
        "userGroupReferenceLists",
        "userReferenceLists"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getProjectAcpContextFilterList:getProjectAcpContextFilterList": {
      "properties": {
        "entityFilterExpressionLists": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetProjectAcpContextFilterListEntityFilterExpressionList:getProjectAcpContextFilterListEntityFilterExpressionList"
          },
          "description": "(Required) A list of Entity filter expressions.\n"
        },
        "scopeFilterExpressionLists": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetProjectAcpContextFilterListScopeFilterExpressionList:getProjectAcpContextFilterListScopeFilterExpressionList"
          },
          "description": "- (Optional) Filter the scope of an Access Control Policy.\n"
        }
      },
      "type": "object",
      "required": [
        "entityFilterExpressionLists"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getProjectAcpContextFilterListEntityFilterExpressionList:getProjectAcpContextFilterListEntityFilterExpressionList": {
      "properties": {
        "leftHandSideEntityType": {
          "type": "string",
          "description": "- (Optional)  The LHS of the filter expression - the entity type.\n"
        },
        "operator": {
          "type": "string",
          "description": "- (Required) The operator in the filter expression.\n"
        },
        "rightHandSides": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetProjectAcpContextFilterListEntityFilterExpressionListRightHandSide:getProjectAcpContextFilterListEntityFilterExpressionListRightHandSide"
          },
          "description": "- (Required) The right hand side (RHS) of an scope expression.\n"
        }
      },
      "type": "object",
      "required": [
        "leftHandSideEntityType",
        "operator",
        "rightHandSides"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getProjectAcpContextFilterListEntityFilterExpressionListRightHandSide:getProjectAcpContextFilterListEntityFilterExpressionListRightHandSide": {
      "properties": {
        "categories": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetProjectAcpContextFilterListEntityFilterExpressionListRightHandSideCategory:getProjectAcpContextFilterListEntityFilterExpressionListRightHandSideCategory"
          },
          "description": "- (Optional) The category values represented as a dictionary of key > list of values.\n"
        },
        "collection": {
          "type": "string",
          "description": "- (Optional)  A representative term for supported groupings of entities. ALL = All the entities of a given kind.\n"
        },
        "uuidLists": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "- (Optional) The explicit list of UUIDs for the given kind.\n"
        }
      },
      "type": "object",
      "required": [
        "categories",
        "collection",
        "uuidLists"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getProjectAcpContextFilterListEntityFilterExpressionListRightHandSideCategory:getProjectAcpContextFilterListEntityFilterExpressionListRightHandSideCategory": {
      "properties": {
        "name": {
          "type": "string",
          "description": "the name.\n"
        },
        "values": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "value of the key.\n"
        }
      },
      "type": "object",
      "required": [
        "name",
        "values"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getProjectAcpContextFilterListScopeFilterExpressionList:getProjectAcpContextFilterListScopeFilterExpressionList": {
      "properties": {
        "leftHandSide": {
          "type": "string",
          "description": "- (Optional)  The LHS of the filter expression - the scope type.\n"
        },
        "operator": {
          "type": "string",
          "description": "- (Required) The operator in the filter expression.\n"
        },
        "rightHandSides": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetProjectAcpContextFilterListScopeFilterExpressionListRightHandSide:getProjectAcpContextFilterListScopeFilterExpressionListRightHandSide"
          },
          "description": "- (Required) The right hand side (RHS) of an scope expression.\n"
        }
      },
      "type": "object",
      "required": [
        "leftHandSide",
        "operator",
        "rightHandSides"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getProjectAcpContextFilterListScopeFilterExpressionListRightHandSide:getProjectAcpContextFilterListScopeFilterExpressionListRightHandSide": {
      "properties": {
        "categories": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetProjectAcpContextFilterListScopeFilterExpressionListRightHandSideCategory:getProjectAcpContextFilterListScopeFilterExpressionListRightHandSideCategory"
          },
          "description": "- (Optional) The category values represented as a dictionary of key > list of values.\n"
        },
        "collection": {
          "type": "string",
          "description": "- (Optional)  A representative term for supported groupings of entities. ALL = All the entities of a given kind.\n"
        },
        "uuidLists": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "- (Optional) The explicit list of UUIDs for the given kind.\n"
        }
      },
      "type": "object",
      "required": [
        "categories",
        "collection",
        "uuidLists"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getProjectAcpContextFilterListScopeFilterExpressionListRightHandSideCategory:getProjectAcpContextFilterListScopeFilterExpressionListRightHandSideCategory": {
      "properties": {
        "name": {
          "type": "string",
          "description": "the name.\n"
        },
        "values": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "value of the key.\n"
        }
      },
      "type": "object",
      "required": [
        "name",
        "values"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getProjectAcpRoleReference:getProjectAcpRoleReference": {
      "properties": {
        "kind": {
          "type": "string",
          "description": "(Required) The kind name (Default value: <span pulumi-lang-nodejs=\"`project`\" pulumi-lang-dotnet=\"`Project`\" pulumi-lang-go=\"`project`\" pulumi-lang-python=\"`project`\" pulumi-lang-yaml=\"`project`\" pulumi-lang-java=\"`project`\">`project`</span>).\n"
        },
        "name": {
          "type": "string",
          "description": "the name.\n"
        },
        "uuid": {
          "type": "string",
          "description": "(Required) the UUID.\n"
        }
      },
      "type": "object",
      "required": [
        "kind",
        "name",
        "uuid"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getProjectAcpUserGroupReferenceList:getProjectAcpUserGroupReferenceList": {
      "properties": {
        "kind": {
          "type": "string",
          "description": "(Required) The kind name (Default value: <span pulumi-lang-nodejs=\"`project`\" pulumi-lang-dotnet=\"`Project`\" pulumi-lang-go=\"`project`\" pulumi-lang-python=\"`project`\" pulumi-lang-yaml=\"`project`\" pulumi-lang-java=\"`project`\">`project`</span>).\n"
        },
        "name": {
          "type": "string",
          "description": "the name.\n"
        },
        "uuid": {
          "type": "string",
          "description": "(Required) the UUID.\n"
        }
      },
      "type": "object",
      "required": [
        "kind",
        "name",
        "uuid"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getProjectAcpUserReferenceList:getProjectAcpUserReferenceList": {
      "properties": {
        "kind": {
          "type": "string",
          "description": "(Required) The kind name (Default value: <span pulumi-lang-nodejs=\"`project`\" pulumi-lang-dotnet=\"`Project`\" pulumi-lang-go=\"`project`\" pulumi-lang-python=\"`project`\" pulumi-lang-yaml=\"`project`\" pulumi-lang-java=\"`project`\">`project`</span>).\n"
        },
        "name": {
          "type": "string",
          "description": "the name.\n"
        },
        "uuid": {
          "type": "string",
          "description": "(Required) the UUID.\n"
        }
      },
      "type": "object",
      "required": [
        "kind",
        "name",
        "uuid"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getProjectCategory:getProjectCategory": {
      "properties": {
        "name": {
          "type": "string",
          "description": "the name.\n"
        },
        "value": {
          "type": "string",
          "description": "value of the key.\n"
        }
      },
      "type": "object",
      "required": [
        "name",
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getProjectClusterReferenceList:getProjectClusterReferenceList": {
      "properties": {
        "kind": {
          "type": "string",
          "description": "(Required) The kind name (Default value: <span pulumi-lang-nodejs=\"`project`\" pulumi-lang-dotnet=\"`Project`\" pulumi-lang-go=\"`project`\" pulumi-lang-python=\"`project`\" pulumi-lang-yaml=\"`project`\" pulumi-lang-java=\"`project`\">`project`</span>).\n"
        },
        "name": {
          "type": "string",
          "description": "the name.\n"
        },
        "uuid": {
          "type": "string",
          "description": "(Required) the UUID.\n"
        }
      },
      "type": "object",
      "required": [
        "kind",
        "name",
        "uuid"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getProjectDefaultEnvironmentReference:getProjectDefaultEnvironmentReference": {
      "properties": {
        "kind": {
          "type": "string",
          "description": "(Optional) The kind name. Default value is <span pulumi-lang-nodejs=\"`environment`\" pulumi-lang-dotnet=\"`Environment`\" pulumi-lang-go=\"`environment`\" pulumi-lang-python=\"`environment`\" pulumi-lang-yaml=\"`environment`\" pulumi-lang-java=\"`environment`\">`environment`</span>\n"
        },
        "name": {
          "type": "string",
          "description": "(Optional/Computed) The name of a environment.\n"
        },
        "uuid": {
          "type": "string",
          "description": "(Required) The UUID of a environment\n"
        }
      },
      "type": "object",
      "required": [
        "kind",
        "name",
        "uuid"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getProjectEnvironmentReferenceList:getProjectEnvironmentReferenceList": {
      "properties": {
        "kind": {
          "type": "string",
          "description": "(Required) The kind name (Default value: <span pulumi-lang-nodejs=\"`project`\" pulumi-lang-dotnet=\"`Project`\" pulumi-lang-go=\"`project`\" pulumi-lang-python=\"`project`\" pulumi-lang-yaml=\"`project`\" pulumi-lang-java=\"`project`\">`project`</span>).\n"
        },
        "name": {
          "type": "string",
          "description": "the name.\n"
        },
        "uuid": {
          "type": "string",
          "description": "(Required) the UUID.\n"
        }
      },
      "type": "object",
      "required": [
        "kind",
        "name",
        "uuid"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getProjectExternalNetworkList:getProjectExternalNetworkList": {
      "properties": {
        "name": {
          "type": "string",
          "description": "the name.\n"
        },
        "uuid": {
          "type": "string",
          "description": "(Required) the UUID.\n"
        }
      },
      "type": "object",
      "required": [
        "name",
        "uuid"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getProjectExternalUserGroupReferenceList:getProjectExternalUserGroupReferenceList": {
      "properties": {
        "kind": {
          "type": "string",
          "description": "(Required) The kind name (Default value: <span pulumi-lang-nodejs=\"`project`\" pulumi-lang-dotnet=\"`Project`\" pulumi-lang-go=\"`project`\" pulumi-lang-python=\"`project`\" pulumi-lang-yaml=\"`project`\" pulumi-lang-java=\"`project`\">`project`</span>).\n"
        },
        "name": {
          "type": "string",
          "description": "the name.\n"
        },
        "uuid": {
          "type": "string",
          "description": "(Required) the UUID.\n"
        }
      },
      "type": "object",
      "required": [
        "kind",
        "name",
        "uuid"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getProjectResourceDomain:getProjectResourceDomain": {
      "properties": {
        "resources": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetProjectResourceDomainResource:getProjectResourceDomainResource"
          },
          "description": "Array of the utilization/limit for resource types\n* `resource_domain.resources.#.limit` The resource consumption limit (unspecified is unlimited)\n* `resource_domain.resources.#.resource_type` The type of resource (for example storage, CPUs)\n* `resource_domain.resources.#.units` - The units of the resource type\n* `resource_domain.resources.#.value` - The amount of resource consumed\n"
        }
      },
      "type": "object",
      "required": [
        "resources"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getProjectResourceDomainResource:getProjectResourceDomainResource": {
      "properties": {
        "limit": {
          "type": "integer"
        },
        "resourceType": {
          "type": "string"
        },
        "units": {
          "type": "string"
        },
        "value": {
          "type": "integer",
          "description": "value of the key.\n"
        }
      },
      "type": "object",
      "required": [
        "limit",
        "resourceType",
        "units",
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getProjectSubnetReferenceList:getProjectSubnetReferenceList": {
      "properties": {
        "kind": {
          "type": "string",
          "description": "(Required) The kind name (Default value: <span pulumi-lang-nodejs=\"`project`\" pulumi-lang-dotnet=\"`Project`\" pulumi-lang-go=\"`project`\" pulumi-lang-python=\"`project`\" pulumi-lang-yaml=\"`project`\" pulumi-lang-java=\"`project`\">`project`</span>).\n"
        },
        "name": {
          "type": "string",
          "description": "the name.\n"
        },
        "uuid": {
          "type": "string",
          "description": "(Required) the UUID.\n"
        }
      },
      "type": "object",
      "required": [
        "kind",
        "name",
        "uuid"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getProjectTunnelReferenceList:getProjectTunnelReferenceList": {
      "properties": {
        "kind": {
          "type": "string",
          "description": "(Required) The kind name (Default value: <span pulumi-lang-nodejs=\"`project`\" pulumi-lang-dotnet=\"`Project`\" pulumi-lang-go=\"`project`\" pulumi-lang-python=\"`project`\" pulumi-lang-yaml=\"`project`\" pulumi-lang-java=\"`project`\">`project`</span>).\n"
        },
        "name": {
          "type": "string",
          "description": "the name.\n"
        },
        "uuid": {
          "type": "string",
          "description": "(Required) the UUID.\n"
        }
      },
      "type": "object",
      "required": [
        "kind",
        "name",
        "uuid"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getProjectUserReferenceList:getProjectUserReferenceList": {
      "properties": {
        "kind": {
          "type": "string",
          "description": "(Required) The kind name (Default value: <span pulumi-lang-nodejs=\"`project`\" pulumi-lang-dotnet=\"`Project`\" pulumi-lang-go=\"`project`\" pulumi-lang-python=\"`project`\" pulumi-lang-yaml=\"`project`\" pulumi-lang-java=\"`project`\">`project`</span>).\n"
        },
        "name": {
          "type": "string",
          "description": "the name.\n"
        },
        "uuid": {
          "type": "string",
          "description": "(Required) the UUID.\n"
        }
      },
      "type": "object",
      "required": [
        "kind",
        "name",
        "uuid"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getProjectVpcReferenceList:getProjectVpcReferenceList": {
      "properties": {
        "kind": {
          "type": "string",
          "description": "(Required) The kind name (Default value: <span pulumi-lang-nodejs=\"`project`\" pulumi-lang-dotnet=\"`Project`\" pulumi-lang-go=\"`project`\" pulumi-lang-python=\"`project`\" pulumi-lang-yaml=\"`project`\" pulumi-lang-java=\"`project`\">`project`</span>).\n"
        },
        "name": {
          "type": "string",
          "description": "the name.\n"
        },
        "uuid": {
          "type": "string",
          "description": "(Required) the UUID.\n"
        }
      },
      "type": "object",
      "required": [
        "kind",
        "name",
        "uuid"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getProjectsEntity:getProjectsEntity": {
      "properties": {
        "accountReferenceLists": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetProjectsEntityAccountReferenceList:getProjectsEntityAccountReferenceList"
          },
          "description": "List of accounts associated with the project.\n* `account_reference_list.#.kind` - The kind name. Default value is <span pulumi-lang-nodejs=\"`account`\" pulumi-lang-dotnet=\"`Account`\" pulumi-lang-go=\"`account`\" pulumi-lang-python=\"`account`\" pulumi-lang-yaml=\"`account`\" pulumi-lang-java=\"`account`\">`account`</span>\n* `account_reference_list.#.uuid` - The UUID of an account.\n* `account_reference_list.#.name` - The name of an account.\n"
        },
        "apiVersion": {
          "type": "string",
          "description": "version of the API\n"
        },
        "categories": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetProjectsEntityCategory:getProjectsEntityCategory"
          }
        },
        "defaultSubnetReference": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          },
          "description": "Reference to a subnet.\n"
        },
        "description": {
          "type": "string",
          "description": "A description for project.\n"
        },
        "environmentReferenceLists": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetProjectsEntityEnvironmentReferenceList:getProjectsEntityEnvironmentReferenceList"
          },
          "description": "List of environments associated with the project.\n* `environment_reference_list.#.kind` - The kind name. Default value is <span pulumi-lang-nodejs=\"`environment`\" pulumi-lang-dotnet=\"`Environment`\" pulumi-lang-go=\"`environment`\" pulumi-lang-python=\"`environment`\" pulumi-lang-yaml=\"`environment`\" pulumi-lang-java=\"`environment`\">`environment`</span>\n* `environment_reference_list.#.uuid` - The UUID of an environment.\n* `environment_reference_list.#.name` - The name of an environment.\n"
        },
        "externalNetworkLists": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetProjectsEntityExternalNetworkList:getProjectsEntityExternalNetworkList"
          },
          "description": "List of external networks associated with the project.\n* `external_network_list.#.uuid` - The UUID of a network.\n* `external_network_list.#.name` - The name of a network.\n"
        },
        "externalUserGroupReferenceLists": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetProjectsEntityExternalUserGroupReferenceList:getProjectsEntityExternalUserGroupReferenceList"
          },
          "description": "List of directory service user groups. These groups are not managed by Nutanix.\n* `external_user_group_reference_list.#.kind` - The kind name. Default value is <span pulumi-lang-nodejs=\"`userGroup`\" pulumi-lang-dotnet=\"`UserGroup`\" pulumi-lang-go=\"`userGroup`\" pulumi-lang-python=\"`user_group`\" pulumi-lang-yaml=\"`userGroup`\" pulumi-lang-java=\"`userGroup`\">`user_group`</span>\n* `external_user_group_reference_list.#.uuid` - The UUID of a<span pulumi-lang-nodejs=\" userGroup\n\" pulumi-lang-dotnet=\" UserGroup\n\" pulumi-lang-go=\" userGroup\n\" pulumi-lang-python=\" user_group\n\" pulumi-lang-yaml=\" userGroup\n\" pulumi-lang-java=\" userGroup\n\"> user_group\n</span>* `external_user_group_reference_list.#.name` - The name of a user_group\n"
        },
        "isDefault": {
          "type": "boolean"
        },
        "metadata": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          }
        },
        "name": {
          "type": "string",
          "description": "(Optional) the name.\n"
        },
        "ownerReference": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          }
        },
        "projectReference": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          }
        },
        "resourceDomains": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetProjectsEntityResourceDomain:getProjectsEntityResourceDomain"
          },
          "description": "The status for a resource domain (limits and values)\n"
        },
        "state": {
          "type": "string"
        },
        "subnetReferenceLists": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetProjectsEntitySubnetReferenceList:getProjectsEntitySubnetReferenceList"
          },
          "description": "List of subnets for the project.\n* `subnet_reference_list.#.kind` - The kind name. Default value is <span pulumi-lang-nodejs=\"`subnet`\" pulumi-lang-dotnet=\"`Subnet`\" pulumi-lang-go=\"`subnet`\" pulumi-lang-python=\"`subnet`\" pulumi-lang-yaml=\"`subnet`\" pulumi-lang-java=\"`subnet`\">`subnet`</span>\n* `subnet_reference_list.#.uuid` - The UUID of a subnet\n* `subnet_reference_list.#.name` - The name of a subnet.\n"
        },
        "userReferenceLists": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetProjectsEntityUserReferenceList:getProjectsEntityUserReferenceList"
          },
          "description": "List of users in the project.\n* `user_reference_list.#.kind` - The kind name. Default value is <span pulumi-lang-nodejs=\"`user`\" pulumi-lang-dotnet=\"`User`\" pulumi-lang-go=\"`user`\" pulumi-lang-python=\"`user`\" pulumi-lang-yaml=\"`user`\" pulumi-lang-java=\"`user`\">`user`</span>\n* `user_reference_list.#.uuid` - The UUID of a user\n* `user_reference_list.#.name` - The name of a user.\n"
        }
      },
      "type": "object",
      "required": [
        "accountReferenceLists",
        "apiVersion",
        "categories",
        "defaultSubnetReference",
        "description",
        "environmentReferenceLists",
        "externalNetworkLists",
        "externalUserGroupReferenceLists",
        "isDefault",
        "metadata",
        "name",
        "ownerReference",
        "projectReference",
        "resourceDomains",
        "state",
        "subnetReferenceLists",
        "userReferenceLists"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getProjectsEntityAccountReferenceList:getProjectsEntityAccountReferenceList": {
      "properties": {
        "kind": {
          "type": "string",
          "description": "(Required) The kind name (Default value: <span pulumi-lang-nodejs=\"`project`\" pulumi-lang-dotnet=\"`Project`\" pulumi-lang-go=\"`project`\" pulumi-lang-python=\"`project`\" pulumi-lang-yaml=\"`project`\" pulumi-lang-java=\"`project`\">`project`</span>).\n"
        },
        "name": {
          "type": "string",
          "description": "(Optional) the name.\n"
        },
        "uuid": {
          "type": "string",
          "description": "(Required) the UUID.\n"
        }
      },
      "type": "object",
      "required": [
        "kind",
        "name",
        "uuid"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getProjectsEntityCategory:getProjectsEntityCategory": {
      "properties": {
        "name": {
          "type": "string",
          "description": "(Optional) the name.\n"
        },
        "value": {
          "type": "string",
          "description": "value of the key.\n"
        }
      },
      "type": "object",
      "required": [
        "name",
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getProjectsEntityEnvironmentReferenceList:getProjectsEntityEnvironmentReferenceList": {
      "properties": {
        "kind": {
          "type": "string",
          "description": "(Required) The kind name (Default value: <span pulumi-lang-nodejs=\"`project`\" pulumi-lang-dotnet=\"`Project`\" pulumi-lang-go=\"`project`\" pulumi-lang-python=\"`project`\" pulumi-lang-yaml=\"`project`\" pulumi-lang-java=\"`project`\">`project`</span>).\n"
        },
        "name": {
          "type": "string",
          "description": "(Optional) the name.\n"
        },
        "uuid": {
          "type": "string",
          "description": "(Required) the UUID.\n"
        }
      },
      "type": "object",
      "required": [
        "kind",
        "name",
        "uuid"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getProjectsEntityExternalNetworkList:getProjectsEntityExternalNetworkList": {
      "properties": {
        "name": {
          "type": "string",
          "description": "(Optional) the name.\n"
        },
        "uuid": {
          "type": "string",
          "description": "(Required) the UUID.\n"
        }
      },
      "type": "object",
      "required": [
        "name",
        "uuid"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getProjectsEntityExternalUserGroupReferenceList:getProjectsEntityExternalUserGroupReferenceList": {
      "properties": {
        "kind": {
          "type": "string",
          "description": "(Required) The kind name (Default value: <span pulumi-lang-nodejs=\"`project`\" pulumi-lang-dotnet=\"`Project`\" pulumi-lang-go=\"`project`\" pulumi-lang-python=\"`project`\" pulumi-lang-yaml=\"`project`\" pulumi-lang-java=\"`project`\">`project`</span>).\n"
        },
        "name": {
          "type": "string",
          "description": "(Optional) the name.\n"
        },
        "uuid": {
          "type": "string",
          "description": "(Required) the UUID.\n"
        }
      },
      "type": "object",
      "required": [
        "kind",
        "name",
        "uuid"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getProjectsEntityResourceDomain:getProjectsEntityResourceDomain": {
      "properties": {
        "resources": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetProjectsEntityResourceDomainResource:getProjectsEntityResourceDomainResource"
          },
          "description": "Array of the utilization/limit for resource types\n* `resource_domain.resources.#.limit` The resource consumption limit (unspecified is unlimited)\n* `resource_domain.resources.#.resource_type` The type of resource (for example storage, CPUs)\n* `resource_domain.resources.#.units` - The units of the resource type\n* `resource_domain.resources.#.value` - The amount of resource consumed\n"
        }
      },
      "type": "object",
      "required": [
        "resources"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getProjectsEntityResourceDomainResource:getProjectsEntityResourceDomainResource": {
      "properties": {
        "limit": {
          "type": "integer"
        },
        "resourceType": {
          "type": "string"
        },
        "units": {
          "type": "string"
        },
        "value": {
          "type": "integer",
          "description": "value of the key.\n"
        }
      },
      "type": "object",
      "required": [
        "limit",
        "resourceType",
        "units",
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getProjectsEntitySubnetReferenceList:getProjectsEntitySubnetReferenceList": {
      "properties": {
        "kind": {
          "type": "string",
          "description": "(Required) The kind name (Default value: <span pulumi-lang-nodejs=\"`project`\" pulumi-lang-dotnet=\"`Project`\" pulumi-lang-go=\"`project`\" pulumi-lang-python=\"`project`\" pulumi-lang-yaml=\"`project`\" pulumi-lang-java=\"`project`\">`project`</span>).\n"
        },
        "name": {
          "type": "string",
          "description": "(Optional) the name.\n"
        },
        "uuid": {
          "type": "string",
          "description": "(Required) the UUID.\n"
        }
      },
      "type": "object",
      "required": [
        "kind",
        "name",
        "uuid"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getProjectsEntityUserReferenceList:getProjectsEntityUserReferenceList": {
      "properties": {
        "kind": {
          "type": "string",
          "description": "(Required) The kind name (Default value: <span pulumi-lang-nodejs=\"`project`\" pulumi-lang-dotnet=\"`Project`\" pulumi-lang-go=\"`project`\" pulumi-lang-python=\"`project`\" pulumi-lang-yaml=\"`project`\" pulumi-lang-java=\"`project`\">`project`</span>).\n"
        },
        "name": {
          "type": "string",
          "description": "(Optional) the name.\n"
        },
        "uuid": {
          "type": "string",
          "description": "(Required) the UUID.\n"
        }
      },
      "type": "object",
      "required": [
        "kind",
        "name",
        "uuid"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getProtectedResourceV2Link:getProtectedResourceV2Link": {
      "properties": {
        "href": {
          "type": "string",
          "description": "- The URL at which the entity described by the link can be accessed.\n"
        },
        "rel": {
          "type": "string",
          "description": "- A name that identifies the relationship of the link to the object that is returned by the URL. The unique value of \"self\" identifies the URL for the object.\n"
        }
      },
      "type": "object",
      "required": [
        "href",
        "rel"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getProtectedResourceV2ReplicationState:getProtectedResourceV2ReplicationState": {
      "properties": {
        "protectionPolicyExtId": {
          "type": "string",
          "description": "The external identifier of the Protection policy associated with the protected resource.\n"
        },
        "recoveryPointObjectiveSeconds": {
          "type": "integer",
          "description": "The recovery point objective of the schedule in seconds.\n"
        },
        "replicationStatus": {
          "type": "string",
          "description": "Status of replication to a specified target site. Possible values are:\n- `IN_SYNC`: The specified recovery point objective is met on the target site and failover can be performed.\n- `SYNCING`: The system is trying to meet the specified recovery point objective for the target site via ongoing replications and failover can't yet be performed.\n- `OUT_OF_SYNC`: The replication schedule is disabled and there are no ongoing replications. Manual action might be needed by the user to meet the recovery point objective.\n"
        },
        "targetSiteReferences": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetProtectedResourceV2ReplicationStateTargetSiteReference:getProtectedResourceV2ReplicationStateTargetSiteReference"
          },
          "description": "Details about the data protection site in the Prism Central.\n"
        }
      },
      "type": "object",
      "required": [
        "protectionPolicyExtId",
        "recoveryPointObjectiveSeconds",
        "replicationStatus",
        "targetSiteReferences"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getProtectedResourceV2ReplicationStateTargetSiteReference:getProtectedResourceV2ReplicationStateTargetSiteReference": {
      "properties": {
        "clusterExtId": {
          "type": "string",
          "description": "External identifier of the cluster.\n"
        },
        "mgmtClusterExtId": {
          "type": "string",
          "description": "External identifier of the Prism Central.\n"
        }
      },
      "type": "object",
      "required": [
        "clusterExtId",
        "mgmtClusterExtId"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getProtectedResourceV2SiteProtectionInfo:getProtectedResourceV2SiteProtectionInfo": {
      "properties": {
        "locationReferences": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetProtectedResourceV2SiteProtectionInfoLocationReference:getProtectedResourceV2SiteProtectionInfoLocationReference"
          },
          "description": "Details about the data protection site in the Prism Central.\n"
        },
        "recoveryInfos": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetProtectedResourceV2SiteProtectionInfoRecoveryInfo:getProtectedResourceV2SiteProtectionInfoRecoveryInfo"
          },
          "description": "The restorable time range details that can be used to recover the protected resource.\n"
        },
        "synchronousReplicationRole": {
          "type": "string",
          "description": "Synchronous Replication role related information of the protected resource. Possible values are:\n- `DECOUPLED`: VM is no longer in Synchronous Replication, and all the actions are blocked on VM, except a delete operation.\n- `SECONDARY`: This is the target site for VM in Synchronous Replication.\n- `INDEPENDENT`: VM is no longer in Synchronous Replication, and not replicating to the configured recovery cluster.\n- `PRIMARY`: VM is in Synchronous Replication, and is active on the primary site.\n"
        }
      },
      "type": "object",
      "required": [
        "locationReferences",
        "recoveryInfos",
        "synchronousReplicationRole"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getProtectedResourceV2SiteProtectionInfoLocationReference:getProtectedResourceV2SiteProtectionInfoLocationReference": {
      "properties": {
        "clusterExtId": {
          "type": "string",
          "description": "External identifier of the cluster.\n"
        },
        "mgmtClusterExtId": {
          "type": "string",
          "description": "External identifier of the Prism Central.\n"
        }
      },
      "type": "object",
      "required": [
        "clusterExtId",
        "mgmtClusterExtId"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getProtectedResourceV2SiteProtectionInfoRecoveryInfo:getProtectedResourceV2SiteProtectionInfoRecoveryInfo": {
      "properties": {
        "restorableTimeRanges": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetProtectedResourceV2SiteProtectionInfoRecoveryInfoRestorableTimeRange:getProtectedResourceV2SiteProtectionInfoRecoveryInfoRestorableTimeRange"
          },
          "description": "The restorable time range details that can be used to recover the protected resource.\n"
        }
      },
      "type": "object",
      "required": [
        "restorableTimeRanges"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getProtectedResourceV2SiteProtectionInfoRecoveryInfoRestorableTimeRange:getProtectedResourceV2SiteProtectionInfoRecoveryInfoRestorableTimeRange": {
      "properties": {
        "endTime": {
          "type": "string",
          "description": "UTC date and time in ISO 8601 format representing the time when the restorable time range for the entity starts.\n"
        },
        "startTime": {
          "type": "string",
          "description": "UTC date and time in ISO 8601 format representing the time when the restorable time range for the entity starts.\n"
        }
      },
      "type": "object",
      "required": [
        "endTime",
        "startTime"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getProtectedResourceV2SourceSiteReference:getProtectedResourceV2SourceSiteReference": {
      "properties": {
        "clusterExtId": {
          "type": "string",
          "description": "External identifier of the cluster.\n"
        },
        "mgmtClusterExtId": {
          "type": "string",
          "description": "External identifier of the Prism Central.\n"
        }
      },
      "type": "object",
      "required": [
        "clusterExtId",
        "mgmtClusterExtId"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getProtectionPoliciesV2ProtectionPolicy:getProtectionPoliciesV2ProtectionPolicy": {
      "properties": {
        "categoryIds": {
          "type": "array",
          "items": {
            "type": "string"
          }
        },
        "description": {
          "type": "string"
        },
        "extId": {
          "type": "string"
        },
        "isApprovalPolicyNeeded": {
          "type": "boolean"
        },
        "links": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetProtectionPoliciesV2ProtectionPolicyLink:getProtectionPoliciesV2ProtectionPolicyLink"
          }
        },
        "name": {
          "type": "string"
        },
        "ownerExtId": {
          "type": "string"
        },
        "replicationConfigurations": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetProtectionPoliciesV2ProtectionPolicyReplicationConfiguration:getProtectionPoliciesV2ProtectionPolicyReplicationConfiguration"
          }
        },
        "replicationLocations": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetProtectionPoliciesV2ProtectionPolicyReplicationLocation:getProtectionPoliciesV2ProtectionPolicyReplicationLocation"
          }
        },
        "tenantId": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "categoryIds",
        "description",
        "extId",
        "isApprovalPolicyNeeded",
        "links",
        "name",
        "ownerExtId",
        "replicationConfigurations",
        "replicationLocations",
        "tenantId"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getProtectionPoliciesV2ProtectionPolicyLink:getProtectionPoliciesV2ProtectionPolicyLink": {
      "properties": {
        "href": {
          "type": "string"
        },
        "rel": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "href",
        "rel"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getProtectionPoliciesV2ProtectionPolicyReplicationConfiguration:getProtectionPoliciesV2ProtectionPolicyReplicationConfiguration": {
      "properties": {
        "remoteLocationLabel": {
          "type": "string"
        },
        "schedule": {
          "$ref": "#/types/nutanix:index%2FgetProtectionPoliciesV2ProtectionPolicyReplicationConfigurationSchedule:getProtectionPoliciesV2ProtectionPolicyReplicationConfigurationSchedule"
        },
        "sourceLocationLabel": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "schedule",
        "sourceLocationLabel"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getProtectionPoliciesV2ProtectionPolicyReplicationConfigurationSchedule:getProtectionPoliciesV2ProtectionPolicyReplicationConfigurationSchedule": {
      "properties": {
        "recoveryPointObjectiveTimeSeconds": {
          "type": "integer"
        },
        "recoveryPointType": {
          "type": "string"
        },
        "retention": {
          "$ref": "#/types/nutanix:index%2FgetProtectionPoliciesV2ProtectionPolicyReplicationConfigurationScheduleRetention:getProtectionPoliciesV2ProtectionPolicyReplicationConfigurationScheduleRetention"
        },
        "startTime": {
          "type": "string"
        },
        "syncReplicationAutoSuspendTimeoutSeconds": {
          "type": "integer"
        }
      },
      "type": "object"
    },
    "nutanix:index/getProtectionPoliciesV2ProtectionPolicyReplicationConfigurationScheduleRetention:getProtectionPoliciesV2ProtectionPolicyReplicationConfigurationScheduleRetention": {
      "properties": {
        "autoRollupRetention": {
          "$ref": "#/types/nutanix:index%2FgetProtectionPoliciesV2ProtectionPolicyReplicationConfigurationScheduleRetentionAutoRollupRetention:getProtectionPoliciesV2ProtectionPolicyReplicationConfigurationScheduleRetentionAutoRollupRetention"
        },
        "linearRetention": {
          "$ref": "#/types/nutanix:index%2FgetProtectionPoliciesV2ProtectionPolicyReplicationConfigurationScheduleRetentionLinearRetention:getProtectionPoliciesV2ProtectionPolicyReplicationConfigurationScheduleRetentionLinearRetention"
        }
      },
      "type": "object"
    },
    "nutanix:index/getProtectionPoliciesV2ProtectionPolicyReplicationConfigurationScheduleRetentionAutoRollupRetention:getProtectionPoliciesV2ProtectionPolicyReplicationConfigurationScheduleRetentionAutoRollupRetention": {
      "properties": {
        "local": {
          "$ref": "#/types/nutanix:index%2FgetProtectionPoliciesV2ProtectionPolicyReplicationConfigurationScheduleRetentionAutoRollupRetentionLocal:getProtectionPoliciesV2ProtectionPolicyReplicationConfigurationScheduleRetentionAutoRollupRetentionLocal"
        },
        "remote": {
          "$ref": "#/types/nutanix:index%2FgetProtectionPoliciesV2ProtectionPolicyReplicationConfigurationScheduleRetentionAutoRollupRetentionRemote:getProtectionPoliciesV2ProtectionPolicyReplicationConfigurationScheduleRetentionAutoRollupRetentionRemote"
        }
      },
      "type": "object",
      "required": [
        "local"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getProtectionPoliciesV2ProtectionPolicyReplicationConfigurationScheduleRetentionAutoRollupRetentionLocal:getProtectionPoliciesV2ProtectionPolicyReplicationConfigurationScheduleRetentionAutoRollupRetentionLocal": {
      "properties": {
        "frequency": {
          "type": "integer"
        },
        "snapshotIntervalType": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "frequency"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getProtectionPoliciesV2ProtectionPolicyReplicationConfigurationScheduleRetentionAutoRollupRetentionRemote:getProtectionPoliciesV2ProtectionPolicyReplicationConfigurationScheduleRetentionAutoRollupRetentionRemote": {
      "properties": {
        "frequency": {
          "type": "integer"
        },
        "snapshotIntervalType": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "frequency"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getProtectionPoliciesV2ProtectionPolicyReplicationConfigurationScheduleRetentionLinearRetention:getProtectionPoliciesV2ProtectionPolicyReplicationConfigurationScheduleRetentionLinearRetention": {
      "properties": {
        "local": {
          "type": "integer"
        },
        "remote": {
          "type": "integer"
        }
      },
      "type": "object",
      "required": [
        "local"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getProtectionPoliciesV2ProtectionPolicyReplicationLocation:getProtectionPoliciesV2ProtectionPolicyReplicationLocation": {
      "properties": {
        "domainManagerExtId": {
          "type": "string"
        },
        "isPrimary": {
          "type": "boolean"
        },
        "label": {
          "type": "string"
        },
        "replicationSubLocation": {
          "$ref": "#/types/nutanix:index%2FgetProtectionPoliciesV2ProtectionPolicyReplicationLocationReplicationSubLocation:getProtectionPoliciesV2ProtectionPolicyReplicationLocationReplicationSubLocation"
        }
      },
      "type": "object",
      "required": [
        "domainManagerExtId",
        "label"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getProtectionPoliciesV2ProtectionPolicyReplicationLocationReplicationSubLocation:getProtectionPoliciesV2ProtectionPolicyReplicationLocationReplicationSubLocation": {
      "properties": {
        "clusterExtIds": {
          "$ref": "#/types/nutanix:index%2FgetProtectionPoliciesV2ProtectionPolicyReplicationLocationReplicationSubLocationClusterExtIds:getProtectionPoliciesV2ProtectionPolicyReplicationLocationReplicationSubLocationClusterExtIds"
        }
      },
      "type": "object",
      "required": [
        "clusterExtIds"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getProtectionPoliciesV2ProtectionPolicyReplicationLocationReplicationSubLocationClusterExtIds:getProtectionPoliciesV2ProtectionPolicyReplicationLocationReplicationSubLocationClusterExtIds": {
      "properties": {
        "clusterExtIds": {
          "type": "array",
          "items": {
            "type": "string"
          }
        }
      },
      "type": "object",
      "required": [
        "clusterExtIds"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getProtectionPolicyV2Link:getProtectionPolicyV2Link": {
      "properties": {
        "href": {
          "type": "string",
          "description": "- The URL at which the entity described by the link can be accessed.\n"
        },
        "rel": {
          "type": "string",
          "description": "- A name that identifies the relationship of the link to the object that is returned by the URL. The unique value of \"self\" identifies the URL for the object.\n"
        }
      },
      "type": "object",
      "required": [
        "href",
        "rel"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getProtectionPolicyV2ReplicationConfiguration:getProtectionPolicyV2ReplicationConfiguration": {
      "properties": {
        "remoteLocationLabel": {
          "type": "string",
          "description": "- Label of the source location from the replication locations list, where the entity will be replicated.\n"
        },
        "schedule": {
          "$ref": "#/types/nutanix:index%2FgetProtectionPolicyV2ReplicationConfigurationSchedule:getProtectionPolicyV2ReplicationConfigurationSchedule",
          "description": "- Schedule for protection. The schedule specifies the recovery point objective and the retention policy for the participating locations.\n"
        },
        "sourceLocationLabel": {
          "type": "string",
          "description": "- Label of the source location from the replication locations list, where the entity is running. The location of type MST can not be specified as the replication source.\n"
        }
      },
      "type": "object",
      "required": [
        "schedule",
        "sourceLocationLabel"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getProtectionPolicyV2ReplicationConfigurationSchedule:getProtectionPolicyV2ReplicationConfigurationSchedule": {
      "properties": {
        "recoveryPointObjectiveTimeSeconds": {
          "type": "integer",
          "description": "- The Recovery point objective of the schedule in seconds and specified in multiple of 60 seconds. Only following RPO values can be provided for rollup retention type:\n- Minute(s): 1, 2, 3, 4, 5, 6, 10, 12, 15\n- Hour(s): 1, 2, 3, 4, 6, 8, 12\n- Day(s): 1\n- Week(s): 1, 2\n"
        },
        "recoveryPointType": {
          "type": "string",
          "description": "- Type of recovery point.\n* `CRASH_CONSISTENT`: Crash-consistent Recovery points capture all the VM and application level details.\n* `APP_CONSISTENT`: Application-consistent Recovery points can capture all the data stored in the memory and also the in-progress transaction details.\n"
        },
        "retention": {
          "$ref": "#/types/nutanix:index%2FgetProtectionPolicyV2ReplicationConfigurationScheduleRetention:getProtectionPolicyV2ReplicationConfigurationScheduleRetention",
          "description": "- Specifies the retention policy for the recovery point schedule.\n"
        },
        "startTime": {
          "type": "string",
          "description": "- Represents the protection start time for the new entities added to the policy after the policy is created in h:m format. The values must be between 00h:00m and 23h:59m and in UTC timezone. It specifies the time when the first snapshot is taken and replicated for any entity added to the policy. If this is not specified, the snapshot is taken immediately and replicated for any new entity added to the policy.\n"
        },
        "syncReplicationAutoSuspendTimeoutSeconds": {
          "type": "integer",
          "description": "- Auto suspend timeout if there is a connection failure between locations for synchronous replication. If this value is not set, then the policy will not be suspended.\n"
        }
      },
      "type": "object"
    },
    "nutanix:index/getProtectionPolicyV2ReplicationConfigurationScheduleRetention:getProtectionPolicyV2ReplicationConfigurationScheduleRetention": {
      "properties": {
        "autoRollupRetention": {
          "$ref": "#/types/nutanix:index%2FgetProtectionPolicyV2ReplicationConfigurationScheduleRetentionAutoRollupRetention:getProtectionPolicyV2ReplicationConfigurationScheduleRetentionAutoRollupRetention",
          "description": "- Auto rollup retention policy.\n"
        },
        "linearRetention": {
          "$ref": "#/types/nutanix:index%2FgetProtectionPolicyV2ReplicationConfigurationScheduleRetentionLinearRetention:getProtectionPolicyV2ReplicationConfigurationScheduleRetentionLinearRetention",
          "description": "- Linear retention policy.\n"
        }
      },
      "type": "object"
    },
    "nutanix:index/getProtectionPolicyV2ReplicationConfigurationScheduleRetentionAutoRollupRetention:getProtectionPolicyV2ReplicationConfigurationScheduleRetentionAutoRollupRetention": {
      "properties": {
        "local": {
          "$ref": "#/types/nutanix:index%2FgetProtectionPolicyV2ReplicationConfigurationScheduleRetentionAutoRollupRetentionLocal:getProtectionPolicyV2ReplicationConfigurationScheduleRetentionAutoRollupRetentionLocal",
          "description": "- Specifies the auto rollup retention details.\n"
        },
        "remote": {
          "$ref": "#/types/nutanix:index%2FgetProtectionPolicyV2ReplicationConfigurationScheduleRetentionAutoRollupRetentionRemote:getProtectionPolicyV2ReplicationConfigurationScheduleRetentionAutoRollupRetentionRemote",
          "description": "- Specifies the auto rollup retention details.\n"
        }
      },
      "type": "object",
      "required": [
        "local"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getProtectionPolicyV2ReplicationConfigurationScheduleRetentionAutoRollupRetentionLocal:getProtectionPolicyV2ReplicationConfigurationScheduleRetentionAutoRollupRetentionLocal": {
      "properties": {
        "frequency": {
          "type": "integer",
          "description": "- Multiplier to 'snapshotIntervalType'. For example, if 'snapshotIntervalType' is 'YEARLY' and 'multiple' is 5, then 5 years worth of rollup snapshots will be retained.\n"
        },
        "snapshotIntervalType": {
          "type": "string",
          "description": "- Snapshot interval period.\n* `YEARLY`: Specifies the number of latest yearly recovery points to retain.\n* `WEEKLY`: Specifies the number of latest weekly recovery points to retain.\n* `DAILY`: Specifies the number of latest daily recovery points to retain.\n* `MONTHLY`: Specifies the number of latest monthly recovery points to retain.\n* `HOURLY`: Specifies the number of latest hourly recovery points to retain.\n"
        }
      },
      "type": "object",
      "required": [
        "frequency"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getProtectionPolicyV2ReplicationConfigurationScheduleRetentionAutoRollupRetentionRemote:getProtectionPolicyV2ReplicationConfigurationScheduleRetentionAutoRollupRetentionRemote": {
      "properties": {
        "frequency": {
          "type": "integer",
          "description": "- Multiplier to 'snapshotIntervalType'. For example, if 'snapshotIntervalType' is 'YEARLY' and 'multiple' is 5, then 5 years worth of rollup snapshots will be retained.\n"
        },
        "snapshotIntervalType": {
          "type": "string",
          "description": "- Snapshot interval period.\n* `YEARLY`: Specifies the number of latest yearly recovery points to retain.\n* `WEEKLY`: Specifies the number of latest weekly recovery points to retain.\n* `DAILY`: Specifies the number of latest daily recovery points to retain.\n* `MONTHLY`: Specifies the number of latest monthly recovery points to retain.\n* `HOURLY`: Specifies the number of latest hourly recovery points to retain.\n"
        }
      },
      "type": "object",
      "required": [
        "frequency"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getProtectionPolicyV2ReplicationConfigurationScheduleRetentionLinearRetention:getProtectionPolicyV2ReplicationConfigurationScheduleRetentionLinearRetention": {
      "properties": {
        "local": {
          "type": "integer",
          "description": "- Specifies the auto rollup retention details.\n"
        },
        "remote": {
          "type": "integer",
          "description": "- Specifies the auto rollup retention details.\n"
        }
      },
      "type": "object",
      "required": [
        "local"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getProtectionPolicyV2ReplicationLocation:getProtectionPolicyV2ReplicationLocation": {
      "properties": {
        "domainManagerExtId": {
          "type": "string",
          "description": "- External identifier of the domain manager.\n"
        },
        "isPrimary": {
          "type": "boolean",
          "description": "- One of the locations must be specified as the primary location. All the other locations must be connected to the primary location.\n"
        },
        "label": {
          "type": "string",
          "description": "- This is a unique user defined label of the replication location. It is used to identify the location in the replication configurations.\n"
        },
        "replicationSubLocation": {
          "$ref": "#/types/nutanix:index%2FgetProtectionPolicyV2ReplicationLocationReplicationSubLocation:getProtectionPolicyV2ReplicationLocationReplicationSubLocation",
          "description": "- Specifies the replication sub-locations where recovery points can be created or replicated.\n"
        }
      },
      "type": "object",
      "required": [
        "domainManagerExtId",
        "label"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getProtectionPolicyV2ReplicationLocationReplicationSubLocation:getProtectionPolicyV2ReplicationLocationReplicationSubLocation": {
      "properties": {
        "clusterExtIds": {
          "$ref": "#/types/nutanix:index%2FgetProtectionPolicyV2ReplicationLocationReplicationSubLocationClusterExtIds:getProtectionPolicyV2ReplicationLocationReplicationSubLocationClusterExtIds",
          "description": "- External identifier of the clusters.\n"
        }
      },
      "type": "object",
      "required": [
        "clusterExtIds"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getProtectionPolicyV2ReplicationLocationReplicationSubLocationClusterExtIds:getProtectionPolicyV2ReplicationLocationReplicationSubLocationClusterExtIds": {
      "properties": {
        "clusterExtIds": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "- External identifier of the clusters.\n"
        }
      },
      "type": "object",
      "required": [
        "clusterExtIds"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getProtectionRuleAvailabilityZoneConnectivityList:getProtectionRuleAvailabilityZoneConnectivityList": {
      "properties": {
        "destinationAvailabilityZoneIndex": {
          "type": "integer",
          "description": "(Optional/Computed) Index of the availability zone.\n"
        },
        "snapshotScheduleLists": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetProtectionRuleAvailabilityZoneConnectivityListSnapshotScheduleList:getProtectionRuleAvailabilityZoneConnectivityListSnapshotScheduleList"
          },
          "description": "(Optional/Computed) Snapshot schedules for the pair of the availability zones.\n* `availability_zone_connectivity_list.snapshot_schedule_list.#.recovery_point_objective_secs` - (Required) \"A recovery point objective (RPO) is the maximum acceptable amount of data loss.\n* `availability_zone_connectivity_list.snapshot_schedule_list.#.local_snapshot_retention_policy` - (Optional/Computed) This describes the snapshot retention policy for this availability zone.\n* `availability_zone_connectivity_list.snapshot_schedule_list.#.local_snapshot_retention_policy.0.num_snapshots` - (Optional/Computed) Number of snapshots need to be retained.\n* `availability_zone_connectivity_list.snapshot_schedule_list.#.local_snapshot_retention_policy.0.rollup_retention_policy_multiple` - (Optional/Computed) Multiplier to 'snapshot_interval_type'.\n* `availability_zone_connectivity_list.snapshot_schedule_list.#.local_snapshot_retention_policy.0.rollup_retention_policy_snapshot_interval_type` - (Optional/Computed)\n* `availability_zone_connectivity_list.snapshot_schedule_list.#.auto_suspend_timeout_secs` - (Optional/Computed) Auto suspend timeout in case of connection failure between the sites.\n* `availability_zone_connectivity_list.snapshot_schedule_list.#.snapshot_type` - (Optional/Computed) Crash consistent or Application Consistent snapshot.\n* `availability_zone_connectivity_list.snapshot_schedule_list.#.remote_snapshot_retention_policy` - (Optional/Computed) This describes the snapshot retention policy for this availability zone.\n"
        },
        "sourceAvailabilityZoneIndex": {
          "type": "integer",
          "description": "(Optional/Computed) Index of the availability zone.\n"
        }
      },
      "type": "object",
      "required": [
        "destinationAvailabilityZoneIndex",
        "snapshotScheduleLists",
        "sourceAvailabilityZoneIndex"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getProtectionRuleAvailabilityZoneConnectivityListSnapshotScheduleList:getProtectionRuleAvailabilityZoneConnectivityListSnapshotScheduleList": {
      "properties": {
        "autoSuspendTimeoutSecs": {
          "type": "integer"
        },
        "localSnapshotRetentionPolicies": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetProtectionRuleAvailabilityZoneConnectivityListSnapshotScheduleListLocalSnapshotRetentionPolicy:getProtectionRuleAvailabilityZoneConnectivityListSnapshotScheduleListLocalSnapshotRetentionPolicy"
          }
        },
        "recoveryPointObjectiveSecs": {
          "type": "integer"
        },
        "remoteSnapshotRetentionPolicies": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetProtectionRuleAvailabilityZoneConnectivityListSnapshotScheduleListRemoteSnapshotRetentionPolicy:getProtectionRuleAvailabilityZoneConnectivityListSnapshotScheduleListRemoteSnapshotRetentionPolicy"
          }
        },
        "snapshotType": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "autoSuspendTimeoutSecs",
        "localSnapshotRetentionPolicies",
        "recoveryPointObjectiveSecs",
        "remoteSnapshotRetentionPolicies",
        "snapshotType"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getProtectionRuleAvailabilityZoneConnectivityListSnapshotScheduleListLocalSnapshotRetentionPolicy:getProtectionRuleAvailabilityZoneConnectivityListSnapshotScheduleListLocalSnapshotRetentionPolicy": {
      "properties": {
        "numSnapshots": {
          "type": "integer"
        },
        "rollupRetentionPolicyMultiple": {
          "type": "integer"
        },
        "rollupRetentionPolicySnapshotIntervalType": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "numSnapshots",
        "rollupRetentionPolicyMultiple",
        "rollupRetentionPolicySnapshotIntervalType"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getProtectionRuleAvailabilityZoneConnectivityListSnapshotScheduleListRemoteSnapshotRetentionPolicy:getProtectionRuleAvailabilityZoneConnectivityListSnapshotScheduleListRemoteSnapshotRetentionPolicy": {
      "properties": {
        "numSnapshots": {
          "type": "integer"
        },
        "rollupRetentionPolicyMultiple": {
          "type": "integer"
        },
        "rollupRetentionPolicySnapshotIntervalType": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "numSnapshots",
        "rollupRetentionPolicyMultiple",
        "rollupRetentionPolicySnapshotIntervalType"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getProtectionRuleCategory:getProtectionRuleCategory": {
      "properties": {
        "name": {
          "type": "string",
          "description": "(Optional) the name.\n"
        },
        "value": {
          "type": "string",
          "description": "value of the key.\n"
        }
      },
      "type": "object",
      "required": [
        "name",
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getProtectionRuleCategoryFilter:getProtectionRuleCategoryFilter": {
      "properties": {
        "kindLists": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "(Optional/Computed) List of kinds associated with this filter.\n"
        },
        "params": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetProtectionRuleCategoryFilterParam:getProtectionRuleCategoryFilterParam"
          },
          "description": "(Optional/Computed) A list of category key and list of values.\n"
        },
        "type": {
          "type": "string",
          "description": "(Optional/Computed) The type of the filter being used.\n"
        }
      },
      "type": "object",
      "required": [
        "kindLists",
        "params",
        "type"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getProtectionRuleCategoryFilterParam:getProtectionRuleCategoryFilterParam": {
      "properties": {
        "name": {
          "type": "string",
          "description": "(Optional) the name.\n"
        },
        "values": {
          "type": "array",
          "items": {
            "type": "string"
          }
        }
      },
      "type": "object",
      "required": [
        "name",
        "values"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getProtectionRuleOrderedAvailabilityZoneList:getProtectionRuleOrderedAvailabilityZoneList": {
      "properties": {
        "availabilityZoneUrl": {
          "type": "string"
        },
        "clusterUuid": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "availabilityZoneUrl",
        "clusterUuid"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getProtectionRuleOwnerReference:getProtectionRuleOwnerReference": {
      "properties": {
        "kind": {
          "type": "string",
          "description": "(Required) The kind name (Default value: <span pulumi-lang-nodejs=\"`project`\" pulumi-lang-dotnet=\"`Project`\" pulumi-lang-go=\"`project`\" pulumi-lang-python=\"`project`\" pulumi-lang-yaml=\"`project`\" pulumi-lang-java=\"`project`\">`project`</span>).\n"
        },
        "name": {
          "type": "string",
          "description": "(Optional) the name.\n"
        },
        "uuid": {
          "type": "string",
          "description": "(Required) the UUID.\n"
        }
      },
      "type": "object",
      "required": [
        "kind",
        "name",
        "uuid"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getProtectionRuleProjectReference:getProtectionRuleProjectReference": {
      "properties": {
        "kind": {
          "type": "string",
          "description": "(Required) The kind name (Default value: <span pulumi-lang-nodejs=\"`project`\" pulumi-lang-dotnet=\"`Project`\" pulumi-lang-go=\"`project`\" pulumi-lang-python=\"`project`\" pulumi-lang-yaml=\"`project`\" pulumi-lang-java=\"`project`\">`project`</span>).\n"
        },
        "name": {
          "type": "string",
          "description": "(Optional) the name.\n"
        },
        "uuid": {
          "type": "string",
          "description": "(Required) the UUID.\n"
        }
      },
      "type": "object",
      "required": [
        "kind",
        "name",
        "uuid"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getProtectionRulesEntity:getProtectionRulesEntity": {
      "properties": {
        "apiVersion": {
          "type": "string",
          "description": "version of the API\n"
        },
        "availabilityZoneConnectivityLists": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetProtectionRulesEntityAvailabilityZoneConnectivityList:getProtectionRulesEntityAvailabilityZoneConnectivityList"
          },
          "description": "(Required) This encodes the datapipes between various availability zones and\\nthe backup policy of the pipes.\n"
        },
        "categories": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetProtectionRulesEntityCategory:getProtectionRulesEntityCategory"
          }
        },
        "categoryFilters": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetProtectionRulesEntityCategoryFilter:getProtectionRulesEntityCategoryFilter"
          },
          "description": "(Optional/Computed)\n"
        },
        "description": {
          "type": "string",
          "description": "A description for protection rule.\n"
        },
        "metadata": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          }
        },
        "name": {
          "type": "string",
          "description": "(Optional) the name.\n"
        },
        "orderedAvailabilityZoneLists": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetProtectionRulesEntityOrderedAvailabilityZoneList:getProtectionRulesEntityOrderedAvailabilityZoneList"
          },
          "description": "(Required) A list of availability zones, each of which, receives a replica\\nof the data for the entities protected by this protection rule.\n* `ordered_availability_zone_list.#.cluster_uuid` - (Optional/Computed) UUID of specific cluster to which we will be replicating.\n* `ordered_availability_zone_list.#.availability_zone_url` - (Optional/Computed) The FQDN or IP address of the availability zone.\n"
        },
        "ownerReferences": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetProtectionRulesEntityOwnerReference:getProtectionRulesEntityOwnerReference"
          }
        },
        "projectReferences": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetProtectionRulesEntityProjectReference:getProtectionRulesEntityProjectReference"
          }
        },
        "startTime": {
          "type": "string"
        },
        "state": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "apiVersion",
        "availabilityZoneConnectivityLists",
        "categories",
        "categoryFilters",
        "description",
        "metadata",
        "name",
        "orderedAvailabilityZoneLists",
        "ownerReferences",
        "projectReferences",
        "startTime",
        "state"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getProtectionRulesEntityAvailabilityZoneConnectivityList:getProtectionRulesEntityAvailabilityZoneConnectivityList": {
      "properties": {
        "destinationAvailabilityZoneIndex": {
          "type": "integer",
          "description": "(Optional/Computed) Index of the availability zone.\n"
        },
        "snapshotScheduleLists": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetProtectionRulesEntityAvailabilityZoneConnectivityListSnapshotScheduleList:getProtectionRulesEntityAvailabilityZoneConnectivityListSnapshotScheduleList"
          },
          "description": "(Optional/Computed) Snapshot schedules for the pair of the availability zones.\n* `availability_zone_connectivity_list.snapshot_schedule_list.#.recovery_point_objective_secs` - (Required) \"A recovery point objective (RPO) is the maximum acceptable amount of data loss.\n* `availability_zone_connectivity_list.snapshot_schedule_list.#.local_snapshot_retention_policy` - (Optional/Computed) This describes the snapshot retention policy for this availability zone.\n* `availability_zone_connectivity_list.snapshot_schedule_list.#.local_snapshot_retention_policy.0.num_snapshots` - (Optional/Computed) Number of snapshots need to be retained.\n* `availability_zone_connectivity_list.snapshot_schedule_list.#.local_snapshot_retention_policy.0.rollup_retention_policy_multiple` - (Optional/Computed) Multiplier to 'snapshot_interval_type'.\n* `availability_zone_connectivity_list.snapshot_schedule_list.#.local_snapshot_retention_policy.0.rollup_retention_policy_snapshot_interval_type` - (Optional/Computed)\n* `availability_zone_connectivity_list.snapshot_schedule_list.#.auto_suspend_timeout_secs` - (Optional/Computed) Auto suspend timeout in case of connection failure between the sites.\n* `availability_zone_connectivity_list.snapshot_schedule_list.#.snapshot_type` - (Optional/Computed) Crash consistent or Application Consistent snapshot.\n* `availability_zone_connectivity_list.snapshot_schedule_list.#.remote_snapshot_retention_policy` - (Optional/Computed) This describes the snapshot retention policy for this availability zone.\n"
        },
        "sourceAvailabilityZoneIndex": {
          "type": "integer",
          "description": "(Optional/Computed) Index of the availability zone.\n"
        }
      },
      "type": "object",
      "required": [
        "destinationAvailabilityZoneIndex",
        "snapshotScheduleLists",
        "sourceAvailabilityZoneIndex"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getProtectionRulesEntityAvailabilityZoneConnectivityListSnapshotScheduleList:getProtectionRulesEntityAvailabilityZoneConnectivityListSnapshotScheduleList": {
      "properties": {
        "autoSuspendTimeoutSecs": {
          "type": "integer"
        },
        "localSnapshotRetentionPolicies": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetProtectionRulesEntityAvailabilityZoneConnectivityListSnapshotScheduleListLocalSnapshotRetentionPolicy:getProtectionRulesEntityAvailabilityZoneConnectivityListSnapshotScheduleListLocalSnapshotRetentionPolicy"
          }
        },
        "recoveryPointObjectiveSecs": {
          "type": "integer"
        },
        "remoteSnapshotRetentionPolicies": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetProtectionRulesEntityAvailabilityZoneConnectivityListSnapshotScheduleListRemoteSnapshotRetentionPolicy:getProtectionRulesEntityAvailabilityZoneConnectivityListSnapshotScheduleListRemoteSnapshotRetentionPolicy"
          }
        },
        "snapshotType": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "autoSuspendTimeoutSecs",
        "localSnapshotRetentionPolicies",
        "recoveryPointObjectiveSecs",
        "remoteSnapshotRetentionPolicies",
        "snapshotType"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getProtectionRulesEntityAvailabilityZoneConnectivityListSnapshotScheduleListLocalSnapshotRetentionPolicy:getProtectionRulesEntityAvailabilityZoneConnectivityListSnapshotScheduleListLocalSnapshotRetentionPolicy": {
      "properties": {
        "numSnapshots": {
          "type": "integer"
        },
        "rollupRetentionPolicyMultiple": {
          "type": "integer"
        },
        "rollupRetentionPolicySnapshotIntervalType": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "numSnapshots",
        "rollupRetentionPolicyMultiple",
        "rollupRetentionPolicySnapshotIntervalType"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getProtectionRulesEntityAvailabilityZoneConnectivityListSnapshotScheduleListRemoteSnapshotRetentionPolicy:getProtectionRulesEntityAvailabilityZoneConnectivityListSnapshotScheduleListRemoteSnapshotRetentionPolicy": {
      "properties": {
        "numSnapshots": {
          "type": "integer"
        },
        "rollupRetentionPolicyMultiple": {
          "type": "integer"
        },
        "rollupRetentionPolicySnapshotIntervalType": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "numSnapshots",
        "rollupRetentionPolicyMultiple",
        "rollupRetentionPolicySnapshotIntervalType"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getProtectionRulesEntityCategory:getProtectionRulesEntityCategory": {
      "properties": {
        "name": {
          "type": "string",
          "description": "(Optional) the name.\n"
        },
        "value": {
          "type": "string",
          "description": "value of the key.\n"
        }
      },
      "type": "object",
      "required": [
        "name",
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getProtectionRulesEntityCategoryFilter:getProtectionRulesEntityCategoryFilter": {
      "properties": {
        "kindLists": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "(Optional/Computed) List of kinds associated with this filter.\n"
        },
        "params": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetProtectionRulesEntityCategoryFilterParam:getProtectionRulesEntityCategoryFilterParam"
          },
          "description": "(Optional/Computed) A list of category key and list of values.\n"
        },
        "type": {
          "type": "string",
          "description": "(Optional/Computed) The type of the filter being used.\n"
        }
      },
      "type": "object",
      "required": [
        "kindLists",
        "params",
        "type"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getProtectionRulesEntityCategoryFilterParam:getProtectionRulesEntityCategoryFilterParam": {
      "properties": {
        "name": {
          "type": "string",
          "description": "(Optional) the name.\n"
        },
        "values": {
          "type": "array",
          "items": {
            "type": "string"
          }
        }
      },
      "type": "object",
      "required": [
        "name",
        "values"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getProtectionRulesEntityOrderedAvailabilityZoneList:getProtectionRulesEntityOrderedAvailabilityZoneList": {
      "properties": {
        "availabilityZoneUrl": {
          "type": "string"
        },
        "clusterUuid": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "availabilityZoneUrl",
        "clusterUuid"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getProtectionRulesEntityOwnerReference:getProtectionRulesEntityOwnerReference": {
      "properties": {
        "kind": {
          "type": "string",
          "description": "(Required) The kind name (Default value: <span pulumi-lang-nodejs=\"`project`\" pulumi-lang-dotnet=\"`Project`\" pulumi-lang-go=\"`project`\" pulumi-lang-python=\"`project`\" pulumi-lang-yaml=\"`project`\" pulumi-lang-java=\"`project`\">`project`</span>).\n"
        },
        "name": {
          "type": "string",
          "description": "(Optional) the name.\n"
        },
        "uuid": {
          "type": "string",
          "description": "(Required) the UUID.\n"
        }
      },
      "type": "object",
      "required": [
        "kind",
        "name",
        "uuid"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getProtectionRulesEntityProjectReference:getProtectionRulesEntityProjectReference": {
      "properties": {
        "kind": {
          "type": "string",
          "description": "(Required) The kind name (Default value: <span pulumi-lang-nodejs=\"`project`\" pulumi-lang-dotnet=\"`Project`\" pulumi-lang-go=\"`project`\" pulumi-lang-python=\"`project`\" pulumi-lang-yaml=\"`project`\" pulumi-lang-java=\"`project`\">`project`</span>).\n"
        },
        "name": {
          "type": "string",
          "description": "(Optional) the name.\n"
        },
        "uuid": {
          "type": "string",
          "description": "(Required) the UUID.\n"
        }
      },
      "type": "object",
      "required": [
        "kind",
        "name",
        "uuid"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getRecoveryPlanCategory:getRecoveryPlanCategory": {
      "properties": {
        "name": {
          "type": "string",
          "description": "(Optional) the name.\n"
        },
        "value": {
          "type": "string",
          "description": "value of the key.\n"
        }
      },
      "type": "object",
      "required": [
        "name",
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getRecoveryPlanOwnerReference:getRecoveryPlanOwnerReference": {
      "properties": {
        "kind": {
          "type": "string",
          "description": "(Required) The kind name (Default value: <span pulumi-lang-nodejs=\"`project`\" pulumi-lang-dotnet=\"`Project`\" pulumi-lang-go=\"`project`\" pulumi-lang-python=\"`project`\" pulumi-lang-yaml=\"`project`\" pulumi-lang-java=\"`project`\">`project`</span>).\n"
        },
        "name": {
          "type": "string",
          "description": "(Optional) the name.\n"
        },
        "uuid": {
          "type": "string",
          "description": "(Required) the UUID.\n"
        }
      },
      "type": "object",
      "required": [
        "kind",
        "name",
        "uuid"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getRecoveryPlanParameter:getRecoveryPlanParameter": {
      "properties": {
        "floatingIpAssignmentLists": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetRecoveryPlanParameterFloatingIpAssignmentList:getRecoveryPlanParameterFloatingIpAssignmentList"
          },
          "description": "(Optional/Computed) Floating IP assignment for VMs upon recovery in an Availability Zone. This is applicable only for the public cloud Availability Zones.\n* `parameters.0.floating_ip_assignment_list.#.availability_zone_url` - (Required) URL of the Availability Zone.\n* `parameters.0.floating_ip_assignment_list.#.vm_ip_assignment_list` - (Required) IP assignment for VMs upon recovery in the specified Availability Zone.\n* `parameters.0.floating_ip_assignment_list.#.vm_ip_assignment_list.#.test_floating_ip_config` - (Optional/Computed) Configuration for assigning floating IP to a VM on the execution of the Recovery Plan.\n* `parameters.0.floating_ip_assignment_list.#.vm_ip_assignment_list.#.test_floating_ip_config.ip` - (Optional/Computed) IP to be assigned to VM, in case of failover.\n* `parameters.0.floating_ip_assignment_list.#.vm_ip_assignment_list.#.test_floating_ip_config.should_allocate_dynamically` - (Optional/Computed) Whether to allocate the floating IPs for the VMs dynamically.\n* `parameters.0.floating_ip_assignment_list.#.vm_ip_assignment_list.#.recovery_floating_ip_config` - (Optional/Computed) Configuration for assigning floating IP to a VM on the execution of the Recovery Plan.\n* `parameters.0.floating_ip_assignment_list.#.vm_ip_assignment_list.#.recovery_floating_ip_config.ip` - (Optional/Computed) IP to be assigned to VM, in case of failover.\n* `parameters.0.floating_ip_assignment_list.#.vm_ip_assignment_list.#.recovery_floating_ip_config.should_allocate_dynamically` - (Optional/Computed) Whether to allocate the floating IPs for the VMs dynamically.\n* `parameters.0.floating_ip_assignment_list.#.vm_ip_assignment_list.#.vm_reference` - (Required) Reference to a vm.\n* `parameters.0.floating_ip_assignment_list.#.vm_ip_assignment_list.#.vm_reference.kind` - (Required) The kind name.\n* `parameters.0.floating_ip_assignment_list.#.vm_ip_assignment_list.#.vm_reference.uuid` - (Required) The uuid.\n* `parameters.0.floating_ip_assignment_list.#.vm_ip_assignment_list.#.vm_reference.name` - (Optional/Computed) The name.\n* `parameters.0.floating_ip_assignment_list.#.vm_ip_assignment_list.#.vm_nic_information` - (Required) Information about vnic to which floating IP has to be assigned.\n* `parameters.0.floating_ip_assignment_list.#.vm_ip_assignment_list.#.vm_nic_information.ip` - (Optional/Computed) IP address associated with vnic for which floating IP has to be assigned on failover.\n* `parameters.0.floating_ip_assignment_list.#.vm_ip_assignment_list.#.vm_nic_information.uuid` - (Required) Uuid of the vnic of the VM to which floating IP has to be assigned.\n"
        },
        "networkMappingLists": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetRecoveryPlanParameterNetworkMappingList:getRecoveryPlanParameterNetworkMappingList"
          },
          "description": "(Required) Network mappings to be used for the Recovery Plan. This will be represented by array of network mappings across the Availability Zones.\n* `parameters.0.network_mapping_list.#.availability_zone_network_mapping_list` - (Required) Mapping of networks across the Availability Zones.\n* `parameters.0.network_mapping_list.#.availability_zone_network_mapping_list.#.availability_zone_url` - (Optional/Computed) URL of the Availability Zone.\n* `parameters.0.network_mapping_list.#.availability_zone_network_mapping_list.#.recovery_network` - (Optional/Computed) Network configuration to be used for performing network mapping and IP preservation/mapping on Recovery Plan execution.\n* `parameters.0.network_mapping_list.#.availability_zone_network_mapping_list.#.recovery_network.0.virtual_network_reference` - (Optional/Computed) The reference to a virtual_network.\n* `parameters.0.network_mapping_list.#.availability_zone_network_mapping_list.#.recovery_network.0.virtual_network_reference.kind` - (Optional/Computed) The kind name.\n* `parameters.0.network_mapping_list.#.availability_zone_network_mapping_list.#.recovery_network.0.virtual_network_reference.uuid` - (Optional/Computed) The uuid.\n* `parameters.0.network_mapping_list.#.availability_zone_network_mapping_list.#.recovery_network.0.virtual_network_reference.name` - (Optional/Computed) The name.\n* `parameters.0.network_mapping_list.#.availability_zone_network_mapping_list.#.recovery_network.0.use_vpc_reference` - (Optional/Computed) The reference to a VPC.\n* `parameters.0.network_mapping_list.#.availability_zone_network_mapping_list.#.recovery_network.0.vpc_reference` - (Optional/Computed) The reference to a VPC.\n* `parameters.0.network_mapping_list.#.availability_zone_network_mapping_list.#.recovery_network.0.vpc_reference.kind` - (Optional/Computed) The kind name.\n* `parameters.0.network_mapping_list.#.availability_zone_network_mapping_list.#.recovery_network.0.vpc_reference.uuid` - (Optional/Computed) The uuid.\n* `parameters.0.network_mapping_list.#.availability_zone_network_mapping_list.#.recovery_network.0.vpc_reference.name` - (Optional/Computed) The name.\n* `parameters.0.network_mapping_list.#.availability_zone_network_mapping_list.#.recovery_network.0.subnet_list` - (Optional/Computed) List of subnets for the network.\n* `parameters.0.network_mapping_list.#.availability_zone_network_mapping_list.#.recovery_network.0.subnet_list.#.gateway_ip` - (Required) Gateway IP address for the subnet.\n* `parameters.0.network_mapping_list.#.availability_zone_network_mapping_list.#.recovery_network.0.subnet_list.#.external_connectivity_state` - (Optional/Computed) External connectivity state of the subnet. This is applicable only for the subnet to be created in public cloud Availability Zone.\n* `parameters.0.network_mapping_list.#.availability_zone_network_mapping_list.#.recovery_network.0.subnet_list.#.prefix_length` - (Required) Prefix length for the subnet.\n* `parameters.0.network_mapping_list.#.availability_zone_network_mapping_list.#.recovery_network.0.name` - (Required) Name of the network.\n* `parameters.0.network_mapping_list.#.availability_zone_network_mapping_list.#.test_network` - (Optional/Computed) Network configuration to be used for performing network mapping and IP preservation/mapping on Recovery Plan execution.\n* `parameters.0.network_mapping_list.#.availability_zone_network_mapping_list.#.test_network.0.virtual_network_reference` - (Optional/Computed) The reference to a virtual_network.\n* `parameters.0.network_mapping_list.#.availability_zone_network_mapping_list.#.test_network.0.virtual_network_reference.kind` - (Optional/Computed) The kind name.\n* `parameters.0.network_mapping_list.#.availability_zone_network_mapping_list.#.test_network.0.virtual_network_reference.uuid` - (Optional/Computed) The uuid.\n* `parameters.0.network_mapping_list.#.availability_zone_network_mapping_list.#.test_network.0.virtual_network_reference.name` - (Optional/Computed) The name.\n* `parameters.0.network_mapping_list.#.availability_zone_network_mapping_list.#.test_network.0.subnet_list` - (Optional/Computed) List of subnets for the network.\n* `parameters.0.network_mapping_list.#.availability_zone_network_mapping_list.#.test_network.0.subnet_list.#.gateway_ip` - (Required) Gateway IP address for the subnet.\n* `parameters.0.network_mapping_list.#.availability_zone_network_mapping_list.#.test_network.0.subnet_list.#.external_connectivity_state` - (Optional/Computed) External connectivity state of the subnet. This is applicable only for the subnet to be created in public cloud Availability Zone.\n* `parameters.0.network_mapping_list.#.availability_zone_network_mapping_list.#.test_network.0.subnet_list.#.prefix_length` - (Required) Prefix length for the subnet.\n* `parameters.0.network_mapping_list.#.availability_zone_network_mapping_list.#.test_network.0.name` - (Required) Name of the network.\n* `parameters.0.network_mapping_list.#.availability_zone_network_mapping_list.#.recovery_ip_assignment_list` - (Optional/Computed) Static IP configuration for the VMs to be applied post recovery in the recovery network for migrate/ failover action on the Recovery Plan.\n* `parameters.0.network_mapping_list.#.availability_zone_network_mapping_list.#.recovery_ip_assignment_list.0.vm_reference` - (Optional/Computed) The reference to a vm.\n* `parameters.0.network_mapping_list.#.availability_zone_network_mapping_list.#.recovery_ip_assignment_list.0.vm_reference.kind` - (Optional/Computed) The kind name.\n* `parameters.0.network_mapping_list.#.availability_zone_network_mapping_list.#.recovery_ip_assignment_list.0.vm_reference.uuid` - (Optional/Computed) The uuid.\n* `parameters.0.network_mapping_list.#.availability_zone_network_mapping_list.#.recovery_ip_assignment_list.0.vm_reference.name` - (Optional/Computed) The name.\n* `parameters.0.network_mapping_list.#.availability_zone_network_mapping_list.#.recovery_ip_assignment_list.0.ip_config_list` - (Optional/Computed) List of IP configurations for a VM.\n* `parameters.0.network_mapping_list.#.availability_zone_network_mapping_list.#.recovery_ip_assignment_list.0.ip_config_list.#.ip_address` - (Required) IP address.\n* `parameters.0.network_mapping_list.#.availability_zone_network_mapping_list.#.test_ip_assignment_list` - (Optional/Computed) Static IP configuration for the VMs to be applied post recovery in the test network for test failover action on the Recovery Plan.\n* `parameters.0.network_mapping_list.#.availability_zone_network_mapping_list.#.test_ip_assignment_list.0.vm_reference` - (Optional/Computed) The reference to a vm.\n* `parameters.0.network_mapping_list.#.availability_zone_network_mapping_list.#.test_ip_assignment_list.0.vm_reference.kind` - (Optional/Computed) The kind name.\n* `parameters.0.network_mapping_list.#.availability_zone_network_mapping_list.#.test_ip_assignment_list.0.vm_reference.uuid` - (Optional/Computed) The uuid.\n* `parameters.0.network_mapping_list.#.availability_zone_network_mapping_list.#.test_ip_assignment_list.0.vm_reference.name` - (Optional/Computed) The name.\n* `parameters.0.network_mapping_list.#.availability_zone_network_mapping_list.#.test_ip_assignment_list.0.ip_config_list` - (Optional/Computed) List of IP configurations for a VM.\n* `parameters.0.network_mapping_list.#.availability_zone_network_mapping_list.#.test_ip_assignment_list.0.ip_config_list.#.ip_address` - (Required) IP address.\n* `parameters.0.network_mapping_list.#.availability_zone_network_mapping_list.#.cluster_reference_list` - (Optional/Computed) The clusters where the recovery and test networks reside. This is required to specify network mapping across clusters for a Recovery Plan created to handle failover within the same Availability Zone.\n* `parameters.0.network_mapping_list.#.availability_zone_network_mapping_list.#.cluster_reference_list.0.kind` - (Optional/Computed) The kind name.\n* `parameters.0.network_mapping_list.#.availability_zone_network_mapping_list.#.cluster_reference_list.0.uuid` - (Optional/Computed) The uuid.\n* `parameters.0.network_mapping_list.#.availability_zone_network_mapping_list.#.test_ip_assignment_list.0.name` - (Optional/Computed) The name.\n"
        }
      },
      "type": "object",
      "required": [
        "floatingIpAssignmentLists",
        "networkMappingLists"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getRecoveryPlanParameterFloatingIpAssignmentList:getRecoveryPlanParameterFloatingIpAssignmentList": {
      "properties": {
        "availabilityZoneUrl": {
          "type": "string"
        },
        "vmIpAssignmentLists": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetRecoveryPlanParameterFloatingIpAssignmentListVmIpAssignmentList:getRecoveryPlanParameterFloatingIpAssignmentListVmIpAssignmentList"
          }
        }
      },
      "type": "object",
      "required": [
        "availabilityZoneUrl",
        "vmIpAssignmentLists"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getRecoveryPlanParameterFloatingIpAssignmentListVmIpAssignmentList:getRecoveryPlanParameterFloatingIpAssignmentListVmIpAssignmentList": {
      "properties": {
        "recoveryFloatingIpConfigs": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetRecoveryPlanParameterFloatingIpAssignmentListVmIpAssignmentListRecoveryFloatingIpConfig:getRecoveryPlanParameterFloatingIpAssignmentListVmIpAssignmentListRecoveryFloatingIpConfig"
          }
        },
        "testFloatingIpConfigs": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetRecoveryPlanParameterFloatingIpAssignmentListVmIpAssignmentListTestFloatingIpConfig:getRecoveryPlanParameterFloatingIpAssignmentListVmIpAssignmentListTestFloatingIpConfig"
          }
        },
        "vmNicInformations": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetRecoveryPlanParameterFloatingIpAssignmentListVmIpAssignmentListVmNicInformation:getRecoveryPlanParameterFloatingIpAssignmentListVmIpAssignmentListVmNicInformation"
          }
        },
        "vmReferences": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetRecoveryPlanParameterFloatingIpAssignmentListVmIpAssignmentListVmReference:getRecoveryPlanParameterFloatingIpAssignmentListVmIpAssignmentListVmReference"
          }
        }
      },
      "type": "object",
      "required": [
        "recoveryFloatingIpConfigs",
        "testFloatingIpConfigs",
        "vmNicInformations",
        "vmReferences"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getRecoveryPlanParameterFloatingIpAssignmentListVmIpAssignmentListRecoveryFloatingIpConfig:getRecoveryPlanParameterFloatingIpAssignmentListVmIpAssignmentListRecoveryFloatingIpConfig": {
      "properties": {
        "ip": {
          "type": "string"
        },
        "shouldAllocateDynamically": {
          "type": "boolean"
        }
      },
      "type": "object",
      "required": [
        "ip",
        "shouldAllocateDynamically"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getRecoveryPlanParameterFloatingIpAssignmentListVmIpAssignmentListTestFloatingIpConfig:getRecoveryPlanParameterFloatingIpAssignmentListVmIpAssignmentListTestFloatingIpConfig": {
      "properties": {
        "ip": {
          "type": "string"
        },
        "shouldAllocateDynamically": {
          "type": "boolean"
        }
      },
      "type": "object",
      "required": [
        "ip",
        "shouldAllocateDynamically"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getRecoveryPlanParameterFloatingIpAssignmentListVmIpAssignmentListVmNicInformation:getRecoveryPlanParameterFloatingIpAssignmentListVmIpAssignmentListVmNicInformation": {
      "properties": {
        "ip": {
          "type": "string"
        },
        "uuid": {
          "type": "string",
          "description": "(Required) the UUID.\n"
        }
      },
      "type": "object",
      "required": [
        "ip",
        "uuid"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getRecoveryPlanParameterFloatingIpAssignmentListVmIpAssignmentListVmReference:getRecoveryPlanParameterFloatingIpAssignmentListVmIpAssignmentListVmReference": {
      "properties": {
        "kind": {
          "type": "string",
          "description": "(Required) The kind name (Default value: <span pulumi-lang-nodejs=\"`project`\" pulumi-lang-dotnet=\"`Project`\" pulumi-lang-go=\"`project`\" pulumi-lang-python=\"`project`\" pulumi-lang-yaml=\"`project`\" pulumi-lang-java=\"`project`\">`project`</span>).\n"
        },
        "name": {
          "type": "string",
          "description": "(Optional) the name.\n"
        },
        "uuid": {
          "type": "string",
          "description": "(Required) the UUID.\n"
        }
      },
      "type": "object",
      "required": [
        "kind",
        "name",
        "uuid"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getRecoveryPlanParameterNetworkMappingList:getRecoveryPlanParameterNetworkMappingList": {
      "properties": {
        "areNetworksStretched": {
          "type": "boolean"
        },
        "availabilityZoneNetworkMappingLists": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetRecoveryPlanParameterNetworkMappingListAvailabilityZoneNetworkMappingList:getRecoveryPlanParameterNetworkMappingListAvailabilityZoneNetworkMappingList"
          }
        }
      },
      "type": "object",
      "required": [
        "areNetworksStretched",
        "availabilityZoneNetworkMappingLists"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getRecoveryPlanParameterNetworkMappingListAvailabilityZoneNetworkMappingList:getRecoveryPlanParameterNetworkMappingListAvailabilityZoneNetworkMappingList": {
      "properties": {
        "availabilityZoneUrl": {
          "type": "string"
        },
        "clusterReferenceLists": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetRecoveryPlanParameterNetworkMappingListAvailabilityZoneNetworkMappingListClusterReferenceList:getRecoveryPlanParameterNetworkMappingListAvailabilityZoneNetworkMappingListClusterReferenceList"
          }
        },
        "recoveryIpAssignmentLists": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetRecoveryPlanParameterNetworkMappingListAvailabilityZoneNetworkMappingListRecoveryIpAssignmentList:getRecoveryPlanParameterNetworkMappingListAvailabilityZoneNetworkMappingListRecoveryIpAssignmentList"
          }
        },
        "recoveryNetworks": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetRecoveryPlanParameterNetworkMappingListAvailabilityZoneNetworkMappingListRecoveryNetwork:getRecoveryPlanParameterNetworkMappingListAvailabilityZoneNetworkMappingListRecoveryNetwork"
          }
        },
        "testIpAssignmentLists": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetRecoveryPlanParameterNetworkMappingListAvailabilityZoneNetworkMappingListTestIpAssignmentList:getRecoveryPlanParameterNetworkMappingListAvailabilityZoneNetworkMappingListTestIpAssignmentList"
          }
        },
        "testNetworks": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetRecoveryPlanParameterNetworkMappingListAvailabilityZoneNetworkMappingListTestNetwork:getRecoveryPlanParameterNetworkMappingListAvailabilityZoneNetworkMappingListTestNetwork"
          }
        }
      },
      "type": "object",
      "required": [
        "availabilityZoneUrl",
        "clusterReferenceLists",
        "recoveryIpAssignmentLists",
        "recoveryNetworks",
        "testIpAssignmentLists",
        "testNetworks"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getRecoveryPlanParameterNetworkMappingListAvailabilityZoneNetworkMappingListClusterReferenceList:getRecoveryPlanParameterNetworkMappingListAvailabilityZoneNetworkMappingListClusterReferenceList": {
      "properties": {
        "kind": {
          "type": "string",
          "description": "(Required) The kind name (Default value: <span pulumi-lang-nodejs=\"`project`\" pulumi-lang-dotnet=\"`Project`\" pulumi-lang-go=\"`project`\" pulumi-lang-python=\"`project`\" pulumi-lang-yaml=\"`project`\" pulumi-lang-java=\"`project`\">`project`</span>).\n"
        },
        "name": {
          "type": "string",
          "description": "(Optional) the name.\n"
        },
        "uuid": {
          "type": "string",
          "description": "(Required) the UUID.\n"
        }
      },
      "type": "object",
      "required": [
        "kind",
        "name",
        "uuid"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getRecoveryPlanParameterNetworkMappingListAvailabilityZoneNetworkMappingListRecoveryIpAssignmentList:getRecoveryPlanParameterNetworkMappingListAvailabilityZoneNetworkMappingListRecoveryIpAssignmentList": {
      "properties": {
        "ipConfigLists": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetRecoveryPlanParameterNetworkMappingListAvailabilityZoneNetworkMappingListRecoveryIpAssignmentListIpConfigList:getRecoveryPlanParameterNetworkMappingListAvailabilityZoneNetworkMappingListRecoveryIpAssignmentListIpConfigList"
          }
        },
        "vmReference": {
          "$ref": "#/types/nutanix:index%2FgetRecoveryPlanParameterNetworkMappingListAvailabilityZoneNetworkMappingListRecoveryIpAssignmentListVmReference:getRecoveryPlanParameterNetworkMappingListAvailabilityZoneNetworkMappingListRecoveryIpAssignmentListVmReference"
        }
      },
      "type": "object",
      "required": [
        "ipConfigLists",
        "vmReference"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getRecoveryPlanParameterNetworkMappingListAvailabilityZoneNetworkMappingListRecoveryIpAssignmentListIpConfigList:getRecoveryPlanParameterNetworkMappingListAvailabilityZoneNetworkMappingListRecoveryIpAssignmentListIpConfigList": {
      "properties": {
        "ipAddress": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "ipAddress"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getRecoveryPlanParameterNetworkMappingListAvailabilityZoneNetworkMappingListRecoveryIpAssignmentListVmReference:getRecoveryPlanParameterNetworkMappingListAvailabilityZoneNetworkMappingListRecoveryIpAssignmentListVmReference": {
      "properties": {
        "kind": {
          "type": "string",
          "description": "(Required) The kind name (Default value: <span pulumi-lang-nodejs=\"`project`\" pulumi-lang-dotnet=\"`Project`\" pulumi-lang-go=\"`project`\" pulumi-lang-python=\"`project`\" pulumi-lang-yaml=\"`project`\" pulumi-lang-java=\"`project`\">`project`</span>).\n"
        },
        "name": {
          "type": "string",
          "description": "(Optional) the name.\n"
        },
        "uuid": {
          "type": "string",
          "description": "(Required) the UUID.\n"
        }
      },
      "type": "object",
      "required": [
        "kind",
        "name",
        "uuid"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getRecoveryPlanParameterNetworkMappingListAvailabilityZoneNetworkMappingListRecoveryNetwork:getRecoveryPlanParameterNetworkMappingListAvailabilityZoneNetworkMappingListRecoveryNetwork": {
      "properties": {
        "name": {
          "type": "string",
          "description": "(Optional) the name.\n"
        },
        "subnetLists": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetRecoveryPlanParameterNetworkMappingListAvailabilityZoneNetworkMappingListRecoveryNetworkSubnetList:getRecoveryPlanParameterNetworkMappingListAvailabilityZoneNetworkMappingListRecoveryNetworkSubnetList"
          }
        },
        "useVpcReference": {
          "type": "boolean"
        },
        "virtualNetworkReferences": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetRecoveryPlanParameterNetworkMappingListAvailabilityZoneNetworkMappingListRecoveryNetworkVirtualNetworkReference:getRecoveryPlanParameterNetworkMappingListAvailabilityZoneNetworkMappingListRecoveryNetworkVirtualNetworkReference"
          }
        },
        "vpcReferences": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetRecoveryPlanParameterNetworkMappingListAvailabilityZoneNetworkMappingListRecoveryNetworkVpcReference:getRecoveryPlanParameterNetworkMappingListAvailabilityZoneNetworkMappingListRecoveryNetworkVpcReference"
          }
        }
      },
      "type": "object",
      "required": [
        "name",
        "subnetLists",
        "useVpcReference",
        "virtualNetworkReferences",
        "vpcReferences"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getRecoveryPlanParameterNetworkMappingListAvailabilityZoneNetworkMappingListRecoveryNetworkSubnetList:getRecoveryPlanParameterNetworkMappingListAvailabilityZoneNetworkMappingListRecoveryNetworkSubnetList": {
      "properties": {
        "externalConnectivityState": {
          "type": "string"
        },
        "gatewayIp": {
          "type": "string"
        },
        "prefixLength": {
          "type": "integer"
        }
      },
      "type": "object",
      "required": [
        "externalConnectivityState",
        "gatewayIp",
        "prefixLength"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getRecoveryPlanParameterNetworkMappingListAvailabilityZoneNetworkMappingListRecoveryNetworkVirtualNetworkReference:getRecoveryPlanParameterNetworkMappingListAvailabilityZoneNetworkMappingListRecoveryNetworkVirtualNetworkReference": {
      "properties": {
        "kind": {
          "type": "string",
          "description": "(Required) The kind name (Default value: <span pulumi-lang-nodejs=\"`project`\" pulumi-lang-dotnet=\"`Project`\" pulumi-lang-go=\"`project`\" pulumi-lang-python=\"`project`\" pulumi-lang-yaml=\"`project`\" pulumi-lang-java=\"`project`\">`project`</span>).\n"
        },
        "name": {
          "type": "string",
          "description": "(Optional) the name.\n"
        },
        "uuid": {
          "type": "string",
          "description": "(Required) the UUID.\n"
        }
      },
      "type": "object",
      "required": [
        "kind",
        "name",
        "uuid"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getRecoveryPlanParameterNetworkMappingListAvailabilityZoneNetworkMappingListRecoveryNetworkVpcReference:getRecoveryPlanParameterNetworkMappingListAvailabilityZoneNetworkMappingListRecoveryNetworkVpcReference": {
      "properties": {
        "kind": {
          "type": "string",
          "description": "(Required) The kind name (Default value: <span pulumi-lang-nodejs=\"`project`\" pulumi-lang-dotnet=\"`Project`\" pulumi-lang-go=\"`project`\" pulumi-lang-python=\"`project`\" pulumi-lang-yaml=\"`project`\" pulumi-lang-java=\"`project`\">`project`</span>).\n"
        },
        "name": {
          "type": "string",
          "description": "(Optional) the name.\n"
        },
        "uuid": {
          "type": "string",
          "description": "(Required) the UUID.\n"
        }
      },
      "type": "object",
      "required": [
        "kind",
        "name",
        "uuid"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getRecoveryPlanParameterNetworkMappingListAvailabilityZoneNetworkMappingListTestIpAssignmentList:getRecoveryPlanParameterNetworkMappingListAvailabilityZoneNetworkMappingListTestIpAssignmentList": {
      "properties": {
        "ipConfigLists": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetRecoveryPlanParameterNetworkMappingListAvailabilityZoneNetworkMappingListTestIpAssignmentListIpConfigList:getRecoveryPlanParameterNetworkMappingListAvailabilityZoneNetworkMappingListTestIpAssignmentListIpConfigList"
          }
        },
        "vmReference": {
          "$ref": "#/types/nutanix:index%2FgetRecoveryPlanParameterNetworkMappingListAvailabilityZoneNetworkMappingListTestIpAssignmentListVmReference:getRecoveryPlanParameterNetworkMappingListAvailabilityZoneNetworkMappingListTestIpAssignmentListVmReference"
        }
      },
      "type": "object",
      "required": [
        "ipConfigLists",
        "vmReference"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getRecoveryPlanParameterNetworkMappingListAvailabilityZoneNetworkMappingListTestIpAssignmentListIpConfigList:getRecoveryPlanParameterNetworkMappingListAvailabilityZoneNetworkMappingListTestIpAssignmentListIpConfigList": {
      "properties": {
        "ipAddress": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "ipAddress"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getRecoveryPlanParameterNetworkMappingListAvailabilityZoneNetworkMappingListTestIpAssignmentListVmReference:getRecoveryPlanParameterNetworkMappingListAvailabilityZoneNetworkMappingListTestIpAssignmentListVmReference": {
      "properties": {
        "kind": {
          "type": "string",
          "description": "(Required) The kind name (Default value: <span pulumi-lang-nodejs=\"`project`\" pulumi-lang-dotnet=\"`Project`\" pulumi-lang-go=\"`project`\" pulumi-lang-python=\"`project`\" pulumi-lang-yaml=\"`project`\" pulumi-lang-java=\"`project`\">`project`</span>).\n"
        },
        "name": {
          "type": "string",
          "description": "(Optional) the name.\n"
        },
        "uuid": {
          "type": "string",
          "description": "(Required) the UUID.\n"
        }
      },
      "type": "object",
      "required": [
        "kind",
        "name",
        "uuid"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getRecoveryPlanParameterNetworkMappingListAvailabilityZoneNetworkMappingListTestNetwork:getRecoveryPlanParameterNetworkMappingListAvailabilityZoneNetworkMappingListTestNetwork": {
      "properties": {
        "name": {
          "type": "string",
          "description": "(Optional) the name.\n"
        },
        "subnetLists": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetRecoveryPlanParameterNetworkMappingListAvailabilityZoneNetworkMappingListTestNetworkSubnetList:getRecoveryPlanParameterNetworkMappingListAvailabilityZoneNetworkMappingListTestNetworkSubnetList"
          }
        },
        "useVpcReference": {
          "type": "boolean"
        },
        "virtualNetworkReferences": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetRecoveryPlanParameterNetworkMappingListAvailabilityZoneNetworkMappingListTestNetworkVirtualNetworkReference:getRecoveryPlanParameterNetworkMappingListAvailabilityZoneNetworkMappingListTestNetworkVirtualNetworkReference"
          }
        },
        "vpcReferences": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetRecoveryPlanParameterNetworkMappingListAvailabilityZoneNetworkMappingListTestNetworkVpcReference:getRecoveryPlanParameterNetworkMappingListAvailabilityZoneNetworkMappingListTestNetworkVpcReference"
          }
        }
      },
      "type": "object",
      "required": [
        "name",
        "subnetLists",
        "useVpcReference",
        "virtualNetworkReferences",
        "vpcReferences"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getRecoveryPlanParameterNetworkMappingListAvailabilityZoneNetworkMappingListTestNetworkSubnetList:getRecoveryPlanParameterNetworkMappingListAvailabilityZoneNetworkMappingListTestNetworkSubnetList": {
      "properties": {
        "externalConnectivityState": {
          "type": "string"
        },
        "gatewayIp": {
          "type": "string"
        },
        "prefixLength": {
          "type": "integer"
        }
      },
      "type": "object",
      "required": [
        "externalConnectivityState",
        "gatewayIp",
        "prefixLength"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getRecoveryPlanParameterNetworkMappingListAvailabilityZoneNetworkMappingListTestNetworkVirtualNetworkReference:getRecoveryPlanParameterNetworkMappingListAvailabilityZoneNetworkMappingListTestNetworkVirtualNetworkReference": {
      "properties": {
        "kind": {
          "type": "string",
          "description": "(Required) The kind name (Default value: <span pulumi-lang-nodejs=\"`project`\" pulumi-lang-dotnet=\"`Project`\" pulumi-lang-go=\"`project`\" pulumi-lang-python=\"`project`\" pulumi-lang-yaml=\"`project`\" pulumi-lang-java=\"`project`\">`project`</span>).\n"
        },
        "name": {
          "type": "string",
          "description": "(Optional) the name.\n"
        },
        "uuid": {
          "type": "string",
          "description": "(Required) the UUID.\n"
        }
      },
      "type": "object",
      "required": [
        "kind",
        "name",
        "uuid"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getRecoveryPlanParameterNetworkMappingListAvailabilityZoneNetworkMappingListTestNetworkVpcReference:getRecoveryPlanParameterNetworkMappingListAvailabilityZoneNetworkMappingListTestNetworkVpcReference": {
      "properties": {
        "kind": {
          "type": "string",
          "description": "(Required) The kind name (Default value: <span pulumi-lang-nodejs=\"`project`\" pulumi-lang-dotnet=\"`Project`\" pulumi-lang-go=\"`project`\" pulumi-lang-python=\"`project`\" pulumi-lang-yaml=\"`project`\" pulumi-lang-java=\"`project`\">`project`</span>).\n"
        },
        "name": {
          "type": "string",
          "description": "(Optional) the name.\n"
        },
        "uuid": {
          "type": "string",
          "description": "(Required) the UUID.\n"
        }
      },
      "type": "object",
      "required": [
        "kind",
        "name",
        "uuid"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getRecoveryPlanProjectReference:getRecoveryPlanProjectReference": {
      "properties": {
        "kind": {
          "type": "string",
          "description": "(Required) The kind name (Default value: <span pulumi-lang-nodejs=\"`project`\" pulumi-lang-dotnet=\"`Project`\" pulumi-lang-go=\"`project`\" pulumi-lang-python=\"`project`\" pulumi-lang-yaml=\"`project`\" pulumi-lang-java=\"`project`\">`project`</span>).\n"
        },
        "name": {
          "type": "string",
          "description": "(Optional) the name.\n"
        },
        "uuid": {
          "type": "string",
          "description": "(Required) the UUID.\n"
        }
      },
      "type": "object",
      "required": [
        "kind",
        "name",
        "uuid"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getRecoveryPlanStageList:getRecoveryPlanStageList": {
      "properties": {
        "delayTimeSecs": {
          "type": "integer",
          "description": "(Optional/Computed) Amount of time in seconds to delay the execution of next stage after execution of current stage.\n"
        },
        "stageUuid": {
          "type": "string",
          "description": "(Optional/Computed) UUID of stage.\n"
        },
        "stageWorks": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetRecoveryPlanStageListStageWork:getRecoveryPlanStageListStageWork"
          },
          "description": "(Required) A stage specifies the work to be performed when the Recovery Plan is executed.\n"
        }
      },
      "type": "object",
      "required": [
        "delayTimeSecs",
        "stageUuid",
        "stageWorks"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getRecoveryPlanStageListStageWork:getRecoveryPlanStageListStageWork": {
      "properties": {
        "recoverEntities": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetRecoveryPlanStageListStageWorkRecoverEntity:getRecoveryPlanStageListStageWorkRecoverEntity"
          },
          "description": "(Optional/Computed) Information about entities to be recovered.\n"
        }
      },
      "type": "object",
      "required": [
        "recoverEntities"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getRecoveryPlanStageListStageWorkRecoverEntity:getRecoveryPlanStageListStageWorkRecoverEntity": {
      "properties": {
        "entityInfoLists": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetRecoveryPlanStageListStageWorkRecoverEntityEntityInfoList:getRecoveryPlanStageListStageWorkRecoverEntityEntityInfoList"
          },
          "description": "(Optional/Computed) Information about entities to be recovered as part of this stage. For VM, entity information will include set of scripts to be executed after recovery of VM. Only one of categories or<span pulumi-lang-nodejs=\" anyEntityReference \" pulumi-lang-dotnet=\" AnyEntityReference \" pulumi-lang-go=\" anyEntityReference \" pulumi-lang-python=\" any_entity_reference \" pulumi-lang-yaml=\" anyEntityReference \" pulumi-lang-java=\" anyEntityReference \"> any_entity_reference </span>has to be provided.\n* `stage_list.stage_work.0.recover_entities.0.entity_info_list.#.any_entity_reference_kind` - (Optional/Computed) Reference to a kind.\n* `stage_list.stage_work.0.recover_entities.0.entity_info_list.#.any_entity_reference_uuid` - (Optional/Computed) Reference to a uuid.\n* `stage_list.stage_work.0.recover_entities.0.entity_info_list.#.any_entity_reference_name` - (Optional/Computed) Reference to a name.\n* `stage_list.stage_work.0.recover_entities.0.entity_info_list.#.categories` - (Optional/Computed)  Categories for filtering entities.\n"
        }
      },
      "type": "object",
      "required": [
        "entityInfoLists"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getRecoveryPlanStageListStageWorkRecoverEntityEntityInfoList:getRecoveryPlanStageListStageWorkRecoverEntityEntityInfoList": {
      "properties": {
        "anyEntityReferenceKind": {
          "type": "string"
        },
        "anyEntityReferenceName": {
          "type": "string"
        },
        "anyEntityReferenceUuid": {
          "type": "string"
        },
        "categories": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetRecoveryPlanStageListStageWorkRecoverEntityEntityInfoListCategory:getRecoveryPlanStageListStageWorkRecoverEntityEntityInfoListCategory"
          }
        },
        "scriptLists": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetRecoveryPlanStageListStageWorkRecoverEntityEntityInfoListScriptList:getRecoveryPlanStageListStageWorkRecoverEntityEntityInfoListScriptList"
          }
        }
      },
      "type": "object",
      "required": [
        "anyEntityReferenceKind",
        "anyEntityReferenceName",
        "anyEntityReferenceUuid",
        "categories",
        "scriptLists"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getRecoveryPlanStageListStageWorkRecoverEntityEntityInfoListCategory:getRecoveryPlanStageListStageWorkRecoverEntityEntityInfoListCategory": {
      "properties": {
        "name": {
          "type": "string",
          "description": "(Optional) the name.\n"
        },
        "value": {
          "type": "string",
          "description": "value of the key.\n"
        }
      },
      "type": "object",
      "required": [
        "name",
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getRecoveryPlanStageListStageWorkRecoverEntityEntityInfoListScriptList:getRecoveryPlanStageListStageWorkRecoverEntityEntityInfoListScriptList": {
      "properties": {
        "enableScriptExec": {
          "type": "boolean"
        },
        "timeout": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "enableScriptExec",
        "timeout"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getRecoveryPlansEntity:getRecoveryPlansEntity": {
      "properties": {
        "apiVersion": {
          "type": "string",
          "description": "version of the API\n"
        },
        "categories": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetRecoveryPlansEntityCategory:getRecoveryPlansEntityCategory"
          }
        },
        "description": {
          "type": "string",
          "description": "A description for recovery plan.\n"
        },
        "metadata": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          }
        },
        "name": {
          "type": "string",
          "description": "(Optional) the name.\n"
        },
        "ownerReferences": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetRecoveryPlansEntityOwnerReference:getRecoveryPlansEntityOwnerReference"
          }
        },
        "parameters": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetRecoveryPlansEntityParameter:getRecoveryPlansEntityParameter"
          },
          "description": "(Required) Parameters for the Recovery Plan.\n"
        },
        "projectReferences": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetRecoveryPlansEntityProjectReference:getRecoveryPlansEntityProjectReference"
          }
        },
        "stageLists": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetRecoveryPlansEntityStageList:getRecoveryPlansEntityStageList"
          },
          "description": "(Required) Input for the stages of the Recovery Plan. Each stage will perform a predefined type of task.\n"
        },
        "state": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "apiVersion",
        "categories",
        "description",
        "metadata",
        "name",
        "ownerReferences",
        "parameters",
        "projectReferences",
        "stageLists",
        "state"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getRecoveryPlansEntityCategory:getRecoveryPlansEntityCategory": {
      "properties": {
        "name": {
          "type": "string",
          "description": "(Optional) the name.\n"
        },
        "value": {
          "type": "string",
          "description": "value of the key.\n"
        }
      },
      "type": "object",
      "required": [
        "name",
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getRecoveryPlansEntityOwnerReference:getRecoveryPlansEntityOwnerReference": {
      "properties": {
        "kind": {
          "type": "string",
          "description": "(Required) The kind name (Default value: <span pulumi-lang-nodejs=\"`project`\" pulumi-lang-dotnet=\"`Project`\" pulumi-lang-go=\"`project`\" pulumi-lang-python=\"`project`\" pulumi-lang-yaml=\"`project`\" pulumi-lang-java=\"`project`\">`project`</span>).\n"
        },
        "name": {
          "type": "string",
          "description": "(Optional) the name.\n"
        },
        "uuid": {
          "type": "string",
          "description": "(Required) the UUID.\n"
        }
      },
      "type": "object",
      "required": [
        "kind",
        "name",
        "uuid"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getRecoveryPlansEntityParameter:getRecoveryPlansEntityParameter": {
      "properties": {
        "floatingIpAssignmentLists": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetRecoveryPlansEntityParameterFloatingIpAssignmentList:getRecoveryPlansEntityParameterFloatingIpAssignmentList"
          },
          "description": "(Optional/Computed) Floating IP assignment for VMs upon recovery in an Availability Zone. This is applicable only for the public cloud Availability Zones.\n* `parameters.0.floating_ip_assignment_list.#.availability_zone_url` - (Required) URL of the Availability Zone.\n* `parameters.0.floating_ip_assignment_list.#.vm_ip_assignment_list` - (Required) IP assignment for VMs upon recovery in the specified Availability Zone.\n* `parameters.0.floating_ip_assignment_list.#.vm_ip_assignment_list.#.test_floating_ip_config` - (Optional/Computed) Configuration for assigning floating IP to a VM on the execution of the Recovery Plan.\n* `parameters.0.floating_ip_assignment_list.#.vm_ip_assignment_list.#.test_floating_ip_config.ip` - (Optional/Computed) IP to be assigned to VM, in case of failover.\n* `parameters.0.floating_ip_assignment_list.#.vm_ip_assignment_list.#.test_floating_ip_config.should_allocate_dynamically` - (Optional/Computed) Whether to allocate the floating IPs for the VMs dynamically.\n* `parameters.0.floating_ip_assignment_list.#.vm_ip_assignment_list.#.recovery_floating_ip_config` - (Optional/Computed) Configuration for assigning floating IP to a VM on the execution of the Recovery Plan.\n* `parameters.0.floating_ip_assignment_list.#.vm_ip_assignment_list.#.recovery_floating_ip_config.ip` - (Optional/Computed) IP to be assigned to VM, in case of failover.\n* `parameters.0.floating_ip_assignment_list.#.vm_ip_assignment_list.#.recovery_floating_ip_config.should_allocate_dynamically` - (Optional/Computed) Whether to allocate the floating IPs for the VMs dynamically.\n* `parameters.0.floating_ip_assignment_list.#.vm_ip_assignment_list.#.vm_reference` - (Required) Reference to a vm.\n* `parameters.0.floating_ip_assignment_list.#.vm_ip_assignment_list.#.vm_reference.kind` - (Required) The kind name.\n* `parameters.0.floating_ip_assignment_list.#.vm_ip_assignment_list.#.vm_reference.uuid` - (Required) The uuid.\n* `parameters.0.floating_ip_assignment_list.#.vm_ip_assignment_list.#.vm_reference.name` - (Optional/Computed) The name.\n* `parameters.0.floating_ip_assignment_list.#.vm_ip_assignment_list.#.vm_nic_information` - (Required) Information about vnic to which floating IP has to be assigned.\n* `parameters.0.floating_ip_assignment_list.#.vm_ip_assignment_list.#.vm_nic_information.ip` - (Optional/Computed) IP address associated with vnic for which floating IP has to be assigned on failover.\n* `parameters.0.floating_ip_assignment_list.#.vm_ip_assignment_list.#.vm_nic_information.uuid` - (Required) Uuid of the vnic of the VM to which floating IP has to be assigned.\n"
        },
        "networkMappingLists": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetRecoveryPlansEntityParameterNetworkMappingList:getRecoveryPlansEntityParameterNetworkMappingList"
          },
          "description": "(Required) Network mappings to be used for the Recovery Plan. This will be represented by array of network mappings across the Availability Zones.\n* `parameters.0.network_mapping_list.#.availability_zone_network_mapping_list` - (Required) Mapping of networks across the Availability Zones.\n* `parameters.0.network_mapping_list.#.availability_zone_network_mapping_list.#.availability_zone_url` - (Optional/Computed) URL of the Availability Zone.\n* `parameters.0.network_mapping_list.#.availability_zone_network_mapping_list.#.recovery_network` - (Optional/Computed) Network configuration to be used for performing network mapping and IP preservation/mapping on Recovery Plan execution.\n* `parameters.0.network_mapping_list.#.availability_zone_network_mapping_list.#.recovery_network.0.virtual_network_reference` - (Optional/Computed) The reference to a virtual_network.\n* `parameters.0.network_mapping_list.#.availability_zone_network_mapping_list.#.recovery_network.0.virtual_network_reference.kind` - (Optional/Computed) The kind name.\n* `parameters.0.network_mapping_list.#.availability_zone_network_mapping_list.#.recovery_network.0.virtual_network_reference.uuid` - (Optional/Computed) The uuid.\n* `parameters.0.network_mapping_list.#.availability_zone_network_mapping_list.#.recovery_network.0.virtual_network_reference.name` - (Optional/Computed) The name.\n* `parameters.0.network_mapping_list.#.availability_zone_network_mapping_list.#.recovery_network.0.use_vpc_reference` - (Optional/Computed) The reference to a VPC.\n* `parameters.0.network_mapping_list.#.availability_zone_network_mapping_list.#.recovery_network.0.vpc_reference` - (Optional/Computed) The reference to a VPC.\n* `parameters.0.network_mapping_list.#.availability_zone_network_mapping_list.#.recovery_network.0.vpc_reference.kind` - (Optional/Computed) The kind name.\n* `parameters.0.network_mapping_list.#.availability_zone_network_mapping_list.#.recovery_network.0.vpc_reference.uuid` - (Optional/Computed) The uuid.\n* `parameters.0.network_mapping_list.#.availability_zone_network_mapping_list.#.recovery_network.0.vpc_reference.name` - (Optional/Computed) The name.\n* `parameters.0.network_mapping_list.#.availability_zone_network_mapping_list.#.recovery_network.0.subnet_list` - (Optional/Computed) List of subnets for the network.\n* `parameters.0.network_mapping_list.#.availability_zone_network_mapping_list.#.recovery_network.0.subnet_list.#.gateway_ip` - (Required) Gateway IP address for the subnet.\n* `parameters.0.network_mapping_list.#.availability_zone_network_mapping_list.#.recovery_network.0.subnet_list.#.external_connectivity_state` - (Optional/Computed) External connectivity state of the subnet. This is applicable only for the subnet to be created in public cloud Availability Zone.\n* `parameters.0.network_mapping_list.#.availability_zone_network_mapping_list.#.recovery_network.0.subnet_list.#.prefix_length` - (Required) Prefix length for the subnet.\n* `parameters.0.network_mapping_list.#.availability_zone_network_mapping_list.#.recovery_network.0.name` - (Required) Name of the network.\n* `parameters.0.network_mapping_list.#.availability_zone_network_mapping_list.#.test_network` - (Optional/Computed) Network configuration to be used for performing network mapping and IP preservation/mapping on Recovery Plan execution.\n* `parameters.0.network_mapping_list.#.availability_zone_network_mapping_list.#.test_network.0.virtual_network_reference` - (Optional/Computed) The reference to a virtual_network.\n* `parameters.0.network_mapping_list.#.availability_zone_network_mapping_list.#.test_network.0.virtual_network_reference.kind` - (Optional/Computed) The kind name.\n* `parameters.0.network_mapping_list.#.availability_zone_network_mapping_list.#.test_network.0.virtual_network_reference.uuid` - (Optional/Computed) The uuid.\n* `parameters.0.network_mapping_list.#.availability_zone_network_mapping_list.#.test_network.0.virtual_network_reference.name` - (Optional/Computed) The name.\n* `parameters.0.network_mapping_list.#.availability_zone_network_mapping_list.#.test_network.0.subnet_list` - (Optional/Computed) List of subnets for the network.\n* `parameters.0.network_mapping_list.#.availability_zone_network_mapping_list.#.test_network.0.subnet_list.#.gateway_ip` - (Required) Gateway IP address for the subnet.\n* `parameters.0.network_mapping_list.#.availability_zone_network_mapping_list.#.test_network.0.subnet_list.#.external_connectivity_state` - (Optional/Computed) External connectivity state of the subnet. This is applicable only for the subnet to be created in public cloud Availability Zone.\n* `parameters.0.network_mapping_list.#.availability_zone_network_mapping_list.#.test_network.0.subnet_list.#.prefix_length` - (Required) Prefix length for the subnet.\n* `parameters.0.network_mapping_list.#.availability_zone_network_mapping_list.#.test_network.0.name` - (Required) Name of the network.\n* `parameters.0.network_mapping_list.#.availability_zone_network_mapping_list.#.recovery_ip_assignment_list` - (Optional/Computed) Static IP configuration for the VMs to be applied post recovery in the recovery network for migrate/ failover action on the Recovery Plan.\n* `parameters.0.network_mapping_list.#.availability_zone_network_mapping_list.#.recovery_ip_assignment_list.0.vm_reference` - (Optional/Computed) The reference to a vm.\n* `parameters.0.network_mapping_list.#.availability_zone_network_mapping_list.#.recovery_ip_assignment_list.0.vm_reference.kind` - (Optional/Computed) The kind name.\n* `parameters.0.network_mapping_list.#.availability_zone_network_mapping_list.#.recovery_ip_assignment_list.0.vm_reference.uuid` - (Optional/Computed) The uuid.\n* `parameters.0.network_mapping_list.#.availability_zone_network_mapping_list.#.recovery_ip_assignment_list.0.vm_reference.name` - (Optional/Computed) The name.\n* `parameters.0.network_mapping_list.#.availability_zone_network_mapping_list.#.recovery_ip_assignment_list.0.ip_config_list` - (Optional/Computed) List of IP configurations for a VM.\n* `parameters.0.network_mapping_list.#.availability_zone_network_mapping_list.#.recovery_ip_assignment_list.0.ip_config_list.#.ip_address` - (Required) IP address.\n* `parameters.0.network_mapping_list.#.availability_zone_network_mapping_list.#.test_ip_assignment_list` - (Optional/Computed) Static IP configuration for the VMs to be applied post recovery in the test network for test failover action on the Recovery Plan.\n* `parameters.0.network_mapping_list.#.availability_zone_network_mapping_list.#.test_ip_assignment_list.0.vm_reference` - (Optional/Computed) The reference to a vm.\n* `parameters.0.network_mapping_list.#.availability_zone_network_mapping_list.#.test_ip_assignment_list.0.vm_reference.kind` - (Optional/Computed) The kind name.\n* `parameters.0.network_mapping_list.#.availability_zone_network_mapping_list.#.test_ip_assignment_list.0.vm_reference.uuid` - (Optional/Computed) The uuid.\n* `parameters.0.network_mapping_list.#.availability_zone_network_mapping_list.#.test_ip_assignment_list.0.vm_reference.name` - (Optional/Computed) The name.\n* `parameters.0.network_mapping_list.#.availability_zone_network_mapping_list.#.test_ip_assignment_list.0.ip_config_list` - (Optional/Computed) List of IP configurations for a VM.\n* `parameters.0.network_mapping_list.#.availability_zone_network_mapping_list.#.test_ip_assignment_list.0.ip_config_list.#.ip_address` - (Required) IP address.\n* `parameters.0.network_mapping_list.#.availability_zone_network_mapping_list.#.cluster_reference_list` - (Optional/Computed) The clusters where the recovery and test networks reside. This is required to specify network mapping across clusters for a Recovery Plan created to handle failover within the same Availability Zone.\n* `parameters.0.network_mapping_list.#.availability_zone_network_mapping_list.#.cluster_reference_list.0.kind` - (Optional/Computed) The kind name.\n* `parameters.0.network_mapping_list.#.availability_zone_network_mapping_list.#.cluster_reference_list.0.uuid` - (Optional/Computed) The uuid.\n* `parameters.0.network_mapping_list.#.availability_zone_network_mapping_list.#.test_ip_assignment_list.0.name` - (Optional/Computed) The name.\n"
        }
      },
      "type": "object",
      "required": [
        "floatingIpAssignmentLists",
        "networkMappingLists"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getRecoveryPlansEntityParameterFloatingIpAssignmentList:getRecoveryPlansEntityParameterFloatingIpAssignmentList": {
      "properties": {
        "availabilityZoneUrl": {
          "type": "string"
        },
        "vmIpAssignmentLists": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetRecoveryPlansEntityParameterFloatingIpAssignmentListVmIpAssignmentList:getRecoveryPlansEntityParameterFloatingIpAssignmentListVmIpAssignmentList"
          }
        }
      },
      "type": "object",
      "required": [
        "availabilityZoneUrl",
        "vmIpAssignmentLists"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getRecoveryPlansEntityParameterFloatingIpAssignmentListVmIpAssignmentList:getRecoveryPlansEntityParameterFloatingIpAssignmentListVmIpAssignmentList": {
      "properties": {
        "recoveryFloatingIpConfigs": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetRecoveryPlansEntityParameterFloatingIpAssignmentListVmIpAssignmentListRecoveryFloatingIpConfig:getRecoveryPlansEntityParameterFloatingIpAssignmentListVmIpAssignmentListRecoveryFloatingIpConfig"
          }
        },
        "testFloatingIpConfigs": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetRecoveryPlansEntityParameterFloatingIpAssignmentListVmIpAssignmentListTestFloatingIpConfig:getRecoveryPlansEntityParameterFloatingIpAssignmentListVmIpAssignmentListTestFloatingIpConfig"
          }
        },
        "vmNicInformations": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetRecoveryPlansEntityParameterFloatingIpAssignmentListVmIpAssignmentListVmNicInformation:getRecoveryPlansEntityParameterFloatingIpAssignmentListVmIpAssignmentListVmNicInformation"
          }
        },
        "vmReferences": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetRecoveryPlansEntityParameterFloatingIpAssignmentListVmIpAssignmentListVmReference:getRecoveryPlansEntityParameterFloatingIpAssignmentListVmIpAssignmentListVmReference"
          }
        }
      },
      "type": "object",
      "required": [
        "recoveryFloatingIpConfigs",
        "testFloatingIpConfigs",
        "vmNicInformations",
        "vmReferences"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getRecoveryPlansEntityParameterFloatingIpAssignmentListVmIpAssignmentListRecoveryFloatingIpConfig:getRecoveryPlansEntityParameterFloatingIpAssignmentListVmIpAssignmentListRecoveryFloatingIpConfig": {
      "properties": {
        "ip": {
          "type": "string"
        },
        "shouldAllocateDynamically": {
          "type": "boolean"
        }
      },
      "type": "object",
      "required": [
        "ip",
        "shouldAllocateDynamically"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getRecoveryPlansEntityParameterFloatingIpAssignmentListVmIpAssignmentListTestFloatingIpConfig:getRecoveryPlansEntityParameterFloatingIpAssignmentListVmIpAssignmentListTestFloatingIpConfig": {
      "properties": {
        "ip": {
          "type": "string"
        },
        "shouldAllocateDynamically": {
          "type": "boolean"
        }
      },
      "type": "object",
      "required": [
        "ip",
        "shouldAllocateDynamically"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getRecoveryPlansEntityParameterFloatingIpAssignmentListVmIpAssignmentListVmNicInformation:getRecoveryPlansEntityParameterFloatingIpAssignmentListVmIpAssignmentListVmNicInformation": {
      "properties": {
        "ip": {
          "type": "string"
        },
        "uuid": {
          "type": "string",
          "description": "(Required) the UUID.\n"
        }
      },
      "type": "object",
      "required": [
        "ip",
        "uuid"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getRecoveryPlansEntityParameterFloatingIpAssignmentListVmIpAssignmentListVmReference:getRecoveryPlansEntityParameterFloatingIpAssignmentListVmIpAssignmentListVmReference": {
      "properties": {
        "kind": {
          "type": "string",
          "description": "(Required) The kind name (Default value: <span pulumi-lang-nodejs=\"`project`\" pulumi-lang-dotnet=\"`Project`\" pulumi-lang-go=\"`project`\" pulumi-lang-python=\"`project`\" pulumi-lang-yaml=\"`project`\" pulumi-lang-java=\"`project`\">`project`</span>).\n"
        },
        "name": {
          "type": "string",
          "description": "(Optional) the name.\n"
        },
        "uuid": {
          "type": "string",
          "description": "(Required) the UUID.\n"
        }
      },
      "type": "object",
      "required": [
        "kind",
        "name",
        "uuid"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getRecoveryPlansEntityParameterNetworkMappingList:getRecoveryPlansEntityParameterNetworkMappingList": {
      "properties": {
        "areNetworksStretched": {
          "type": "boolean"
        },
        "availabilityZoneNetworkMappingLists": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetRecoveryPlansEntityParameterNetworkMappingListAvailabilityZoneNetworkMappingList:getRecoveryPlansEntityParameterNetworkMappingListAvailabilityZoneNetworkMappingList"
          }
        }
      },
      "type": "object",
      "required": [
        "areNetworksStretched",
        "availabilityZoneNetworkMappingLists"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getRecoveryPlansEntityParameterNetworkMappingListAvailabilityZoneNetworkMappingList:getRecoveryPlansEntityParameterNetworkMappingListAvailabilityZoneNetworkMappingList": {
      "properties": {
        "availabilityZoneUrl": {
          "type": "string"
        },
        "clusterReferenceLists": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetRecoveryPlansEntityParameterNetworkMappingListAvailabilityZoneNetworkMappingListClusterReferenceList:getRecoveryPlansEntityParameterNetworkMappingListAvailabilityZoneNetworkMappingListClusterReferenceList"
          }
        },
        "recoveryIpAssignmentLists": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetRecoveryPlansEntityParameterNetworkMappingListAvailabilityZoneNetworkMappingListRecoveryIpAssignmentList:getRecoveryPlansEntityParameterNetworkMappingListAvailabilityZoneNetworkMappingListRecoveryIpAssignmentList"
          }
        },
        "recoveryNetworks": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetRecoveryPlansEntityParameterNetworkMappingListAvailabilityZoneNetworkMappingListRecoveryNetwork:getRecoveryPlansEntityParameterNetworkMappingListAvailabilityZoneNetworkMappingListRecoveryNetwork"
          }
        },
        "testIpAssignmentLists": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetRecoveryPlansEntityParameterNetworkMappingListAvailabilityZoneNetworkMappingListTestIpAssignmentList:getRecoveryPlansEntityParameterNetworkMappingListAvailabilityZoneNetworkMappingListTestIpAssignmentList"
          }
        },
        "testNetworks": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetRecoveryPlansEntityParameterNetworkMappingListAvailabilityZoneNetworkMappingListTestNetwork:getRecoveryPlansEntityParameterNetworkMappingListAvailabilityZoneNetworkMappingListTestNetwork"
          }
        }
      },
      "type": "object",
      "required": [
        "availabilityZoneUrl",
        "clusterReferenceLists",
        "recoveryIpAssignmentLists",
        "recoveryNetworks",
        "testIpAssignmentLists",
        "testNetworks"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getRecoveryPlansEntityParameterNetworkMappingListAvailabilityZoneNetworkMappingListClusterReferenceList:getRecoveryPlansEntityParameterNetworkMappingListAvailabilityZoneNetworkMappingListClusterReferenceList": {
      "properties": {
        "kind": {
          "type": "string",
          "description": "(Required) The kind name (Default value: <span pulumi-lang-nodejs=\"`project`\" pulumi-lang-dotnet=\"`Project`\" pulumi-lang-go=\"`project`\" pulumi-lang-python=\"`project`\" pulumi-lang-yaml=\"`project`\" pulumi-lang-java=\"`project`\">`project`</span>).\n"
        },
        "name": {
          "type": "string",
          "description": "(Optional) the name.\n"
        },
        "uuid": {
          "type": "string",
          "description": "(Required) the UUID.\n"
        }
      },
      "type": "object",
      "required": [
        "kind",
        "name",
        "uuid"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getRecoveryPlansEntityParameterNetworkMappingListAvailabilityZoneNetworkMappingListRecoveryIpAssignmentList:getRecoveryPlansEntityParameterNetworkMappingListAvailabilityZoneNetworkMappingListRecoveryIpAssignmentList": {
      "properties": {
        "ipConfigLists": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetRecoveryPlansEntityParameterNetworkMappingListAvailabilityZoneNetworkMappingListRecoveryIpAssignmentListIpConfigList:getRecoveryPlansEntityParameterNetworkMappingListAvailabilityZoneNetworkMappingListRecoveryIpAssignmentListIpConfigList"
          }
        },
        "vmReference": {
          "$ref": "#/types/nutanix:index%2FgetRecoveryPlansEntityParameterNetworkMappingListAvailabilityZoneNetworkMappingListRecoveryIpAssignmentListVmReference:getRecoveryPlansEntityParameterNetworkMappingListAvailabilityZoneNetworkMappingListRecoveryIpAssignmentListVmReference"
        }
      },
      "type": "object",
      "required": [
        "ipConfigLists",
        "vmReference"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getRecoveryPlansEntityParameterNetworkMappingListAvailabilityZoneNetworkMappingListRecoveryIpAssignmentListIpConfigList:getRecoveryPlansEntityParameterNetworkMappingListAvailabilityZoneNetworkMappingListRecoveryIpAssignmentListIpConfigList": {
      "properties": {
        "ipAddress": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "ipAddress"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getRecoveryPlansEntityParameterNetworkMappingListAvailabilityZoneNetworkMappingListRecoveryIpAssignmentListVmReference:getRecoveryPlansEntityParameterNetworkMappingListAvailabilityZoneNetworkMappingListRecoveryIpAssignmentListVmReference": {
      "properties": {
        "kind": {
          "type": "string",
          "description": "(Required) The kind name (Default value: <span pulumi-lang-nodejs=\"`project`\" pulumi-lang-dotnet=\"`Project`\" pulumi-lang-go=\"`project`\" pulumi-lang-python=\"`project`\" pulumi-lang-yaml=\"`project`\" pulumi-lang-java=\"`project`\">`project`</span>).\n"
        },
        "name": {
          "type": "string",
          "description": "(Optional) the name.\n"
        },
        "uuid": {
          "type": "string",
          "description": "(Required) the UUID.\n"
        }
      },
      "type": "object",
      "required": [
        "kind",
        "name",
        "uuid"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getRecoveryPlansEntityParameterNetworkMappingListAvailabilityZoneNetworkMappingListRecoveryNetwork:getRecoveryPlansEntityParameterNetworkMappingListAvailabilityZoneNetworkMappingListRecoveryNetwork": {
      "properties": {
        "name": {
          "type": "string",
          "description": "(Optional) the name.\n"
        },
        "subnetLists": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetRecoveryPlansEntityParameterNetworkMappingListAvailabilityZoneNetworkMappingListRecoveryNetworkSubnetList:getRecoveryPlansEntityParameterNetworkMappingListAvailabilityZoneNetworkMappingListRecoveryNetworkSubnetList"
          }
        },
        "useVpcReference": {
          "type": "boolean"
        },
        "virtualNetworkReferences": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetRecoveryPlansEntityParameterNetworkMappingListAvailabilityZoneNetworkMappingListRecoveryNetworkVirtualNetworkReference:getRecoveryPlansEntityParameterNetworkMappingListAvailabilityZoneNetworkMappingListRecoveryNetworkVirtualNetworkReference"
          }
        },
        "vpcReferences": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetRecoveryPlansEntityParameterNetworkMappingListAvailabilityZoneNetworkMappingListRecoveryNetworkVpcReference:getRecoveryPlansEntityParameterNetworkMappingListAvailabilityZoneNetworkMappingListRecoveryNetworkVpcReference"
          }
        }
      },
      "type": "object",
      "required": [
        "name",
        "subnetLists",
        "useVpcReference",
        "virtualNetworkReferences",
        "vpcReferences"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getRecoveryPlansEntityParameterNetworkMappingListAvailabilityZoneNetworkMappingListRecoveryNetworkSubnetList:getRecoveryPlansEntityParameterNetworkMappingListAvailabilityZoneNetworkMappingListRecoveryNetworkSubnetList": {
      "properties": {
        "externalConnectivityState": {
          "type": "string"
        },
        "gatewayIp": {
          "type": "string"
        },
        "prefixLength": {
          "type": "integer"
        }
      },
      "type": "object",
      "required": [
        "externalConnectivityState",
        "gatewayIp",
        "prefixLength"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getRecoveryPlansEntityParameterNetworkMappingListAvailabilityZoneNetworkMappingListRecoveryNetworkVirtualNetworkReference:getRecoveryPlansEntityParameterNetworkMappingListAvailabilityZoneNetworkMappingListRecoveryNetworkVirtualNetworkReference": {
      "properties": {
        "kind": {
          "type": "string",
          "description": "(Required) The kind name (Default value: <span pulumi-lang-nodejs=\"`project`\" pulumi-lang-dotnet=\"`Project`\" pulumi-lang-go=\"`project`\" pulumi-lang-python=\"`project`\" pulumi-lang-yaml=\"`project`\" pulumi-lang-java=\"`project`\">`project`</span>).\n"
        },
        "name": {
          "type": "string",
          "description": "(Optional) the name.\n"
        },
        "uuid": {
          "type": "string",
          "description": "(Required) the UUID.\n"
        }
      },
      "type": "object",
      "required": [
        "kind",
        "name",
        "uuid"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getRecoveryPlansEntityParameterNetworkMappingListAvailabilityZoneNetworkMappingListRecoveryNetworkVpcReference:getRecoveryPlansEntityParameterNetworkMappingListAvailabilityZoneNetworkMappingListRecoveryNetworkVpcReference": {
      "properties": {
        "kind": {
          "type": "string",
          "description": "(Required) The kind name (Default value: <span pulumi-lang-nodejs=\"`project`\" pulumi-lang-dotnet=\"`Project`\" pulumi-lang-go=\"`project`\" pulumi-lang-python=\"`project`\" pulumi-lang-yaml=\"`project`\" pulumi-lang-java=\"`project`\">`project`</span>).\n"
        },
        "name": {
          "type": "string",
          "description": "(Optional) the name.\n"
        },
        "uuid": {
          "type": "string",
          "description": "(Required) the UUID.\n"
        }
      },
      "type": "object",
      "required": [
        "kind",
        "name",
        "uuid"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getRecoveryPlansEntityParameterNetworkMappingListAvailabilityZoneNetworkMappingListTestIpAssignmentList:getRecoveryPlansEntityParameterNetworkMappingListAvailabilityZoneNetworkMappingListTestIpAssignmentList": {
      "properties": {
        "ipConfigLists": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetRecoveryPlansEntityParameterNetworkMappingListAvailabilityZoneNetworkMappingListTestIpAssignmentListIpConfigList:getRecoveryPlansEntityParameterNetworkMappingListAvailabilityZoneNetworkMappingListTestIpAssignmentListIpConfigList"
          }
        },
        "vmReference": {
          "$ref": "#/types/nutanix:index%2FgetRecoveryPlansEntityParameterNetworkMappingListAvailabilityZoneNetworkMappingListTestIpAssignmentListVmReference:getRecoveryPlansEntityParameterNetworkMappingListAvailabilityZoneNetworkMappingListTestIpAssignmentListVmReference"
        }
      },
      "type": "object",
      "required": [
        "ipConfigLists",
        "vmReference"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getRecoveryPlansEntityParameterNetworkMappingListAvailabilityZoneNetworkMappingListTestIpAssignmentListIpConfigList:getRecoveryPlansEntityParameterNetworkMappingListAvailabilityZoneNetworkMappingListTestIpAssignmentListIpConfigList": {
      "properties": {
        "ipAddress": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "ipAddress"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getRecoveryPlansEntityParameterNetworkMappingListAvailabilityZoneNetworkMappingListTestIpAssignmentListVmReference:getRecoveryPlansEntityParameterNetworkMappingListAvailabilityZoneNetworkMappingListTestIpAssignmentListVmReference": {
      "properties": {
        "kind": {
          "type": "string",
          "description": "(Required) The kind name (Default value: <span pulumi-lang-nodejs=\"`project`\" pulumi-lang-dotnet=\"`Project`\" pulumi-lang-go=\"`project`\" pulumi-lang-python=\"`project`\" pulumi-lang-yaml=\"`project`\" pulumi-lang-java=\"`project`\">`project`</span>).\n"
        },
        "name": {
          "type": "string",
          "description": "(Optional) the name.\n"
        },
        "uuid": {
          "type": "string",
          "description": "(Required) the UUID.\n"
        }
      },
      "type": "object",
      "required": [
        "kind",
        "name",
        "uuid"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getRecoveryPlansEntityParameterNetworkMappingListAvailabilityZoneNetworkMappingListTestNetwork:getRecoveryPlansEntityParameterNetworkMappingListAvailabilityZoneNetworkMappingListTestNetwork": {
      "properties": {
        "name": {
          "type": "string",
          "description": "(Optional) the name.\n"
        },
        "subnetLists": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetRecoveryPlansEntityParameterNetworkMappingListAvailabilityZoneNetworkMappingListTestNetworkSubnetList:getRecoveryPlansEntityParameterNetworkMappingListAvailabilityZoneNetworkMappingListTestNetworkSubnetList"
          }
        },
        "useVpcReference": {
          "type": "boolean"
        },
        "virtualNetworkReferences": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetRecoveryPlansEntityParameterNetworkMappingListAvailabilityZoneNetworkMappingListTestNetworkVirtualNetworkReference:getRecoveryPlansEntityParameterNetworkMappingListAvailabilityZoneNetworkMappingListTestNetworkVirtualNetworkReference"
          }
        },
        "vpcReferences": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetRecoveryPlansEntityParameterNetworkMappingListAvailabilityZoneNetworkMappingListTestNetworkVpcReference:getRecoveryPlansEntityParameterNetworkMappingListAvailabilityZoneNetworkMappingListTestNetworkVpcReference"
          }
        }
      },
      "type": "object",
      "required": [
        "name",
        "subnetLists",
        "useVpcReference",
        "virtualNetworkReferences",
        "vpcReferences"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getRecoveryPlansEntityParameterNetworkMappingListAvailabilityZoneNetworkMappingListTestNetworkSubnetList:getRecoveryPlansEntityParameterNetworkMappingListAvailabilityZoneNetworkMappingListTestNetworkSubnetList": {
      "properties": {
        "externalConnectivityState": {
          "type": "string"
        },
        "gatewayIp": {
          "type": "string"
        },
        "prefixLength": {
          "type": "integer"
        }
      },
      "type": "object",
      "required": [
        "externalConnectivityState",
        "gatewayIp",
        "prefixLength"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getRecoveryPlansEntityParameterNetworkMappingListAvailabilityZoneNetworkMappingListTestNetworkVirtualNetworkReference:getRecoveryPlansEntityParameterNetworkMappingListAvailabilityZoneNetworkMappingListTestNetworkVirtualNetworkReference": {
      "properties": {
        "kind": {
          "type": "string",
          "description": "(Required) The kind name (Default value: <span pulumi-lang-nodejs=\"`project`\" pulumi-lang-dotnet=\"`Project`\" pulumi-lang-go=\"`project`\" pulumi-lang-python=\"`project`\" pulumi-lang-yaml=\"`project`\" pulumi-lang-java=\"`project`\">`project`</span>).\n"
        },
        "name": {
          "type": "string",
          "description": "(Optional) the name.\n"
        },
        "uuid": {
          "type": "string",
          "description": "(Required) the UUID.\n"
        }
      },
      "type": "object",
      "required": [
        "kind",
        "name",
        "uuid"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getRecoveryPlansEntityParameterNetworkMappingListAvailabilityZoneNetworkMappingListTestNetworkVpcReference:getRecoveryPlansEntityParameterNetworkMappingListAvailabilityZoneNetworkMappingListTestNetworkVpcReference": {
      "properties": {
        "kind": {
          "type": "string",
          "description": "(Required) The kind name (Default value: <span pulumi-lang-nodejs=\"`project`\" pulumi-lang-dotnet=\"`Project`\" pulumi-lang-go=\"`project`\" pulumi-lang-python=\"`project`\" pulumi-lang-yaml=\"`project`\" pulumi-lang-java=\"`project`\">`project`</span>).\n"
        },
        "name": {
          "type": "string",
          "description": "(Optional) the name.\n"
        },
        "uuid": {
          "type": "string",
          "description": "(Required) the UUID.\n"
        }
      },
      "type": "object",
      "required": [
        "kind",
        "name",
        "uuid"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getRecoveryPlansEntityProjectReference:getRecoveryPlansEntityProjectReference": {
      "properties": {
        "kind": {
          "type": "string",
          "description": "(Required) The kind name (Default value: <span pulumi-lang-nodejs=\"`project`\" pulumi-lang-dotnet=\"`Project`\" pulumi-lang-go=\"`project`\" pulumi-lang-python=\"`project`\" pulumi-lang-yaml=\"`project`\" pulumi-lang-java=\"`project`\">`project`</span>).\n"
        },
        "name": {
          "type": "string",
          "description": "(Optional) the name.\n"
        },
        "uuid": {
          "type": "string",
          "description": "(Required) the UUID.\n"
        }
      },
      "type": "object",
      "required": [
        "kind",
        "name",
        "uuid"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getRecoveryPlansEntityStageList:getRecoveryPlansEntityStageList": {
      "properties": {
        "delayTimeSecs": {
          "type": "integer",
          "description": "(Optional/Computed) Amount of time in seconds to delay the execution of next stage after execution of current stage.\n"
        },
        "stageUuid": {
          "type": "string",
          "description": "(Optional/Computed) UUID of stage.\n"
        },
        "stageWorks": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetRecoveryPlansEntityStageListStageWork:getRecoveryPlansEntityStageListStageWork"
          },
          "description": "(Required) A stage specifies the work to be performed when the Recovery Plan is executed.\n"
        }
      },
      "type": "object",
      "required": [
        "delayTimeSecs",
        "stageUuid",
        "stageWorks"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getRecoveryPlansEntityStageListStageWork:getRecoveryPlansEntityStageListStageWork": {
      "properties": {
        "recoverEntities": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetRecoveryPlansEntityStageListStageWorkRecoverEntity:getRecoveryPlansEntityStageListStageWorkRecoverEntity"
          },
          "description": "(Optional/Computed) Information about entities to be recovered.\n"
        }
      },
      "type": "object",
      "required": [
        "recoverEntities"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getRecoveryPlansEntityStageListStageWorkRecoverEntity:getRecoveryPlansEntityStageListStageWorkRecoverEntity": {
      "properties": {
        "entityInfoLists": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetRecoveryPlansEntityStageListStageWorkRecoverEntityEntityInfoList:getRecoveryPlansEntityStageListStageWorkRecoverEntityEntityInfoList"
          },
          "description": "(Optional/Computed) Information about entities to be recovered as part of this stage. For VM, entity information will include set of scripts to be executed after recovery of VM. Only one of categories or<span pulumi-lang-nodejs=\" anyEntityReference \" pulumi-lang-dotnet=\" AnyEntityReference \" pulumi-lang-go=\" anyEntityReference \" pulumi-lang-python=\" any_entity_reference \" pulumi-lang-yaml=\" anyEntityReference \" pulumi-lang-java=\" anyEntityReference \"> any_entity_reference </span>has to be provided.\n* `stage_list.stage_work.0.recover_entities.0.entity_info_list.#.any_entity_reference_kind` - (Optional/Computed) Reference to a kind.\n* `stage_list.stage_work.0.recover_entities.0.entity_info_list.#.any_entity_reference_uuid` - (Optional/Computed) Reference to a uuid.\n* `stage_list.stage_work.0.recover_entities.0.entity_info_list.#.any_entity_reference_name` - (Optional/Computed) Reference to a name.\n* `stage_list.stage_work.0.recover_entities.0.entity_info_list.#.categories` - (Optional/Computed)  Categories for filtering entities.\n"
        }
      },
      "type": "object",
      "required": [
        "entityInfoLists"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getRecoveryPlansEntityStageListStageWorkRecoverEntityEntityInfoList:getRecoveryPlansEntityStageListStageWorkRecoverEntityEntityInfoList": {
      "properties": {
        "anyEntityReferenceKind": {
          "type": "string"
        },
        "anyEntityReferenceName": {
          "type": "string"
        },
        "anyEntityReferenceUuid": {
          "type": "string"
        },
        "categories": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetRecoveryPlansEntityStageListStageWorkRecoverEntityEntityInfoListCategory:getRecoveryPlansEntityStageListStageWorkRecoverEntityEntityInfoListCategory"
          }
        },
        "scriptLists": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetRecoveryPlansEntityStageListStageWorkRecoverEntityEntityInfoListScriptList:getRecoveryPlansEntityStageListStageWorkRecoverEntityEntityInfoListScriptList"
          }
        }
      },
      "type": "object",
      "required": [
        "anyEntityReferenceKind",
        "anyEntityReferenceName",
        "anyEntityReferenceUuid",
        "categories",
        "scriptLists"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getRecoveryPlansEntityStageListStageWorkRecoverEntityEntityInfoListCategory:getRecoveryPlansEntityStageListStageWorkRecoverEntityEntityInfoListCategory": {
      "properties": {
        "name": {
          "type": "string",
          "description": "(Optional) the name.\n"
        },
        "value": {
          "type": "string",
          "description": "value of the key.\n"
        }
      },
      "type": "object",
      "required": [
        "name",
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getRecoveryPlansEntityStageListStageWorkRecoverEntityEntityInfoListScriptList:getRecoveryPlansEntityStageListStageWorkRecoverEntityEntityInfoListScriptList": {
      "properties": {
        "enableScriptExec": {
          "type": "boolean"
        },
        "timeout": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "enableScriptExec",
        "timeout"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getRecoveryPointV2Link:getRecoveryPointV2Link": {
      "properties": {
        "href": {
          "type": "string",
          "description": "- The URL at which the entity described by the link can be accessed.\n"
        },
        "rel": {
          "type": "string",
          "description": "- A name that identifies the relationship of the link to the object that is returned by the URL. The unique value of \"self\" identifies the URL for the object.\n"
        }
      },
      "type": "object",
      "required": [
        "href",
        "rel"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getRecoveryPointV2LocationReference:getRecoveryPointV2LocationReference": {
      "properties": {
        "locationExtId": {
          "type": "string",
          "description": "External identifier of the cluster where the recovery point is present.\n"
        }
      },
      "type": "object",
      "required": [
        "locationExtId"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getRecoveryPointV2VmRecoveryPoint:getRecoveryPointV2VmRecoveryPoint": {
      "properties": {
        "applicationConsistentProperties": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetRecoveryPointV2VmRecoveryPointApplicationConsistentProperty:getRecoveryPointV2VmRecoveryPointApplicationConsistentProperty"
          },
          "description": "User-defined application-consistent properties for the recovery point.\n"
        },
        "consistencyGroupExtId": {
          "type": "string",
          "description": "External identifier of the Consistency group which the entity was part of at the time of recovery point creation.\n"
        },
        "creationTime": {
          "type": "string",
          "description": "The UTC date and time in ISO-8601 format when the Recovery point is created.\n"
        },
        "diskRecoveryPoints": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetRecoveryPointV2VmRecoveryPointDiskRecoveryPoint:getRecoveryPointV2VmRecoveryPointDiskRecoveryPoint"
          },
          "description": "array of disk recovery points.\n"
        },
        "expirationTime": {
          "type": "string",
          "description": "The UTC date and time in ISO-8601 format when the current Recovery point expires and will be garbage collected.\n"
        },
        "extId": {
          "type": "string",
          "description": "recovery point UUID\n"
        },
        "links": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetRecoveryPointV2VmRecoveryPointLink:getRecoveryPointV2VmRecoveryPointLink"
          },
          "description": "A HATEOAS style link for the response. Each link contains a user-friendly name identifying the link and an address for retrieving the particular resource.\n"
        },
        "locationAgnosticId": {
          "type": "string",
          "description": "Location agnostic identifier of the recovery point. This identifier is used to identify the same instances of a recovery point across different sites.\n"
        },
        "name": {
          "type": "string",
          "description": "The name of the Recovery point.\n"
        },
        "recoveryPointType": {
          "type": "string",
          "description": "Type of the Recovery point.\n"
        },
        "status": {
          "type": "string",
          "description": "The status of the Recovery point, which indicates whether this Recovery point is fit to be consumed.\n* supported values:\n* `COMPLETE`: -  The Recovery point is in a complete state and ready to be consumed.\n"
        },
        "tenantId": {
          "type": "string",
          "description": "A globally unique identifier that represents the tenant that owns this entity\n"
        },
        "vmCategories": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "Category key-value pairs associated with the VM at the time of recovery point creation. The category key and value are separated by '/'. For example, a category with key 'dept' and value 'hr' is displayed as 'dept/hr'.\n"
        },
        "vmExtId": {
          "type": "string",
          "description": "VM external identifier which is captured as a part of this recovery point.\n"
        }
      },
      "type": "object",
      "required": [
        "applicationConsistentProperties",
        "consistencyGroupExtId",
        "creationTime",
        "diskRecoveryPoints",
        "expirationTime",
        "extId",
        "links",
        "locationAgnosticId",
        "name",
        "recoveryPointType",
        "status",
        "tenantId",
        "vmCategories",
        "vmExtId"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getRecoveryPointV2VmRecoveryPointApplicationConsistentProperty:getRecoveryPointV2VmRecoveryPointApplicationConsistentProperty": {
      "properties": {
        "backupType": {
          "type": "string",
          "description": "The backup type specifies the criteria for identifying the files to be backed up. This property should be specified to the application-consistent recovery points for Windows VMs/agents. The following backup types are supported for the application-consistent recovery points:\n* supported values:\n* `FULL_BACKUP`: -  All the files are backed up irrespective of their last backup date/time or state. Also, this backup type updates the backup history of each file that participated in the recovery point. If not explicitly specified, this is the default backup type.\n* `COPY_BACKUP`: -  this backup type does not update the backup history of individual files involved in the recovery point.\n"
        },
        "objectType": {
          "type": "string",
          "description": "value: `dataprotection.v4.common.VssProperties`\n"
        },
        "shouldIncludeWriters": {
          "type": "boolean",
          "description": "Indicates whether the given set of VSS writers' UUIDs should be included or excluded from the application consistent recovery point. By default, the value is set to false, indicating that all listed VSS writers' UUIDs will be excluded.\n"
        },
        "shouldStoreVssMetadata": {
          "type": "boolean",
          "description": "Indicates whether to store the VSS metadata if the user is interested in application-specific backup/restore. The VSS metadata consists of VSS writers and requester metadata details. These are compressed into a cabinet file(.cab file) during a VSS backup operation. This cabinet file must be saved to the backup media during a backup operation, as it is required during the restore operation.\n"
        },
        "writers": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "List of VSS writer UUIDs that are used in an application consistent recovery point. The default values are the system and the registry writer UUIDs.\n"
        }
      },
      "type": "object",
      "required": [
        "backupType",
        "objectType",
        "shouldIncludeWriters",
        "shouldStoreVssMetadata",
        "writers"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getRecoveryPointV2VmRecoveryPointDiskRecoveryPoint:getRecoveryPointV2VmRecoveryPointDiskRecoveryPoint": {
      "properties": {
        "diskExtId": {
          "type": "string",
          "description": "External identifier of the disk.\n"
        },
        "diskRecoveryPointExtId": {
          "type": "string",
          "description": "External identifier of the disk recovery point.\n"
        }
      },
      "type": "object",
      "required": [
        "diskExtId",
        "diskRecoveryPointExtId"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getRecoveryPointV2VmRecoveryPointLink:getRecoveryPointV2VmRecoveryPointLink": {
      "properties": {
        "href": {
          "type": "string",
          "description": "- The URL at which the entity described by the link can be accessed.\n"
        },
        "rel": {
          "type": "string",
          "description": "- A name that identifies the relationship of the link to the object that is returned by the URL. The unique value of \"self\" identifies the URL for the object.\n"
        }
      },
      "type": "object",
      "required": [
        "href",
        "rel"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getRecoveryPointV2VolumeGroupRecoveryPoint:getRecoveryPointV2VolumeGroupRecoveryPoint": {
      "properties": {
        "consistencyGroupExtId": {
          "type": "string",
          "description": "External identifier of the Consistency group which the entity was part of at the time of recovery point creation.\n"
        },
        "diskRecoveryPoints": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetRecoveryPointV2VolumeGroupRecoveryPointDiskRecoveryPoint:getRecoveryPointV2VolumeGroupRecoveryPointDiskRecoveryPoint"
          },
          "description": "array of disk recovery points.\n"
        },
        "extId": {
          "type": "string",
          "description": "recovery point UUID\n"
        },
        "links": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetRecoveryPointV2VolumeGroupRecoveryPointLink:getRecoveryPointV2VolumeGroupRecoveryPointLink"
          },
          "description": "A HATEOAS style link for the response. Each link contains a user-friendly name identifying the link and an address for retrieving the particular resource.\n"
        },
        "locationAgnosticId": {
          "type": "string",
          "description": "Location agnostic identifier of the recovery point. This identifier is used to identify the same instances of a recovery point across different sites.\n"
        },
        "tenantId": {
          "type": "string",
          "description": "A globally unique identifier that represents the tenant that owns this entity\n"
        },
        "volumeGroupCategories": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "Category key-value pairs associated with the volume group at the time of recovery point creation. The category key and value are separated by '/'. For example, a category with key 'dept' and value 'hr' will be represented as 'dept/hr'.\n"
        },
        "volumeGroupExtId": {
          "type": "string",
          "description": "Volume Group external identifier which is captured as part of this recovery point.\n"
        }
      },
      "type": "object",
      "required": [
        "consistencyGroupExtId",
        "diskRecoveryPoints",
        "extId",
        "links",
        "locationAgnosticId",
        "tenantId",
        "volumeGroupCategories",
        "volumeGroupExtId"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getRecoveryPointV2VolumeGroupRecoveryPointDiskRecoveryPoint:getRecoveryPointV2VolumeGroupRecoveryPointDiskRecoveryPoint": {
      "properties": {
        "diskExtId": {
          "type": "string",
          "description": "External identifier of the disk.\n"
        },
        "diskRecoveryPointExtId": {
          "type": "string",
          "description": "External identifier of the disk recovery point.\n"
        }
      },
      "type": "object",
      "required": [
        "diskExtId",
        "diskRecoveryPointExtId"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getRecoveryPointV2VolumeGroupRecoveryPointLink:getRecoveryPointV2VolumeGroupRecoveryPointLink": {
      "properties": {
        "href": {
          "type": "string",
          "description": "- The URL at which the entity described by the link can be accessed.\n"
        },
        "rel": {
          "type": "string",
          "description": "- A name that identifies the relationship of the link to the object that is returned by the URL. The unique value of \"self\" identifies the URL for the object.\n"
        }
      },
      "type": "object",
      "required": [
        "href",
        "rel"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getRecoveryPointsV2RecoveryPoint:getRecoveryPointsV2RecoveryPoint": {
      "properties": {
        "creationTime": {
          "type": "string"
        },
        "expirationTime": {
          "type": "string"
        },
        "extId": {
          "type": "string"
        },
        "links": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetRecoveryPointsV2RecoveryPointLink:getRecoveryPointsV2RecoveryPointLink"
          }
        },
        "locationAgnosticId": {
          "type": "string"
        },
        "locationReferences": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetRecoveryPointsV2RecoveryPointLocationReference:getRecoveryPointsV2RecoveryPointLocationReference"
          }
        },
        "name": {
          "type": "string"
        },
        "ownerExtId": {
          "type": "string"
        },
        "recoveryPointType": {
          "type": "string"
        },
        "status": {
          "type": "string"
        },
        "tenantId": {
          "type": "string"
        },
        "vmRecoveryPoints": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetRecoveryPointsV2RecoveryPointVmRecoveryPoint:getRecoveryPointsV2RecoveryPointVmRecoveryPoint"
          }
        },
        "volumeGroupRecoveryPoints": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetRecoveryPointsV2RecoveryPointVolumeGroupRecoveryPoint:getRecoveryPointsV2RecoveryPointVolumeGroupRecoveryPoint"
          }
        }
      },
      "type": "object",
      "required": [
        "creationTime",
        "expirationTime",
        "extId",
        "links",
        "locationAgnosticId",
        "locationReferences",
        "name",
        "ownerExtId",
        "recoveryPointType",
        "status",
        "tenantId",
        "vmRecoveryPoints",
        "volumeGroupRecoveryPoints"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getRecoveryPointsV2RecoveryPointLink:getRecoveryPointsV2RecoveryPointLink": {
      "properties": {
        "href": {
          "type": "string"
        },
        "rel": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "href",
        "rel"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getRecoveryPointsV2RecoveryPointLocationReference:getRecoveryPointsV2RecoveryPointLocationReference": {
      "properties": {
        "locationExtId": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "locationExtId"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getRecoveryPointsV2RecoveryPointVmRecoveryPoint:getRecoveryPointsV2RecoveryPointVmRecoveryPoint": {
      "properties": {
        "applicationConsistentProperties": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetRecoveryPointsV2RecoveryPointVmRecoveryPointApplicationConsistentProperty:getRecoveryPointsV2RecoveryPointVmRecoveryPointApplicationConsistentProperty"
          }
        },
        "consistencyGroupExtId": {
          "type": "string"
        },
        "creationTime": {
          "type": "string"
        },
        "diskRecoveryPoints": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetRecoveryPointsV2RecoveryPointVmRecoveryPointDiskRecoveryPoint:getRecoveryPointsV2RecoveryPointVmRecoveryPointDiskRecoveryPoint"
          }
        },
        "expirationTime": {
          "type": "string"
        },
        "extId": {
          "type": "string"
        },
        "links": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetRecoveryPointsV2RecoveryPointVmRecoveryPointLink:getRecoveryPointsV2RecoveryPointVmRecoveryPointLink"
          }
        },
        "locationAgnosticId": {
          "type": "string"
        },
        "name": {
          "type": "string"
        },
        "recoveryPointType": {
          "type": "string"
        },
        "status": {
          "type": "string"
        },
        "tenantId": {
          "type": "string"
        },
        "vmCategories": {
          "type": "array",
          "items": {
            "type": "string"
          }
        },
        "vmExtId": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "applicationConsistentProperties",
        "consistencyGroupExtId",
        "creationTime",
        "diskRecoveryPoints",
        "expirationTime",
        "extId",
        "links",
        "locationAgnosticId",
        "name",
        "recoveryPointType",
        "status",
        "tenantId",
        "vmCategories",
        "vmExtId"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getRecoveryPointsV2RecoveryPointVmRecoveryPointApplicationConsistentProperty:getRecoveryPointsV2RecoveryPointVmRecoveryPointApplicationConsistentProperty": {
      "properties": {
        "backupType": {
          "type": "string"
        },
        "objectType": {
          "type": "string"
        },
        "shouldIncludeWriters": {
          "type": "boolean"
        },
        "shouldStoreVssMetadata": {
          "type": "boolean"
        },
        "writers": {
          "type": "array",
          "items": {
            "type": "string"
          }
        }
      },
      "type": "object",
      "required": [
        "backupType",
        "objectType",
        "shouldIncludeWriters",
        "shouldStoreVssMetadata",
        "writers"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getRecoveryPointsV2RecoveryPointVmRecoveryPointDiskRecoveryPoint:getRecoveryPointsV2RecoveryPointVmRecoveryPointDiskRecoveryPoint": {
      "properties": {
        "diskExtId": {
          "type": "string"
        },
        "diskRecoveryPointExtId": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "diskExtId",
        "diskRecoveryPointExtId"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getRecoveryPointsV2RecoveryPointVmRecoveryPointLink:getRecoveryPointsV2RecoveryPointVmRecoveryPointLink": {
      "properties": {
        "href": {
          "type": "string"
        },
        "rel": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "href",
        "rel"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getRecoveryPointsV2RecoveryPointVolumeGroupRecoveryPoint:getRecoveryPointsV2RecoveryPointVolumeGroupRecoveryPoint": {
      "properties": {
        "consistencyGroupExtId": {
          "type": "string"
        },
        "diskRecoveryPoints": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetRecoveryPointsV2RecoveryPointVolumeGroupRecoveryPointDiskRecoveryPoint:getRecoveryPointsV2RecoveryPointVolumeGroupRecoveryPointDiskRecoveryPoint"
          }
        },
        "extId": {
          "type": "string"
        },
        "links": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetRecoveryPointsV2RecoveryPointVolumeGroupRecoveryPointLink:getRecoveryPointsV2RecoveryPointVolumeGroupRecoveryPointLink"
          }
        },
        "locationAgnosticId": {
          "type": "string"
        },
        "tenantId": {
          "type": "string"
        },
        "volumeGroupCategories": {
          "type": "array",
          "items": {
            "type": "string"
          }
        },
        "volumeGroupExtId": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "consistencyGroupExtId",
        "diskRecoveryPoints",
        "extId",
        "links",
        "locationAgnosticId",
        "tenantId",
        "volumeGroupCategories",
        "volumeGroupExtId"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getRecoveryPointsV2RecoveryPointVolumeGroupRecoveryPointDiskRecoveryPoint:getRecoveryPointsV2RecoveryPointVolumeGroupRecoveryPointDiskRecoveryPoint": {
      "properties": {
        "diskExtId": {
          "type": "string"
        },
        "diskRecoveryPointExtId": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "diskExtId",
        "diskRecoveryPointExtId"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getRecoveryPointsV2RecoveryPointVolumeGroupRecoveryPointLink:getRecoveryPointsV2RecoveryPointVolumeGroupRecoveryPointLink": {
      "properties": {
        "href": {
          "type": "string"
        },
        "rel": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "href",
        "rel"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getRestorablePcsV2RestorablePc:getRestorablePcsV2RestorablePc": {
      "properties": {
        "configs": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetRestorablePcsV2RestorablePcConfig:getRestorablePcsV2RestorablePcConfig"
          },
          "description": "* `extId`\n"
        },
        "extId": {
          "type": "string"
        },
        "hostingClusterExtId": {
          "type": "string"
        },
        "isRegisteredWithHostingCluster": {
          "type": "boolean"
        },
        "links": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetRestorablePcsV2RestorablePcLink:getRestorablePcsV2RestorablePcLink"
          }
        },
        "networks": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetRestorablePcsV2RestorablePcNetwork:getRestorablePcsV2RestorablePcNetwork"
          }
        },
        "nodeExtIds": {
          "type": "array",
          "items": {
            "type": "string"
          }
        },
        "shouldEnableHighAvailability": {
          "type": "boolean"
        },
        "tenantId": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "configs",
        "extId",
        "hostingClusterExtId",
        "isRegisteredWithHostingCluster",
        "links",
        "networks",
        "nodeExtIds",
        "tenantId"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getRestorablePcsV2RestorablePcConfig:getRestorablePcsV2RestorablePcConfig": {
      "properties": {
        "bootstrapConfigs": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetRestorablePcsV2RestorablePcConfigBootstrapConfig:getRestorablePcsV2RestorablePcConfigBootstrapConfig"
          }
        },
        "buildInfos": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetRestorablePcsV2RestorablePcConfigBuildInfo:getRestorablePcsV2RestorablePcConfigBuildInfo"
          }
        },
        "name": {
          "type": "string"
        },
        "resourceConfigs": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetRestorablePcsV2RestorablePcConfigResourceConfig:getRestorablePcsV2RestorablePcConfigResourceConfig"
          }
        },
        "shouldEnableLockdownMode": {
          "type": "boolean"
        },
        "size": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "bootstrapConfigs",
        "buildInfos",
        "name",
        "resourceConfigs",
        "shouldEnableLockdownMode",
        "size"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getRestorablePcsV2RestorablePcConfigBootstrapConfig:getRestorablePcsV2RestorablePcConfigBootstrapConfig": {
      "properties": {
        "environmentInfos": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetRestorablePcsV2RestorablePcConfigBootstrapConfigEnvironmentInfo:getRestorablePcsV2RestorablePcConfigBootstrapConfigEnvironmentInfo"
          }
        }
      },
      "type": "object",
      "required": [
        "environmentInfos"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getRestorablePcsV2RestorablePcConfigBootstrapConfigEnvironmentInfo:getRestorablePcsV2RestorablePcConfigBootstrapConfigEnvironmentInfo": {
      "properties": {
        "providerType": {
          "type": "string"
        },
        "provisioningType": {
          "type": "string"
        },
        "type": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "providerType",
        "provisioningType",
        "type"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getRestorablePcsV2RestorablePcConfigBuildInfo:getRestorablePcsV2RestorablePcConfigBuildInfo": {
      "properties": {
        "version": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "version"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getRestorablePcsV2RestorablePcConfigResourceConfig:getRestorablePcsV2RestorablePcConfigResourceConfig": {
      "properties": {
        "containerExtIds": {
          "type": "array",
          "items": {
            "type": "string"
          }
        },
        "dataDiskSizeBytes": {
          "type": "integer"
        },
        "memorySizeBytes": {
          "type": "integer"
        },
        "numVcpus": {
          "type": "integer"
        }
      },
      "type": "object",
      "required": [
        "containerExtIds",
        "dataDiskSizeBytes",
        "memorySizeBytes",
        "numVcpus"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getRestorablePcsV2RestorablePcLink:getRestorablePcsV2RestorablePcLink": {
      "properties": {
        "href": {
          "type": "string"
        },
        "rel": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "href",
        "rel"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getRestorablePcsV2RestorablePcNetwork:getRestorablePcsV2RestorablePcNetwork": {
      "properties": {
        "externalAddresses": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetRestorablePcsV2RestorablePcNetworkExternalAddress:getRestorablePcsV2RestorablePcNetworkExternalAddress"
          }
        },
        "externalNetworks": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetRestorablePcsV2RestorablePcNetworkExternalNetwork:getRestorablePcsV2RestorablePcNetworkExternalNetwork"
          }
        },
        "fqdn": {
          "type": "string"
        },
        "nameServers": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetRestorablePcsV2RestorablePcNetworkNameServer:getRestorablePcsV2RestorablePcNetworkNameServer"
          }
        },
        "ntpServers": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetRestorablePcsV2RestorablePcNetworkNtpServer:getRestorablePcsV2RestorablePcNetworkNtpServer"
          }
        }
      },
      "type": "object",
      "required": [
        "externalAddresses",
        "externalNetworks",
        "fqdn",
        "nameServers",
        "ntpServers"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getRestorablePcsV2RestorablePcNetworkExternalAddress:getRestorablePcsV2RestorablePcNetworkExternalAddress": {
      "properties": {
        "ipv4s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetRestorablePcsV2RestorablePcNetworkExternalAddressIpv4:getRestorablePcsV2RestorablePcNetworkExternalAddressIpv4"
          }
        },
        "ipv6s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetRestorablePcsV2RestorablePcNetworkExternalAddressIpv6:getRestorablePcsV2RestorablePcNetworkExternalAddressIpv6"
          }
        }
      },
      "type": "object",
      "required": [
        "ipv4s",
        "ipv6s"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getRestorablePcsV2RestorablePcNetworkExternalAddressIpv4:getRestorablePcsV2RestorablePcNetworkExternalAddressIpv4": {
      "properties": {
        "prefixLength": {
          "type": "integer"
        },
        "value": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getRestorablePcsV2RestorablePcNetworkExternalAddressIpv6:getRestorablePcsV2RestorablePcNetworkExternalAddressIpv6": {
      "properties": {
        "prefixLength": {
          "type": "integer"
        },
        "value": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getRestorablePcsV2RestorablePcNetworkExternalNetwork:getRestorablePcsV2RestorablePcNetworkExternalNetwork": {
      "properties": {
        "defaultGateways": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetRestorablePcsV2RestorablePcNetworkExternalNetworkDefaultGateway:getRestorablePcsV2RestorablePcNetworkExternalNetworkDefaultGateway"
          }
        },
        "ipRanges": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetRestorablePcsV2RestorablePcNetworkExternalNetworkIpRange:getRestorablePcsV2RestorablePcNetworkExternalNetworkIpRange"
          }
        },
        "networkExtId": {
          "type": "string"
        },
        "subnetMasks": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetRestorablePcsV2RestorablePcNetworkExternalNetworkSubnetMask:getRestorablePcsV2RestorablePcNetworkExternalNetworkSubnetMask"
          }
        }
      },
      "type": "object",
      "required": [
        "defaultGateways",
        "ipRanges",
        "networkExtId",
        "subnetMasks"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getRestorablePcsV2RestorablePcNetworkExternalNetworkDefaultGateway:getRestorablePcsV2RestorablePcNetworkExternalNetworkDefaultGateway": {
      "properties": {
        "fqdns": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetRestorablePcsV2RestorablePcNetworkExternalNetworkDefaultGatewayFqdn:getRestorablePcsV2RestorablePcNetworkExternalNetworkDefaultGatewayFqdn"
          }
        },
        "ipv4s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetRestorablePcsV2RestorablePcNetworkExternalNetworkDefaultGatewayIpv4:getRestorablePcsV2RestorablePcNetworkExternalNetworkDefaultGatewayIpv4"
          }
        },
        "ipv6s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetRestorablePcsV2RestorablePcNetworkExternalNetworkDefaultGatewayIpv6:getRestorablePcsV2RestorablePcNetworkExternalNetworkDefaultGatewayIpv6"
          }
        }
      },
      "type": "object",
      "required": [
        "fqdns",
        "ipv4s",
        "ipv6s"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getRestorablePcsV2RestorablePcNetworkExternalNetworkDefaultGatewayFqdn:getRestorablePcsV2RestorablePcNetworkExternalNetworkDefaultGatewayFqdn": {
      "properties": {
        "value": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getRestorablePcsV2RestorablePcNetworkExternalNetworkDefaultGatewayIpv4:getRestorablePcsV2RestorablePcNetworkExternalNetworkDefaultGatewayIpv4": {
      "properties": {
        "prefixLength": {
          "type": "integer"
        },
        "value": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getRestorablePcsV2RestorablePcNetworkExternalNetworkDefaultGatewayIpv6:getRestorablePcsV2RestorablePcNetworkExternalNetworkDefaultGatewayIpv6": {
      "properties": {
        "prefixLength": {
          "type": "integer"
        },
        "value": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getRestorablePcsV2RestorablePcNetworkExternalNetworkIpRange:getRestorablePcsV2RestorablePcNetworkExternalNetworkIpRange": {
      "properties": {
        "begins": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetRestorablePcsV2RestorablePcNetworkExternalNetworkIpRangeBegin:getRestorablePcsV2RestorablePcNetworkExternalNetworkIpRangeBegin"
          }
        },
        "ends": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetRestorablePcsV2RestorablePcNetworkExternalNetworkIpRangeEnd:getRestorablePcsV2RestorablePcNetworkExternalNetworkIpRangeEnd"
          }
        }
      },
      "type": "object",
      "required": [
        "begins",
        "ends"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getRestorablePcsV2RestorablePcNetworkExternalNetworkIpRangeBegin:getRestorablePcsV2RestorablePcNetworkExternalNetworkIpRangeBegin": {
      "properties": {
        "ipv4s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetRestorablePcsV2RestorablePcNetworkExternalNetworkIpRangeBeginIpv4:getRestorablePcsV2RestorablePcNetworkExternalNetworkIpRangeBeginIpv4"
          }
        },
        "ipv6s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetRestorablePcsV2RestorablePcNetworkExternalNetworkIpRangeBeginIpv6:getRestorablePcsV2RestorablePcNetworkExternalNetworkIpRangeBeginIpv6"
          }
        }
      },
      "type": "object",
      "required": [
        "ipv4s",
        "ipv6s"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getRestorablePcsV2RestorablePcNetworkExternalNetworkIpRangeBeginIpv4:getRestorablePcsV2RestorablePcNetworkExternalNetworkIpRangeBeginIpv4": {
      "properties": {
        "prefixLength": {
          "type": "integer"
        },
        "value": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getRestorablePcsV2RestorablePcNetworkExternalNetworkIpRangeBeginIpv6:getRestorablePcsV2RestorablePcNetworkExternalNetworkIpRangeBeginIpv6": {
      "properties": {
        "prefixLength": {
          "type": "integer"
        },
        "value": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getRestorablePcsV2RestorablePcNetworkExternalNetworkIpRangeEnd:getRestorablePcsV2RestorablePcNetworkExternalNetworkIpRangeEnd": {
      "properties": {
        "ipv4s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetRestorablePcsV2RestorablePcNetworkExternalNetworkIpRangeEndIpv4:getRestorablePcsV2RestorablePcNetworkExternalNetworkIpRangeEndIpv4"
          }
        },
        "ipv6s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetRestorablePcsV2RestorablePcNetworkExternalNetworkIpRangeEndIpv6:getRestorablePcsV2RestorablePcNetworkExternalNetworkIpRangeEndIpv6"
          }
        }
      },
      "type": "object",
      "required": [
        "ipv4s",
        "ipv6s"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getRestorablePcsV2RestorablePcNetworkExternalNetworkIpRangeEndIpv4:getRestorablePcsV2RestorablePcNetworkExternalNetworkIpRangeEndIpv4": {
      "properties": {
        "prefixLength": {
          "type": "integer"
        },
        "value": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getRestorablePcsV2RestorablePcNetworkExternalNetworkIpRangeEndIpv6:getRestorablePcsV2RestorablePcNetworkExternalNetworkIpRangeEndIpv6": {
      "properties": {
        "prefixLength": {
          "type": "integer"
        },
        "value": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getRestorablePcsV2RestorablePcNetworkExternalNetworkSubnetMask:getRestorablePcsV2RestorablePcNetworkExternalNetworkSubnetMask": {
      "properties": {
        "fqdns": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetRestorablePcsV2RestorablePcNetworkExternalNetworkSubnetMaskFqdn:getRestorablePcsV2RestorablePcNetworkExternalNetworkSubnetMaskFqdn"
          }
        },
        "ipv4s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetRestorablePcsV2RestorablePcNetworkExternalNetworkSubnetMaskIpv4:getRestorablePcsV2RestorablePcNetworkExternalNetworkSubnetMaskIpv4"
          }
        },
        "ipv6s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetRestorablePcsV2RestorablePcNetworkExternalNetworkSubnetMaskIpv6:getRestorablePcsV2RestorablePcNetworkExternalNetworkSubnetMaskIpv6"
          }
        }
      },
      "type": "object",
      "required": [
        "fqdns",
        "ipv4s",
        "ipv6s"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getRestorablePcsV2RestorablePcNetworkExternalNetworkSubnetMaskFqdn:getRestorablePcsV2RestorablePcNetworkExternalNetworkSubnetMaskFqdn": {
      "properties": {
        "value": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getRestorablePcsV2RestorablePcNetworkExternalNetworkSubnetMaskIpv4:getRestorablePcsV2RestorablePcNetworkExternalNetworkSubnetMaskIpv4": {
      "properties": {
        "prefixLength": {
          "type": "integer"
        },
        "value": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getRestorablePcsV2RestorablePcNetworkExternalNetworkSubnetMaskIpv6:getRestorablePcsV2RestorablePcNetworkExternalNetworkSubnetMaskIpv6": {
      "properties": {
        "prefixLength": {
          "type": "integer"
        },
        "value": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getRestorablePcsV2RestorablePcNetworkNameServer:getRestorablePcsV2RestorablePcNetworkNameServer": {
      "properties": {
        "fqdns": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetRestorablePcsV2RestorablePcNetworkNameServerFqdn:getRestorablePcsV2RestorablePcNetworkNameServerFqdn"
          }
        },
        "ipv4s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetRestorablePcsV2RestorablePcNetworkNameServerIpv4:getRestorablePcsV2RestorablePcNetworkNameServerIpv4"
          }
        },
        "ipv6s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetRestorablePcsV2RestorablePcNetworkNameServerIpv6:getRestorablePcsV2RestorablePcNetworkNameServerIpv6"
          }
        }
      },
      "type": "object",
      "required": [
        "fqdns",
        "ipv4s",
        "ipv6s"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getRestorablePcsV2RestorablePcNetworkNameServerFqdn:getRestorablePcsV2RestorablePcNetworkNameServerFqdn": {
      "properties": {
        "value": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getRestorablePcsV2RestorablePcNetworkNameServerIpv4:getRestorablePcsV2RestorablePcNetworkNameServerIpv4": {
      "properties": {
        "prefixLength": {
          "type": "integer"
        },
        "value": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getRestorablePcsV2RestorablePcNetworkNameServerIpv6:getRestorablePcsV2RestorablePcNetworkNameServerIpv6": {
      "properties": {
        "prefixLength": {
          "type": "integer"
        },
        "value": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getRestorablePcsV2RestorablePcNetworkNtpServer:getRestorablePcsV2RestorablePcNetworkNtpServer": {
      "properties": {
        "fqdns": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetRestorablePcsV2RestorablePcNetworkNtpServerFqdn:getRestorablePcsV2RestorablePcNetworkNtpServerFqdn"
          }
        },
        "ipv4s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetRestorablePcsV2RestorablePcNetworkNtpServerIpv4:getRestorablePcsV2RestorablePcNetworkNtpServerIpv4"
          }
        },
        "ipv6s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetRestorablePcsV2RestorablePcNetworkNtpServerIpv6:getRestorablePcsV2RestorablePcNetworkNtpServerIpv6"
          }
        }
      },
      "type": "object",
      "required": [
        "fqdns",
        "ipv4s",
        "ipv6s"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getRestorablePcsV2RestorablePcNetworkNtpServerFqdn:getRestorablePcsV2RestorablePcNetworkNtpServerFqdn": {
      "properties": {
        "value": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getRestorablePcsV2RestorablePcNetworkNtpServerIpv4:getRestorablePcsV2RestorablePcNetworkNtpServerIpv4": {
      "properties": {
        "prefixLength": {
          "type": "integer"
        },
        "value": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getRestorablePcsV2RestorablePcNetworkNtpServerIpv6:getRestorablePcsV2RestorablePcNetworkNtpServerIpv6": {
      "properties": {
        "prefixLength": {
          "type": "integer"
        },
        "value": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getRoleCategory:getRoleCategory": {
      "properties": {
        "name": {
          "type": "string",
          "description": "- the name(Optional).\n"
        },
        "value": {
          "type": "string",
          "description": "- value of the key.\n"
        }
      },
      "type": "object",
      "required": [
        "name",
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getRolePermissionReferenceList:getRolePermissionReferenceList": {
      "properties": {
        "kind": {
          "type": "string",
          "description": "- The kind name (Default value: project)(Required).\n"
        },
        "name": {
          "type": "string",
          "description": "- the name(Optional).\n"
        },
        "uuid": {
          "type": "string",
          "description": "- the UUID(Required).\n"
        }
      },
      "type": "object",
      "required": [
        "kind",
        "name",
        "uuid"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getRoleV2Link:getRoleV2Link": {
      "properties": {
        "href": {
          "type": "string",
          "description": "- The URL at which the entity described by the link can be accessed.\n"
        },
        "rel": {
          "type": "string",
          "description": "- A name that identifies the relationship of the link to the object that is returned by the URL. The unique value of \"self\" identifies the URL for the object.\n"
        }
      },
      "type": "object",
      "required": [
        "href",
        "rel"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getRolesEntity:getRolesEntity": {
      "properties": {
        "apiVersion": {
          "type": "string",
          "description": "The version of the API.\n"
        },
        "categories": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetRolesEntityCategory:getRolesEntityCategory"
          },
          "description": "- Categories for the role.\n"
        },
        "description": {
          "type": "string",
          "description": "- The description of the role.\n"
        },
        "metadata": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          },
          "description": "- The role kind metadata.\n"
        },
        "name": {
          "type": "string",
          "description": "- the name(Optional).\n"
        },
        "ownerReference": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          },
          "description": "- The reference to a user.\n"
        },
        "permissionReferenceLists": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetRolesEntityPermissionReferenceList:getRolesEntityPermissionReferenceList"
          },
          "description": "- (Required) List of permission references.\n"
        },
        "projectReference": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          },
          "description": "- The reference to a project.\n"
        },
        "roleId": {
          "type": "string"
        },
        "state": {
          "type": "string",
          "description": "- The state of the role.\n"
        }
      },
      "type": "object",
      "required": [
        "apiVersion",
        "categories",
        "description",
        "metadata",
        "name",
        "ownerReference",
        "permissionReferenceLists",
        "projectReference",
        "roleId",
        "state"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getRolesEntityCategory:getRolesEntityCategory": {
      "properties": {
        "name": {
          "type": "string",
          "description": "- the name(Optional).\n"
        },
        "value": {
          "type": "string",
          "description": "- value of the key.\n"
        }
      },
      "type": "object",
      "required": [
        "name",
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getRolesEntityPermissionReferenceList:getRolesEntityPermissionReferenceList": {
      "properties": {
        "kind": {
          "type": "string",
          "description": "- The kind name (Default value: project)(Required).\n"
        },
        "name": {
          "type": "string",
          "description": "- the name(Optional).\n"
        },
        "uuid": {
          "type": "string",
          "description": "- the UUID(Required).\n"
        }
      },
      "type": "object",
      "required": [
        "kind",
        "name",
        "uuid"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getRolesMetadata:getRolesMetadata": {
      "properties": {
        "filter": {
          "type": "string"
        },
        "kind": {
          "type": "string",
          "description": "- The kind name (Default value: project)(Required).\n"
        },
        "length": {
          "type": "integer"
        },
        "offset": {
          "type": "integer"
        },
        "sortAttribute": {
          "type": "string"
        },
        "sortOrder": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "filter",
        "kind",
        "length",
        "offset",
        "sortAttribute",
        "sortOrder"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getRolesV2Role:getRolesV2Role": {
      "properties": {
        "accessibleClients": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "- List of Accessible Clients for the Role.\n"
        },
        "accessibleEntityTypes": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "- List of Accessible Entity Types for the Role.\n"
        },
        "assignedUsersCount": {
          "type": "integer",
          "description": "- Number of Users assigned to given Role.\n"
        },
        "assignedUsersGroupsCount": {
          "type": "integer",
          "description": "- Number of User Groups assigned to given Role.\n"
        },
        "clientName": {
          "type": "string",
          "description": "- Client that created the entity.\n"
        },
        "createdBy": {
          "type": "string",
          "description": "- User or Service Name that created the Role.\n"
        },
        "createdTime": {
          "type": "string",
          "description": "- The creation time of the Role.\n"
        },
        "description": {
          "type": "string",
          "description": "- Description of the Role.\n"
        },
        "displayName": {
          "type": "string",
          "description": "- The display name for the Role.\n"
        },
        "extId": {
          "type": "string",
          "description": "- A globally unique identifier of an instance that is suitable for external consumption.\n"
        },
        "isSystemDefined": {
          "type": "boolean",
          "description": "- Flag identifying if the Role is system defined or not.\n"
        },
        "lastUpdatedTime": {
          "type": "string",
          "description": "- The time when the Role was last updated.\n"
        },
        "links": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetRolesV2RoleLink:getRolesV2RoleLink"
          },
          "description": "- A HATEOAS style link for the response. Each link contains a user-friendly name identifying the link and an address for retrieving the particular resource.\n"
        },
        "operations": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "- List of operations for the role.\n"
        },
        "tenantId": {
          "type": "string",
          "description": "- A globally unique identifier that represents the tenant that owns this entity. The system automatically assigns it, and it and is immutable from an API consumer perspective (some use cases may cause this Id to change - For instance, a use case may require the transfer of ownership of the entity, but these cases are handled automatically on the server).\n"
        }
      },
      "type": "object",
      "required": [
        "accessibleClients",
        "accessibleEntityTypes",
        "assignedUsersCount",
        "assignedUsersGroupsCount",
        "clientName",
        "createdBy",
        "createdTime",
        "description",
        "displayName",
        "extId",
        "isSystemDefined",
        "lastUpdatedTime",
        "links",
        "operations",
        "tenantId"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getRolesV2RoleLink:getRolesV2RoleLink": {
      "properties": {
        "href": {
          "type": "string",
          "description": "- The URL at which the entity described by the link can be accessed.\n"
        },
        "rel": {
          "type": "string",
          "description": "- A name that identifies the relationship of the link to the object that is returned by the URL. The unique value of \"self\" identifies the URL for the object.\n"
        }
      },
      "type": "object",
      "required": [
        "href",
        "rel"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getRouteTableV2Link:getRouteTableV2Link": {
      "properties": {
        "href": {
          "type": "string"
        },
        "rel": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "href",
        "rel"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getRouteTableV2Metadata:getRouteTableV2Metadata": {
      "properties": {
        "categoryIds": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "A list of globally unique identifiers that represent all the categories the resource is associated with.\n"
        },
        "ownerReferenceId": {
          "type": "string",
          "description": "A globally unique identifier that represents the owner of this resource.\n"
        },
        "ownerUserName": {
          "type": "string",
          "description": "The userName of the owner of this resource.\n"
        },
        "projectName": {
          "type": "string",
          "description": "The name of the project this resource belongs to.\n"
        },
        "projectReferenceId": {
          "type": "string",
          "description": "A globally unique identifier that represents the project this resource belongs to.\n"
        }
      },
      "type": "object",
      "required": [
        "categoryIds",
        "ownerReferenceId",
        "ownerUserName",
        "projectName",
        "projectReferenceId"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getRouteTablesV2RouteTable:getRouteTablesV2RouteTable": {
      "properties": {
        "extId": {
          "type": "string",
          "description": "Route UUID\n"
        },
        "externalRoutingDomainReference": {
          "type": "string",
          "description": "External routing domain associated with this route table.\n"
        },
        "links": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetRouteTablesV2RouteTableLink:getRouteTablesV2RouteTableLink"
          },
          "description": "A HATEOAS style link for the response. Each link contains a user-friendly name identifying the link and an address for retrieving the particular resource.\n"
        },
        "metadatas": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetRouteTablesV2RouteTableMetadata:getRouteTablesV2RouteTableMetadata"
          },
          "description": "Metadata associated with this resource.\n"
        },
        "tenantId": {
          "type": "string",
          "description": "A globally unique identifier that represents the tenant that owns this entity\n"
        },
        "vpcReference": {
          "type": "string",
          "description": "VPC reference.\n"
        }
      },
      "type": "object",
      "required": [
        "extId",
        "externalRoutingDomainReference",
        "links",
        "metadatas",
        "tenantId",
        "vpcReference"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getRouteTablesV2RouteTableLink:getRouteTablesV2RouteTableLink": {
      "properties": {
        "href": {
          "type": "string"
        },
        "rel": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "href",
        "rel"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getRouteTablesV2RouteTableMetadata:getRouteTablesV2RouteTableMetadata": {
      "properties": {
        "categoryIds": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "A list of globally unique identifiers that represent all the categories the resource is associated with.\n"
        },
        "ownerReferenceId": {
          "type": "string",
          "description": "A globally unique identifier that represents the owner of this resource.\n"
        },
        "ownerUserName": {
          "type": "string",
          "description": "The userName of the owner of this resource.\n"
        },
        "projectName": {
          "type": "string",
          "description": "The name of the project this resource belongs to.\n"
        },
        "projectReferenceId": {
          "type": "string",
          "description": "A globally unique identifier that represents the project this resource belongs to.\n"
        }
      },
      "type": "object",
      "required": [
        "categoryIds",
        "ownerReferenceId",
        "ownerUserName",
        "projectName",
        "projectReferenceId"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getRouteV2Destination:getRouteV2Destination": {
      "properties": {
        "ipv4": {
          "$ref": "#/types/nutanix:index%2FgetRouteV2DestinationIpv4:getRouteV2DestinationIpv4",
          "description": "IPv4 Address\n"
        },
        "ipv6": {
          "$ref": "#/types/nutanix:index%2FgetRouteV2DestinationIpv6:getRouteV2DestinationIpv6",
          "description": "IPv6 Address\n"
        }
      },
      "type": "object",
      "required": [
        "ipv4",
        "ipv6"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getRouteV2DestinationIpv4:getRouteV2DestinationIpv4": {
      "properties": {
        "ip": {
          "$ref": "#/types/nutanix:index%2FgetRouteV2DestinationIpv4Ip:getRouteV2DestinationIpv4Ip",
          "description": "An unique address that identifies a device on the internet or a local network in IPv4 format.\n"
        },
        "prefixLength": {
          "type": "integer",
          "description": "The prefix length of the network to which this host IPv4 address belongs.\n"
        }
      },
      "type": "object",
      "required": [
        "ip",
        "prefixLength"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getRouteV2DestinationIpv4Ip:getRouteV2DestinationIpv4Ip": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "The prefix length of the network to which this host IPv4 address belongs.\n"
        },
        "value": {
          "type": "string",
          "description": "The IPv4 address of the host.\n"
        }
      },
      "type": "object",
      "required": [
        "prefixLength",
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getRouteV2DestinationIpv6:getRouteV2DestinationIpv6": {
      "properties": {
        "ip": {
          "$ref": "#/types/nutanix:index%2FgetRouteV2DestinationIpv6Ip:getRouteV2DestinationIpv6Ip",
          "description": "IP address format\n"
        },
        "prefixLength": {
          "type": "integer",
          "description": "The prefix length of the network to which this host IPv6 address belongs.\n"
        }
      },
      "type": "object",
      "required": [
        "ip",
        "prefixLength"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getRouteV2DestinationIpv6Ip:getRouteV2DestinationIpv6Ip": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "The prefix length of the network to which this host IPv6 address belongs.\n"
        },
        "value": {
          "type": "string",
          "description": "The IPv6 address of the host.\n"
        }
      },
      "type": "object",
      "required": [
        "prefixLength",
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getRouteV2Link:getRouteV2Link": {
      "properties": {
        "href": {
          "type": "string"
        },
        "rel": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "href",
        "rel"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getRouteV2Metadata:getRouteV2Metadata": {
      "properties": {
        "categoryIds": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "A list of globally unique identifiers that represent all the categories the resource is associated with.\n"
        },
        "ownerReferenceId": {
          "type": "string",
          "description": "A globally unique identifier that represents the owner of this resource.\n"
        },
        "ownerUserName": {
          "type": "string",
          "description": "The userName of the owner of this resource.\n"
        },
        "projectName": {
          "type": "string",
          "description": "The name of the project this resource belongs to.\n"
        },
        "projectReferenceId": {
          "type": "string",
          "description": "A globally unique identifier that represents the project this resource belongs to.\n"
        }
      },
      "type": "object",
      "required": [
        "categoryIds",
        "ownerReferenceId",
        "ownerUserName",
        "projectName",
        "projectReferenceId"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getRouteV2NextHop:getRouteV2NextHop": {
      "properties": {
        "nextHopIpAddresses": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetRouteV2NextHopNextHopIpAddress:getRouteV2NextHopNextHopIpAddress"
          },
          "description": "An unique address that identifies a device on the internet or a local network in IPv4 or IPv6 format.\n"
        },
        "nextHopName": {
          "type": "string"
        },
        "nextHopReference": {
          "type": "string",
          "description": "The reference to a link, such as a VPN connection or a subnet.\n"
        },
        "nextHopType": {
          "type": "string",
          "description": "Nexthop type.\n- supported values:\n- `LOCAL_SUBNET`: - Next hop is an internal subnet.\n- `DIRECT_CONNECT_VIF`: - Next hop is a direct connect VIF.\n- `VPN_CONNECTION`: - Next hop is a VPN connection.\n- `IP_ADDRESS`: - Next hop is an IP address.\n- `EXTERNAL_SUBNET`: - Next hop is an external subnet.\n"
        }
      },
      "type": "object",
      "required": [
        "nextHopIpAddresses",
        "nextHopName",
        "nextHopReference",
        "nextHopType"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getRouteV2NextHopNextHopIpAddress:getRouteV2NextHopNextHopIpAddress": {
      "properties": {
        "ipv4": {
          "$ref": "#/types/nutanix:index%2FgetRouteV2NextHopNextHopIpAddressIpv4:getRouteV2NextHopNextHopIpAddressIpv4",
          "description": "IPv4 Address\n"
        },
        "ipv6": {
          "$ref": "#/types/nutanix:index%2FgetRouteV2NextHopNextHopIpAddressIpv6:getRouteV2NextHopNextHopIpAddressIpv6",
          "description": "IPv6 Address\n"
        }
      },
      "type": "object",
      "required": [
        "ipv4",
        "ipv6"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getRouteV2NextHopNextHopIpAddressIpv4:getRouteV2NextHopNextHopIpAddressIpv4": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "The prefix length of the network to which this host IPv4 address belongs.\n"
        },
        "value": {
          "type": "string",
          "description": "value of IP address\n"
        }
      },
      "type": "object",
      "required": [
        "prefixLength",
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getRouteV2NextHopNextHopIpAddressIpv6:getRouteV2NextHopNextHopIpAddressIpv6": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "The prefix length of the network to which this host IPv6 address belongs.\n"
        },
        "value": {
          "type": "string",
          "description": "value of IP address\n"
        }
      },
      "type": "object",
      "required": [
        "prefixLength",
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getRoutesV2Route:getRoutesV2Route": {
      "properties": {
        "description": {
          "type": "string",
          "description": "BGP session description.\n"
        },
        "destinations": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetRoutesV2RouteDestination:getRoutesV2RouteDestination"
          },
          "description": "Destination IP Subnet Configuration.\n"
        },
        "extId": {
          "type": "string",
          "description": "Route UUID\n"
        },
        "externalRoutingDomainReference": {
          "type": "string",
          "description": "External routing domain associated with this route table.\n"
        },
        "isActive": {
          "type": "boolean",
          "description": "Indicates whether the route is active in the forwarding plane.\n"
        },
        "links": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetRoutesV2RouteLink:getRoutesV2RouteLink"
          },
          "description": "A HATEOAS style link for the response. Each link contains a user-friendly name identifying the link and an address for retrieving the particular resource.\n"
        },
        "metadatas": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetRoutesV2RouteMetadata:getRoutesV2RouteMetadata"
          },
          "description": "Metadata associated with this resource.\n"
        },
        "name": {
          "type": "string",
          "description": "Route name.\n"
        },
        "nextHops": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetRoutesV2RouteNextHop:getRoutesV2RouteNextHop"
          },
          "description": "Route nexthop.\n"
        },
        "priority": {
          "type": "integer",
          "description": "Route priority. A higher value implies greater preference is assigned to the route.\n"
        },
        "routeTableExtId": {
          "type": "string",
          "description": "Route table UUID\n"
        },
        "routeTableReference": {
          "type": "string",
          "description": "Route table reference.\n"
        },
        "routeType": {
          "type": "string",
          "description": "Route type. Acceptable values are \"STATIC\", \"LOCAL\", \"DYNAMIC\"\n"
        },
        "tenantId": {
          "type": "string",
          "description": "A globally unique identifier that represents the tenant that owns this entity\n"
        },
        "vpcReference": {
          "type": "string",
          "description": "VPC reference.\n"
        }
      },
      "type": "object",
      "required": [
        "description",
        "destinations",
        "extId",
        "externalRoutingDomainReference",
        "isActive",
        "links",
        "metadatas",
        "name",
        "nextHops",
        "priority",
        "routeTableExtId",
        "routeTableReference",
        "routeType",
        "tenantId",
        "vpcReference"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getRoutesV2RouteDestination:getRoutesV2RouteDestination": {
      "properties": {
        "ipv4": {
          "$ref": "#/types/nutanix:index%2FgetRoutesV2RouteDestinationIpv4:getRoutesV2RouteDestinationIpv4",
          "description": "IPv4 Address\n"
        },
        "ipv6": {
          "$ref": "#/types/nutanix:index%2FgetRoutesV2RouteDestinationIpv6:getRoutesV2RouteDestinationIpv6",
          "description": "IPv6 Address\n"
        }
      },
      "type": "object",
      "required": [
        "ipv4",
        "ipv6"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getRoutesV2RouteDestinationIpv4:getRoutesV2RouteDestinationIpv4": {
      "properties": {
        "ip": {
          "$ref": "#/types/nutanix:index%2FgetRoutesV2RouteDestinationIpv4Ip:getRoutesV2RouteDestinationIpv4Ip",
          "description": "An unique address that identifies a device on the internet or a local network in IPv4 format.\n"
        },
        "prefixLength": {
          "type": "integer",
          "description": "The prefix length of the network to which this host IPv4 address belongs.\n"
        }
      },
      "type": "object",
      "required": [
        "ip",
        "prefixLength"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getRoutesV2RouteDestinationIpv4Ip:getRoutesV2RouteDestinationIpv4Ip": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "The prefix length of the network to which this host IPv4 address belongs.\n"
        },
        "value": {
          "type": "string",
          "description": "The IPv4 address of the host.\n"
        }
      },
      "type": "object",
      "required": [
        "prefixLength",
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getRoutesV2RouteDestinationIpv6:getRoutesV2RouteDestinationIpv6": {
      "properties": {
        "ip": {
          "$ref": "#/types/nutanix:index%2FgetRoutesV2RouteDestinationIpv6Ip:getRoutesV2RouteDestinationIpv6Ip",
          "description": "IP address format\n"
        },
        "prefixLength": {
          "type": "integer",
          "description": "The prefix length of the network to which this host IPv6 address belongs.\n"
        }
      },
      "type": "object",
      "required": [
        "ip",
        "prefixLength"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getRoutesV2RouteDestinationIpv6Ip:getRoutesV2RouteDestinationIpv6Ip": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "The prefix length of the network to which this host IPv6 address belongs.\n"
        },
        "value": {
          "type": "string",
          "description": "The IPv6 address of the host.\n"
        }
      },
      "type": "object",
      "required": [
        "prefixLength",
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getRoutesV2RouteLink:getRoutesV2RouteLink": {
      "properties": {
        "href": {
          "type": "string"
        },
        "rel": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "href",
        "rel"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getRoutesV2RouteMetadata:getRoutesV2RouteMetadata": {
      "properties": {
        "categoryIds": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "A list of globally unique identifiers that represent all the categories the resource is associated with.\n"
        },
        "ownerReferenceId": {
          "type": "string",
          "description": "A globally unique identifier that represents the owner of this resource.\n"
        },
        "ownerUserName": {
          "type": "string",
          "description": "The userName of the owner of this resource.\n"
        },
        "projectName": {
          "type": "string",
          "description": "The name of the project this resource belongs to.\n"
        },
        "projectReferenceId": {
          "type": "string",
          "description": "A globally unique identifier that represents the project this resource belongs to.\n"
        }
      },
      "type": "object",
      "required": [
        "categoryIds",
        "ownerReferenceId",
        "ownerUserName",
        "projectName",
        "projectReferenceId"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getRoutesV2RouteNextHop:getRoutesV2RouteNextHop": {
      "properties": {
        "nextHopIpAddresses": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetRoutesV2RouteNextHopNextHopIpAddress:getRoutesV2RouteNextHopNextHopIpAddress"
          }
        },
        "nextHopName": {
          "type": "string"
        },
        "nextHopReference": {
          "type": "string"
        },
        "nextHopType": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "nextHopIpAddresses",
        "nextHopName",
        "nextHopReference",
        "nextHopType"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getRoutesV2RouteNextHopNextHopIpAddress:getRoutesV2RouteNextHopNextHopIpAddress": {
      "properties": {
        "ipv4": {
          "$ref": "#/types/nutanix:index%2FgetRoutesV2RouteNextHopNextHopIpAddressIpv4:getRoutesV2RouteNextHopNextHopIpAddressIpv4",
          "description": "IPv4 Address\n"
        },
        "ipv6": {
          "$ref": "#/types/nutanix:index%2FgetRoutesV2RouteNextHopNextHopIpAddressIpv6:getRoutesV2RouteNextHopNextHopIpAddressIpv6",
          "description": "IPv6 Address\n"
        }
      },
      "type": "object",
      "required": [
        "ipv4",
        "ipv6"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getRoutesV2RouteNextHopNextHopIpAddressIpv4:getRoutesV2RouteNextHopNextHopIpAddressIpv4": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "The prefix length of the network to which this host IPv4 address belongs.\n"
        },
        "value": {
          "type": "string",
          "description": "value of IP address\n"
        }
      },
      "type": "object",
      "required": [
        "prefixLength",
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getRoutesV2RouteNextHopNextHopIpAddressIpv6:getRoutesV2RouteNextHopNextHopIpAddressIpv6": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "The prefix length of the network to which this host IPv6 address belongs.\n"
        },
        "value": {
          "type": "string",
          "description": "value of IP address\n"
        }
      },
      "type": "object",
      "required": [
        "prefixLength",
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getSamlIdentityProviderV2IdpMetadata:getSamlIdentityProviderV2IdpMetadata": {
      "properties": {
        "certificate": {
          "type": "string"
        },
        "entityId": {
          "type": "string"
        },
        "errorUrl": {
          "type": "string"
        },
        "loginUrl": {
          "type": "string"
        },
        "logoutUrl": {
          "type": "string"
        },
        "nameIdPolicyFormat": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "certificate",
        "entityId",
        "errorUrl",
        "loginUrl",
        "logoutUrl",
        "nameIdPolicyFormat"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getSamlIdentityProvidersV2IdentityProvider:getSamlIdentityProvidersV2IdentityProvider": {
      "properties": {
        "createdBy": {
          "type": "string"
        },
        "createdTime": {
          "type": "string"
        },
        "customAttributes": {
          "type": "array",
          "items": {
            "type": "string"
          }
        },
        "emailAttribute": {
          "type": "string"
        },
        "entityIssuer": {
          "type": "string"
        },
        "extId": {
          "type": "string"
        },
        "groupsAttribute": {
          "type": "string"
        },
        "groupsDelim": {
          "type": "string"
        },
        "idpMetadatas": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetSamlIdentityProvidersV2IdentityProviderIdpMetadata:getSamlIdentityProvidersV2IdentityProviderIdpMetadata"
          }
        },
        "isSignedAuthnReqEnabled": {
          "type": "boolean"
        },
        "lastUpdatedTime": {
          "type": "string"
        },
        "name": {
          "type": "string"
        },
        "usernameAttribute": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "createdBy",
        "createdTime",
        "customAttributes",
        "emailAttribute",
        "entityIssuer",
        "extId",
        "groupsAttribute",
        "groupsDelim",
        "idpMetadatas",
        "isSignedAuthnReqEnabled",
        "lastUpdatedTime",
        "name",
        "usernameAttribute"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getSamlIdentityProvidersV2IdentityProviderIdpMetadata:getSamlIdentityProvidersV2IdentityProviderIdpMetadata": {
      "properties": {
        "certificate": {
          "type": "string"
        },
        "entityId": {
          "type": "string"
        },
        "errorUrl": {
          "type": "string"
        },
        "loginUrl": {
          "type": "string"
        },
        "logoutUrl": {
          "type": "string"
        },
        "nameIdPolicyFormat": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "certificate",
        "entityId",
        "errorUrl",
        "loginUrl",
        "logoutUrl",
        "nameIdPolicyFormat"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getSelfServiceAppAction:getSelfServiceAppAction": {
      "properties": {
        "description": {
          "type": "string",
          "description": "A description of the action.\n"
        },
        "name": {
          "type": "string",
          "description": "The name of the action.\n"
        },
        "uuid": {
          "type": "string",
          "description": "The UUID of the action.\n"
        }
      },
      "type": "object",
      "required": [
        "description",
        "name",
        "uuid"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getSelfServiceAppAppSummary:getSelfServiceAppAppSummary": {
      "properties": {
        "applicationProfile": {
          "type": "string",
          "description": "The profile assigned to the application.\n"
        },
        "applicationUuid": {
          "type": "string",
          "description": "The UUID of the application.\n"
        },
        "blueprint": {
          "type": "string",
          "description": "The blueprint associated with the application.\n"
        },
        "createdOn": {
          "type": "string",
          "description": "The timestamp when the application was created.\n"
        },
        "lastUpdatedOn": {
          "type": "string",
          "description": "The timestamp when the application was last updated.\n"
        },
        "owner": {
          "type": "string",
          "description": "The owner of the application.\n"
        },
        "project": {
          "type": "string",
          "description": "The project associated with the application.\n"
        }
      },
      "type": "object",
      "required": [
        "applicationProfile",
        "applicationUuid",
        "blueprint",
        "createdOn",
        "lastUpdatedOn",
        "owner",
        "project"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getSelfServiceAppSnapshotsEntity:getSelfServiceAppSnapshotsEntity": {
      "properties": {
        "actionName": {
          "type": "string",
          "description": "- The name of the action to run to create the snapshot.\n"
        },
        "apiVersion": {
          "type": "string",
          "description": "- The API version used to retrieve the snapshot data.\n"
        },
        "creationTime": {
          "type": "string",
          "description": "-  The creation time of the snapshot.\n"
        },
        "description": {
          "type": "string",
          "description": "- The description of the snapshot.\n"
        },
        "kind": {
          "type": "string",
          "description": "-  The type of resource represented by the snapshot specification.\n"
        },
        "lastUpdateTime": {
          "type": "string",
          "description": "- The last update time of the snapshot.\n"
        },
        "name": {
          "type": "string",
          "description": "- The name of the recovery point.\n"
        },
        "recoveryPointInfoLists": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetSelfServiceAppSnapshotsEntityRecoveryPointInfoList:getSelfServiceAppSnapshotsEntityRecoveryPointInfoList"
          },
          "description": "- The<span pulumi-lang-nodejs=\" recoveryPointInfoList \" pulumi-lang-dotnet=\" RecoveryPointInfoList \" pulumi-lang-go=\" recoveryPointInfoList \" pulumi-lang-python=\" recovery_point_info_list \" pulumi-lang-yaml=\" recoveryPointInfoList \" pulumi-lang-java=\" recoveryPointInfoList \"> recovery_point_info_list </span>contains information about recovery points for the snapshots. Each recovery point has the following attributes:\n"
        },
        "spec": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          },
          "description": "-  The spec block contains the specification details for the snapshot\n"
        },
        "specVersion": {
          "type": "integer",
          "description": "- The version of the snapshot specification.\n"
        },
        "type": {
          "type": "string",
          "description": "-  The type of the snapshot.\n"
        },
        "uuid": {
          "type": "string",
          "description": "-  The UUID of the snapshot.\n"
        }
      },
      "type": "object",
      "required": [
        "actionName",
        "apiVersion",
        "creationTime",
        "description",
        "kind",
        "lastUpdateTime",
        "name",
        "recoveryPointInfoLists",
        "spec",
        "specVersion",
        "type",
        "uuid"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getSelfServiceAppSnapshotsEntityRecoveryPointInfoList:getSelfServiceAppSnapshotsEntityRecoveryPointInfoList": {
      "properties": {
        "configSpecReference": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          },
          "description": "-  A map containing configuration specification references for the recovery point.\n"
        },
        "creationTime": {
          "type": "number",
          "description": "-  The creation time of the snapshot.\n"
        },
        "expirationTime": {
          "type": "number",
          "description": "-  The expiration time of the recovery point.\n"
        },
        "id": {
          "type": "string",
          "description": "-  The ID of the recovery point.\n"
        },
        "kind": {
          "type": "string",
          "description": "-  The type of resource represented by the snapshot specification.\n"
        },
        "locationAgnosticUuid": {
          "type": "string",
          "description": "- The UUID for the location-agnostic reference of the recovery point.\n"
        },
        "name": {
          "type": "string",
          "description": "- The name of the recovery point.\n"
        },
        "recoveryPointType": {
          "type": "string",
          "description": "-  The type of recovery point.\n"
        },
        "serviceReferences": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "-  A list of service references related to the recovery point.\n"
        },
        "snapshotId": {
          "type": "string",
          "description": "- The ID of the snapshot associated with the recovery point.\n"
        }
      },
      "type": "object",
      "required": [
        "configSpecReference",
        "creationTime",
        "expirationTime",
        "id",
        "kind",
        "locationAgnosticUuid",
        "name",
        "recoveryPointType",
        "serviceReferences",
        "snapshotId"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getSelfServiceAppVm:getSelfServiceAppVm": {
      "properties": {
        "categories": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          },
          "description": "-  A map of categories applied to the VM. Each key is a category name, and the value is the category value.\n"
        },
        "clusterInfos": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetSelfServiceAppVmClusterInfo:getSelfServiceAppVmClusterInfo"
          },
          "description": "-  Cluster-related information for the VM.\n"
        },
        "configurations": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetSelfServiceAppVmConfiguration:getSelfServiceAppVmConfiguration"
          },
          "description": "-  Configuration details for the VM.\n"
        },
        "nics": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetSelfServiceAppVmNic:getSelfServiceAppVmNic"
          },
          "description": "-  A list of network interfaces attached to the VM.\n"
        }
      },
      "type": "object",
      "required": [
        "categories",
        "clusterInfos",
        "configurations",
        "nics"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getSelfServiceAppVmClusterInfo:getSelfServiceAppVmClusterInfo": {
      "properties": {
        "clusterName": {
          "type": "string",
          "description": "-   The name of the cluster.\n"
        },
        "clusterUuid": {
          "type": "string",
          "description": "-   The UUID of the cluster.\n"
        }
      },
      "type": "object",
      "required": [
        "clusterName",
        "clusterUuid"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getSelfServiceAppVmConfiguration:getSelfServiceAppVmConfiguration": {
      "properties": {
        "cores": {
          "type": "number",
          "description": "-   Number of CPU cores.\n"
        },
        "image": {
          "type": "string",
          "description": "-   The VM image used.\n"
        },
        "ipAddress": {
          "type": "string",
          "description": "-   IP address of the VM.\n"
        },
        "memory": {
          "type": "number",
          "description": "-  Memory allocated to the VM.\n"
        },
        "name": {
          "type": "string",
          "description": "The name of the action.\n"
        },
        "vcpus": {
          "type": "number",
          "description": "-   Number of virtual CPUs assigned to the VM.\n"
        },
        "vmUuid": {
          "type": "string",
          "description": "-   The UUID of the VM.\n"
        }
      },
      "type": "object",
      "required": [
        "cores",
        "image",
        "ipAddress",
        "memory",
        "name",
        "vcpus",
        "vmUuid"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getSelfServiceAppVmNic:getSelfServiceAppVmNic": {
      "properties": {
        "macAddress": {
          "type": "string",
          "description": "-   The MAC address of the VM's network interface.\n"
        },
        "subnet": {
          "type": "string",
          "description": "-   The subnet the VM's network interface is attached to.\n"
        },
        "type": {
          "type": "string",
          "description": "-   The type of network interface.\n"
        }
      },
      "type": "object",
      "required": [
        "macAddress",
        "subnet",
        "type"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getSelfServiceSnapshotPolicyListPolicyList:getSelfServiceSnapshotPolicyListPolicyList": {
      "properties": {
        "policyExpiryDays": {
          "type": "number",
          "description": "-  The number of days after which the snapshot policy expires.\n"
        },
        "policyName": {
          "type": "string",
          "description": "-  The name of the snapshot policy.\n"
        },
        "policyUuid": {
          "type": "string",
          "description": "- The UUID of the snapshot policy.\n"
        },
        "snapshotConfigName": {
          "type": "string",
          "description": "- The name of the associated snapshot configuration.\n"
        },
        "snapshotConfigUuid": {
          "type": "string",
          "description": "- The UUID of the associated snapshot configuration.\n"
        }
      },
      "type": "object",
      "required": [
        "policyExpiryDays",
        "policyName",
        "policyUuid",
        "snapshotConfigName",
        "snapshotConfigUuid"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getServiceGroupServiceList:getServiceGroupServiceList": {
      "properties": {
        "icmpTypeCodeLists": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetServiceGroupServiceListIcmpTypeCodeList:getServiceGroupServiceListIcmpTypeCodeList"
          }
        },
        "protocol": {
          "type": "string"
        },
        "tcpPortRangeLists": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetServiceGroupServiceListTcpPortRangeList:getServiceGroupServiceListTcpPortRangeList"
          }
        },
        "udpPortRangeLists": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetServiceGroupServiceListUdpPortRangeList:getServiceGroupServiceListUdpPortRangeList"
          }
        }
      },
      "type": "object",
      "required": [
        "icmpTypeCodeLists",
        "protocol",
        "tcpPortRangeLists",
        "udpPortRangeLists"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getServiceGroupServiceListIcmpTypeCodeList:getServiceGroupServiceListIcmpTypeCodeList": {
      "properties": {
        "code": {
          "type": "string"
        },
        "type": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "code",
        "type"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getServiceGroupServiceListTcpPortRangeList:getServiceGroupServiceListTcpPortRangeList": {
      "properties": {
        "endPort": {
          "type": "integer"
        },
        "startPort": {
          "type": "integer"
        }
      },
      "type": "object",
      "required": [
        "endPort",
        "startPort"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getServiceGroupServiceListUdpPortRangeList:getServiceGroupServiceListUdpPortRangeList": {
      "properties": {
        "endPort": {
          "type": "integer"
        },
        "startPort": {
          "type": "integer"
        }
      },
      "type": "object",
      "required": [
        "endPort",
        "startPort"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getServiceGroupV2IcmpService:getServiceGroupV2IcmpService": {
      "properties": {
        "code": {
          "type": "integer",
          "description": "Icmp service Code. Ignore this field if Code has to be ANY\n"
        },
        "isAllAllowed": {
          "type": "boolean",
          "description": "Set this field to true if both Type and Code is ANY.\n"
        },
        "type": {
          "type": "integer",
          "description": "Icmp service Type. Ignore this field if Type has to be ANY.\n"
        }
      },
      "type": "object",
      "required": [
        "code",
        "isAllAllowed",
        "type"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getServiceGroupV2Link:getServiceGroupV2Link": {
      "properties": {
        "href": {
          "type": "string"
        },
        "rel": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "href",
        "rel"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getServiceGroupV2TcpService:getServiceGroupV2TcpService": {
      "properties": {
        "endPort": {
          "type": "integer",
          "description": "end port\n"
        },
        "startPort": {
          "type": "integer",
          "description": "start port\n"
        }
      },
      "type": "object",
      "required": [
        "endPort",
        "startPort"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getServiceGroupV2UdpService:getServiceGroupV2UdpService": {
      "properties": {
        "endPort": {
          "type": "integer",
          "description": "end port\n"
        },
        "startPort": {
          "type": "integer",
          "description": "start port\n"
        }
      },
      "type": "object",
      "required": [
        "endPort",
        "startPort"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getServiceGroupsEntity:getServiceGroupsEntity": {
      "properties": {
        "associatedPoliciesLists": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetServiceGroupsEntityAssociatedPoliciesList:getServiceGroupsEntityAssociatedPoliciesList"
          }
        },
        "serviceGroups": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetServiceGroupsEntityServiceGroup:getServiceGroupsEntityServiceGroup"
          }
        },
        "uuid": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "associatedPoliciesLists",
        "serviceGroups",
        "uuid"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getServiceGroupsEntityAssociatedPoliciesList:getServiceGroupsEntityAssociatedPoliciesList": {
      "properties": {
        "kind": {
          "type": "string"
        },
        "name": {
          "type": "string"
        },
        "uuid": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "kind",
        "name",
        "uuid"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getServiceGroupsEntityServiceGroup:getServiceGroupsEntityServiceGroup": {
      "properties": {
        "description": {
          "type": "string"
        },
        "isSystemDefined": {
          "type": "boolean",
          "description": "specifying whether it is a system defined service group\n"
        },
        "name": {
          "type": "string"
        },
        "serviceLists": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetServiceGroupsEntityServiceGroupServiceList:getServiceGroupsEntityServiceGroupServiceList"
          }
        }
      },
      "type": "object",
      "required": [
        "description",
        "isSystemDefined",
        "name",
        "serviceLists"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getServiceGroupsEntityServiceGroupServiceList:getServiceGroupsEntityServiceGroupServiceList": {
      "properties": {
        "icmpTypeCodeLists": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetServiceGroupsEntityServiceGroupServiceListIcmpTypeCodeList:getServiceGroupsEntityServiceGroupServiceListIcmpTypeCodeList"
          }
        },
        "protocol": {
          "type": "string"
        },
        "tcpPortRangeLists": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetServiceGroupsEntityServiceGroupServiceListTcpPortRangeList:getServiceGroupsEntityServiceGroupServiceListTcpPortRangeList"
          }
        },
        "udpPortRangeLists": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetServiceGroupsEntityServiceGroupServiceListUdpPortRangeList:getServiceGroupsEntityServiceGroupServiceListUdpPortRangeList"
          }
        }
      },
      "type": "object",
      "required": [
        "icmpTypeCodeLists",
        "protocol",
        "tcpPortRangeLists",
        "udpPortRangeLists"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getServiceGroupsEntityServiceGroupServiceListIcmpTypeCodeList:getServiceGroupsEntityServiceGroupServiceListIcmpTypeCodeList": {
      "properties": {
        "code": {
          "type": "string"
        },
        "type": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "code",
        "type"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getServiceGroupsEntityServiceGroupServiceListTcpPortRangeList:getServiceGroupsEntityServiceGroupServiceListTcpPortRangeList": {
      "properties": {
        "endPort": {
          "type": "integer"
        },
        "startPort": {
          "type": "integer"
        }
      },
      "type": "object",
      "required": [
        "endPort",
        "startPort"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getServiceGroupsEntityServiceGroupServiceListUdpPortRangeList:getServiceGroupsEntityServiceGroupServiceListUdpPortRangeList": {
      "properties": {
        "endPort": {
          "type": "integer"
        },
        "startPort": {
          "type": "integer"
        }
      },
      "type": "object",
      "required": [
        "endPort",
        "startPort"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getServiceGroupsMetadata:getServiceGroupsMetadata": {
      "properties": {
        "filter": {
          "type": "string"
        },
        "kind": {
          "type": "string"
        },
        "length": {
          "type": "integer"
        },
        "offset": {
          "type": "integer"
        },
        "sortAttribute": {
          "type": "string"
        },
        "sortOrder": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "filter",
        "kind",
        "length",
        "offset",
        "sortAttribute",
        "sortOrder"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getServiceGroupsV2ServiceGroup:getServiceGroupsV2ServiceGroup": {
      "properties": {
        "createdBy": {
          "type": "string",
          "description": "created by.\n"
        },
        "description": {
          "type": "string",
          "description": "A user defined annotation for an service Group.\n"
        },
        "extId": {
          "type": "string",
          "description": "service group UUID.\n"
        },
        "icmpServices": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetServiceGroupsV2ServiceGroupIcmpService:getServiceGroupsV2ServiceGroupIcmpService"
          },
          "description": "Icmp Type Code List.\n"
        },
        "isSystemDefined": {
          "type": "boolean",
          "description": "Service Group is system defined or not.\n"
        },
        "links": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetServiceGroupsV2ServiceGroupLink:getServiceGroupsV2ServiceGroupLink"
          },
          "description": "A HATEOAS style link for the response. Each link contains a user-friendly name identifying the link and an address for retrieving the particular resource.\n"
        },
        "name": {
          "type": "string",
          "description": "A short identifier for an service Group.\n"
        },
        "policyReferences": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "Reference to policy associated with Service Group.\n"
        },
        "tcpServices": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetServiceGroupsV2ServiceGroupTcpService:getServiceGroupsV2ServiceGroupTcpService"
          },
          "description": "List of TCP ports in the service.\n"
        },
        "tenantId": {
          "type": "string",
          "description": "A globally unique identifier that represents the tenant that owns this entity.\n"
        },
        "udpServices": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetServiceGroupsV2ServiceGroupUdpService:getServiceGroupsV2ServiceGroupUdpService"
          },
          "description": "List of UDP ports in the service.\n"
        }
      },
      "type": "object",
      "required": [
        "createdBy",
        "description",
        "extId",
        "icmpServices",
        "isSystemDefined",
        "links",
        "name",
        "policyReferences",
        "tcpServices",
        "tenantId",
        "udpServices"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getServiceGroupsV2ServiceGroupIcmpService:getServiceGroupsV2ServiceGroupIcmpService": {
      "properties": {
        "code": {
          "type": "integer",
          "description": "Icmp service Code. Ignore this field if Code has to be ANY\n"
        },
        "isAllAllowed": {
          "type": "boolean",
          "description": "Set this field to true if both Type and Code is ANY.\n"
        },
        "type": {
          "type": "integer",
          "description": "Icmp service Type. Ignore this field if Type has to be ANY.\n"
        }
      },
      "type": "object",
      "required": [
        "code",
        "isAllAllowed",
        "type"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getServiceGroupsV2ServiceGroupLink:getServiceGroupsV2ServiceGroupLink": {
      "properties": {
        "href": {
          "type": "string"
        },
        "rel": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "href",
        "rel"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getServiceGroupsV2ServiceGroupTcpService:getServiceGroupsV2ServiceGroupTcpService": {
      "properties": {
        "endPort": {
          "type": "integer",
          "description": "end port\n"
        },
        "startPort": {
          "type": "integer",
          "description": "start port\n"
        }
      },
      "type": "object",
      "required": [
        "endPort",
        "startPort"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getServiceGroupsV2ServiceGroupUdpService:getServiceGroupsV2ServiceGroupUdpService": {
      "properties": {
        "endPort": {
          "type": "integer",
          "description": "end port\n"
        },
        "startPort": {
          "type": "integer",
          "description": "start port\n"
        }
      },
      "type": "object",
      "required": [
        "endPort",
        "startPort"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getStaticRoutesSpec:getStaticRoutesSpec": {
      "properties": {
        "name": {
          "type": "string",
          "description": "- the name.\n"
        },
        "resources": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetStaticRoutesSpecResource:getStaticRoutesSpecResource"
          },
          "description": "VPC route table resources status\n"
        }
      },
      "type": "object",
      "required": [
        "name",
        "resources"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getStaticRoutesSpecResource:getStaticRoutesSpecResource": {
      "properties": {
        "defaultRouteNexthops": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetStaticRoutesSpecResourceDefaultRouteNexthop:getStaticRoutesSpecResourceDefaultRouteNexthop"
          },
          "description": "default routes (present in spec resource)\n"
        },
        "staticRoutesLists": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetStaticRoutesSpecResourceStaticRoutesList:getStaticRoutesSpecResourceStaticRoutesList"
          },
          "description": "list of static routes\n"
        }
      },
      "type": "object",
      "required": [
        "defaultRouteNexthops",
        "staticRoutesLists"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getStaticRoutesSpecResourceDefaultRouteNexthop:getStaticRoutesSpecResourceDefaultRouteNexthop": {
      "properties": {
        "directConnectVirtualInterfaceReference": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          },
          "description": "The reference to a direct_connect_virtual_interface\n"
        },
        "externalSubnetReference": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          },
          "description": "The reference to a subnet\n"
        },
        "localSubnetReference": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          },
          "description": "The reference to a subnet\n"
        },
        "vpnConnectionReference": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          },
          "description": "The reference to a vpn_connection\n"
        }
      },
      "type": "object",
      "required": [
        "directConnectVirtualInterfaceReference",
        "externalSubnetReference",
        "localSubnetReference",
        "vpnConnectionReference"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getStaticRoutesSpecResourceStaticRoutesList:getStaticRoutesSpecResourceStaticRoutesList": {
      "properties": {
        "destination": {
          "type": "string",
          "description": "destination ip address with prefix.\n"
        },
        "nexthops": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetStaticRoutesSpecResourceStaticRoutesListNexthop:getStaticRoutesSpecResourceStaticRoutesListNexthop"
          },
          "description": "Targeted link to use as the nexthop in a route.\n"
        }
      },
      "type": "object",
      "required": [
        "destination",
        "nexthops"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getStaticRoutesSpecResourceStaticRoutesListNexthop:getStaticRoutesSpecResourceStaticRoutesListNexthop": {
      "properties": {
        "directConnectVirtualInterfaceReference": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          },
          "description": "The reference to a direct_connect_virtual_interface\n"
        },
        "externalSubnetReference": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          },
          "description": "The reference to a subnet\n"
        },
        "localSubnetReference": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          },
          "description": "The reference to a subnet\n"
        },
        "vpnConnectionReference": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          },
          "description": "The reference to a vpn_connection\n"
        }
      },
      "type": "object",
      "required": [
        "directConnectVirtualInterfaceReference",
        "externalSubnetReference",
        "localSubnetReference",
        "vpnConnectionReference"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getStaticRoutesStatus:getStaticRoutesStatus": {
      "properties": {
        "executionContexts": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetStaticRoutesStatusExecutionContext:getStaticRoutesStatusExecutionContext"
          },
          "description": "Execution Context of VPC.\n"
        },
        "resources": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetStaticRoutesStatusResource:getStaticRoutesStatusResource"
          },
          "description": "VPC route table resources status\n"
        },
        "state": {
          "type": "string",
          "description": "The state of the vpc_route_table.\n"
        }
      },
      "type": "object",
      "required": [
        "executionContexts",
        "resources",
        "state"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getStaticRoutesStatusExecutionContext:getStaticRoutesStatusExecutionContext": {
      "properties": {
        "taskUuids": {
          "type": "array",
          "items": {
            "type": "string"
          }
        }
      },
      "type": "object",
      "required": [
        "taskUuids"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getStaticRoutesStatusResource:getStaticRoutesStatusResource": {
      "properties": {
        "defaultRoutes": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetStaticRoutesStatusResourceDefaultRoute:getStaticRoutesStatusResourceDefaultRoute"
          },
          "description": "default route. (present in status resource only )\n"
        },
        "dynamicRoutesLists": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetStaticRoutesStatusResourceDynamicRoutesList:getStaticRoutesStatusResourceDynamicRoutesList"
          },
          "description": "list of dynamic routes (present in status resource only)\n"
        },
        "localRoutesLists": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetStaticRoutesStatusResourceLocalRoutesList:getStaticRoutesStatusResourceLocalRoutesList"
          },
          "description": "list of local routes (present in status resource only )\n"
        },
        "staticRoutesLists": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetStaticRoutesStatusResourceStaticRoutesList:getStaticRoutesStatusResourceStaticRoutesList"
          },
          "description": "list of static routes\n"
        }
      },
      "type": "object",
      "required": [
        "defaultRoutes",
        "dynamicRoutesLists",
        "localRoutesLists",
        "staticRoutesLists"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getStaticRoutesStatusResourceDefaultRoute:getStaticRoutesStatusResourceDefaultRoute": {
      "properties": {
        "destination": {
          "type": "string",
          "description": "destination ip address with prefix.\n"
        },
        "isActive": {
          "type": "boolean",
          "description": "Whether this route is currently active. Present in Status Resources.\n"
        },
        "nexthops": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetStaticRoutesStatusResourceDefaultRouteNexthop:getStaticRoutesStatusResourceDefaultRouteNexthop"
          },
          "description": "Targeted link to use as the nexthop in a route.\n"
        },
        "priority": {
          "type": "integer",
          "description": "The preference value assigned to this route. A higher value means greater preference. Present in Status Resource.\n"
        }
      },
      "type": "object",
      "required": [
        "destination",
        "isActive",
        "nexthops",
        "priority"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getStaticRoutesStatusResourceDefaultRouteNexthop:getStaticRoutesStatusResourceDefaultRouteNexthop": {
      "properties": {
        "directConnectVirtualInterfaceReference": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          },
          "description": "The reference to a direct_connect_virtual_interface\n"
        },
        "externalSubnetReference": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          },
          "description": "The reference to a subnet\n"
        },
        "localSubnetReference": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          },
          "description": "The reference to a subnet\n"
        },
        "nexthopIpAddress": {
          "type": "string"
        },
        "vpnConnectionReference": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          },
          "description": "The reference to a vpn_connection\n"
        }
      },
      "type": "object",
      "required": [
        "directConnectVirtualInterfaceReference",
        "externalSubnetReference",
        "localSubnetReference",
        "nexthopIpAddress",
        "vpnConnectionReference"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getStaticRoutesStatusResourceDynamicRoutesList:getStaticRoutesStatusResourceDynamicRoutesList": {
      "properties": {
        "destination": {
          "type": "string",
          "description": "destination ip address with prefix.\n"
        },
        "isActive": {
          "type": "boolean",
          "description": "Whether this route is currently active. Present in Status Resources.\n"
        },
        "nexthops": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetStaticRoutesStatusResourceDynamicRoutesListNexthop:getStaticRoutesStatusResourceDynamicRoutesListNexthop"
          },
          "description": "Targeted link to use as the nexthop in a route.\n"
        },
        "priority": {
          "type": "integer",
          "description": "The preference value assigned to this route. A higher value means greater preference. Present in Status Resource.\n"
        }
      },
      "type": "object",
      "required": [
        "destination",
        "isActive",
        "nexthops",
        "priority"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getStaticRoutesStatusResourceDynamicRoutesListNexthop:getStaticRoutesStatusResourceDynamicRoutesListNexthop": {
      "properties": {
        "directConnectVirtualInterfaceReference": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          },
          "description": "The reference to a direct_connect_virtual_interface\n"
        },
        "externalSubnetReference": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          },
          "description": "The reference to a subnet\n"
        },
        "localSubnetReference": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          },
          "description": "The reference to a subnet\n"
        },
        "nexthopIpAddress": {
          "type": "string"
        },
        "vpnConnectionReference": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          },
          "description": "The reference to a vpn_connection\n"
        }
      },
      "type": "object",
      "required": [
        "directConnectVirtualInterfaceReference",
        "externalSubnetReference",
        "localSubnetReference",
        "nexthopIpAddress",
        "vpnConnectionReference"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getStaticRoutesStatusResourceLocalRoutesList:getStaticRoutesStatusResourceLocalRoutesList": {
      "properties": {
        "destination": {
          "type": "string",
          "description": "destination ip address with prefix.\n"
        },
        "isActive": {
          "type": "boolean",
          "description": "Whether this route is currently active. Present in Status Resources.\n"
        },
        "nexthops": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetStaticRoutesStatusResourceLocalRoutesListNexthop:getStaticRoutesStatusResourceLocalRoutesListNexthop"
          },
          "description": "Targeted link to use as the nexthop in a route.\n"
        },
        "priority": {
          "type": "integer",
          "description": "The preference value assigned to this route. A higher value means greater preference. Present in Status Resource.\n"
        }
      },
      "type": "object",
      "required": [
        "destination",
        "isActive",
        "nexthops",
        "priority"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getStaticRoutesStatusResourceLocalRoutesListNexthop:getStaticRoutesStatusResourceLocalRoutesListNexthop": {
      "properties": {
        "directConnectVirtualInterfaceReference": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          },
          "description": "The reference to a direct_connect_virtual_interface\n"
        },
        "externalSubnetReference": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          },
          "description": "The reference to a subnet\n"
        },
        "localSubnetReference": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          },
          "description": "The reference to a subnet\n"
        },
        "nexthopIpAddress": {
          "type": "string"
        },
        "vpnConnectionReference": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          },
          "description": "The reference to a vpn_connection\n"
        }
      },
      "type": "object",
      "required": [
        "directConnectVirtualInterfaceReference",
        "externalSubnetReference",
        "localSubnetReference",
        "nexthopIpAddress",
        "vpnConnectionReference"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getStaticRoutesStatusResourceStaticRoutesList:getStaticRoutesStatusResourceStaticRoutesList": {
      "properties": {
        "destination": {
          "type": "string",
          "description": "destination ip address with prefix.\n"
        },
        "isActive": {
          "type": "boolean",
          "description": "Whether this route is currently active. Present in Status Resources.\n"
        },
        "nexthops": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetStaticRoutesStatusResourceStaticRoutesListNexthop:getStaticRoutesStatusResourceStaticRoutesListNexthop"
          },
          "description": "Targeted link to use as the nexthop in a route.\n"
        },
        "priority": {
          "type": "integer",
          "description": "The preference value assigned to this route. A higher value means greater preference. Present in Status Resource.\n"
        }
      },
      "type": "object",
      "required": [
        "destination",
        "isActive",
        "nexthops",
        "priority"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getStaticRoutesStatusResourceStaticRoutesListNexthop:getStaticRoutesStatusResourceStaticRoutesListNexthop": {
      "properties": {
        "directConnectVirtualInterfaceReference": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          },
          "description": "The reference to a direct_connect_virtual_interface\n"
        },
        "externalSubnetReference": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          },
          "description": "The reference to a subnet\n"
        },
        "localSubnetReference": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          },
          "description": "The reference to a subnet\n"
        },
        "nexthopIpAddress": {
          "type": "string"
        },
        "vpnConnectionReference": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          },
          "description": "The reference to a vpn_connection\n"
        }
      },
      "type": "object",
      "required": [
        "directConnectVirtualInterfaceReference",
        "externalSubnetReference",
        "localSubnetReference",
        "nexthopIpAddress",
        "vpnConnectionReference"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getStorageContainerStatsInfoV2ControllerAvgIoLatencyuSec:getStorageContainerStatsInfoV2ControllerAvgIoLatencyuSec": {
      "properties": {
        "timestamp": {
          "type": "string"
        },
        "value": {
          "type": "integer"
        }
      },
      "type": "object",
      "required": [
        "timestamp",
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getStorageContainerStatsInfoV2ControllerAvgReadIoLatencyuSec:getStorageContainerStatsInfoV2ControllerAvgReadIoLatencyuSec": {
      "properties": {
        "timestamp": {
          "type": "string"
        },
        "value": {
          "type": "integer"
        }
      },
      "type": "object",
      "required": [
        "timestamp",
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getStorageContainerStatsInfoV2ControllerAvgWriteIoLatencyuSec:getStorageContainerStatsInfoV2ControllerAvgWriteIoLatencyuSec": {
      "properties": {
        "timestamp": {
          "type": "string"
        },
        "value": {
          "type": "integer"
        }
      },
      "type": "object",
      "required": [
        "timestamp",
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getStorageContainerStatsInfoV2ControllerIoBandwidthKbp:getStorageContainerStatsInfoV2ControllerIoBandwidthKbp": {
      "properties": {
        "timestamp": {
          "type": "string"
        },
        "value": {
          "type": "integer"
        }
      },
      "type": "object",
      "required": [
        "timestamp",
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getStorageContainerStatsInfoV2ControllerNumIop:getStorageContainerStatsInfoV2ControllerNumIop": {
      "properties": {
        "timestamp": {
          "type": "string"
        },
        "value": {
          "type": "integer"
        }
      },
      "type": "object",
      "required": [
        "timestamp",
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getStorageContainerStatsInfoV2ControllerNumReadIop:getStorageContainerStatsInfoV2ControllerNumReadIop": {
      "properties": {
        "timestamp": {
          "type": "string"
        },
        "value": {
          "type": "integer"
        }
      },
      "type": "object",
      "required": [
        "timestamp",
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getStorageContainerStatsInfoV2ControllerNumWriteIop:getStorageContainerStatsInfoV2ControllerNumWriteIop": {
      "properties": {
        "timestamp": {
          "type": "string"
        },
        "value": {
          "type": "integer"
        }
      },
      "type": "object",
      "required": [
        "timestamp",
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getStorageContainerStatsInfoV2ControllerReadIoBandwidthKbp:getStorageContainerStatsInfoV2ControllerReadIoBandwidthKbp": {
      "properties": {
        "timestamp": {
          "type": "string"
        },
        "value": {
          "type": "integer"
        }
      },
      "type": "object",
      "required": [
        "timestamp",
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getStorageContainerStatsInfoV2ControllerReadIoRatioPpm:getStorageContainerStatsInfoV2ControllerReadIoRatioPpm": {
      "properties": {
        "timestamp": {
          "type": "string"
        },
        "value": {
          "type": "integer"
        }
      },
      "type": "object",
      "required": [
        "timestamp",
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getStorageContainerStatsInfoV2ControllerWriteIoBandwidthKbp:getStorageContainerStatsInfoV2ControllerWriteIoBandwidthKbp": {
      "properties": {
        "timestamp": {
          "type": "string"
        },
        "value": {
          "type": "integer"
        }
      },
      "type": "object",
      "required": [
        "timestamp",
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getStorageContainerStatsInfoV2ControllerWriteIoRatioPpm:getStorageContainerStatsInfoV2ControllerWriteIoRatioPpm": {
      "properties": {
        "timestamp": {
          "type": "string"
        },
        "value": {
          "type": "integer"
        }
      },
      "type": "object",
      "required": [
        "timestamp",
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getStorageContainerStatsInfoV2DataReductionCloneSavingRatioPpm:getStorageContainerStatsInfoV2DataReductionCloneSavingRatioPpm": {
      "properties": {
        "timestamp": {
          "type": "string"
        },
        "value": {
          "type": "integer"
        }
      },
      "type": "object",
      "required": [
        "timestamp",
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getStorageContainerStatsInfoV2DataReductionCompressionSavingRatioPpm:getStorageContainerStatsInfoV2DataReductionCompressionSavingRatioPpm": {
      "properties": {
        "timestamp": {
          "type": "string"
        },
        "value": {
          "type": "integer"
        }
      },
      "type": "object",
      "required": [
        "timestamp",
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getStorageContainerStatsInfoV2DataReductionDedupSavingRatioPpm:getStorageContainerStatsInfoV2DataReductionDedupSavingRatioPpm": {
      "properties": {
        "timestamp": {
          "type": "string"
        },
        "value": {
          "type": "integer"
        }
      },
      "type": "object",
      "required": [
        "timestamp",
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getStorageContainerStatsInfoV2DataReductionErasureCodingSavingRatioPpm:getStorageContainerStatsInfoV2DataReductionErasureCodingSavingRatioPpm": {
      "properties": {
        "timestamp": {
          "type": "string"
        },
        "value": {
          "type": "integer"
        }
      },
      "type": "object",
      "required": [
        "timestamp",
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getStorageContainerStatsInfoV2DataReductionOverallPostReductionByte:getStorageContainerStatsInfoV2DataReductionOverallPostReductionByte": {
      "properties": {
        "timestamp": {
          "type": "string"
        },
        "value": {
          "type": "integer"
        }
      },
      "type": "object",
      "required": [
        "timestamp",
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getStorageContainerStatsInfoV2DataReductionOverallPreReductionByte:getStorageContainerStatsInfoV2DataReductionOverallPreReductionByte": {
      "properties": {
        "timestamp": {
          "type": "string"
        },
        "value": {
          "type": "integer"
        }
      },
      "type": "object",
      "required": [
        "timestamp",
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getStorageContainerStatsInfoV2DataReductionSavedByte:getStorageContainerStatsInfoV2DataReductionSavedByte": {
      "properties": {
        "timestamp": {
          "type": "string"
        },
        "value": {
          "type": "integer"
        }
      },
      "type": "object",
      "required": [
        "timestamp",
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getStorageContainerStatsInfoV2DataReductionSavingRatioPpm:getStorageContainerStatsInfoV2DataReductionSavingRatioPpm": {
      "properties": {
        "timestamp": {
          "type": "string"
        },
        "value": {
          "type": "integer"
        }
      },
      "type": "object",
      "required": [
        "timestamp",
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getStorageContainerStatsInfoV2DataReductionSnapshotSavingRatioPpm:getStorageContainerStatsInfoV2DataReductionSnapshotSavingRatioPpm": {
      "properties": {
        "timestamp": {
          "type": "string"
        },
        "value": {
          "type": "integer"
        }
      },
      "type": "object",
      "required": [
        "timestamp",
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getStorageContainerStatsInfoV2DataReductionThinProvisionSavingRatioPpm:getStorageContainerStatsInfoV2DataReductionThinProvisionSavingRatioPpm": {
      "properties": {
        "timestamp": {
          "type": "string"
        },
        "value": {
          "type": "integer"
        }
      },
      "type": "object",
      "required": [
        "timestamp",
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getStorageContainerStatsInfoV2DataReductionTotalSavingRatioPpm:getStorageContainerStatsInfoV2DataReductionTotalSavingRatioPpm": {
      "properties": {
        "timestamp": {
          "type": "string"
        },
        "value": {
          "type": "integer"
        }
      },
      "type": "object",
      "required": [
        "timestamp",
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getStorageContainerStatsInfoV2DataReductionZeroWriteSavingsByte:getStorageContainerStatsInfoV2DataReductionZeroWriteSavingsByte": {
      "properties": {
        "timestamp": {
          "type": "string"
        },
        "value": {
          "type": "integer"
        }
      },
      "type": "object",
      "required": [
        "timestamp",
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getStorageContainerStatsInfoV2Health:getStorageContainerStatsInfoV2Health": {
      "properties": {
        "timestamp": {
          "type": "string"
        },
        "value": {
          "type": "integer"
        }
      },
      "type": "object",
      "required": [
        "timestamp",
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getStorageContainerStatsInfoV2Link:getStorageContainerStatsInfoV2Link": {
      "properties": {
        "href": {
          "type": "string"
        },
        "rel": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "href",
        "rel"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getStorageContainerStatsInfoV2StorageActualPhysicalUsageByte:getStorageContainerStatsInfoV2StorageActualPhysicalUsageByte": {
      "properties": {
        "timestamp": {
          "type": "string"
        },
        "value": {
          "type": "integer"
        }
      },
      "type": "object",
      "required": [
        "timestamp",
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getStorageContainerStatsInfoV2StorageCapacityByte:getStorageContainerStatsInfoV2StorageCapacityByte": {
      "properties": {
        "timestamp": {
          "type": "string"
        },
        "value": {
          "type": "integer"
        }
      },
      "type": "object",
      "required": [
        "timestamp",
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getStorageContainerStatsInfoV2StorageFreeByte:getStorageContainerStatsInfoV2StorageFreeByte": {
      "properties": {
        "timestamp": {
          "type": "string"
        },
        "value": {
          "type": "integer"
        }
      },
      "type": "object",
      "required": [
        "timestamp",
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getStorageContainerStatsInfoV2StorageReplicationFactor:getStorageContainerStatsInfoV2StorageReplicationFactor": {
      "properties": {
        "timestamp": {
          "type": "string"
        },
        "value": {
          "type": "integer"
        }
      },
      "type": "object",
      "required": [
        "timestamp",
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getStorageContainerStatsInfoV2StorageReservedCapacityByte:getStorageContainerStatsInfoV2StorageReservedCapacityByte": {
      "properties": {
        "timestamp": {
          "type": "string"
        },
        "value": {
          "type": "integer"
        }
      },
      "type": "object",
      "required": [
        "timestamp",
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getStorageContainerStatsInfoV2StorageTierDasSataUsageByte:getStorageContainerStatsInfoV2StorageTierDasSataUsageByte": {
      "properties": {
        "timestamp": {
          "type": "string"
        },
        "value": {
          "type": "integer"
        }
      },
      "type": "object",
      "required": [
        "timestamp",
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getStorageContainerStatsInfoV2StorageTierSsdUsageByte:getStorageContainerStatsInfoV2StorageTierSsdUsageByte": {
      "properties": {
        "timestamp": {
          "type": "string"
        },
        "value": {
          "type": "integer"
        }
      },
      "type": "object",
      "required": [
        "timestamp",
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getStorageContainerStatsInfoV2StorageUsageByte:getStorageContainerStatsInfoV2StorageUsageByte": {
      "properties": {
        "timestamp": {
          "type": "string"
        },
        "value": {
          "type": "integer"
        }
      },
      "type": "object",
      "required": [
        "timestamp",
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getStorageContainerV2Link:getStorageContainerV2Link": {
      "properties": {
        "href": {
          "type": "string"
        },
        "rel": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "href",
        "rel"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getStorageContainerV2NfsWhitelistAddress:getStorageContainerV2NfsWhitelistAddress": {
      "properties": {
        "fqdns": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetStorageContainerV2NfsWhitelistAddressFqdn:getStorageContainerV2NfsWhitelistAddressFqdn"
          },
          "description": "Reference to address configuration\n"
        },
        "ipv4s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetStorageContainerV2NfsWhitelistAddressIpv4:getStorageContainerV2NfsWhitelistAddressIpv4"
          },
          "description": "Reference to address configuration\n"
        },
        "ipv6s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetStorageContainerV2NfsWhitelistAddressIpv6:getStorageContainerV2NfsWhitelistAddressIpv6"
          },
          "description": "Reference to address configuration\n"
        }
      },
      "type": "object",
      "required": [
        "fqdns",
        "ipv4s",
        "ipv6s"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getStorageContainerV2NfsWhitelistAddressFqdn:getStorageContainerV2NfsWhitelistAddressFqdn": {
      "properties": {
        "value": {
          "type": "string",
          "description": "value of fqdn address\n"
        }
      },
      "type": "object",
      "required": [
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getStorageContainerV2NfsWhitelistAddressIpv4:getStorageContainerV2NfsWhitelistAddressIpv4": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "The prefix length of the network to which this host IPv4/IPv6 address belongs.\n"
        },
        "value": {
          "type": "string",
          "description": "value of fqdn address\n"
        }
      },
      "type": "object",
      "required": [
        "prefixLength",
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getStorageContainerV2NfsWhitelistAddressIpv6:getStorageContainerV2NfsWhitelistAddressIpv6": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "The prefix length of the network to which this host IPv4/IPv6 address belongs.\n"
        },
        "value": {
          "type": "string",
          "description": "value of fqdn address\n"
        }
      },
      "type": "object",
      "required": [
        "prefixLength",
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getStorageContainersV2StorageContainer:getStorageContainersV2StorageContainer": {
      "properties": {
        "affinityHostExtId": {
          "type": "string"
        },
        "cacheDeduplication": {
          "type": "string"
        },
        "clusterExtId": {
          "type": "string"
        },
        "clusterName": {
          "type": "string"
        },
        "compressionDelaySecs": {
          "type": "integer"
        },
        "containerExtId": {
          "type": "string"
        },
        "erasureCode": {
          "type": "string"
        },
        "erasureCodeDelaySecs": {
          "type": "integer"
        },
        "extId": {
          "type": "string"
        },
        "hasHigherEcFaultDomainPreference": {
          "type": "boolean"
        },
        "isCompressionEnabled": {
          "type": "boolean"
        },
        "isEncrypted": {
          "type": "boolean"
        },
        "isInlineEcEnabled": {
          "type": "boolean"
        },
        "isInternal": {
          "type": "boolean"
        },
        "isMarkedForRemoval": {
          "type": "boolean"
        },
        "isNfsWhitelistInherited": {
          "type": "boolean"
        },
        "isSoftwareEncryptionEnabled": {
          "type": "boolean"
        },
        "links": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetStorageContainersV2StorageContainerLink:getStorageContainersV2StorageContainerLink"
          }
        },
        "logicalAdvertisedCapacityBytes": {
          "type": "integer"
        },
        "logicalExplicitReservedCapacityBytes": {
          "type": "integer"
        },
        "logicalImplicitReservedCapacityBytes": {
          "type": "integer"
        },
        "maxCapacityBytes": {
          "type": "integer"
        },
        "name": {
          "type": "string"
        },
        "nfsWhitelistAddresses": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetStorageContainersV2StorageContainerNfsWhitelistAddress:getStorageContainersV2StorageContainerNfsWhitelistAddress"
          }
        },
        "onDiskDedup": {
          "type": "string"
        },
        "ownerExtId": {
          "type": "string"
        },
        "replicationFactor": {
          "type": "integer"
        },
        "storagePoolExtId": {
          "type": "string"
        },
        "tenantId": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "affinityHostExtId",
        "cacheDeduplication",
        "clusterExtId",
        "clusterName",
        "compressionDelaySecs",
        "containerExtId",
        "erasureCode",
        "erasureCodeDelaySecs",
        "extId",
        "hasHigherEcFaultDomainPreference",
        "isCompressionEnabled",
        "isEncrypted",
        "isInlineEcEnabled",
        "isInternal",
        "isMarkedForRemoval",
        "isNfsWhitelistInherited",
        "isSoftwareEncryptionEnabled",
        "links",
        "logicalAdvertisedCapacityBytes",
        "logicalExplicitReservedCapacityBytes",
        "logicalImplicitReservedCapacityBytes",
        "maxCapacityBytes",
        "name",
        "nfsWhitelistAddresses",
        "onDiskDedup",
        "ownerExtId",
        "replicationFactor",
        "storagePoolExtId",
        "tenantId"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getStorageContainersV2StorageContainerLink:getStorageContainersV2StorageContainerLink": {
      "properties": {
        "href": {
          "type": "string"
        },
        "rel": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "href",
        "rel"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getStorageContainersV2StorageContainerNfsWhitelistAddress:getStorageContainersV2StorageContainerNfsWhitelistAddress": {
      "properties": {
        "fqdns": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetStorageContainersV2StorageContainerNfsWhitelistAddressFqdn:getStorageContainersV2StorageContainerNfsWhitelistAddressFqdn"
          }
        },
        "ipv4s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetStorageContainersV2StorageContainerNfsWhitelistAddressIpv4:getStorageContainersV2StorageContainerNfsWhitelistAddressIpv4"
          }
        },
        "ipv6s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetStorageContainersV2StorageContainerNfsWhitelistAddressIpv6:getStorageContainersV2StorageContainerNfsWhitelistAddressIpv6"
          }
        }
      },
      "type": "object",
      "required": [
        "fqdns",
        "ipv4s",
        "ipv6s"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getStorageContainersV2StorageContainerNfsWhitelistAddressFqdn:getStorageContainersV2StorageContainerNfsWhitelistAddressFqdn": {
      "properties": {
        "value": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getStorageContainersV2StorageContainerNfsWhitelistAddressIpv4:getStorageContainersV2StorageContainerNfsWhitelistAddressIpv4": {
      "properties": {
        "prefixLength": {
          "type": "integer"
        },
        "value": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "prefixLength",
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getStorageContainersV2StorageContainerNfsWhitelistAddressIpv6:getStorageContainersV2StorageContainerNfsWhitelistAddressIpv6": {
      "properties": {
        "prefixLength": {
          "type": "integer"
        },
        "value": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "prefixLength",
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getSubnetAdditionalFilter:getSubnetAdditionalFilter": {
      "properties": {
        "name": {
          "type": "string",
          "description": "- the name(Optional).\n"
        },
        "values": {
          "type": "array",
          "items": {
            "type": "string"
          }
        }
      },
      "type": "object",
      "required": [
        "name",
        "values"
      ]
    },
    "nutanix:index/getSubnetCategory:getSubnetCategory": {
      "properties": {
        "name": {
          "type": "string",
          "description": "- the name(Optional).\n"
        },
        "value": {
          "type": "string",
          "description": "- value of the key.\n"
        }
      },
      "type": "object",
      "required": [
        "name",
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getSubnetMessageList:getSubnetMessageList": {
      "properties": {
        "details": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          }
        },
        "message": {
          "type": "string"
        },
        "reason": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "details",
        "message",
        "reason"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getSubnetV2DhcpOption:getSubnetV2DhcpOption": {
      "properties": {
        "bootFileName": {
          "type": "string",
          "description": "Boot file name\n"
        },
        "domainName": {
          "type": "string",
          "description": "The DNS domain name of the client.\n"
        },
        "domainNameServers": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetSubnetV2DhcpOptionDomainNameServer:getSubnetV2DhcpOptionDomainNameServer"
          },
          "description": "List of Domain Name Server addresses.\n"
        },
        "ntpServers": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetSubnetV2DhcpOptionNtpServer:getSubnetV2DhcpOptionNtpServer"
          },
          "description": "List of NTP server addresses\n"
        },
        "searchDomains": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "The DNS domain search list.\n"
        },
        "tftpServerName": {
          "type": "string",
          "description": "TFTP server name\n"
        }
      },
      "type": "object",
      "required": [
        "bootFileName",
        "domainName",
        "domainNameServers",
        "ntpServers",
        "searchDomains",
        "tftpServerName"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getSubnetV2DhcpOptionDomainNameServer:getSubnetV2DhcpOptionDomainNameServer": {
      "properties": {
        "ipv4s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetSubnetV2DhcpOptionDomainNameServerIpv4:getSubnetV2DhcpOptionDomainNameServerIpv4"
          },
          "description": "IP V4 configuration.\n"
        },
        "ipv6s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetSubnetV2DhcpOptionDomainNameServerIpv6:getSubnetV2DhcpOptionDomainNameServerIpv6"
          },
          "description": "IP V6 configuration\n"
        }
      },
      "type": "object",
      "required": [
        "ipv4s",
        "ipv6s"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getSubnetV2DhcpOptionDomainNameServerIpv4:getSubnetV2DhcpOptionDomainNameServerIpv4": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "The prefix length of the network to which this host IPv4/IPv6 address belongs.\n"
        },
        "value": {
          "type": "string",
          "description": "value of address\n"
        }
      },
      "type": "object",
      "required": [
        "prefixLength",
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getSubnetV2DhcpOptionDomainNameServerIpv6:getSubnetV2DhcpOptionDomainNameServerIpv6": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "The prefix length of the network to which this host IPv4/IPv6 address belongs.\n"
        },
        "value": {
          "type": "string",
          "description": "value of address\n"
        }
      },
      "type": "object",
      "required": [
        "prefixLength",
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getSubnetV2DhcpOptionNtpServer:getSubnetV2DhcpOptionNtpServer": {
      "properties": {
        "ipv4s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetSubnetV2DhcpOptionNtpServerIpv4:getSubnetV2DhcpOptionNtpServerIpv4"
          },
          "description": "IP V4 configuration.\n"
        },
        "ipv6s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetSubnetV2DhcpOptionNtpServerIpv6:getSubnetV2DhcpOptionNtpServerIpv6"
          },
          "description": "IP V6 configuration\n"
        }
      },
      "type": "object",
      "required": [
        "ipv4s",
        "ipv6s"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getSubnetV2DhcpOptionNtpServerIpv4:getSubnetV2DhcpOptionNtpServerIpv4": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "The prefix length of the network to which this host IPv4/IPv6 address belongs.\n"
        },
        "value": {
          "type": "string",
          "description": "value of address\n"
        }
      },
      "type": "object",
      "required": [
        "prefixLength",
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getSubnetV2DhcpOptionNtpServerIpv6:getSubnetV2DhcpOptionNtpServerIpv6": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "The prefix length of the network to which this host IPv4/IPv6 address belongs.\n"
        },
        "value": {
          "type": "string",
          "description": "value of address\n"
        }
      },
      "type": "object",
      "required": [
        "prefixLength",
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getSubnetV2DynamicIpAddress:getSubnetV2DynamicIpAddress": {
      "properties": {
        "ipv4s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetSubnetV2DynamicIpAddressIpv4:getSubnetV2DynamicIpAddressIpv4"
          },
          "description": "IP V4 configuration.\n"
        },
        "ipv6s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetSubnetV2DynamicIpAddressIpv6:getSubnetV2DynamicIpAddressIpv6"
          },
          "description": "IP V6 configuration\n"
        }
      },
      "type": "object",
      "required": [
        "ipv4s",
        "ipv6s"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getSubnetV2DynamicIpAddressIpv4:getSubnetV2DynamicIpAddressIpv4": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "The prefix length of the network to which this host IPv4/IPv6 address belongs.\n"
        },
        "value": {
          "type": "string",
          "description": "value of address\n"
        }
      },
      "type": "object",
      "required": [
        "prefixLength",
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getSubnetV2DynamicIpAddressIpv6:getSubnetV2DynamicIpAddressIpv6": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "The prefix length of the network to which this host IPv4/IPv6 address belongs.\n"
        },
        "value": {
          "type": "string",
          "description": "value of address\n"
        }
      },
      "type": "object",
      "required": [
        "prefixLength",
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getSubnetV2IpConfig:getSubnetV2IpConfig": {
      "properties": {
        "ipv4s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetSubnetV2IpConfigIpv4:getSubnetV2IpConfigIpv4"
          },
          "description": "IP V4 configuration.\n"
        },
        "ipv6s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetSubnetV2IpConfigIpv6:getSubnetV2IpConfigIpv6"
          },
          "description": "IP V6 configuration\n"
        }
      },
      "type": "object",
      "required": [
        "ipv4s",
        "ipv6s"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getSubnetV2IpConfigIpv4:getSubnetV2IpConfigIpv4": {
      "properties": {
        "defaultGatewayIps": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetSubnetV2IpConfigIpv4DefaultGatewayIp:getSubnetV2IpConfigIpv4DefaultGatewayIp"
          },
          "description": "Reference to address configuration\n"
        },
        "dhcpServerAddresses": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetSubnetV2IpConfigIpv4DhcpServerAddress:getSubnetV2IpConfigIpv4DhcpServerAddress"
          },
          "description": "Reference to address configuration\n"
        },
        "ipSubnets": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetSubnetV2IpConfigIpv4IpSubnet:getSubnetV2IpConfigIpv4IpSubnet"
          },
          "description": "subnet ip\n"
        },
        "poolLists": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetSubnetV2IpConfigIpv4PoolList:getSubnetV2IpConfigIpv4PoolList"
          },
          "description": "Pool of IP addresses from where IPs are allocated.\n"
        }
      },
      "type": "object",
      "required": [
        "defaultGatewayIps",
        "dhcpServerAddresses",
        "ipSubnets",
        "poolLists"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getSubnetV2IpConfigIpv4DefaultGatewayIp:getSubnetV2IpConfigIpv4DefaultGatewayIp": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "The prefix length of the network to which this host IPv4/IPv6 address belongs.\n"
        },
        "value": {
          "type": "string",
          "description": "value of address\n"
        }
      },
      "type": "object",
      "required": [
        "prefixLength",
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getSubnetV2IpConfigIpv4DhcpServerAddress:getSubnetV2IpConfigIpv4DhcpServerAddress": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "The prefix length of the network to which this host IPv4/IPv6 address belongs.\n"
        },
        "value": {
          "type": "string",
          "description": "value of address\n"
        }
      },
      "type": "object",
      "required": [
        "prefixLength",
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getSubnetV2IpConfigIpv4IpSubnet:getSubnetV2IpConfigIpv4IpSubnet": {
      "properties": {
        "ips": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetSubnetV2IpConfigIpv4IpSubnetIp:getSubnetV2IpConfigIpv4IpSubnetIp"
          },
          "description": "Reference to address configuration\n"
        },
        "prefixLength": {
          "type": "integer",
          "description": "The prefix length of the network to which this host IPv4/IPv6 address belongs.\n"
        }
      },
      "type": "object",
      "required": [
        "ips",
        "prefixLength"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getSubnetV2IpConfigIpv4IpSubnetIp:getSubnetV2IpConfigIpv4IpSubnetIp": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "The prefix length of the network to which this host IPv4/IPv6 address belongs.\n"
        },
        "value": {
          "type": "string",
          "description": "value of address\n"
        }
      },
      "type": "object",
      "required": [
        "prefixLength",
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getSubnetV2IpConfigIpv4PoolList:getSubnetV2IpConfigIpv4PoolList": {
      "properties": {
        "endIps": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetSubnetV2IpConfigIpv4PoolListEndIp:getSubnetV2IpConfigIpv4PoolListEndIp"
          },
          "description": "Reference to address configuration\n"
        },
        "startIps": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetSubnetV2IpConfigIpv4PoolListStartIp:getSubnetV2IpConfigIpv4PoolListStartIp"
          },
          "description": "Reference to address configuration\n"
        }
      },
      "type": "object",
      "required": [
        "endIps",
        "startIps"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getSubnetV2IpConfigIpv4PoolListEndIp:getSubnetV2IpConfigIpv4PoolListEndIp": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "The prefix length of the network to which this host IPv4/IPv6 address belongs.\n"
        },
        "value": {
          "type": "string",
          "description": "value of address\n"
        }
      },
      "type": "object",
      "required": [
        "prefixLength",
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getSubnetV2IpConfigIpv4PoolListStartIp:getSubnetV2IpConfigIpv4PoolListStartIp": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "The prefix length of the network to which this host IPv4/IPv6 address belongs.\n"
        },
        "value": {
          "type": "string",
          "description": "value of address\n"
        }
      },
      "type": "object",
      "required": [
        "prefixLength",
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getSubnetV2IpConfigIpv6:getSubnetV2IpConfigIpv6": {
      "properties": {
        "defaultGatewayIps": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetSubnetV2IpConfigIpv6DefaultGatewayIp:getSubnetV2IpConfigIpv6DefaultGatewayIp"
          },
          "description": "Reference to address configuration\n"
        },
        "dhcpServerAddresses": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetSubnetV2IpConfigIpv6DhcpServerAddress:getSubnetV2IpConfigIpv6DhcpServerAddress"
          },
          "description": "Reference to address configuration\n"
        },
        "ipSubnets": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetSubnetV2IpConfigIpv6IpSubnet:getSubnetV2IpConfigIpv6IpSubnet"
          },
          "description": "subnet ip\n"
        },
        "poolLists": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetSubnetV2IpConfigIpv6PoolList:getSubnetV2IpConfigIpv6PoolList"
          },
          "description": "Pool of IP addresses from where IPs are allocated.\n"
        }
      },
      "type": "object",
      "required": [
        "defaultGatewayIps",
        "dhcpServerAddresses",
        "ipSubnets",
        "poolLists"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getSubnetV2IpConfigIpv6DefaultGatewayIp:getSubnetV2IpConfigIpv6DefaultGatewayIp": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "The prefix length of the network to which this host IPv4/IPv6 address belongs.\n"
        },
        "value": {
          "type": "string",
          "description": "value of address\n"
        }
      },
      "type": "object",
      "required": [
        "prefixLength",
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getSubnetV2IpConfigIpv6DhcpServerAddress:getSubnetV2IpConfigIpv6DhcpServerAddress": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "The prefix length of the network to which this host IPv4/IPv6 address belongs.\n"
        },
        "value": {
          "type": "string",
          "description": "value of address\n"
        }
      },
      "type": "object",
      "required": [
        "prefixLength",
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getSubnetV2IpConfigIpv6IpSubnet:getSubnetV2IpConfigIpv6IpSubnet": {
      "properties": {
        "ips": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetSubnetV2IpConfigIpv6IpSubnetIp:getSubnetV2IpConfigIpv6IpSubnetIp"
          },
          "description": "Reference to address configuration\n"
        },
        "prefixLength": {
          "type": "integer",
          "description": "The prefix length of the network to which this host IPv4/IPv6 address belongs.\n"
        }
      },
      "type": "object",
      "required": [
        "ips",
        "prefixLength"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getSubnetV2IpConfigIpv6IpSubnetIp:getSubnetV2IpConfigIpv6IpSubnetIp": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "The prefix length of the network to which this host IPv4/IPv6 address belongs.\n"
        },
        "value": {
          "type": "string",
          "description": "value of address\n"
        }
      },
      "type": "object",
      "required": [
        "prefixLength",
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getSubnetV2IpConfigIpv6PoolList:getSubnetV2IpConfigIpv6PoolList": {
      "properties": {
        "endIps": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetSubnetV2IpConfigIpv6PoolListEndIp:getSubnetV2IpConfigIpv6PoolListEndIp"
          },
          "description": "Reference to address configuration\n"
        },
        "startIps": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetSubnetV2IpConfigIpv6PoolListStartIp:getSubnetV2IpConfigIpv6PoolListStartIp"
          },
          "description": "Reference to address configuration\n"
        }
      },
      "type": "object",
      "required": [
        "endIps",
        "startIps"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getSubnetV2IpConfigIpv6PoolListEndIp:getSubnetV2IpConfigIpv6PoolListEndIp": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "The prefix length of the network to which this host IPv4/IPv6 address belongs.\n"
        },
        "value": {
          "type": "string",
          "description": "value of address\n"
        }
      },
      "type": "object",
      "required": [
        "prefixLength",
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getSubnetV2IpConfigIpv6PoolListStartIp:getSubnetV2IpConfigIpv6PoolListStartIp": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "The prefix length of the network to which this host IPv4/IPv6 address belongs.\n"
        },
        "value": {
          "type": "string",
          "description": "value of address\n"
        }
      },
      "type": "object",
      "required": [
        "prefixLength",
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getSubnetV2IpUsage:getSubnetV2IpUsage": {
      "properties": {
        "ipPoolUsages": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetSubnetV2IpUsageIpPoolUsage:getSubnetV2IpUsageIpPoolUsage"
          },
          "description": "IP Pool usages\n"
        },
        "numAssignedIps": {
          "type": "integer",
          "description": "Number of assigned IPs.\n"
        },
        "numFreeIps": {
          "type": "integer",
          "description": "Number of free IPs\n"
        },
        "numMacs": {
          "type": "integer",
          "description": "Number of MAC addresses.\n"
        }
      },
      "type": "object",
      "required": [
        "ipPoolUsages",
        "numAssignedIps",
        "numFreeIps",
        "numMacs"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getSubnetV2IpUsageIpPoolUsage:getSubnetV2IpUsageIpPoolUsage": {
      "properties": {
        "numFreeIps": {
          "type": "integer",
          "description": "Number of free IPs\n"
        },
        "numTotalIps": {
          "type": "integer",
          "description": "Total number of IPs in this pool.\n"
        },
        "ranges": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetSubnetV2IpUsageIpPoolUsageRange:getSubnetV2IpUsageIpPoolUsageRange"
          },
          "description": "Start/end IP address range.\n"
        }
      },
      "type": "object",
      "required": [
        "numFreeIps",
        "numTotalIps",
        "ranges"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getSubnetV2IpUsageIpPoolUsageRange:getSubnetV2IpUsageIpPoolUsageRange": {
      "properties": {
        "endIps": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetSubnetV2IpUsageIpPoolUsageRangeEndIp:getSubnetV2IpUsageIpPoolUsageRangeEndIp"
          },
          "description": "Reference to address configuration\n"
        },
        "startIps": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetSubnetV2IpUsageIpPoolUsageRangeStartIp:getSubnetV2IpUsageIpPoolUsageRangeStartIp"
          },
          "description": "Reference to address configuration\n"
        }
      },
      "type": "object",
      "required": [
        "endIps",
        "startIps"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getSubnetV2IpUsageIpPoolUsageRangeEndIp:getSubnetV2IpUsageIpPoolUsageRangeEndIp": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "The prefix length of the network to which this host IPv4/IPv6 address belongs.\n"
        },
        "value": {
          "type": "string",
          "description": "value of address\n"
        }
      },
      "type": "object",
      "required": [
        "prefixLength",
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getSubnetV2IpUsageIpPoolUsageRangeStartIp:getSubnetV2IpUsageIpPoolUsageRangeStartIp": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "The prefix length of the network to which this host IPv4/IPv6 address belongs.\n"
        },
        "value": {
          "type": "string",
          "description": "value of address\n"
        }
      },
      "type": "object",
      "required": [
        "prefixLength",
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getSubnetV2Link:getSubnetV2Link": {
      "properties": {
        "href": {
          "type": "string"
        },
        "rel": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "href",
        "rel"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getSubnetV2ReservedIpAddress:getSubnetV2ReservedIpAddress": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "The prefix length of the network to which this host IPv4/IPv6 address belongs.\n"
        },
        "value": {
          "type": "string",
          "description": "value of address\n"
        }
      },
      "type": "object",
      "required": [
        "prefixLength",
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getSubnetV2VirtualSwitch:getSubnetV2VirtualSwitch": {
      "properties": {
        "bondMode": {
          "type": "boolean"
        },
        "clusters": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetSubnetV2VirtualSwitchCluster:getSubnetV2VirtualSwitchCluster"
          }
        },
        "description": {
          "type": "string",
          "description": "Description of the subnet.\n"
        },
        "extId": {
          "type": "string",
          "description": "- (Required) The UUID of the subnet.\n"
        },
        "hasDeploymentError": {
          "type": "boolean"
        },
        "isDefault": {
          "type": "boolean"
        },
        "links": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetSubnetV2VirtualSwitchLink:getSubnetV2VirtualSwitchLink"
          },
          "description": "A HATEOAS style link for the response. Each link contains a user-friendly name identifying the link and an address for retrieving the particular resource.\n"
        },
        "metadatas": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetSubnetV2VirtualSwitchMetadata:getSubnetV2VirtualSwitchMetadata"
          }
        },
        "mtu": {
          "type": "integer"
        },
        "name": {
          "type": "string",
          "description": "Name of the subnet.\n"
        },
        "tenantId": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "bondMode",
        "clusters",
        "description",
        "extId",
        "hasDeploymentError",
        "isDefault",
        "links",
        "metadatas",
        "mtu",
        "name",
        "tenantId"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getSubnetV2VirtualSwitchCluster:getSubnetV2VirtualSwitchCluster": {
      "properties": {
        "extId": {
          "type": "string",
          "description": "- (Required) The UUID of the subnet.\n"
        },
        "gatewayIpAddresses": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetSubnetV2VirtualSwitchClusterGatewayIpAddress:getSubnetV2VirtualSwitchClusterGatewayIpAddress"
          }
        },
        "hosts": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetSubnetV2VirtualSwitchClusterHost:getSubnetV2VirtualSwitchClusterHost"
          }
        }
      },
      "type": "object",
      "required": [
        "extId",
        "gatewayIpAddresses",
        "hosts"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getSubnetV2VirtualSwitchClusterGatewayIpAddress:getSubnetV2VirtualSwitchClusterGatewayIpAddress": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "The prefix length of the network to which this host IPv4/IPv6 address belongs.\n"
        },
        "value": {
          "type": "string",
          "description": "value of address\n"
        }
      },
      "type": "object",
      "required": [
        "prefixLength",
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getSubnetV2VirtualSwitchClusterHost:getSubnetV2VirtualSwitchClusterHost": {
      "properties": {
        "extId": {
          "type": "string",
          "description": "- (Required) The UUID of the subnet.\n"
        },
        "hostNics": {
          "type": "array",
          "items": {
            "type": "string"
          }
        },
        "internalBridgeName": {
          "type": "string"
        },
        "ipAddresses": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetSubnetV2VirtualSwitchClusterHostIpAddress:getSubnetV2VirtualSwitchClusterHostIpAddress"
          }
        },
        "routeTable": {
          "type": "integer"
        }
      },
      "type": "object",
      "required": [
        "extId",
        "hostNics",
        "internalBridgeName",
        "ipAddresses",
        "routeTable"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getSubnetV2VirtualSwitchClusterHostIpAddress:getSubnetV2VirtualSwitchClusterHostIpAddress": {
      "properties": {
        "ips": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetSubnetV2VirtualSwitchClusterHostIpAddressIp:getSubnetV2VirtualSwitchClusterHostIpAddressIp"
          },
          "description": "Reference to address configuration\n"
        },
        "prefixLength": {
          "type": "integer",
          "description": "The prefix length of the network to which this host IPv4/IPv6 address belongs.\n"
        }
      },
      "type": "object",
      "required": [
        "ips",
        "prefixLength"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getSubnetV2VirtualSwitchClusterHostIpAddressIp:getSubnetV2VirtualSwitchClusterHostIpAddressIp": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "The prefix length of the network to which this host IPv4/IPv6 address belongs.\n"
        },
        "value": {
          "type": "string",
          "description": "value of address\n"
        }
      },
      "type": "object",
      "required": [
        "prefixLength",
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getSubnetV2VirtualSwitchLink:getSubnetV2VirtualSwitchLink": {
      "properties": {
        "href": {
          "type": "string"
        },
        "rel": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "href",
        "rel"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getSubnetV2VirtualSwitchMetadata:getSubnetV2VirtualSwitchMetadata": {
      "properties": {
        "categoryIds": {
          "type": "array",
          "items": {
            "type": "array",
            "items": {
              "$ref": "pulumi.json#/Any"
            }
          }
        },
        "ownerReferenceId": {
          "type": "string"
        },
        "ownerUserName": {
          "type": "string"
        },
        "projectName": {
          "type": "string"
        },
        "projectReferenceId": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "categoryIds",
        "ownerReferenceId",
        "ownerUserName",
        "projectName",
        "projectReferenceId"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getSubnetV2Vpc:getSubnetV2Vpc": {
      "properties": {
        "commonDhcpOptions": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetSubnetV2VpcCommonDhcpOption:getSubnetV2VpcCommonDhcpOption"
          }
        },
        "description": {
          "type": "string",
          "description": "Description of the subnet.\n"
        },
        "extId": {
          "type": "string",
          "description": "- (Required) The UUID of the subnet.\n"
        },
        "externalRoutingDomainReference": {
          "type": "string"
        },
        "externalSubnets": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetSubnetV2VpcExternalSubnet:getSubnetV2VpcExternalSubnet"
          }
        },
        "externallyRoutablePrefixes": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetSubnetV2VpcExternallyRoutablePrefix:getSubnetV2VpcExternallyRoutablePrefix"
          }
        },
        "links": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetSubnetV2VpcLink:getSubnetV2VpcLink"
          },
          "description": "A HATEOAS style link for the response. Each link contains a user-friendly name identifying the link and an address for retrieving the particular resource.\n"
        },
        "metadatas": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetSubnetV2VpcMetadata:getSubnetV2VpcMetadata"
          }
        },
        "name": {
          "type": "string",
          "description": "Name of the subnet.\n"
        },
        "snatIps": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetSubnetV2VpcSnatIp:getSubnetV2VpcSnatIp"
          }
        },
        "tenantId": {
          "type": "string"
        },
        "vpcType": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "commonDhcpOptions",
        "description",
        "extId",
        "externalRoutingDomainReference",
        "externalSubnets",
        "externallyRoutablePrefixes",
        "links",
        "metadatas",
        "name",
        "snatIps",
        "tenantId",
        "vpcType"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getSubnetV2VpcCommonDhcpOption:getSubnetV2VpcCommonDhcpOption": {
      "properties": {
        "domainNameServers": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetSubnetV2VpcCommonDhcpOptionDomainNameServer:getSubnetV2VpcCommonDhcpOptionDomainNameServer"
          },
          "description": "List of Domain Name Server addresses.\n"
        }
      },
      "type": "object",
      "required": [
        "domainNameServers"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getSubnetV2VpcCommonDhcpOptionDomainNameServer:getSubnetV2VpcCommonDhcpOptionDomainNameServer": {
      "properties": {
        "ipv4s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetSubnetV2VpcCommonDhcpOptionDomainNameServerIpv4:getSubnetV2VpcCommonDhcpOptionDomainNameServerIpv4"
          },
          "description": "IP V4 configuration.\n"
        },
        "ipv6s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetSubnetV2VpcCommonDhcpOptionDomainNameServerIpv6:getSubnetV2VpcCommonDhcpOptionDomainNameServerIpv6"
          },
          "description": "IP V6 configuration\n"
        }
      },
      "type": "object",
      "required": [
        "ipv4s",
        "ipv6s"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getSubnetV2VpcCommonDhcpOptionDomainNameServerIpv4:getSubnetV2VpcCommonDhcpOptionDomainNameServerIpv4": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "The prefix length of the network to which this host IPv4/IPv6 address belongs.\n"
        },
        "value": {
          "type": "string",
          "description": "value of address\n"
        }
      },
      "type": "object",
      "required": [
        "prefixLength",
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getSubnetV2VpcCommonDhcpOptionDomainNameServerIpv6:getSubnetV2VpcCommonDhcpOptionDomainNameServerIpv6": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "The prefix length of the network to which this host IPv4/IPv6 address belongs.\n"
        },
        "value": {
          "type": "string",
          "description": "value of address\n"
        }
      },
      "type": "object",
      "required": [
        "prefixLength",
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getSubnetV2VpcExternalSubnet:getSubnetV2VpcExternalSubnet": {
      "properties": {
        "activeGatewayCount": {
          "type": "integer"
        },
        "activeGatewayNodes": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetSubnetV2VpcExternalSubnetActiveGatewayNode:getSubnetV2VpcExternalSubnetActiveGatewayNode"
          }
        },
        "externalIps": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetSubnetV2VpcExternalSubnetExternalIp:getSubnetV2VpcExternalSubnetExternalIp"
          }
        },
        "gatewayNodes": {
          "type": "array",
          "items": {
            "type": "string"
          }
        },
        "subnetReference": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "activeGatewayCount",
        "activeGatewayNodes",
        "externalIps",
        "gatewayNodes",
        "subnetReference"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getSubnetV2VpcExternalSubnetActiveGatewayNode:getSubnetV2VpcExternalSubnetActiveGatewayNode": {
      "properties": {
        "nodeId": {
          "type": "string"
        },
        "nodeIpAddresses": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetSubnetV2VpcExternalSubnetActiveGatewayNodeNodeIpAddress:getSubnetV2VpcExternalSubnetActiveGatewayNodeNodeIpAddress"
          }
        }
      },
      "type": "object",
      "required": [
        "nodeId",
        "nodeIpAddresses"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getSubnetV2VpcExternalSubnetActiveGatewayNodeNodeIpAddress:getSubnetV2VpcExternalSubnetActiveGatewayNodeNodeIpAddress": {
      "properties": {
        "ipv4s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetSubnetV2VpcExternalSubnetActiveGatewayNodeNodeIpAddressIpv4:getSubnetV2VpcExternalSubnetActiveGatewayNodeNodeIpAddressIpv4"
          },
          "description": "IP V4 configuration.\n"
        },
        "ipv6s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetSubnetV2VpcExternalSubnetActiveGatewayNodeNodeIpAddressIpv6:getSubnetV2VpcExternalSubnetActiveGatewayNodeNodeIpAddressIpv6"
          },
          "description": "IP V6 configuration\n"
        }
      },
      "type": "object",
      "required": [
        "ipv4s",
        "ipv6s"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getSubnetV2VpcExternalSubnetActiveGatewayNodeNodeIpAddressIpv4:getSubnetV2VpcExternalSubnetActiveGatewayNodeNodeIpAddressIpv4": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "The prefix length of the network to which this host IPv4/IPv6 address belongs.\n"
        },
        "value": {
          "type": "string",
          "description": "value of address\n"
        }
      },
      "type": "object",
      "required": [
        "prefixLength",
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getSubnetV2VpcExternalSubnetActiveGatewayNodeNodeIpAddressIpv6:getSubnetV2VpcExternalSubnetActiveGatewayNodeNodeIpAddressIpv6": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "The prefix length of the network to which this host IPv4/IPv6 address belongs.\n"
        },
        "value": {
          "type": "string",
          "description": "value of address\n"
        }
      },
      "type": "object",
      "required": [
        "prefixLength",
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getSubnetV2VpcExternalSubnetExternalIp:getSubnetV2VpcExternalSubnetExternalIp": {
      "properties": {
        "ipv4s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetSubnetV2VpcExternalSubnetExternalIpIpv4:getSubnetV2VpcExternalSubnetExternalIpIpv4"
          },
          "description": "IP V4 configuration.\n"
        },
        "ipv6s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetSubnetV2VpcExternalSubnetExternalIpIpv6:getSubnetV2VpcExternalSubnetExternalIpIpv6"
          },
          "description": "IP V6 configuration\n"
        }
      },
      "type": "object",
      "required": [
        "ipv4s",
        "ipv6s"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getSubnetV2VpcExternalSubnetExternalIpIpv4:getSubnetV2VpcExternalSubnetExternalIpIpv4": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "The prefix length of the network to which this host IPv4/IPv6 address belongs.\n"
        },
        "value": {
          "type": "string",
          "description": "value of address\n"
        }
      },
      "type": "object",
      "required": [
        "prefixLength",
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getSubnetV2VpcExternalSubnetExternalIpIpv6:getSubnetV2VpcExternalSubnetExternalIpIpv6": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "The prefix length of the network to which this host IPv4/IPv6 address belongs.\n"
        },
        "value": {
          "type": "string",
          "description": "value of address\n"
        }
      },
      "type": "object",
      "required": [
        "prefixLength",
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getSubnetV2VpcExternallyRoutablePrefix:getSubnetV2VpcExternallyRoutablePrefix": {
      "properties": {
        "ipv4s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetSubnetV2VpcExternallyRoutablePrefixIpv4:getSubnetV2VpcExternallyRoutablePrefixIpv4"
          },
          "description": "IP V4 configuration.\n"
        },
        "ipv6s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetSubnetV2VpcExternallyRoutablePrefixIpv6:getSubnetV2VpcExternallyRoutablePrefixIpv6"
          },
          "description": "IP V6 configuration\n"
        }
      },
      "type": "object",
      "required": [
        "ipv4s",
        "ipv6s"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getSubnetV2VpcExternallyRoutablePrefixIpv4:getSubnetV2VpcExternallyRoutablePrefixIpv4": {
      "properties": {
        "ips": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetSubnetV2VpcExternallyRoutablePrefixIpv4Ip:getSubnetV2VpcExternallyRoutablePrefixIpv4Ip"
          },
          "description": "Reference to address configuration\n"
        },
        "prefixLength": {
          "type": "integer",
          "description": "The prefix length of the network to which this host IPv4/IPv6 address belongs.\n"
        }
      },
      "type": "object",
      "required": [
        "ips",
        "prefixLength"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getSubnetV2VpcExternallyRoutablePrefixIpv4Ip:getSubnetV2VpcExternallyRoutablePrefixIpv4Ip": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "The prefix length of the network to which this host IPv4/IPv6 address belongs.\n"
        },
        "value": {
          "type": "string",
          "description": "value of address\n"
        }
      },
      "type": "object",
      "required": [
        "prefixLength",
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getSubnetV2VpcExternallyRoutablePrefixIpv6:getSubnetV2VpcExternallyRoutablePrefixIpv6": {
      "properties": {
        "ips": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetSubnetV2VpcExternallyRoutablePrefixIpv6Ip:getSubnetV2VpcExternallyRoutablePrefixIpv6Ip"
          },
          "description": "Reference to address configuration\n"
        },
        "prefixLength": {
          "type": "integer",
          "description": "The prefix length of the network to which this host IPv4/IPv6 address belongs.\n"
        }
      },
      "type": "object",
      "required": [
        "ips",
        "prefixLength"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getSubnetV2VpcExternallyRoutablePrefixIpv6Ip:getSubnetV2VpcExternallyRoutablePrefixIpv6Ip": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "The prefix length of the network to which this host IPv4/IPv6 address belongs.\n"
        },
        "value": {
          "type": "string",
          "description": "value of address\n"
        }
      },
      "type": "object",
      "required": [
        "prefixLength",
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getSubnetV2VpcLink:getSubnetV2VpcLink": {
      "properties": {
        "href": {
          "type": "string"
        },
        "rel": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "href",
        "rel"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getSubnetV2VpcMetadata:getSubnetV2VpcMetadata": {
      "properties": {
        "categoryIds": {
          "type": "array",
          "items": {
            "type": "array",
            "items": {
              "$ref": "pulumi.json#/Any"
            }
          }
        },
        "ownerReferenceId": {
          "type": "string"
        },
        "ownerUserName": {
          "type": "string"
        },
        "projectName": {
          "type": "string"
        },
        "projectReferenceId": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "categoryIds",
        "ownerReferenceId",
        "ownerUserName",
        "projectName",
        "projectReferenceId"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getSubnetV2VpcSnatIp:getSubnetV2VpcSnatIp": {
      "properties": {
        "ipv4s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetSubnetV2VpcSnatIpIpv4:getSubnetV2VpcSnatIpIpv4"
          },
          "description": "IP V4 configuration.\n"
        },
        "ipv6s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetSubnetV2VpcSnatIpIpv6:getSubnetV2VpcSnatIpIpv6"
          },
          "description": "IP V6 configuration\n"
        }
      },
      "type": "object",
      "required": [
        "ipv4s",
        "ipv6s"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getSubnetV2VpcSnatIpIpv4:getSubnetV2VpcSnatIpIpv4": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "The prefix length of the network to which this host IPv4/IPv6 address belongs.\n"
        },
        "value": {
          "type": "string",
          "description": "value of address\n"
        }
      },
      "type": "object",
      "required": [
        "prefixLength",
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getSubnetV2VpcSnatIpIpv6:getSubnetV2VpcSnatIpIpv6": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "The prefix length of the network to which this host IPv4/IPv6 address belongs.\n"
        },
        "value": {
          "type": "string",
          "description": "value of address\n"
        }
      },
      "type": "object",
      "required": [
        "prefixLength",
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getSubnetsEntity:getSubnetsEntity": {
      "properties": {
        "apiVersion": {
          "type": "string",
          "description": "version of the API\n"
        },
        "availabilityZoneReference": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          },
          "description": "The reference to a availability_zone.\n"
        },
        "categories": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetSubnetsEntityCategory:getSubnetsEntityCategory"
          },
          "description": "The API Version.\n"
        },
        "clusterName": {
          "type": "string",
          "description": "The name of a cluster.\n"
        },
        "clusterReference": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          },
          "description": "The reference to a cluster.\n"
        },
        "clusterUuid": {
          "type": "string"
        },
        "defaultGatewayIp": {
          "type": "string",
          "description": "Default gateway IP address.\n"
        },
        "description": {
          "type": "string",
          "description": "A description for subnet.\n"
        },
        "dhcpDomainNameServerLists": {
          "type": "array",
          "items": {
            "type": "string"
          }
        },
        "dhcpDomainSearchLists": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "DHCP domain search list for a subnet.\n"
        },
        "dhcpOptions": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          },
          "description": "Spec for defining DHCP options.\n"
        },
        "dhcpServerAddress": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          },
          "description": "Host address.\n"
        },
        "dhcpServerAddressPort": {
          "type": "integer",
          "description": "Port Number.\n"
        },
        "enableNat": {
          "type": "boolean"
        },
        "ipConfigPoolListRanges": {
          "type": "array",
          "items": {
            "type": "string"
          }
        },
        "isExternal": {
          "type": "boolean"
        },
        "messageLists": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetSubnetsEntityMessageList:getSubnetsEntityMessageList"
          }
        },
        "metadata": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          },
          "description": "The subnet kind metadata.\n"
        },
        "name": {
          "type": "string",
          "description": "the name.\n"
        },
        "networkFunctionChainReference": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          },
          "description": "The reference to a network_function_chain.\n"
        },
        "ownerReference": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          },
          "description": "The reference to a user.\n"
        },
        "prefixLength": {
          "type": "integer",
          "description": "-. IP prefix length of the Subnet.\n"
        },
        "projectReference": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          },
          "description": "The reference to a project.\n"
        },
        "state": {
          "type": "string",
          "description": "The state of the subnet.\n"
        },
        "subnetId": {
          "type": "string"
        },
        "subnetIp": {
          "type": "string",
          "description": "Subnet IP address.\n"
        },
        "subnetName": {
          "type": "string"
        },
        "subnetType": {
          "type": "string",
          "description": "The type of the subnet.\n"
        },
        "vlanId": {
          "type": "integer",
          "description": "VLAN assigned to the subnet.\n"
        },
        "vpcReference": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          }
        },
        "vswitchName": {
          "type": "string",
          "description": "The name of the vswitch.\n"
        }
      },
      "type": "object",
      "required": [
        "apiVersion",
        "availabilityZoneReference",
        "categories",
        "clusterName",
        "clusterReference",
        "clusterUuid",
        "defaultGatewayIp",
        "description",
        "dhcpDomainNameServerLists",
        "dhcpDomainSearchLists",
        "dhcpOptions",
        "dhcpServerAddress",
        "dhcpServerAddressPort",
        "enableNat",
        "ipConfigPoolListRanges",
        "isExternal",
        "messageLists",
        "metadata",
        "name",
        "networkFunctionChainReference",
        "ownerReference",
        "prefixLength",
        "projectReference",
        "state",
        "subnetId",
        "subnetIp",
        "subnetName",
        "subnetType",
        "vlanId",
        "vpcReference",
        "vswitchName"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getSubnetsEntityCategory:getSubnetsEntityCategory": {
      "properties": {
        "name": {
          "type": "string",
          "description": "the name.\n"
        },
        "value": {
          "type": "string",
          "description": "value of the key.\n"
        }
      },
      "type": "object",
      "required": [
        "name",
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getSubnetsEntityMessageList:getSubnetsEntityMessageList": {
      "properties": {
        "details": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          }
        },
        "message": {
          "type": "string"
        },
        "reason": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "details",
        "message",
        "reason"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getSubnetsMetadata:getSubnetsMetadata": {
      "properties": {
        "filter": {
          "type": "string"
        },
        "kind": {
          "type": "string",
          "description": "The kind name (Default value: project.\n"
        },
        "length": {
          "type": "integer"
        },
        "offset": {
          "type": "integer"
        },
        "sortAttribute": {
          "type": "string"
        },
        "sortOrder": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "filter",
        "kind",
        "length",
        "offset",
        "sortAttribute",
        "sortOrder"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getSubnetsV2Subnet:getSubnetsV2Subnet": {
      "properties": {
        "bridgeName": {
          "type": "string"
        },
        "clusterName": {
          "type": "string"
        },
        "clusterReference": {
          "type": "string"
        },
        "description": {
          "type": "string"
        },
        "dhcpOptions": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetSubnetsV2SubnetDhcpOption:getSubnetsV2SubnetDhcpOption"
          }
        },
        "dynamicIpAddresses": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetSubnetsV2SubnetDynamicIpAddress:getSubnetsV2SubnetDynamicIpAddress"
          }
        },
        "extId": {
          "type": "string"
        },
        "hypervisorType": {
          "type": "string"
        },
        "ipConfigs": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetSubnetsV2SubnetIpConfig:getSubnetsV2SubnetIpConfig"
          }
        },
        "ipPrefix": {
          "type": "string"
        },
        "ipUsages": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetSubnetsV2SubnetIpUsage:getSubnetsV2SubnetIpUsage"
          }
        },
        "isAdvancedNetworking": {
          "type": "boolean"
        },
        "isExternal": {
          "type": "boolean"
        },
        "isNatEnabled": {
          "type": "boolean"
        },
        "links": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetSubnetsV2SubnetLink:getSubnetsV2SubnetLink"
          }
        },
        "migrationState": {
          "type": "string"
        },
        "name": {
          "type": "string"
        },
        "networkFunctionChainReference": {
          "type": "string"
        },
        "networkId": {
          "type": "integer"
        },
        "reservedIpAddresses": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetSubnetsV2SubnetReservedIpAddress:getSubnetsV2SubnetReservedIpAddress"
          }
        },
        "subnetType": {
          "type": "string"
        },
        "virtualSwitchReference": {
          "type": "string"
        },
        "virtualSwitches": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetSubnetsV2SubnetVirtualSwitch:getSubnetsV2SubnetVirtualSwitch"
          }
        },
        "vpcReference": {
          "type": "string"
        },
        "vpcs": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetSubnetsV2SubnetVpc:getSubnetsV2SubnetVpc"
          }
        }
      },
      "type": "object",
      "required": [
        "bridgeName",
        "clusterName",
        "clusterReference",
        "description",
        "dhcpOptions",
        "dynamicIpAddresses",
        "extId",
        "hypervisorType",
        "ipConfigs",
        "ipPrefix",
        "ipUsages",
        "isAdvancedNetworking",
        "isExternal",
        "isNatEnabled",
        "links",
        "migrationState",
        "name",
        "networkFunctionChainReference",
        "networkId",
        "reservedIpAddresses",
        "subnetType",
        "virtualSwitchReference",
        "virtualSwitches",
        "vpcReference",
        "vpcs"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getSubnetsV2SubnetDhcpOption:getSubnetsV2SubnetDhcpOption": {
      "properties": {
        "bootFileName": {
          "type": "string"
        },
        "domainName": {
          "type": "string"
        },
        "domainNameServers": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetSubnetsV2SubnetDhcpOptionDomainNameServer:getSubnetsV2SubnetDhcpOptionDomainNameServer"
          }
        },
        "ntpServers": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetSubnetsV2SubnetDhcpOptionNtpServer:getSubnetsV2SubnetDhcpOptionNtpServer"
          }
        },
        "searchDomains": {
          "type": "array",
          "items": {
            "type": "string"
          }
        },
        "tftpServerName": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "bootFileName",
        "domainName",
        "domainNameServers",
        "ntpServers",
        "searchDomains",
        "tftpServerName"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getSubnetsV2SubnetDhcpOptionDomainNameServer:getSubnetsV2SubnetDhcpOptionDomainNameServer": {
      "properties": {
        "ipv4s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetSubnetsV2SubnetDhcpOptionDomainNameServerIpv4:getSubnetsV2SubnetDhcpOptionDomainNameServerIpv4"
          }
        },
        "ipv6s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetSubnetsV2SubnetDhcpOptionDomainNameServerIpv6:getSubnetsV2SubnetDhcpOptionDomainNameServerIpv6"
          }
        }
      },
      "type": "object",
      "required": [
        "ipv4s",
        "ipv6s"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getSubnetsV2SubnetDhcpOptionDomainNameServerIpv4:getSubnetsV2SubnetDhcpOptionDomainNameServerIpv4": {
      "properties": {
        "prefixLength": {
          "type": "integer"
        },
        "value": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "prefixLength",
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getSubnetsV2SubnetDhcpOptionDomainNameServerIpv6:getSubnetsV2SubnetDhcpOptionDomainNameServerIpv6": {
      "properties": {
        "prefixLength": {
          "type": "integer"
        },
        "value": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "prefixLength",
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getSubnetsV2SubnetDhcpOptionNtpServer:getSubnetsV2SubnetDhcpOptionNtpServer": {
      "properties": {
        "ipv4s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetSubnetsV2SubnetDhcpOptionNtpServerIpv4:getSubnetsV2SubnetDhcpOptionNtpServerIpv4"
          }
        },
        "ipv6s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetSubnetsV2SubnetDhcpOptionNtpServerIpv6:getSubnetsV2SubnetDhcpOptionNtpServerIpv6"
          }
        }
      },
      "type": "object",
      "required": [
        "ipv4s",
        "ipv6s"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getSubnetsV2SubnetDhcpOptionNtpServerIpv4:getSubnetsV2SubnetDhcpOptionNtpServerIpv4": {
      "properties": {
        "prefixLength": {
          "type": "integer"
        },
        "value": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "prefixLength",
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getSubnetsV2SubnetDhcpOptionNtpServerIpv6:getSubnetsV2SubnetDhcpOptionNtpServerIpv6": {
      "properties": {
        "prefixLength": {
          "type": "integer"
        },
        "value": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "prefixLength",
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getSubnetsV2SubnetDynamicIpAddress:getSubnetsV2SubnetDynamicIpAddress": {
      "properties": {
        "ipv4s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetSubnetsV2SubnetDynamicIpAddressIpv4:getSubnetsV2SubnetDynamicIpAddressIpv4"
          }
        },
        "ipv6s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetSubnetsV2SubnetDynamicIpAddressIpv6:getSubnetsV2SubnetDynamicIpAddressIpv6"
          }
        }
      },
      "type": "object",
      "required": [
        "ipv4s",
        "ipv6s"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getSubnetsV2SubnetDynamicIpAddressIpv4:getSubnetsV2SubnetDynamicIpAddressIpv4": {
      "properties": {
        "prefixLength": {
          "type": "integer"
        },
        "value": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "prefixLength",
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getSubnetsV2SubnetDynamicIpAddressIpv6:getSubnetsV2SubnetDynamicIpAddressIpv6": {
      "properties": {
        "prefixLength": {
          "type": "integer"
        },
        "value": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "prefixLength",
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getSubnetsV2SubnetIpConfig:getSubnetsV2SubnetIpConfig": {
      "properties": {
        "ipv4s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetSubnetsV2SubnetIpConfigIpv4:getSubnetsV2SubnetIpConfigIpv4"
          }
        },
        "ipv6s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetSubnetsV2SubnetIpConfigIpv6:getSubnetsV2SubnetIpConfigIpv6"
          }
        }
      },
      "type": "object",
      "required": [
        "ipv4s",
        "ipv6s"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getSubnetsV2SubnetIpConfigIpv4:getSubnetsV2SubnetIpConfigIpv4": {
      "properties": {
        "defaultGatewayIps": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetSubnetsV2SubnetIpConfigIpv4DefaultGatewayIp:getSubnetsV2SubnetIpConfigIpv4DefaultGatewayIp"
          }
        },
        "dhcpServerAddresses": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetSubnetsV2SubnetIpConfigIpv4DhcpServerAddress:getSubnetsV2SubnetIpConfigIpv4DhcpServerAddress"
          }
        },
        "ipSubnets": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetSubnetsV2SubnetIpConfigIpv4IpSubnet:getSubnetsV2SubnetIpConfigIpv4IpSubnet"
          }
        },
        "poolLists": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetSubnetsV2SubnetIpConfigIpv4PoolList:getSubnetsV2SubnetIpConfigIpv4PoolList"
          }
        }
      },
      "type": "object",
      "required": [
        "defaultGatewayIps",
        "dhcpServerAddresses",
        "ipSubnets",
        "poolLists"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getSubnetsV2SubnetIpConfigIpv4DefaultGatewayIp:getSubnetsV2SubnetIpConfigIpv4DefaultGatewayIp": {
      "properties": {
        "prefixLength": {
          "type": "integer"
        },
        "value": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "prefixLength",
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getSubnetsV2SubnetIpConfigIpv4DhcpServerAddress:getSubnetsV2SubnetIpConfigIpv4DhcpServerAddress": {
      "properties": {
        "prefixLength": {
          "type": "integer"
        },
        "value": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "prefixLength",
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getSubnetsV2SubnetIpConfigIpv4IpSubnet:getSubnetsV2SubnetIpConfigIpv4IpSubnet": {
      "properties": {
        "ips": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetSubnetsV2SubnetIpConfigIpv4IpSubnetIp:getSubnetsV2SubnetIpConfigIpv4IpSubnetIp"
          }
        },
        "prefixLength": {
          "type": "integer"
        }
      },
      "type": "object",
      "required": [
        "ips",
        "prefixLength"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getSubnetsV2SubnetIpConfigIpv4IpSubnetIp:getSubnetsV2SubnetIpConfigIpv4IpSubnetIp": {
      "properties": {
        "prefixLength": {
          "type": "integer"
        },
        "value": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "prefixLength",
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getSubnetsV2SubnetIpConfigIpv4PoolList:getSubnetsV2SubnetIpConfigIpv4PoolList": {
      "properties": {
        "endIps": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetSubnetsV2SubnetIpConfigIpv4PoolListEndIp:getSubnetsV2SubnetIpConfigIpv4PoolListEndIp"
          }
        },
        "startIps": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetSubnetsV2SubnetIpConfigIpv4PoolListStartIp:getSubnetsV2SubnetIpConfigIpv4PoolListStartIp"
          }
        }
      },
      "type": "object",
      "required": [
        "endIps",
        "startIps"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getSubnetsV2SubnetIpConfigIpv4PoolListEndIp:getSubnetsV2SubnetIpConfigIpv4PoolListEndIp": {
      "properties": {
        "prefixLength": {
          "type": "integer"
        },
        "value": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "prefixLength",
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getSubnetsV2SubnetIpConfigIpv4PoolListStartIp:getSubnetsV2SubnetIpConfigIpv4PoolListStartIp": {
      "properties": {
        "prefixLength": {
          "type": "integer"
        },
        "value": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "prefixLength",
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getSubnetsV2SubnetIpConfigIpv6:getSubnetsV2SubnetIpConfigIpv6": {
      "properties": {
        "defaultGatewayIps": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetSubnetsV2SubnetIpConfigIpv6DefaultGatewayIp:getSubnetsV2SubnetIpConfigIpv6DefaultGatewayIp"
          }
        },
        "dhcpServerAddresses": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetSubnetsV2SubnetIpConfigIpv6DhcpServerAddress:getSubnetsV2SubnetIpConfigIpv6DhcpServerAddress"
          }
        },
        "ipSubnets": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetSubnetsV2SubnetIpConfigIpv6IpSubnet:getSubnetsV2SubnetIpConfigIpv6IpSubnet"
          }
        },
        "poolLists": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetSubnetsV2SubnetIpConfigIpv6PoolList:getSubnetsV2SubnetIpConfigIpv6PoolList"
          }
        }
      },
      "type": "object",
      "required": [
        "defaultGatewayIps",
        "dhcpServerAddresses",
        "ipSubnets",
        "poolLists"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getSubnetsV2SubnetIpConfigIpv6DefaultGatewayIp:getSubnetsV2SubnetIpConfigIpv6DefaultGatewayIp": {
      "properties": {
        "prefixLength": {
          "type": "integer"
        },
        "value": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "prefixLength",
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getSubnetsV2SubnetIpConfigIpv6DhcpServerAddress:getSubnetsV2SubnetIpConfigIpv6DhcpServerAddress": {
      "properties": {
        "prefixLength": {
          "type": "integer"
        },
        "value": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "prefixLength",
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getSubnetsV2SubnetIpConfigIpv6IpSubnet:getSubnetsV2SubnetIpConfigIpv6IpSubnet": {
      "properties": {
        "ips": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetSubnetsV2SubnetIpConfigIpv6IpSubnetIp:getSubnetsV2SubnetIpConfigIpv6IpSubnetIp"
          }
        },
        "prefixLength": {
          "type": "integer"
        }
      },
      "type": "object",
      "required": [
        "ips",
        "prefixLength"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getSubnetsV2SubnetIpConfigIpv6IpSubnetIp:getSubnetsV2SubnetIpConfigIpv6IpSubnetIp": {
      "properties": {
        "prefixLength": {
          "type": "integer"
        },
        "value": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "prefixLength",
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getSubnetsV2SubnetIpConfigIpv6PoolList:getSubnetsV2SubnetIpConfigIpv6PoolList": {
      "properties": {
        "endIps": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetSubnetsV2SubnetIpConfigIpv6PoolListEndIp:getSubnetsV2SubnetIpConfigIpv6PoolListEndIp"
          }
        },
        "startIps": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetSubnetsV2SubnetIpConfigIpv6PoolListStartIp:getSubnetsV2SubnetIpConfigIpv6PoolListStartIp"
          }
        }
      },
      "type": "object",
      "required": [
        "endIps",
        "startIps"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getSubnetsV2SubnetIpConfigIpv6PoolListEndIp:getSubnetsV2SubnetIpConfigIpv6PoolListEndIp": {
      "properties": {
        "prefixLength": {
          "type": "integer"
        },
        "value": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "prefixLength",
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getSubnetsV2SubnetIpConfigIpv6PoolListStartIp:getSubnetsV2SubnetIpConfigIpv6PoolListStartIp": {
      "properties": {
        "prefixLength": {
          "type": "integer"
        },
        "value": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "prefixLength",
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getSubnetsV2SubnetIpUsage:getSubnetsV2SubnetIpUsage": {
      "properties": {
        "ipPoolUsages": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetSubnetsV2SubnetIpUsageIpPoolUsage:getSubnetsV2SubnetIpUsageIpPoolUsage"
          }
        },
        "numAssignedIps": {
          "type": "integer"
        },
        "numFreeIps": {
          "type": "integer"
        },
        "numMacs": {
          "type": "integer"
        }
      },
      "type": "object",
      "required": [
        "ipPoolUsages",
        "numAssignedIps",
        "numFreeIps",
        "numMacs"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getSubnetsV2SubnetIpUsageIpPoolUsage:getSubnetsV2SubnetIpUsageIpPoolUsage": {
      "properties": {
        "numFreeIps": {
          "type": "integer"
        },
        "numTotalIps": {
          "type": "integer"
        },
        "ranges": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetSubnetsV2SubnetIpUsageIpPoolUsageRange:getSubnetsV2SubnetIpUsageIpPoolUsageRange"
          }
        }
      },
      "type": "object",
      "required": [
        "numFreeIps",
        "numTotalIps",
        "ranges"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getSubnetsV2SubnetIpUsageIpPoolUsageRange:getSubnetsV2SubnetIpUsageIpPoolUsageRange": {
      "properties": {
        "endIps": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetSubnetsV2SubnetIpUsageIpPoolUsageRangeEndIp:getSubnetsV2SubnetIpUsageIpPoolUsageRangeEndIp"
          }
        },
        "startIps": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetSubnetsV2SubnetIpUsageIpPoolUsageRangeStartIp:getSubnetsV2SubnetIpUsageIpPoolUsageRangeStartIp"
          }
        }
      },
      "type": "object",
      "required": [
        "endIps",
        "startIps"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getSubnetsV2SubnetIpUsageIpPoolUsageRangeEndIp:getSubnetsV2SubnetIpUsageIpPoolUsageRangeEndIp": {
      "properties": {
        "prefixLength": {
          "type": "integer"
        },
        "value": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "prefixLength",
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getSubnetsV2SubnetIpUsageIpPoolUsageRangeStartIp:getSubnetsV2SubnetIpUsageIpPoolUsageRangeStartIp": {
      "properties": {
        "prefixLength": {
          "type": "integer"
        },
        "value": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "prefixLength",
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getSubnetsV2SubnetLink:getSubnetsV2SubnetLink": {
      "properties": {
        "href": {
          "type": "string"
        },
        "rel": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "href",
        "rel"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getSubnetsV2SubnetReservedIpAddress:getSubnetsV2SubnetReservedIpAddress": {
      "properties": {
        "prefixLength": {
          "type": "integer"
        },
        "value": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "prefixLength",
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getSubnetsV2SubnetVirtualSwitch:getSubnetsV2SubnetVirtualSwitch": {
      "properties": {
        "bondMode": {
          "type": "boolean"
        },
        "clusters": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetSubnetsV2SubnetVirtualSwitchCluster:getSubnetsV2SubnetVirtualSwitchCluster"
          }
        },
        "description": {
          "type": "string"
        },
        "extId": {
          "type": "string"
        },
        "hasDeploymentError": {
          "type": "boolean"
        },
        "isDefault": {
          "type": "boolean"
        },
        "links": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetSubnetsV2SubnetVirtualSwitchLink:getSubnetsV2SubnetVirtualSwitchLink"
          }
        },
        "metadatas": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetSubnetsV2SubnetVirtualSwitchMetadata:getSubnetsV2SubnetVirtualSwitchMetadata"
          }
        },
        "mtu": {
          "type": "integer"
        },
        "name": {
          "type": "string"
        },
        "tenantId": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "bondMode",
        "clusters",
        "description",
        "extId",
        "hasDeploymentError",
        "isDefault",
        "links",
        "metadatas",
        "mtu",
        "name",
        "tenantId"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getSubnetsV2SubnetVirtualSwitchCluster:getSubnetsV2SubnetVirtualSwitchCluster": {
      "properties": {
        "extId": {
          "type": "string"
        },
        "gatewayIpAddresses": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetSubnetsV2SubnetVirtualSwitchClusterGatewayIpAddress:getSubnetsV2SubnetVirtualSwitchClusterGatewayIpAddress"
          }
        },
        "hosts": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetSubnetsV2SubnetVirtualSwitchClusterHost:getSubnetsV2SubnetVirtualSwitchClusterHost"
          }
        }
      },
      "type": "object",
      "required": [
        "extId",
        "gatewayIpAddresses",
        "hosts"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getSubnetsV2SubnetVirtualSwitchClusterGatewayIpAddress:getSubnetsV2SubnetVirtualSwitchClusterGatewayIpAddress": {
      "properties": {
        "prefixLength": {
          "type": "integer"
        },
        "value": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "prefixLength",
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getSubnetsV2SubnetVirtualSwitchClusterHost:getSubnetsV2SubnetVirtualSwitchClusterHost": {
      "properties": {
        "extId": {
          "type": "string"
        },
        "hostNics": {
          "type": "array",
          "items": {
            "type": "string"
          }
        },
        "internalBridgeName": {
          "type": "string"
        },
        "ipAddresses": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetSubnetsV2SubnetVirtualSwitchClusterHostIpAddress:getSubnetsV2SubnetVirtualSwitchClusterHostIpAddress"
          }
        },
        "routeTable": {
          "type": "integer"
        }
      },
      "type": "object",
      "required": [
        "extId",
        "hostNics",
        "internalBridgeName",
        "ipAddresses",
        "routeTable"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getSubnetsV2SubnetVirtualSwitchClusterHostIpAddress:getSubnetsV2SubnetVirtualSwitchClusterHostIpAddress": {
      "properties": {
        "ips": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetSubnetsV2SubnetVirtualSwitchClusterHostIpAddressIp:getSubnetsV2SubnetVirtualSwitchClusterHostIpAddressIp"
          }
        },
        "prefixLength": {
          "type": "integer"
        }
      },
      "type": "object",
      "required": [
        "ips",
        "prefixLength"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getSubnetsV2SubnetVirtualSwitchClusterHostIpAddressIp:getSubnetsV2SubnetVirtualSwitchClusterHostIpAddressIp": {
      "properties": {
        "prefixLength": {
          "type": "integer"
        },
        "value": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "prefixLength",
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getSubnetsV2SubnetVirtualSwitchLink:getSubnetsV2SubnetVirtualSwitchLink": {
      "properties": {
        "href": {
          "type": "string"
        },
        "rel": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "href",
        "rel"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getSubnetsV2SubnetVirtualSwitchMetadata:getSubnetsV2SubnetVirtualSwitchMetadata": {
      "properties": {
        "categoryIds": {
          "type": "array",
          "items": {
            "type": "array",
            "items": {
              "$ref": "pulumi.json#/Any"
            }
          }
        },
        "ownerReferenceId": {
          "type": "string"
        },
        "ownerUserName": {
          "type": "string"
        },
        "projectName": {
          "type": "string"
        },
        "projectReferenceId": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "categoryIds",
        "ownerReferenceId",
        "ownerUserName",
        "projectName",
        "projectReferenceId"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getSubnetsV2SubnetVpc:getSubnetsV2SubnetVpc": {
      "properties": {
        "commonDhcpOptions": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetSubnetsV2SubnetVpcCommonDhcpOption:getSubnetsV2SubnetVpcCommonDhcpOption"
          }
        },
        "description": {
          "type": "string"
        },
        "extId": {
          "type": "string"
        },
        "externalRoutingDomainReference": {
          "type": "string"
        },
        "externalSubnets": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetSubnetsV2SubnetVpcExternalSubnet:getSubnetsV2SubnetVpcExternalSubnet"
          }
        },
        "externallyRoutablePrefixes": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetSubnetsV2SubnetVpcExternallyRoutablePrefix:getSubnetsV2SubnetVpcExternallyRoutablePrefix"
          }
        },
        "links": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetSubnetsV2SubnetVpcLink:getSubnetsV2SubnetVpcLink"
          }
        },
        "metadatas": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetSubnetsV2SubnetVpcMetadata:getSubnetsV2SubnetVpcMetadata"
          }
        },
        "name": {
          "type": "string"
        },
        "snatIps": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetSubnetsV2SubnetVpcSnatIp:getSubnetsV2SubnetVpcSnatIp"
          }
        },
        "tenantId": {
          "type": "string"
        },
        "vpcType": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "commonDhcpOptions",
        "description",
        "extId",
        "externalRoutingDomainReference",
        "externalSubnets",
        "externallyRoutablePrefixes",
        "links",
        "metadatas",
        "name",
        "snatIps",
        "tenantId",
        "vpcType"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getSubnetsV2SubnetVpcCommonDhcpOption:getSubnetsV2SubnetVpcCommonDhcpOption": {
      "properties": {
        "domainNameServers": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetSubnetsV2SubnetVpcCommonDhcpOptionDomainNameServer:getSubnetsV2SubnetVpcCommonDhcpOptionDomainNameServer"
          }
        }
      },
      "type": "object",
      "required": [
        "domainNameServers"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getSubnetsV2SubnetVpcCommonDhcpOptionDomainNameServer:getSubnetsV2SubnetVpcCommonDhcpOptionDomainNameServer": {
      "properties": {
        "ipv4s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetSubnetsV2SubnetVpcCommonDhcpOptionDomainNameServerIpv4:getSubnetsV2SubnetVpcCommonDhcpOptionDomainNameServerIpv4"
          }
        },
        "ipv6s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetSubnetsV2SubnetVpcCommonDhcpOptionDomainNameServerIpv6:getSubnetsV2SubnetVpcCommonDhcpOptionDomainNameServerIpv6"
          }
        }
      },
      "type": "object",
      "required": [
        "ipv4s",
        "ipv6s"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getSubnetsV2SubnetVpcCommonDhcpOptionDomainNameServerIpv4:getSubnetsV2SubnetVpcCommonDhcpOptionDomainNameServerIpv4": {
      "properties": {
        "prefixLength": {
          "type": "integer"
        },
        "value": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "prefixLength",
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getSubnetsV2SubnetVpcCommonDhcpOptionDomainNameServerIpv6:getSubnetsV2SubnetVpcCommonDhcpOptionDomainNameServerIpv6": {
      "properties": {
        "prefixLength": {
          "type": "integer"
        },
        "value": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "prefixLength",
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getSubnetsV2SubnetVpcExternalSubnet:getSubnetsV2SubnetVpcExternalSubnet": {
      "properties": {
        "activeGatewayCount": {
          "type": "integer"
        },
        "activeGatewayNodes": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetSubnetsV2SubnetVpcExternalSubnetActiveGatewayNode:getSubnetsV2SubnetVpcExternalSubnetActiveGatewayNode"
          }
        },
        "externalIps": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetSubnetsV2SubnetVpcExternalSubnetExternalIp:getSubnetsV2SubnetVpcExternalSubnetExternalIp"
          }
        },
        "gatewayNodes": {
          "type": "array",
          "items": {
            "type": "string"
          }
        },
        "subnetReference": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "activeGatewayCount",
        "activeGatewayNodes",
        "externalIps",
        "gatewayNodes",
        "subnetReference"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getSubnetsV2SubnetVpcExternalSubnetActiveGatewayNode:getSubnetsV2SubnetVpcExternalSubnetActiveGatewayNode": {
      "properties": {
        "nodeId": {
          "type": "string"
        },
        "nodeIpAddresses": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetSubnetsV2SubnetVpcExternalSubnetActiveGatewayNodeNodeIpAddress:getSubnetsV2SubnetVpcExternalSubnetActiveGatewayNodeNodeIpAddress"
          }
        }
      },
      "type": "object",
      "required": [
        "nodeId",
        "nodeIpAddresses"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getSubnetsV2SubnetVpcExternalSubnetActiveGatewayNodeNodeIpAddress:getSubnetsV2SubnetVpcExternalSubnetActiveGatewayNodeNodeIpAddress": {
      "properties": {
        "ipv4s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetSubnetsV2SubnetVpcExternalSubnetActiveGatewayNodeNodeIpAddressIpv4:getSubnetsV2SubnetVpcExternalSubnetActiveGatewayNodeNodeIpAddressIpv4"
          }
        },
        "ipv6s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetSubnetsV2SubnetVpcExternalSubnetActiveGatewayNodeNodeIpAddressIpv6:getSubnetsV2SubnetVpcExternalSubnetActiveGatewayNodeNodeIpAddressIpv6"
          }
        }
      },
      "type": "object",
      "required": [
        "ipv4s",
        "ipv6s"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getSubnetsV2SubnetVpcExternalSubnetActiveGatewayNodeNodeIpAddressIpv4:getSubnetsV2SubnetVpcExternalSubnetActiveGatewayNodeNodeIpAddressIpv4": {
      "properties": {
        "prefixLength": {
          "type": "integer"
        },
        "value": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "prefixLength",
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getSubnetsV2SubnetVpcExternalSubnetActiveGatewayNodeNodeIpAddressIpv6:getSubnetsV2SubnetVpcExternalSubnetActiveGatewayNodeNodeIpAddressIpv6": {
      "properties": {
        "prefixLength": {
          "type": "integer"
        },
        "value": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "prefixLength",
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getSubnetsV2SubnetVpcExternalSubnetExternalIp:getSubnetsV2SubnetVpcExternalSubnetExternalIp": {
      "properties": {
        "ipv4s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetSubnetsV2SubnetVpcExternalSubnetExternalIpIpv4:getSubnetsV2SubnetVpcExternalSubnetExternalIpIpv4"
          }
        },
        "ipv6s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetSubnetsV2SubnetVpcExternalSubnetExternalIpIpv6:getSubnetsV2SubnetVpcExternalSubnetExternalIpIpv6"
          }
        }
      },
      "type": "object",
      "required": [
        "ipv4s",
        "ipv6s"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getSubnetsV2SubnetVpcExternalSubnetExternalIpIpv4:getSubnetsV2SubnetVpcExternalSubnetExternalIpIpv4": {
      "properties": {
        "prefixLength": {
          "type": "integer"
        },
        "value": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "prefixLength",
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getSubnetsV2SubnetVpcExternalSubnetExternalIpIpv6:getSubnetsV2SubnetVpcExternalSubnetExternalIpIpv6": {
      "properties": {
        "prefixLength": {
          "type": "integer"
        },
        "value": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "prefixLength",
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getSubnetsV2SubnetVpcExternallyRoutablePrefix:getSubnetsV2SubnetVpcExternallyRoutablePrefix": {
      "properties": {
        "ipv4s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetSubnetsV2SubnetVpcExternallyRoutablePrefixIpv4:getSubnetsV2SubnetVpcExternallyRoutablePrefixIpv4"
          }
        },
        "ipv6s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetSubnetsV2SubnetVpcExternallyRoutablePrefixIpv6:getSubnetsV2SubnetVpcExternallyRoutablePrefixIpv6"
          }
        }
      },
      "type": "object",
      "required": [
        "ipv4s",
        "ipv6s"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getSubnetsV2SubnetVpcExternallyRoutablePrefixIpv4:getSubnetsV2SubnetVpcExternallyRoutablePrefixIpv4": {
      "properties": {
        "ips": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetSubnetsV2SubnetVpcExternallyRoutablePrefixIpv4Ip:getSubnetsV2SubnetVpcExternallyRoutablePrefixIpv4Ip"
          }
        },
        "prefixLength": {
          "type": "integer"
        }
      },
      "type": "object",
      "required": [
        "ips",
        "prefixLength"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getSubnetsV2SubnetVpcExternallyRoutablePrefixIpv4Ip:getSubnetsV2SubnetVpcExternallyRoutablePrefixIpv4Ip": {
      "properties": {
        "prefixLength": {
          "type": "integer"
        },
        "value": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "prefixLength",
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getSubnetsV2SubnetVpcExternallyRoutablePrefixIpv6:getSubnetsV2SubnetVpcExternallyRoutablePrefixIpv6": {
      "properties": {
        "ips": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetSubnetsV2SubnetVpcExternallyRoutablePrefixIpv6Ip:getSubnetsV2SubnetVpcExternallyRoutablePrefixIpv6Ip"
          }
        },
        "prefixLength": {
          "type": "integer"
        }
      },
      "type": "object",
      "required": [
        "ips",
        "prefixLength"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getSubnetsV2SubnetVpcExternallyRoutablePrefixIpv6Ip:getSubnetsV2SubnetVpcExternallyRoutablePrefixIpv6Ip": {
      "properties": {
        "prefixLength": {
          "type": "integer"
        },
        "value": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "prefixLength",
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getSubnetsV2SubnetVpcLink:getSubnetsV2SubnetVpcLink": {
      "properties": {
        "href": {
          "type": "string"
        },
        "rel": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "href",
        "rel"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getSubnetsV2SubnetVpcMetadata:getSubnetsV2SubnetVpcMetadata": {
      "properties": {
        "categoryIds": {
          "type": "array",
          "items": {
            "type": "array",
            "items": {
              "$ref": "pulumi.json#/Any"
            }
          }
        },
        "ownerReferenceId": {
          "type": "string"
        },
        "ownerUserName": {
          "type": "string"
        },
        "projectName": {
          "type": "string"
        },
        "projectReferenceId": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "categoryIds",
        "ownerReferenceId",
        "ownerUserName",
        "projectName",
        "projectReferenceId"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getSubnetsV2SubnetVpcSnatIp:getSubnetsV2SubnetVpcSnatIp": {
      "properties": {
        "ipv4s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetSubnetsV2SubnetVpcSnatIpIpv4:getSubnetsV2SubnetVpcSnatIpIpv4"
          }
        },
        "ipv6s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetSubnetsV2SubnetVpcSnatIpIpv6:getSubnetsV2SubnetVpcSnatIpIpv6"
          }
        }
      },
      "type": "object",
      "required": [
        "ipv4s",
        "ipv6s"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getSubnetsV2SubnetVpcSnatIpIpv4:getSubnetsV2SubnetVpcSnatIpIpv4": {
      "properties": {
        "prefixLength": {
          "type": "integer"
        },
        "value": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "prefixLength",
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getSubnetsV2SubnetVpcSnatIpIpv6:getSubnetsV2SubnetVpcSnatIpIpv6": {
      "properties": {
        "prefixLength": {
          "type": "integer"
        },
        "value": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "prefixLength",
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getTemplateV2CreatedBy:getTemplateV2CreatedBy": {
      "properties": {
        "additionalAttributes": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetTemplateV2CreatedByAdditionalAttribute:getTemplateV2CreatedByAdditionalAttribute"
          },
          "description": "Any additional attribute for the User.\n"
        },
        "creationType": {
          "type": "string"
        },
        "description": {
          "type": "string",
          "description": "VM description\n"
        },
        "displayName": {
          "type": "string",
          "description": "Display name for the User.\n"
        },
        "emailId": {
          "type": "string",
          "description": "Email Id for the User.\n"
        },
        "extId": {
          "type": "string",
          "description": "The identifier of a Template.\n"
        },
        "firstName": {
          "type": "string",
          "description": "First name for the User.\n"
        },
        "idpId": {
          "type": "string",
          "description": "Identifier of the IDP for the User.\n"
        },
        "isForceResetPasswordEnabled": {
          "type": "boolean",
          "description": "Flag to force the User to reset password.\n"
        },
        "lastName": {
          "type": "string",
          "description": "Last name for the User.\n"
        },
        "locale": {
          "type": "string",
          "description": "Default locale for the User.\n"
        },
        "middleInitial": {
          "type": "string",
          "description": "Middle name for the User.\n"
        },
        "password": {
          "type": "string"
        },
        "region": {
          "type": "string",
          "description": "Default Region for the User.\n"
        },
        "status": {
          "type": "string",
          "description": "Status of the User.\n"
        },
        "userType": {
          "type": "string",
          "description": "Type of the User.\n"
        },
        "username": {
          "type": "string",
          "description": "Identifier for the User in the form an email address.\n"
        }
      },
      "type": "object",
      "required": [
        "additionalAttributes",
        "creationType",
        "description",
        "displayName",
        "emailId",
        "extId",
        "firstName",
        "idpId",
        "isForceResetPasswordEnabled",
        "lastName",
        "locale",
        "middleInitial",
        "password",
        "region",
        "status",
        "userType",
        "username"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getTemplateV2CreatedByAdditionalAttribute:getTemplateV2CreatedByAdditionalAttribute": {
      "properties": {
        "name": {
          "type": "string",
          "description": "Name of the GPU resource.\n"
        },
        "values": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetTemplateV2CreatedByAdditionalAttributeValue:getTemplateV2CreatedByAdditionalAttributeValue"
          }
        }
      },
      "type": "object",
      "required": [
        "name",
        "values"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getTemplateV2CreatedByAdditionalAttributeValue:getTemplateV2CreatedByAdditionalAttributeValue": {
      "properties": {
        "boolean": {
          "type": "boolean"
        },
        "integer": {
          "type": "integer"
        },
        "integerLists": {
          "type": "array",
          "items": {
            "type": "integer"
          }
        },
        "mapOfStrings": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetTemplateV2CreatedByAdditionalAttributeValueMapOfString:getTemplateV2CreatedByAdditionalAttributeValueMapOfString"
          }
        },
        "object": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          }
        },
        "string": {
          "type": "string"
        },
        "stringLists": {
          "type": "array",
          "items": {
            "type": "string"
          }
        }
      },
      "type": "object",
      "required": [
        "boolean",
        "integer",
        "integerLists",
        "mapOfStrings",
        "object",
        "string",
        "stringLists"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getTemplateV2CreatedByAdditionalAttributeValueMapOfString:getTemplateV2CreatedByAdditionalAttributeValueMapOfString": {
      "properties": {
        "map": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          }
        }
      },
      "type": "object",
      "required": [
        "map"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getTemplateV2GuestUpdateStatus:getTemplateV2GuestUpdateStatus": {
      "properties": {
        "deployedVmReference": {
          "type": "string",
          "description": "The identifier of the temporary VM created on initiating Guest OS Update.\n"
        }
      },
      "type": "object",
      "required": [
        "deployedVmReference"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getTemplateV2Link:getTemplateV2Link": {
      "properties": {
        "href": {
          "type": "string",
          "description": "- The URL at which the entity described by the link can be accessed.\n"
        },
        "rel": {
          "type": "string",
          "description": "- A name that identifies the relationship of the link to the object that is returned by the URL. The unique value of \"self\" identifies the URL for the object.\n"
        }
      },
      "type": "object",
      "required": [
        "href",
        "rel"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getTemplateV2TemplateVersionSpec:getTemplateV2TemplateVersionSpec": {
      "properties": {
        "createTime": {
          "type": "string",
          "description": "VM creation time\n"
        },
        "createdBies": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetTemplateV2TemplateVersionSpecCreatedBy:getTemplateV2TemplateVersionSpecCreatedBy"
          },
          "description": "User or Service who created the User.\n"
        },
        "extId": {
          "type": "string",
          "description": "The identifier of a Template.\n"
        },
        "isActiveVersion": {
          "type": "boolean",
          "description": "Specify whether to mark the Template Version as active or not. The newly created Version during Template Creation, Updating or Guest OS Updating is set to Active by default unless specified otherwise.\n"
        },
        "isGcOverrideEnabled": {
          "type": "boolean",
          "description": "Allow or disallow override of the Guest Customization during Template deployment.\n"
        },
        "links": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetTemplateV2TemplateVersionSpecLink:getTemplateV2TemplateVersionSpecLink"
          },
          "description": "- A HATEOAS style link for the response. Each link contains a user-friendly name identifying the link and an address for retrieving the particular resource.\n"
        },
        "tenantId": {
          "type": "string",
          "description": "A globally unique identifier that represents the tenant that owns this entity. The system automatically assigns it, and it and is immutable from an API consumer perspective (some use cases may cause this Id to change - For instance, a use case may require the transfer of ownership of the entity, but these cases are handled automatically on the server).\n"
        },
        "versionDescription": {
          "type": "string",
          "description": "The user defined description of a Template Version.\n"
        },
        "versionName": {
          "type": "string",
          "description": "The user defined name of a Template Version.\n"
        },
        "vmSpecs": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetTemplateV2TemplateVersionSpecVmSpec:getTemplateV2TemplateVersionSpecVmSpec"
          },
          "description": "VM configuration.\n"
        }
      },
      "type": "object",
      "required": [
        "createTime",
        "createdBies",
        "extId",
        "isActiveVersion",
        "isGcOverrideEnabled",
        "links",
        "tenantId",
        "versionDescription",
        "versionName",
        "vmSpecs"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getTemplateV2TemplateVersionSpecCreatedBy:getTemplateV2TemplateVersionSpecCreatedBy": {
      "properties": {
        "additionalAttributes": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetTemplateV2TemplateVersionSpecCreatedByAdditionalAttribute:getTemplateV2TemplateVersionSpecCreatedByAdditionalAttribute"
          },
          "description": "Any additional attribute for the User.\n"
        },
        "creationType": {
          "type": "string"
        },
        "description": {
          "type": "string",
          "description": "VM description\n"
        },
        "displayName": {
          "type": "string",
          "description": "Display name for the User.\n"
        },
        "emailId": {
          "type": "string",
          "description": "Email Id for the User.\n"
        },
        "extId": {
          "type": "string",
          "description": "The identifier of a Template.\n"
        },
        "firstName": {
          "type": "string",
          "description": "First name for the User.\n"
        },
        "idpId": {
          "type": "string",
          "description": "Identifier of the IDP for the User.\n"
        },
        "isForceResetPasswordEnabled": {
          "type": "boolean",
          "description": "Flag to force the User to reset password.\n"
        },
        "lastName": {
          "type": "string",
          "description": "Last name for the User.\n"
        },
        "locale": {
          "type": "string",
          "description": "Default locale for the User.\n"
        },
        "middleInitial": {
          "type": "string",
          "description": "Middle name for the User.\n"
        },
        "password": {
          "type": "string"
        },
        "region": {
          "type": "string",
          "description": "Default Region for the User.\n"
        },
        "status": {
          "type": "string",
          "description": "Status of the User.\n"
        },
        "userType": {
          "type": "string",
          "description": "Type of the User.\n"
        },
        "username": {
          "type": "string",
          "description": "Identifier for the User in the form an email address.\n"
        }
      },
      "type": "object",
      "required": [
        "additionalAttributes",
        "creationType",
        "description",
        "displayName",
        "emailId",
        "extId",
        "firstName",
        "idpId",
        "isForceResetPasswordEnabled",
        "lastName",
        "locale",
        "middleInitial",
        "password",
        "region",
        "status",
        "userType",
        "username"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getTemplateV2TemplateVersionSpecCreatedByAdditionalAttribute:getTemplateV2TemplateVersionSpecCreatedByAdditionalAttribute": {
      "properties": {
        "name": {
          "type": "string",
          "description": "Name of the GPU resource.\n"
        },
        "values": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetTemplateV2TemplateVersionSpecCreatedByAdditionalAttributeValue:getTemplateV2TemplateVersionSpecCreatedByAdditionalAttributeValue"
          }
        }
      },
      "type": "object",
      "required": [
        "name",
        "values"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getTemplateV2TemplateVersionSpecCreatedByAdditionalAttributeValue:getTemplateV2TemplateVersionSpecCreatedByAdditionalAttributeValue": {
      "properties": {
        "boolean": {
          "type": "boolean"
        },
        "integer": {
          "type": "integer"
        },
        "integerLists": {
          "type": "array",
          "items": {
            "type": "integer"
          }
        },
        "mapOfStrings": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetTemplateV2TemplateVersionSpecCreatedByAdditionalAttributeValueMapOfString:getTemplateV2TemplateVersionSpecCreatedByAdditionalAttributeValueMapOfString"
          }
        },
        "object": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          }
        },
        "string": {
          "type": "string"
        },
        "stringLists": {
          "type": "array",
          "items": {
            "type": "string"
          }
        }
      },
      "type": "object",
      "required": [
        "boolean",
        "integer",
        "integerLists",
        "mapOfStrings",
        "object",
        "string",
        "stringLists"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getTemplateV2TemplateVersionSpecCreatedByAdditionalAttributeValueMapOfString:getTemplateV2TemplateVersionSpecCreatedByAdditionalAttributeValueMapOfString": {
      "properties": {
        "map": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          }
        }
      },
      "type": "object",
      "required": [
        "map"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getTemplateV2TemplateVersionSpecLink:getTemplateV2TemplateVersionSpecLink": {
      "properties": {
        "href": {
          "type": "string",
          "description": "- The URL at which the entity described by the link can be accessed.\n"
        },
        "rel": {
          "type": "string",
          "description": "- A name that identifies the relationship of the link to the object that is returned by the URL. The unique value of \"self\" identifies the URL for the object.\n"
        }
      },
      "type": "object",
      "required": [
        "href",
        "rel"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getTemplateV2TemplateVersionSpecVmSpec:getTemplateV2TemplateVersionSpecVmSpec": {
      "properties": {
        "apcConfigs": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetTemplateV2TemplateVersionSpecVmSpecApcConfig:getTemplateV2TemplateVersionSpecVmSpecApcConfig"
          },
          "description": "Advanced Processor Compatibility configuration for the VM. Enabling this retains the CPU model for the VM across power cycles and migrations.\n"
        },
        "availabilityZones": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetTemplateV2TemplateVersionSpecVmSpecAvailabilityZone:getTemplateV2TemplateVersionSpecVmSpecAvailabilityZone"
          }
        },
        "biosUuid": {
          "type": "string",
          "description": "BIOS UUID of the VM. It should be of type UUID.\n"
        },
        "bootConfigs": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetTemplateV2TemplateVersionSpecVmSpecBootConfig:getTemplateV2TemplateVersionSpecVmSpecBootConfig"
          },
          "description": "Indicates the order of device types in which the VM should try to boot from. If the boot device order is not provided the system will decide an appropriate boot device order.\n"
        },
        "categories": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetTemplateV2TemplateVersionSpecVmSpecCategory:getTemplateV2TemplateVersionSpecVmSpecCategory"
          },
          "description": "Categories for the VM.\n"
        },
        "cdRoms": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetTemplateV2TemplateVersionSpecVmSpecCdRom:getTemplateV2TemplateVersionSpecVmSpecCdRom"
          },
          "description": "CD-ROMs attached to the VM.\n"
        },
        "clusters": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetTemplateV2TemplateVersionSpecVmSpecCluster:getTemplateV2TemplateVersionSpecVmSpecCluster"
          },
          "description": "Reference to a cluster.\n"
        },
        "createTime": {
          "type": "string",
          "description": "VM creation time\n"
        },
        "description": {
          "type": "string",
          "description": "VM description\n"
        },
        "disks": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetTemplateV2TemplateVersionSpecVmSpecDisk:getTemplateV2TemplateVersionSpecVmSpecDisk"
          },
          "description": "Disks attached to the VM.\n"
        },
        "enabledCpuFeatures": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "The list of additional CPU features to be enabled. HardwareVirtualization: Indicates whether hardware assisted virtualization should be enabled for the Guest OS or not. Once enabled, the Guest OS can deploy a nested hypervisor\n"
        },
        "extId": {
          "type": "string",
          "description": "The identifier of a Template.\n"
        },
        "generationUuid": {
          "type": "string",
          "description": "Generation UUID of the VM. It should be of type UUID.\n"
        },
        "gpuses": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetTemplateV2TemplateVersionSpecVmSpecGpus:getTemplateV2TemplateVersionSpecVmSpecGpus"
          },
          "description": "GPUs attached to the VM.\n"
        },
        "guestCustomizations": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetTemplateV2TemplateVersionSpecVmSpecGuestCustomization:getTemplateV2TemplateVersionSpecVmSpecGuestCustomization"
          },
          "description": "Stage a Sysprep or cloud-init configuration file to be used by the guest for the next boot. Note that the Sysprep command must be used to generalize the Windows VMs before triggering this API call.\n"
        },
        "guestTools": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetTemplateV2TemplateVersionSpecVmSpecGuestTool:getTemplateV2TemplateVersionSpecVmSpecGuestTool"
          },
          "description": "The details about Nutanix Guest Tools for a VM.\n"
        },
        "hardwareClockTimezone": {
          "type": "string",
          "description": "VM hardware clock timezone in IANA TZDB format (America/Los_Angeles).\n"
        },
        "hosts": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetTemplateV2TemplateVersionSpecVmSpecHost:getTemplateV2TemplateVersionSpecVmSpecHost"
          },
          "description": "Reference to the host, the VM is running on.\n"
        },
        "isAgentVm": {
          "type": "boolean",
          "description": "Indicates whether the VM is an agent VM or not. When their host enters maintenance mode, once the normal VMs are evacuated, the agent VMs are powered off. When the host is restored, agent VMs are powered on before the normal VMs are restored. In other words, agent VMs cannot be HA-protected or live migrated.\n"
        },
        "isBrandingEnabled": {
          "type": "boolean",
          "description": "Indicates whether to remove AHV branding from VM firmware tables or not.\n"
        },
        "isCpuHotplugEnabled": {
          "type": "boolean"
        },
        "isCpuPassthroughEnabled": {
          "type": "boolean",
          "description": "Indicates whether to passthrough the host CPU features to the guest or not. Enabling this will make VM incapable of live migration.\n"
        },
        "isCrossClusterMigrationInProgress": {
          "type": "boolean"
        },
        "isGpuConsoleEnabled": {
          "type": "boolean",
          "description": "Indicates whether the vGPU console is enabled or not.\n"
        },
        "isLiveMigrateCapable": {
          "type": "boolean"
        },
        "isMemoryOvercommitEnabled": {
          "type": "boolean",
          "description": "Indicates whether the memory overcommit feature should be enabled for the VM or not. If enabled, parts of the VM memory may reside outside of the hypervisor physical memory. Once enabled, it should be expected that the VM may suffer performance degradation.\n"
        },
        "isScsiControllerEnabled": {
          "type": "boolean"
        },
        "isVcpuHardPinningEnabled": {
          "type": "boolean",
          "description": "Indicates whether the vCPUs should be hard pinned to specific pCPUs or not.\n"
        },
        "isVgaConsoleEnabled": {
          "type": "boolean",
          "description": "Indicates whether the VGA console should be disabled or not.\n"
        },
        "links": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetTemplateV2TemplateVersionSpecVmSpecLink:getTemplateV2TemplateVersionSpecVmSpecLink"
          },
          "description": "- A HATEOAS style link for the response. Each link contains a user-friendly name identifying the link and an address for retrieving the particular resource.\n"
        },
        "machineType": {
          "type": "string",
          "description": "Machine type for the VM. Machine type Q35 is required for secure boot and does not support IDE disks.\n"
        },
        "memorySizeBytes": {
          "type": "integer",
          "description": "Memory size in bytes.\n"
        },
        "name": {
          "type": "string",
          "description": "Name of the GPU resource.\n"
        },
        "nics": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetTemplateV2TemplateVersionSpecVmSpecNic:getTemplateV2TemplateVersionSpecVmSpecNic"
          },
          "description": "NICs attached to the VM.\n"
        },
        "numCoresPerSocket": {
          "type": "integer",
          "description": "Number of cores per socket.\n"
        },
        "numNumaNodes": {
          "type": "integer",
          "description": "Number of NUMA nodes. 0 means NUMA is disabled.\n"
        },
        "numSockets": {
          "type": "integer",
          "description": "Number of vCPU sockets.\n"
        },
        "numThreadsPerCore": {
          "type": "integer",
          "description": "Number of threads per core\n"
        },
        "ownershipInfos": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetTemplateV2TemplateVersionSpecVmSpecOwnershipInfo:getTemplateV2TemplateVersionSpecVmSpecOwnershipInfo"
          },
          "description": "Ownership information for the VM.\n"
        },
        "pciDevices": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetTemplateV2TemplateVersionSpecVmSpecPciDevice:getTemplateV2TemplateVersionSpecVmSpecPciDevice"
          }
        },
        "powerState": {
          "type": "string"
        },
        "protectionPolicyStates": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetTemplateV2TemplateVersionSpecVmSpecProtectionPolicyState:getTemplateV2TemplateVersionSpecVmSpecProtectionPolicyState"
          },
          "description": "Status of protection policy applied to this VM.\n"
        },
        "protectionType": {
          "type": "string",
          "description": "The type of protection applied on a VM. PD_PROTECTED indicates a VM is protected using the Prism Element. RULE_PROTECTED indicates a VM protection using the Prism Central.\n"
        },
        "serialPorts": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetTemplateV2TemplateVersionSpecVmSpecSerialPort:getTemplateV2TemplateVersionSpecVmSpecSerialPort"
          },
          "description": "Serial ports configured on the VM.\n"
        },
        "sources": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetTemplateV2TemplateVersionSpecVmSpecSource:getTemplateV2TemplateVersionSpecVmSpecSource"
          },
          "description": "Reference to an entity that the VM should be cloned or created from\n"
        },
        "storageConfigs": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetTemplateV2TemplateVersionSpecVmSpecStorageConfig:getTemplateV2TemplateVersionSpecVmSpecStorageConfig"
          },
          "description": "Storage configuration for VM disks\n"
        },
        "tenantId": {
          "type": "string",
          "description": "A globally unique identifier that represents the tenant that owns this entity. The system automatically assigns it, and it and is immutable from an API consumer perspective (some use cases may cause this Id to change - For instance, a use case may require the transfer of ownership of the entity, but these cases are handled automatically on the server).\n"
        },
        "updateTime": {
          "type": "string",
          "description": "VM last updated time.\n"
        },
        "vtpmConfigs": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetTemplateV2TemplateVersionSpecVmSpecVtpmConfig:getTemplateV2TemplateVersionSpecVmSpecVtpmConfig"
          },
          "description": "Indicates how the vTPM for the VM should be configured.\n"
        }
      },
      "type": "object",
      "required": [
        "apcConfigs",
        "availabilityZones",
        "biosUuid",
        "bootConfigs",
        "categories",
        "cdRoms",
        "clusters",
        "createTime",
        "description",
        "disks",
        "enabledCpuFeatures",
        "extId",
        "generationUuid",
        "gpuses",
        "guestCustomizations",
        "guestTools",
        "hardwareClockTimezone",
        "hosts",
        "isAgentVm",
        "isBrandingEnabled",
        "isCpuHotplugEnabled",
        "isCpuPassthroughEnabled",
        "isCrossClusterMigrationInProgress",
        "isGpuConsoleEnabled",
        "isLiveMigrateCapable",
        "isMemoryOvercommitEnabled",
        "isScsiControllerEnabled",
        "isVcpuHardPinningEnabled",
        "isVgaConsoleEnabled",
        "links",
        "machineType",
        "memorySizeBytes",
        "name",
        "nics",
        "numCoresPerSocket",
        "numNumaNodes",
        "numSockets",
        "numThreadsPerCore",
        "ownershipInfos",
        "pciDevices",
        "powerState",
        "protectionPolicyStates",
        "protectionType",
        "serialPorts",
        "sources",
        "storageConfigs",
        "tenantId",
        "updateTime",
        "vtpmConfigs"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getTemplateV2TemplateVersionSpecVmSpecApcConfig:getTemplateV2TemplateVersionSpecVmSpecApcConfig": {
      "properties": {
        "cpuModels": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetTemplateV2TemplateVersionSpecVmSpecApcConfigCpuModel:getTemplateV2TemplateVersionSpecVmSpecApcConfigCpuModel"
          },
          "description": "CPU model associated with the VM if Advanced Processor Compatibility(APC) is enabled. If APC is enabled and no CPU model is explicitly set, a default baseline CPU model is picked by the system. See the APC documentation for more information\n"
        },
        "isApcEnabled": {
          "type": "boolean",
          "description": "If enabled, the selected CPU model will be retained across live and cold migrations of the VM.\n"
        }
      },
      "type": "object",
      "required": [
        "cpuModels",
        "isApcEnabled"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getTemplateV2TemplateVersionSpecVmSpecApcConfigCpuModel:getTemplateV2TemplateVersionSpecVmSpecApcConfigCpuModel": {
      "properties": {
        "extId": {
          "type": "string",
          "description": "The identifier of a Template.\n"
        },
        "name": {
          "type": "string",
          "description": "Name of the CPU model associated with the VM.\n"
        }
      },
      "type": "object",
      "required": [
        "extId",
        "name"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getTemplateV2TemplateVersionSpecVmSpecAvailabilityZone:getTemplateV2TemplateVersionSpecVmSpecAvailabilityZone": {
      "properties": {
        "extId": {
          "type": "string",
          "description": "The identifier of a Template.\n"
        }
      },
      "type": "object",
      "required": [
        "extId"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getTemplateV2TemplateVersionSpecVmSpecBootConfig:getTemplateV2TemplateVersionSpecVmSpecBootConfig": {
      "properties": {
        "legacyBoots": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetTemplateV2TemplateVersionSpecVmSpecBootConfigLegacyBoot:getTemplateV2TemplateVersionSpecVmSpecBootConfigLegacyBoot"
          },
          "description": "LegacyBoot config Object\n"
        },
        "uefiBoots": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetTemplateV2TemplateVersionSpecVmSpecBootConfigUefiBoot:getTemplateV2TemplateVersionSpecVmSpecBootConfigUefiBoot"
          },
          "description": "UefiBoot config Object\n"
        }
      },
      "type": "object",
      "required": [
        "legacyBoots",
        "uefiBoots"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getTemplateV2TemplateVersionSpecVmSpecBootConfigLegacyBoot:getTemplateV2TemplateVersionSpecVmSpecBootConfigLegacyBoot": {
      "properties": {
        "bootDevices": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetTemplateV2TemplateVersionSpecVmSpecBootConfigLegacyBootBootDevice:getTemplateV2TemplateVersionSpecVmSpecBootConfigLegacyBootBootDevice"
          },
          "description": "Boot Device object\n"
        },
        "bootOrders": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "Indicates the order of device types in which the VM should try to boot from. If the boot device order is not provided the system will decide an appropriate boot device order.\n"
        }
      },
      "type": "object",
      "required": [
        "bootDevices",
        "bootOrders"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getTemplateV2TemplateVersionSpecVmSpecBootConfigLegacyBootBootDevice:getTemplateV2TemplateVersionSpecVmSpecBootConfigLegacyBootBootDevice": {
      "properties": {
        "bootDeviceDisks": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetTemplateV2TemplateVersionSpecVmSpecBootConfigLegacyBootBootDeviceBootDeviceDisk:getTemplateV2TemplateVersionSpecVmSpecBootConfigLegacyBootBootDeviceBootDeviceDisk"
          },
          "description": "Disk address.\n"
        },
        "bootDeviceNics": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetTemplateV2TemplateVersionSpecVmSpecBootConfigLegacyBootBootDeviceBootDeviceNic:getTemplateV2TemplateVersionSpecVmSpecBootConfigLegacyBootBootDeviceBootDeviceNic"
          },
          "description": "Disk Nic address.\n"
        }
      },
      "type": "object",
      "required": [
        "bootDeviceDisks",
        "bootDeviceNics"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getTemplateV2TemplateVersionSpecVmSpecBootConfigLegacyBootBootDeviceBootDeviceDisk:getTemplateV2TemplateVersionSpecVmSpecBootConfigLegacyBootBootDeviceBootDeviceDisk": {
      "properties": {
        "diskAddresses": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetTemplateV2TemplateVersionSpecVmSpecBootConfigLegacyBootBootDeviceBootDeviceDiskDiskAddress:getTemplateV2TemplateVersionSpecVmSpecBootConfigLegacyBootBootDeviceBootDeviceDiskDiskAddress"
          },
          "description": "Virtual Machine disk (VM disk).\n"
        }
      },
      "type": "object",
      "required": [
        "diskAddresses"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getTemplateV2TemplateVersionSpecVmSpecBootConfigLegacyBootBootDeviceBootDeviceDiskDiskAddress:getTemplateV2TemplateVersionSpecVmSpecBootConfigLegacyBootBootDeviceBootDeviceDiskDiskAddress": {
      "properties": {
        "busType": {
          "type": "string",
          "description": "Bus type for the device\n"
        },
        "index": {
          "type": "integer",
          "description": "Device index on the bus. This field is ignored unless the bus details are specified.\n"
        }
      },
      "type": "object",
      "required": [
        "busType",
        "index"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getTemplateV2TemplateVersionSpecVmSpecBootConfigLegacyBootBootDeviceBootDeviceNic:getTemplateV2TemplateVersionSpecVmSpecBootConfigLegacyBootBootDeviceBootDeviceNic": {
      "properties": {
        "macAddress": {
          "type": "string",
          "description": "mac address\n"
        }
      },
      "type": "object",
      "required": [
        "macAddress"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getTemplateV2TemplateVersionSpecVmSpecBootConfigUefiBoot:getTemplateV2TemplateVersionSpecVmSpecBootConfigUefiBoot": {
      "properties": {
        "bootDevices": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetTemplateV2TemplateVersionSpecVmSpecBootConfigUefiBootBootDevice:getTemplateV2TemplateVersionSpecVmSpecBootConfigUefiBootBootDevice"
          },
          "description": "Boot Device object\n"
        },
        "bootOrders": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "Indicates the order of device types in which the VM should try to boot from. If the boot device order is not provided the system will decide an appropriate boot device order.\n"
        },
        "isSecureBootEnabled": {
          "type": "boolean",
          "description": "Indicate whether to enable secure boot or not\n"
        },
        "nvramDevices": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetTemplateV2TemplateVersionSpecVmSpecBootConfigUefiBootNvramDevice:getTemplateV2TemplateVersionSpecVmSpecBootConfigUefiBootNvramDevice"
          },
          "description": "Configuration for NVRAM to be presented to the VM.\n"
        }
      },
      "type": "object",
      "required": [
        "bootDevices",
        "bootOrders",
        "isSecureBootEnabled",
        "nvramDevices"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getTemplateV2TemplateVersionSpecVmSpecBootConfigUefiBootBootDevice:getTemplateV2TemplateVersionSpecVmSpecBootConfigUefiBootBootDevice": {
      "properties": {
        "bootDeviceDisks": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetTemplateV2TemplateVersionSpecVmSpecBootConfigUefiBootBootDeviceBootDeviceDisk:getTemplateV2TemplateVersionSpecVmSpecBootConfigUefiBootBootDeviceBootDeviceDisk"
          },
          "description": "Disk address.\n"
        },
        "bootDeviceNics": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetTemplateV2TemplateVersionSpecVmSpecBootConfigUefiBootBootDeviceBootDeviceNic:getTemplateV2TemplateVersionSpecVmSpecBootConfigUefiBootBootDeviceBootDeviceNic"
          },
          "description": "Disk Nic address.\n"
        }
      },
      "type": "object",
      "required": [
        "bootDeviceDisks",
        "bootDeviceNics"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getTemplateV2TemplateVersionSpecVmSpecBootConfigUefiBootBootDeviceBootDeviceDisk:getTemplateV2TemplateVersionSpecVmSpecBootConfigUefiBootBootDeviceBootDeviceDisk": {
      "properties": {
        "diskAddresses": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetTemplateV2TemplateVersionSpecVmSpecBootConfigUefiBootBootDeviceBootDeviceDiskDiskAddress:getTemplateV2TemplateVersionSpecVmSpecBootConfigUefiBootBootDeviceBootDeviceDiskDiskAddress"
          },
          "description": "Virtual Machine disk (VM disk).\n"
        }
      },
      "type": "object",
      "required": [
        "diskAddresses"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getTemplateV2TemplateVersionSpecVmSpecBootConfigUefiBootBootDeviceBootDeviceDiskDiskAddress:getTemplateV2TemplateVersionSpecVmSpecBootConfigUefiBootBootDeviceBootDeviceDiskDiskAddress": {
      "properties": {
        "busType": {
          "type": "string",
          "description": "Bus type for the device\n"
        },
        "index": {
          "type": "integer",
          "description": "Device index on the bus. This field is ignored unless the bus details are specified.\n"
        }
      },
      "type": "object",
      "required": [
        "busType",
        "index"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getTemplateV2TemplateVersionSpecVmSpecBootConfigUefiBootBootDeviceBootDeviceNic:getTemplateV2TemplateVersionSpecVmSpecBootConfigUefiBootBootDeviceBootDeviceNic": {
      "properties": {
        "macAddress": {
          "type": "string",
          "description": "mac address\n"
        }
      },
      "type": "object",
      "required": [
        "macAddress"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getTemplateV2TemplateVersionSpecVmSpecBootConfigUefiBootNvramDevice:getTemplateV2TemplateVersionSpecVmSpecBootConfigUefiBootNvramDevice": {
      "properties": {
        "backingStorageInfos": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetTemplateV2TemplateVersionSpecVmSpecBootConfigUefiBootNvramDeviceBackingStorageInfo:getTemplateV2TemplateVersionSpecVmSpecBootConfigUefiBootNvramDeviceBackingStorageInfo"
          },
          "description": "Storage provided by Nutanix ADSF\n"
        }
      },
      "type": "object",
      "required": [
        "backingStorageInfos"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getTemplateV2TemplateVersionSpecVmSpecBootConfigUefiBootNvramDeviceBackingStorageInfo:getTemplateV2TemplateVersionSpecVmSpecBootConfigUefiBootNvramDeviceBackingStorageInfo": {
      "properties": {
        "dataSources": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetTemplateV2TemplateVersionSpecVmSpecBootConfigUefiBootNvramDeviceBackingStorageInfoDataSource:getTemplateV2TemplateVersionSpecVmSpecBootConfigUefiBootNvramDeviceBackingStorageInfoDataSource"
          },
          "description": "A reference to a disk or image that contains the contents of a disk.\n"
        },
        "diskExtId": {
          "type": "string",
          "description": "The globally unique identifier of a VM disk. It should be of type UUID.\n"
        },
        "diskSizeBytes": {
          "type": "integer",
          "description": "Size of the disk in Bytes\n"
        },
        "isMigrationInProgress": {
          "type": "boolean",
          "description": "Indicates if the disk is undergoing migration to another container.\n"
        },
        "storageConfigs": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetTemplateV2TemplateVersionSpecVmSpecBootConfigUefiBootNvramDeviceBackingStorageInfoStorageConfig:getTemplateV2TemplateVersionSpecVmSpecBootConfigUefiBootNvramDeviceBackingStorageInfoStorageConfig"
          },
          "description": "Storage configuration for VM disks\n"
        },
        "storageContainers": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetTemplateV2TemplateVersionSpecVmSpecBootConfigUefiBootNvramDeviceBackingStorageInfoStorageContainer:getTemplateV2TemplateVersionSpecVmSpecBootConfigUefiBootNvramDeviceBackingStorageInfoStorageContainer"
          },
          "description": "This reference is for disk level storage container preference. This preference specifies the storage container to which this disk belongs.\n"
        }
      },
      "type": "object",
      "required": [
        "dataSources",
        "diskExtId",
        "diskSizeBytes",
        "isMigrationInProgress",
        "storageConfigs",
        "storageContainers"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getTemplateV2TemplateVersionSpecVmSpecBootConfigUefiBootNvramDeviceBackingStorageInfoDataSource:getTemplateV2TemplateVersionSpecVmSpecBootConfigUefiBootNvramDeviceBackingStorageInfoDataSource": {
      "properties": {
        "references": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetTemplateV2TemplateVersionSpecVmSpecBootConfigUefiBootNvramDeviceBackingStorageInfoDataSourceReference:getTemplateV2TemplateVersionSpecVmSpecBootConfigUefiBootNvramDeviceBackingStorageInfoDataSourceReference"
          },
          "description": "Reference to image or vm disk\n"
        }
      },
      "type": "object",
      "required": [
        "references"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getTemplateV2TemplateVersionSpecVmSpecBootConfigUefiBootNvramDeviceBackingStorageInfoDataSourceReference:getTemplateV2TemplateVersionSpecVmSpecBootConfigUefiBootNvramDeviceBackingStorageInfoDataSourceReference": {
      "properties": {
        "imageReferences": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetTemplateV2TemplateVersionSpecVmSpecBootConfigUefiBootNvramDeviceBackingStorageInfoDataSourceReferenceImageReference:getTemplateV2TemplateVersionSpecVmSpecBootConfigUefiBootNvramDeviceBackingStorageInfoDataSourceReferenceImageReference"
          },
          "description": "Image Reference\n"
        },
        "vmDiskReferences": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetTemplateV2TemplateVersionSpecVmSpecBootConfigUefiBootNvramDeviceBackingStorageInfoDataSourceReferenceVmDiskReference:getTemplateV2TemplateVersionSpecVmSpecBootConfigUefiBootNvramDeviceBackingStorageInfoDataSourceReferenceVmDiskReference"
          },
          "description": "Vm Disk Reference\n"
        }
      },
      "type": "object",
      "required": [
        "imageReferences",
        "vmDiskReferences"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getTemplateV2TemplateVersionSpecVmSpecBootConfigUefiBootNvramDeviceBackingStorageInfoDataSourceReferenceImageReference:getTemplateV2TemplateVersionSpecVmSpecBootConfigUefiBootNvramDeviceBackingStorageInfoDataSourceReferenceImageReference": {
      "properties": {
        "imageExtId": {
          "type": "string",
          "description": "The globally unique identifier of an image. It should be of type UUID.\n"
        }
      },
      "type": "object",
      "required": [
        "imageExtId"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getTemplateV2TemplateVersionSpecVmSpecBootConfigUefiBootNvramDeviceBackingStorageInfoDataSourceReferenceVmDiskReference:getTemplateV2TemplateVersionSpecVmSpecBootConfigUefiBootNvramDeviceBackingStorageInfoDataSourceReferenceVmDiskReference": {
      "properties": {
        "diskAddresses": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetTemplateV2TemplateVersionSpecVmSpecBootConfigUefiBootNvramDeviceBackingStorageInfoDataSourceReferenceVmDiskReferenceDiskAddress:getTemplateV2TemplateVersionSpecVmSpecBootConfigUefiBootNvramDeviceBackingStorageInfoDataSourceReferenceVmDiskReferenceDiskAddress"
          },
          "description": "Disk address.\n"
        },
        "diskExtId": {
          "type": "string",
          "description": "The globally unique identifier of a VM disk. It should be of type UUID.\n"
        },
        "vmReferences": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetTemplateV2TemplateVersionSpecVmSpecBootConfigUefiBootNvramDeviceBackingStorageInfoDataSourceReferenceVmDiskReferenceVmReference:getTemplateV2TemplateVersionSpecVmSpecBootConfigUefiBootNvramDeviceBackingStorageInfoDataSourceReferenceVmDiskReferenceVmReference"
          },
          "description": "This is a reference to a VM.\n"
        }
      },
      "type": "object",
      "required": [
        "diskAddresses",
        "diskExtId",
        "vmReferences"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getTemplateV2TemplateVersionSpecVmSpecBootConfigUefiBootNvramDeviceBackingStorageInfoDataSourceReferenceVmDiskReferenceDiskAddress:getTemplateV2TemplateVersionSpecVmSpecBootConfigUefiBootNvramDeviceBackingStorageInfoDataSourceReferenceVmDiskReferenceDiskAddress": {
      "properties": {
        "busType": {
          "type": "string",
          "description": "Bus type for the device. The acceptable values are: SCSI, IDE, PCI, SATA, SPAPR (only PPC).\n"
        },
        "index": {
          "type": "integer",
          "description": "Device index on the bus. This field is ignored unless the bus details are specified.\n"
        }
      },
      "type": "object",
      "required": [
        "busType",
        "index"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getTemplateV2TemplateVersionSpecVmSpecBootConfigUefiBootNvramDeviceBackingStorageInfoDataSourceReferenceVmDiskReferenceVmReference:getTemplateV2TemplateVersionSpecVmSpecBootConfigUefiBootNvramDeviceBackingStorageInfoDataSourceReferenceVmDiskReferenceVmReference": {
      "properties": {
        "extId": {
          "type": "string",
          "description": "The identifier of a Template.\n"
        }
      },
      "type": "object",
      "required": [
        "extId"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getTemplateV2TemplateVersionSpecVmSpecBootConfigUefiBootNvramDeviceBackingStorageInfoStorageConfig:getTemplateV2TemplateVersionSpecVmSpecBootConfigUefiBootNvramDeviceBackingStorageInfoStorageConfig": {
      "properties": {
        "isFlashModeEnabled": {
          "type": "boolean",
          "description": "Indicates whether the virtual disk is pinned to the hot tier or not.\n"
        }
      },
      "type": "object",
      "required": [
        "isFlashModeEnabled"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getTemplateV2TemplateVersionSpecVmSpecBootConfigUefiBootNvramDeviceBackingStorageInfoStorageContainer:getTemplateV2TemplateVersionSpecVmSpecBootConfigUefiBootNvramDeviceBackingStorageInfoStorageContainer": {
      "properties": {
        "extId": {
          "type": "string",
          "description": "The identifier of a Template.\n"
        }
      },
      "type": "object",
      "required": [
        "extId"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getTemplateV2TemplateVersionSpecVmSpecCategory:getTemplateV2TemplateVersionSpecVmSpecCategory": {
      "properties": {
        "extId": {
          "type": "string",
          "description": "The identifier of a Template.\n"
        }
      },
      "type": "object",
      "required": [
        "extId"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getTemplateV2TemplateVersionSpecVmSpecCdRom:getTemplateV2TemplateVersionSpecVmSpecCdRom": {
      "properties": {
        "backingInfos": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetTemplateV2TemplateVersionSpecVmSpecCdRomBackingInfo:getTemplateV2TemplateVersionSpecVmSpecCdRomBackingInfo"
          },
          "description": "Defines a NIC emulated by the hypervisor\n"
        },
        "diskAddresses": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetTemplateV2TemplateVersionSpecVmSpecCdRomDiskAddress:getTemplateV2TemplateVersionSpecVmSpecCdRomDiskAddress"
          },
          "description": "Virtual Machine disk (VM disk).\n"
        },
        "extId": {
          "type": "string",
          "description": "The identifier of a Template.\n"
        },
        "isoType": {
          "type": "string",
          "description": "Type of ISO image inserted in CD-ROM\n"
        },
        "links": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetTemplateV2TemplateVersionSpecVmSpecCdRomLink:getTemplateV2TemplateVersionSpecVmSpecCdRomLink"
          },
          "description": "- A HATEOAS style link for the response. Each link contains a user-friendly name identifying the link and an address for retrieving the particular resource.\n"
        },
        "tenantId": {
          "type": "string",
          "description": "A globally unique identifier that represents the tenant that owns this entity. The system automatically assigns it, and it and is immutable from an API consumer perspective (some use cases may cause this Id to change - For instance, a use case may require the transfer of ownership of the entity, but these cases are handled automatically on the server).\n"
        }
      },
      "type": "object",
      "required": [
        "backingInfos",
        "diskAddresses",
        "extId",
        "isoType",
        "links",
        "tenantId"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getTemplateV2TemplateVersionSpecVmSpecCdRomBackingInfo:getTemplateV2TemplateVersionSpecVmSpecCdRomBackingInfo": {
      "properties": {
        "dataSources": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetTemplateV2TemplateVersionSpecVmSpecCdRomBackingInfoDataSource:getTemplateV2TemplateVersionSpecVmSpecCdRomBackingInfoDataSource"
          },
          "description": "A reference to a disk or image that contains the contents of a disk.\n"
        },
        "diskExtId": {
          "type": "string",
          "description": "The globally unique identifier of a VM disk. It should be of type UUID.\n"
        },
        "diskSizeBytes": {
          "type": "integer",
          "description": "Size of the disk in Bytes\n"
        },
        "isMigrationInProgress": {
          "type": "boolean",
          "description": "Indicates if the disk is undergoing migration to another container.\n"
        },
        "storageConfigs": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetTemplateV2TemplateVersionSpecVmSpecCdRomBackingInfoStorageConfig:getTemplateV2TemplateVersionSpecVmSpecCdRomBackingInfoStorageConfig"
          },
          "description": "Storage configuration for VM disks\n"
        },
        "storageContainers": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetTemplateV2TemplateVersionSpecVmSpecCdRomBackingInfoStorageContainer:getTemplateV2TemplateVersionSpecVmSpecCdRomBackingInfoStorageContainer"
          },
          "description": "This reference is for disk level storage container preference. This preference specifies the storage container to which this disk belongs.\n"
        }
      },
      "type": "object",
      "required": [
        "dataSources",
        "diskExtId",
        "diskSizeBytes",
        "isMigrationInProgress",
        "storageConfigs",
        "storageContainers"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getTemplateV2TemplateVersionSpecVmSpecCdRomBackingInfoDataSource:getTemplateV2TemplateVersionSpecVmSpecCdRomBackingInfoDataSource": {
      "properties": {
        "references": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetTemplateV2TemplateVersionSpecVmSpecCdRomBackingInfoDataSourceReference:getTemplateV2TemplateVersionSpecVmSpecCdRomBackingInfoDataSourceReference"
          },
          "description": "Reference to image or vm disk\n"
        }
      },
      "type": "object",
      "required": [
        "references"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getTemplateV2TemplateVersionSpecVmSpecCdRomBackingInfoDataSourceReference:getTemplateV2TemplateVersionSpecVmSpecCdRomBackingInfoDataSourceReference": {
      "properties": {
        "imageReferences": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetTemplateV2TemplateVersionSpecVmSpecCdRomBackingInfoDataSourceReferenceImageReference:getTemplateV2TemplateVersionSpecVmSpecCdRomBackingInfoDataSourceReferenceImageReference"
          },
          "description": "Image Reference\n"
        },
        "vmDiskReferences": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetTemplateV2TemplateVersionSpecVmSpecCdRomBackingInfoDataSourceReferenceVmDiskReference:getTemplateV2TemplateVersionSpecVmSpecCdRomBackingInfoDataSourceReferenceVmDiskReference"
          },
          "description": "Vm Disk Reference\n"
        }
      },
      "type": "object",
      "required": [
        "imageReferences",
        "vmDiskReferences"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getTemplateV2TemplateVersionSpecVmSpecCdRomBackingInfoDataSourceReferenceImageReference:getTemplateV2TemplateVersionSpecVmSpecCdRomBackingInfoDataSourceReferenceImageReference": {
      "properties": {
        "imageExtId": {
          "type": "string",
          "description": "The globally unique identifier of an image. It should be of type UUID.\n"
        }
      },
      "type": "object",
      "required": [
        "imageExtId"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getTemplateV2TemplateVersionSpecVmSpecCdRomBackingInfoDataSourceReferenceVmDiskReference:getTemplateV2TemplateVersionSpecVmSpecCdRomBackingInfoDataSourceReferenceVmDiskReference": {
      "properties": {
        "diskAddresses": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetTemplateV2TemplateVersionSpecVmSpecCdRomBackingInfoDataSourceReferenceVmDiskReferenceDiskAddress:getTemplateV2TemplateVersionSpecVmSpecCdRomBackingInfoDataSourceReferenceVmDiskReferenceDiskAddress"
          },
          "description": "Disk address.\n"
        },
        "diskExtId": {
          "type": "string",
          "description": "The globally unique identifier of a VM disk. It should be of type UUID.\n"
        },
        "vmReferences": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetTemplateV2TemplateVersionSpecVmSpecCdRomBackingInfoDataSourceReferenceVmDiskReferenceVmReference:getTemplateV2TemplateVersionSpecVmSpecCdRomBackingInfoDataSourceReferenceVmDiskReferenceVmReference"
          },
          "description": "This is a reference to a VM.\n"
        }
      },
      "type": "object",
      "required": [
        "diskAddresses",
        "diskExtId",
        "vmReferences"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getTemplateV2TemplateVersionSpecVmSpecCdRomBackingInfoDataSourceReferenceVmDiskReferenceDiskAddress:getTemplateV2TemplateVersionSpecVmSpecCdRomBackingInfoDataSourceReferenceVmDiskReferenceDiskAddress": {
      "properties": {
        "busType": {
          "type": "string",
          "description": "Bus type for the device. The acceptable values are: SCSI, IDE, PCI, SATA, SPAPR (only PPC).\n"
        },
        "index": {
          "type": "integer",
          "description": "Device index on the bus. This field is ignored unless the bus details are specified.\n"
        }
      },
      "type": "object",
      "required": [
        "busType",
        "index"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getTemplateV2TemplateVersionSpecVmSpecCdRomBackingInfoDataSourceReferenceVmDiskReferenceVmReference:getTemplateV2TemplateVersionSpecVmSpecCdRomBackingInfoDataSourceReferenceVmDiskReferenceVmReference": {
      "properties": {
        "extId": {
          "type": "string",
          "description": "The identifier of a Template.\n"
        }
      },
      "type": "object",
      "required": [
        "extId"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getTemplateV2TemplateVersionSpecVmSpecCdRomBackingInfoStorageConfig:getTemplateV2TemplateVersionSpecVmSpecCdRomBackingInfoStorageConfig": {
      "properties": {
        "isFlashModeEnabled": {
          "type": "boolean",
          "description": "Indicates whether the virtual disk is pinned to the hot tier or not.\n"
        }
      },
      "type": "object",
      "required": [
        "isFlashModeEnabled"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getTemplateV2TemplateVersionSpecVmSpecCdRomBackingInfoStorageContainer:getTemplateV2TemplateVersionSpecVmSpecCdRomBackingInfoStorageContainer": {
      "properties": {
        "extId": {
          "type": "string",
          "description": "The identifier of a Template.\n"
        }
      },
      "type": "object",
      "required": [
        "extId"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getTemplateV2TemplateVersionSpecVmSpecCdRomDiskAddress:getTemplateV2TemplateVersionSpecVmSpecCdRomDiskAddress": {
      "properties": {
        "busType": {
          "type": "string",
          "description": "Bus type for the device. The acceptable values are: SCSI, IDE, PCI, SATA, SPAPR (only PPC).\n"
        },
        "index": {
          "type": "integer",
          "description": "Device index on the bus. This field is ignored unless the bus details are specified.\n"
        }
      },
      "type": "object",
      "required": [
        "busType",
        "index"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getTemplateV2TemplateVersionSpecVmSpecCdRomLink:getTemplateV2TemplateVersionSpecVmSpecCdRomLink": {
      "properties": {
        "href": {
          "type": "string",
          "description": "- The URL at which the entity described by the link can be accessed.\n"
        },
        "rel": {
          "type": "string",
          "description": "- A name that identifies the relationship of the link to the object that is returned by the URL. The unique value of \"self\" identifies the URL for the object.\n"
        }
      },
      "type": "object",
      "required": [
        "href",
        "rel"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getTemplateV2TemplateVersionSpecVmSpecCluster:getTemplateV2TemplateVersionSpecVmSpecCluster": {
      "properties": {
        "extId": {
          "type": "string",
          "description": "The identifier of a Template.\n"
        }
      },
      "type": "object",
      "required": [
        "extId"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getTemplateV2TemplateVersionSpecVmSpecDisk:getTemplateV2TemplateVersionSpecVmSpecDisk": {
      "properties": {
        "backingInfos": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetTemplateV2TemplateVersionSpecVmSpecDiskBackingInfo:getTemplateV2TemplateVersionSpecVmSpecDiskBackingInfo"
          },
          "description": "Defines a NIC emulated by the hypervisor\n"
        },
        "diskAddresses": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetTemplateV2TemplateVersionSpecVmSpecDiskDiskAddress:getTemplateV2TemplateVersionSpecVmSpecDiskDiskAddress"
          },
          "description": "Virtual Machine disk (VM disk).\n"
        },
        "extId": {
          "type": "string",
          "description": "The identifier of a Template.\n"
        },
        "links": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetTemplateV2TemplateVersionSpecVmSpecDiskLink:getTemplateV2TemplateVersionSpecVmSpecDiskLink"
          },
          "description": "- A HATEOAS style link for the response. Each link contains a user-friendly name identifying the link and an address for retrieving the particular resource.\n"
        },
        "tenantId": {
          "type": "string",
          "description": "A globally unique identifier that represents the tenant that owns this entity. The system automatically assigns it, and it and is immutable from an API consumer perspective (some use cases may cause this Id to change - For instance, a use case may require the transfer of ownership of the entity, but these cases are handled automatically on the server).\n"
        }
      },
      "type": "object",
      "required": [
        "backingInfos",
        "diskAddresses",
        "extId",
        "links",
        "tenantId"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getTemplateV2TemplateVersionSpecVmSpecDiskBackingInfo:getTemplateV2TemplateVersionSpecVmSpecDiskBackingInfo": {
      "properties": {
        "adfsVolumeGroupReferences": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetTemplateV2TemplateVersionSpecVmSpecDiskBackingInfoAdfsVolumeGroupReference:getTemplateV2TemplateVersionSpecVmSpecDiskBackingInfoAdfsVolumeGroupReference"
          },
          "description": "Volume Group Reference\n"
        },
        "vmDisks": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetTemplateV2TemplateVersionSpecVmSpecDiskBackingInfoVmDisk:getTemplateV2TemplateVersionSpecVmSpecDiskBackingInfoVmDisk"
          },
          "description": "backing Info for vmDisk\n"
        }
      },
      "type": "object",
      "required": [
        "adfsVolumeGroupReferences",
        "vmDisks"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getTemplateV2TemplateVersionSpecVmSpecDiskBackingInfoAdfsVolumeGroupReference:getTemplateV2TemplateVersionSpecVmSpecDiskBackingInfoAdfsVolumeGroupReference": {
      "properties": {
        "volumeGroupExtId": {
          "type": "string",
          "description": "The globally unique identifier of an ADSF volume group. It should be of type UUID.\n"
        }
      },
      "type": "object",
      "required": [
        "volumeGroupExtId"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getTemplateV2TemplateVersionSpecVmSpecDiskBackingInfoVmDisk:getTemplateV2TemplateVersionSpecVmSpecDiskBackingInfoVmDisk": {
      "properties": {
        "dataSources": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetTemplateV2TemplateVersionSpecVmSpecDiskBackingInfoVmDiskDataSource:getTemplateV2TemplateVersionSpecVmSpecDiskBackingInfoVmDiskDataSource"
          },
          "description": "A reference to a disk or image that contains the contents of a disk.\n"
        },
        "diskExtId": {
          "type": "string",
          "description": "The globally unique identifier of a VM disk. It should be of type UUID.\n"
        },
        "diskSizeBytes": {
          "type": "integer",
          "description": "Size of the disk in Bytes\n"
        },
        "isMigrationInProgress": {
          "type": "boolean",
          "description": "Indicates if the disk is undergoing migration to another container.\n"
        },
        "storageConfigs": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetTemplateV2TemplateVersionSpecVmSpecDiskBackingInfoVmDiskStorageConfig:getTemplateV2TemplateVersionSpecVmSpecDiskBackingInfoVmDiskStorageConfig"
          },
          "description": "Storage configuration for VM disks\n"
        },
        "storageContainers": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetTemplateV2TemplateVersionSpecVmSpecDiskBackingInfoVmDiskStorageContainer:getTemplateV2TemplateVersionSpecVmSpecDiskBackingInfoVmDiskStorageContainer"
          },
          "description": "This reference is for disk level storage container preference. This preference specifies the storage container to which this disk belongs.\n"
        }
      },
      "type": "object",
      "required": [
        "dataSources",
        "diskExtId",
        "diskSizeBytes",
        "isMigrationInProgress",
        "storageConfigs",
        "storageContainers"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getTemplateV2TemplateVersionSpecVmSpecDiskBackingInfoVmDiskDataSource:getTemplateV2TemplateVersionSpecVmSpecDiskBackingInfoVmDiskDataSource": {
      "properties": {
        "references": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetTemplateV2TemplateVersionSpecVmSpecDiskBackingInfoVmDiskDataSourceReference:getTemplateV2TemplateVersionSpecVmSpecDiskBackingInfoVmDiskDataSourceReference"
          },
          "description": "Reference to image or vm disk\n"
        }
      },
      "type": "object",
      "required": [
        "references"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getTemplateV2TemplateVersionSpecVmSpecDiskBackingInfoVmDiskDataSourceReference:getTemplateV2TemplateVersionSpecVmSpecDiskBackingInfoVmDiskDataSourceReference": {
      "properties": {
        "imageReferences": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetTemplateV2TemplateVersionSpecVmSpecDiskBackingInfoVmDiskDataSourceReferenceImageReference:getTemplateV2TemplateVersionSpecVmSpecDiskBackingInfoVmDiskDataSourceReferenceImageReference"
          },
          "description": "Image Reference\n"
        },
        "vmDiskReferences": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetTemplateV2TemplateVersionSpecVmSpecDiskBackingInfoVmDiskDataSourceReferenceVmDiskReference:getTemplateV2TemplateVersionSpecVmSpecDiskBackingInfoVmDiskDataSourceReferenceVmDiskReference"
          },
          "description": "Vm Disk Reference\n"
        }
      },
      "type": "object",
      "required": [
        "imageReferences",
        "vmDiskReferences"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getTemplateV2TemplateVersionSpecVmSpecDiskBackingInfoVmDiskDataSourceReferenceImageReference:getTemplateV2TemplateVersionSpecVmSpecDiskBackingInfoVmDiskDataSourceReferenceImageReference": {
      "properties": {
        "imageExtId": {
          "type": "string",
          "description": "The globally unique identifier of an image. It should be of type UUID.\n"
        }
      },
      "type": "object",
      "required": [
        "imageExtId"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getTemplateV2TemplateVersionSpecVmSpecDiskBackingInfoVmDiskDataSourceReferenceVmDiskReference:getTemplateV2TemplateVersionSpecVmSpecDiskBackingInfoVmDiskDataSourceReferenceVmDiskReference": {
      "properties": {
        "diskAddresses": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetTemplateV2TemplateVersionSpecVmSpecDiskBackingInfoVmDiskDataSourceReferenceVmDiskReferenceDiskAddress:getTemplateV2TemplateVersionSpecVmSpecDiskBackingInfoVmDiskDataSourceReferenceVmDiskReferenceDiskAddress"
          },
          "description": "Disk address.\n"
        },
        "diskExtId": {
          "type": "string",
          "description": "The globally unique identifier of a VM disk. It should be of type UUID.\n"
        },
        "vmReferences": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetTemplateV2TemplateVersionSpecVmSpecDiskBackingInfoVmDiskDataSourceReferenceVmDiskReferenceVmReference:getTemplateV2TemplateVersionSpecVmSpecDiskBackingInfoVmDiskDataSourceReferenceVmDiskReferenceVmReference"
          },
          "description": "This is a reference to a VM.\n"
        }
      },
      "type": "object",
      "required": [
        "diskAddresses",
        "diskExtId",
        "vmReferences"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getTemplateV2TemplateVersionSpecVmSpecDiskBackingInfoVmDiskDataSourceReferenceVmDiskReferenceDiskAddress:getTemplateV2TemplateVersionSpecVmSpecDiskBackingInfoVmDiskDataSourceReferenceVmDiskReferenceDiskAddress": {
      "properties": {
        "busType": {
          "type": "string",
          "description": "Bus type for the device. The acceptable values are: SCSI, IDE, PCI, SATA, SPAPR (only PPC).\n"
        },
        "index": {
          "type": "integer",
          "description": "Device index on the bus. This field is ignored unless the bus details are specified.\n"
        }
      },
      "type": "object",
      "required": [
        "busType",
        "index"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getTemplateV2TemplateVersionSpecVmSpecDiskBackingInfoVmDiskDataSourceReferenceVmDiskReferenceVmReference:getTemplateV2TemplateVersionSpecVmSpecDiskBackingInfoVmDiskDataSourceReferenceVmDiskReferenceVmReference": {
      "properties": {
        "extId": {
          "type": "string",
          "description": "The identifier of a Template.\n"
        }
      },
      "type": "object",
      "required": [
        "extId"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getTemplateV2TemplateVersionSpecVmSpecDiskBackingInfoVmDiskStorageConfig:getTemplateV2TemplateVersionSpecVmSpecDiskBackingInfoVmDiskStorageConfig": {
      "properties": {
        "isFlashModeEnabled": {
          "type": "boolean",
          "description": "Indicates whether the virtual disk is pinned to the hot tier or not.\n"
        }
      },
      "type": "object",
      "required": [
        "isFlashModeEnabled"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getTemplateV2TemplateVersionSpecVmSpecDiskBackingInfoVmDiskStorageContainer:getTemplateV2TemplateVersionSpecVmSpecDiskBackingInfoVmDiskStorageContainer": {
      "properties": {
        "extId": {
          "type": "string",
          "description": "The identifier of a Template.\n"
        }
      },
      "type": "object",
      "required": [
        "extId"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getTemplateV2TemplateVersionSpecVmSpecDiskDiskAddress:getTemplateV2TemplateVersionSpecVmSpecDiskDiskAddress": {
      "properties": {
        "busType": {
          "type": "string",
          "description": "Bus type for the device. The acceptable values are: SCSI, IDE, PCI, SATA, SPAPR (only PPC).\n"
        },
        "index": {
          "type": "integer",
          "description": "Device index on the bus. This field is ignored unless the bus details are specified.\n"
        }
      },
      "type": "object",
      "required": [
        "busType",
        "index"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getTemplateV2TemplateVersionSpecVmSpecDiskLink:getTemplateV2TemplateVersionSpecVmSpecDiskLink": {
      "properties": {
        "href": {
          "type": "string",
          "description": "- The URL at which the entity described by the link can be accessed.\n"
        },
        "rel": {
          "type": "string",
          "description": "- A name that identifies the relationship of the link to the object that is returned by the URL. The unique value of \"self\" identifies the URL for the object.\n"
        }
      },
      "type": "object",
      "required": [
        "href",
        "rel"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getTemplateV2TemplateVersionSpecVmSpecGpus:getTemplateV2TemplateVersionSpecVmSpecGpus": {
      "properties": {
        "deviceId": {
          "type": "integer",
          "description": "The device Id of the GPU.\n"
        },
        "extId": {
          "type": "string",
          "description": "The identifier of a Template.\n"
        },
        "fraction": {
          "type": "integer",
          "description": "Fraction of the physical GPU assigned.\n"
        },
        "frameBufferSizeBytes": {
          "type": "integer",
          "description": "GPU frame buffer size in bytes.\n"
        },
        "guestDriverVersion": {
          "type": "string",
          "description": "Last determined guest driver version.\n"
        },
        "links": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetTemplateV2TemplateVersionSpecVmSpecGpusLink:getTemplateV2TemplateVersionSpecVmSpecGpusLink"
          },
          "description": "- A HATEOAS style link for the response. Each link contains a user-friendly name identifying the link and an address for retrieving the particular resource.\n"
        },
        "mode": {
          "type": "string",
          "description": "The mode of this GPU.\n"
        },
        "name": {
          "type": "string",
          "description": "Name of the GPU resource.\n"
        },
        "numVirtualDisplayHeads": {
          "type": "integer",
          "description": "Number of supported virtual display heads.\n"
        },
        "pciAddresses": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetTemplateV2TemplateVersionSpecVmSpecGpusPciAddress:getTemplateV2TemplateVersionSpecVmSpecGpusPciAddress"
          },
          "description": "The (S)egment:(B)us:(D)evice.(F)unction hardware address. See\n"
        },
        "tenantId": {
          "type": "string",
          "description": "A globally unique identifier that represents the tenant that owns this entity. The system automatically assigns it, and it and is immutable from an API consumer perspective (some use cases may cause this Id to change - For instance, a use case may require the transfer of ownership of the entity, but these cases are handled automatically on the server).\n"
        },
        "vendor": {
          "type": "string",
          "description": "The vendor of the GPU.\n"
        }
      },
      "type": "object",
      "required": [
        "deviceId",
        "extId",
        "fraction",
        "frameBufferSizeBytes",
        "guestDriverVersion",
        "links",
        "mode",
        "name",
        "numVirtualDisplayHeads",
        "pciAddresses",
        "tenantId",
        "vendor"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getTemplateV2TemplateVersionSpecVmSpecGpusLink:getTemplateV2TemplateVersionSpecVmSpecGpusLink": {
      "properties": {
        "href": {
          "type": "string",
          "description": "- The URL at which the entity described by the link can be accessed.\n"
        },
        "rel": {
          "type": "string",
          "description": "- A name that identifies the relationship of the link to the object that is returned by the URL. The unique value of \"self\" identifies the URL for the object.\n"
        }
      },
      "type": "object",
      "required": [
        "href",
        "rel"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getTemplateV2TemplateVersionSpecVmSpecGpusPciAddress:getTemplateV2TemplateVersionSpecVmSpecGpusPciAddress": {
      "properties": {
        "bus": {
          "type": "integer"
        },
        "device": {
          "type": "integer"
        },
        "func": {
          "type": "integer"
        },
        "segment": {
          "type": "integer"
        }
      },
      "type": "object",
      "required": [
        "bus",
        "device",
        "func",
        "segment"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getTemplateV2TemplateVersionSpecVmSpecGuestCustomization:getTemplateV2TemplateVersionSpecVmSpecGuestCustomization": {
      "properties": {
        "configs": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetTemplateV2TemplateVersionSpecVmSpecGuestCustomizationConfig:getTemplateV2TemplateVersionSpecVmSpecGuestCustomizationConfig"
          },
          "description": "The Nutanix Guest Tools customization settings.\n"
        }
      },
      "type": "object",
      "required": [
        "configs"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getTemplateV2TemplateVersionSpecVmSpecGuestCustomizationConfig:getTemplateV2TemplateVersionSpecVmSpecGuestCustomizationConfig": {
      "properties": {
        "cloudInits": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetTemplateV2TemplateVersionSpecVmSpecGuestCustomizationConfigCloudInit:getTemplateV2TemplateVersionSpecVmSpecGuestCustomizationConfigCloudInit"
          },
          "description": "CloudInit Config\n"
        },
        "syspreps": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetTemplateV2TemplateVersionSpecVmSpecGuestCustomizationConfigSysprep:getTemplateV2TemplateVersionSpecVmSpecGuestCustomizationConfigSysprep"
          },
          "description": "Sysprep config\n"
        }
      },
      "type": "object",
      "required": [
        "cloudInits",
        "syspreps"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getTemplateV2TemplateVersionSpecVmSpecGuestCustomizationConfigCloudInit:getTemplateV2TemplateVersionSpecVmSpecGuestCustomizationConfigCloudInit": {
      "properties": {
        "cloudInitScripts": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetTemplateV2TemplateVersionSpecVmSpecGuestCustomizationConfigCloudInitCloudInitScript:getTemplateV2TemplateVersionSpecVmSpecGuestCustomizationConfigCloudInitCloudInitScript"
          },
          "description": "The script to use for cloud-init.\n"
        },
        "datasourceType": {
          "type": "string",
          "description": "Type of datasource. Default: CONFIG_DRIVE_V2\n"
        },
        "metadata": {
          "type": "string",
          "description": "The contents of the<span pulumi-lang-nodejs=\" metaData \" pulumi-lang-dotnet=\" MetaData \" pulumi-lang-go=\" metaData \" pulumi-lang-python=\" meta_data \" pulumi-lang-yaml=\" metaData \" pulumi-lang-java=\" metaData \"> meta_data </span>configuration for cloud-init. This can be formatted as YAML or JSON. The value must be base64 encoded.\n"
        }
      },
      "type": "object",
      "required": [
        "cloudInitScripts",
        "datasourceType",
        "metadata"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getTemplateV2TemplateVersionSpecVmSpecGuestCustomizationConfigCloudInitCloudInitScript:getTemplateV2TemplateVersionSpecVmSpecGuestCustomizationConfigCloudInitCloudInitScript": {
      "properties": {
        "customKeyValues": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetTemplateV2TemplateVersionSpecVmSpecGuestCustomizationConfigCloudInitCloudInitScriptCustomKeyValue:getTemplateV2TemplateVersionSpecVmSpecGuestCustomizationConfigCloudInitCloudInitScriptCustomKeyValue"
          }
        },
        "userDatas": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetTemplateV2TemplateVersionSpecVmSpecGuestCustomizationConfigCloudInitCloudInitScriptUserData:getTemplateV2TemplateVersionSpecVmSpecGuestCustomizationConfigCloudInitCloudInitScriptUserData"
          },
          "description": "user data object\n"
        }
      },
      "type": "object",
      "required": [
        "customKeyValues",
        "userDatas"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getTemplateV2TemplateVersionSpecVmSpecGuestCustomizationConfigCloudInitCloudInitScriptCustomKeyValue:getTemplateV2TemplateVersionSpecVmSpecGuestCustomizationConfigCloudInitCloudInitScriptCustomKeyValue": {
      "properties": {
        "keyValuePairs": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetTemplateV2TemplateVersionSpecVmSpecGuestCustomizationConfigCloudInitCloudInitScriptCustomKeyValueKeyValuePair:getTemplateV2TemplateVersionSpecVmSpecGuestCustomizationConfigCloudInitCloudInitScriptCustomKeyValueKeyValuePair"
          }
        }
      },
      "type": "object",
      "required": [
        "keyValuePairs"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getTemplateV2TemplateVersionSpecVmSpecGuestCustomizationConfigCloudInitCloudInitScriptCustomKeyValueKeyValuePair:getTemplateV2TemplateVersionSpecVmSpecGuestCustomizationConfigCloudInitCloudInitScriptCustomKeyValueKeyValuePair": {
      "properties": {
        "name": {
          "type": "string",
          "description": "Name of the GPU resource.\n"
        },
        "values": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetTemplateV2TemplateVersionSpecVmSpecGuestCustomizationConfigCloudInitCloudInitScriptCustomKeyValueKeyValuePairValue:getTemplateV2TemplateVersionSpecVmSpecGuestCustomizationConfigCloudInitCloudInitScriptCustomKeyValueKeyValuePairValue"
          }
        }
      },
      "type": "object",
      "required": [
        "name",
        "values"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getTemplateV2TemplateVersionSpecVmSpecGuestCustomizationConfigCloudInitCloudInitScriptCustomKeyValueKeyValuePairValue:getTemplateV2TemplateVersionSpecVmSpecGuestCustomizationConfigCloudInitCloudInitScriptCustomKeyValueKeyValuePairValue": {
      "properties": {
        "boolean": {
          "type": "boolean"
        },
        "integer": {
          "type": "integer"
        },
        "integerLists": {
          "type": "array",
          "items": {
            "type": "integer"
          }
        },
        "mapOfStrings": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetTemplateV2TemplateVersionSpecVmSpecGuestCustomizationConfigCloudInitCloudInitScriptCustomKeyValueKeyValuePairValueMapOfString:getTemplateV2TemplateVersionSpecVmSpecGuestCustomizationConfigCloudInitCloudInitScriptCustomKeyValueKeyValuePairValueMapOfString"
          }
        },
        "object": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          }
        },
        "string": {
          "type": "string"
        },
        "stringLists": {
          "type": "array",
          "items": {
            "type": "string"
          }
        }
      },
      "type": "object",
      "required": [
        "boolean",
        "integer",
        "integerLists",
        "mapOfStrings",
        "object",
        "string",
        "stringLists"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getTemplateV2TemplateVersionSpecVmSpecGuestCustomizationConfigCloudInitCloudInitScriptCustomKeyValueKeyValuePairValueMapOfString:getTemplateV2TemplateVersionSpecVmSpecGuestCustomizationConfigCloudInitCloudInitScriptCustomKeyValueKeyValuePairValueMapOfString": {
      "properties": {
        "map": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          }
        }
      },
      "type": "object",
      "required": [
        "map"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getTemplateV2TemplateVersionSpecVmSpecGuestCustomizationConfigCloudInitCloudInitScriptUserData:getTemplateV2TemplateVersionSpecVmSpecGuestCustomizationConfigCloudInitCloudInitScriptUserData": {
      "properties": {
        "value": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getTemplateV2TemplateVersionSpecVmSpecGuestCustomizationConfigSysprep:getTemplateV2TemplateVersionSpecVmSpecGuestCustomizationConfigSysprep": {
      "properties": {
        "installType": {
          "type": "string",
          "description": "Indicates whether the guest will be freshly installed using this unattend configuration, or this unattend configuration will be applied to a pre-prepared image. Default is 'PREPARED'.\n"
        },
        "sysprepScripts": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetTemplateV2TemplateVersionSpecVmSpecGuestCustomizationConfigSysprepSysprepScript:getTemplateV2TemplateVersionSpecVmSpecGuestCustomizationConfigSysprepSysprepScript"
          },
          "description": "Object either UnattendXml or CustomKeyValues\n"
        }
      },
      "type": "object",
      "required": [
        "installType",
        "sysprepScripts"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getTemplateV2TemplateVersionSpecVmSpecGuestCustomizationConfigSysprepSysprepScript:getTemplateV2TemplateVersionSpecVmSpecGuestCustomizationConfigSysprepSysprepScript": {
      "properties": {
        "customKeyValues": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetTemplateV2TemplateVersionSpecVmSpecGuestCustomizationConfigSysprepSysprepScriptCustomKeyValue:getTemplateV2TemplateVersionSpecVmSpecGuestCustomizationConfigSysprepSysprepScriptCustomKeyValue"
          },
          "description": "The list of the individual KeyValuePair elements.\n"
        },
        "unattendXmls": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetTemplateV2TemplateVersionSpecVmSpecGuestCustomizationConfigSysprepSysprepScriptUnattendXml:getTemplateV2TemplateVersionSpecVmSpecGuestCustomizationConfigSysprepSysprepScriptUnattendXml"
          },
          "description": "xml object\n"
        }
      },
      "type": "object",
      "required": [
        "customKeyValues",
        "unattendXmls"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getTemplateV2TemplateVersionSpecVmSpecGuestCustomizationConfigSysprepSysprepScriptCustomKeyValue:getTemplateV2TemplateVersionSpecVmSpecGuestCustomizationConfigSysprepSysprepScriptCustomKeyValue": {
      "properties": {
        "keyValuePairs": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetTemplateV2TemplateVersionSpecVmSpecGuestCustomizationConfigSysprepSysprepScriptCustomKeyValueKeyValuePair:getTemplateV2TemplateVersionSpecVmSpecGuestCustomizationConfigSysprepSysprepScriptCustomKeyValueKeyValuePair"
          }
        }
      },
      "type": "object",
      "required": [
        "keyValuePairs"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getTemplateV2TemplateVersionSpecVmSpecGuestCustomizationConfigSysprepSysprepScriptCustomKeyValueKeyValuePair:getTemplateV2TemplateVersionSpecVmSpecGuestCustomizationConfigSysprepSysprepScriptCustomKeyValueKeyValuePair": {
      "properties": {
        "name": {
          "type": "string",
          "description": "Name of the GPU resource.\n"
        },
        "values": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetTemplateV2TemplateVersionSpecVmSpecGuestCustomizationConfigSysprepSysprepScriptCustomKeyValueKeyValuePairValue:getTemplateV2TemplateVersionSpecVmSpecGuestCustomizationConfigSysprepSysprepScriptCustomKeyValueKeyValuePairValue"
          }
        }
      },
      "type": "object",
      "required": [
        "name",
        "values"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getTemplateV2TemplateVersionSpecVmSpecGuestCustomizationConfigSysprepSysprepScriptCustomKeyValueKeyValuePairValue:getTemplateV2TemplateVersionSpecVmSpecGuestCustomizationConfigSysprepSysprepScriptCustomKeyValueKeyValuePairValue": {
      "properties": {
        "boolean": {
          "type": "boolean"
        },
        "integer": {
          "type": "integer"
        },
        "integerLists": {
          "type": "array",
          "items": {
            "type": "integer"
          }
        },
        "mapOfStrings": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetTemplateV2TemplateVersionSpecVmSpecGuestCustomizationConfigSysprepSysprepScriptCustomKeyValueKeyValuePairValueMapOfString:getTemplateV2TemplateVersionSpecVmSpecGuestCustomizationConfigSysprepSysprepScriptCustomKeyValueKeyValuePairValueMapOfString"
          }
        },
        "object": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          }
        },
        "string": {
          "type": "string"
        },
        "stringLists": {
          "type": "array",
          "items": {
            "type": "string"
          }
        }
      },
      "type": "object",
      "required": [
        "boolean",
        "integer",
        "integerLists",
        "mapOfStrings",
        "object",
        "string",
        "stringLists"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getTemplateV2TemplateVersionSpecVmSpecGuestCustomizationConfigSysprepSysprepScriptCustomKeyValueKeyValuePairValueMapOfString:getTemplateV2TemplateVersionSpecVmSpecGuestCustomizationConfigSysprepSysprepScriptCustomKeyValueKeyValuePairValueMapOfString": {
      "properties": {
        "map": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          }
        }
      },
      "type": "object",
      "required": [
        "map"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getTemplateV2TemplateVersionSpecVmSpecGuestCustomizationConfigSysprepSysprepScriptUnattendXml:getTemplateV2TemplateVersionSpecVmSpecGuestCustomizationConfigSysprepSysprepScriptUnattendXml": {
      "properties": {
        "value": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getTemplateV2TemplateVersionSpecVmSpecGuestTool:getTemplateV2TemplateVersionSpecVmSpecGuestTool": {
      "properties": {
        "availableVersion": {
          "type": "string",
          "description": "Version of Nutanix Guest Tools available on the cluster.\n"
        },
        "capabilities": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "The list of the application names that are enabled on the guest VM.\n"
        },
        "guestOsVersion": {
          "type": "string",
          "description": "Version of the operating system on the VM\n"
        },
        "isEnabled": {
          "type": "boolean",
          "description": "Indicates whether Nutanix Guest Tools is enabled or not.\n"
        },
        "isInstalled": {
          "type": "boolean",
          "description": "Indicates whether Nutanix Guest Tools is installed on the VM or not.\n"
        },
        "isIsoInserted": {
          "type": "boolean",
          "description": "Indicates whether Nutanix Guest Tools ISO is inserted or not.\n"
        },
        "isReachable": {
          "type": "boolean",
          "description": "Indicates whether the communication from VM to CVM is active or not.\n"
        },
        "isVmMobilityDriversInstalled": {
          "type": "boolean",
          "description": "Indicates whether the VM mobility drivers are installed on the VM or not.\n"
        },
        "isVssSnapshotCapable": {
          "type": "boolean",
          "description": "Indicates whether the VM is configured to take VSS snapshots through NGT or not.\n"
        },
        "version": {
          "type": "string",
          "description": "Virtual trusted platform module version.\n"
        }
      },
      "type": "object",
      "required": [
        "availableVersion",
        "capabilities",
        "guestOsVersion",
        "isEnabled",
        "isInstalled",
        "isIsoInserted",
        "isReachable",
        "isVmMobilityDriversInstalled",
        "isVssSnapshotCapable",
        "version"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getTemplateV2TemplateVersionSpecVmSpecHost:getTemplateV2TemplateVersionSpecVmSpecHost": {
      "properties": {
        "extId": {
          "type": "string",
          "description": "The identifier of a Template.\n"
        }
      },
      "type": "object",
      "required": [
        "extId"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getTemplateV2TemplateVersionSpecVmSpecLink:getTemplateV2TemplateVersionSpecVmSpecLink": {
      "properties": {
        "href": {
          "type": "string",
          "description": "- The URL at which the entity described by the link can be accessed.\n"
        },
        "rel": {
          "type": "string",
          "description": "- A name that identifies the relationship of the link to the object that is returned by the URL. The unique value of \"self\" identifies the URL for the object.\n"
        }
      },
      "type": "object",
      "required": [
        "href",
        "rel"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getTemplateV2TemplateVersionSpecVmSpecNic:getTemplateV2TemplateVersionSpecVmSpecNic": {
      "properties": {
        "backingInfos": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetTemplateV2TemplateVersionSpecVmSpecNicBackingInfo:getTemplateV2TemplateVersionSpecVmSpecNicBackingInfo"
          },
          "description": "Defines a NIC emulated by the hypervisor\n"
        },
        "extId": {
          "type": "string",
          "description": "The identifier of a Template.\n"
        },
        "links": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetTemplateV2TemplateVersionSpecVmSpecNicLink:getTemplateV2TemplateVersionSpecVmSpecNicLink"
          },
          "description": "- A HATEOAS style link for the response. Each link contains a user-friendly name identifying the link and an address for retrieving the particular resource.\n"
        },
        "networkInfos": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetTemplateV2TemplateVersionSpecVmSpecNicNetworkInfo:getTemplateV2TemplateVersionSpecVmSpecNicNetworkInfo"
          },
          "description": "Network information for a NIC.\n"
        },
        "tenantId": {
          "type": "string",
          "description": "A globally unique identifier that represents the tenant that owns this entity. The system automatically assigns it, and it and is immutable from an API consumer perspective (some use cases may cause this Id to change - For instance, a use case may require the transfer of ownership of the entity, but these cases are handled automatically on the server).\n"
        }
      },
      "type": "object",
      "required": [
        "backingInfos",
        "extId",
        "links",
        "networkInfos",
        "tenantId"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getTemplateV2TemplateVersionSpecVmSpecNicBackingInfo:getTemplateV2TemplateVersionSpecVmSpecNicBackingInfo": {
      "properties": {
        "isConnected": {
          "type": "boolean",
          "description": "Indicates whether the serial port is connected or not.\n"
        },
        "macAddress": {
          "type": "string",
          "description": "MAC address of the emulated NIC.\n"
        },
        "model": {
          "type": "string",
          "description": "Options for the NIC emulation.\n"
        },
        "numQueues": {
          "type": "integer",
          "description": "The number of Tx/Rx queue pairs for this NIC\n"
        }
      },
      "type": "object",
      "required": [
        "macAddress",
        "model"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getTemplateV2TemplateVersionSpecVmSpecNicLink:getTemplateV2TemplateVersionSpecVmSpecNicLink": {
      "properties": {
        "href": {
          "type": "string",
          "description": "- The URL at which the entity described by the link can be accessed.\n"
        },
        "rel": {
          "type": "string",
          "description": "- A name that identifies the relationship of the link to the object that is returned by the URL. The unique value of \"self\" identifies the URL for the object.\n"
        }
      },
      "type": "object",
      "required": [
        "href",
        "rel"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getTemplateV2TemplateVersionSpecVmSpecNicNetworkInfo:getTemplateV2TemplateVersionSpecVmSpecNicNetworkInfo": {
      "properties": {
        "ipv4Configs": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetTemplateV2TemplateVersionSpecVmSpecNicNetworkInfoIpv4Config:getTemplateV2TemplateVersionSpecVmSpecNicNetworkInfoIpv4Config"
          },
          "description": "The IP address configurations.\n"
        },
        "ipv4Infos": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetTemplateV2TemplateVersionSpecVmSpecNicNetworkInfoIpv4Info:getTemplateV2TemplateVersionSpecVmSpecNicNetworkInfoIpv4Info"
          }
        },
        "networkFunctionChains": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetTemplateV2TemplateVersionSpecVmSpecNicNetworkInfoNetworkFunctionChain:getTemplateV2TemplateVersionSpecVmSpecNicNetworkInfoNetworkFunctionChain"
          },
          "description": "The network function chain associates with the NIC. Only valid if<span pulumi-lang-nodejs=\" nicType \" pulumi-lang-dotnet=\" NicType \" pulumi-lang-go=\" nicType \" pulumi-lang-python=\" nic_type \" pulumi-lang-yaml=\" nicType \" pulumi-lang-java=\" nicType \"> nic_type </span>is NORMAL_NIC.\n"
        },
        "networkFunctionNicType": {
          "type": "string",
          "description": "The type of this Network function NIC. Defaults to INGRESS.\n"
        },
        "nicType": {
          "type": "string",
          "description": "NIC type. Defaults to NORMAL_NIC.\n"
        },
        "shouldAllowUnknownMacs": {
          "type": "boolean",
          "description": "Indicates whether an unknown unicast traffic is forwarded to this NIC or not. This is applicable only for the NICs on the overlay subnets.\n"
        },
        "subnets": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetTemplateV2TemplateVersionSpecVmSpecNicNetworkInfoSubnet:getTemplateV2TemplateVersionSpecVmSpecNicNetworkInfoSubnet"
          },
          "description": "Network identifier for this adapter. Only valid if<span pulumi-lang-nodejs=\" nicType \" pulumi-lang-dotnet=\" NicType \" pulumi-lang-go=\" nicType \" pulumi-lang-python=\" nic_type \" pulumi-lang-yaml=\" nicType \" pulumi-lang-java=\" nicType \"> nic_type </span>is NORMAL_NIC or DIRECT_NIC\n"
        },
        "trunkedVlans": {
          "type": "array",
          "items": {
            "type": "integer"
          },
          "description": "List of networks to trunk if VLAN mode is marked as TRUNKED. If empty and VLAN mode is set to TRUNKED, all the VLANs are trunked.\n"
        },
        "vlanMode": {
          "type": "string",
          "description": "all the virtual NICs are created in ACCESS mode, which permits only one VLAN per virtual network. TRUNKED mode allows multiple VLANs on a single VM NIC for network-aware user VMs.\n"
        }
      },
      "type": "object",
      "required": [
        "ipv4Configs",
        "ipv4Infos",
        "networkFunctionChains",
        "networkFunctionNicType",
        "nicType",
        "shouldAllowUnknownMacs",
        "subnets",
        "trunkedVlans",
        "vlanMode"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getTemplateV2TemplateVersionSpecVmSpecNicNetworkInfoIpv4Config:getTemplateV2TemplateVersionSpecVmSpecNicNetworkInfoIpv4Config": {
      "properties": {
        "ipAddresses": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetTemplateV2TemplateVersionSpecVmSpecNicNetworkInfoIpv4ConfigIpAddress:getTemplateV2TemplateVersionSpecVmSpecNicNetworkInfoIpv4ConfigIpAddress"
          }
        },
        "secondaryIpAddressLists": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetTemplateV2TemplateVersionSpecVmSpecNicNetworkInfoIpv4ConfigSecondaryIpAddressList:getTemplateV2TemplateVersionSpecVmSpecNicNetworkInfoIpv4ConfigSecondaryIpAddressList"
          }
        },
        "shouldAssignIp": {
          "type": "boolean"
        }
      },
      "type": "object",
      "required": [
        "ipAddresses",
        "secondaryIpAddressLists",
        "shouldAssignIp"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getTemplateV2TemplateVersionSpecVmSpecNicNetworkInfoIpv4ConfigIpAddress:getTemplateV2TemplateVersionSpecVmSpecNicNetworkInfoIpv4ConfigIpAddress": {
      "properties": {
        "prefixLength": {
          "type": "integer"
        },
        "value": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getTemplateV2TemplateVersionSpecVmSpecNicNetworkInfoIpv4ConfigSecondaryIpAddressList:getTemplateV2TemplateVersionSpecVmSpecNicNetworkInfoIpv4ConfigSecondaryIpAddressList": {
      "properties": {
        "prefixLength": {
          "type": "integer"
        },
        "value": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getTemplateV2TemplateVersionSpecVmSpecNicNetworkInfoIpv4Info:getTemplateV2TemplateVersionSpecVmSpecNicNetworkInfoIpv4Info": {
      "properties": {
        "learnedIpAddresses": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetTemplateV2TemplateVersionSpecVmSpecNicNetworkInfoIpv4InfoLearnedIpAddress:getTemplateV2TemplateVersionSpecVmSpecNicNetworkInfoIpv4InfoLearnedIpAddress"
          }
        }
      },
      "type": "object",
      "required": [
        "learnedIpAddresses"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getTemplateV2TemplateVersionSpecVmSpecNicNetworkInfoIpv4InfoLearnedIpAddress:getTemplateV2TemplateVersionSpecVmSpecNicNetworkInfoIpv4InfoLearnedIpAddress": {
      "properties": {
        "prefixLength": {
          "type": "integer"
        },
        "value": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getTemplateV2TemplateVersionSpecVmSpecNicNetworkInfoNetworkFunctionChain:getTemplateV2TemplateVersionSpecVmSpecNicNetworkInfoNetworkFunctionChain": {
      "properties": {
        "extId": {
          "type": "string",
          "description": "The identifier of a Template.\n"
        }
      },
      "type": "object",
      "required": [
        "extId"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getTemplateV2TemplateVersionSpecVmSpecNicNetworkInfoSubnet:getTemplateV2TemplateVersionSpecVmSpecNicNetworkInfoSubnet": {
      "properties": {
        "extId": {
          "type": "string",
          "description": "The identifier of a Template.\n"
        }
      },
      "type": "object",
      "required": [
        "extId"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getTemplateV2TemplateVersionSpecVmSpecOwnershipInfo:getTemplateV2TemplateVersionSpecVmSpecOwnershipInfo": {
      "properties": {
        "owners": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetTemplateV2TemplateVersionSpecVmSpecOwnershipInfoOwner:getTemplateV2TemplateVersionSpecVmSpecOwnershipInfoOwner"
          },
          "description": "Owner reference\n"
        }
      },
      "type": "object",
      "required": [
        "owners"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getTemplateV2TemplateVersionSpecVmSpecOwnershipInfoOwner:getTemplateV2TemplateVersionSpecVmSpecOwnershipInfoOwner": {
      "properties": {
        "extId": {
          "type": "string",
          "description": "The identifier of a Template.\n"
        }
      },
      "type": "object",
      "required": [
        "extId"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getTemplateV2TemplateVersionSpecVmSpecPciDevice:getTemplateV2TemplateVersionSpecVmSpecPciDevice": {
      "properties": {
        "assignedDeviceInfos": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetTemplateV2TemplateVersionSpecVmSpecPciDeviceAssignedDeviceInfo:getTemplateV2TemplateVersionSpecVmSpecPciDeviceAssignedDeviceInfo"
          }
        },
        "backingInfos": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetTemplateV2TemplateVersionSpecVmSpecPciDeviceBackingInfo:getTemplateV2TemplateVersionSpecVmSpecPciDeviceBackingInfo"
          },
          "description": "Defines a NIC emulated by the hypervisor\n"
        },
        "extId": {
          "type": "string",
          "description": "The identifier of a Template.\n"
        },
        "links": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetTemplateV2TemplateVersionSpecVmSpecPciDeviceLink:getTemplateV2TemplateVersionSpecVmSpecPciDeviceLink"
          },
          "description": "- A HATEOAS style link for the response. Each link contains a user-friendly name identifying the link and an address for retrieving the particular resource.\n"
        },
        "tenantId": {
          "type": "string",
          "description": "A globally unique identifier that represents the tenant that owns this entity. The system automatically assigns it, and it and is immutable from an API consumer perspective (some use cases may cause this Id to change - For instance, a use case may require the transfer of ownership of the entity, but these cases are handled automatically on the server).\n"
        }
      },
      "type": "object",
      "required": [
        "assignedDeviceInfos",
        "backingInfos",
        "extId",
        "links",
        "tenantId"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getTemplateV2TemplateVersionSpecVmSpecPciDeviceAssignedDeviceInfo:getTemplateV2TemplateVersionSpecVmSpecPciDeviceAssignedDeviceInfo": {
      "properties": {
        "devices": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetTemplateV2TemplateVersionSpecVmSpecPciDeviceAssignedDeviceInfoDevice:getTemplateV2TemplateVersionSpecVmSpecPciDeviceAssignedDeviceInfoDevice"
          }
        }
      },
      "type": "object",
      "required": [
        "devices"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getTemplateV2TemplateVersionSpecVmSpecPciDeviceAssignedDeviceInfoDevice:getTemplateV2TemplateVersionSpecVmSpecPciDeviceAssignedDeviceInfoDevice": {
      "properties": {
        "deviceExtId": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "deviceExtId"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getTemplateV2TemplateVersionSpecVmSpecPciDeviceBackingInfo:getTemplateV2TemplateVersionSpecVmSpecPciDeviceBackingInfo": {
      "properties": {
        "pcieDeviceReferences": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetTemplateV2TemplateVersionSpecVmSpecPciDeviceBackingInfoPcieDeviceReference:getTemplateV2TemplateVersionSpecVmSpecPciDeviceBackingInfoPcieDeviceReference"
          }
        }
      },
      "type": "object",
      "required": [
        "pcieDeviceReferences"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getTemplateV2TemplateVersionSpecVmSpecPciDeviceBackingInfoPcieDeviceReference:getTemplateV2TemplateVersionSpecVmSpecPciDeviceBackingInfoPcieDeviceReference": {
      "properties": {
        "deviceExtId": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "deviceExtId"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getTemplateV2TemplateVersionSpecVmSpecPciDeviceLink:getTemplateV2TemplateVersionSpecVmSpecPciDeviceLink": {
      "properties": {
        "href": {
          "type": "string",
          "description": "- The URL at which the entity described by the link can be accessed.\n"
        },
        "rel": {
          "type": "string",
          "description": "- A name that identifies the relationship of the link to the object that is returned by the URL. The unique value of \"self\" identifies the URL for the object.\n"
        }
      },
      "type": "object",
      "required": [
        "href",
        "rel"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getTemplateV2TemplateVersionSpecVmSpecProtectionPolicyState:getTemplateV2TemplateVersionSpecVmSpecProtectionPolicyState": {
      "properties": {
        "policies": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetTemplateV2TemplateVersionSpecVmSpecProtectionPolicyStatePolicy:getTemplateV2TemplateVersionSpecVmSpecProtectionPolicyStatePolicy"
          },
          "description": "Reference to the policy object in use.\n"
        }
      },
      "type": "object",
      "required": [
        "policies"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getTemplateV2TemplateVersionSpecVmSpecProtectionPolicyStatePolicy:getTemplateV2TemplateVersionSpecVmSpecProtectionPolicyStatePolicy": {
      "properties": {
        "extId": {
          "type": "string",
          "description": "The identifier of a Template.\n"
        }
      },
      "type": "object",
      "required": [
        "extId"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getTemplateV2TemplateVersionSpecVmSpecSerialPort:getTemplateV2TemplateVersionSpecVmSpecSerialPort": {
      "properties": {
        "extId": {
          "type": "string",
          "description": "The identifier of a Template.\n"
        },
        "index": {
          "type": "integer",
          "description": "Index of the serial port.\n"
        },
        "isConnected": {
          "type": "boolean",
          "description": "Indicates whether the serial port is connected or not.\n"
        },
        "links": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetTemplateV2TemplateVersionSpecVmSpecSerialPortLink:getTemplateV2TemplateVersionSpecVmSpecSerialPortLink"
          },
          "description": "- A HATEOAS style link for the response. Each link contains a user-friendly name identifying the link and an address for retrieving the particular resource.\n"
        },
        "tenantId": {
          "type": "string",
          "description": "A globally unique identifier that represents the tenant that owns this entity. The system automatically assigns it, and it and is immutable from an API consumer perspective (some use cases may cause this Id to change - For instance, a use case may require the transfer of ownership of the entity, but these cases are handled automatically on the server).\n"
        }
      },
      "type": "object",
      "required": [
        "extId",
        "index",
        "isConnected",
        "links",
        "tenantId"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getTemplateV2TemplateVersionSpecVmSpecSerialPortLink:getTemplateV2TemplateVersionSpecVmSpecSerialPortLink": {
      "properties": {
        "href": {
          "type": "string",
          "description": "- The URL at which the entity described by the link can be accessed.\n"
        },
        "rel": {
          "type": "string",
          "description": "- A name that identifies the relationship of the link to the object that is returned by the URL. The unique value of \"self\" identifies the URL for the object.\n"
        }
      },
      "type": "object",
      "required": [
        "href",
        "rel"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getTemplateV2TemplateVersionSpecVmSpecSource:getTemplateV2TemplateVersionSpecVmSpecSource": {
      "properties": {
        "entityType": {
          "type": "string",
          "description": "Entity Type of source\n"
        },
        "extId": {
          "type": "string",
          "description": "The identifier of a Template.\n"
        }
      },
      "type": "object",
      "required": [
        "entityType",
        "extId"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getTemplateV2TemplateVersionSpecVmSpecStorageConfig:getTemplateV2TemplateVersionSpecVmSpecStorageConfig": {
      "properties": {
        "isFlashModeEnabled": {
          "type": "boolean",
          "description": "Indicates whether the virtual disk is pinned to the hot tier or not.\n"
        },
        "qosConfigs": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetTemplateV2TemplateVersionSpecVmSpecStorageConfigQosConfig:getTemplateV2TemplateVersionSpecVmSpecStorageConfigQosConfig"
          },
          "description": "QoS parameters to be enforced.\n"
        }
      },
      "type": "object",
      "required": [
        "isFlashModeEnabled",
        "qosConfigs"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getTemplateV2TemplateVersionSpecVmSpecStorageConfigQosConfig:getTemplateV2TemplateVersionSpecVmSpecStorageConfigQosConfig": {
      "properties": {
        "throttledIops": {
          "type": "integer",
          "description": "Throttled IOPS for the governed entities. The block size for the I/O is 32 kB.\n"
        }
      },
      "type": "object",
      "required": [
        "throttledIops"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getTemplateV2TemplateVersionSpecVmSpecVtpmConfig:getTemplateV2TemplateVersionSpecVmSpecVtpmConfig": {
      "properties": {
        "isVtpmEnabled": {
          "type": "boolean",
          "description": "Indicates whether the virtual trusted platform module is enabled for the Guest OS or not.\n"
        },
        "version": {
          "type": "string",
          "description": "Virtual trusted platform module version.\n"
        }
      },
      "type": "object",
      "required": [
        "isVtpmEnabled",
        "version"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getTemplateV2UpdatedBy:getTemplateV2UpdatedBy": {
      "properties": {
        "additionalAttributes": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetTemplateV2UpdatedByAdditionalAttribute:getTemplateV2UpdatedByAdditionalAttribute"
          },
          "description": "Any additional attribute for the User.\n"
        },
        "creationType": {
          "type": "string"
        },
        "description": {
          "type": "string",
          "description": "VM description\n"
        },
        "displayName": {
          "type": "string",
          "description": "Display name for the User.\n"
        },
        "emailId": {
          "type": "string",
          "description": "Email Id for the User.\n"
        },
        "extId": {
          "type": "string",
          "description": "The identifier of a Template.\n"
        },
        "firstName": {
          "type": "string",
          "description": "First name for the User.\n"
        },
        "idpId": {
          "type": "string",
          "description": "Identifier of the IDP for the User.\n"
        },
        "isForceResetPasswordEnabled": {
          "type": "boolean",
          "description": "Flag to force the User to reset password.\n"
        },
        "lastName": {
          "type": "string",
          "description": "Last name for the User.\n"
        },
        "locale": {
          "type": "string",
          "description": "Default locale for the User.\n"
        },
        "middleInitial": {
          "type": "string",
          "description": "Middle name for the User.\n"
        },
        "password": {
          "type": "string"
        },
        "region": {
          "type": "string",
          "description": "Default Region for the User.\n"
        },
        "status": {
          "type": "string",
          "description": "Status of the User.\n"
        },
        "userType": {
          "type": "string",
          "description": "Type of the User.\n"
        },
        "username": {
          "type": "string",
          "description": "Identifier for the User in the form an email address.\n"
        }
      },
      "type": "object",
      "required": [
        "additionalAttributes",
        "creationType",
        "description",
        "displayName",
        "emailId",
        "extId",
        "firstName",
        "idpId",
        "isForceResetPasswordEnabled",
        "lastName",
        "locale",
        "middleInitial",
        "password",
        "region",
        "status",
        "userType",
        "username"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getTemplateV2UpdatedByAdditionalAttribute:getTemplateV2UpdatedByAdditionalAttribute": {
      "properties": {
        "name": {
          "type": "string",
          "description": "Name of the GPU resource.\n"
        },
        "values": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetTemplateV2UpdatedByAdditionalAttributeValue:getTemplateV2UpdatedByAdditionalAttributeValue"
          }
        }
      },
      "type": "object",
      "required": [
        "name",
        "values"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getTemplateV2UpdatedByAdditionalAttributeValue:getTemplateV2UpdatedByAdditionalAttributeValue": {
      "properties": {
        "boolean": {
          "type": "boolean"
        },
        "integer": {
          "type": "integer"
        },
        "integerLists": {
          "type": "array",
          "items": {
            "type": "integer"
          }
        },
        "mapOfStrings": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetTemplateV2UpdatedByAdditionalAttributeValueMapOfString:getTemplateV2UpdatedByAdditionalAttributeValueMapOfString"
          }
        },
        "object": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          }
        },
        "string": {
          "type": "string"
        },
        "stringLists": {
          "type": "array",
          "items": {
            "type": "string"
          }
        }
      },
      "type": "object",
      "required": [
        "boolean",
        "integer",
        "integerLists",
        "mapOfStrings",
        "object",
        "string",
        "stringLists"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getTemplateV2UpdatedByAdditionalAttributeValueMapOfString:getTemplateV2UpdatedByAdditionalAttributeValueMapOfString": {
      "properties": {
        "map": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          }
        }
      },
      "type": "object",
      "required": [
        "map"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getTemplatesV2Template:getTemplatesV2Template": {
      "properties": {
        "createTime": {
          "type": "string"
        },
        "createdBies": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetTemplatesV2TemplateCreatedBy:getTemplatesV2TemplateCreatedBy"
          }
        },
        "extId": {
          "type": "string"
        },
        "guestUpdateStatuses": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetTemplatesV2TemplateGuestUpdateStatus:getTemplatesV2TemplateGuestUpdateStatus"
          }
        },
        "links": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetTemplatesV2TemplateLink:getTemplatesV2TemplateLink"
          }
        },
        "templateDescription": {
          "type": "string"
        },
        "templateName": {
          "type": "string"
        },
        "templateVersionSpecs": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetTemplatesV2TemplateTemplateVersionSpec:getTemplatesV2TemplateTemplateVersionSpec"
          }
        },
        "tenantId": {
          "type": "string"
        },
        "updateTime": {
          "type": "string"
        },
        "updatedBies": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetTemplatesV2TemplateUpdatedBy:getTemplatesV2TemplateUpdatedBy"
          }
        }
      },
      "type": "object",
      "required": [
        "createTime",
        "createdBies",
        "extId",
        "guestUpdateStatuses",
        "links",
        "templateDescription",
        "templateName",
        "templateVersionSpecs",
        "tenantId",
        "updateTime",
        "updatedBies"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getTemplatesV2TemplateCreatedBy:getTemplatesV2TemplateCreatedBy": {
      "properties": {
        "additionalAttributes": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetTemplatesV2TemplateCreatedByAdditionalAttribute:getTemplatesV2TemplateCreatedByAdditionalAttribute"
          }
        },
        "creationType": {
          "type": "string"
        },
        "description": {
          "type": "string"
        },
        "displayName": {
          "type": "string"
        },
        "emailId": {
          "type": "string"
        },
        "extId": {
          "type": "string"
        },
        "firstName": {
          "type": "string"
        },
        "idpId": {
          "type": "string"
        },
        "isForceResetPasswordEnabled": {
          "type": "boolean"
        },
        "lastName": {
          "type": "string"
        },
        "locale": {
          "type": "string"
        },
        "middleInitial": {
          "type": "string"
        },
        "password": {
          "type": "string"
        },
        "region": {
          "type": "string"
        },
        "status": {
          "type": "string"
        },
        "userType": {
          "type": "string"
        },
        "username": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "additionalAttributes",
        "creationType",
        "description",
        "displayName",
        "emailId",
        "extId",
        "firstName",
        "idpId",
        "isForceResetPasswordEnabled",
        "lastName",
        "locale",
        "middleInitial",
        "password",
        "region",
        "status",
        "userType",
        "username"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getTemplatesV2TemplateCreatedByAdditionalAttribute:getTemplatesV2TemplateCreatedByAdditionalAttribute": {
      "properties": {
        "name": {
          "type": "string"
        },
        "values": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetTemplatesV2TemplateCreatedByAdditionalAttributeValue:getTemplatesV2TemplateCreatedByAdditionalAttributeValue"
          }
        }
      },
      "type": "object",
      "required": [
        "name",
        "values"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getTemplatesV2TemplateCreatedByAdditionalAttributeValue:getTemplatesV2TemplateCreatedByAdditionalAttributeValue": {
      "properties": {
        "boolean": {
          "type": "boolean"
        },
        "integer": {
          "type": "integer"
        },
        "integerLists": {
          "type": "array",
          "items": {
            "type": "integer"
          }
        },
        "mapOfStrings": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetTemplatesV2TemplateCreatedByAdditionalAttributeValueMapOfString:getTemplatesV2TemplateCreatedByAdditionalAttributeValueMapOfString"
          }
        },
        "object": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          }
        },
        "string": {
          "type": "string"
        },
        "stringLists": {
          "type": "array",
          "items": {
            "type": "string"
          }
        }
      },
      "type": "object",
      "required": [
        "boolean",
        "integer",
        "integerLists",
        "mapOfStrings",
        "object",
        "string",
        "stringLists"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getTemplatesV2TemplateCreatedByAdditionalAttributeValueMapOfString:getTemplatesV2TemplateCreatedByAdditionalAttributeValueMapOfString": {
      "properties": {
        "map": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          }
        }
      },
      "type": "object",
      "required": [
        "map"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getTemplatesV2TemplateGuestUpdateStatus:getTemplatesV2TemplateGuestUpdateStatus": {
      "properties": {
        "deployedVmReference": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "deployedVmReference"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getTemplatesV2TemplateLink:getTemplatesV2TemplateLink": {
      "properties": {
        "href": {
          "type": "string"
        },
        "rel": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "href",
        "rel"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getTemplatesV2TemplateTemplateVersionSpec:getTemplatesV2TemplateTemplateVersionSpec": {
      "properties": {
        "createTime": {
          "type": "string"
        },
        "createdBies": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetTemplatesV2TemplateTemplateVersionSpecCreatedBy:getTemplatesV2TemplateTemplateVersionSpecCreatedBy"
          }
        },
        "extId": {
          "type": "string"
        },
        "isActiveVersion": {
          "type": "boolean"
        },
        "isGcOverrideEnabled": {
          "type": "boolean"
        },
        "links": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetTemplatesV2TemplateTemplateVersionSpecLink:getTemplatesV2TemplateTemplateVersionSpecLink"
          }
        },
        "tenantId": {
          "type": "string"
        },
        "versionDescription": {
          "type": "string"
        },
        "versionName": {
          "type": "string"
        },
        "vmSpecs": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetTemplatesV2TemplateTemplateVersionSpecVmSpec:getTemplatesV2TemplateTemplateVersionSpecVmSpec"
          }
        }
      },
      "type": "object",
      "required": [
        "createTime",
        "createdBies",
        "extId",
        "isActiveVersion",
        "isGcOverrideEnabled",
        "links",
        "tenantId",
        "versionDescription",
        "versionName",
        "vmSpecs"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getTemplatesV2TemplateTemplateVersionSpecCreatedBy:getTemplatesV2TemplateTemplateVersionSpecCreatedBy": {
      "properties": {
        "additionalAttributes": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetTemplatesV2TemplateTemplateVersionSpecCreatedByAdditionalAttribute:getTemplatesV2TemplateTemplateVersionSpecCreatedByAdditionalAttribute"
          }
        },
        "creationType": {
          "type": "string"
        },
        "description": {
          "type": "string"
        },
        "displayName": {
          "type": "string"
        },
        "emailId": {
          "type": "string"
        },
        "extId": {
          "type": "string"
        },
        "firstName": {
          "type": "string"
        },
        "idpId": {
          "type": "string"
        },
        "isForceResetPasswordEnabled": {
          "type": "boolean"
        },
        "lastName": {
          "type": "string"
        },
        "locale": {
          "type": "string"
        },
        "middleInitial": {
          "type": "string"
        },
        "password": {
          "type": "string"
        },
        "region": {
          "type": "string"
        },
        "status": {
          "type": "string"
        },
        "userType": {
          "type": "string"
        },
        "username": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "additionalAttributes",
        "creationType",
        "description",
        "displayName",
        "emailId",
        "extId",
        "firstName",
        "idpId",
        "isForceResetPasswordEnabled",
        "lastName",
        "locale",
        "middleInitial",
        "password",
        "region",
        "status",
        "userType",
        "username"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getTemplatesV2TemplateTemplateVersionSpecCreatedByAdditionalAttribute:getTemplatesV2TemplateTemplateVersionSpecCreatedByAdditionalAttribute": {
      "properties": {
        "name": {
          "type": "string"
        },
        "values": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetTemplatesV2TemplateTemplateVersionSpecCreatedByAdditionalAttributeValue:getTemplatesV2TemplateTemplateVersionSpecCreatedByAdditionalAttributeValue"
          }
        }
      },
      "type": "object",
      "required": [
        "name",
        "values"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getTemplatesV2TemplateTemplateVersionSpecCreatedByAdditionalAttributeValue:getTemplatesV2TemplateTemplateVersionSpecCreatedByAdditionalAttributeValue": {
      "properties": {
        "boolean": {
          "type": "boolean"
        },
        "integer": {
          "type": "integer"
        },
        "integerLists": {
          "type": "array",
          "items": {
            "type": "integer"
          }
        },
        "mapOfStrings": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetTemplatesV2TemplateTemplateVersionSpecCreatedByAdditionalAttributeValueMapOfString:getTemplatesV2TemplateTemplateVersionSpecCreatedByAdditionalAttributeValueMapOfString"
          }
        },
        "object": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          }
        },
        "string": {
          "type": "string"
        },
        "stringLists": {
          "type": "array",
          "items": {
            "type": "string"
          }
        }
      },
      "type": "object",
      "required": [
        "boolean",
        "integer",
        "integerLists",
        "mapOfStrings",
        "object",
        "string",
        "stringLists"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getTemplatesV2TemplateTemplateVersionSpecCreatedByAdditionalAttributeValueMapOfString:getTemplatesV2TemplateTemplateVersionSpecCreatedByAdditionalAttributeValueMapOfString": {
      "properties": {
        "map": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          }
        }
      },
      "type": "object",
      "required": [
        "map"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getTemplatesV2TemplateTemplateVersionSpecLink:getTemplatesV2TemplateTemplateVersionSpecLink": {
      "properties": {
        "href": {
          "type": "string"
        },
        "rel": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "href",
        "rel"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getTemplatesV2TemplateTemplateVersionSpecVmSpec:getTemplatesV2TemplateTemplateVersionSpecVmSpec": {
      "properties": {
        "apcConfigs": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetTemplatesV2TemplateTemplateVersionSpecVmSpecApcConfig:getTemplatesV2TemplateTemplateVersionSpecVmSpecApcConfig"
          }
        },
        "availabilityZones": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetTemplatesV2TemplateTemplateVersionSpecVmSpecAvailabilityZone:getTemplatesV2TemplateTemplateVersionSpecVmSpecAvailabilityZone"
          }
        },
        "biosUuid": {
          "type": "string"
        },
        "bootConfigs": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetTemplatesV2TemplateTemplateVersionSpecVmSpecBootConfig:getTemplatesV2TemplateTemplateVersionSpecVmSpecBootConfig"
          }
        },
        "categories": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetTemplatesV2TemplateTemplateVersionSpecVmSpecCategory:getTemplatesV2TemplateTemplateVersionSpecVmSpecCategory"
          }
        },
        "cdRoms": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetTemplatesV2TemplateTemplateVersionSpecVmSpecCdRom:getTemplatesV2TemplateTemplateVersionSpecVmSpecCdRom"
          }
        },
        "clusters": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetTemplatesV2TemplateTemplateVersionSpecVmSpecCluster:getTemplatesV2TemplateTemplateVersionSpecVmSpecCluster"
          }
        },
        "createTime": {
          "type": "string"
        },
        "description": {
          "type": "string"
        },
        "disks": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetTemplatesV2TemplateTemplateVersionSpecVmSpecDisk:getTemplatesV2TemplateTemplateVersionSpecVmSpecDisk"
          }
        },
        "enabledCpuFeatures": {
          "type": "array",
          "items": {
            "type": "string"
          }
        },
        "extId": {
          "type": "string"
        },
        "generationUuid": {
          "type": "string"
        },
        "gpuses": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetTemplatesV2TemplateTemplateVersionSpecVmSpecGpus:getTemplatesV2TemplateTemplateVersionSpecVmSpecGpus"
          }
        },
        "guestCustomizations": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetTemplatesV2TemplateTemplateVersionSpecVmSpecGuestCustomization:getTemplatesV2TemplateTemplateVersionSpecVmSpecGuestCustomization"
          }
        },
        "guestTools": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetTemplatesV2TemplateTemplateVersionSpecVmSpecGuestTool:getTemplatesV2TemplateTemplateVersionSpecVmSpecGuestTool"
          }
        },
        "hardwareClockTimezone": {
          "type": "string"
        },
        "hosts": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetTemplatesV2TemplateTemplateVersionSpecVmSpecHost:getTemplatesV2TemplateTemplateVersionSpecVmSpecHost"
          }
        },
        "isAgentVm": {
          "type": "boolean"
        },
        "isBrandingEnabled": {
          "type": "boolean"
        },
        "isCpuHotplugEnabled": {
          "type": "boolean"
        },
        "isCpuPassthroughEnabled": {
          "type": "boolean"
        },
        "isCrossClusterMigrationInProgress": {
          "type": "boolean"
        },
        "isGpuConsoleEnabled": {
          "type": "boolean"
        },
        "isLiveMigrateCapable": {
          "type": "boolean"
        },
        "isMemoryOvercommitEnabled": {
          "type": "boolean"
        },
        "isScsiControllerEnabled": {
          "type": "boolean"
        },
        "isVcpuHardPinningEnabled": {
          "type": "boolean"
        },
        "isVgaConsoleEnabled": {
          "type": "boolean"
        },
        "links": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetTemplatesV2TemplateTemplateVersionSpecVmSpecLink:getTemplatesV2TemplateTemplateVersionSpecVmSpecLink"
          }
        },
        "machineType": {
          "type": "string"
        },
        "memorySizeBytes": {
          "type": "integer"
        },
        "name": {
          "type": "string"
        },
        "nics": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetTemplatesV2TemplateTemplateVersionSpecVmSpecNic:getTemplatesV2TemplateTemplateVersionSpecVmSpecNic"
          }
        },
        "numCoresPerSocket": {
          "type": "integer"
        },
        "numNumaNodes": {
          "type": "integer"
        },
        "numSockets": {
          "type": "integer"
        },
        "numThreadsPerCore": {
          "type": "integer"
        },
        "ownershipInfos": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetTemplatesV2TemplateTemplateVersionSpecVmSpecOwnershipInfo:getTemplatesV2TemplateTemplateVersionSpecVmSpecOwnershipInfo"
          }
        },
        "pciDevices": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetTemplatesV2TemplateTemplateVersionSpecVmSpecPciDevice:getTemplatesV2TemplateTemplateVersionSpecVmSpecPciDevice"
          }
        },
        "powerState": {
          "type": "string"
        },
        "protectionPolicyStates": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetTemplatesV2TemplateTemplateVersionSpecVmSpecProtectionPolicyState:getTemplatesV2TemplateTemplateVersionSpecVmSpecProtectionPolicyState"
          }
        },
        "protectionType": {
          "type": "string"
        },
        "serialPorts": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetTemplatesV2TemplateTemplateVersionSpecVmSpecSerialPort:getTemplatesV2TemplateTemplateVersionSpecVmSpecSerialPort"
          }
        },
        "sources": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetTemplatesV2TemplateTemplateVersionSpecVmSpecSource:getTemplatesV2TemplateTemplateVersionSpecVmSpecSource"
          }
        },
        "storageConfigs": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetTemplatesV2TemplateTemplateVersionSpecVmSpecStorageConfig:getTemplatesV2TemplateTemplateVersionSpecVmSpecStorageConfig"
          }
        },
        "tenantId": {
          "type": "string"
        },
        "updateTime": {
          "type": "string"
        },
        "vtpmConfigs": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetTemplatesV2TemplateTemplateVersionSpecVmSpecVtpmConfig:getTemplatesV2TemplateTemplateVersionSpecVmSpecVtpmConfig"
          }
        }
      },
      "type": "object",
      "required": [
        "apcConfigs",
        "availabilityZones",
        "biosUuid",
        "bootConfigs",
        "categories",
        "cdRoms",
        "clusters",
        "createTime",
        "description",
        "disks",
        "enabledCpuFeatures",
        "extId",
        "generationUuid",
        "gpuses",
        "guestCustomizations",
        "guestTools",
        "hardwareClockTimezone",
        "hosts",
        "isAgentVm",
        "isBrandingEnabled",
        "isCpuHotplugEnabled",
        "isCpuPassthroughEnabled",
        "isCrossClusterMigrationInProgress",
        "isGpuConsoleEnabled",
        "isLiveMigrateCapable",
        "isMemoryOvercommitEnabled",
        "isScsiControllerEnabled",
        "isVcpuHardPinningEnabled",
        "isVgaConsoleEnabled",
        "links",
        "machineType",
        "memorySizeBytes",
        "name",
        "nics",
        "numCoresPerSocket",
        "numNumaNodes",
        "numSockets",
        "numThreadsPerCore",
        "ownershipInfos",
        "pciDevices",
        "powerState",
        "protectionPolicyStates",
        "protectionType",
        "serialPorts",
        "sources",
        "storageConfigs",
        "tenantId",
        "updateTime",
        "vtpmConfigs"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getTemplatesV2TemplateTemplateVersionSpecVmSpecApcConfig:getTemplatesV2TemplateTemplateVersionSpecVmSpecApcConfig": {
      "properties": {
        "cpuModels": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetTemplatesV2TemplateTemplateVersionSpecVmSpecApcConfigCpuModel:getTemplatesV2TemplateTemplateVersionSpecVmSpecApcConfigCpuModel"
          }
        },
        "isApcEnabled": {
          "type": "boolean"
        }
      },
      "type": "object",
      "required": [
        "cpuModels",
        "isApcEnabled"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getTemplatesV2TemplateTemplateVersionSpecVmSpecApcConfigCpuModel:getTemplatesV2TemplateTemplateVersionSpecVmSpecApcConfigCpuModel": {
      "properties": {
        "extId": {
          "type": "string"
        },
        "name": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "extId",
        "name"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getTemplatesV2TemplateTemplateVersionSpecVmSpecAvailabilityZone:getTemplatesV2TemplateTemplateVersionSpecVmSpecAvailabilityZone": {
      "properties": {
        "extId": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "extId"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getTemplatesV2TemplateTemplateVersionSpecVmSpecBootConfig:getTemplatesV2TemplateTemplateVersionSpecVmSpecBootConfig": {
      "properties": {
        "legacyBoots": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetTemplatesV2TemplateTemplateVersionSpecVmSpecBootConfigLegacyBoot:getTemplatesV2TemplateTemplateVersionSpecVmSpecBootConfigLegacyBoot"
          }
        },
        "uefiBoots": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetTemplatesV2TemplateTemplateVersionSpecVmSpecBootConfigUefiBoot:getTemplatesV2TemplateTemplateVersionSpecVmSpecBootConfigUefiBoot"
          }
        }
      },
      "type": "object",
      "required": [
        "legacyBoots",
        "uefiBoots"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getTemplatesV2TemplateTemplateVersionSpecVmSpecBootConfigLegacyBoot:getTemplatesV2TemplateTemplateVersionSpecVmSpecBootConfigLegacyBoot": {
      "properties": {
        "bootDevices": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetTemplatesV2TemplateTemplateVersionSpecVmSpecBootConfigLegacyBootBootDevice:getTemplatesV2TemplateTemplateVersionSpecVmSpecBootConfigLegacyBootBootDevice"
          }
        },
        "bootOrders": {
          "type": "array",
          "items": {
            "type": "string"
          }
        }
      },
      "type": "object",
      "required": [
        "bootDevices",
        "bootOrders"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getTemplatesV2TemplateTemplateVersionSpecVmSpecBootConfigLegacyBootBootDevice:getTemplatesV2TemplateTemplateVersionSpecVmSpecBootConfigLegacyBootBootDevice": {
      "properties": {
        "bootDeviceDisks": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetTemplatesV2TemplateTemplateVersionSpecVmSpecBootConfigLegacyBootBootDeviceBootDeviceDisk:getTemplatesV2TemplateTemplateVersionSpecVmSpecBootConfigLegacyBootBootDeviceBootDeviceDisk"
          }
        },
        "bootDeviceNics": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetTemplatesV2TemplateTemplateVersionSpecVmSpecBootConfigLegacyBootBootDeviceBootDeviceNic:getTemplatesV2TemplateTemplateVersionSpecVmSpecBootConfigLegacyBootBootDeviceBootDeviceNic"
          }
        }
      },
      "type": "object",
      "required": [
        "bootDeviceDisks",
        "bootDeviceNics"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getTemplatesV2TemplateTemplateVersionSpecVmSpecBootConfigLegacyBootBootDeviceBootDeviceDisk:getTemplatesV2TemplateTemplateVersionSpecVmSpecBootConfigLegacyBootBootDeviceBootDeviceDisk": {
      "properties": {
        "diskAddresses": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetTemplatesV2TemplateTemplateVersionSpecVmSpecBootConfigLegacyBootBootDeviceBootDeviceDiskDiskAddress:getTemplatesV2TemplateTemplateVersionSpecVmSpecBootConfigLegacyBootBootDeviceBootDeviceDiskDiskAddress"
          }
        }
      },
      "type": "object",
      "required": [
        "diskAddresses"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getTemplatesV2TemplateTemplateVersionSpecVmSpecBootConfigLegacyBootBootDeviceBootDeviceDiskDiskAddress:getTemplatesV2TemplateTemplateVersionSpecVmSpecBootConfigLegacyBootBootDeviceBootDeviceDiskDiskAddress": {
      "properties": {
        "busType": {
          "type": "string"
        },
        "index": {
          "type": "integer"
        }
      },
      "type": "object",
      "required": [
        "busType",
        "index"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getTemplatesV2TemplateTemplateVersionSpecVmSpecBootConfigLegacyBootBootDeviceBootDeviceNic:getTemplatesV2TemplateTemplateVersionSpecVmSpecBootConfigLegacyBootBootDeviceBootDeviceNic": {
      "properties": {
        "macAddress": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "macAddress"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getTemplatesV2TemplateTemplateVersionSpecVmSpecBootConfigUefiBoot:getTemplatesV2TemplateTemplateVersionSpecVmSpecBootConfigUefiBoot": {
      "properties": {
        "bootDevices": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetTemplatesV2TemplateTemplateVersionSpecVmSpecBootConfigUefiBootBootDevice:getTemplatesV2TemplateTemplateVersionSpecVmSpecBootConfigUefiBootBootDevice"
          }
        },
        "bootOrders": {
          "type": "array",
          "items": {
            "type": "string"
          }
        },
        "isSecureBootEnabled": {
          "type": "boolean"
        },
        "nvramDevices": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetTemplatesV2TemplateTemplateVersionSpecVmSpecBootConfigUefiBootNvramDevice:getTemplatesV2TemplateTemplateVersionSpecVmSpecBootConfigUefiBootNvramDevice"
          }
        }
      },
      "type": "object",
      "required": [
        "bootDevices",
        "bootOrders",
        "isSecureBootEnabled",
        "nvramDevices"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getTemplatesV2TemplateTemplateVersionSpecVmSpecBootConfigUefiBootBootDevice:getTemplatesV2TemplateTemplateVersionSpecVmSpecBootConfigUefiBootBootDevice": {
      "properties": {
        "bootDeviceDisks": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetTemplatesV2TemplateTemplateVersionSpecVmSpecBootConfigUefiBootBootDeviceBootDeviceDisk:getTemplatesV2TemplateTemplateVersionSpecVmSpecBootConfigUefiBootBootDeviceBootDeviceDisk"
          }
        },
        "bootDeviceNics": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetTemplatesV2TemplateTemplateVersionSpecVmSpecBootConfigUefiBootBootDeviceBootDeviceNic:getTemplatesV2TemplateTemplateVersionSpecVmSpecBootConfigUefiBootBootDeviceBootDeviceNic"
          }
        }
      },
      "type": "object",
      "required": [
        "bootDeviceDisks",
        "bootDeviceNics"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getTemplatesV2TemplateTemplateVersionSpecVmSpecBootConfigUefiBootBootDeviceBootDeviceDisk:getTemplatesV2TemplateTemplateVersionSpecVmSpecBootConfigUefiBootBootDeviceBootDeviceDisk": {
      "properties": {
        "diskAddresses": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetTemplatesV2TemplateTemplateVersionSpecVmSpecBootConfigUefiBootBootDeviceBootDeviceDiskDiskAddress:getTemplatesV2TemplateTemplateVersionSpecVmSpecBootConfigUefiBootBootDeviceBootDeviceDiskDiskAddress"
          }
        }
      },
      "type": "object",
      "required": [
        "diskAddresses"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getTemplatesV2TemplateTemplateVersionSpecVmSpecBootConfigUefiBootBootDeviceBootDeviceDiskDiskAddress:getTemplatesV2TemplateTemplateVersionSpecVmSpecBootConfigUefiBootBootDeviceBootDeviceDiskDiskAddress": {
      "properties": {
        "busType": {
          "type": "string"
        },
        "index": {
          "type": "integer"
        }
      },
      "type": "object",
      "required": [
        "busType",
        "index"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getTemplatesV2TemplateTemplateVersionSpecVmSpecBootConfigUefiBootBootDeviceBootDeviceNic:getTemplatesV2TemplateTemplateVersionSpecVmSpecBootConfigUefiBootBootDeviceBootDeviceNic": {
      "properties": {
        "macAddress": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "macAddress"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getTemplatesV2TemplateTemplateVersionSpecVmSpecBootConfigUefiBootNvramDevice:getTemplatesV2TemplateTemplateVersionSpecVmSpecBootConfigUefiBootNvramDevice": {
      "properties": {
        "backingStorageInfos": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetTemplatesV2TemplateTemplateVersionSpecVmSpecBootConfigUefiBootNvramDeviceBackingStorageInfo:getTemplatesV2TemplateTemplateVersionSpecVmSpecBootConfigUefiBootNvramDeviceBackingStorageInfo"
          }
        }
      },
      "type": "object",
      "required": [
        "backingStorageInfos"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getTemplatesV2TemplateTemplateVersionSpecVmSpecBootConfigUefiBootNvramDeviceBackingStorageInfo:getTemplatesV2TemplateTemplateVersionSpecVmSpecBootConfigUefiBootNvramDeviceBackingStorageInfo": {
      "properties": {
        "dataSources": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetTemplatesV2TemplateTemplateVersionSpecVmSpecBootConfigUefiBootNvramDeviceBackingStorageInfoDataSource:getTemplatesV2TemplateTemplateVersionSpecVmSpecBootConfigUefiBootNvramDeviceBackingStorageInfoDataSource"
          }
        },
        "diskExtId": {
          "type": "string"
        },
        "diskSizeBytes": {
          "type": "integer"
        },
        "isMigrationInProgress": {
          "type": "boolean"
        },
        "storageConfigs": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetTemplatesV2TemplateTemplateVersionSpecVmSpecBootConfigUefiBootNvramDeviceBackingStorageInfoStorageConfig:getTemplatesV2TemplateTemplateVersionSpecVmSpecBootConfigUefiBootNvramDeviceBackingStorageInfoStorageConfig"
          }
        },
        "storageContainers": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetTemplatesV2TemplateTemplateVersionSpecVmSpecBootConfigUefiBootNvramDeviceBackingStorageInfoStorageContainer:getTemplatesV2TemplateTemplateVersionSpecVmSpecBootConfigUefiBootNvramDeviceBackingStorageInfoStorageContainer"
          }
        }
      },
      "type": "object",
      "required": [
        "dataSources",
        "diskExtId",
        "diskSizeBytes",
        "isMigrationInProgress",
        "storageConfigs",
        "storageContainers"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getTemplatesV2TemplateTemplateVersionSpecVmSpecBootConfigUefiBootNvramDeviceBackingStorageInfoDataSource:getTemplatesV2TemplateTemplateVersionSpecVmSpecBootConfigUefiBootNvramDeviceBackingStorageInfoDataSource": {
      "properties": {
        "references": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetTemplatesV2TemplateTemplateVersionSpecVmSpecBootConfigUefiBootNvramDeviceBackingStorageInfoDataSourceReference:getTemplatesV2TemplateTemplateVersionSpecVmSpecBootConfigUefiBootNvramDeviceBackingStorageInfoDataSourceReference"
          }
        }
      },
      "type": "object",
      "required": [
        "references"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getTemplatesV2TemplateTemplateVersionSpecVmSpecBootConfigUefiBootNvramDeviceBackingStorageInfoDataSourceReference:getTemplatesV2TemplateTemplateVersionSpecVmSpecBootConfigUefiBootNvramDeviceBackingStorageInfoDataSourceReference": {
      "properties": {
        "imageReferences": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetTemplatesV2TemplateTemplateVersionSpecVmSpecBootConfigUefiBootNvramDeviceBackingStorageInfoDataSourceReferenceImageReference:getTemplatesV2TemplateTemplateVersionSpecVmSpecBootConfigUefiBootNvramDeviceBackingStorageInfoDataSourceReferenceImageReference"
          }
        },
        "vmDiskReferences": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetTemplatesV2TemplateTemplateVersionSpecVmSpecBootConfigUefiBootNvramDeviceBackingStorageInfoDataSourceReferenceVmDiskReference:getTemplatesV2TemplateTemplateVersionSpecVmSpecBootConfigUefiBootNvramDeviceBackingStorageInfoDataSourceReferenceVmDiskReference"
          }
        }
      },
      "type": "object",
      "required": [
        "imageReferences",
        "vmDiskReferences"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getTemplatesV2TemplateTemplateVersionSpecVmSpecBootConfigUefiBootNvramDeviceBackingStorageInfoDataSourceReferenceImageReference:getTemplatesV2TemplateTemplateVersionSpecVmSpecBootConfigUefiBootNvramDeviceBackingStorageInfoDataSourceReferenceImageReference": {
      "properties": {
        "imageExtId": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "imageExtId"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getTemplatesV2TemplateTemplateVersionSpecVmSpecBootConfigUefiBootNvramDeviceBackingStorageInfoDataSourceReferenceVmDiskReference:getTemplatesV2TemplateTemplateVersionSpecVmSpecBootConfigUefiBootNvramDeviceBackingStorageInfoDataSourceReferenceVmDiskReference": {
      "properties": {
        "diskAddresses": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetTemplatesV2TemplateTemplateVersionSpecVmSpecBootConfigUefiBootNvramDeviceBackingStorageInfoDataSourceReferenceVmDiskReferenceDiskAddress:getTemplatesV2TemplateTemplateVersionSpecVmSpecBootConfigUefiBootNvramDeviceBackingStorageInfoDataSourceReferenceVmDiskReferenceDiskAddress"
          }
        },
        "diskExtId": {
          "type": "string"
        },
        "vmReferences": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetTemplatesV2TemplateTemplateVersionSpecVmSpecBootConfigUefiBootNvramDeviceBackingStorageInfoDataSourceReferenceVmDiskReferenceVmReference:getTemplatesV2TemplateTemplateVersionSpecVmSpecBootConfigUefiBootNvramDeviceBackingStorageInfoDataSourceReferenceVmDiskReferenceVmReference"
          }
        }
      },
      "type": "object",
      "required": [
        "diskAddresses",
        "diskExtId",
        "vmReferences"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getTemplatesV2TemplateTemplateVersionSpecVmSpecBootConfigUefiBootNvramDeviceBackingStorageInfoDataSourceReferenceVmDiskReferenceDiskAddress:getTemplatesV2TemplateTemplateVersionSpecVmSpecBootConfigUefiBootNvramDeviceBackingStorageInfoDataSourceReferenceVmDiskReferenceDiskAddress": {
      "properties": {
        "busType": {
          "type": "string"
        },
        "index": {
          "type": "integer"
        }
      },
      "type": "object",
      "required": [
        "busType",
        "index"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getTemplatesV2TemplateTemplateVersionSpecVmSpecBootConfigUefiBootNvramDeviceBackingStorageInfoDataSourceReferenceVmDiskReferenceVmReference:getTemplatesV2TemplateTemplateVersionSpecVmSpecBootConfigUefiBootNvramDeviceBackingStorageInfoDataSourceReferenceVmDiskReferenceVmReference": {
      "properties": {
        "extId": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "extId"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getTemplatesV2TemplateTemplateVersionSpecVmSpecBootConfigUefiBootNvramDeviceBackingStorageInfoStorageConfig:getTemplatesV2TemplateTemplateVersionSpecVmSpecBootConfigUefiBootNvramDeviceBackingStorageInfoStorageConfig": {
      "properties": {
        "isFlashModeEnabled": {
          "type": "boolean"
        }
      },
      "type": "object",
      "required": [
        "isFlashModeEnabled"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getTemplatesV2TemplateTemplateVersionSpecVmSpecBootConfigUefiBootNvramDeviceBackingStorageInfoStorageContainer:getTemplatesV2TemplateTemplateVersionSpecVmSpecBootConfigUefiBootNvramDeviceBackingStorageInfoStorageContainer": {
      "properties": {
        "extId": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "extId"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getTemplatesV2TemplateTemplateVersionSpecVmSpecCategory:getTemplatesV2TemplateTemplateVersionSpecVmSpecCategory": {
      "properties": {
        "extId": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "extId"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getTemplatesV2TemplateTemplateVersionSpecVmSpecCdRom:getTemplatesV2TemplateTemplateVersionSpecVmSpecCdRom": {
      "properties": {
        "backingInfos": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetTemplatesV2TemplateTemplateVersionSpecVmSpecCdRomBackingInfo:getTemplatesV2TemplateTemplateVersionSpecVmSpecCdRomBackingInfo"
          }
        },
        "diskAddresses": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetTemplatesV2TemplateTemplateVersionSpecVmSpecCdRomDiskAddress:getTemplatesV2TemplateTemplateVersionSpecVmSpecCdRomDiskAddress"
          }
        },
        "extId": {
          "type": "string"
        },
        "isoType": {
          "type": "string"
        },
        "links": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetTemplatesV2TemplateTemplateVersionSpecVmSpecCdRomLink:getTemplatesV2TemplateTemplateVersionSpecVmSpecCdRomLink"
          }
        },
        "tenantId": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "backingInfos",
        "diskAddresses",
        "extId",
        "isoType",
        "links",
        "tenantId"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getTemplatesV2TemplateTemplateVersionSpecVmSpecCdRomBackingInfo:getTemplatesV2TemplateTemplateVersionSpecVmSpecCdRomBackingInfo": {
      "properties": {
        "dataSources": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetTemplatesV2TemplateTemplateVersionSpecVmSpecCdRomBackingInfoDataSource:getTemplatesV2TemplateTemplateVersionSpecVmSpecCdRomBackingInfoDataSource"
          }
        },
        "diskExtId": {
          "type": "string"
        },
        "diskSizeBytes": {
          "type": "integer"
        },
        "isMigrationInProgress": {
          "type": "boolean"
        },
        "storageConfigs": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetTemplatesV2TemplateTemplateVersionSpecVmSpecCdRomBackingInfoStorageConfig:getTemplatesV2TemplateTemplateVersionSpecVmSpecCdRomBackingInfoStorageConfig"
          }
        },
        "storageContainers": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetTemplatesV2TemplateTemplateVersionSpecVmSpecCdRomBackingInfoStorageContainer:getTemplatesV2TemplateTemplateVersionSpecVmSpecCdRomBackingInfoStorageContainer"
          }
        }
      },
      "type": "object",
      "required": [
        "dataSources",
        "diskExtId",
        "diskSizeBytes",
        "isMigrationInProgress",
        "storageConfigs",
        "storageContainers"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getTemplatesV2TemplateTemplateVersionSpecVmSpecCdRomBackingInfoDataSource:getTemplatesV2TemplateTemplateVersionSpecVmSpecCdRomBackingInfoDataSource": {
      "properties": {
        "references": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetTemplatesV2TemplateTemplateVersionSpecVmSpecCdRomBackingInfoDataSourceReference:getTemplatesV2TemplateTemplateVersionSpecVmSpecCdRomBackingInfoDataSourceReference"
          }
        }
      },
      "type": "object",
      "required": [
        "references"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getTemplatesV2TemplateTemplateVersionSpecVmSpecCdRomBackingInfoDataSourceReference:getTemplatesV2TemplateTemplateVersionSpecVmSpecCdRomBackingInfoDataSourceReference": {
      "properties": {
        "imageReferences": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetTemplatesV2TemplateTemplateVersionSpecVmSpecCdRomBackingInfoDataSourceReferenceImageReference:getTemplatesV2TemplateTemplateVersionSpecVmSpecCdRomBackingInfoDataSourceReferenceImageReference"
          }
        },
        "vmDiskReferences": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetTemplatesV2TemplateTemplateVersionSpecVmSpecCdRomBackingInfoDataSourceReferenceVmDiskReference:getTemplatesV2TemplateTemplateVersionSpecVmSpecCdRomBackingInfoDataSourceReferenceVmDiskReference"
          }
        }
      },
      "type": "object",
      "required": [
        "imageReferences",
        "vmDiskReferences"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getTemplatesV2TemplateTemplateVersionSpecVmSpecCdRomBackingInfoDataSourceReferenceImageReference:getTemplatesV2TemplateTemplateVersionSpecVmSpecCdRomBackingInfoDataSourceReferenceImageReference": {
      "properties": {
        "imageExtId": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "imageExtId"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getTemplatesV2TemplateTemplateVersionSpecVmSpecCdRomBackingInfoDataSourceReferenceVmDiskReference:getTemplatesV2TemplateTemplateVersionSpecVmSpecCdRomBackingInfoDataSourceReferenceVmDiskReference": {
      "properties": {
        "diskAddresses": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetTemplatesV2TemplateTemplateVersionSpecVmSpecCdRomBackingInfoDataSourceReferenceVmDiskReferenceDiskAddress:getTemplatesV2TemplateTemplateVersionSpecVmSpecCdRomBackingInfoDataSourceReferenceVmDiskReferenceDiskAddress"
          }
        },
        "diskExtId": {
          "type": "string"
        },
        "vmReferences": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetTemplatesV2TemplateTemplateVersionSpecVmSpecCdRomBackingInfoDataSourceReferenceVmDiskReferenceVmReference:getTemplatesV2TemplateTemplateVersionSpecVmSpecCdRomBackingInfoDataSourceReferenceVmDiskReferenceVmReference"
          }
        }
      },
      "type": "object",
      "required": [
        "diskAddresses",
        "diskExtId",
        "vmReferences"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getTemplatesV2TemplateTemplateVersionSpecVmSpecCdRomBackingInfoDataSourceReferenceVmDiskReferenceDiskAddress:getTemplatesV2TemplateTemplateVersionSpecVmSpecCdRomBackingInfoDataSourceReferenceVmDiskReferenceDiskAddress": {
      "properties": {
        "busType": {
          "type": "string"
        },
        "index": {
          "type": "integer"
        }
      },
      "type": "object",
      "required": [
        "busType",
        "index"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getTemplatesV2TemplateTemplateVersionSpecVmSpecCdRomBackingInfoDataSourceReferenceVmDiskReferenceVmReference:getTemplatesV2TemplateTemplateVersionSpecVmSpecCdRomBackingInfoDataSourceReferenceVmDiskReferenceVmReference": {
      "properties": {
        "extId": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "extId"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getTemplatesV2TemplateTemplateVersionSpecVmSpecCdRomBackingInfoStorageConfig:getTemplatesV2TemplateTemplateVersionSpecVmSpecCdRomBackingInfoStorageConfig": {
      "properties": {
        "isFlashModeEnabled": {
          "type": "boolean"
        }
      },
      "type": "object",
      "required": [
        "isFlashModeEnabled"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getTemplatesV2TemplateTemplateVersionSpecVmSpecCdRomBackingInfoStorageContainer:getTemplatesV2TemplateTemplateVersionSpecVmSpecCdRomBackingInfoStorageContainer": {
      "properties": {
        "extId": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "extId"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getTemplatesV2TemplateTemplateVersionSpecVmSpecCdRomDiskAddress:getTemplatesV2TemplateTemplateVersionSpecVmSpecCdRomDiskAddress": {
      "properties": {
        "busType": {
          "type": "string"
        },
        "index": {
          "type": "integer"
        }
      },
      "type": "object",
      "required": [
        "busType",
        "index"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getTemplatesV2TemplateTemplateVersionSpecVmSpecCdRomLink:getTemplatesV2TemplateTemplateVersionSpecVmSpecCdRomLink": {
      "properties": {
        "href": {
          "type": "string"
        },
        "rel": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "href",
        "rel"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getTemplatesV2TemplateTemplateVersionSpecVmSpecCluster:getTemplatesV2TemplateTemplateVersionSpecVmSpecCluster": {
      "properties": {
        "extId": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "extId"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getTemplatesV2TemplateTemplateVersionSpecVmSpecDisk:getTemplatesV2TemplateTemplateVersionSpecVmSpecDisk": {
      "properties": {
        "backingInfos": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetTemplatesV2TemplateTemplateVersionSpecVmSpecDiskBackingInfo:getTemplatesV2TemplateTemplateVersionSpecVmSpecDiskBackingInfo"
          }
        },
        "diskAddresses": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetTemplatesV2TemplateTemplateVersionSpecVmSpecDiskDiskAddress:getTemplatesV2TemplateTemplateVersionSpecVmSpecDiskDiskAddress"
          }
        },
        "extId": {
          "type": "string"
        },
        "links": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetTemplatesV2TemplateTemplateVersionSpecVmSpecDiskLink:getTemplatesV2TemplateTemplateVersionSpecVmSpecDiskLink"
          }
        },
        "tenantId": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "backingInfos",
        "diskAddresses",
        "extId",
        "links",
        "tenantId"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getTemplatesV2TemplateTemplateVersionSpecVmSpecDiskBackingInfo:getTemplatesV2TemplateTemplateVersionSpecVmSpecDiskBackingInfo": {
      "properties": {
        "adfsVolumeGroupReferences": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetTemplatesV2TemplateTemplateVersionSpecVmSpecDiskBackingInfoAdfsVolumeGroupReference:getTemplatesV2TemplateTemplateVersionSpecVmSpecDiskBackingInfoAdfsVolumeGroupReference"
          }
        },
        "vmDisks": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetTemplatesV2TemplateTemplateVersionSpecVmSpecDiskBackingInfoVmDisk:getTemplatesV2TemplateTemplateVersionSpecVmSpecDiskBackingInfoVmDisk"
          }
        }
      },
      "type": "object",
      "required": [
        "adfsVolumeGroupReferences",
        "vmDisks"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getTemplatesV2TemplateTemplateVersionSpecVmSpecDiskBackingInfoAdfsVolumeGroupReference:getTemplatesV2TemplateTemplateVersionSpecVmSpecDiskBackingInfoAdfsVolumeGroupReference": {
      "properties": {
        "volumeGroupExtId": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "volumeGroupExtId"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getTemplatesV2TemplateTemplateVersionSpecVmSpecDiskBackingInfoVmDisk:getTemplatesV2TemplateTemplateVersionSpecVmSpecDiskBackingInfoVmDisk": {
      "properties": {
        "dataSources": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetTemplatesV2TemplateTemplateVersionSpecVmSpecDiskBackingInfoVmDiskDataSource:getTemplatesV2TemplateTemplateVersionSpecVmSpecDiskBackingInfoVmDiskDataSource"
          }
        },
        "diskExtId": {
          "type": "string"
        },
        "diskSizeBytes": {
          "type": "integer"
        },
        "isMigrationInProgress": {
          "type": "boolean"
        },
        "storageConfigs": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetTemplatesV2TemplateTemplateVersionSpecVmSpecDiskBackingInfoVmDiskStorageConfig:getTemplatesV2TemplateTemplateVersionSpecVmSpecDiskBackingInfoVmDiskStorageConfig"
          }
        },
        "storageContainers": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetTemplatesV2TemplateTemplateVersionSpecVmSpecDiskBackingInfoVmDiskStorageContainer:getTemplatesV2TemplateTemplateVersionSpecVmSpecDiskBackingInfoVmDiskStorageContainer"
          }
        }
      },
      "type": "object",
      "required": [
        "dataSources",
        "diskExtId",
        "diskSizeBytes",
        "isMigrationInProgress",
        "storageConfigs",
        "storageContainers"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getTemplatesV2TemplateTemplateVersionSpecVmSpecDiskBackingInfoVmDiskDataSource:getTemplatesV2TemplateTemplateVersionSpecVmSpecDiskBackingInfoVmDiskDataSource": {
      "properties": {
        "references": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetTemplatesV2TemplateTemplateVersionSpecVmSpecDiskBackingInfoVmDiskDataSourceReference:getTemplatesV2TemplateTemplateVersionSpecVmSpecDiskBackingInfoVmDiskDataSourceReference"
          }
        }
      },
      "type": "object",
      "required": [
        "references"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getTemplatesV2TemplateTemplateVersionSpecVmSpecDiskBackingInfoVmDiskDataSourceReference:getTemplatesV2TemplateTemplateVersionSpecVmSpecDiskBackingInfoVmDiskDataSourceReference": {
      "properties": {
        "imageReferences": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetTemplatesV2TemplateTemplateVersionSpecVmSpecDiskBackingInfoVmDiskDataSourceReferenceImageReference:getTemplatesV2TemplateTemplateVersionSpecVmSpecDiskBackingInfoVmDiskDataSourceReferenceImageReference"
          }
        },
        "vmDiskReferences": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetTemplatesV2TemplateTemplateVersionSpecVmSpecDiskBackingInfoVmDiskDataSourceReferenceVmDiskReference:getTemplatesV2TemplateTemplateVersionSpecVmSpecDiskBackingInfoVmDiskDataSourceReferenceVmDiskReference"
          }
        }
      },
      "type": "object",
      "required": [
        "imageReferences",
        "vmDiskReferences"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getTemplatesV2TemplateTemplateVersionSpecVmSpecDiskBackingInfoVmDiskDataSourceReferenceImageReference:getTemplatesV2TemplateTemplateVersionSpecVmSpecDiskBackingInfoVmDiskDataSourceReferenceImageReference": {
      "properties": {
        "imageExtId": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "imageExtId"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getTemplatesV2TemplateTemplateVersionSpecVmSpecDiskBackingInfoVmDiskDataSourceReferenceVmDiskReference:getTemplatesV2TemplateTemplateVersionSpecVmSpecDiskBackingInfoVmDiskDataSourceReferenceVmDiskReference": {
      "properties": {
        "diskAddresses": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetTemplatesV2TemplateTemplateVersionSpecVmSpecDiskBackingInfoVmDiskDataSourceReferenceVmDiskReferenceDiskAddress:getTemplatesV2TemplateTemplateVersionSpecVmSpecDiskBackingInfoVmDiskDataSourceReferenceVmDiskReferenceDiskAddress"
          }
        },
        "diskExtId": {
          "type": "string"
        },
        "vmReferences": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetTemplatesV2TemplateTemplateVersionSpecVmSpecDiskBackingInfoVmDiskDataSourceReferenceVmDiskReferenceVmReference:getTemplatesV2TemplateTemplateVersionSpecVmSpecDiskBackingInfoVmDiskDataSourceReferenceVmDiskReferenceVmReference"
          }
        }
      },
      "type": "object",
      "required": [
        "diskAddresses",
        "diskExtId",
        "vmReferences"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getTemplatesV2TemplateTemplateVersionSpecVmSpecDiskBackingInfoVmDiskDataSourceReferenceVmDiskReferenceDiskAddress:getTemplatesV2TemplateTemplateVersionSpecVmSpecDiskBackingInfoVmDiskDataSourceReferenceVmDiskReferenceDiskAddress": {
      "properties": {
        "busType": {
          "type": "string"
        },
        "index": {
          "type": "integer"
        }
      },
      "type": "object",
      "required": [
        "busType",
        "index"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getTemplatesV2TemplateTemplateVersionSpecVmSpecDiskBackingInfoVmDiskDataSourceReferenceVmDiskReferenceVmReference:getTemplatesV2TemplateTemplateVersionSpecVmSpecDiskBackingInfoVmDiskDataSourceReferenceVmDiskReferenceVmReference": {
      "properties": {
        "extId": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "extId"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getTemplatesV2TemplateTemplateVersionSpecVmSpecDiskBackingInfoVmDiskStorageConfig:getTemplatesV2TemplateTemplateVersionSpecVmSpecDiskBackingInfoVmDiskStorageConfig": {
      "properties": {
        "isFlashModeEnabled": {
          "type": "boolean"
        }
      },
      "type": "object",
      "required": [
        "isFlashModeEnabled"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getTemplatesV2TemplateTemplateVersionSpecVmSpecDiskBackingInfoVmDiskStorageContainer:getTemplatesV2TemplateTemplateVersionSpecVmSpecDiskBackingInfoVmDiskStorageContainer": {
      "properties": {
        "extId": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "extId"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getTemplatesV2TemplateTemplateVersionSpecVmSpecDiskDiskAddress:getTemplatesV2TemplateTemplateVersionSpecVmSpecDiskDiskAddress": {
      "properties": {
        "busType": {
          "type": "string"
        },
        "index": {
          "type": "integer"
        }
      },
      "type": "object",
      "required": [
        "busType",
        "index"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getTemplatesV2TemplateTemplateVersionSpecVmSpecDiskLink:getTemplatesV2TemplateTemplateVersionSpecVmSpecDiskLink": {
      "properties": {
        "href": {
          "type": "string"
        },
        "rel": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "href",
        "rel"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getTemplatesV2TemplateTemplateVersionSpecVmSpecGpus:getTemplatesV2TemplateTemplateVersionSpecVmSpecGpus": {
      "properties": {
        "deviceId": {
          "type": "integer"
        },
        "extId": {
          "type": "string"
        },
        "fraction": {
          "type": "integer"
        },
        "frameBufferSizeBytes": {
          "type": "integer"
        },
        "guestDriverVersion": {
          "type": "string"
        },
        "links": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetTemplatesV2TemplateTemplateVersionSpecVmSpecGpusLink:getTemplatesV2TemplateTemplateVersionSpecVmSpecGpusLink"
          }
        },
        "mode": {
          "type": "string"
        },
        "name": {
          "type": "string"
        },
        "numVirtualDisplayHeads": {
          "type": "integer"
        },
        "pciAddresses": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetTemplatesV2TemplateTemplateVersionSpecVmSpecGpusPciAddress:getTemplatesV2TemplateTemplateVersionSpecVmSpecGpusPciAddress"
          }
        },
        "tenantId": {
          "type": "string"
        },
        "vendor": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "deviceId",
        "extId",
        "fraction",
        "frameBufferSizeBytes",
        "guestDriverVersion",
        "links",
        "mode",
        "name",
        "numVirtualDisplayHeads",
        "pciAddresses",
        "tenantId",
        "vendor"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getTemplatesV2TemplateTemplateVersionSpecVmSpecGpusLink:getTemplatesV2TemplateTemplateVersionSpecVmSpecGpusLink": {
      "properties": {
        "href": {
          "type": "string"
        },
        "rel": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "href",
        "rel"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getTemplatesV2TemplateTemplateVersionSpecVmSpecGpusPciAddress:getTemplatesV2TemplateTemplateVersionSpecVmSpecGpusPciAddress": {
      "properties": {
        "bus": {
          "type": "integer"
        },
        "device": {
          "type": "integer"
        },
        "func": {
          "type": "integer"
        },
        "segment": {
          "type": "integer"
        }
      },
      "type": "object",
      "required": [
        "bus",
        "device",
        "func",
        "segment"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getTemplatesV2TemplateTemplateVersionSpecVmSpecGuestCustomization:getTemplatesV2TemplateTemplateVersionSpecVmSpecGuestCustomization": {
      "properties": {
        "configs": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetTemplatesV2TemplateTemplateVersionSpecVmSpecGuestCustomizationConfig:getTemplatesV2TemplateTemplateVersionSpecVmSpecGuestCustomizationConfig"
          }
        }
      },
      "type": "object",
      "required": [
        "configs"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getTemplatesV2TemplateTemplateVersionSpecVmSpecGuestCustomizationConfig:getTemplatesV2TemplateTemplateVersionSpecVmSpecGuestCustomizationConfig": {
      "properties": {
        "cloudInits": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetTemplatesV2TemplateTemplateVersionSpecVmSpecGuestCustomizationConfigCloudInit:getTemplatesV2TemplateTemplateVersionSpecVmSpecGuestCustomizationConfigCloudInit"
          }
        },
        "syspreps": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetTemplatesV2TemplateTemplateVersionSpecVmSpecGuestCustomizationConfigSysprep:getTemplatesV2TemplateTemplateVersionSpecVmSpecGuestCustomizationConfigSysprep"
          }
        }
      },
      "type": "object",
      "required": [
        "cloudInits",
        "syspreps"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getTemplatesV2TemplateTemplateVersionSpecVmSpecGuestCustomizationConfigCloudInit:getTemplatesV2TemplateTemplateVersionSpecVmSpecGuestCustomizationConfigCloudInit": {
      "properties": {
        "cloudInitScripts": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetTemplatesV2TemplateTemplateVersionSpecVmSpecGuestCustomizationConfigCloudInitCloudInitScript:getTemplatesV2TemplateTemplateVersionSpecVmSpecGuestCustomizationConfigCloudInitCloudInitScript"
          }
        },
        "datasourceType": {
          "type": "string"
        },
        "metadata": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "cloudInitScripts",
        "datasourceType",
        "metadata"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getTemplatesV2TemplateTemplateVersionSpecVmSpecGuestCustomizationConfigCloudInitCloudInitScript:getTemplatesV2TemplateTemplateVersionSpecVmSpecGuestCustomizationConfigCloudInitCloudInitScript": {
      "properties": {
        "customKeyValues": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetTemplatesV2TemplateTemplateVersionSpecVmSpecGuestCustomizationConfigCloudInitCloudInitScriptCustomKeyValue:getTemplatesV2TemplateTemplateVersionSpecVmSpecGuestCustomizationConfigCloudInitCloudInitScriptCustomKeyValue"
          }
        },
        "userDatas": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetTemplatesV2TemplateTemplateVersionSpecVmSpecGuestCustomizationConfigCloudInitCloudInitScriptUserData:getTemplatesV2TemplateTemplateVersionSpecVmSpecGuestCustomizationConfigCloudInitCloudInitScriptUserData"
          }
        }
      },
      "type": "object",
      "required": [
        "customKeyValues",
        "userDatas"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getTemplatesV2TemplateTemplateVersionSpecVmSpecGuestCustomizationConfigCloudInitCloudInitScriptCustomKeyValue:getTemplatesV2TemplateTemplateVersionSpecVmSpecGuestCustomizationConfigCloudInitCloudInitScriptCustomKeyValue": {
      "properties": {
        "keyValuePairs": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetTemplatesV2TemplateTemplateVersionSpecVmSpecGuestCustomizationConfigCloudInitCloudInitScriptCustomKeyValueKeyValuePair:getTemplatesV2TemplateTemplateVersionSpecVmSpecGuestCustomizationConfigCloudInitCloudInitScriptCustomKeyValueKeyValuePair"
          }
        }
      },
      "type": "object",
      "required": [
        "keyValuePairs"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getTemplatesV2TemplateTemplateVersionSpecVmSpecGuestCustomizationConfigCloudInitCloudInitScriptCustomKeyValueKeyValuePair:getTemplatesV2TemplateTemplateVersionSpecVmSpecGuestCustomizationConfigCloudInitCloudInitScriptCustomKeyValueKeyValuePair": {
      "properties": {
        "name": {
          "type": "string"
        },
        "values": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetTemplatesV2TemplateTemplateVersionSpecVmSpecGuestCustomizationConfigCloudInitCloudInitScriptCustomKeyValueKeyValuePairValue:getTemplatesV2TemplateTemplateVersionSpecVmSpecGuestCustomizationConfigCloudInitCloudInitScriptCustomKeyValueKeyValuePairValue"
          }
        }
      },
      "type": "object",
      "required": [
        "name",
        "values"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getTemplatesV2TemplateTemplateVersionSpecVmSpecGuestCustomizationConfigCloudInitCloudInitScriptCustomKeyValueKeyValuePairValue:getTemplatesV2TemplateTemplateVersionSpecVmSpecGuestCustomizationConfigCloudInitCloudInitScriptCustomKeyValueKeyValuePairValue": {
      "properties": {
        "boolean": {
          "type": "boolean"
        },
        "integer": {
          "type": "integer"
        },
        "integerLists": {
          "type": "array",
          "items": {
            "type": "integer"
          }
        },
        "mapOfStrings": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetTemplatesV2TemplateTemplateVersionSpecVmSpecGuestCustomizationConfigCloudInitCloudInitScriptCustomKeyValueKeyValuePairValueMapOfString:getTemplatesV2TemplateTemplateVersionSpecVmSpecGuestCustomizationConfigCloudInitCloudInitScriptCustomKeyValueKeyValuePairValueMapOfString"
          }
        },
        "object": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          }
        },
        "string": {
          "type": "string"
        },
        "stringLists": {
          "type": "array",
          "items": {
            "type": "string"
          }
        }
      },
      "type": "object",
      "required": [
        "boolean",
        "integer",
        "integerLists",
        "mapOfStrings",
        "object",
        "string",
        "stringLists"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getTemplatesV2TemplateTemplateVersionSpecVmSpecGuestCustomizationConfigCloudInitCloudInitScriptCustomKeyValueKeyValuePairValueMapOfString:getTemplatesV2TemplateTemplateVersionSpecVmSpecGuestCustomizationConfigCloudInitCloudInitScriptCustomKeyValueKeyValuePairValueMapOfString": {
      "properties": {
        "map": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          }
        }
      },
      "type": "object",
      "required": [
        "map"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getTemplatesV2TemplateTemplateVersionSpecVmSpecGuestCustomizationConfigCloudInitCloudInitScriptUserData:getTemplatesV2TemplateTemplateVersionSpecVmSpecGuestCustomizationConfigCloudInitCloudInitScriptUserData": {
      "properties": {
        "value": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getTemplatesV2TemplateTemplateVersionSpecVmSpecGuestCustomizationConfigSysprep:getTemplatesV2TemplateTemplateVersionSpecVmSpecGuestCustomizationConfigSysprep": {
      "properties": {
        "installType": {
          "type": "string"
        },
        "sysprepScripts": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetTemplatesV2TemplateTemplateVersionSpecVmSpecGuestCustomizationConfigSysprepSysprepScript:getTemplatesV2TemplateTemplateVersionSpecVmSpecGuestCustomizationConfigSysprepSysprepScript"
          }
        }
      },
      "type": "object",
      "required": [
        "installType",
        "sysprepScripts"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getTemplatesV2TemplateTemplateVersionSpecVmSpecGuestCustomizationConfigSysprepSysprepScript:getTemplatesV2TemplateTemplateVersionSpecVmSpecGuestCustomizationConfigSysprepSysprepScript": {
      "properties": {
        "customKeyValues": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetTemplatesV2TemplateTemplateVersionSpecVmSpecGuestCustomizationConfigSysprepSysprepScriptCustomKeyValue:getTemplatesV2TemplateTemplateVersionSpecVmSpecGuestCustomizationConfigSysprepSysprepScriptCustomKeyValue"
          }
        },
        "unattendXmls": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetTemplatesV2TemplateTemplateVersionSpecVmSpecGuestCustomizationConfigSysprepSysprepScriptUnattendXml:getTemplatesV2TemplateTemplateVersionSpecVmSpecGuestCustomizationConfigSysprepSysprepScriptUnattendXml"
          }
        }
      },
      "type": "object",
      "required": [
        "customKeyValues",
        "unattendXmls"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getTemplatesV2TemplateTemplateVersionSpecVmSpecGuestCustomizationConfigSysprepSysprepScriptCustomKeyValue:getTemplatesV2TemplateTemplateVersionSpecVmSpecGuestCustomizationConfigSysprepSysprepScriptCustomKeyValue": {
      "properties": {
        "keyValuePairs": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetTemplatesV2TemplateTemplateVersionSpecVmSpecGuestCustomizationConfigSysprepSysprepScriptCustomKeyValueKeyValuePair:getTemplatesV2TemplateTemplateVersionSpecVmSpecGuestCustomizationConfigSysprepSysprepScriptCustomKeyValueKeyValuePair"
          }
        }
      },
      "type": "object",
      "required": [
        "keyValuePairs"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getTemplatesV2TemplateTemplateVersionSpecVmSpecGuestCustomizationConfigSysprepSysprepScriptCustomKeyValueKeyValuePair:getTemplatesV2TemplateTemplateVersionSpecVmSpecGuestCustomizationConfigSysprepSysprepScriptCustomKeyValueKeyValuePair": {
      "properties": {
        "name": {
          "type": "string"
        },
        "values": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetTemplatesV2TemplateTemplateVersionSpecVmSpecGuestCustomizationConfigSysprepSysprepScriptCustomKeyValueKeyValuePairValue:getTemplatesV2TemplateTemplateVersionSpecVmSpecGuestCustomizationConfigSysprepSysprepScriptCustomKeyValueKeyValuePairValue"
          }
        }
      },
      "type": "object",
      "required": [
        "name",
        "values"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getTemplatesV2TemplateTemplateVersionSpecVmSpecGuestCustomizationConfigSysprepSysprepScriptCustomKeyValueKeyValuePairValue:getTemplatesV2TemplateTemplateVersionSpecVmSpecGuestCustomizationConfigSysprepSysprepScriptCustomKeyValueKeyValuePairValue": {
      "properties": {
        "boolean": {
          "type": "boolean"
        },
        "integer": {
          "type": "integer"
        },
        "integerLists": {
          "type": "array",
          "items": {
            "type": "integer"
          }
        },
        "mapOfStrings": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetTemplatesV2TemplateTemplateVersionSpecVmSpecGuestCustomizationConfigSysprepSysprepScriptCustomKeyValueKeyValuePairValueMapOfString:getTemplatesV2TemplateTemplateVersionSpecVmSpecGuestCustomizationConfigSysprepSysprepScriptCustomKeyValueKeyValuePairValueMapOfString"
          }
        },
        "object": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          }
        },
        "string": {
          "type": "string"
        },
        "stringLists": {
          "type": "array",
          "items": {
            "type": "string"
          }
        }
      },
      "type": "object",
      "required": [
        "boolean",
        "integer",
        "integerLists",
        "mapOfStrings",
        "object",
        "string",
        "stringLists"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getTemplatesV2TemplateTemplateVersionSpecVmSpecGuestCustomizationConfigSysprepSysprepScriptCustomKeyValueKeyValuePairValueMapOfString:getTemplatesV2TemplateTemplateVersionSpecVmSpecGuestCustomizationConfigSysprepSysprepScriptCustomKeyValueKeyValuePairValueMapOfString": {
      "properties": {
        "map": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          }
        }
      },
      "type": "object",
      "required": [
        "map"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getTemplatesV2TemplateTemplateVersionSpecVmSpecGuestCustomizationConfigSysprepSysprepScriptUnattendXml:getTemplatesV2TemplateTemplateVersionSpecVmSpecGuestCustomizationConfigSysprepSysprepScriptUnattendXml": {
      "properties": {
        "value": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getTemplatesV2TemplateTemplateVersionSpecVmSpecGuestTool:getTemplatesV2TemplateTemplateVersionSpecVmSpecGuestTool": {
      "properties": {
        "availableVersion": {
          "type": "string"
        },
        "capabilities": {
          "type": "array",
          "items": {
            "type": "string"
          }
        },
        "guestOsVersion": {
          "type": "string"
        },
        "isEnabled": {
          "type": "boolean"
        },
        "isInstalled": {
          "type": "boolean"
        },
        "isIsoInserted": {
          "type": "boolean"
        },
        "isReachable": {
          "type": "boolean"
        },
        "isVmMobilityDriversInstalled": {
          "type": "boolean"
        },
        "isVssSnapshotCapable": {
          "type": "boolean"
        },
        "version": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "availableVersion",
        "capabilities",
        "guestOsVersion",
        "isEnabled",
        "isInstalled",
        "isIsoInserted",
        "isReachable",
        "isVmMobilityDriversInstalled",
        "isVssSnapshotCapable",
        "version"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getTemplatesV2TemplateTemplateVersionSpecVmSpecHost:getTemplatesV2TemplateTemplateVersionSpecVmSpecHost": {
      "properties": {
        "extId": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "extId"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getTemplatesV2TemplateTemplateVersionSpecVmSpecLink:getTemplatesV2TemplateTemplateVersionSpecVmSpecLink": {
      "properties": {
        "href": {
          "type": "string"
        },
        "rel": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "href",
        "rel"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getTemplatesV2TemplateTemplateVersionSpecVmSpecNic:getTemplatesV2TemplateTemplateVersionSpecVmSpecNic": {
      "properties": {
        "backingInfos": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetTemplatesV2TemplateTemplateVersionSpecVmSpecNicBackingInfo:getTemplatesV2TemplateTemplateVersionSpecVmSpecNicBackingInfo"
          }
        },
        "extId": {
          "type": "string"
        },
        "links": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetTemplatesV2TemplateTemplateVersionSpecVmSpecNicLink:getTemplatesV2TemplateTemplateVersionSpecVmSpecNicLink"
          }
        },
        "networkInfos": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetTemplatesV2TemplateTemplateVersionSpecVmSpecNicNetworkInfo:getTemplatesV2TemplateTemplateVersionSpecVmSpecNicNetworkInfo"
          }
        },
        "tenantId": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "backingInfos",
        "extId",
        "links",
        "networkInfos",
        "tenantId"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getTemplatesV2TemplateTemplateVersionSpecVmSpecNicBackingInfo:getTemplatesV2TemplateTemplateVersionSpecVmSpecNicBackingInfo": {
      "properties": {
        "isConnected": {
          "type": "boolean"
        },
        "macAddress": {
          "type": "string"
        },
        "model": {
          "type": "string"
        },
        "numQueues": {
          "type": "integer"
        }
      },
      "type": "object",
      "required": [
        "macAddress",
        "model"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getTemplatesV2TemplateTemplateVersionSpecVmSpecNicLink:getTemplatesV2TemplateTemplateVersionSpecVmSpecNicLink": {
      "properties": {
        "href": {
          "type": "string"
        },
        "rel": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "href",
        "rel"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getTemplatesV2TemplateTemplateVersionSpecVmSpecNicNetworkInfo:getTemplatesV2TemplateTemplateVersionSpecVmSpecNicNetworkInfo": {
      "properties": {
        "ipv4Configs": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetTemplatesV2TemplateTemplateVersionSpecVmSpecNicNetworkInfoIpv4Config:getTemplatesV2TemplateTemplateVersionSpecVmSpecNicNetworkInfoIpv4Config"
          }
        },
        "ipv4Infos": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetTemplatesV2TemplateTemplateVersionSpecVmSpecNicNetworkInfoIpv4Info:getTemplatesV2TemplateTemplateVersionSpecVmSpecNicNetworkInfoIpv4Info"
          }
        },
        "networkFunctionChains": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetTemplatesV2TemplateTemplateVersionSpecVmSpecNicNetworkInfoNetworkFunctionChain:getTemplatesV2TemplateTemplateVersionSpecVmSpecNicNetworkInfoNetworkFunctionChain"
          }
        },
        "networkFunctionNicType": {
          "type": "string"
        },
        "nicType": {
          "type": "string"
        },
        "shouldAllowUnknownMacs": {
          "type": "boolean"
        },
        "subnets": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetTemplatesV2TemplateTemplateVersionSpecVmSpecNicNetworkInfoSubnet:getTemplatesV2TemplateTemplateVersionSpecVmSpecNicNetworkInfoSubnet"
          }
        },
        "trunkedVlans": {
          "type": "array",
          "items": {
            "type": "integer"
          }
        },
        "vlanMode": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "ipv4Configs",
        "ipv4Infos",
        "networkFunctionChains",
        "networkFunctionNicType",
        "nicType",
        "shouldAllowUnknownMacs",
        "subnets",
        "trunkedVlans",
        "vlanMode"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getTemplatesV2TemplateTemplateVersionSpecVmSpecNicNetworkInfoIpv4Config:getTemplatesV2TemplateTemplateVersionSpecVmSpecNicNetworkInfoIpv4Config": {
      "properties": {
        "ipAddresses": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetTemplatesV2TemplateTemplateVersionSpecVmSpecNicNetworkInfoIpv4ConfigIpAddress:getTemplatesV2TemplateTemplateVersionSpecVmSpecNicNetworkInfoIpv4ConfigIpAddress"
          }
        },
        "secondaryIpAddressLists": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetTemplatesV2TemplateTemplateVersionSpecVmSpecNicNetworkInfoIpv4ConfigSecondaryIpAddressList:getTemplatesV2TemplateTemplateVersionSpecVmSpecNicNetworkInfoIpv4ConfigSecondaryIpAddressList"
          }
        },
        "shouldAssignIp": {
          "type": "boolean"
        }
      },
      "type": "object",
      "required": [
        "ipAddresses",
        "secondaryIpAddressLists",
        "shouldAssignIp"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getTemplatesV2TemplateTemplateVersionSpecVmSpecNicNetworkInfoIpv4ConfigIpAddress:getTemplatesV2TemplateTemplateVersionSpecVmSpecNicNetworkInfoIpv4ConfigIpAddress": {
      "properties": {
        "prefixLength": {
          "type": "integer"
        },
        "value": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getTemplatesV2TemplateTemplateVersionSpecVmSpecNicNetworkInfoIpv4ConfigSecondaryIpAddressList:getTemplatesV2TemplateTemplateVersionSpecVmSpecNicNetworkInfoIpv4ConfigSecondaryIpAddressList": {
      "properties": {
        "prefixLength": {
          "type": "integer"
        },
        "value": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getTemplatesV2TemplateTemplateVersionSpecVmSpecNicNetworkInfoIpv4Info:getTemplatesV2TemplateTemplateVersionSpecVmSpecNicNetworkInfoIpv4Info": {
      "properties": {
        "learnedIpAddresses": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetTemplatesV2TemplateTemplateVersionSpecVmSpecNicNetworkInfoIpv4InfoLearnedIpAddress:getTemplatesV2TemplateTemplateVersionSpecVmSpecNicNetworkInfoIpv4InfoLearnedIpAddress"
          }
        }
      },
      "type": "object",
      "required": [
        "learnedIpAddresses"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getTemplatesV2TemplateTemplateVersionSpecVmSpecNicNetworkInfoIpv4InfoLearnedIpAddress:getTemplatesV2TemplateTemplateVersionSpecVmSpecNicNetworkInfoIpv4InfoLearnedIpAddress": {
      "properties": {
        "prefixLength": {
          "type": "integer"
        },
        "value": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getTemplatesV2TemplateTemplateVersionSpecVmSpecNicNetworkInfoNetworkFunctionChain:getTemplatesV2TemplateTemplateVersionSpecVmSpecNicNetworkInfoNetworkFunctionChain": {
      "properties": {
        "extId": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "extId"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getTemplatesV2TemplateTemplateVersionSpecVmSpecNicNetworkInfoSubnet:getTemplatesV2TemplateTemplateVersionSpecVmSpecNicNetworkInfoSubnet": {
      "properties": {
        "extId": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "extId"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getTemplatesV2TemplateTemplateVersionSpecVmSpecOwnershipInfo:getTemplatesV2TemplateTemplateVersionSpecVmSpecOwnershipInfo": {
      "properties": {
        "owners": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetTemplatesV2TemplateTemplateVersionSpecVmSpecOwnershipInfoOwner:getTemplatesV2TemplateTemplateVersionSpecVmSpecOwnershipInfoOwner"
          }
        }
      },
      "type": "object",
      "required": [
        "owners"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getTemplatesV2TemplateTemplateVersionSpecVmSpecOwnershipInfoOwner:getTemplatesV2TemplateTemplateVersionSpecVmSpecOwnershipInfoOwner": {
      "properties": {
        "extId": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "extId"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getTemplatesV2TemplateTemplateVersionSpecVmSpecPciDevice:getTemplatesV2TemplateTemplateVersionSpecVmSpecPciDevice": {
      "properties": {
        "assignedDeviceInfos": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetTemplatesV2TemplateTemplateVersionSpecVmSpecPciDeviceAssignedDeviceInfo:getTemplatesV2TemplateTemplateVersionSpecVmSpecPciDeviceAssignedDeviceInfo"
          }
        },
        "backingInfos": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetTemplatesV2TemplateTemplateVersionSpecVmSpecPciDeviceBackingInfo:getTemplatesV2TemplateTemplateVersionSpecVmSpecPciDeviceBackingInfo"
          }
        },
        "extId": {
          "type": "string"
        },
        "links": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetTemplatesV2TemplateTemplateVersionSpecVmSpecPciDeviceLink:getTemplatesV2TemplateTemplateVersionSpecVmSpecPciDeviceLink"
          }
        },
        "tenantId": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "assignedDeviceInfos",
        "backingInfos",
        "extId",
        "links",
        "tenantId"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getTemplatesV2TemplateTemplateVersionSpecVmSpecPciDeviceAssignedDeviceInfo:getTemplatesV2TemplateTemplateVersionSpecVmSpecPciDeviceAssignedDeviceInfo": {
      "properties": {
        "devices": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetTemplatesV2TemplateTemplateVersionSpecVmSpecPciDeviceAssignedDeviceInfoDevice:getTemplatesV2TemplateTemplateVersionSpecVmSpecPciDeviceAssignedDeviceInfoDevice"
          }
        }
      },
      "type": "object",
      "required": [
        "devices"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getTemplatesV2TemplateTemplateVersionSpecVmSpecPciDeviceAssignedDeviceInfoDevice:getTemplatesV2TemplateTemplateVersionSpecVmSpecPciDeviceAssignedDeviceInfoDevice": {
      "properties": {
        "deviceExtId": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "deviceExtId"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getTemplatesV2TemplateTemplateVersionSpecVmSpecPciDeviceBackingInfo:getTemplatesV2TemplateTemplateVersionSpecVmSpecPciDeviceBackingInfo": {
      "properties": {
        "pcieDeviceReferences": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetTemplatesV2TemplateTemplateVersionSpecVmSpecPciDeviceBackingInfoPcieDeviceReference:getTemplatesV2TemplateTemplateVersionSpecVmSpecPciDeviceBackingInfoPcieDeviceReference"
          }
        }
      },
      "type": "object",
      "required": [
        "pcieDeviceReferences"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getTemplatesV2TemplateTemplateVersionSpecVmSpecPciDeviceBackingInfoPcieDeviceReference:getTemplatesV2TemplateTemplateVersionSpecVmSpecPciDeviceBackingInfoPcieDeviceReference": {
      "properties": {
        "deviceExtId": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "deviceExtId"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getTemplatesV2TemplateTemplateVersionSpecVmSpecPciDeviceLink:getTemplatesV2TemplateTemplateVersionSpecVmSpecPciDeviceLink": {
      "properties": {
        "href": {
          "type": "string"
        },
        "rel": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "href",
        "rel"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getTemplatesV2TemplateTemplateVersionSpecVmSpecProtectionPolicyState:getTemplatesV2TemplateTemplateVersionSpecVmSpecProtectionPolicyState": {
      "properties": {
        "policies": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetTemplatesV2TemplateTemplateVersionSpecVmSpecProtectionPolicyStatePolicy:getTemplatesV2TemplateTemplateVersionSpecVmSpecProtectionPolicyStatePolicy"
          }
        }
      },
      "type": "object",
      "required": [
        "policies"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getTemplatesV2TemplateTemplateVersionSpecVmSpecProtectionPolicyStatePolicy:getTemplatesV2TemplateTemplateVersionSpecVmSpecProtectionPolicyStatePolicy": {
      "properties": {
        "extId": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "extId"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getTemplatesV2TemplateTemplateVersionSpecVmSpecSerialPort:getTemplatesV2TemplateTemplateVersionSpecVmSpecSerialPort": {
      "properties": {
        "extId": {
          "type": "string"
        },
        "index": {
          "type": "integer"
        },
        "isConnected": {
          "type": "boolean"
        },
        "links": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetTemplatesV2TemplateTemplateVersionSpecVmSpecSerialPortLink:getTemplatesV2TemplateTemplateVersionSpecVmSpecSerialPortLink"
          }
        },
        "tenantId": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "extId",
        "index",
        "isConnected",
        "links",
        "tenantId"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getTemplatesV2TemplateTemplateVersionSpecVmSpecSerialPortLink:getTemplatesV2TemplateTemplateVersionSpecVmSpecSerialPortLink": {
      "properties": {
        "href": {
          "type": "string"
        },
        "rel": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "href",
        "rel"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getTemplatesV2TemplateTemplateVersionSpecVmSpecSource:getTemplatesV2TemplateTemplateVersionSpecVmSpecSource": {
      "properties": {
        "entityType": {
          "type": "string"
        },
        "extId": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "entityType",
        "extId"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getTemplatesV2TemplateTemplateVersionSpecVmSpecStorageConfig:getTemplatesV2TemplateTemplateVersionSpecVmSpecStorageConfig": {
      "properties": {
        "isFlashModeEnabled": {
          "type": "boolean"
        },
        "qosConfigs": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetTemplatesV2TemplateTemplateVersionSpecVmSpecStorageConfigQosConfig:getTemplatesV2TemplateTemplateVersionSpecVmSpecStorageConfigQosConfig"
          }
        }
      },
      "type": "object",
      "required": [
        "isFlashModeEnabled",
        "qosConfigs"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getTemplatesV2TemplateTemplateVersionSpecVmSpecStorageConfigQosConfig:getTemplatesV2TemplateTemplateVersionSpecVmSpecStorageConfigQosConfig": {
      "properties": {
        "throttledIops": {
          "type": "integer"
        }
      },
      "type": "object",
      "required": [
        "throttledIops"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getTemplatesV2TemplateTemplateVersionSpecVmSpecVtpmConfig:getTemplatesV2TemplateTemplateVersionSpecVmSpecVtpmConfig": {
      "properties": {
        "isVtpmEnabled": {
          "type": "boolean"
        },
        "version": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "isVtpmEnabled",
        "version"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getTemplatesV2TemplateUpdatedBy:getTemplatesV2TemplateUpdatedBy": {
      "properties": {
        "additionalAttributes": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetTemplatesV2TemplateUpdatedByAdditionalAttribute:getTemplatesV2TemplateUpdatedByAdditionalAttribute"
          }
        },
        "creationType": {
          "type": "string"
        },
        "description": {
          "type": "string"
        },
        "displayName": {
          "type": "string"
        },
        "emailId": {
          "type": "string"
        },
        "extId": {
          "type": "string"
        },
        "firstName": {
          "type": "string"
        },
        "idpId": {
          "type": "string"
        },
        "isForceResetPasswordEnabled": {
          "type": "boolean"
        },
        "lastName": {
          "type": "string"
        },
        "locale": {
          "type": "string"
        },
        "middleInitial": {
          "type": "string"
        },
        "password": {
          "type": "string"
        },
        "region": {
          "type": "string"
        },
        "status": {
          "type": "string"
        },
        "userType": {
          "type": "string"
        },
        "username": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "additionalAttributes",
        "creationType",
        "description",
        "displayName",
        "emailId",
        "extId",
        "firstName",
        "idpId",
        "isForceResetPasswordEnabled",
        "lastName",
        "locale",
        "middleInitial",
        "password",
        "region",
        "status",
        "userType",
        "username"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getTemplatesV2TemplateUpdatedByAdditionalAttribute:getTemplatesV2TemplateUpdatedByAdditionalAttribute": {
      "properties": {
        "name": {
          "type": "string"
        },
        "values": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetTemplatesV2TemplateUpdatedByAdditionalAttributeValue:getTemplatesV2TemplateUpdatedByAdditionalAttributeValue"
          }
        }
      },
      "type": "object",
      "required": [
        "name",
        "values"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getTemplatesV2TemplateUpdatedByAdditionalAttributeValue:getTemplatesV2TemplateUpdatedByAdditionalAttributeValue": {
      "properties": {
        "boolean": {
          "type": "boolean"
        },
        "integer": {
          "type": "integer"
        },
        "integerLists": {
          "type": "array",
          "items": {
            "type": "integer"
          }
        },
        "mapOfStrings": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetTemplatesV2TemplateUpdatedByAdditionalAttributeValueMapOfString:getTemplatesV2TemplateUpdatedByAdditionalAttributeValueMapOfString"
          }
        },
        "object": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          }
        },
        "string": {
          "type": "string"
        },
        "stringLists": {
          "type": "array",
          "items": {
            "type": "string"
          }
        }
      },
      "type": "object",
      "required": [
        "boolean",
        "integer",
        "integerLists",
        "mapOfStrings",
        "object",
        "string",
        "stringLists"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getTemplatesV2TemplateUpdatedByAdditionalAttributeValueMapOfString:getTemplatesV2TemplateUpdatedByAdditionalAttributeValueMapOfString": {
      "properties": {
        "map": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          }
        }
      },
      "type": "object",
      "required": [
        "map"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getUserAccessControlPolicyReferenceList:getUserAccessControlPolicyReferenceList": {
      "properties": {
        "kind": {
          "type": "string",
          "description": "- The kind name. (Default depends on the resource you are referencing)\n"
        },
        "name": {
          "type": "string",
          "description": "- (Optional) The name for the user\n"
        },
        "uuid": {
          "type": "string",
          "description": "- (Optional) The UUID for the user.\n"
        }
      },
      "type": "object",
      "required": [
        "kind",
        "name",
        "uuid"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getUserCategory:getUserCategory": {
      "properties": {
        "name": {
          "type": "string",
          "description": "- (Optional) The name for the user\n"
        },
        "value": {
          "type": "string",
          "description": "- value of the key.\n"
        }
      },
      "type": "object",
      "required": [
        "name",
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getUserDirectoryServiceUser:getUserDirectoryServiceUser": {
      "properties": {
        "defaultUserPrincipalName": {
          "type": "string"
        },
        "directoryServiceReferences": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetUserDirectoryServiceUserDirectoryServiceReference:getUserDirectoryServiceUserDirectoryServiceReference"
          },
          "description": "- (Optional) The reference to a directory service. See #reference for to look the supported attributes.\n"
        },
        "userPrincipalName": {
          "type": "string",
          "description": "- (Optional) The UserPrincipalName of the user from the directory service.\n"
        }
      },
      "type": "object",
      "required": [
        "defaultUserPrincipalName",
        "directoryServiceReferences",
        "userPrincipalName"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getUserDirectoryServiceUserDirectoryServiceReference:getUserDirectoryServiceUserDirectoryServiceReference": {
      "properties": {
        "kind": {
          "type": "string",
          "description": "- The kind name. (Default depends on the resource you are referencing)\n"
        },
        "name": {
          "type": "string",
          "description": "- (Optional) The name for the user\n"
        },
        "uuid": {
          "type": "string",
          "description": "- (Optional) The UUID for the user.\n"
        }
      },
      "type": "object",
      "required": [
        "kind",
        "name",
        "uuid"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getUserGroupAccessControlPolicyReferenceList:getUserGroupAccessControlPolicyReferenceList": {
      "properties": {
        "kind": {
          "type": "string",
          "description": "- The kind name. (Default depends on the resource you are referencing)\n"
        },
        "name": {
          "type": "string",
          "description": "- the name(Optional).\n"
        },
        "uuid": {
          "type": "string",
          "description": "- the UUID(Required).\n"
        }
      },
      "type": "object",
      "required": [
        "kind",
        "name",
        "uuid"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getUserGroupCategory:getUserGroupCategory": {
      "properties": {
        "name": {
          "type": "string",
          "description": "- the name(Optional).\n"
        },
        "value": {
          "type": "string",
          "description": "- value of the key.\n"
        }
      },
      "type": "object",
      "required": [
        "name",
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getUserGroupDirectoryServiceUserGroup:getUserGroupDirectoryServiceUserGroup": {
      "properties": {
        "defaultUserPrincipalName": {
          "type": "string"
        },
        "directoryServiceReferences": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetUserGroupDirectoryServiceUserGroupDirectoryServiceReference:getUserGroupDirectoryServiceUserGroupDirectoryServiceReference"
          },
          "description": "- The reference to a directory service. See #reference for to look the supported attributes.\n"
        },
        "distinguishedName": {
          "type": "string",
          "description": "- The Distinguished name for the user group\n"
        }
      },
      "type": "object",
      "required": [
        "defaultUserPrincipalName",
        "directoryServiceReferences",
        "distinguishedName"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getUserGroupDirectoryServiceUserGroupDirectoryServiceReference:getUserGroupDirectoryServiceUserGroupDirectoryServiceReference": {
      "properties": {
        "kind": {
          "type": "string",
          "description": "- The kind name. (Default depends on the resource you are referencing)\n"
        },
        "name": {
          "type": "string",
          "description": "- the name(Optional).\n"
        },
        "uuid": {
          "type": "string",
          "description": "- the UUID(Required).\n"
        }
      },
      "type": "object",
      "required": [
        "kind",
        "name",
        "uuid"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getUserGroupProjectReferenceList:getUserGroupProjectReferenceList": {
      "properties": {
        "kind": {
          "type": "string",
          "description": "- The kind name. (Default depends on the resource you are referencing)\n"
        },
        "name": {
          "type": "string",
          "description": "- the name(Optional).\n"
        },
        "uuid": {
          "type": "string",
          "description": "- the UUID(Required).\n"
        }
      },
      "type": "object",
      "required": [
        "kind",
        "name",
        "uuid"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getUserGroupsEntity:getUserGroupsEntity": {
      "properties": {
        "accessControlPolicyReferenceLists": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetUserGroupsEntityAccessControlPolicyReferenceList:getUserGroupsEntityAccessControlPolicyReferenceList"
          },
          "description": "- List of ACP references. See #reference for more details.\n"
        },
        "apiVersion": {
          "type": "string",
          "description": "The version of the API.\n"
        },
        "categories": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetUserGroupsEntityCategory:getUserGroupsEntityCategory"
          },
          "description": "- The Categories for the user group.\n"
        },
        "directoryServiceUserGroups": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetUserGroupsEntityDirectoryServiceUserGroup:getUserGroupsEntityDirectoryServiceUserGroup"
          },
          "description": "- A Directory Service User Group.\n"
        },
        "displayName": {
          "type": "string",
          "description": "- The display name of the user group.\n"
        },
        "metadata": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          },
          "description": "- The user group kind metadata.\n"
        },
        "ownerReference": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          },
          "description": "- The reference to a user.\n"
        },
        "projectReference": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          },
          "description": "- The reference to a project.\n"
        },
        "projectReferenceLists": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetUserGroupsEntityProjectReferenceList:getUserGroupsEntityProjectReferenceList"
          },
          "description": "- A list of projects the user is part of. See #reference for more details.\n"
        },
        "state": {
          "type": "string",
          "description": "- The state of the entity.\n"
        },
        "userGroupType": {
          "type": "string",
          "description": "- The type of the user group.\n"
        }
      },
      "type": "object",
      "required": [
        "accessControlPolicyReferenceLists",
        "apiVersion",
        "categories",
        "directoryServiceUserGroups",
        "displayName",
        "metadata",
        "ownerReference",
        "projectReferenceLists",
        "state",
        "userGroupType"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getUserGroupsEntityAccessControlPolicyReferenceList:getUserGroupsEntityAccessControlPolicyReferenceList": {
      "properties": {
        "kind": {
          "type": "string"
        },
        "name": {
          "type": "string"
        },
        "uuid": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "kind",
        "name",
        "uuid"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getUserGroupsEntityCategory:getUserGroupsEntityCategory": {
      "properties": {
        "name": {
          "type": "string",
          "description": "- the key name.\n"
        },
        "value": {
          "type": "string",
          "description": "- value of the key.\n"
        }
      },
      "type": "object",
      "required": [
        "name",
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getUserGroupsEntityDirectoryServiceUserGroup:getUserGroupsEntityDirectoryServiceUserGroup": {
      "properties": {
        "defaultUserPrincipalName": {
          "type": "string"
        },
        "directoryServiceReferences": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetUserGroupsEntityDirectoryServiceUserGroupDirectoryServiceReference:getUserGroupsEntityDirectoryServiceUserGroupDirectoryServiceReference"
          },
          "description": "- The reference to a directory service. See #reference for to look the supported attributes.\n"
        },
        "distinguishedName": {
          "type": "string",
          "description": "- The Distinguished name for the user group\n"
        }
      },
      "type": "object",
      "required": [
        "defaultUserPrincipalName",
        "directoryServiceReferences",
        "distinguishedName"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getUserGroupsEntityDirectoryServiceUserGroupDirectoryServiceReference:getUserGroupsEntityDirectoryServiceUserGroupDirectoryServiceReference": {
      "properties": {
        "kind": {
          "type": "string",
          "description": "- The kind name. (Default depends on the resource you are referencing)\n"
        },
        "name": {
          "type": "string",
          "description": "- the name(Optional).\n"
        },
        "uuid": {
          "type": "string",
          "description": "- the UUID(Required).\n\nFor <span pulumi-lang-nodejs=\"`accessControlPolicyReferenceList`\" pulumi-lang-dotnet=\"`AccessControlPolicyReferenceList`\" pulumi-lang-go=\"`accessControlPolicyReferenceList`\" pulumi-lang-python=\"`access_control_policy_reference_list`\" pulumi-lang-yaml=\"`accessControlPolicyReferenceList`\" pulumi-lang-java=\"`accessControlPolicyReferenceList`\">`access_control_policy_reference_list`</span> and <span pulumi-lang-nodejs=\"`projectReferenceList`\" pulumi-lang-dotnet=\"`ProjectReferenceList`\" pulumi-lang-go=\"`projectReferenceList`\" pulumi-lang-python=\"`project_reference_list`\" pulumi-lang-yaml=\"`projectReferenceList`\" pulumi-lang-java=\"`projectReferenceList`\">`project_reference_list`</span> are the same as reference but used as list.\n\nSee detailed information in [Nutanix Users](https://www.nutanix.dev/api_references/prism-central-v3/#/6016c890e9122-get-a-list-of-existing-user-groups).\n"
        }
      },
      "type": "object",
      "required": [
        "kind",
        "name",
        "uuid"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getUserGroupsEntityProjectReferenceList:getUserGroupsEntityProjectReferenceList": {
      "properties": {
        "kind": {
          "type": "string"
        },
        "name": {
          "type": "string"
        },
        "uuid": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "kind",
        "name",
        "uuid"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getUserGroupsMetadata:getUserGroupsMetadata": {
      "properties": {
        "filter": {
          "type": "string"
        },
        "kind": {
          "type": "string"
        },
        "length": {
          "type": "integer"
        },
        "offset": {
          "type": "integer"
        },
        "sortAttribute": {
          "type": "string"
        },
        "sortOrder": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "filter",
        "kind",
        "length",
        "offset",
        "sortAttribute",
        "sortOrder"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getUserGroupsV2UserGroup:getUserGroupsV2UserGroup": {
      "properties": {
        "createdBy": {
          "type": "string",
          "description": "- User or Service who created the User Group.\n"
        },
        "createdTime": {
          "type": "string",
          "description": "- Creation time of the User Group.\n"
        },
        "distinguishedName": {
          "type": "string",
          "description": "- Identifier for the User Group in the form of a distinguished name.\n"
        },
        "extId": {
          "type": "string",
          "description": "The External Identifier of the User Group.\n"
        },
        "groupType": {
          "type": "string",
          "description": "- Type of the User Group. LDAP (User Group belonging to a Directory Service (Open LDAP/AD)),  SAML (User Group belonging to a SAML IDP.)\n"
        },
        "idpId": {
          "type": "string",
          "description": "- Identifier of the IDP for the User Group.\n"
        },
        "lastUpdatedTime": {
          "type": "string",
          "description": "- Last updated time of the User Group.\n"
        },
        "name": {
          "type": "string",
          "description": "- Common Name of the User Group.\n"
        }
      },
      "type": "object",
      "required": [
        "createdBy",
        "createdTime",
        "distinguishedName",
        "extId",
        "groupType",
        "idpId",
        "lastUpdatedTime",
        "name"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getUserIdentityProviderUser:getUserIdentityProviderUser": {
      "properties": {
        "identityProviderReferences": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetUserIdentityProviderUserIdentityProviderReference:getUserIdentityProviderUserIdentityProviderReference"
          },
          "description": "- (Optional) The reference to a identity provider. See #reference for to look the supported attributes.\n"
        },
        "username": {
          "type": "string",
          "description": "- (Optional) The username from identity provider. Name ID for SAML Identity Provider.\n"
        }
      },
      "type": "object",
      "required": [
        "identityProviderReferences",
        "username"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getUserIdentityProviderUserIdentityProviderReference:getUserIdentityProviderUserIdentityProviderReference": {
      "properties": {
        "kind": {
          "type": "string",
          "description": "- The kind name. (Default depends on the resource you are referencing)\n"
        },
        "name": {
          "type": "string",
          "description": "- (Optional) The name for the user\n"
        },
        "uuid": {
          "type": "string",
          "description": "- (Optional) The UUID for the user.\n"
        }
      },
      "type": "object",
      "required": [
        "kind",
        "name",
        "uuid"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getUserKeyV2KeyDetail:getUserKeyV2KeyDetail": {
      "properties": {
        "apiKeyDetails": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetUserKeyV2KeyDetailApiKeyDetail:getUserKeyV2KeyDetailApiKeyDetail"
          }
        },
        "objectKeyDetails": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetUserKeyV2KeyDetailObjectKeyDetail:getUserKeyV2KeyDetailObjectKeyDetail"
          }
        }
      },
      "type": "object",
      "required": [
        "apiKeyDetails",
        "objectKeyDetails"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getUserKeyV2KeyDetailApiKeyDetail:getUserKeyV2KeyDetailApiKeyDetail": {
      "properties": {
        "apiKey": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "apiKey"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getUserKeyV2KeyDetailObjectKeyDetail:getUserKeyV2KeyDetailObjectKeyDetail": {
      "properties": {
        "accessKey": {
          "type": "string"
        },
        "secretKey": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "accessKey",
        "secretKey"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getUserKeyV2Link:getUserKeyV2Link": {
      "properties": {
        "href": {
          "type": "string"
        },
        "rel": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "href",
        "rel"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getUserKeysV2Key:getUserKeysV2Key": {
      "properties": {
        "assignedTo": {
          "type": "string",
          "description": "- External client to whom the given key is allocated.\n"
        },
        "createdBy": {
          "type": "string",
          "description": "- User or service who created the key.\n"
        },
        "createdTime": {
          "type": "string",
          "description": "- The creation time of the key.\n"
        },
        "creationType": {
          "type": "string",
          "description": "- The creation mechanism of this entity.\n"
        },
        "description": {
          "type": "string",
          "description": "- Brief description of the key.\n"
        },
        "expiryTime": {
          "type": "string",
          "description": "- The time when the key will expire.\n"
        },
        "extId": {
          "type": "string",
          "description": "The External Identifier of the User Group.\n"
        },
        "keyDetails": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetUserKeysV2KeyKeyDetail:getUserKeysV2KeyKeyDetail"
          },
          "description": "- Details specific to type of the key.\n"
        },
        "keyType": {
          "type": "string",
          "description": "- The type of key.\n"
        },
        "lastUpdatedBy": {
          "type": "string",
          "description": "- User who updated the key.\n"
        },
        "lastUpdatedTime": {
          "type": "string",
          "description": "- The time when the key was updated.\n"
        },
        "lastUsedTime": {
          "type": "string",
          "description": "- The time when the key was last used.\n"
        },
        "links": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetUserKeysV2KeyLink:getUserKeysV2KeyLink"
          },
          "description": "- A HATEOAS style link for the response. Each link contains a user-friendly name identifying the link and an address for retrieving the particular resource.\n"
        },
        "name": {
          "type": "string",
          "description": "- Identifier for the key in the form of a name.\n"
        },
        "status": {
          "type": "string",
          "description": "- The status of the key.\n"
        },
        "tenantId": {
          "type": "string",
          "description": "A globally unique identifier that represents the tenant that owns this entity. The system automatically assigns it, and it and is immutable from an API consumer perspective (some use cases may cause this Id to change - For instance, a use case may require the transfer of ownership of the entity, but these cases are handled automatically on the server).\n"
        },
        "userExtId": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "assignedTo",
        "createdBy",
        "createdTime",
        "creationType",
        "expiryTime",
        "extId",
        "keyDetails",
        "keyType",
        "lastUpdatedBy",
        "lastUpdatedTime",
        "lastUsedTime",
        "links",
        "name",
        "status",
        "tenantId",
        "userExtId"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getUserKeysV2KeyKeyDetail:getUserKeysV2KeyKeyDetail": {
      "properties": {
        "apiKeyDetails": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetUserKeysV2KeyKeyDetailApiKeyDetail:getUserKeysV2KeyKeyDetailApiKeyDetail"
          }
        },
        "objectKeyDetails": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetUserKeysV2KeyKeyDetailObjectKeyDetail:getUserKeysV2KeyKeyDetailObjectKeyDetail"
          }
        }
      },
      "type": "object",
      "required": [
        "apiKeyDetails",
        "objectKeyDetails"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getUserKeysV2KeyKeyDetailApiKeyDetail:getUserKeysV2KeyKeyDetailApiKeyDetail": {
      "properties": {
        "apiKey": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "apiKey"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getUserKeysV2KeyKeyDetailObjectKeyDetail:getUserKeysV2KeyKeyDetailObjectKeyDetail": {
      "properties": {
        "accessKey": {
          "type": "string"
        },
        "secretKey": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "accessKey",
        "secretKey"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getUserKeysV2KeyLink:getUserKeysV2KeyLink": {
      "properties": {
        "href": {
          "type": "string"
        },
        "rel": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "href",
        "rel"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getUserProjectReferenceList:getUserProjectReferenceList": {
      "properties": {
        "kind": {
          "type": "string",
          "description": "- The kind name. (Default depends on the resource you are referencing)\n"
        },
        "name": {
          "type": "string",
          "description": "- (Optional) The name for the user\n"
        },
        "uuid": {
          "type": "string",
          "description": "- (Optional) The UUID for the user.\n"
        }
      },
      "type": "object",
      "required": [
        "kind",
        "name",
        "uuid"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getUserV2AdditionalAttribute:getUserV2AdditionalAttribute": {
      "properties": {
        "name": {
          "type": "string",
          "description": "- The URL at which the entity described by the link can be accessed.\n"
        },
        "value": {
          "type": "integer",
          "description": "- A name that identifies the relationship of the link to the object that is returned by the URL. The unique value of \"self\" identifies the URL for the object.\n"
        }
      },
      "type": "object",
      "required": [
        "name",
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getUserV2BucketsAccessKey:getUserV2BucketsAccessKey": {
      "properties": {
        "accessKeyName": {
          "type": "string",
          "description": "- Name of the Bucket Access Key.\n"
        },
        "createdTime": {
          "type": "string",
          "description": "- Creation time for the Bucket Access Key.\n"
        },
        "extId": {
          "type": "string",
          "description": "- A globally unique identifier of an instance that is suitable for external consumption.\n"
        },
        "links": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetUserV2BucketsAccessKeyLink:getUserV2BucketsAccessKeyLink"
          },
          "description": "- A HATEOAS style link for the response. Each link contains a user-friendly name identifying the link and an address for retrieving the particular resource.\n"
        },
        "secretAccessKey": {
          "type": "string",
          "description": "- Secret Access Key, it will be returned only during Bucket Access Key creation.\n"
        },
        "userId": {
          "type": "string",
          "description": "- User Identifier who owns the Bucket Access Key.\n"
        }
      },
      "type": "object",
      "required": [
        "accessKeyName",
        "createdTime",
        "extId",
        "links",
        "secretAccessKey",
        "userId"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getUserV2BucketsAccessKeyLink:getUserV2BucketsAccessKeyLink": {
      "properties": {
        "href": {
          "type": "string",
          "description": "- The URL at which the entity described by the link can be accessed.\n"
        },
        "rel": {
          "type": "string",
          "description": "- A name that identifies the relationship of the link to the object that is returned by the URL. The unique value of \"self\" identifies the URL for the object.\n"
        }
      },
      "type": "object",
      "required": [
        "href",
        "rel"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getUserV2Link:getUserV2Link": {
      "properties": {
        "href": {
          "type": "string",
          "description": "- The URL at which the entity described by the link can be accessed.\n"
        },
        "rel": {
          "type": "string",
          "description": "- A name that identifies the relationship of the link to the object that is returned by the URL. The unique value of \"self\" identifies the URL for the object.\n"
        }
      },
      "type": "object",
      "required": [
        "href",
        "rel"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getUsersEntity:getUsersEntity": {
      "properties": {
        "accessControlPolicyReferenceLists": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetUsersEntityAccessControlPolicyReferenceList:getUsersEntityAccessControlPolicyReferenceList"
          },
          "description": "- List of ACP references. See #reference for more details.\n"
        },
        "apiVersion": {
          "type": "string",
          "description": "The version of the API.\n"
        },
        "categories": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetUsersEntityCategory:getUsersEntityCategory"
          },
          "description": "- (Optional) Categories for the user.\n"
        },
        "directoryServiceUsers": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetUsersEntityDirectoryServiceUser:getUsersEntityDirectoryServiceUser"
          },
          "description": "- (Optional) The directory service user configuration. See below for more information.\n"
        },
        "displayName": {
          "type": "string",
          "description": "- The display name of the user (common name) provided by the directory service.\n"
        },
        "identityProviderUsers": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetUsersEntityIdentityProviderUser:getUsersEntityIdentityProviderUser"
          },
          "description": "- (Optional) (Optional) The identity provider user configuration. See below for more information.\n"
        },
        "metadata": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          },
          "description": "- The user kind metadata.\n"
        },
        "name": {
          "type": "string",
          "description": "- the name(Optional).\n"
        },
        "ownerReference": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          },
          "description": "- (Optional) The reference to a user.\n"
        },
        "projectReference": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          },
          "description": "- (Optional) The reference to a project.\n"
        },
        "projectReferenceLists": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetUsersEntityProjectReferenceList:getUsersEntityProjectReferenceList"
          },
          "description": "- A list of projects the user is part of. See #reference for more details.\n"
        },
        "state": {
          "type": "string",
          "description": "- The state of the entity.\n"
        },
        "userType": {
          "type": "string",
          "description": "- The name of the user.\n"
        }
      },
      "type": "object",
      "required": [
        "accessControlPolicyReferenceLists",
        "apiVersion",
        "categories",
        "directoryServiceUsers",
        "displayName",
        "identityProviderUsers",
        "metadata",
        "name",
        "ownerReference",
        "projectReferenceLists",
        "state",
        "userType"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getUsersEntityAccessControlPolicyReferenceList:getUsersEntityAccessControlPolicyReferenceList": {
      "properties": {
        "kind": {
          "type": "string",
          "description": "- The kind name. (Default depends on the resource you are referencing)\n"
        },
        "name": {
          "type": "string",
          "description": "- the name(Optional).\n"
        },
        "uuid": {
          "type": "string",
          "description": "- the UUID(Required).\n"
        }
      },
      "type": "object",
      "required": [
        "kind",
        "name",
        "uuid"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getUsersEntityCategory:getUsersEntityCategory": {
      "properties": {
        "name": {
          "type": "string",
          "description": "- the name(Optional).\n"
        },
        "value": {
          "type": "string",
          "description": "- value of the key.\n"
        }
      },
      "type": "object",
      "required": [
        "name",
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getUsersEntityDirectoryServiceUser:getUsersEntityDirectoryServiceUser": {
      "properties": {
        "defaultUserPrincipalName": {
          "type": "string"
        },
        "directoryServiceReferences": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetUsersEntityDirectoryServiceUserDirectoryServiceReference:getUsersEntityDirectoryServiceUserDirectoryServiceReference"
          },
          "description": "- (Optional) The reference to a directory service. See #reference for to look the supported attributes.\n"
        },
        "userPrincipalName": {
          "type": "string",
          "description": "- (Optional) The UserPrincipalName of the user from the directory service.\n"
        }
      },
      "type": "object",
      "required": [
        "defaultUserPrincipalName",
        "directoryServiceReferences",
        "userPrincipalName"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getUsersEntityDirectoryServiceUserDirectoryServiceReference:getUsersEntityDirectoryServiceUserDirectoryServiceReference": {
      "properties": {
        "kind": {
          "type": "string",
          "description": "- The kind name. (Default depends on the resource you are referencing)\n"
        },
        "name": {
          "type": "string",
          "description": "- the name(Optional).\n"
        },
        "uuid": {
          "type": "string",
          "description": "- the UUID(Required).\n"
        }
      },
      "type": "object",
      "required": [
        "kind",
        "name",
        "uuid"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getUsersEntityIdentityProviderUser:getUsersEntityIdentityProviderUser": {
      "properties": {
        "identityProviderReferences": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetUsersEntityIdentityProviderUserIdentityProviderReference:getUsersEntityIdentityProviderUserIdentityProviderReference"
          },
          "description": "- (Optional) The reference to a identity provider. See #reference for to look the supported attributes.\n"
        },
        "username": {
          "type": "string",
          "description": "- (Optional) The username from identity provider. Name ID for SAML Identity Provider.\n"
        }
      },
      "type": "object",
      "required": [
        "identityProviderReferences",
        "username"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getUsersEntityIdentityProviderUserIdentityProviderReference:getUsersEntityIdentityProviderUserIdentityProviderReference": {
      "properties": {
        "kind": {
          "type": "string",
          "description": "- The kind name. (Default depends on the resource you are referencing)\n"
        },
        "name": {
          "type": "string",
          "description": "- the name(Optional).\n"
        },
        "uuid": {
          "type": "string",
          "description": "- the UUID(Required).\n"
        }
      },
      "type": "object",
      "required": [
        "kind",
        "name",
        "uuid"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getUsersEntityProjectReferenceList:getUsersEntityProjectReferenceList": {
      "properties": {
        "kind": {
          "type": "string",
          "description": "- The kind name. (Default depends on the resource you are referencing)\n"
        },
        "name": {
          "type": "string",
          "description": "- the name(Optional).\n"
        },
        "uuid": {
          "type": "string",
          "description": "- the UUID(Required).\n"
        }
      },
      "type": "object",
      "required": [
        "kind",
        "name",
        "uuid"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getUsersMetadata:getUsersMetadata": {
      "properties": {
        "filter": {
          "type": "string"
        },
        "kind": {
          "type": "string",
          "description": "- The kind name. (Default depends on the resource you are referencing)\n"
        },
        "length": {
          "type": "integer"
        },
        "offset": {
          "type": "integer"
        },
        "sortAttribute": {
          "type": "string"
        },
        "sortOrder": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "filter",
        "kind",
        "length",
        "offset",
        "sortAttribute",
        "sortOrder"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getUsersV2User:getUsersV2User": {
      "properties": {
        "additionalAttributes": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetUsersV2UserAdditionalAttribute:getUsersV2UserAdditionalAttribute"
          },
          "description": "-  Any additional attribute for the User.\n"
        },
        "bucketsAccessKeys": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetUsersV2UserBucketsAccessKey:getUsersV2UserBucketsAccessKey"
          },
          "description": "- Bucket Access Keys for the User.\n"
        },
        "createdBy": {
          "type": "string",
          "description": "- User or Service who created the User.\n"
        },
        "createdTime": {
          "type": "string",
          "description": "- Creation time for the Bucket Access Key.\n"
        },
        "description": {
          "type": "string",
          "description": "- Description of the user.\n"
        },
        "displayName": {
          "type": "string",
          "description": "- Display name for the User.\n"
        },
        "emailId": {
          "type": "string",
          "description": "- Email Id for the User.\n"
        },
        "extId": {
          "type": "string",
          "description": "- A globally unique identifier of an instance that is suitable for external consumption.\n"
        },
        "firstName": {
          "type": "string",
          "description": "- First name for the User.\n"
        },
        "idpId": {
          "type": "string",
          "description": "- Identifier of the IDP for the User.\n"
        },
        "isForceResetPassword": {
          "type": "boolean",
          "description": "- Flag to force the User to reset password.\n"
        },
        "lastLoginTime": {
          "type": "string",
          "description": "- Last successful logged in time for the User.\n"
        },
        "lastName": {
          "type": "string",
          "description": "- Last name for the User.\n"
        },
        "lastUpdatedBy": {
          "type": "string",
          "description": "- Last updated by this User ID.\n"
        },
        "lastUpdatedTime": {
          "type": "string",
          "description": "- Last updated time of the User.\n"
        },
        "links": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetUsersV2UserLink:getUsersV2UserLink"
          },
          "description": "- A HATEOAS style link for the response. Each link contains a user-friendly name identifying the link and an address for retrieving the particular resource.\n"
        },
        "locale": {
          "type": "string",
          "description": "- Default locale for the User.\n"
        },
        "middleInitial": {
          "type": "string",
          "description": "- Middle name for the User.\n"
        },
        "region": {
          "type": "string",
          "description": "- Default Region for the User.\n"
        },
        "status": {
          "type": "string",
          "description": "- Status of the User. `ACTIVE`: Denotes that the local User is active. `INACTIVE`: Denotes that the local User is inactive and needs to be reactivated.\n"
        },
        "tenantId": {
          "type": "string",
          "description": "- A globally unique identifier that represents the tenant that owns this entity. The system automatically assigns it, and it and is immutable from an API consumer perspective (some use cases may cause this Id to change - For instance, a use case may require the transfer of ownership of the entity, but these cases are handled automatically on the server).\n"
        },
        "userType": {
          "type": "string",
          "description": "- Enum: `$UNKNOWN` `$REDACTED` `LOCAL` `SAML` `LDAP` `EXTERNAL`\nType of the User.\n"
        },
        "username": {
          "type": "string",
          "description": "- Identifier for the User in the form an email address.\n"
        }
      },
      "type": "object",
      "required": [
        "additionalAttributes",
        "bucketsAccessKeys",
        "createdBy",
        "createdTime",
        "description",
        "displayName",
        "emailId",
        "extId",
        "firstName",
        "idpId",
        "isForceResetPassword",
        "lastLoginTime",
        "lastName",
        "lastUpdatedBy",
        "lastUpdatedTime",
        "links",
        "locale",
        "middleInitial",
        "region",
        "status",
        "tenantId",
        "userType",
        "username"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getUsersV2UserAdditionalAttribute:getUsersV2UserAdditionalAttribute": {
      "properties": {
        "name": {
          "type": "string",
          "description": "- The URL at which the entity described by the link can be accessed.\n"
        },
        "value": {
          "type": "integer",
          "description": "- A name that identifies the relationship of the link to the object that is returned by the URL. The unique value of \"self\" identifies the URL for the object.\n"
        }
      },
      "type": "object",
      "required": [
        "name",
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getUsersV2UserBucketsAccessKey:getUsersV2UserBucketsAccessKey": {
      "properties": {
        "accessKeyName": {
          "type": "string",
          "description": "- Name of the Bucket Access Key.\n"
        },
        "createdTime": {
          "type": "string",
          "description": "- Creation time for the Bucket Access Key.\n"
        },
        "extId": {
          "type": "string",
          "description": "- A globally unique identifier of an instance that is suitable for external consumption.\n"
        },
        "links": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetUsersV2UserBucketsAccessKeyLink:getUsersV2UserBucketsAccessKeyLink"
          },
          "description": "- A HATEOAS style link for the response. Each link contains a user-friendly name identifying the link and an address for retrieving the particular resource.\n"
        },
        "secretAccessKey": {
          "type": "string",
          "description": "- Secret Access Key, it will be returned only during Bucket Access Key creation.\n"
        },
        "userId": {
          "type": "string",
          "description": "- User Identifier who owns the Bucket Access Key.\n"
        }
      },
      "type": "object",
      "required": [
        "accessKeyName",
        "createdTime",
        "extId",
        "links",
        "secretAccessKey",
        "userId"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getUsersV2UserBucketsAccessKeyLink:getUsersV2UserBucketsAccessKeyLink": {
      "properties": {
        "href": {
          "type": "string",
          "description": "- The URL at which the entity described by the link can be accessed.\n"
        },
        "rel": {
          "type": "string",
          "description": "- A name that identifies the relationship of the link to the object that is returned by the URL. The unique value of \"self\" identifies the URL for the object.\n"
        }
      },
      "type": "object",
      "required": [
        "href",
        "rel"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getUsersV2UserLink:getUsersV2UserLink": {
      "properties": {
        "href": {
          "type": "string",
          "description": "- The URL at which the entity described by the link can be accessed.\n"
        },
        "rel": {
          "type": "string",
          "description": "- A name that identifies the relationship of the link to the object that is returned by the URL. The unique value of \"self\" identifies the URL for the object.\n"
        }
      },
      "type": "object",
      "required": [
        "href",
        "rel"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getVirtualMachineCategory:getVirtualMachineCategory": {
      "properties": {
        "name": {
          "type": "string",
          "description": "- the name.\n"
        },
        "value": {
          "type": "string",
          "description": "- value of the key.\n"
        }
      },
      "type": "object",
      "required": [
        "name",
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getVirtualMachineDiskList:getVirtualMachineDiskList": {
      "properties": {
        "dataSourceReference": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          },
          "description": "Reference to a data source.\n"
        },
        "deviceProperties": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetVirtualMachineDiskListDeviceProperty:getVirtualMachineDiskListDeviceProperty"
          },
          "description": "Properties to a device.\n"
        },
        "diskSizeBytes": {
          "type": "integer",
          "description": "Size of the disk in Bytes.\n"
        },
        "diskSizeMib": {
          "type": "integer",
          "description": "Size of the disk in MiB. Must match the size specified in 'disk_size_bytes' - rounded up to the nearest MiB - when that field is present.\n"
        },
        "storageConfigs": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetVirtualMachineDiskListStorageConfig:getVirtualMachineDiskListStorageConfig"
          }
        },
        "uuid": {
          "type": "string",
          "description": "- the UUID.\n"
        },
        "volumeGroupReference": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          },
          "description": "Reference to a volume group.\n"
        }
      },
      "type": "object",
      "required": [
        "dataSourceReference",
        "deviceProperties",
        "diskSizeBytes",
        "diskSizeMib",
        "storageConfigs",
        "uuid",
        "volumeGroupReference"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getVirtualMachineDiskListDeviceProperty:getVirtualMachineDiskListDeviceProperty": {
      "properties": {
        "deviceType": {
          "type": "string",
          "description": "- A Disk type (default: DISK).\n"
        },
        "diskAddress": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          },
          "description": "- Address of disk to boot from.\n"
        }
      },
      "type": "object",
      "required": [
        "deviceType",
        "diskAddress"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getVirtualMachineDiskListStorageConfig:getVirtualMachineDiskListStorageConfig": {
      "properties": {
        "flashMode": {
          "type": "string",
          "description": "- State of the storage policy to pin virtual disks to the hot tier. When specified as a VM attribute, the storage policy applies to all virtual disks of the VM unless overridden by the same attribute specified for a virtual disk.\n"
        },
        "storageContainerReferences": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetVirtualMachineDiskListStorageConfigStorageContainerReference:getVirtualMachineDiskListStorageConfigStorageContainerReference"
          },
          "description": "- Reference to a kind. Either one of (kind, uuid) or url needs to be specified.\n* `storage_container_reference.#.url`: - GET query on the URL will provide information on the source.\n* `storage_container_reference.#.kind`: - kind of the container reference\n* `storage_container_reference.#.name`: - name of the container reference\n* `storage_container_reference.#.uuid`: - uiid of the container reference\n"
        }
      },
      "type": "object",
      "required": [
        "flashMode",
        "storageContainerReferences"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getVirtualMachineDiskListStorageConfigStorageContainerReference:getVirtualMachineDiskListStorageConfigStorageContainerReference": {
      "properties": {
        "kind": {
          "type": "string",
          "description": "- The kind name (Default value: project).\n"
        },
        "name": {
          "type": "string",
          "description": "- the name.\n"
        },
        "url": {
          "type": "string"
        },
        "uuid": {
          "type": "string",
          "description": "- the UUID.\n"
        }
      },
      "type": "object",
      "required": [
        "kind",
        "name",
        "url",
        "uuid"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getVirtualMachineGpuList:getVirtualMachineGpuList": {
      "properties": {
        "deviceId": {
          "type": "integer",
          "description": "- (Computed) The device ID of the GPU.\n"
        },
        "fraction": {
          "type": "integer",
          "description": "Fraction of the physical GPU assigned.\n"
        },
        "frameBufferSizeMib": {
          "type": "integer",
          "description": "- GPU frame buffer size in MiB.\n"
        },
        "guestDriverVersion": {
          "type": "string",
          "description": "- Last determined guest driver version.\n"
        },
        "mode": {
          "type": "string",
          "description": "- The mode of this GPU.\n"
        },
        "name": {
          "type": "string",
          "description": "- the name.\n"
        },
        "numVirtualDisplayHeads": {
          "type": "integer",
          "description": "- Number of supported virtual display heads.\n"
        },
        "pciAddress": {
          "type": "string",
          "description": "GPU {segment:bus:device:function} (sbdf) address if assigned.\n"
        },
        "uuid": {
          "type": "string",
          "description": "- the UUID.\n"
        },
        "vendor": {
          "type": "string",
          "description": "- The vendor of the GPU.\n* `UUID`: - UUID of the GPU.\n"
        }
      },
      "type": "object",
      "required": [
        "deviceId",
        "fraction",
        "frameBufferSizeMib",
        "guestDriverVersion",
        "mode",
        "name",
        "numVirtualDisplayHeads",
        "pciAddress",
        "uuid",
        "vendor"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getVirtualMachineMessageList:getVirtualMachineMessageList": {
      "properties": {
        "details": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          }
        },
        "message": {
          "type": "string"
        },
        "reason": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "details",
        "message",
        "reason"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getVirtualMachineNicList:getVirtualMachineNicList": {
      "properties": {
        "floatingIp": {
          "type": "string",
          "description": "-  The Floating IP associated with the vnic.\n"
        },
        "ipEndpointLists": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetVirtualMachineNicListIpEndpointList:getVirtualMachineNicListIpEndpointList"
          },
          "description": "- IP endpoints for the adapter. Currently, IPv4 addresses are supported.\n"
        },
        "isConnected": {
          "type": "string",
          "description": "- Indicates whether the serial port connection is connected or not (<span pulumi-lang-nodejs=\"`true`\" pulumi-lang-dotnet=\"`True`\" pulumi-lang-go=\"`true`\" pulumi-lang-python=\"`true`\" pulumi-lang-yaml=\"`true`\" pulumi-lang-java=\"`true`\">`true`</span> or <span pulumi-lang-nodejs=\"`false`\" pulumi-lang-dotnet=\"`False`\" pulumi-lang-go=\"`false`\" pulumi-lang-python=\"`false`\" pulumi-lang-yaml=\"`false`\" pulumi-lang-java=\"`false`\">`false`</span>).\n"
        },
        "macAddress": {
          "type": "string",
          "description": "- The MAC address for the adapter.\n"
        },
        "model": {
          "type": "string",
          "description": "- The model of this NIC. (Options : VIRTIO , E1000).\n"
        },
        "networkFunctionChainReference": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          },
          "description": "- The reference to a network_function_chain.\n"
        },
        "networkFunctionNicType": {
          "type": "string",
          "description": "- The type of this Network function NIC. Defaults to INGRESS. (Options : INGRESS , EGRESS , TAP).\n"
        },
        "nicType": {
          "type": "string",
          "description": "- The type of this NIC. Defaults to NORMAL_NIC. (Options : NORMAL_NIC , DIRECT_NIC , NETWORK_FUNCTION_NIC).\n"
        },
        "numQueues": {
          "type": "integer",
          "description": "- The number of tx/rx queue pairs for this NIC.\n"
        },
        "subnetName": {
          "type": "string",
          "description": "- The name of the subnet reference to.\n"
        },
        "subnetUuid": {
          "type": "string",
          "description": "- The reference to a subnet.\n"
        },
        "uuid": {
          "type": "string",
          "description": "- the UUID.\n"
        }
      },
      "type": "object",
      "required": [
        "floatingIp",
        "ipEndpointLists",
        "isConnected",
        "macAddress",
        "model",
        "networkFunctionChainReference",
        "networkFunctionNicType",
        "nicType",
        "numQueues",
        "subnetName",
        "subnetUuid",
        "uuid"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getVirtualMachineNicListIpEndpointList:getVirtualMachineNicListIpEndpointList": {
      "properties": {
        "ip": {
          "type": "string",
          "description": "- Address string.\n"
        },
        "type": {
          "type": "string",
          "description": "- Address type. It can only be \"ASSIGNED\" in the spec. If no type is specified in the spec, the default type is set to \"ASSIGNED\". (Options : ASSIGNED , LEARNED)\n"
        }
      },
      "type": "object",
      "required": [
        "ip",
        "type"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getVirtualMachineSerialPortList:getVirtualMachineSerialPortList": {
      "properties": {
        "index": {
          "type": "integer",
          "description": "- Index of the serial port (int).\n"
        },
        "isConnected": {
          "type": "boolean",
          "description": "- Indicates whether the serial port connection is connected or not (<span pulumi-lang-nodejs=\"`true`\" pulumi-lang-dotnet=\"`True`\" pulumi-lang-go=\"`true`\" pulumi-lang-python=\"`true`\" pulumi-lang-yaml=\"`true`\" pulumi-lang-java=\"`true`\">`true`</span> or <span pulumi-lang-nodejs=\"`false`\" pulumi-lang-dotnet=\"`False`\" pulumi-lang-go=\"`false`\" pulumi-lang-python=\"`false`\" pulumi-lang-yaml=\"`false`\" pulumi-lang-java=\"`false`\">`false`</span>).\n"
        }
      },
      "type": "object",
      "required": [
        "index",
        "isConnected"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getVirtualMachineV2ApcConfig:getVirtualMachineV2ApcConfig": {
      "properties": {
        "cpuModels": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetVirtualMachineV2ApcConfigCpuModel:getVirtualMachineV2ApcConfigCpuModel"
          },
          "description": "CPU model associated with the VM if Advanced Processor Compatibility(APC) is enabled. If APC is enabled and no CPU model is explicitly set, a default baseline CPU model is picked by the system. See the APC documentation for more information\n"
        },
        "isApcEnabled": {
          "type": "boolean",
          "description": "If enabled, the selected CPU model will be retained across live and cold migrations of the VM.\n"
        }
      },
      "type": "object",
      "required": [
        "cpuModels",
        "isApcEnabled"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getVirtualMachineV2ApcConfigCpuModel:getVirtualMachineV2ApcConfigCpuModel": {
      "properties": {
        "extId": {
          "type": "string",
          "description": "Represents virtual machine UUID\n"
        },
        "name": {
          "type": "string",
          "description": "Name of the CPU model associated with the VM.\n"
        }
      },
      "type": "object",
      "required": [
        "extId",
        "name"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getVirtualMachineV2AvailabilityZone:getVirtualMachineV2AvailabilityZone": {
      "properties": {
        "extId": {
          "type": "string",
          "description": "Represents virtual machine UUID\n"
        }
      },
      "type": "object",
      "required": [
        "extId"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getVirtualMachineV2BootConfig:getVirtualMachineV2BootConfig": {
      "properties": {
        "legacyBoots": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetVirtualMachineV2BootConfigLegacyBoot:getVirtualMachineV2BootConfigLegacyBoot"
          },
          "description": "LegacyBoot config Object\n"
        },
        "uefiBoots": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetVirtualMachineV2BootConfigUefiBoot:getVirtualMachineV2BootConfigUefiBoot"
          },
          "description": "UefiBoot config Object\n"
        }
      },
      "type": "object",
      "required": [
        "legacyBoots",
        "uefiBoots"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getVirtualMachineV2BootConfigLegacyBoot:getVirtualMachineV2BootConfigLegacyBoot": {
      "properties": {
        "bootDevices": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetVirtualMachineV2BootConfigLegacyBootBootDevice:getVirtualMachineV2BootConfigLegacyBootBootDevice"
          },
          "description": "Boot Device object\n"
        },
        "bootOrders": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "Indicates the order of device types in which the VM should try to boot from. If the boot device order is not provided the system will decide an appropriate boot device order.\n"
        }
      },
      "type": "object",
      "required": [
        "bootDevices",
        "bootOrders"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getVirtualMachineV2BootConfigLegacyBootBootDevice:getVirtualMachineV2BootConfigLegacyBootBootDevice": {
      "properties": {
        "bootDeviceDisks": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetVirtualMachineV2BootConfigLegacyBootBootDeviceBootDeviceDisk:getVirtualMachineV2BootConfigLegacyBootBootDeviceBootDeviceDisk"
          },
          "description": "Disk address.\n"
        },
        "bootDeviceNics": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetVirtualMachineV2BootConfigLegacyBootBootDeviceBootDeviceNic:getVirtualMachineV2BootConfigLegacyBootBootDeviceBootDeviceNic"
          },
          "description": "Disk Nic address.\n"
        }
      },
      "type": "object",
      "required": [
        "bootDeviceDisks",
        "bootDeviceNics"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getVirtualMachineV2BootConfigLegacyBootBootDeviceBootDeviceDisk:getVirtualMachineV2BootConfigLegacyBootBootDeviceBootDeviceDisk": {
      "properties": {
        "diskAddresses": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetVirtualMachineV2BootConfigLegacyBootBootDeviceBootDeviceDiskDiskAddress:getVirtualMachineV2BootConfigLegacyBootBootDeviceBootDeviceDiskDiskAddress"
          },
          "description": "Virtual Machine disk (VM disk).\n"
        }
      },
      "type": "object",
      "required": [
        "diskAddresses"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getVirtualMachineV2BootConfigLegacyBootBootDeviceBootDeviceDiskDiskAddress:getVirtualMachineV2BootConfigLegacyBootBootDeviceBootDeviceDiskDiskAddress": {
      "properties": {
        "busType": {
          "type": "string",
          "description": "Bus type for the device\n"
        },
        "index": {
          "type": "integer",
          "description": "Device index on the bus. This field is ignored unless the bus details are specified.\n"
        }
      },
      "type": "object",
      "required": [
        "busType",
        "index"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getVirtualMachineV2BootConfigLegacyBootBootDeviceBootDeviceNic:getVirtualMachineV2BootConfigLegacyBootBootDeviceBootDeviceNic": {
      "properties": {
        "macAddress": {
          "type": "string",
          "description": "mac address\n"
        }
      },
      "type": "object",
      "required": [
        "macAddress"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getVirtualMachineV2BootConfigUefiBoot:getVirtualMachineV2BootConfigUefiBoot": {
      "properties": {
        "bootDevices": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetVirtualMachineV2BootConfigUefiBootBootDevice:getVirtualMachineV2BootConfigUefiBootBootDevice"
          },
          "description": "Boot Device object\n"
        },
        "bootOrders": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "Indicates the order of device types in which the VM should try to boot from. If the boot device order is not provided the system will decide an appropriate boot device order.\n"
        },
        "isSecureBootEnabled": {
          "type": "boolean",
          "description": "Indicate whether to enable secure boot or not\n"
        },
        "nvramDevices": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetVirtualMachineV2BootConfigUefiBootNvramDevice:getVirtualMachineV2BootConfigUefiBootNvramDevice"
          },
          "description": "Configuration for NVRAM to be presented to the VM.\n"
        }
      },
      "type": "object",
      "required": [
        "bootDevices",
        "bootOrders",
        "isSecureBootEnabled",
        "nvramDevices"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getVirtualMachineV2BootConfigUefiBootBootDevice:getVirtualMachineV2BootConfigUefiBootBootDevice": {
      "properties": {
        "bootDeviceDisks": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetVirtualMachineV2BootConfigUefiBootBootDeviceBootDeviceDisk:getVirtualMachineV2BootConfigUefiBootBootDeviceBootDeviceDisk"
          },
          "description": "Disk address.\n"
        },
        "bootDeviceNics": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetVirtualMachineV2BootConfigUefiBootBootDeviceBootDeviceNic:getVirtualMachineV2BootConfigUefiBootBootDeviceBootDeviceNic"
          },
          "description": "Disk Nic address.\n"
        }
      },
      "type": "object",
      "required": [
        "bootDeviceDisks",
        "bootDeviceNics"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getVirtualMachineV2BootConfigUefiBootBootDeviceBootDeviceDisk:getVirtualMachineV2BootConfigUefiBootBootDeviceBootDeviceDisk": {
      "properties": {
        "diskAddresses": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetVirtualMachineV2BootConfigUefiBootBootDeviceBootDeviceDiskDiskAddress:getVirtualMachineV2BootConfigUefiBootBootDeviceBootDeviceDiskDiskAddress"
          },
          "description": "Virtual Machine disk (VM disk).\n"
        }
      },
      "type": "object",
      "required": [
        "diskAddresses"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getVirtualMachineV2BootConfigUefiBootBootDeviceBootDeviceDiskDiskAddress:getVirtualMachineV2BootConfigUefiBootBootDeviceBootDeviceDiskDiskAddress": {
      "properties": {
        "busType": {
          "type": "string",
          "description": "Bus type for the device\n"
        },
        "index": {
          "type": "integer",
          "description": "Device index on the bus. This field is ignored unless the bus details are specified.\n"
        }
      },
      "type": "object",
      "required": [
        "busType",
        "index"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getVirtualMachineV2BootConfigUefiBootBootDeviceBootDeviceNic:getVirtualMachineV2BootConfigUefiBootBootDeviceBootDeviceNic": {
      "properties": {
        "macAddress": {
          "type": "string",
          "description": "mac address\n"
        }
      },
      "type": "object",
      "required": [
        "macAddress"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getVirtualMachineV2BootConfigUefiBootNvramDevice:getVirtualMachineV2BootConfigUefiBootNvramDevice": {
      "properties": {
        "backingStorageInfos": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetVirtualMachineV2BootConfigUefiBootNvramDeviceBackingStorageInfo:getVirtualMachineV2BootConfigUefiBootNvramDeviceBackingStorageInfo"
          },
          "description": "Storage provided by Nutanix ADSF\n"
        }
      },
      "type": "object",
      "required": [
        "backingStorageInfos"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getVirtualMachineV2BootConfigUefiBootNvramDeviceBackingStorageInfo:getVirtualMachineV2BootConfigUefiBootNvramDeviceBackingStorageInfo": {
      "properties": {
        "dataSources": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetVirtualMachineV2BootConfigUefiBootNvramDeviceBackingStorageInfoDataSource:getVirtualMachineV2BootConfigUefiBootNvramDeviceBackingStorageInfoDataSource"
          },
          "description": "A reference to a disk or image that contains the contents of a disk.\n"
        },
        "diskExtId": {
          "type": "string",
          "description": "The globally unique identifier of a VM disk. It should be of type UUID.\n"
        },
        "diskSizeBytes": {
          "type": "integer",
          "description": "Size of the disk in Bytes\n"
        },
        "isMigrationInProgress": {
          "type": "boolean",
          "description": "Indicates if the disk is undergoing migration to another container.\n"
        },
        "storageConfigs": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetVirtualMachineV2BootConfigUefiBootNvramDeviceBackingStorageInfoStorageConfig:getVirtualMachineV2BootConfigUefiBootNvramDeviceBackingStorageInfoStorageConfig"
          },
          "description": "Storage configuration for VM disks\n"
        },
        "storageContainers": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetVirtualMachineV2BootConfigUefiBootNvramDeviceBackingStorageInfoStorageContainer:getVirtualMachineV2BootConfigUefiBootNvramDeviceBackingStorageInfoStorageContainer"
          },
          "description": "This reference is for disk level storage container preference. This preference specifies the storage container to which this disk belongs.\n"
        }
      },
      "type": "object",
      "required": [
        "dataSources",
        "diskExtId",
        "diskSizeBytes",
        "isMigrationInProgress",
        "storageConfigs",
        "storageContainers"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getVirtualMachineV2BootConfigUefiBootNvramDeviceBackingStorageInfoDataSource:getVirtualMachineV2BootConfigUefiBootNvramDeviceBackingStorageInfoDataSource": {
      "properties": {
        "references": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetVirtualMachineV2BootConfigUefiBootNvramDeviceBackingStorageInfoDataSourceReference:getVirtualMachineV2BootConfigUefiBootNvramDeviceBackingStorageInfoDataSourceReference"
          },
          "description": "Reference to image or vm disk\n"
        }
      },
      "type": "object",
      "required": [
        "references"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getVirtualMachineV2BootConfigUefiBootNvramDeviceBackingStorageInfoDataSourceReference:getVirtualMachineV2BootConfigUefiBootNvramDeviceBackingStorageInfoDataSourceReference": {
      "properties": {
        "imageReferences": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetVirtualMachineV2BootConfigUefiBootNvramDeviceBackingStorageInfoDataSourceReferenceImageReference:getVirtualMachineV2BootConfigUefiBootNvramDeviceBackingStorageInfoDataSourceReferenceImageReference"
          },
          "description": "Image Reference\n"
        },
        "vmDiskReferences": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetVirtualMachineV2BootConfigUefiBootNvramDeviceBackingStorageInfoDataSourceReferenceVmDiskReference:getVirtualMachineV2BootConfigUefiBootNvramDeviceBackingStorageInfoDataSourceReferenceVmDiskReference"
          },
          "description": "Vm Disk Reference\n"
        }
      },
      "type": "object",
      "required": [
        "imageReferences",
        "vmDiskReferences"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getVirtualMachineV2BootConfigUefiBootNvramDeviceBackingStorageInfoDataSourceReferenceImageReference:getVirtualMachineV2BootConfigUefiBootNvramDeviceBackingStorageInfoDataSourceReferenceImageReference": {
      "properties": {
        "imageExtId": {
          "type": "string",
          "description": "The globally unique identifier of an image. It should be of type UUID.\n"
        }
      },
      "type": "object",
      "required": [
        "imageExtId"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getVirtualMachineV2BootConfigUefiBootNvramDeviceBackingStorageInfoDataSourceReferenceVmDiskReference:getVirtualMachineV2BootConfigUefiBootNvramDeviceBackingStorageInfoDataSourceReferenceVmDiskReference": {
      "properties": {
        "diskAddresses": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetVirtualMachineV2BootConfigUefiBootNvramDeviceBackingStorageInfoDataSourceReferenceVmDiskReferenceDiskAddress:getVirtualMachineV2BootConfigUefiBootNvramDeviceBackingStorageInfoDataSourceReferenceVmDiskReferenceDiskAddress"
          },
          "description": "Disk address.\n"
        },
        "diskExtId": {
          "type": "string",
          "description": "The globally unique identifier of a VM disk. It should be of type UUID.\n"
        },
        "vmReferences": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetVirtualMachineV2BootConfigUefiBootNvramDeviceBackingStorageInfoDataSourceReferenceVmDiskReferenceVmReference:getVirtualMachineV2BootConfigUefiBootNvramDeviceBackingStorageInfoDataSourceReferenceVmDiskReferenceVmReference"
          },
          "description": "This is a reference to a VM.\n"
        }
      },
      "type": "object",
      "required": [
        "diskAddresses",
        "diskExtId",
        "vmReferences"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getVirtualMachineV2BootConfigUefiBootNvramDeviceBackingStorageInfoDataSourceReferenceVmDiskReferenceDiskAddress:getVirtualMachineV2BootConfigUefiBootNvramDeviceBackingStorageInfoDataSourceReferenceVmDiskReferenceDiskAddress": {
      "properties": {
        "busType": {
          "type": "string",
          "description": "Bus type for the device. The acceptable values are: SCSI, IDE, PCI, SATA, SPAPR (only PPC).\n"
        },
        "index": {
          "type": "integer",
          "description": "Device index on the bus. This field is ignored unless the bus details are specified.\n"
        }
      },
      "type": "object",
      "required": [
        "busType",
        "index"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getVirtualMachineV2BootConfigUefiBootNvramDeviceBackingStorageInfoDataSourceReferenceVmDiskReferenceVmReference:getVirtualMachineV2BootConfigUefiBootNvramDeviceBackingStorageInfoDataSourceReferenceVmDiskReferenceVmReference": {
      "properties": {
        "extId": {
          "type": "string",
          "description": "Represents virtual machine UUID\n"
        }
      },
      "type": "object",
      "required": [
        "extId"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getVirtualMachineV2BootConfigUefiBootNvramDeviceBackingStorageInfoStorageConfig:getVirtualMachineV2BootConfigUefiBootNvramDeviceBackingStorageInfoStorageConfig": {
      "properties": {
        "isFlashModeEnabled": {
          "type": "boolean",
          "description": "Indicates whether the virtual disk is pinned to the hot tier or not.\n"
        }
      },
      "type": "object",
      "required": [
        "isFlashModeEnabled"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getVirtualMachineV2BootConfigUefiBootNvramDeviceBackingStorageInfoStorageContainer:getVirtualMachineV2BootConfigUefiBootNvramDeviceBackingStorageInfoStorageContainer": {
      "properties": {
        "extId": {
          "type": "string",
          "description": "Represents virtual machine UUID\n"
        }
      },
      "type": "object",
      "required": [
        "extId"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getVirtualMachineV2Category:getVirtualMachineV2Category": {
      "properties": {
        "extId": {
          "type": "string",
          "description": "Represents virtual machine UUID\n"
        }
      },
      "type": "object",
      "required": [
        "extId"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getVirtualMachineV2CdRom:getVirtualMachineV2CdRom": {
      "properties": {
        "backingInfos": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetVirtualMachineV2CdRomBackingInfo:getVirtualMachineV2CdRomBackingInfo"
          },
          "description": "Defines a NIC emulated by the hypervisor\n"
        },
        "diskAddresses": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetVirtualMachineV2CdRomDiskAddress:getVirtualMachineV2CdRomDiskAddress"
          },
          "description": "Virtual Machine disk (VM disk).\n"
        },
        "extId": {
          "type": "string",
          "description": "Represents virtual machine UUID\n"
        },
        "isoType": {
          "type": "string",
          "description": "Type of ISO image inserted in CD-ROM\n"
        }
      },
      "type": "object",
      "required": [
        "backingInfos",
        "diskAddresses",
        "extId",
        "isoType"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getVirtualMachineV2CdRomBackingInfo:getVirtualMachineV2CdRomBackingInfo": {
      "properties": {
        "dataSources": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetVirtualMachineV2CdRomBackingInfoDataSource:getVirtualMachineV2CdRomBackingInfoDataSource"
          },
          "description": "A reference to a disk or image that contains the contents of a disk.\n"
        },
        "diskExtId": {
          "type": "string",
          "description": "The globally unique identifier of a VM disk. It should be of type UUID.\n"
        },
        "diskSizeBytes": {
          "type": "integer",
          "description": "Size of the disk in Bytes\n"
        },
        "isMigrationInProgress": {
          "type": "boolean",
          "description": "Indicates if the disk is undergoing migration to another container.\n"
        },
        "storageConfigs": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetVirtualMachineV2CdRomBackingInfoStorageConfig:getVirtualMachineV2CdRomBackingInfoStorageConfig"
          },
          "description": "Storage configuration for VM disks\n"
        },
        "storageContainers": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetVirtualMachineV2CdRomBackingInfoStorageContainer:getVirtualMachineV2CdRomBackingInfoStorageContainer"
          },
          "description": "This reference is for disk level storage container preference. This preference specifies the storage container to which this disk belongs.\n"
        }
      },
      "type": "object",
      "required": [
        "dataSources",
        "diskExtId",
        "diskSizeBytes",
        "isMigrationInProgress",
        "storageConfigs",
        "storageContainers"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getVirtualMachineV2CdRomBackingInfoDataSource:getVirtualMachineV2CdRomBackingInfoDataSource": {
      "properties": {
        "references": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetVirtualMachineV2CdRomBackingInfoDataSourceReference:getVirtualMachineV2CdRomBackingInfoDataSourceReference"
          },
          "description": "Reference to image or vm disk\n"
        }
      },
      "type": "object",
      "required": [
        "references"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getVirtualMachineV2CdRomBackingInfoDataSourceReference:getVirtualMachineV2CdRomBackingInfoDataSourceReference": {
      "properties": {
        "imageReferences": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetVirtualMachineV2CdRomBackingInfoDataSourceReferenceImageReference:getVirtualMachineV2CdRomBackingInfoDataSourceReferenceImageReference"
          },
          "description": "Image Reference\n"
        },
        "vmDiskReferences": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetVirtualMachineV2CdRomBackingInfoDataSourceReferenceVmDiskReference:getVirtualMachineV2CdRomBackingInfoDataSourceReferenceVmDiskReference"
          },
          "description": "Vm Disk Reference\n"
        }
      },
      "type": "object",
      "required": [
        "imageReferences",
        "vmDiskReferences"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getVirtualMachineV2CdRomBackingInfoDataSourceReferenceImageReference:getVirtualMachineV2CdRomBackingInfoDataSourceReferenceImageReference": {
      "properties": {
        "imageExtId": {
          "type": "string",
          "description": "The globally unique identifier of an image. It should be of type UUID.\n"
        }
      },
      "type": "object",
      "required": [
        "imageExtId"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getVirtualMachineV2CdRomBackingInfoDataSourceReferenceVmDiskReference:getVirtualMachineV2CdRomBackingInfoDataSourceReferenceVmDiskReference": {
      "properties": {
        "diskAddresses": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetVirtualMachineV2CdRomBackingInfoDataSourceReferenceVmDiskReferenceDiskAddress:getVirtualMachineV2CdRomBackingInfoDataSourceReferenceVmDiskReferenceDiskAddress"
          },
          "description": "Disk address.\n"
        },
        "diskExtId": {
          "type": "string",
          "description": "The globally unique identifier of a VM disk. It should be of type UUID.\n"
        },
        "vmReferences": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetVirtualMachineV2CdRomBackingInfoDataSourceReferenceVmDiskReferenceVmReference:getVirtualMachineV2CdRomBackingInfoDataSourceReferenceVmDiskReferenceVmReference"
          },
          "description": "This is a reference to a VM.\n"
        }
      },
      "type": "object",
      "required": [
        "diskAddresses",
        "diskExtId",
        "vmReferences"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getVirtualMachineV2CdRomBackingInfoDataSourceReferenceVmDiskReferenceDiskAddress:getVirtualMachineV2CdRomBackingInfoDataSourceReferenceVmDiskReferenceDiskAddress": {
      "properties": {
        "busType": {
          "type": "string",
          "description": "Bus type for the device. The acceptable values are: SCSI, IDE, PCI, SATA, SPAPR (only PPC).\n"
        },
        "index": {
          "type": "integer",
          "description": "Device index on the bus. This field is ignored unless the bus details are specified.\n"
        }
      },
      "type": "object",
      "required": [
        "busType",
        "index"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getVirtualMachineV2CdRomBackingInfoDataSourceReferenceVmDiskReferenceVmReference:getVirtualMachineV2CdRomBackingInfoDataSourceReferenceVmDiskReferenceVmReference": {
      "properties": {
        "extId": {
          "type": "string",
          "description": "Represents virtual machine UUID\n"
        }
      },
      "type": "object",
      "required": [
        "extId"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getVirtualMachineV2CdRomBackingInfoStorageConfig:getVirtualMachineV2CdRomBackingInfoStorageConfig": {
      "properties": {
        "isFlashModeEnabled": {
          "type": "boolean",
          "description": "Indicates whether the virtual disk is pinned to the hot tier or not.\n"
        }
      },
      "type": "object",
      "required": [
        "isFlashModeEnabled"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getVirtualMachineV2CdRomBackingInfoStorageContainer:getVirtualMachineV2CdRomBackingInfoStorageContainer": {
      "properties": {
        "extId": {
          "type": "string",
          "description": "Represents virtual machine UUID\n"
        }
      },
      "type": "object",
      "required": [
        "extId"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getVirtualMachineV2CdRomDiskAddress:getVirtualMachineV2CdRomDiskAddress": {
      "properties": {
        "busType": {
          "type": "string",
          "description": "Bus type for the device. The acceptable values are: SCSI, IDE, PCI, SATA, SPAPR (only PPC).\n"
        },
        "index": {
          "type": "integer",
          "description": "Device index on the bus. This field is ignored unless the bus details are specified.\n"
        }
      },
      "type": "object",
      "required": [
        "busType",
        "index"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getVirtualMachineV2Cluster:getVirtualMachineV2Cluster": {
      "properties": {
        "extId": {
          "type": "string",
          "description": "Represents virtual machine UUID\n"
        }
      },
      "type": "object",
      "required": [
        "extId"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getVirtualMachineV2Disk:getVirtualMachineV2Disk": {
      "properties": {
        "backingInfos": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetVirtualMachineV2DiskBackingInfo:getVirtualMachineV2DiskBackingInfo"
          },
          "description": "Defines a NIC emulated by the hypervisor\n"
        },
        "diskAddresses": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetVirtualMachineV2DiskDiskAddress:getVirtualMachineV2DiskDiskAddress"
          },
          "description": "Virtual Machine disk (VM disk).\n"
        },
        "extId": {
          "type": "string",
          "description": "Represents virtual machine UUID\n"
        }
      },
      "type": "object",
      "required": [
        "backingInfos",
        "diskAddresses",
        "extId"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getVirtualMachineV2DiskBackingInfo:getVirtualMachineV2DiskBackingInfo": {
      "properties": {
        "adfsVolumeGroupReferences": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetVirtualMachineV2DiskBackingInfoAdfsVolumeGroupReference:getVirtualMachineV2DiskBackingInfoAdfsVolumeGroupReference"
          },
          "description": "Volume Group Reference\n"
        },
        "vmDisks": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetVirtualMachineV2DiskBackingInfoVmDisk:getVirtualMachineV2DiskBackingInfoVmDisk"
          },
          "description": "backing Info for vmDisk\n"
        }
      },
      "type": "object",
      "required": [
        "adfsVolumeGroupReferences",
        "vmDisks"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getVirtualMachineV2DiskBackingInfoAdfsVolumeGroupReference:getVirtualMachineV2DiskBackingInfoAdfsVolumeGroupReference": {
      "properties": {
        "volumeGroupExtId": {
          "type": "string",
          "description": "The globally unique identifier of an ADSF volume group. It should be of type UUID.\n"
        }
      },
      "type": "object",
      "required": [
        "volumeGroupExtId"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getVirtualMachineV2DiskBackingInfoVmDisk:getVirtualMachineV2DiskBackingInfoVmDisk": {
      "properties": {
        "dataSources": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetVirtualMachineV2DiskBackingInfoVmDiskDataSource:getVirtualMachineV2DiskBackingInfoVmDiskDataSource"
          },
          "description": "A reference to a disk or image that contains the contents of a disk.\n"
        },
        "diskExtId": {
          "type": "string",
          "description": "The globally unique identifier of a VM disk. It should be of type UUID.\n"
        },
        "diskSizeBytes": {
          "type": "integer",
          "description": "Size of the disk in Bytes\n"
        },
        "isMigrationInProgress": {
          "type": "boolean",
          "description": "Indicates if the disk is undergoing migration to another container.\n"
        },
        "storageConfigs": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetVirtualMachineV2DiskBackingInfoVmDiskStorageConfig:getVirtualMachineV2DiskBackingInfoVmDiskStorageConfig"
          },
          "description": "Storage configuration for VM disks\n"
        },
        "storageContainers": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetVirtualMachineV2DiskBackingInfoVmDiskStorageContainer:getVirtualMachineV2DiskBackingInfoVmDiskStorageContainer"
          },
          "description": "This reference is for disk level storage container preference. This preference specifies the storage container to which this disk belongs.\n"
        }
      },
      "type": "object",
      "required": [
        "dataSources",
        "diskExtId",
        "diskSizeBytes",
        "isMigrationInProgress",
        "storageConfigs",
        "storageContainers"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getVirtualMachineV2DiskBackingInfoVmDiskDataSource:getVirtualMachineV2DiskBackingInfoVmDiskDataSource": {
      "properties": {
        "references": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetVirtualMachineV2DiskBackingInfoVmDiskDataSourceReference:getVirtualMachineV2DiskBackingInfoVmDiskDataSourceReference"
          },
          "description": "Reference to image or vm disk\n"
        }
      },
      "type": "object",
      "required": [
        "references"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getVirtualMachineV2DiskBackingInfoVmDiskDataSourceReference:getVirtualMachineV2DiskBackingInfoVmDiskDataSourceReference": {
      "properties": {
        "imageReferences": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetVirtualMachineV2DiskBackingInfoVmDiskDataSourceReferenceImageReference:getVirtualMachineV2DiskBackingInfoVmDiskDataSourceReferenceImageReference"
          },
          "description": "Image Reference\n"
        },
        "vmDiskReferences": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetVirtualMachineV2DiskBackingInfoVmDiskDataSourceReferenceVmDiskReference:getVirtualMachineV2DiskBackingInfoVmDiskDataSourceReferenceVmDiskReference"
          },
          "description": "Vm Disk Reference\n"
        }
      },
      "type": "object",
      "required": [
        "imageReferences",
        "vmDiskReferences"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getVirtualMachineV2DiskBackingInfoVmDiskDataSourceReferenceImageReference:getVirtualMachineV2DiskBackingInfoVmDiskDataSourceReferenceImageReference": {
      "properties": {
        "imageExtId": {
          "type": "string",
          "description": "The globally unique identifier of an image. It should be of type UUID.\n"
        }
      },
      "type": "object",
      "required": [
        "imageExtId"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getVirtualMachineV2DiskBackingInfoVmDiskDataSourceReferenceVmDiskReference:getVirtualMachineV2DiskBackingInfoVmDiskDataSourceReferenceVmDiskReference": {
      "properties": {
        "diskAddresses": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetVirtualMachineV2DiskBackingInfoVmDiskDataSourceReferenceVmDiskReferenceDiskAddress:getVirtualMachineV2DiskBackingInfoVmDiskDataSourceReferenceVmDiskReferenceDiskAddress"
          },
          "description": "Disk address.\n"
        },
        "diskExtId": {
          "type": "string",
          "description": "The globally unique identifier of a VM disk. It should be of type UUID.\n"
        },
        "vmReferences": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetVirtualMachineV2DiskBackingInfoVmDiskDataSourceReferenceVmDiskReferenceVmReference:getVirtualMachineV2DiskBackingInfoVmDiskDataSourceReferenceVmDiskReferenceVmReference"
          },
          "description": "This is a reference to a VM.\n"
        }
      },
      "type": "object",
      "required": [
        "diskAddresses",
        "diskExtId",
        "vmReferences"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getVirtualMachineV2DiskBackingInfoVmDiskDataSourceReferenceVmDiskReferenceDiskAddress:getVirtualMachineV2DiskBackingInfoVmDiskDataSourceReferenceVmDiskReferenceDiskAddress": {
      "properties": {
        "busType": {
          "type": "string",
          "description": "Bus type for the device. The acceptable values are: SCSI, IDE, PCI, SATA, SPAPR (only PPC).\n"
        },
        "index": {
          "type": "integer",
          "description": "Device index on the bus. This field is ignored unless the bus details are specified.\n"
        }
      },
      "type": "object",
      "required": [
        "busType",
        "index"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getVirtualMachineV2DiskBackingInfoVmDiskDataSourceReferenceVmDiskReferenceVmReference:getVirtualMachineV2DiskBackingInfoVmDiskDataSourceReferenceVmDiskReferenceVmReference": {
      "properties": {
        "extId": {
          "type": "string",
          "description": "Represents virtual machine UUID\n"
        }
      },
      "type": "object",
      "required": [
        "extId"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getVirtualMachineV2DiskBackingInfoVmDiskStorageConfig:getVirtualMachineV2DiskBackingInfoVmDiskStorageConfig": {
      "properties": {
        "isFlashModeEnabled": {
          "type": "boolean",
          "description": "Indicates whether the virtual disk is pinned to the hot tier or not.\n"
        }
      },
      "type": "object",
      "required": [
        "isFlashModeEnabled"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getVirtualMachineV2DiskBackingInfoVmDiskStorageContainer:getVirtualMachineV2DiskBackingInfoVmDiskStorageContainer": {
      "properties": {
        "extId": {
          "type": "string",
          "description": "Represents virtual machine UUID\n"
        }
      },
      "type": "object",
      "required": [
        "extId"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getVirtualMachineV2DiskDiskAddress:getVirtualMachineV2DiskDiskAddress": {
      "properties": {
        "busType": {
          "type": "string",
          "description": "Bus type for the device. The acceptable values are: SCSI, IDE, PCI, SATA, SPAPR (only PPC).\n"
        },
        "index": {
          "type": "integer",
          "description": "Device index on the bus. This field is ignored unless the bus details are specified.\n"
        }
      },
      "type": "object",
      "required": [
        "busType",
        "index"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getVirtualMachineV2Gpus:getVirtualMachineV2Gpus": {
      "properties": {
        "deviceId": {
          "type": "integer",
          "description": "The device Id of the GPU.\n"
        },
        "extId": {
          "type": "string",
          "description": "Represents virtual machine UUID\n"
        },
        "fraction": {
          "type": "integer",
          "description": "Fraction of the physical GPU assigned.\n"
        },
        "frameBufferSizeBytes": {
          "type": "integer",
          "description": "GPU frame buffer size in bytes.\n"
        },
        "guestDriverVersion": {
          "type": "string",
          "description": "Last determined guest driver version.\n"
        },
        "links": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetVirtualMachineV2GpusLink:getVirtualMachineV2GpusLink"
          },
          "description": "A HATEOAS style link for the response. Each link contains a user-friendly name identifying the link and an address for retrieving the particular resource.\n"
        },
        "mode": {
          "type": "string",
          "description": "The mode of this GPU.\n"
        },
        "name": {
          "type": "string",
          "description": "Name of the GPU resource.\n"
        },
        "numVirtualDisplayHeads": {
          "type": "integer",
          "description": "Number of supported virtual display heads.\n"
        },
        "pciAddresses": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetVirtualMachineV2GpusPciAddress:getVirtualMachineV2GpusPciAddress"
          },
          "description": "The (S)egment:(B)us:(D)evice.(F)unction hardware address. See\n"
        },
        "tenantId": {
          "type": "string",
          "description": "A globally unique identifier that represents the tenant that owns this entity. The system automatically assigns it, and it and is immutable from an API consumer perspective (some use cases may cause this Id to change - For instance, a use case may require the transfer of ownership of the entity, but these cases are handled automatically on the server).\n"
        },
        "vendor": {
          "type": "string",
          "description": "The vendor of the GPU.\n"
        }
      },
      "type": "object",
      "required": [
        "deviceId",
        "extId",
        "fraction",
        "frameBufferSizeBytes",
        "guestDriverVersion",
        "links",
        "mode",
        "name",
        "numVirtualDisplayHeads",
        "pciAddresses",
        "tenantId",
        "vendor"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getVirtualMachineV2GpusLink:getVirtualMachineV2GpusLink": {
      "properties": {
        "href": {
          "type": "string",
          "description": "- The URL at which the entity described by the link can be accessed.\n"
        },
        "rel": {
          "type": "string",
          "description": "- A name that identifies the relationship of the link to the object that is returned by the URL. The unique value of \"self\" identifies the URL for the object.\n"
        }
      },
      "type": "object",
      "required": [
        "href",
        "rel"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getVirtualMachineV2GpusPciAddress:getVirtualMachineV2GpusPciAddress": {
      "properties": {
        "bus": {
          "type": "integer"
        },
        "device": {
          "type": "integer"
        },
        "func": {
          "type": "integer"
        },
        "segment": {
          "type": "integer"
        }
      },
      "type": "object",
      "required": [
        "bus",
        "device",
        "func",
        "segment"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getVirtualMachineV2GuestCustomization:getVirtualMachineV2GuestCustomization": {
      "properties": {
        "configs": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetVirtualMachineV2GuestCustomizationConfig:getVirtualMachineV2GuestCustomizationConfig"
          },
          "description": "The Nutanix Guest Tools customization settings.\n"
        }
      },
      "type": "object",
      "required": [
        "configs"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getVirtualMachineV2GuestCustomizationConfig:getVirtualMachineV2GuestCustomizationConfig": {
      "properties": {
        "cloudInits": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetVirtualMachineV2GuestCustomizationConfigCloudInit:getVirtualMachineV2GuestCustomizationConfigCloudInit"
          },
          "description": "CloudInit Config\n"
        },
        "syspreps": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetVirtualMachineV2GuestCustomizationConfigSysprep:getVirtualMachineV2GuestCustomizationConfigSysprep"
          },
          "description": "Sysprep config\n"
        }
      },
      "type": "object",
      "required": [
        "cloudInits",
        "syspreps"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getVirtualMachineV2GuestCustomizationConfigCloudInit:getVirtualMachineV2GuestCustomizationConfigCloudInit": {
      "properties": {
        "cloudInitScripts": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetVirtualMachineV2GuestCustomizationConfigCloudInitCloudInitScript:getVirtualMachineV2GuestCustomizationConfigCloudInitCloudInitScript"
          },
          "description": "The script to use for cloud-init.\n"
        },
        "datasourceType": {
          "type": "string",
          "description": "Type of datasource. Default: CONFIG_DRIVE_V2\n"
        },
        "metadata": {
          "type": "string",
          "description": "The contents of the<span pulumi-lang-nodejs=\" metaData \" pulumi-lang-dotnet=\" MetaData \" pulumi-lang-go=\" metaData \" pulumi-lang-python=\" meta_data \" pulumi-lang-yaml=\" metaData \" pulumi-lang-java=\" metaData \"> meta_data </span>configuration for cloud-init. This can be formatted as YAML or JSON. The value must be base64 encoded.\n"
        }
      },
      "type": "object",
      "required": [
        "cloudInitScripts",
        "datasourceType",
        "metadata"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getVirtualMachineV2GuestCustomizationConfigCloudInitCloudInitScript:getVirtualMachineV2GuestCustomizationConfigCloudInitCloudInitScript": {
      "properties": {
        "customKeys": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetVirtualMachineV2GuestCustomizationConfigCloudInitCloudInitScriptCustomKey:getVirtualMachineV2GuestCustomizationConfigCloudInitCloudInitScriptCustomKey"
          },
          "description": "The list of the individual KeyValuePair elements.\n"
        },
        "userDatas": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetVirtualMachineV2GuestCustomizationConfigCloudInitCloudInitScriptUserData:getVirtualMachineV2GuestCustomizationConfigCloudInitCloudInitScriptUserData"
          },
          "description": "user data object\n"
        }
      },
      "type": "object",
      "required": [
        "customKeys",
        "userDatas"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getVirtualMachineV2GuestCustomizationConfigCloudInitCloudInitScriptCustomKey:getVirtualMachineV2GuestCustomizationConfigCloudInitCloudInitScriptCustomKey": {
      "properties": {
        "keyValuePairs": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetVirtualMachineV2GuestCustomizationConfigCloudInitCloudInitScriptCustomKeyKeyValuePair:getVirtualMachineV2GuestCustomizationConfigCloudInitCloudInitScriptCustomKeyKeyValuePair"
          }
        }
      },
      "type": "object",
      "required": [
        "keyValuePairs"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getVirtualMachineV2GuestCustomizationConfigCloudInitCloudInitScriptCustomKeyKeyValuePair:getVirtualMachineV2GuestCustomizationConfigCloudInitCloudInitScriptCustomKeyKeyValuePair": {
      "properties": {
        "name": {
          "type": "string",
          "description": "Name of the GPU resource.\n"
        },
        "value": {
          "type": "string",
          "description": "The IPv4 address of the host.\n"
        }
      },
      "type": "object",
      "required": [
        "name",
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getVirtualMachineV2GuestCustomizationConfigCloudInitCloudInitScriptUserData:getVirtualMachineV2GuestCustomizationConfigCloudInitCloudInitScriptUserData": {
      "properties": {
        "value": {
          "type": "string",
          "description": "The IPv4 address of the host.\n"
        }
      },
      "type": "object",
      "required": [
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getVirtualMachineV2GuestCustomizationConfigSysprep:getVirtualMachineV2GuestCustomizationConfigSysprep": {
      "properties": {
        "installType": {
          "type": "string",
          "description": "Indicates whether the guest will be freshly installed using this unattend configuration, or this unattend configuration will be applied to a pre-prepared image. Default is 'PREPARED'.\n"
        },
        "sysprepScripts": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetVirtualMachineV2GuestCustomizationConfigSysprepSysprepScript:getVirtualMachineV2GuestCustomizationConfigSysprepSysprepScript"
          },
          "description": "Object either UnattendXml or CustomKeyValues\n"
        }
      },
      "type": "object",
      "required": [
        "installType",
        "sysprepScripts"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getVirtualMachineV2GuestCustomizationConfigSysprepSysprepScript:getVirtualMachineV2GuestCustomizationConfigSysprepSysprepScript": {
      "properties": {
        "customKeyValues": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetVirtualMachineV2GuestCustomizationConfigSysprepSysprepScriptCustomKeyValue:getVirtualMachineV2GuestCustomizationConfigSysprepSysprepScriptCustomKeyValue"
          },
          "description": "The list of the individual KeyValuePair elements.\n"
        },
        "unattendXmls": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetVirtualMachineV2GuestCustomizationConfigSysprepSysprepScriptUnattendXml:getVirtualMachineV2GuestCustomizationConfigSysprepSysprepScriptUnattendXml"
          },
          "description": "xml object\n"
        }
      },
      "type": "object",
      "required": [
        "customKeyValues",
        "unattendXmls"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getVirtualMachineV2GuestCustomizationConfigSysprepSysprepScriptCustomKeyValue:getVirtualMachineV2GuestCustomizationConfigSysprepSysprepScriptCustomKeyValue": {
      "properties": {
        "keyValuePairs": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetVirtualMachineV2GuestCustomizationConfigSysprepSysprepScriptCustomKeyValueKeyValuePair:getVirtualMachineV2GuestCustomizationConfigSysprepSysprepScriptCustomKeyValueKeyValuePair"
          }
        }
      },
      "type": "object",
      "required": [
        "keyValuePairs"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getVirtualMachineV2GuestCustomizationConfigSysprepSysprepScriptCustomKeyValueKeyValuePair:getVirtualMachineV2GuestCustomizationConfigSysprepSysprepScriptCustomKeyValueKeyValuePair": {
      "properties": {
        "name": {
          "type": "string",
          "description": "Name of the GPU resource.\n"
        },
        "value": {
          "type": "string",
          "description": "The IPv4 address of the host.\n"
        }
      },
      "type": "object",
      "required": [
        "name",
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getVirtualMachineV2GuestCustomizationConfigSysprepSysprepScriptUnattendXml:getVirtualMachineV2GuestCustomizationConfigSysprepSysprepScriptUnattendXml": {
      "properties": {
        "value": {
          "type": "string",
          "description": "The IPv4 address of the host.\n"
        }
      },
      "type": "object",
      "required": [
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getVirtualMachineV2GuestTool:getVirtualMachineV2GuestTool": {
      "properties": {
        "availableVersion": {
          "type": "string",
          "description": "Version of Nutanix Guest Tools available on the cluster.\n"
        },
        "capabilities": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "The list of the application names that are enabled on the guest VM.\n"
        },
        "guestOsVersion": {
          "type": "string",
          "description": "Version of the operating system on the VM\n"
        },
        "isEnabled": {
          "type": "boolean",
          "description": "Indicates whether Nutanix Guest Tools is enabled or not.\n"
        },
        "isInstalled": {
          "type": "boolean",
          "description": "Indicates whether Nutanix Guest Tools is installed on the VM or not.\n"
        },
        "isIsoInserted": {
          "type": "boolean",
          "description": "Indicates whether Nutanix Guest Tools ISO is inserted or not.\n"
        },
        "isReachable": {
          "type": "boolean",
          "description": "Indicates whether the communication from VM to CVM is active or not.\n"
        },
        "isVmMobilityDriversInstalled": {
          "type": "boolean",
          "description": "Indicates whether the VM mobility drivers are installed on the VM or not.\n"
        },
        "isVssSnapshotCapable": {
          "type": "boolean",
          "description": "Indicates whether the VM is configured to take VSS snapshots through NGT or not.\n"
        },
        "version": {
          "type": "string",
          "description": "Virtual trusted platform module version.\n"
        }
      },
      "type": "object",
      "required": [
        "availableVersion",
        "capabilities",
        "guestOsVersion",
        "isEnabled",
        "isInstalled",
        "isIsoInserted",
        "isReachable",
        "isVmMobilityDriversInstalled",
        "isVssSnapshotCapable",
        "version"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getVirtualMachineV2Host:getVirtualMachineV2Host": {
      "properties": {
        "extId": {
          "type": "string",
          "description": "Represents virtual machine UUID\n"
        }
      },
      "type": "object",
      "required": [
        "extId"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getVirtualMachineV2Nic:getVirtualMachineV2Nic": {
      "properties": {
        "backingInfos": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetVirtualMachineV2NicBackingInfo:getVirtualMachineV2NicBackingInfo"
          },
          "description": "Defines a NIC emulated by the hypervisor\n"
        },
        "extId": {
          "type": "string",
          "description": "Represents virtual machine UUID\n"
        },
        "networkInfos": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetVirtualMachineV2NicNetworkInfo:getVirtualMachineV2NicNetworkInfo"
          },
          "description": "Network information for a NIC.\n"
        }
      },
      "type": "object",
      "required": [
        "backingInfos",
        "extId",
        "networkInfos"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getVirtualMachineV2NicBackingInfo:getVirtualMachineV2NicBackingInfo": {
      "properties": {
        "isConnected": {
          "type": "boolean",
          "description": "Indicates whether the serial port is connected or not.\n"
        },
        "macAddress": {
          "type": "string",
          "description": "MAC address of the emulated NIC.\n"
        },
        "model": {
          "type": "string",
          "description": "Options for the NIC emulation.\n"
        },
        "numQueues": {
          "type": "integer",
          "description": "The number of Tx/Rx queue pairs for this NIC\n"
        }
      },
      "type": "object",
      "required": [
        "isConnected",
        "macAddress",
        "model",
        "numQueues"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getVirtualMachineV2NicNetworkInfo:getVirtualMachineV2NicNetworkInfo": {
      "properties": {
        "ipv4Configs": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetVirtualMachineV2NicNetworkInfoIpv4Config:getVirtualMachineV2NicNetworkInfoIpv4Config"
          },
          "description": "The IP address configurations.\n"
        },
        "ipv4Infos": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetVirtualMachineV2NicNetworkInfoIpv4Info:getVirtualMachineV2NicNetworkInfoIpv4Info"
          },
          "description": "The runtime IP address information of the NIC.\n"
        },
        "networkFunctionChains": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetVirtualMachineV2NicNetworkInfoNetworkFunctionChain:getVirtualMachineV2NicNetworkInfoNetworkFunctionChain"
          },
          "description": "The network function chain associates with the NIC. Only valid if<span pulumi-lang-nodejs=\" nicType \" pulumi-lang-dotnet=\" NicType \" pulumi-lang-go=\" nicType \" pulumi-lang-python=\" nic_type \" pulumi-lang-yaml=\" nicType \" pulumi-lang-java=\" nicType \"> nic_type </span>is NORMAL_NIC.\n"
        },
        "networkFunctionNicType": {
          "type": "string",
          "description": "The type of this Network function NIC. Defaults to INGRESS.  values are: TAP, EGRESS, INGRESS.\n"
        },
        "nicType": {
          "type": "string",
          "description": "NIC type. Defaults to NORMAL_NIC. The acceptable values are: SPAN_DESTINATION_NIC, NORMAL_NIC, DIRECT_NIC, NETWORK_FUNCTION_NIC.\n"
        },
        "shouldAllowUnknownMacs": {
          "type": "boolean",
          "description": "Indicates whether an unknown unicast traffic is forwarded to this NIC or not. This is applicable only for the NICs on the overlay subnets.\n"
        },
        "subnets": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetVirtualMachineV2NicNetworkInfoSubnet:getVirtualMachineV2NicNetworkInfoSubnet"
          },
          "description": "Network identifier for this adapter. Only valid if<span pulumi-lang-nodejs=\" nicType \" pulumi-lang-dotnet=\" NicType \" pulumi-lang-go=\" nicType \" pulumi-lang-python=\" nic_type \" pulumi-lang-yaml=\" nicType \" pulumi-lang-java=\" nicType \"> nic_type </span>is NORMAL_NIC or DIRECT_NIC.\n"
        },
        "trunkedVlans": {
          "type": "array",
          "items": {
            "type": "integer"
          },
          "description": "List of networks to trunk if VLAN mode is marked as TRUNKED. If empty and VLAN mode is set to TRUNKED, all the VLANs are trunked.\n"
        },
        "vlanMode": {
          "type": "string",
          "description": "all the virtual NICs are created in ACCESS mode, which permits only one VLAN per virtual network. TRUNKED mode allows multiple VLANs on a single VM NIC for network-aware user VMs. values are: ACCESS, TRUNKED.\n"
        }
      },
      "type": "object",
      "required": [
        "ipv4Configs",
        "ipv4Infos",
        "networkFunctionChains",
        "networkFunctionNicType",
        "nicType",
        "shouldAllowUnknownMacs",
        "subnets",
        "trunkedVlans",
        "vlanMode"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getVirtualMachineV2NicNetworkInfoIpv4Config:getVirtualMachineV2NicNetworkInfoIpv4Config": {
      "properties": {
        "ipAddresses": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetVirtualMachineV2NicNetworkInfoIpv4ConfigIpAddress:getVirtualMachineV2NicNetworkInfoIpv4ConfigIpAddress"
          },
          "description": "The IP address of the NIC.\n"
        },
        "secondaryIpAddressLists": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetVirtualMachineV2NicNetworkInfoIpv4ConfigSecondaryIpAddressList:getVirtualMachineV2NicNetworkInfoIpv4ConfigSecondaryIpAddressList"
          },
          "description": "Secondary IP addresses for the NIC.\n"
        },
        "shouldAssignIp": {
          "type": "boolean",
          "description": "If set to true (default value), an IP address must be assigned to the VM NIC - either the one explicitly specified by the user or allocated automatically by the IPAM service by not specifying the IP address. If false, then no IP assignment is required for this VM NIC.\n"
        }
      },
      "type": "object",
      "required": [
        "ipAddresses",
        "secondaryIpAddressLists",
        "shouldAssignIp"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getVirtualMachineV2NicNetworkInfoIpv4ConfigIpAddress:getVirtualMachineV2NicNetworkInfoIpv4ConfigIpAddress": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "The prefix length of the IP address.\n"
        },
        "value": {
          "type": "string",
          "description": "The IPv4 address of the host.\n"
        }
      },
      "type": "object",
      "required": [
        "prefixLength",
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getVirtualMachineV2NicNetworkInfoIpv4ConfigSecondaryIpAddressList:getVirtualMachineV2NicNetworkInfoIpv4ConfigSecondaryIpAddressList": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "The prefix length of the IP address.\n"
        },
        "value": {
          "type": "string",
          "description": "The IPv4 address of the host.\n"
        }
      },
      "type": "object",
      "required": [
        "prefixLength",
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getVirtualMachineV2NicNetworkInfoIpv4Info:getVirtualMachineV2NicNetworkInfoIpv4Info": {
      "properties": {
        "learnedIpAddresses": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetVirtualMachineV2NicNetworkInfoIpv4InfoLearnedIpAddress:getVirtualMachineV2NicNetworkInfoIpv4InfoLearnedIpAddress"
          },
          "description": "The list of IP addresses learned by the NIC.\n"
        }
      },
      "type": "object",
      "required": [
        "learnedIpAddresses"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getVirtualMachineV2NicNetworkInfoIpv4InfoLearnedIpAddress:getVirtualMachineV2NicNetworkInfoIpv4InfoLearnedIpAddress": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "The prefix length of the IP address.\n"
        },
        "value": {
          "type": "string",
          "description": "The IPv4 address of the host.\n"
        }
      },
      "type": "object",
      "required": [
        "prefixLength",
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getVirtualMachineV2NicNetworkInfoNetworkFunctionChain:getVirtualMachineV2NicNetworkInfoNetworkFunctionChain": {
      "properties": {
        "extId": {
          "type": "string",
          "description": "Represents virtual machine UUID\n"
        }
      },
      "type": "object",
      "required": [
        "extId"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getVirtualMachineV2NicNetworkInfoSubnet:getVirtualMachineV2NicNetworkInfoSubnet": {
      "properties": {
        "extId": {
          "type": "string",
          "description": "Represents virtual machine UUID\n"
        }
      },
      "type": "object",
      "required": [
        "extId"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getVirtualMachineV2OwnershipInfo:getVirtualMachineV2OwnershipInfo": {
      "properties": {
        "owners": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetVirtualMachineV2OwnershipInfoOwner:getVirtualMachineV2OwnershipInfoOwner"
          },
          "description": "Reference to the owner.\n"
        }
      },
      "type": "object",
      "required": [
        "owners"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getVirtualMachineV2OwnershipInfoOwner:getVirtualMachineV2OwnershipInfoOwner": {
      "properties": {
        "extId": {
          "type": "string",
          "description": "Represents virtual machine UUID\n"
        }
      },
      "type": "object",
      "required": [
        "extId"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getVirtualMachineV2ProtectionPolicyState:getVirtualMachineV2ProtectionPolicyState": {
      "properties": {
        "policies": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetVirtualMachineV2ProtectionPolicyStatePolicy:getVirtualMachineV2ProtectionPolicyStatePolicy"
          },
          "description": "Reference to the policy object in use.\n"
        }
      },
      "type": "object",
      "required": [
        "policies"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getVirtualMachineV2ProtectionPolicyStatePolicy:getVirtualMachineV2ProtectionPolicyStatePolicy": {
      "properties": {
        "extId": {
          "type": "string",
          "description": "Represents virtual machine UUID\n"
        }
      },
      "type": "object",
      "required": [
        "extId"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getVirtualMachineV2SerialPort:getVirtualMachineV2SerialPort": {
      "properties": {
        "extId": {
          "type": "string",
          "description": "Represents virtual machine UUID\n"
        },
        "index": {
          "type": "integer",
          "description": "Index of the serial port.\n"
        },
        "isConnected": {
          "type": "boolean",
          "description": "Indicates whether the serial port is connected or not.\n"
        }
      },
      "type": "object",
      "required": [
        "extId",
        "index",
        "isConnected"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getVirtualMachineV2Source:getVirtualMachineV2Source": {
      "properties": {
        "entityType": {
          "type": "string",
          "description": "Reference to an entity from which the VM should be cloned or created. Values are:\n- VM_RECOVERY_POINT: Reference to the recovery point entity from which the VM should be cloned or created.\n- VM: Reference to an entity from which the VM should be cloned or created.\n"
        },
        "extId": {
          "type": "string",
          "description": "Represents virtual machine UUID\n"
        }
      },
      "type": "object",
      "required": [
        "entityType",
        "extId"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getVirtualMachineV2StorageConfig:getVirtualMachineV2StorageConfig": {
      "properties": {
        "isFlashModeEnabled": {
          "type": "boolean",
          "description": "Indicates whether the virtual disk is pinned to the hot tier or not.\n"
        },
        "qosConfigs": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetVirtualMachineV2StorageConfigQosConfig:getVirtualMachineV2StorageConfigQosConfig"
          },
          "description": "QoS parameters to be enforced.\n"
        }
      },
      "type": "object",
      "required": [
        "isFlashModeEnabled",
        "qosConfigs"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getVirtualMachineV2StorageConfigQosConfig:getVirtualMachineV2StorageConfigQosConfig": {
      "properties": {
        "throttledIops": {
          "type": "integer",
          "description": "Throttled IOPS for the governed entities. The block size for the I/O is 32 kB.\n"
        }
      },
      "type": "object",
      "required": [
        "throttledIops"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getVirtualMachineV2VtpmConfig:getVirtualMachineV2VtpmConfig": {
      "properties": {
        "isVtpmEnabled": {
          "type": "boolean",
          "description": "Indicates whether the virtual trusted platform module is enabled for the Guest OS or not.\n"
        },
        "version": {
          "type": "string",
          "description": "Virtual trusted platform module version.\n"
        }
      },
      "type": "object",
      "required": [
        "isVtpmEnabled",
        "version"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getVirtualMachinesV2Vm:getVirtualMachinesV2Vm": {
      "properties": {
        "apcConfigs": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetVirtualMachinesV2VmApcConfig:getVirtualMachinesV2VmApcConfig"
          }
        },
        "availabilityZones": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetVirtualMachinesV2VmAvailabilityZone:getVirtualMachinesV2VmAvailabilityZone"
          }
        },
        "biosUuid": {
          "type": "string"
        },
        "bootConfigs": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetVirtualMachinesV2VmBootConfig:getVirtualMachinesV2VmBootConfig"
          }
        },
        "categories": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetVirtualMachinesV2VmCategory:getVirtualMachinesV2VmCategory"
          }
        },
        "cdRoms": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetVirtualMachinesV2VmCdRom:getVirtualMachinesV2VmCdRom"
          }
        },
        "clusters": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetVirtualMachinesV2VmCluster:getVirtualMachinesV2VmCluster"
          }
        },
        "createTime": {
          "type": "string"
        },
        "description": {
          "type": "string"
        },
        "disks": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetVirtualMachinesV2VmDisk:getVirtualMachinesV2VmDisk"
          }
        },
        "enabledCpuFeatures": {
          "type": "array",
          "items": {
            "type": "string"
          }
        },
        "extId": {
          "type": "string"
        },
        "generationUuid": {
          "type": "string"
        },
        "gpuses": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetVirtualMachinesV2VmGpus:getVirtualMachinesV2VmGpus"
          }
        },
        "guestCustomizations": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetVirtualMachinesV2VmGuestCustomization:getVirtualMachinesV2VmGuestCustomization"
          }
        },
        "guestTools": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetVirtualMachinesV2VmGuestTool:getVirtualMachinesV2VmGuestTool"
          }
        },
        "hardwareClockTimezone": {
          "type": "string"
        },
        "hosts": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetVirtualMachinesV2VmHost:getVirtualMachinesV2VmHost"
          }
        },
        "isAgentVm": {
          "type": "boolean"
        },
        "isBrandingEnabled": {
          "type": "boolean"
        },
        "isCpuHotplugEnabled": {
          "type": "boolean"
        },
        "isCpuPassthroughEnabled": {
          "type": "boolean"
        },
        "isGpuConsoleEnabled": {
          "type": "boolean"
        },
        "isMemoryOvercommitEnabled": {
          "type": "boolean"
        },
        "isScsiControllerEnabled": {
          "type": "boolean"
        },
        "isVcpuHardPinningEnabled": {
          "type": "boolean"
        },
        "isVgaConsoleEnabled": {
          "type": "boolean"
        },
        "machineType": {
          "type": "string"
        },
        "memorySizeBytes": {
          "type": "integer"
        },
        "name": {
          "type": "string"
        },
        "nics": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetVirtualMachinesV2VmNic:getVirtualMachinesV2VmNic"
          }
        },
        "numCoresPerSocket": {
          "type": "integer"
        },
        "numNumaNodes": {
          "type": "integer"
        },
        "numSockets": {
          "type": "integer"
        },
        "numThreadsPerCore": {
          "type": "integer"
        },
        "ownershipInfos": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetVirtualMachinesV2VmOwnershipInfo:getVirtualMachinesV2VmOwnershipInfo"
          }
        },
        "powerState": {
          "type": "string"
        },
        "protectionPolicyStates": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetVirtualMachinesV2VmProtectionPolicyState:getVirtualMachinesV2VmProtectionPolicyState"
          }
        },
        "protectionType": {
          "type": "string"
        },
        "serialPorts": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetVirtualMachinesV2VmSerialPort:getVirtualMachinesV2VmSerialPort"
          }
        },
        "sources": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetVirtualMachinesV2VmSource:getVirtualMachinesV2VmSource"
          }
        },
        "storageConfigs": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetVirtualMachinesV2VmStorageConfig:getVirtualMachinesV2VmStorageConfig"
          }
        },
        "updateTime": {
          "type": "string"
        },
        "vtpmConfigs": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetVirtualMachinesV2VmVtpmConfig:getVirtualMachinesV2VmVtpmConfig"
          }
        }
      },
      "type": "object",
      "required": [
        "apcConfigs",
        "availabilityZones",
        "biosUuid",
        "bootConfigs",
        "categories",
        "cdRoms",
        "clusters",
        "createTime",
        "description",
        "disks",
        "enabledCpuFeatures",
        "extId",
        "generationUuid",
        "gpuses",
        "guestCustomizations",
        "guestTools",
        "hardwareClockTimezone",
        "hosts",
        "isAgentVm",
        "isBrandingEnabled",
        "isCpuHotplugEnabled",
        "isCpuPassthroughEnabled",
        "isGpuConsoleEnabled",
        "isMemoryOvercommitEnabled",
        "isScsiControllerEnabled",
        "isVcpuHardPinningEnabled",
        "isVgaConsoleEnabled",
        "machineType",
        "memorySizeBytes",
        "name",
        "nics",
        "numCoresPerSocket",
        "numNumaNodes",
        "numSockets",
        "numThreadsPerCore",
        "ownershipInfos",
        "powerState",
        "protectionPolicyStates",
        "protectionType",
        "serialPorts",
        "sources",
        "storageConfigs",
        "updateTime",
        "vtpmConfigs"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getVirtualMachinesV2VmApcConfig:getVirtualMachinesV2VmApcConfig": {
      "properties": {
        "cpuModels": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetVirtualMachinesV2VmApcConfigCpuModel:getVirtualMachinesV2VmApcConfigCpuModel"
          }
        },
        "isApcEnabled": {
          "type": "boolean"
        }
      },
      "type": "object",
      "required": [
        "cpuModels",
        "isApcEnabled"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getVirtualMachinesV2VmApcConfigCpuModel:getVirtualMachinesV2VmApcConfigCpuModel": {
      "properties": {
        "extId": {
          "type": "string"
        },
        "name": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "extId",
        "name"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getVirtualMachinesV2VmAvailabilityZone:getVirtualMachinesV2VmAvailabilityZone": {
      "properties": {
        "extId": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "extId"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getVirtualMachinesV2VmBootConfig:getVirtualMachinesV2VmBootConfig": {
      "properties": {
        "legacyBoots": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetVirtualMachinesV2VmBootConfigLegacyBoot:getVirtualMachinesV2VmBootConfigLegacyBoot"
          }
        },
        "uefiBoots": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetVirtualMachinesV2VmBootConfigUefiBoot:getVirtualMachinesV2VmBootConfigUefiBoot"
          }
        }
      },
      "type": "object",
      "required": [
        "legacyBoots",
        "uefiBoots"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getVirtualMachinesV2VmBootConfigLegacyBoot:getVirtualMachinesV2VmBootConfigLegacyBoot": {
      "properties": {
        "bootDevices": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetVirtualMachinesV2VmBootConfigLegacyBootBootDevice:getVirtualMachinesV2VmBootConfigLegacyBootBootDevice"
          }
        },
        "bootOrders": {
          "type": "array",
          "items": {
            "type": "string"
          }
        }
      },
      "type": "object",
      "required": [
        "bootDevices",
        "bootOrders"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getVirtualMachinesV2VmBootConfigLegacyBootBootDevice:getVirtualMachinesV2VmBootConfigLegacyBootBootDevice": {
      "properties": {
        "bootDeviceDisks": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetVirtualMachinesV2VmBootConfigLegacyBootBootDeviceBootDeviceDisk:getVirtualMachinesV2VmBootConfigLegacyBootBootDeviceBootDeviceDisk"
          }
        },
        "bootDeviceNics": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetVirtualMachinesV2VmBootConfigLegacyBootBootDeviceBootDeviceNic:getVirtualMachinesV2VmBootConfigLegacyBootBootDeviceBootDeviceNic"
          }
        }
      },
      "type": "object",
      "required": [
        "bootDeviceDisks",
        "bootDeviceNics"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getVirtualMachinesV2VmBootConfigLegacyBootBootDeviceBootDeviceDisk:getVirtualMachinesV2VmBootConfigLegacyBootBootDeviceBootDeviceDisk": {
      "properties": {
        "diskAddresses": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetVirtualMachinesV2VmBootConfigLegacyBootBootDeviceBootDeviceDiskDiskAddress:getVirtualMachinesV2VmBootConfigLegacyBootBootDeviceBootDeviceDiskDiskAddress"
          }
        }
      },
      "type": "object",
      "required": [
        "diskAddresses"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getVirtualMachinesV2VmBootConfigLegacyBootBootDeviceBootDeviceDiskDiskAddress:getVirtualMachinesV2VmBootConfigLegacyBootBootDeviceBootDeviceDiskDiskAddress": {
      "properties": {
        "busType": {
          "type": "string"
        },
        "index": {
          "type": "integer"
        }
      },
      "type": "object",
      "required": [
        "busType",
        "index"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getVirtualMachinesV2VmBootConfigLegacyBootBootDeviceBootDeviceNic:getVirtualMachinesV2VmBootConfigLegacyBootBootDeviceBootDeviceNic": {
      "properties": {
        "macAddress": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "macAddress"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getVirtualMachinesV2VmBootConfigUefiBoot:getVirtualMachinesV2VmBootConfigUefiBoot": {
      "properties": {
        "bootDevices": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetVirtualMachinesV2VmBootConfigUefiBootBootDevice:getVirtualMachinesV2VmBootConfigUefiBootBootDevice"
          }
        },
        "bootOrders": {
          "type": "array",
          "items": {
            "type": "string"
          }
        },
        "isSecureBootEnabled": {
          "type": "boolean"
        },
        "nvramDevices": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetVirtualMachinesV2VmBootConfigUefiBootNvramDevice:getVirtualMachinesV2VmBootConfigUefiBootNvramDevice"
          }
        }
      },
      "type": "object",
      "required": [
        "bootDevices",
        "bootOrders",
        "isSecureBootEnabled",
        "nvramDevices"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getVirtualMachinesV2VmBootConfigUefiBootBootDevice:getVirtualMachinesV2VmBootConfigUefiBootBootDevice": {
      "properties": {
        "bootDeviceDisks": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetVirtualMachinesV2VmBootConfigUefiBootBootDeviceBootDeviceDisk:getVirtualMachinesV2VmBootConfigUefiBootBootDeviceBootDeviceDisk"
          }
        },
        "bootDeviceNics": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetVirtualMachinesV2VmBootConfigUefiBootBootDeviceBootDeviceNic:getVirtualMachinesV2VmBootConfigUefiBootBootDeviceBootDeviceNic"
          }
        }
      },
      "type": "object",
      "required": [
        "bootDeviceDisks",
        "bootDeviceNics"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getVirtualMachinesV2VmBootConfigUefiBootBootDeviceBootDeviceDisk:getVirtualMachinesV2VmBootConfigUefiBootBootDeviceBootDeviceDisk": {
      "properties": {
        "diskAddresses": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetVirtualMachinesV2VmBootConfigUefiBootBootDeviceBootDeviceDiskDiskAddress:getVirtualMachinesV2VmBootConfigUefiBootBootDeviceBootDeviceDiskDiskAddress"
          }
        }
      },
      "type": "object",
      "required": [
        "diskAddresses"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getVirtualMachinesV2VmBootConfigUefiBootBootDeviceBootDeviceDiskDiskAddress:getVirtualMachinesV2VmBootConfigUefiBootBootDeviceBootDeviceDiskDiskAddress": {
      "properties": {
        "busType": {
          "type": "string"
        },
        "index": {
          "type": "integer"
        }
      },
      "type": "object",
      "required": [
        "busType",
        "index"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getVirtualMachinesV2VmBootConfigUefiBootBootDeviceBootDeviceNic:getVirtualMachinesV2VmBootConfigUefiBootBootDeviceBootDeviceNic": {
      "properties": {
        "macAddress": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "macAddress"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getVirtualMachinesV2VmBootConfigUefiBootNvramDevice:getVirtualMachinesV2VmBootConfigUefiBootNvramDevice": {
      "properties": {
        "backingStorageInfos": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetVirtualMachinesV2VmBootConfigUefiBootNvramDeviceBackingStorageInfo:getVirtualMachinesV2VmBootConfigUefiBootNvramDeviceBackingStorageInfo"
          }
        }
      },
      "type": "object",
      "required": [
        "backingStorageInfos"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getVirtualMachinesV2VmBootConfigUefiBootNvramDeviceBackingStorageInfo:getVirtualMachinesV2VmBootConfigUefiBootNvramDeviceBackingStorageInfo": {
      "properties": {
        "dataSources": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetVirtualMachinesV2VmBootConfigUefiBootNvramDeviceBackingStorageInfoDataSource:getVirtualMachinesV2VmBootConfigUefiBootNvramDeviceBackingStorageInfoDataSource"
          }
        },
        "diskExtId": {
          "type": "string"
        },
        "diskSizeBytes": {
          "type": "integer"
        },
        "isMigrationInProgress": {
          "type": "boolean"
        },
        "storageConfigs": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetVirtualMachinesV2VmBootConfigUefiBootNvramDeviceBackingStorageInfoStorageConfig:getVirtualMachinesV2VmBootConfigUefiBootNvramDeviceBackingStorageInfoStorageConfig"
          }
        },
        "storageContainers": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetVirtualMachinesV2VmBootConfigUefiBootNvramDeviceBackingStorageInfoStorageContainer:getVirtualMachinesV2VmBootConfigUefiBootNvramDeviceBackingStorageInfoStorageContainer"
          }
        }
      },
      "type": "object",
      "required": [
        "dataSources",
        "diskExtId",
        "diskSizeBytes",
        "isMigrationInProgress",
        "storageConfigs",
        "storageContainers"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getVirtualMachinesV2VmBootConfigUefiBootNvramDeviceBackingStorageInfoDataSource:getVirtualMachinesV2VmBootConfigUefiBootNvramDeviceBackingStorageInfoDataSource": {
      "properties": {
        "references": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetVirtualMachinesV2VmBootConfigUefiBootNvramDeviceBackingStorageInfoDataSourceReference:getVirtualMachinesV2VmBootConfigUefiBootNvramDeviceBackingStorageInfoDataSourceReference"
          }
        }
      },
      "type": "object",
      "required": [
        "references"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getVirtualMachinesV2VmBootConfigUefiBootNvramDeviceBackingStorageInfoDataSourceReference:getVirtualMachinesV2VmBootConfigUefiBootNvramDeviceBackingStorageInfoDataSourceReference": {
      "properties": {
        "imageReferences": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetVirtualMachinesV2VmBootConfigUefiBootNvramDeviceBackingStorageInfoDataSourceReferenceImageReference:getVirtualMachinesV2VmBootConfigUefiBootNvramDeviceBackingStorageInfoDataSourceReferenceImageReference"
          }
        },
        "vmDiskReferences": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetVirtualMachinesV2VmBootConfigUefiBootNvramDeviceBackingStorageInfoDataSourceReferenceVmDiskReference:getVirtualMachinesV2VmBootConfigUefiBootNvramDeviceBackingStorageInfoDataSourceReferenceVmDiskReference"
          }
        }
      },
      "type": "object",
      "required": [
        "imageReferences",
        "vmDiskReferences"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getVirtualMachinesV2VmBootConfigUefiBootNvramDeviceBackingStorageInfoDataSourceReferenceImageReference:getVirtualMachinesV2VmBootConfigUefiBootNvramDeviceBackingStorageInfoDataSourceReferenceImageReference": {
      "properties": {
        "imageExtId": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "imageExtId"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getVirtualMachinesV2VmBootConfigUefiBootNvramDeviceBackingStorageInfoDataSourceReferenceVmDiskReference:getVirtualMachinesV2VmBootConfigUefiBootNvramDeviceBackingStorageInfoDataSourceReferenceVmDiskReference": {
      "properties": {
        "diskAddresses": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetVirtualMachinesV2VmBootConfigUefiBootNvramDeviceBackingStorageInfoDataSourceReferenceVmDiskReferenceDiskAddress:getVirtualMachinesV2VmBootConfigUefiBootNvramDeviceBackingStorageInfoDataSourceReferenceVmDiskReferenceDiskAddress"
          }
        },
        "diskExtId": {
          "type": "string"
        },
        "vmReferences": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetVirtualMachinesV2VmBootConfigUefiBootNvramDeviceBackingStorageInfoDataSourceReferenceVmDiskReferenceVmReference:getVirtualMachinesV2VmBootConfigUefiBootNvramDeviceBackingStorageInfoDataSourceReferenceVmDiskReferenceVmReference"
          }
        }
      },
      "type": "object",
      "required": [
        "diskAddresses",
        "diskExtId",
        "vmReferences"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getVirtualMachinesV2VmBootConfigUefiBootNvramDeviceBackingStorageInfoDataSourceReferenceVmDiskReferenceDiskAddress:getVirtualMachinesV2VmBootConfigUefiBootNvramDeviceBackingStorageInfoDataSourceReferenceVmDiskReferenceDiskAddress": {
      "properties": {
        "busType": {
          "type": "string"
        },
        "index": {
          "type": "integer"
        }
      },
      "type": "object",
      "required": [
        "busType",
        "index"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getVirtualMachinesV2VmBootConfigUefiBootNvramDeviceBackingStorageInfoDataSourceReferenceVmDiskReferenceVmReference:getVirtualMachinesV2VmBootConfigUefiBootNvramDeviceBackingStorageInfoDataSourceReferenceVmDiskReferenceVmReference": {
      "properties": {
        "extId": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "extId"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getVirtualMachinesV2VmBootConfigUefiBootNvramDeviceBackingStorageInfoStorageConfig:getVirtualMachinesV2VmBootConfigUefiBootNvramDeviceBackingStorageInfoStorageConfig": {
      "properties": {
        "isFlashModeEnabled": {
          "type": "boolean"
        }
      },
      "type": "object",
      "required": [
        "isFlashModeEnabled"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getVirtualMachinesV2VmBootConfigUefiBootNvramDeviceBackingStorageInfoStorageContainer:getVirtualMachinesV2VmBootConfigUefiBootNvramDeviceBackingStorageInfoStorageContainer": {
      "properties": {
        "extId": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "extId"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getVirtualMachinesV2VmCategory:getVirtualMachinesV2VmCategory": {
      "properties": {
        "extId": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "extId"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getVirtualMachinesV2VmCdRom:getVirtualMachinesV2VmCdRom": {
      "properties": {
        "backingInfos": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetVirtualMachinesV2VmCdRomBackingInfo:getVirtualMachinesV2VmCdRomBackingInfo"
          }
        },
        "diskAddresses": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetVirtualMachinesV2VmCdRomDiskAddress:getVirtualMachinesV2VmCdRomDiskAddress"
          }
        },
        "extId": {
          "type": "string"
        },
        "isoType": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "backingInfos",
        "diskAddresses",
        "extId",
        "isoType"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getVirtualMachinesV2VmCdRomBackingInfo:getVirtualMachinesV2VmCdRomBackingInfo": {
      "properties": {
        "dataSources": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetVirtualMachinesV2VmCdRomBackingInfoDataSource:getVirtualMachinesV2VmCdRomBackingInfoDataSource"
          }
        },
        "diskExtId": {
          "type": "string"
        },
        "diskSizeBytes": {
          "type": "integer"
        },
        "isMigrationInProgress": {
          "type": "boolean"
        },
        "storageConfigs": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetVirtualMachinesV2VmCdRomBackingInfoStorageConfig:getVirtualMachinesV2VmCdRomBackingInfoStorageConfig"
          }
        },
        "storageContainers": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetVirtualMachinesV2VmCdRomBackingInfoStorageContainer:getVirtualMachinesV2VmCdRomBackingInfoStorageContainer"
          }
        }
      },
      "type": "object",
      "required": [
        "dataSources",
        "diskExtId",
        "diskSizeBytes",
        "isMigrationInProgress",
        "storageConfigs",
        "storageContainers"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getVirtualMachinesV2VmCdRomBackingInfoDataSource:getVirtualMachinesV2VmCdRomBackingInfoDataSource": {
      "properties": {
        "references": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetVirtualMachinesV2VmCdRomBackingInfoDataSourceReference:getVirtualMachinesV2VmCdRomBackingInfoDataSourceReference"
          }
        }
      },
      "type": "object",
      "required": [
        "references"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getVirtualMachinesV2VmCdRomBackingInfoDataSourceReference:getVirtualMachinesV2VmCdRomBackingInfoDataSourceReference": {
      "properties": {
        "imageReferences": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetVirtualMachinesV2VmCdRomBackingInfoDataSourceReferenceImageReference:getVirtualMachinesV2VmCdRomBackingInfoDataSourceReferenceImageReference"
          }
        },
        "vmDiskReferences": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetVirtualMachinesV2VmCdRomBackingInfoDataSourceReferenceVmDiskReference:getVirtualMachinesV2VmCdRomBackingInfoDataSourceReferenceVmDiskReference"
          }
        }
      },
      "type": "object",
      "required": [
        "imageReferences",
        "vmDiskReferences"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getVirtualMachinesV2VmCdRomBackingInfoDataSourceReferenceImageReference:getVirtualMachinesV2VmCdRomBackingInfoDataSourceReferenceImageReference": {
      "properties": {
        "imageExtId": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "imageExtId"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getVirtualMachinesV2VmCdRomBackingInfoDataSourceReferenceVmDiskReference:getVirtualMachinesV2VmCdRomBackingInfoDataSourceReferenceVmDiskReference": {
      "properties": {
        "diskAddresses": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetVirtualMachinesV2VmCdRomBackingInfoDataSourceReferenceVmDiskReferenceDiskAddress:getVirtualMachinesV2VmCdRomBackingInfoDataSourceReferenceVmDiskReferenceDiskAddress"
          }
        },
        "diskExtId": {
          "type": "string"
        },
        "vmReferences": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetVirtualMachinesV2VmCdRomBackingInfoDataSourceReferenceVmDiskReferenceVmReference:getVirtualMachinesV2VmCdRomBackingInfoDataSourceReferenceVmDiskReferenceVmReference"
          }
        }
      },
      "type": "object",
      "required": [
        "diskAddresses",
        "diskExtId",
        "vmReferences"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getVirtualMachinesV2VmCdRomBackingInfoDataSourceReferenceVmDiskReferenceDiskAddress:getVirtualMachinesV2VmCdRomBackingInfoDataSourceReferenceVmDiskReferenceDiskAddress": {
      "properties": {
        "busType": {
          "type": "string"
        },
        "index": {
          "type": "integer"
        }
      },
      "type": "object",
      "required": [
        "busType",
        "index"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getVirtualMachinesV2VmCdRomBackingInfoDataSourceReferenceVmDiskReferenceVmReference:getVirtualMachinesV2VmCdRomBackingInfoDataSourceReferenceVmDiskReferenceVmReference": {
      "properties": {
        "extId": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "extId"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getVirtualMachinesV2VmCdRomBackingInfoStorageConfig:getVirtualMachinesV2VmCdRomBackingInfoStorageConfig": {
      "properties": {
        "isFlashModeEnabled": {
          "type": "boolean"
        }
      },
      "type": "object",
      "required": [
        "isFlashModeEnabled"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getVirtualMachinesV2VmCdRomBackingInfoStorageContainer:getVirtualMachinesV2VmCdRomBackingInfoStorageContainer": {
      "properties": {
        "extId": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "extId"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getVirtualMachinesV2VmCdRomDiskAddress:getVirtualMachinesV2VmCdRomDiskAddress": {
      "properties": {
        "busType": {
          "type": "string"
        },
        "index": {
          "type": "integer"
        }
      },
      "type": "object",
      "required": [
        "busType",
        "index"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getVirtualMachinesV2VmCluster:getVirtualMachinesV2VmCluster": {
      "properties": {
        "extId": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "extId"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getVirtualMachinesV2VmDisk:getVirtualMachinesV2VmDisk": {
      "properties": {
        "backingInfos": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetVirtualMachinesV2VmDiskBackingInfo:getVirtualMachinesV2VmDiskBackingInfo"
          }
        },
        "diskAddresses": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetVirtualMachinesV2VmDiskDiskAddress:getVirtualMachinesV2VmDiskDiskAddress"
          }
        },
        "extId": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "backingInfos",
        "diskAddresses",
        "extId"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getVirtualMachinesV2VmDiskBackingInfo:getVirtualMachinesV2VmDiskBackingInfo": {
      "properties": {
        "adfsVolumeGroupReferences": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetVirtualMachinesV2VmDiskBackingInfoAdfsVolumeGroupReference:getVirtualMachinesV2VmDiskBackingInfoAdfsVolumeGroupReference"
          }
        },
        "vmDisks": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetVirtualMachinesV2VmDiskBackingInfoVmDisk:getVirtualMachinesV2VmDiskBackingInfoVmDisk"
          }
        }
      },
      "type": "object",
      "required": [
        "adfsVolumeGroupReferences",
        "vmDisks"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getVirtualMachinesV2VmDiskBackingInfoAdfsVolumeGroupReference:getVirtualMachinesV2VmDiskBackingInfoAdfsVolumeGroupReference": {
      "properties": {
        "volumeGroupExtId": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "volumeGroupExtId"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getVirtualMachinesV2VmDiskBackingInfoVmDisk:getVirtualMachinesV2VmDiskBackingInfoVmDisk": {
      "properties": {
        "dataSources": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetVirtualMachinesV2VmDiskBackingInfoVmDiskDataSource:getVirtualMachinesV2VmDiskBackingInfoVmDiskDataSource"
          }
        },
        "diskExtId": {
          "type": "string"
        },
        "diskSizeBytes": {
          "type": "integer"
        },
        "isMigrationInProgress": {
          "type": "boolean"
        },
        "storageConfigs": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetVirtualMachinesV2VmDiskBackingInfoVmDiskStorageConfig:getVirtualMachinesV2VmDiskBackingInfoVmDiskStorageConfig"
          }
        },
        "storageContainers": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetVirtualMachinesV2VmDiskBackingInfoVmDiskStorageContainer:getVirtualMachinesV2VmDiskBackingInfoVmDiskStorageContainer"
          }
        }
      },
      "type": "object",
      "required": [
        "dataSources",
        "diskExtId",
        "diskSizeBytes",
        "isMigrationInProgress",
        "storageConfigs",
        "storageContainers"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getVirtualMachinesV2VmDiskBackingInfoVmDiskDataSource:getVirtualMachinesV2VmDiskBackingInfoVmDiskDataSource": {
      "properties": {
        "references": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetVirtualMachinesV2VmDiskBackingInfoVmDiskDataSourceReference:getVirtualMachinesV2VmDiskBackingInfoVmDiskDataSourceReference"
          }
        }
      },
      "type": "object",
      "required": [
        "references"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getVirtualMachinesV2VmDiskBackingInfoVmDiskDataSourceReference:getVirtualMachinesV2VmDiskBackingInfoVmDiskDataSourceReference": {
      "properties": {
        "imageReferences": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetVirtualMachinesV2VmDiskBackingInfoVmDiskDataSourceReferenceImageReference:getVirtualMachinesV2VmDiskBackingInfoVmDiskDataSourceReferenceImageReference"
          }
        },
        "vmDiskReferences": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetVirtualMachinesV2VmDiskBackingInfoVmDiskDataSourceReferenceVmDiskReference:getVirtualMachinesV2VmDiskBackingInfoVmDiskDataSourceReferenceVmDiskReference"
          }
        }
      },
      "type": "object",
      "required": [
        "imageReferences",
        "vmDiskReferences"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getVirtualMachinesV2VmDiskBackingInfoVmDiskDataSourceReferenceImageReference:getVirtualMachinesV2VmDiskBackingInfoVmDiskDataSourceReferenceImageReference": {
      "properties": {
        "imageExtId": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "imageExtId"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getVirtualMachinesV2VmDiskBackingInfoVmDiskDataSourceReferenceVmDiskReference:getVirtualMachinesV2VmDiskBackingInfoVmDiskDataSourceReferenceVmDiskReference": {
      "properties": {
        "diskAddresses": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetVirtualMachinesV2VmDiskBackingInfoVmDiskDataSourceReferenceVmDiskReferenceDiskAddress:getVirtualMachinesV2VmDiskBackingInfoVmDiskDataSourceReferenceVmDiskReferenceDiskAddress"
          }
        },
        "diskExtId": {
          "type": "string"
        },
        "vmReferences": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetVirtualMachinesV2VmDiskBackingInfoVmDiskDataSourceReferenceVmDiskReferenceVmReference:getVirtualMachinesV2VmDiskBackingInfoVmDiskDataSourceReferenceVmDiskReferenceVmReference"
          }
        }
      },
      "type": "object",
      "required": [
        "diskAddresses",
        "diskExtId",
        "vmReferences"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getVirtualMachinesV2VmDiskBackingInfoVmDiskDataSourceReferenceVmDiskReferenceDiskAddress:getVirtualMachinesV2VmDiskBackingInfoVmDiskDataSourceReferenceVmDiskReferenceDiskAddress": {
      "properties": {
        "busType": {
          "type": "string"
        },
        "index": {
          "type": "integer"
        }
      },
      "type": "object",
      "required": [
        "busType",
        "index"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getVirtualMachinesV2VmDiskBackingInfoVmDiskDataSourceReferenceVmDiskReferenceVmReference:getVirtualMachinesV2VmDiskBackingInfoVmDiskDataSourceReferenceVmDiskReferenceVmReference": {
      "properties": {
        "extId": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "extId"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getVirtualMachinesV2VmDiskBackingInfoVmDiskStorageConfig:getVirtualMachinesV2VmDiskBackingInfoVmDiskStorageConfig": {
      "properties": {
        "isFlashModeEnabled": {
          "type": "boolean"
        }
      },
      "type": "object",
      "required": [
        "isFlashModeEnabled"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getVirtualMachinesV2VmDiskBackingInfoVmDiskStorageContainer:getVirtualMachinesV2VmDiskBackingInfoVmDiskStorageContainer": {
      "properties": {
        "extId": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "extId"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getVirtualMachinesV2VmDiskDiskAddress:getVirtualMachinesV2VmDiskDiskAddress": {
      "properties": {
        "busType": {
          "type": "string"
        },
        "index": {
          "type": "integer"
        }
      },
      "type": "object",
      "required": [
        "busType",
        "index"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getVirtualMachinesV2VmGpus:getVirtualMachinesV2VmGpus": {
      "properties": {
        "deviceId": {
          "type": "integer"
        },
        "extId": {
          "type": "string"
        },
        "fraction": {
          "type": "integer"
        },
        "frameBufferSizeBytes": {
          "type": "integer"
        },
        "guestDriverVersion": {
          "type": "string"
        },
        "links": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetVirtualMachinesV2VmGpusLink:getVirtualMachinesV2VmGpusLink"
          }
        },
        "mode": {
          "type": "string"
        },
        "name": {
          "type": "string"
        },
        "numVirtualDisplayHeads": {
          "type": "integer"
        },
        "pciAddresses": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetVirtualMachinesV2VmGpusPciAddress:getVirtualMachinesV2VmGpusPciAddress"
          }
        },
        "tenantId": {
          "type": "string"
        },
        "vendor": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "deviceId",
        "extId",
        "fraction",
        "frameBufferSizeBytes",
        "guestDriverVersion",
        "links",
        "mode",
        "name",
        "numVirtualDisplayHeads",
        "pciAddresses",
        "tenantId",
        "vendor"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getVirtualMachinesV2VmGpusLink:getVirtualMachinesV2VmGpusLink": {
      "properties": {
        "href": {
          "type": "string"
        },
        "rel": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "href",
        "rel"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getVirtualMachinesV2VmGpusPciAddress:getVirtualMachinesV2VmGpusPciAddress": {
      "properties": {
        "bus": {
          "type": "integer"
        },
        "device": {
          "type": "integer"
        },
        "func": {
          "type": "integer"
        },
        "segment": {
          "type": "integer"
        }
      },
      "type": "object",
      "required": [
        "bus",
        "device",
        "func",
        "segment"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getVirtualMachinesV2VmGuestCustomization:getVirtualMachinesV2VmGuestCustomization": {
      "properties": {
        "configs": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetVirtualMachinesV2VmGuestCustomizationConfig:getVirtualMachinesV2VmGuestCustomizationConfig"
          }
        }
      },
      "type": "object",
      "required": [
        "configs"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getVirtualMachinesV2VmGuestCustomizationConfig:getVirtualMachinesV2VmGuestCustomizationConfig": {
      "properties": {
        "cloudInits": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetVirtualMachinesV2VmGuestCustomizationConfigCloudInit:getVirtualMachinesV2VmGuestCustomizationConfigCloudInit"
          }
        },
        "syspreps": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetVirtualMachinesV2VmGuestCustomizationConfigSysprep:getVirtualMachinesV2VmGuestCustomizationConfigSysprep"
          }
        }
      },
      "type": "object",
      "required": [
        "cloudInits",
        "syspreps"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getVirtualMachinesV2VmGuestCustomizationConfigCloudInit:getVirtualMachinesV2VmGuestCustomizationConfigCloudInit": {
      "properties": {
        "cloudInitScripts": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetVirtualMachinesV2VmGuestCustomizationConfigCloudInitCloudInitScript:getVirtualMachinesV2VmGuestCustomizationConfigCloudInitCloudInitScript"
          }
        },
        "datasourceType": {
          "type": "string"
        },
        "metadata": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "cloudInitScripts",
        "datasourceType",
        "metadata"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getVirtualMachinesV2VmGuestCustomizationConfigCloudInitCloudInitScript:getVirtualMachinesV2VmGuestCustomizationConfigCloudInitCloudInitScript": {
      "properties": {
        "customKeys": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetVirtualMachinesV2VmGuestCustomizationConfigCloudInitCloudInitScriptCustomKey:getVirtualMachinesV2VmGuestCustomizationConfigCloudInitCloudInitScriptCustomKey"
          }
        },
        "userDatas": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetVirtualMachinesV2VmGuestCustomizationConfigCloudInitCloudInitScriptUserData:getVirtualMachinesV2VmGuestCustomizationConfigCloudInitCloudInitScriptUserData"
          }
        }
      },
      "type": "object",
      "required": [
        "customKeys",
        "userDatas"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getVirtualMachinesV2VmGuestCustomizationConfigCloudInitCloudInitScriptCustomKey:getVirtualMachinesV2VmGuestCustomizationConfigCloudInitCloudInitScriptCustomKey": {
      "properties": {
        "keyValuePairs": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetVirtualMachinesV2VmGuestCustomizationConfigCloudInitCloudInitScriptCustomKeyKeyValuePair:getVirtualMachinesV2VmGuestCustomizationConfigCloudInitCloudInitScriptCustomKeyKeyValuePair"
          }
        }
      },
      "type": "object",
      "required": [
        "keyValuePairs"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getVirtualMachinesV2VmGuestCustomizationConfigCloudInitCloudInitScriptCustomKeyKeyValuePair:getVirtualMachinesV2VmGuestCustomizationConfigCloudInitCloudInitScriptCustomKeyKeyValuePair": {
      "properties": {
        "name": {
          "type": "string"
        },
        "value": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "name",
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getVirtualMachinesV2VmGuestCustomizationConfigCloudInitCloudInitScriptUserData:getVirtualMachinesV2VmGuestCustomizationConfigCloudInitCloudInitScriptUserData": {
      "properties": {
        "value": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getVirtualMachinesV2VmGuestCustomizationConfigSysprep:getVirtualMachinesV2VmGuestCustomizationConfigSysprep": {
      "properties": {
        "installType": {
          "type": "string"
        },
        "sysprepScripts": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetVirtualMachinesV2VmGuestCustomizationConfigSysprepSysprepScript:getVirtualMachinesV2VmGuestCustomizationConfigSysprepSysprepScript"
          }
        }
      },
      "type": "object",
      "required": [
        "installType",
        "sysprepScripts"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getVirtualMachinesV2VmGuestCustomizationConfigSysprepSysprepScript:getVirtualMachinesV2VmGuestCustomizationConfigSysprepSysprepScript": {
      "properties": {
        "customKeyValues": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetVirtualMachinesV2VmGuestCustomizationConfigSysprepSysprepScriptCustomKeyValue:getVirtualMachinesV2VmGuestCustomizationConfigSysprepSysprepScriptCustomKeyValue"
          }
        },
        "unattendXmls": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetVirtualMachinesV2VmGuestCustomizationConfigSysprepSysprepScriptUnattendXml:getVirtualMachinesV2VmGuestCustomizationConfigSysprepSysprepScriptUnattendXml"
          }
        }
      },
      "type": "object",
      "required": [
        "customKeyValues",
        "unattendXmls"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getVirtualMachinesV2VmGuestCustomizationConfigSysprepSysprepScriptCustomKeyValue:getVirtualMachinesV2VmGuestCustomizationConfigSysprepSysprepScriptCustomKeyValue": {
      "properties": {
        "keyValuePairs": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetVirtualMachinesV2VmGuestCustomizationConfigSysprepSysprepScriptCustomKeyValueKeyValuePair:getVirtualMachinesV2VmGuestCustomizationConfigSysprepSysprepScriptCustomKeyValueKeyValuePair"
          }
        }
      },
      "type": "object",
      "required": [
        "keyValuePairs"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getVirtualMachinesV2VmGuestCustomizationConfigSysprepSysprepScriptCustomKeyValueKeyValuePair:getVirtualMachinesV2VmGuestCustomizationConfigSysprepSysprepScriptCustomKeyValueKeyValuePair": {
      "properties": {
        "name": {
          "type": "string"
        },
        "value": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "name",
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getVirtualMachinesV2VmGuestCustomizationConfigSysprepSysprepScriptUnattendXml:getVirtualMachinesV2VmGuestCustomizationConfigSysprepSysprepScriptUnattendXml": {
      "properties": {
        "value": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getVirtualMachinesV2VmGuestTool:getVirtualMachinesV2VmGuestTool": {
      "properties": {
        "availableVersion": {
          "type": "string"
        },
        "capabilities": {
          "type": "array",
          "items": {
            "type": "string"
          }
        },
        "guestOsVersion": {
          "type": "string"
        },
        "isEnabled": {
          "type": "boolean"
        },
        "isInstalled": {
          "type": "boolean"
        },
        "isIsoInserted": {
          "type": "boolean"
        },
        "isReachable": {
          "type": "boolean"
        },
        "isVmMobilityDriversInstalled": {
          "type": "boolean"
        },
        "isVssSnapshotCapable": {
          "type": "boolean"
        },
        "version": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "availableVersion",
        "capabilities",
        "guestOsVersion",
        "isEnabled",
        "isInstalled",
        "isIsoInserted",
        "isReachable",
        "isVmMobilityDriversInstalled",
        "isVssSnapshotCapable",
        "version"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getVirtualMachinesV2VmHost:getVirtualMachinesV2VmHost": {
      "properties": {
        "extId": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "extId"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getVirtualMachinesV2VmNic:getVirtualMachinesV2VmNic": {
      "properties": {
        "backingInfos": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetVirtualMachinesV2VmNicBackingInfo:getVirtualMachinesV2VmNicBackingInfo"
          }
        },
        "extId": {
          "type": "string"
        },
        "networkInfos": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetVirtualMachinesV2VmNicNetworkInfo:getVirtualMachinesV2VmNicNetworkInfo"
          }
        }
      },
      "type": "object",
      "required": [
        "backingInfos",
        "extId",
        "networkInfos"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getVirtualMachinesV2VmNicBackingInfo:getVirtualMachinesV2VmNicBackingInfo": {
      "properties": {
        "isConnected": {
          "type": "boolean"
        },
        "macAddress": {
          "type": "string"
        },
        "model": {
          "type": "string"
        },
        "numQueues": {
          "type": "integer"
        }
      },
      "type": "object",
      "required": [
        "isConnected",
        "macAddress",
        "model",
        "numQueues"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getVirtualMachinesV2VmNicNetworkInfo:getVirtualMachinesV2VmNicNetworkInfo": {
      "properties": {
        "ipv4Configs": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetVirtualMachinesV2VmNicNetworkInfoIpv4Config:getVirtualMachinesV2VmNicNetworkInfoIpv4Config"
          }
        },
        "ipv4Infos": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetVirtualMachinesV2VmNicNetworkInfoIpv4Info:getVirtualMachinesV2VmNicNetworkInfoIpv4Info"
          }
        },
        "networkFunctionChains": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetVirtualMachinesV2VmNicNetworkInfoNetworkFunctionChain:getVirtualMachinesV2VmNicNetworkInfoNetworkFunctionChain"
          }
        },
        "networkFunctionNicType": {
          "type": "string"
        },
        "nicType": {
          "type": "string"
        },
        "shouldAllowUnknownMacs": {
          "type": "boolean"
        },
        "subnets": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetVirtualMachinesV2VmNicNetworkInfoSubnet:getVirtualMachinesV2VmNicNetworkInfoSubnet"
          }
        },
        "trunkedVlans": {
          "type": "array",
          "items": {
            "type": "integer"
          }
        },
        "vlanMode": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "ipv4Configs",
        "ipv4Infos",
        "networkFunctionChains",
        "networkFunctionNicType",
        "nicType",
        "shouldAllowUnknownMacs",
        "subnets",
        "trunkedVlans",
        "vlanMode"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getVirtualMachinesV2VmNicNetworkInfoIpv4Config:getVirtualMachinesV2VmNicNetworkInfoIpv4Config": {
      "properties": {
        "ipAddresses": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetVirtualMachinesV2VmNicNetworkInfoIpv4ConfigIpAddress:getVirtualMachinesV2VmNicNetworkInfoIpv4ConfigIpAddress"
          }
        },
        "secondaryIpAddressLists": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetVirtualMachinesV2VmNicNetworkInfoIpv4ConfigSecondaryIpAddressList:getVirtualMachinesV2VmNicNetworkInfoIpv4ConfigSecondaryIpAddressList"
          }
        },
        "shouldAssignIp": {
          "type": "boolean"
        }
      },
      "type": "object",
      "required": [
        "ipAddresses",
        "secondaryIpAddressLists",
        "shouldAssignIp"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getVirtualMachinesV2VmNicNetworkInfoIpv4ConfigIpAddress:getVirtualMachinesV2VmNicNetworkInfoIpv4ConfigIpAddress": {
      "properties": {
        "prefixLength": {
          "type": "integer"
        },
        "value": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "prefixLength",
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getVirtualMachinesV2VmNicNetworkInfoIpv4ConfigSecondaryIpAddressList:getVirtualMachinesV2VmNicNetworkInfoIpv4ConfigSecondaryIpAddressList": {
      "properties": {
        "prefixLength": {
          "type": "integer"
        },
        "value": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "prefixLength",
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getVirtualMachinesV2VmNicNetworkInfoIpv4Info:getVirtualMachinesV2VmNicNetworkInfoIpv4Info": {
      "properties": {
        "learnedIpAddresses": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetVirtualMachinesV2VmNicNetworkInfoIpv4InfoLearnedIpAddress:getVirtualMachinesV2VmNicNetworkInfoIpv4InfoLearnedIpAddress"
          }
        }
      },
      "type": "object",
      "required": [
        "learnedIpAddresses"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getVirtualMachinesV2VmNicNetworkInfoIpv4InfoLearnedIpAddress:getVirtualMachinesV2VmNicNetworkInfoIpv4InfoLearnedIpAddress": {
      "properties": {
        "prefixLength": {
          "type": "integer"
        },
        "value": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "prefixLength",
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getVirtualMachinesV2VmNicNetworkInfoNetworkFunctionChain:getVirtualMachinesV2VmNicNetworkInfoNetworkFunctionChain": {
      "properties": {
        "extId": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "extId"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getVirtualMachinesV2VmNicNetworkInfoSubnet:getVirtualMachinesV2VmNicNetworkInfoSubnet": {
      "properties": {
        "extId": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "extId"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getVirtualMachinesV2VmOwnershipInfo:getVirtualMachinesV2VmOwnershipInfo": {
      "properties": {
        "owners": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetVirtualMachinesV2VmOwnershipInfoOwner:getVirtualMachinesV2VmOwnershipInfoOwner"
          }
        }
      },
      "type": "object",
      "required": [
        "owners"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getVirtualMachinesV2VmOwnershipInfoOwner:getVirtualMachinesV2VmOwnershipInfoOwner": {
      "properties": {
        "extId": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "extId"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getVirtualMachinesV2VmProtectionPolicyState:getVirtualMachinesV2VmProtectionPolicyState": {
      "properties": {
        "policies": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetVirtualMachinesV2VmProtectionPolicyStatePolicy:getVirtualMachinesV2VmProtectionPolicyStatePolicy"
          }
        }
      },
      "type": "object",
      "required": [
        "policies"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getVirtualMachinesV2VmProtectionPolicyStatePolicy:getVirtualMachinesV2VmProtectionPolicyStatePolicy": {
      "properties": {
        "extId": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "extId"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getVirtualMachinesV2VmSerialPort:getVirtualMachinesV2VmSerialPort": {
      "properties": {
        "extId": {
          "type": "string"
        },
        "index": {
          "type": "integer"
        },
        "isConnected": {
          "type": "boolean"
        }
      },
      "type": "object",
      "required": [
        "extId",
        "index",
        "isConnected"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getVirtualMachinesV2VmSource:getVirtualMachinesV2VmSource": {
      "properties": {
        "entityType": {
          "type": "string"
        },
        "extId": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "entityType",
        "extId"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getVirtualMachinesV2VmStorageConfig:getVirtualMachinesV2VmStorageConfig": {
      "properties": {
        "isFlashModeEnabled": {
          "type": "boolean"
        },
        "qosConfigs": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetVirtualMachinesV2VmStorageConfigQosConfig:getVirtualMachinesV2VmStorageConfigQosConfig"
          }
        }
      },
      "type": "object",
      "required": [
        "isFlashModeEnabled",
        "qosConfigs"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getVirtualMachinesV2VmStorageConfigQosConfig:getVirtualMachinesV2VmStorageConfigQosConfig": {
      "properties": {
        "throttledIops": {
          "type": "integer"
        }
      },
      "type": "object",
      "required": [
        "throttledIops"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getVirtualMachinesV2VmVtpmConfig:getVirtualMachinesV2VmVtpmConfig": {
      "properties": {
        "isVtpmEnabled": {
          "type": "boolean"
        },
        "version": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "isVtpmEnabled",
        "version"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getVmRecoveryPointInfoV2ApplicationConsistentProperty:getVmRecoveryPointInfoV2ApplicationConsistentProperty": {
      "properties": {
        "backupType": {
          "type": "string",
          "description": "The backup type specifies the criteria for identifying the files to be backed up. This property should be specified to the application-consistent recovery points for Windows VMs/agents. The following backup types are supported for the application-consistent recovery points:\n* supported values:\n* `FULL_BACKUP`: -  All the files are backed up irrespective of their last backup date/time or state. Also, this backup type updates the backup history of each file that participated in the recovery point. If not explicitly specified, this is the default backup type.\n* `COPY_BACKUP`: -  this backup type does not update the backup history of individual files involved in the recovery point.\n"
        },
        "objectType": {
          "type": "string",
          "description": "value: `dataprotection.v4.common.VssProperties`\n"
        },
        "shouldIncludeWriters": {
          "type": "boolean",
          "description": "Indicates whether the given set of VSS writers' UUIDs should be included or excluded from the application consistent recovery point. By default, the value is set to false, indicating that all listed VSS writers' UUIDs will be excluded.\n"
        },
        "shouldStoreVssMetadata": {
          "type": "boolean",
          "description": "Indicates whether to store the VSS metadata if the user is interested in application-specific backup/restore. The VSS metadata consists of VSS writers and requester metadata details. These are compressed into a cabinet file(.cab file) during a VSS backup operation. This cabinet file must be saved to the backup media during a backup operation, as it is required during the restore operation.\n"
        },
        "writers": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "List of VSS writer UUIDs that are used in an application consistent recovery point. The default values are the system and the registry writer UUIDs.\n"
        }
      },
      "type": "object",
      "required": [
        "backupType",
        "objectType",
        "shouldIncludeWriters",
        "shouldStoreVssMetadata",
        "writers"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getVmRecoveryPointInfoV2DiskRecoveryPoint:getVmRecoveryPointInfoV2DiskRecoveryPoint": {
      "properties": {
        "diskExtId": {
          "type": "string",
          "description": "External identifier of the disk.\n"
        },
        "diskRecoveryPointExtId": {
          "type": "string",
          "description": "External identifier of the disk recovery point.\n"
        }
      },
      "type": "object",
      "required": [
        "diskExtId",
        "diskRecoveryPointExtId"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getVmRecoveryPointInfoV2Link:getVmRecoveryPointInfoV2Link": {
      "properties": {
        "href": {
          "type": "string",
          "description": "- The URL at which the entity described by the link can be accessed.\n"
        },
        "rel": {
          "type": "string",
          "description": "- A name that identifies the relationship of the link to the object that is returned by the URL. The unique value of \"self\" identifies the URL for the object.\n"
        }
      },
      "type": "object",
      "required": [
        "href",
        "rel"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getVolumeGroupDiskV2DiskDataSourceReference:getVolumeGroupDiskV2DiskDataSourceReference": {
      "properties": {
        "entityType": {
          "type": "string",
          "description": "- The Entity Type of the Data Source Reference.\n"
        },
        "extId": {
          "type": "string",
          "description": "- The external identifier of the Data Source Reference.\n"
        },
        "name": {
          "type": "string",
          "description": "- The name of the Data Source Reference.bled for the Volume Group.\n"
        },
        "uris": {
          "type": "array",
          "items": {
            "type": "array",
            "items": {
              "$ref": "pulumi.json#/Any"
            }
          },
          "description": "- The uri list of the Data Source Reference.\n"
        }
      },
      "type": "object",
      "required": [
        "entityType",
        "extId",
        "name",
        "uris"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getVolumeGroupDiskV2DiskStorageFeature:getVolumeGroupDiskV2DiskStorageFeature": {
      "properties": {
        "flashModes": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetVolumeGroupDiskV2DiskStorageFeatureFlashMode:getVolumeGroupDiskV2DiskStorageFeatureFlashMode"
          },
          "description": "- this field will avoid down migration of data from the hot tier unless the overrides field is specified for the virtual disks.\n"
        }
      },
      "type": "object",
      "required": [
        "flashModes"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getVolumeGroupDiskV2DiskStorageFeatureFlashMode:getVolumeGroupDiskV2DiskStorageFeatureFlashMode": {
      "properties": {
        "isEnabled": {
          "type": "boolean",
          "description": "- Indicates whether the flash mode is enabled for the Volume Group Disk.\n"
        }
      },
      "type": "object",
      "required": [
        "isEnabled"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getVolumeGroupDiskV2Link:getVolumeGroupDiskV2Link": {
      "properties": {
        "href": {
          "type": "string",
          "description": "- The URL at which the entity described by the link can be accessed.\n"
        },
        "rel": {
          "type": "string",
          "description": "- A name that identifies the relationship of the link to the object that is returned by the URL. The unique value of \"self\" identifies the URL for the object.\n"
        }
      },
      "type": "object",
      "required": [
        "href",
        "rel"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getVolumeGroupDisksV2Disk:getVolumeGroupDisksV2Disk": {
      "properties": {
        "description": {
          "type": "string",
          "description": "- Volume Disk description.\n"
        },
        "diskDataSourceReferences": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetVolumeGroupDisksV2DiskDiskDataSourceReference:getVolumeGroupDisksV2DiskDiskDataSourceReference"
          },
          "description": "- Disk Data Source Reference.\n"
        },
        "diskSizeBytes": {
          "type": "integer",
          "description": "- ize of the disk in bytes. This field is mandatory during Volume Group creation if a new disk is being created on the storage container.\n"
        },
        "diskStorageFeatures": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetVolumeGroupDisksV2DiskDiskStorageFeature:getVolumeGroupDisksV2DiskDiskStorageFeature"
          },
          "description": "- Storage optimization features which must be enabled on the Volume Disks. This is an optional field. If omitted, the disks will honor the Volume Group specific storage features setting.\n"
        },
        "extId": {
          "type": "string",
          "description": "- The external identifier of the Data Source Reference.\n"
        },
        "index": {
          "type": "integer",
          "description": "- Index of the disk in a Volume Group. This field is optional and immutable.\n"
        },
        "links": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetVolumeGroupDisksV2DiskLink:getVolumeGroupDisksV2DiskLink"
          },
          "description": "- A HATEOAS style link for the response. Each link contains a user-friendly name identifying the link and an address for retrieving the particular resource.\n"
        },
        "storageContainerId": {
          "type": "string",
          "description": "- Storage container on which the disk must be created. This is a read-only field.\n"
        },
        "tenantId": {
          "type": "string",
          "description": "- A globally unique identifier that represents the tenant that owns this entity. The system automatically assigns it, and it and is immutable from an API consumer perspective (some use cases may cause this Id to change - For instance, a use case may require the transfer of ownership of the entity, but these cases are handled automatically on the server).\n"
        }
      },
      "type": "object",
      "required": [
        "description",
        "diskDataSourceReferences",
        "diskSizeBytes",
        "diskStorageFeatures",
        "extId",
        "index",
        "links",
        "storageContainerId",
        "tenantId"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getVolumeGroupDisksV2DiskDiskDataSourceReference:getVolumeGroupDisksV2DiskDiskDataSourceReference": {
      "properties": {
        "entityType": {
          "type": "string",
          "description": "- The Entity Type of the Data Source Reference.\n"
        },
        "extId": {
          "type": "string",
          "description": "- The external identifier of the Data Source Reference.\n"
        },
        "name": {
          "type": "string",
          "description": "- The name of the Data Source Reference.bled for the Volume Group.\n"
        },
        "uris": {
          "type": "array",
          "items": {
            "type": "array",
            "items": {
              "$ref": "pulumi.json#/Any"
            }
          },
          "description": "- The uri list of the Data Source Reference.\n"
        }
      },
      "type": "object",
      "required": [
        "entityType",
        "extId",
        "name",
        "uris"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getVolumeGroupDisksV2DiskDiskStorageFeature:getVolumeGroupDisksV2DiskDiskStorageFeature": {
      "properties": {
        "flashModes": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetVolumeGroupDisksV2DiskDiskStorageFeatureFlashMode:getVolumeGroupDisksV2DiskDiskStorageFeatureFlashMode"
          },
          "description": "- this field will avoid down migration of data from the hot tier unless the overrides field is specified for the virtual disks.\n"
        }
      },
      "type": "object",
      "required": [
        "flashModes"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getVolumeGroupDisksV2DiskDiskStorageFeatureFlashMode:getVolumeGroupDisksV2DiskDiskStorageFeatureFlashMode": {
      "properties": {
        "isEnabled": {
          "type": "boolean",
          "description": "- Indicates whether the flash mode is enabled for the Volume Group Disk.\n"
        }
      },
      "type": "object",
      "required": [
        "isEnabled"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getVolumeGroupDisksV2DiskLink:getVolumeGroupDisksV2DiskLink": {
      "properties": {
        "href": {
          "type": "string",
          "description": "- The URL at which the entity described by the link can be accessed.\n"
        },
        "rel": {
          "type": "string",
          "description": "- A name that identifies the relationship of the link to the object that is returned by the URL. The unique value of \"self\" identifies the URL for the object.\n"
        }
      },
      "type": "object",
      "required": [
        "href",
        "rel"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getVolumeGroupV2IscsiFeature:getVolumeGroupV2IscsiFeature": {
      "properties": {
        "enabledAuthentications": {
          "type": "string",
          "description": "- The authentication type enabled for the Volume Group.\n"
        }
      },
      "type": "object",
      "required": [
        "enabledAuthentications"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getVolumeGroupV2Link:getVolumeGroupV2Link": {
      "properties": {
        "href": {
          "type": "string",
          "description": "- The URL at which the entity described by the link can be accessed.\n"
        },
        "rel": {
          "type": "string",
          "description": "- A name that identifies the relationship of the link to the object that is returned by the URL. The unique value of \"self\" identifies the URL for the object.\n"
        }
      },
      "type": "object",
      "required": [
        "href",
        "rel"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getVolumeGroupV2StorageFeature:getVolumeGroupV2StorageFeature": {
      "properties": {
        "flashModes": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetVolumeGroupV2StorageFeatureFlashMode:getVolumeGroupV2StorageFeatureFlashMode"
          },
          "description": "- this field will avoid down migration of data from the hot tier unless the overrides field is specified for the virtual disks.\n"
        }
      },
      "type": "object",
      "required": [
        "flashModes"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getVolumeGroupV2StorageFeatureFlashMode:getVolumeGroupV2StorageFeatureFlashMode": {
      "properties": {
        "isEnabled": {
          "type": "boolean",
          "description": "- Indicates whether the flash mode is enabled for the Volume Group.\n"
        }
      },
      "type": "object",
      "required": [
        "isEnabled"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getVolumeGroupsV2Volume:getVolumeGroupsV2Volume": {
      "properties": {
        "clusterReference": {
          "type": "string",
          "description": "The UUID of the cluster that will host the Volume Group. This is a mandatory field for creating a Volume Group on Prism Central.\n"
        },
        "createdBy": {
          "type": "string",
          "description": "Service/user who created this Volume Group. This is an optional field.\n"
        },
        "description": {
          "type": "string",
          "description": "Volume Group description. This is an optional field.\n"
        },
        "enabledAuthentications": {
          "type": "string",
          "description": "The authentication type enabled for the Volume Group. This is an optional field. If omitted, authentication is not configured for the Volume Group. If this is set to CHAP, the target/client secret must be provided.\n"
        },
        "extId": {
          "type": "string",
          "description": "A globally unique identifier of an instance that is suitable for external consumption.\n"
        },
        "isHidden": {
          "type": "boolean",
          "description": "Indicates whether the Volume Group is meant to be hidden or not. This is an optional field. If omitted, the VG will not be hidden.\n"
        },
        "iscsiFeatures": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetVolumeGroupsV2VolumeIscsiFeature:getVolumeGroupsV2VolumeIscsiFeature"
          },
          "description": "iSCSI specific settings for the Volume Group. This is an optional field.\n"
        },
        "links": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetVolumeGroupsV2VolumeLink:getVolumeGroupsV2VolumeLink"
          },
          "description": "A HATEOAS style link for the response. Each link contains a user-friendly name identifying the link and an address for retrieving the particular resource.\n"
        },
        "name": {
          "type": "string",
          "description": "Volume Group name. This is an optional field.\n"
        },
        "sharingStatus": {
          "type": "string",
          "description": "Indicates whether the Volume Group can be shared across multiple iSCSI initiators. The mode cannot be changed from SHARED to NOT_SHARED on a Volume Group with multiple attachments. Similarly, a Volume Group cannot be associated with more than one attachment as long as it is in exclusive mode. This is an optional field\n"
        },
        "shouldLoadBalanceVmAttachments": {
          "type": "boolean",
          "description": "Indicates whether to enable Volume Group load balancing for VM attachments. This cannot be enabled if there are iSCSI client attachments already associated with the Volume Group, and vice-versa. This is an optional field.\n"
        },
        "storageFeatures": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetVolumeGroupsV2VolumeStorageFeature:getVolumeGroupsV2VolumeStorageFeature"
          },
          "description": "Storage optimization features which must be enabled on the Volume Group. This is an optional field.\n"
        },
        "targetName": {
          "type": "string",
          "description": "Name of the external client target that will be visible and accessible to the client. This is an optional field.\n"
        },
        "tenantId": {
          "type": "string",
          "description": "A globally unique identifier that represents the tenant that owns this entity. The system automatically assigns it, and it and is immutable from an API consumer perspective (some use cases may cause this Id to change - For instance, a use case may require the transfer of ownership of the entity, but these cases are handled automatically on the server).\n"
        },
        "usageType": {
          "type": "string",
          "description": "Expected usage type for the Volume Group. This is an indicative hint on how the caller will consume the Volume Group. This is an optional field.\n"
        }
      },
      "type": "object",
      "required": [
        "clusterReference",
        "createdBy",
        "description",
        "enabledAuthentications",
        "extId",
        "isHidden",
        "iscsiFeatures",
        "links",
        "name",
        "sharingStatus",
        "shouldLoadBalanceVmAttachments",
        "storageFeatures",
        "targetName",
        "tenantId",
        "usageType"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getVolumeGroupsV2VolumeIscsiFeature:getVolumeGroupsV2VolumeIscsiFeature": {
      "properties": {
        "enabledAuthentications": {
          "type": "string",
          "description": "The authentication type enabled for the Volume Group. This is an optional field. If omitted, authentication is not configured for the Volume Group. If this is set to CHAP, the target/client secret must be provided.\n"
        }
      },
      "type": "object",
      "required": [
        "enabledAuthentications"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getVolumeGroupsV2VolumeLink:getVolumeGroupsV2VolumeLink": {
      "properties": {
        "href": {
          "type": "string",
          "description": "The URL at which the entity described by the link can be accessed.\n"
        },
        "rel": {
          "type": "string",
          "description": "A name that identifies the relationship of the link to the object that is returned by the URL. The unique value of \"self\" identifies the URL for the object.\n"
        }
      },
      "type": "object",
      "required": [
        "href",
        "rel"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getVolumeGroupsV2VolumeStorageFeature:getVolumeGroupsV2VolumeStorageFeature": {
      "properties": {
        "flashModes": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetVolumeGroupsV2VolumeStorageFeatureFlashMode:getVolumeGroupsV2VolumeStorageFeatureFlashMode"
          },
          "description": "Once configured, this field will avoid down migration of data from the hot tier unless the overrides field is specified for the virtual disks.\n"
        }
      },
      "type": "object",
      "required": [
        "flashModes"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getVolumeGroupsV2VolumeStorageFeatureFlashMode:getVolumeGroupsV2VolumeStorageFeatureFlashMode": {
      "properties": {
        "isEnabled": {
          "type": "boolean",
          "description": "Indicates whether the flash mode is enabled for the Volume Group.\n"
        }
      },
      "type": "object",
      "required": [
        "isEnabled"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getVolumeIscsiClientV2AttachedTarget:getVolumeIscsiClientV2AttachedTarget": {
      "properties": {
        "iscsiTargetName": {
          "type": "string",
          "description": "- Name of the iSCSI target that the iSCSI client is connected to. This is a read-only field.\n"
        },
        "numVirtualTargets": {
          "type": "integer",
          "description": "- Number of virtual targets generated for the iSCSI target. This field is immutable.\n"
        }
      },
      "type": "object",
      "required": [
        "iscsiTargetName",
        "numVirtualTargets"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getVolumeIscsiClientV2IscsiInitiatorNetworkId:getVolumeIscsiClientV2IscsiInitiatorNetworkId": {
      "properties": {
        "fqdns": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetVolumeIscsiClientV2IscsiInitiatorNetworkIdFqdn:getVolumeIscsiClientV2IscsiInitiatorNetworkIdFqdn"
          },
          "description": "- A fully qualified domain name that specifies its exact location in the tree hierarchy of the Domain Name System.\n"
        },
        "ipv4s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetVolumeIscsiClientV2IscsiInitiatorNetworkIdIpv4:getVolumeIscsiClientV2IscsiInitiatorNetworkIdIpv4"
          },
          "description": "- An unique address that identifies a device on the internet or a local network in IPv4 format.\n"
        },
        "ipv6s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetVolumeIscsiClientV2IscsiInitiatorNetworkIdIpv6:getVolumeIscsiClientV2IscsiInitiatorNetworkIdIpv6"
          },
          "description": "- An unique address that identifies a device on the internet or a local network in IPv6 format.\n"
        }
      },
      "type": "object",
      "required": [
        "fqdns",
        "ipv4s",
        "ipv6s"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getVolumeIscsiClientV2IscsiInitiatorNetworkIdFqdn:getVolumeIscsiClientV2IscsiInitiatorNetworkIdFqdn": {
      "properties": {
        "value": {
          "type": "string",
          "description": "- The fully qualified domain name.\n"
        }
      },
      "type": "object",
      "required": [
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getVolumeIscsiClientV2IscsiInitiatorNetworkIdIpv4:getVolumeIscsiClientV2IscsiInitiatorNetworkIdIpv4": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "- The prefix length of the network to which this host IPv6 address belongs.\n"
        },
        "value": {
          "type": "string",
          "description": "- The fully qualified domain name.\n"
        }
      },
      "type": "object",
      "required": [
        "prefixLength",
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getVolumeIscsiClientV2IscsiInitiatorNetworkIdIpv6:getVolumeIscsiClientV2IscsiInitiatorNetworkIdIpv6": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "- The prefix length of the network to which this host IPv6 address belongs.\n"
        },
        "value": {
          "type": "string",
          "description": "- The fully qualified domain name.\n"
        }
      },
      "type": "object",
      "required": [
        "prefixLength",
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getVolumeIscsiClientV2Link:getVolumeIscsiClientV2Link": {
      "properties": {
        "href": {
          "type": "string",
          "description": "- The URL at which the entity described by the link can be accessed.\n"
        },
        "rel": {
          "type": "string",
          "description": "- A name that identifies the relationship of the link to the object that is returned by the URL. The unique value of \"self\" identifies the URL for the object.\n"
        }
      },
      "type": "object",
      "required": [
        "href",
        "rel"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getVolumeIscsiClientsV2IscsiClient:getVolumeIscsiClientsV2IscsiClient": {
      "properties": {
        "attachedTargets": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetVolumeIscsiClientsV2IscsiClientAttachedTarget:getVolumeIscsiClientsV2IscsiClientAttachedTarget"
          },
          "description": "associated with each iSCSI target corresponding to the iSCSI client)\n"
        },
        "attachmentSite": {
          "type": "string",
          "description": "The site where the Volume Group attach operation should be processed. This is an optional field. This field may only be set if Metro DR has been configured for this Volume Group.\n"
        },
        "clusterReference": {
          "type": "string",
          "description": "The UUID of the cluster that will host the iSCSI client. This field is read-only.\n"
        },
        "enabledAuthentications": {
          "type": "string",
          "description": "The authentication type enabled for the Volume Group. This is an optional field. If omitted, authentication is not configured for the Volume Group. If this is set to CHAP, the target/client secret must be provided.\n"
        },
        "extId": {
          "type": "string",
          "description": "A globally unique identifier of an instance that is suitable for external consumption.\n"
        },
        "iscsiInitiatorName": {
          "type": "string",
          "description": "iSCSI initiator name. During the attach operation, exactly one of iscsiInitiatorName and iscsiInitiatorNetworkId must be specified. This field is immutable.\n"
        },
        "iscsiInitiatorNetworkIds": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetVolumeIscsiClientsV2IscsiClientIscsiInitiatorNetworkId:getVolumeIscsiClientsV2IscsiClientIscsiInitiatorNetworkId"
          },
          "description": "An unique address that identifies a device on the internet or a local network in IPv4/IPv6 format or a Fully Qualified Domain Name.\n"
        },
        "links": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetVolumeIscsiClientsV2IscsiClientLink:getVolumeIscsiClientsV2IscsiClientLink"
          },
          "description": "A HATEOAS style link for the response. Each link contains a user-friendly name identifying the link and an address for retrieving the particular resource.\n"
        },
        "tenantId": {
          "type": "string",
          "description": "A globally unique identifier that represents the tenant that owns this entity. The system automatically assigns it, and it and is immutable from an API consumer perspective (some use cases may cause this Id to change - For instance, a use case may require the transfer of ownership of the entity, but these cases are handled automatically on the server).\n"
        }
      },
      "type": "object",
      "required": [
        "attachedTargets",
        "attachmentSite",
        "clusterReference",
        "enabledAuthentications",
        "extId",
        "iscsiInitiatorName",
        "links",
        "tenantId"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getVolumeIscsiClientsV2IscsiClientAttachedTarget:getVolumeIscsiClientsV2IscsiClientAttachedTarget": {
      "properties": {
        "iscsiTargetName": {
          "type": "string",
          "description": "Name of the iSCSI target that the iSCSI client is connected to. This is a read-only field.\n"
        },
        "numVirtualTargets": {
          "type": "integer",
          "description": "Number of virtual targets generated for the iSCSI target. This field is immutable.\n"
        }
      },
      "type": "object",
      "required": [
        "iscsiTargetName",
        "numVirtualTargets"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getVolumeIscsiClientsV2IscsiClientIscsiInitiatorNetworkId:getVolumeIscsiClientsV2IscsiClientIscsiInitiatorNetworkId": {
      "properties": {
        "fqdns": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetVolumeIscsiClientsV2IscsiClientIscsiInitiatorNetworkIdFqdn:getVolumeIscsiClientsV2IscsiClientIscsiInitiatorNetworkIdFqdn"
          },
          "description": "A fully qualified domain name that specifies its exact location in the tree hierarchy of the Domain Name System.\n"
        },
        "ipv4s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetVolumeIscsiClientsV2IscsiClientIscsiInitiatorNetworkIdIpv4:getVolumeIscsiClientsV2IscsiClientIscsiInitiatorNetworkIdIpv4"
          },
          "description": "An unique address that identifies a device on the internet or a local network in IPv4 format.\n"
        },
        "ipv6s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetVolumeIscsiClientsV2IscsiClientIscsiInitiatorNetworkIdIpv6:getVolumeIscsiClientsV2IscsiClientIscsiInitiatorNetworkIdIpv6"
          },
          "description": "An unique address that identifies a device on the internet or a local network in IPv6 format.\n"
        }
      },
      "type": "object",
      "required": [
        "fqdns",
        "ipv4s",
        "ipv6s"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getVolumeIscsiClientsV2IscsiClientIscsiInitiatorNetworkIdFqdn:getVolumeIscsiClientsV2IscsiClientIscsiInitiatorNetworkIdFqdn": {
      "properties": {
        "value": {
          "type": "string",
          "description": "The fully qualified domain name.\n"
        }
      },
      "type": "object",
      "required": [
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getVolumeIscsiClientsV2IscsiClientIscsiInitiatorNetworkIdIpv4:getVolumeIscsiClientsV2IscsiClientIscsiInitiatorNetworkIdIpv4": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "The prefix length of the network to which this host IPv4 address belongs.\n"
        },
        "value": {
          "type": "string",
          "description": "An unique address that identifies a device on the internet or a local network in IPv4 format.\n"
        }
      },
      "type": "object",
      "required": [
        "prefixLength",
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getVolumeIscsiClientsV2IscsiClientIscsiInitiatorNetworkIdIpv6:getVolumeIscsiClientsV2IscsiClientIscsiInitiatorNetworkIdIpv6": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "The prefix length of the network to which this host IPv6 address belongs.\n"
        },
        "value": {
          "type": "string",
          "description": "An unique address that identifies a device on the internet or a local network in IPv6 format.\n"
        }
      },
      "type": "object",
      "required": [
        "prefixLength",
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getVolumeIscsiClientsV2IscsiClientLink:getVolumeIscsiClientsV2IscsiClientLink": {
      "properties": {
        "href": {
          "type": "string",
          "description": "The URL at which the entity described by the link can be accessed.\n"
        },
        "rel": {
          "type": "string",
          "description": "A name that identifies the relationship of the link to the object that is returned by the URL. The unique value of \"self\" identifies the URL for the object.\n"
        }
      },
      "type": "object",
      "required": [
        "href",
        "rel"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getVpcSpec:getVpcSpec": {
      "properties": {
        "name": {
          "type": "string",
          "description": "- the name.\n"
        },
        "resources": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetVpcSpecResource:getVpcSpecResource"
          },
          "description": "VPC resources status\n"
        }
      },
      "type": "object",
      "required": [
        "name",
        "resources"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getVpcSpecResource:getVpcSpecResource": {
      "properties": {
        "commonDomainNameServerIpLists": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetVpcSpecResourceCommonDomainNameServerIpList:getVpcSpecResourceCommonDomainNameServerIpList"
          },
          "description": "List of domain name server IPs.\n"
        },
        "externalSubnetLists": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetVpcSpecResourceExternalSubnetList:getVpcSpecResourceExternalSubnetList"
          },
          "description": "List of external subnets attached to this VPC.\n"
        },
        "externallyRoutablePrefixLists": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetVpcSpecResourceExternallyRoutablePrefixList:getVpcSpecResourceExternallyRoutablePrefixList"
          },
          "description": "List of external routable ip and prefix .\n"
        }
      },
      "type": "object",
      "required": [
        "commonDomainNameServerIpLists",
        "externalSubnetLists",
        "externallyRoutablePrefixLists"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getVpcSpecResourceCommonDomainNameServerIpList:getVpcSpecResourceCommonDomainNameServerIpList": {
      "properties": {
        "ip": {
          "type": "string",
          "description": "ip address of domain name server.\n"
        }
      },
      "type": "object",
      "required": [
        "ip"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getVpcSpecResourceExternalSubnetList:getVpcSpecResourceExternalSubnetList": {
      "properties": {
        "externalSubnetReference": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          },
          "description": "Reference to a subnet.\n"
        }
      },
      "type": "object",
      "required": [
        "externalSubnetReference"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getVpcSpecResourceExternallyRoutablePrefixList:getVpcSpecResourceExternallyRoutablePrefixList": {
      "properties": {
        "ip": {
          "type": "string",
          "description": "ip address of domain name server.\n"
        },
        "prefixLength": {
          "type": "integer",
          "description": "prefix length of routable ip .\n"
        }
      },
      "type": "object",
      "required": [
        "ip",
        "prefixLength"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getVpcStatus:getVpcStatus": {
      "properties": {
        "executionContexts": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetVpcStatusExecutionContext:getVpcStatusExecutionContext"
          },
          "description": "Execution Context of VPC.\n"
        },
        "name": {
          "type": "string",
          "description": "- the name.\n"
        },
        "resources": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetVpcStatusResource:getVpcStatusResource"
          },
          "description": "VPC resources status\n"
        },
        "state": {
          "type": "string",
          "description": "The state of the VPC\n"
        }
      },
      "type": "object",
      "required": [
        "executionContexts",
        "name",
        "resources",
        "state"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getVpcStatusExecutionContext:getVpcStatusExecutionContext": {
      "properties": {
        "taskUuids": {
          "type": "array",
          "items": {
            "type": "string"
          }
        }
      },
      "type": "object",
      "required": [
        "taskUuids"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getVpcStatusResource:getVpcStatusResource": {
      "properties": {
        "commonDomainNameServerIpLists": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetVpcStatusResourceCommonDomainNameServerIpList:getVpcStatusResourceCommonDomainNameServerIpList"
          },
          "description": "List of domain name server IPs.\n"
        },
        "externalSubnetLists": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetVpcStatusResourceExternalSubnetList:getVpcStatusResourceExternalSubnetList"
          },
          "description": "List of external subnets attached to this VPC.\n"
        },
        "externallyRoutablePrefixLists": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetVpcStatusResourceExternallyRoutablePrefixList:getVpcStatusResourceExternallyRoutablePrefixList"
          },
          "description": "List of external routable ip and prefix .\n"
        }
      },
      "type": "object",
      "required": [
        "commonDomainNameServerIpLists",
        "externalSubnetLists",
        "externallyRoutablePrefixLists"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getVpcStatusResourceCommonDomainNameServerIpList:getVpcStatusResourceCommonDomainNameServerIpList": {
      "properties": {
        "ip": {
          "type": "string",
          "description": "ip address of domain name server.\n"
        }
      },
      "type": "object",
      "required": [
        "ip"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getVpcStatusResourceExternalSubnetList:getVpcStatusResourceExternalSubnetList": {
      "properties": {
        "activeGatewayNodes": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetVpcStatusResourceExternalSubnetListActiveGatewayNode:getVpcStatusResourceExternalSubnetListActiveGatewayNode"
          },
          "description": "Active Gateway Node. Only present in VPC Status Resources.\n"
        },
        "externalIpLists": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "List of external subnets attached to this VPC. Only present in VPC Status Resources .\n"
        },
        "externalSubnetReference": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          },
          "description": "Reference to a subnet.\n"
        }
      },
      "type": "object",
      "required": [
        "activeGatewayNodes",
        "externalIpLists",
        "externalSubnetReference"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getVpcStatusResourceExternalSubnetListActiveGatewayNode:getVpcStatusResourceExternalSubnetListActiveGatewayNode": {
      "properties": {
        "hostReference": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          },
          "description": "Reference to host.\n"
        },
        "ipAddress": {
          "type": "string",
          "description": "ip address.\n"
        }
      },
      "type": "object",
      "required": [
        "hostReference",
        "ipAddress"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getVpcStatusResourceExternallyRoutablePrefixList:getVpcStatusResourceExternallyRoutablePrefixList": {
      "properties": {
        "ip": {
          "type": "string",
          "description": "ip address of domain name server.\n"
        },
        "prefixLength": {
          "type": "integer",
          "description": "prefix length of routable ip .\n"
        }
      },
      "type": "object",
      "required": [
        "ip",
        "prefixLength"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getVpcV2CommonDhcpOption:getVpcV2CommonDhcpOption": {
      "properties": {
        "domainNameServers": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetVpcV2CommonDhcpOptionDomainNameServer:getVpcV2CommonDhcpOptionDomainNameServer"
          },
          "description": "List of Domain Name Server addresses\n"
        }
      },
      "type": "object",
      "required": [
        "domainNameServers"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getVpcV2CommonDhcpOptionDomainNameServer:getVpcV2CommonDhcpOptionDomainNameServer": {
      "properties": {
        "ipv4s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetVpcV2CommonDhcpOptionDomainNameServerIpv4:getVpcV2CommonDhcpOptionDomainNameServerIpv4"
          },
          "description": "Reference to address configuration\n"
        },
        "ipv6s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetVpcV2CommonDhcpOptionDomainNameServerIpv6:getVpcV2CommonDhcpOptionDomainNameServerIpv6"
          },
          "description": "Reference to address configuration\n"
        }
      },
      "type": "object",
      "required": [
        "ipv4s",
        "ipv6s"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getVpcV2CommonDhcpOptionDomainNameServerIpv4:getVpcV2CommonDhcpOptionDomainNameServerIpv4": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "The prefix length of the network\n"
        },
        "value": {
          "type": "string",
          "description": "value of address\n"
        }
      },
      "type": "object",
      "required": [
        "prefixLength",
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getVpcV2CommonDhcpOptionDomainNameServerIpv6:getVpcV2CommonDhcpOptionDomainNameServerIpv6": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "The prefix length of the network\n"
        },
        "value": {
          "type": "string",
          "description": "value of address\n"
        }
      },
      "type": "object",
      "required": [
        "prefixLength",
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getVpcV2ExternalSubnet:getVpcV2ExternalSubnet": {
      "properties": {
        "activeGatewayCount": {
          "type": "integer",
          "description": "Maximum number of active gateway nodes for the VPC external subnet association.\n"
        },
        "activeGatewayNodes": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetVpcV2ExternalSubnetActiveGatewayNode:getVpcV2ExternalSubnetActiveGatewayNode"
          },
          "description": "Reference of gateway nodes\n"
        },
        "externalIps": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetVpcV2ExternalSubnetExternalIp:getVpcV2ExternalSubnetExternalIp"
          },
          "description": "List of IP Addresses used for SNAT, if NAT is enabled on the external subnet. If NAT is not enabled, this specifies the IP address of the VPC port connected to the external gateway.\n"
        },
        "gatewayNodes": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "List of gateway nodes that can be used for external connectivity.\n"
        },
        "subnetReference": {
          "type": "string",
          "description": "External subnet reference.\n"
        }
      },
      "type": "object",
      "required": [
        "activeGatewayCount",
        "activeGatewayNodes",
        "externalIps",
        "gatewayNodes",
        "subnetReference"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getVpcV2ExternalSubnetActiveGatewayNode:getVpcV2ExternalSubnetActiveGatewayNode": {
      "properties": {
        "nodeId": {
          "type": "string"
        },
        "nodeIpAddresses": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetVpcV2ExternalSubnetActiveGatewayNodeNodeIpAddress:getVpcV2ExternalSubnetActiveGatewayNodeNodeIpAddress"
          }
        }
      },
      "type": "object",
      "required": [
        "nodeId",
        "nodeIpAddresses"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getVpcV2ExternalSubnetActiveGatewayNodeNodeIpAddress:getVpcV2ExternalSubnetActiveGatewayNodeNodeIpAddress": {
      "properties": {
        "ipv4s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetVpcV2ExternalSubnetActiveGatewayNodeNodeIpAddressIpv4:getVpcV2ExternalSubnetActiveGatewayNodeNodeIpAddressIpv4"
          },
          "description": "IP V4 Configuration\n"
        },
        "ipv6s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetVpcV2ExternalSubnetActiveGatewayNodeNodeIpAddressIpv6:getVpcV2ExternalSubnetActiveGatewayNodeNodeIpAddressIpv6"
          },
          "description": "IP V6 Configuration\n"
        }
      },
      "type": "object",
      "required": [
        "ipv4s",
        "ipv6s"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getVpcV2ExternalSubnetActiveGatewayNodeNodeIpAddressIpv4:getVpcV2ExternalSubnetActiveGatewayNodeNodeIpAddressIpv4": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "The prefix length of the network\n"
        },
        "value": {
          "type": "string",
          "description": "value of address\n"
        }
      },
      "type": "object",
      "required": [
        "prefixLength",
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getVpcV2ExternalSubnetActiveGatewayNodeNodeIpAddressIpv6:getVpcV2ExternalSubnetActiveGatewayNodeNodeIpAddressIpv6": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "The prefix length of the network\n"
        },
        "value": {
          "type": "string",
          "description": "value of address\n"
        }
      },
      "type": "object",
      "required": [
        "prefixLength",
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getVpcV2ExternalSubnetExternalIp:getVpcV2ExternalSubnetExternalIp": {
      "properties": {
        "ipv4s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetVpcV2ExternalSubnetExternalIpIpv4:getVpcV2ExternalSubnetExternalIpIpv4"
          },
          "description": "IP V4 Configuration\n"
        },
        "ipv6s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetVpcV2ExternalSubnetExternalIpIpv6:getVpcV2ExternalSubnetExternalIpIpv6"
          },
          "description": "IP V6 Configuration\n"
        }
      },
      "type": "object",
      "required": [
        "ipv4s",
        "ipv6s"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getVpcV2ExternalSubnetExternalIpIpv4:getVpcV2ExternalSubnetExternalIpIpv4": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "The prefix length of the network\n"
        },
        "value": {
          "type": "string",
          "description": "value of address\n"
        }
      },
      "type": "object",
      "required": [
        "prefixLength",
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getVpcV2ExternalSubnetExternalIpIpv6:getVpcV2ExternalSubnetExternalIpIpv6": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "The prefix length of the network\n"
        },
        "value": {
          "type": "string",
          "description": "value of address\n"
        }
      },
      "type": "object",
      "required": [
        "prefixLength",
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getVpcV2ExternallyRoutablePrefix:getVpcV2ExternallyRoutablePrefix": {
      "properties": {
        "ipv4s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetVpcV2ExternallyRoutablePrefixIpv4:getVpcV2ExternallyRoutablePrefixIpv4"
          },
          "description": "IP V4 Configuration\n"
        },
        "ipv6s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetVpcV2ExternallyRoutablePrefixIpv6:getVpcV2ExternallyRoutablePrefixIpv6"
          },
          "description": "IP V6 Configuration\n"
        }
      },
      "type": "object",
      "required": [
        "ipv4s",
        "ipv6s"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getVpcV2ExternallyRoutablePrefixIpv4:getVpcV2ExternallyRoutablePrefixIpv4": {
      "properties": {
        "ips": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetVpcV2ExternallyRoutablePrefixIpv4Ip:getVpcV2ExternallyRoutablePrefixIpv4Ip"
          },
          "description": "Reference to address configuration\n"
        },
        "prefixLength": {
          "type": "integer",
          "description": "The prefix length of the network\n"
        }
      },
      "type": "object",
      "required": [
        "ips",
        "prefixLength"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getVpcV2ExternallyRoutablePrefixIpv4Ip:getVpcV2ExternallyRoutablePrefixIpv4Ip": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "The prefix length of the network to which this host IPv4/IPv6 address belongs.\n"
        },
        "value": {
          "type": "string",
          "description": "value of address\n"
        }
      },
      "type": "object",
      "required": [
        "prefixLength",
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getVpcV2ExternallyRoutablePrefixIpv6:getVpcV2ExternallyRoutablePrefixIpv6": {
      "properties": {
        "ips": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetVpcV2ExternallyRoutablePrefixIpv6Ip:getVpcV2ExternallyRoutablePrefixIpv6Ip"
          },
          "description": "Reference to address configuration\n"
        },
        "prefixLength": {
          "type": "integer",
          "description": "The prefix length of the network\n"
        }
      },
      "type": "object",
      "required": [
        "ips",
        "prefixLength"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getVpcV2ExternallyRoutablePrefixIpv6Ip:getVpcV2ExternallyRoutablePrefixIpv6Ip": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "The prefix length of the network to which this host IPv4/IPv6 address belongs.\n"
        },
        "value": {
          "type": "string",
          "description": "value of address\n"
        }
      },
      "type": "object",
      "required": [
        "prefixLength",
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getVpcV2Link:getVpcV2Link": {
      "properties": {
        "href": {
          "type": "string"
        },
        "rel": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "href",
        "rel"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getVpcV2Metadata:getVpcV2Metadata": {
      "properties": {
        "categoryIds": {
          "type": "array",
          "items": {
            "type": "array",
            "items": {
              "$ref": "pulumi.json#/Any"
            }
          }
        },
        "ownerReferenceId": {
          "type": "string"
        },
        "ownerUserName": {
          "type": "string"
        },
        "projectName": {
          "type": "string"
        },
        "projectReferenceId": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "categoryIds",
        "ownerReferenceId",
        "ownerUserName",
        "projectName",
        "projectReferenceId"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getVpcV2SnatIp:getVpcV2SnatIp": {
      "properties": {
        "ipv4s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetVpcV2SnatIpIpv4:getVpcV2SnatIpIpv4"
          },
          "description": "IP V4 Configuration\n"
        },
        "ipv6s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetVpcV2SnatIpIpv6:getVpcV2SnatIpIpv6"
          },
          "description": "IP V6 Configuration\n"
        }
      },
      "type": "object",
      "required": [
        "ipv4s",
        "ipv6s"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getVpcV2SnatIpIpv4:getVpcV2SnatIpIpv4": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "The prefix length of the network\n"
        },
        "value": {
          "type": "string",
          "description": "value of address\n"
        }
      },
      "type": "object",
      "required": [
        "prefixLength",
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getVpcV2SnatIpIpv6:getVpcV2SnatIpIpv6": {
      "properties": {
        "prefixLength": {
          "type": "integer",
          "description": "The prefix length of the network\n"
        },
        "value": {
          "type": "string",
          "description": "value of address\n"
        }
      },
      "type": "object",
      "required": [
        "prefixLength",
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getVpcsEntity:getVpcsEntity": {
      "properties": {
        "metadata": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          },
          "description": "- The vpc kind metadata.\n"
        },
        "specs": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetVpcsEntitySpec:getVpcsEntitySpec"
          },
          "description": "VPC input spec\n"
        },
        "statuses": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetVpcsEntityStatus:getVpcsEntityStatus"
          },
          "description": "VPC output status\n"
        }
      },
      "type": "object",
      "required": [
        "metadata",
        "specs",
        "statuses"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getVpcsEntitySpec:getVpcsEntitySpec": {
      "properties": {
        "name": {
          "type": "string",
          "description": "- the name.\n"
        },
        "resources": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetVpcsEntitySpecResource:getVpcsEntitySpecResource"
          },
          "description": "VPC resources status\n"
        }
      },
      "type": "object",
      "required": [
        "name",
        "resources"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getVpcsEntitySpecResource:getVpcsEntitySpecResource": {
      "properties": {
        "commonDomainNameServerIpLists": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetVpcsEntitySpecResourceCommonDomainNameServerIpList:getVpcsEntitySpecResourceCommonDomainNameServerIpList"
          },
          "description": "List of domain name server IPs.\n"
        },
        "externalSubnetLists": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetVpcsEntitySpecResourceExternalSubnetList:getVpcsEntitySpecResourceExternalSubnetList"
          },
          "description": "List of external subnets attached to this VPC.\n"
        },
        "externallyRoutablePrefixLists": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetVpcsEntitySpecResourceExternallyRoutablePrefixList:getVpcsEntitySpecResourceExternallyRoutablePrefixList"
          },
          "description": "List of external routable ip and prefix .\n"
        }
      },
      "type": "object",
      "required": [
        "commonDomainNameServerIpLists",
        "externalSubnetLists",
        "externallyRoutablePrefixLists"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getVpcsEntitySpecResourceCommonDomainNameServerIpList:getVpcsEntitySpecResourceCommonDomainNameServerIpList": {
      "properties": {
        "ip": {
          "type": "string",
          "description": "ip address of domain name server.\n"
        }
      },
      "type": "object",
      "required": [
        "ip"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getVpcsEntitySpecResourceExternalSubnetList:getVpcsEntitySpecResourceExternalSubnetList": {
      "properties": {
        "externalSubnetReference": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          },
          "description": "Reference to a subnet.\n"
        }
      },
      "type": "object",
      "required": [
        "externalSubnetReference"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getVpcsEntitySpecResourceExternallyRoutablePrefixList:getVpcsEntitySpecResourceExternallyRoutablePrefixList": {
      "properties": {
        "ip": {
          "type": "string",
          "description": "ip address of domain name server.\n"
        },
        "prefixLength": {
          "type": "integer",
          "description": "prefix length of routable ip .\n"
        }
      },
      "type": "object",
      "required": [
        "ip",
        "prefixLength"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getVpcsEntityStatus:getVpcsEntityStatus": {
      "properties": {
        "executionContexts": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetVpcsEntityStatusExecutionContext:getVpcsEntityStatusExecutionContext"
          },
          "description": "Execution Context of VPC.\n"
        },
        "name": {
          "type": "string",
          "description": "- the name.\n"
        },
        "resources": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetVpcsEntityStatusResource:getVpcsEntityStatusResource"
          },
          "description": "VPC resources status\n"
        },
        "state": {
          "type": "string",
          "description": "The state of the VPC\n"
        }
      },
      "type": "object",
      "required": [
        "executionContexts",
        "name",
        "resources",
        "state"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getVpcsEntityStatusExecutionContext:getVpcsEntityStatusExecutionContext": {
      "properties": {
        "taskUuids": {
          "type": "array",
          "items": {
            "type": "string"
          }
        }
      },
      "type": "object",
      "required": [
        "taskUuids"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getVpcsEntityStatusResource:getVpcsEntityStatusResource": {
      "properties": {
        "commonDomainNameServerIpLists": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetVpcsEntityStatusResourceCommonDomainNameServerIpList:getVpcsEntityStatusResourceCommonDomainNameServerIpList"
          },
          "description": "List of domain name server IPs.\n"
        },
        "externalSubnetLists": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetVpcsEntityStatusResourceExternalSubnetList:getVpcsEntityStatusResourceExternalSubnetList"
          },
          "description": "List of external subnets attached to this VPC.\n"
        },
        "externallyRoutablePrefixLists": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetVpcsEntityStatusResourceExternallyRoutablePrefixList:getVpcsEntityStatusResourceExternallyRoutablePrefixList"
          },
          "description": "List of external routable ip and prefix .\n"
        }
      },
      "type": "object",
      "required": [
        "commonDomainNameServerIpLists",
        "externalSubnetLists",
        "externallyRoutablePrefixLists"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getVpcsEntityStatusResourceCommonDomainNameServerIpList:getVpcsEntityStatusResourceCommonDomainNameServerIpList": {
      "properties": {
        "ip": {
          "type": "string",
          "description": "ip address of domain name server.\n"
        }
      },
      "type": "object",
      "required": [
        "ip"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getVpcsEntityStatusResourceExternalSubnetList:getVpcsEntityStatusResourceExternalSubnetList": {
      "properties": {
        "activeGatewayCount": {
          "type": "integer"
        },
        "activeGatewayNodes": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetVpcsEntityStatusResourceExternalSubnetListActiveGatewayNode:getVpcsEntityStatusResourceExternalSubnetListActiveGatewayNode"
          },
          "description": "Active Gateway Node. Only present in VPC Status Resources.\n"
        },
        "externalIpLists": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "List of external subnets attached to this VPC. Only present in VPC Status Resources .\n"
        },
        "externalSubnetReference": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          },
          "description": "Reference to a subnet.\n"
        }
      },
      "type": "object",
      "required": [
        "activeGatewayCount",
        "activeGatewayNodes",
        "externalIpLists",
        "externalSubnetReference"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getVpcsEntityStatusResourceExternalSubnetListActiveGatewayNode:getVpcsEntityStatusResourceExternalSubnetListActiveGatewayNode": {
      "properties": {
        "hostReference": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          },
          "description": "Reference to host.\n"
        },
        "ipAddress": {
          "type": "string",
          "description": "ip address.\n"
        }
      },
      "type": "object",
      "required": [
        "hostReference",
        "ipAddress"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getVpcsEntityStatusResourceExternallyRoutablePrefixList:getVpcsEntityStatusResourceExternallyRoutablePrefixList": {
      "properties": {
        "ip": {
          "type": "string",
          "description": "ip address of domain name server.\n"
        },
        "prefixLength": {
          "type": "integer",
          "description": "prefix length of routable ip .\n"
        }
      },
      "type": "object",
      "required": [
        "ip",
        "prefixLength"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getVpcsMetadata:getVpcsMetadata": {
      "properties": {
        "filter": {
          "type": "string"
        },
        "kind": {
          "type": "string",
          "description": "- The kind name (Default value: project).\n"
        },
        "length": {
          "type": "integer"
        },
        "offset": {
          "type": "integer"
        },
        "sortAttribute": {
          "type": "string"
        },
        "sortOrder": {
          "type": "string"
        },
        "totalMatches": {
          "type": "integer"
        }
      },
      "type": "object",
      "required": [
        "filter",
        "kind",
        "length",
        "offset",
        "sortAttribute",
        "sortOrder",
        "totalMatches"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getVpcsV2Vpc:getVpcsV2Vpc": {
      "properties": {
        "commonDhcpOptions": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetVpcsV2VpcCommonDhcpOption:getVpcsV2VpcCommonDhcpOption"
          }
        },
        "description": {
          "type": "string",
          "description": "- `extId`\n- `externalRoutingDomainReference`\n"
        },
        "extId": {
          "type": "string"
        },
        "externalRoutingDomainReference": {
          "type": "string"
        },
        "externalSubnets": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetVpcsV2VpcExternalSubnet:getVpcsV2VpcExternalSubnet"
          }
        },
        "externallyRoutablePrefixes": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetVpcsV2VpcExternallyRoutablePrefix:getVpcsV2VpcExternallyRoutablePrefix"
          }
        },
        "links": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetVpcsV2VpcLink:getVpcsV2VpcLink"
          }
        },
        "metadatas": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetVpcsV2VpcMetadata:getVpcsV2VpcMetadata"
          }
        },
        "name": {
          "type": "string"
        },
        "snatIps": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetVpcsV2VpcSnatIp:getVpcsV2VpcSnatIp"
          }
        },
        "tenantId": {
          "type": "string"
        },
        "vpcType": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "commonDhcpOptions",
        "description",
        "extId",
        "externalRoutingDomainReference",
        "externalSubnets",
        "externallyRoutablePrefixes",
        "links",
        "metadatas",
        "name",
        "snatIps",
        "tenantId",
        "vpcType"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getVpcsV2VpcCommonDhcpOption:getVpcsV2VpcCommonDhcpOption": {
      "properties": {
        "domainNameServers": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetVpcsV2VpcCommonDhcpOptionDomainNameServer:getVpcsV2VpcCommonDhcpOptionDomainNameServer"
          }
        }
      },
      "type": "object",
      "required": [
        "domainNameServers"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getVpcsV2VpcCommonDhcpOptionDomainNameServer:getVpcsV2VpcCommonDhcpOptionDomainNameServer": {
      "properties": {
        "ipv4s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetVpcsV2VpcCommonDhcpOptionDomainNameServerIpv4:getVpcsV2VpcCommonDhcpOptionDomainNameServerIpv4"
          }
        },
        "ipv6s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetVpcsV2VpcCommonDhcpOptionDomainNameServerIpv6:getVpcsV2VpcCommonDhcpOptionDomainNameServerIpv6"
          }
        }
      },
      "type": "object",
      "required": [
        "ipv4s",
        "ipv6s"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getVpcsV2VpcCommonDhcpOptionDomainNameServerIpv4:getVpcsV2VpcCommonDhcpOptionDomainNameServerIpv4": {
      "properties": {
        "prefixLength": {
          "type": "integer"
        },
        "value": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "prefixLength",
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getVpcsV2VpcCommonDhcpOptionDomainNameServerIpv6:getVpcsV2VpcCommonDhcpOptionDomainNameServerIpv6": {
      "properties": {
        "prefixLength": {
          "type": "integer"
        },
        "value": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "prefixLength",
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getVpcsV2VpcExternalSubnet:getVpcsV2VpcExternalSubnet": {
      "properties": {
        "activeGatewayCount": {
          "type": "integer"
        },
        "activeGatewayNodes": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetVpcsV2VpcExternalSubnetActiveGatewayNode:getVpcsV2VpcExternalSubnetActiveGatewayNode"
          }
        },
        "externalIps": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetVpcsV2VpcExternalSubnetExternalIp:getVpcsV2VpcExternalSubnetExternalIp"
          }
        },
        "gatewayNodes": {
          "type": "array",
          "items": {
            "type": "string"
          }
        },
        "subnetReference": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "activeGatewayCount",
        "activeGatewayNodes",
        "externalIps",
        "gatewayNodes",
        "subnetReference"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getVpcsV2VpcExternalSubnetActiveGatewayNode:getVpcsV2VpcExternalSubnetActiveGatewayNode": {
      "properties": {
        "nodeId": {
          "type": "string"
        },
        "nodeIpAddresses": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetVpcsV2VpcExternalSubnetActiveGatewayNodeNodeIpAddress:getVpcsV2VpcExternalSubnetActiveGatewayNodeNodeIpAddress"
          }
        }
      },
      "type": "object",
      "required": [
        "nodeId",
        "nodeIpAddresses"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getVpcsV2VpcExternalSubnetActiveGatewayNodeNodeIpAddress:getVpcsV2VpcExternalSubnetActiveGatewayNodeNodeIpAddress": {
      "properties": {
        "ipv4s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetVpcsV2VpcExternalSubnetActiveGatewayNodeNodeIpAddressIpv4:getVpcsV2VpcExternalSubnetActiveGatewayNodeNodeIpAddressIpv4"
          }
        },
        "ipv6s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetVpcsV2VpcExternalSubnetActiveGatewayNodeNodeIpAddressIpv6:getVpcsV2VpcExternalSubnetActiveGatewayNodeNodeIpAddressIpv6"
          }
        }
      },
      "type": "object",
      "required": [
        "ipv4s",
        "ipv6s"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getVpcsV2VpcExternalSubnetActiveGatewayNodeNodeIpAddressIpv4:getVpcsV2VpcExternalSubnetActiveGatewayNodeNodeIpAddressIpv4": {
      "properties": {
        "prefixLength": {
          "type": "integer"
        },
        "value": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "prefixLength",
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getVpcsV2VpcExternalSubnetActiveGatewayNodeNodeIpAddressIpv6:getVpcsV2VpcExternalSubnetActiveGatewayNodeNodeIpAddressIpv6": {
      "properties": {
        "prefixLength": {
          "type": "integer"
        },
        "value": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "prefixLength",
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getVpcsV2VpcExternalSubnetExternalIp:getVpcsV2VpcExternalSubnetExternalIp": {
      "properties": {
        "ipv4s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetVpcsV2VpcExternalSubnetExternalIpIpv4:getVpcsV2VpcExternalSubnetExternalIpIpv4"
          }
        },
        "ipv6s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetVpcsV2VpcExternalSubnetExternalIpIpv6:getVpcsV2VpcExternalSubnetExternalIpIpv6"
          }
        }
      },
      "type": "object",
      "required": [
        "ipv4s",
        "ipv6s"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getVpcsV2VpcExternalSubnetExternalIpIpv4:getVpcsV2VpcExternalSubnetExternalIpIpv4": {
      "properties": {
        "prefixLength": {
          "type": "integer"
        },
        "value": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "prefixLength",
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getVpcsV2VpcExternalSubnetExternalIpIpv6:getVpcsV2VpcExternalSubnetExternalIpIpv6": {
      "properties": {
        "prefixLength": {
          "type": "integer"
        },
        "value": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "prefixLength",
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getVpcsV2VpcExternallyRoutablePrefix:getVpcsV2VpcExternallyRoutablePrefix": {
      "properties": {
        "ipv4s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetVpcsV2VpcExternallyRoutablePrefixIpv4:getVpcsV2VpcExternallyRoutablePrefixIpv4"
          }
        },
        "ipv6s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetVpcsV2VpcExternallyRoutablePrefixIpv6:getVpcsV2VpcExternallyRoutablePrefixIpv6"
          }
        }
      },
      "type": "object",
      "required": [
        "ipv4s",
        "ipv6s"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getVpcsV2VpcExternallyRoutablePrefixIpv4:getVpcsV2VpcExternallyRoutablePrefixIpv4": {
      "properties": {
        "ips": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetVpcsV2VpcExternallyRoutablePrefixIpv4Ip:getVpcsV2VpcExternallyRoutablePrefixIpv4Ip"
          }
        },
        "prefixLength": {
          "type": "integer"
        }
      },
      "type": "object",
      "required": [
        "ips",
        "prefixLength"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getVpcsV2VpcExternallyRoutablePrefixIpv4Ip:getVpcsV2VpcExternallyRoutablePrefixIpv4Ip": {
      "properties": {
        "prefixLength": {
          "type": "integer"
        },
        "value": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "prefixLength",
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getVpcsV2VpcExternallyRoutablePrefixIpv6:getVpcsV2VpcExternallyRoutablePrefixIpv6": {
      "properties": {
        "ips": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetVpcsV2VpcExternallyRoutablePrefixIpv6Ip:getVpcsV2VpcExternallyRoutablePrefixIpv6Ip"
          }
        },
        "prefixLength": {
          "type": "integer"
        }
      },
      "type": "object",
      "required": [
        "ips",
        "prefixLength"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getVpcsV2VpcExternallyRoutablePrefixIpv6Ip:getVpcsV2VpcExternallyRoutablePrefixIpv6Ip": {
      "properties": {
        "prefixLength": {
          "type": "integer"
        },
        "value": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "prefixLength",
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getVpcsV2VpcLink:getVpcsV2VpcLink": {
      "properties": {
        "href": {
          "type": "string"
        },
        "rel": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "href",
        "rel"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getVpcsV2VpcMetadata:getVpcsV2VpcMetadata": {
      "properties": {
        "categoryIds": {
          "type": "array",
          "items": {
            "type": "array",
            "items": {
              "$ref": "pulumi.json#/Any"
            }
          }
        },
        "ownerReferenceId": {
          "type": "string"
        },
        "ownerUserName": {
          "type": "string"
        },
        "projectName": {
          "type": "string"
        },
        "projectReferenceId": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "categoryIds",
        "ownerReferenceId",
        "ownerUserName",
        "projectName",
        "projectReferenceId"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getVpcsV2VpcSnatIp:getVpcsV2VpcSnatIp": {
      "properties": {
        "ipv4s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetVpcsV2VpcSnatIpIpv4:getVpcsV2VpcSnatIpIpv4"
          }
        },
        "ipv6s": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FgetVpcsV2VpcSnatIpIpv6:getVpcsV2VpcSnatIpIpv6"
          }
        }
      },
      "type": "object",
      "required": [
        "ipv4s",
        "ipv6s"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getVpcsV2VpcSnatIpIpv4:getVpcsV2VpcSnatIpIpv4": {
      "properties": {
        "prefixLength": {
          "type": "integer"
        },
        "value": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "prefixLength",
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    },
    "nutanix:index/getVpcsV2VpcSnatIpIpv6:getVpcsV2VpcSnatIpIpv6": {
      "properties": {
        "prefixLength": {
          "type": "integer"
        },
        "value": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "prefixLength",
        "value"
      ],
      "language": {
        "nodejs": {
          "requiredInputs": []
        }
      }
    }
  },
  "provider": {
    "description": "The provider type for the nutanix package. By default, resources use package-wide configuration\nsettings, however an explicit `Provider` instance may be created and passed during resource\nconstruction to achieve fine-grained programmatic control over provider settings. See the\n[documentation](https://www.pulumi.com/docs/reference/programming-model/#providers) for more information.\n",
    "properties": {
      "endpoint": {
        "type": "string",
        "description": "URL for Nutanix Prism (e.g IP or FQDN for cluster VIP\nnote, this is never the data services VIP, and should not be an\nindividual CVM address, as this would cause calls to fail during\ncluster lifecycle management operations, such as AOS upgrades."
      },
      "foundationEndpoint": {
        "type": "string",
        "description": "endpoint for foundation VM (eg. Foundation VM IP)"
      },
      "foundationPort": {
        "type": "string",
        "description": "Port for foundation VM"
      },
      "ndbEndpoint": {
        "type": "string",
        "description": "endpoint for Era VM (era ip)"
      },
      "ndbPassword": {
        "type": "string"
      },
      "ndbUsername": {
        "type": "string"
      },
      "password": {
        "type": "string",
        "description": "Password for provided user name."
      },
      "port": {
        "type": "string",
        "description": "Port for Nutanix Prism."
      },
      "proxyUrl": {
        "type": "string"
      },
      "username": {
        "type": "string",
        "description": "User name for Nutanix Prism. Could be\nlocal cluster auth (e.g. 'admin') or directory auth."
      }
    },
    "type": "object",
    "inputProperties": {
      "endpoint": {
        "type": "string",
        "description": "URL for Nutanix Prism (e.g IP or FQDN for cluster VIP\nnote, this is never the data services VIP, and should not be an\nindividual CVM address, as this would cause calls to fail during\ncluster lifecycle management operations, such as AOS upgrades."
      },
      "foundationEndpoint": {
        "type": "string",
        "description": "endpoint for foundation VM (eg. Foundation VM IP)"
      },
      "foundationPort": {
        "type": "string",
        "description": "Port for foundation VM"
      },
      "insecure": {
        "type": "boolean",
        "description": "Explicitly allow the provider to perform \"insecure\" SSL requests. If omitted,default value is <span pulumi-lang-nodejs=\"`false`\" pulumi-lang-dotnet=\"`False`\" pulumi-lang-go=\"`false`\" pulumi-lang-python=\"`false`\" pulumi-lang-yaml=\"`false`\" pulumi-lang-java=\"`false`\">`false`</span>"
      },
      "ndbEndpoint": {
        "type": "string",
        "description": "endpoint for Era VM (era ip)"
      },
      "ndbPassword": {
        "type": "string"
      },
      "ndbUsername": {
        "type": "string"
      },
      "password": {
        "type": "string",
        "description": "Password for provided user name."
      },
      "port": {
        "type": "string",
        "description": "Port for Nutanix Prism."
      },
      "proxyUrl": {
        "type": "string"
      },
      "sessionAuth": {
        "type": "boolean",
        "description": "Use session authentification instead of basic auth for each request"
      },
      "username": {
        "type": "string",
        "description": "User name for Nutanix Prism. Could be\nlocal cluster auth (e.g. 'admin') or directory auth."
      },
      "waitTimeout": {
        "type": "integer",
        "description": "Set if you know that the creation o update of a resource may take long time (minutes)"
      }
    },
    "methods": {
      "terraformConfig": "pulumi:providers:nutanix/terraformConfig"
    }
  },
  "resources": {
    "nutanix:index/accessControlPolicy:AccessControlPolicy": {
      "description": "Provides a resource to create an access control policy based on the input parameters.\n\n## Example Usage\n\n<!--Start PulumiCodeChooser -->\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as nutanix from \"@pierskarsenbarg/nutanix\";\n\nconst test = new nutanix.AccessControlPolicy(\"test\", {\n    name: \"NAME OF ACCESS CONTROL POLICY\",\n    description: \"DESCRIPTION OF THE ACCESS CONTROL POLICY\",\n    roleReference: {\n        kind: \"role\",\n        uuid: \"UUID of role\",\n    },\n    userReferenceLists: [{\n        uuid: \"UUID of User existent\",\n        name: \"admin\",\n    }],\n    contextFilterLists: [{\n        entityFilterExpressionLists: [\n            {\n                operator: \"IN\",\n                leftHandSideEntityType: \"cluster\",\n                rightHandSide: {\n                    uuidLists: [\"00058ef8-c31c-f0bc-0000-000000007b23\"],\n                },\n            },\n            {\n                operator: \"IN\",\n                leftHandSideEntityType: \"image\",\n                rightHandSide: {\n                    collection: \"ALL\",\n                },\n            },\n            {\n                operator: \"IN\",\n                leftHandSideEntityType: \"category\",\n                rightHandSide: {\n                    collection: \"ALL\",\n                },\n            },\n            {\n                operator: \"IN\",\n                leftHandSideEntityType: \"marketplace_item\",\n                rightHandSide: {\n                    collection: \"SELF_OWNED\",\n                },\n            },\n            {\n                operator: \"IN\",\n                leftHandSideEntityType: \"app_task\",\n                rightHandSide: {\n                    collection: \"SELF_OWNED\",\n                },\n            },\n            {\n                operator: \"IN\",\n                leftHandSideEntityType: \"app_variable\",\n                rightHandSide: {\n                    collection: \"SELF_OWNED\",\n                },\n            },\n        ],\n    }],\n});\n```\n```python\nimport pulumi\nimport pulumi_nutanix as nutanix\n\ntest = nutanix.AccessControlPolicy(\"test\",\n    name=\"NAME OF ACCESS CONTROL POLICY\",\n    description=\"DESCRIPTION OF THE ACCESS CONTROL POLICY\",\n    role_reference={\n        \"kind\": \"role\",\n        \"uuid\": \"UUID of role\",\n    },\n    user_reference_lists=[{\n        \"uuid\": \"UUID of User existent\",\n        \"name\": \"admin\",\n    }],\n    context_filter_lists=[{\n        \"entity_filter_expression_lists\": [\n            {\n                \"operator\": \"IN\",\n                \"left_hand_side_entity_type\": \"cluster\",\n                \"right_hand_side\": {\n                    \"uuid_lists\": [\"00058ef8-c31c-f0bc-0000-000000007b23\"],\n                },\n            },\n            {\n                \"operator\": \"IN\",\n                \"left_hand_side_entity_type\": \"image\",\n                \"right_hand_side\": {\n                    \"collection\": \"ALL\",\n                },\n            },\n            {\n                \"operator\": \"IN\",\n                \"left_hand_side_entity_type\": \"category\",\n                \"right_hand_side\": {\n                    \"collection\": \"ALL\",\n                },\n            },\n            {\n                \"operator\": \"IN\",\n                \"left_hand_side_entity_type\": \"marketplace_item\",\n                \"right_hand_side\": {\n                    \"collection\": \"SELF_OWNED\",\n                },\n            },\n            {\n                \"operator\": \"IN\",\n                \"left_hand_side_entity_type\": \"app_task\",\n                \"right_hand_side\": {\n                    \"collection\": \"SELF_OWNED\",\n                },\n            },\n            {\n                \"operator\": \"IN\",\n                \"left_hand_side_entity_type\": \"app_variable\",\n                \"right_hand_side\": {\n                    \"collection\": \"SELF_OWNED\",\n                },\n            },\n        ],\n    }])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Nutanix = PiersKarsenbarg.Nutanix;\n\nreturn await Deployment.RunAsync(() => \n{\n    var test = new Nutanix.AccessControlPolicy(\"test\", new()\n    {\n        Name = \"NAME OF ACCESS CONTROL POLICY\",\n        Description = \"DESCRIPTION OF THE ACCESS CONTROL POLICY\",\n        RoleReference = new Nutanix.Inputs.AccessControlPolicyRoleReferenceArgs\n        {\n            Kind = \"role\",\n            Uuid = \"UUID of role\",\n        },\n        UserReferenceLists = new[]\n        {\n            new Nutanix.Inputs.AccessControlPolicyUserReferenceListArgs\n            {\n                Uuid = \"UUID of User existent\",\n                Name = \"admin\",\n            },\n        },\n        ContextFilterLists = new[]\n        {\n            new Nutanix.Inputs.AccessControlPolicyContextFilterListArgs\n            {\n                EntityFilterExpressionLists = new[]\n                {\n                    new Nutanix.Inputs.AccessControlPolicyContextFilterListEntityFilterExpressionListArgs\n                    {\n                        Operator = \"IN\",\n                        LeftHandSideEntityType = \"cluster\",\n                        RightHandSide = new Nutanix.Inputs.AccessControlPolicyContextFilterListEntityFilterExpressionListRightHandSideArgs\n                        {\n                            UuidLists = new[]\n                            {\n                                \"00058ef8-c31c-f0bc-0000-000000007b23\",\n                            },\n                        },\n                    },\n                    new Nutanix.Inputs.AccessControlPolicyContextFilterListEntityFilterExpressionListArgs\n                    {\n                        Operator = \"IN\",\n                        LeftHandSideEntityType = \"image\",\n                        RightHandSide = new Nutanix.Inputs.AccessControlPolicyContextFilterListEntityFilterExpressionListRightHandSideArgs\n                        {\n                            Collection = \"ALL\",\n                        },\n                    },\n                    new Nutanix.Inputs.AccessControlPolicyContextFilterListEntityFilterExpressionListArgs\n                    {\n                        Operator = \"IN\",\n                        LeftHandSideEntityType = \"category\",\n                        RightHandSide = new Nutanix.Inputs.AccessControlPolicyContextFilterListEntityFilterExpressionListRightHandSideArgs\n                        {\n                            Collection = \"ALL\",\n                        },\n                    },\n                    new Nutanix.Inputs.AccessControlPolicyContextFilterListEntityFilterExpressionListArgs\n                    {\n                        Operator = \"IN\",\n                        LeftHandSideEntityType = \"marketplace_item\",\n                        RightHandSide = new Nutanix.Inputs.AccessControlPolicyContextFilterListEntityFilterExpressionListRightHandSideArgs\n                        {\n                            Collection = \"SELF_OWNED\",\n                        },\n                    },\n                    new Nutanix.Inputs.AccessControlPolicyContextFilterListEntityFilterExpressionListArgs\n                    {\n                        Operator = \"IN\",\n                        LeftHandSideEntityType = \"app_task\",\n                        RightHandSide = new Nutanix.Inputs.AccessControlPolicyContextFilterListEntityFilterExpressionListRightHandSideArgs\n                        {\n                            Collection = \"SELF_OWNED\",\n                        },\n                    },\n                    new Nutanix.Inputs.AccessControlPolicyContextFilterListEntityFilterExpressionListArgs\n                    {\n                        Operator = \"IN\",\n                        LeftHandSideEntityType = \"app_variable\",\n                        RightHandSide = new Nutanix.Inputs.AccessControlPolicyContextFilterListEntityFilterExpressionListRightHandSideArgs\n                        {\n                            Collection = \"SELF_OWNED\",\n                        },\n                    },\n                },\n            },\n        },\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pierskarsenbarg/pulumi-nutanix/sdk/go/nutanix\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := nutanix.NewAccessControlPolicy(ctx, \"test\", &nutanix.AccessControlPolicyArgs{\n\t\t\tName:        pulumi.String(\"NAME OF ACCESS CONTROL POLICY\"),\n\t\t\tDescription: pulumi.String(\"DESCRIPTION OF THE ACCESS CONTROL POLICY\"),\n\t\t\tRoleReference: &nutanix.AccessControlPolicyRoleReferenceArgs{\n\t\t\t\tKind: pulumi.String(\"role\"),\n\t\t\t\tUuid: pulumi.String(\"UUID of role\"),\n\t\t\t},\n\t\t\tUserReferenceLists: nutanix.AccessControlPolicyUserReferenceListArray{\n\t\t\t\t&nutanix.AccessControlPolicyUserReferenceListArgs{\n\t\t\t\t\tUuid: pulumi.String(\"UUID of User existent\"),\n\t\t\t\t\tName: pulumi.String(\"admin\"),\n\t\t\t\t},\n\t\t\t},\n\t\t\tContextFilterLists: nutanix.AccessControlPolicyContextFilterListArray{\n\t\t\t\t&nutanix.AccessControlPolicyContextFilterListArgs{\n\t\t\t\t\tEntityFilterExpressionLists: nutanix.AccessControlPolicyContextFilterListEntityFilterExpressionListArray{\n\t\t\t\t\t\t&nutanix.AccessControlPolicyContextFilterListEntityFilterExpressionListArgs{\n\t\t\t\t\t\t\tOperator:               pulumi.String(\"IN\"),\n\t\t\t\t\t\t\tLeftHandSideEntityType: pulumi.String(\"cluster\"),\n\t\t\t\t\t\t\tRightHandSide: &nutanix.AccessControlPolicyContextFilterListEntityFilterExpressionListRightHandSideArgs{\n\t\t\t\t\t\t\t\tUuidLists: pulumi.StringArray{\n\t\t\t\t\t\t\t\t\tpulumi.String(\"00058ef8-c31c-f0bc-0000-000000007b23\"),\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t},\n\t\t\t\t\t\t&nutanix.AccessControlPolicyContextFilterListEntityFilterExpressionListArgs{\n\t\t\t\t\t\t\tOperator:               pulumi.String(\"IN\"),\n\t\t\t\t\t\t\tLeftHandSideEntityType: pulumi.String(\"image\"),\n\t\t\t\t\t\t\tRightHandSide: &nutanix.AccessControlPolicyContextFilterListEntityFilterExpressionListRightHandSideArgs{\n\t\t\t\t\t\t\t\tCollection: pulumi.String(\"ALL\"),\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t},\n\t\t\t\t\t\t&nutanix.AccessControlPolicyContextFilterListEntityFilterExpressionListArgs{\n\t\t\t\t\t\t\tOperator:               pulumi.String(\"IN\"),\n\t\t\t\t\t\t\tLeftHandSideEntityType: pulumi.String(\"category\"),\n\t\t\t\t\t\t\tRightHandSide: &nutanix.AccessControlPolicyContextFilterListEntityFilterExpressionListRightHandSideArgs{\n\t\t\t\t\t\t\t\tCollection: pulumi.String(\"ALL\"),\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t},\n\t\t\t\t\t\t&nutanix.AccessControlPolicyContextFilterListEntityFilterExpressionListArgs{\n\t\t\t\t\t\t\tOperator:               pulumi.String(\"IN\"),\n\t\t\t\t\t\t\tLeftHandSideEntityType: pulumi.String(\"marketplace_item\"),\n\t\t\t\t\t\t\tRightHandSide: &nutanix.AccessControlPolicyContextFilterListEntityFilterExpressionListRightHandSideArgs{\n\t\t\t\t\t\t\t\tCollection: pulumi.String(\"SELF_OWNED\"),\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t},\n\t\t\t\t\t\t&nutanix.AccessControlPolicyContextFilterListEntityFilterExpressionListArgs{\n\t\t\t\t\t\t\tOperator:               pulumi.String(\"IN\"),\n\t\t\t\t\t\t\tLeftHandSideEntityType: pulumi.String(\"app_task\"),\n\t\t\t\t\t\t\tRightHandSide: &nutanix.AccessControlPolicyContextFilterListEntityFilterExpressionListRightHandSideArgs{\n\t\t\t\t\t\t\t\tCollection: pulumi.String(\"SELF_OWNED\"),\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t},\n\t\t\t\t\t\t&nutanix.AccessControlPolicyContextFilterListEntityFilterExpressionListArgs{\n\t\t\t\t\t\t\tOperator:               pulumi.String(\"IN\"),\n\t\t\t\t\t\t\tLeftHandSideEntityType: pulumi.String(\"app_variable\"),\n\t\t\t\t\t\t\tRightHandSide: &nutanix.AccessControlPolicyContextFilterListEntityFilterExpressionListRightHandSideArgs{\n\t\t\t\t\t\t\t\tCollection: pulumi.String(\"SELF_OWNED\"),\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.nutanix.AccessControlPolicy;\nimport com.pulumi.nutanix.AccessControlPolicyArgs;\nimport com.pulumi.nutanix.inputs.AccessControlPolicyRoleReferenceArgs;\nimport com.pulumi.nutanix.inputs.AccessControlPolicyUserReferenceListArgs;\nimport com.pulumi.nutanix.inputs.AccessControlPolicyContextFilterListArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var test = new AccessControlPolicy(\"test\", AccessControlPolicyArgs.builder()\n            .name(\"NAME OF ACCESS CONTROL POLICY\")\n            .description(\"DESCRIPTION OF THE ACCESS CONTROL POLICY\")\n            .roleReference(AccessControlPolicyRoleReferenceArgs.builder()\n                .kind(\"role\")\n                .uuid(\"UUID of role\")\n                .build())\n            .userReferenceLists(AccessControlPolicyUserReferenceListArgs.builder()\n                .uuid(\"UUID of User existent\")\n                .name(\"admin\")\n                .build())\n            .contextFilterLists(AccessControlPolicyContextFilterListArgs.builder()\n                .entityFilterExpressionLists(                \n                    AccessControlPolicyContextFilterListEntityFilterExpressionListArgs.builder()\n                        .operator(\"IN\")\n                        .leftHandSideEntityType(\"cluster\")\n                        .rightHandSide(AccessControlPolicyContextFilterListEntityFilterExpressionListRightHandSideArgs.builder()\n                            .uuidLists(\"00058ef8-c31c-f0bc-0000-000000007b23\")\n                            .build())\n                        .build(),\n                    AccessControlPolicyContextFilterListEntityFilterExpressionListArgs.builder()\n                        .operator(\"IN\")\n                        .leftHandSideEntityType(\"image\")\n                        .rightHandSide(AccessControlPolicyContextFilterListEntityFilterExpressionListRightHandSideArgs.builder()\n                            .collection(\"ALL\")\n                            .build())\n                        .build(),\n                    AccessControlPolicyContextFilterListEntityFilterExpressionListArgs.builder()\n                        .operator(\"IN\")\n                        .leftHandSideEntityType(\"category\")\n                        .rightHandSide(AccessControlPolicyContextFilterListEntityFilterExpressionListRightHandSideArgs.builder()\n                            .collection(\"ALL\")\n                            .build())\n                        .build(),\n                    AccessControlPolicyContextFilterListEntityFilterExpressionListArgs.builder()\n                        .operator(\"IN\")\n                        .leftHandSideEntityType(\"marketplace_item\")\n                        .rightHandSide(AccessControlPolicyContextFilterListEntityFilterExpressionListRightHandSideArgs.builder()\n                            .collection(\"SELF_OWNED\")\n                            .build())\n                        .build(),\n                    AccessControlPolicyContextFilterListEntityFilterExpressionListArgs.builder()\n                        .operator(\"IN\")\n                        .leftHandSideEntityType(\"app_task\")\n                        .rightHandSide(AccessControlPolicyContextFilterListEntityFilterExpressionListRightHandSideArgs.builder()\n                            .collection(\"SELF_OWNED\")\n                            .build())\n                        .build(),\n                    AccessControlPolicyContextFilterListEntityFilterExpressionListArgs.builder()\n                        .operator(\"IN\")\n                        .leftHandSideEntityType(\"app_variable\")\n                        .rightHandSide(AccessControlPolicyContextFilterListEntityFilterExpressionListRightHandSideArgs.builder()\n                            .collection(\"SELF_OWNED\")\n                            .build())\n                        .build())\n                .build())\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  test:\n    type: nutanix:AccessControlPolicy\n    properties:\n      name: NAME OF ACCESS CONTROL POLICY\n      description: DESCRIPTION OF THE ACCESS CONTROL POLICY\n      roleReference:\n        kind: role\n        uuid: UUID of role\n      userReferenceLists:\n        - uuid: UUID of User existent\n          name: admin\n      contextFilterLists:\n        - entityFilterExpressionLists:\n            - operator: IN\n              leftHandSideEntityType: cluster\n              rightHandSide:\n                uuidLists:\n                  - 00058ef8-c31c-f0bc-0000-000000007b23\n            - operator: IN\n              leftHandSideEntityType: image\n              rightHandSide:\n                collection: ALL\n            - operator: IN\n              leftHandSideEntityType: category\n              rightHandSide:\n                collection: ALL\n            - operator: IN\n              leftHandSideEntityType: marketplace_item\n              rightHandSide:\n                collection: SELF_OWNED\n            - operator: IN\n              leftHandSideEntityType: app_task\n              rightHandSide:\n                collection: SELF_OWNED\n            - operator: IN\n              leftHandSideEntityType: app_variable\n              rightHandSide:\n                collection: SELF_OWNED\n```\n<!--End PulumiCodeChooser -->\n",
      "properties": {
        "apiVersion": {
          "type": "string",
          "description": "The version of the API.\n"
        },
        "categories": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FAccessControlPolicyCategory:AccessControlPolicyCategory"
          },
          "description": "- (Optional) Categories for the Access Control Policy.\n"
        },
        "contextFilterLists": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FAccessControlPolicyContextFilterList:AccessControlPolicyContextFilterList"
          }
        },
        "description": {
          "type": "string",
          "description": "- (Optional) The description of Access Control Policy.\n"
        },
        "metadata": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          },
          "description": "- The Access Control Policy kind metadata.\n"
        },
        "name": {
          "type": "string",
          "description": "- (Optional) Name of the Access Control Policy.\n"
        },
        "ownerReference": {
          "$ref": "#/types/nutanix:index%2FAccessControlPolicyOwnerReference:AccessControlPolicyOwnerReference",
          "description": "- (Optional) The reference to a user.\n"
        },
        "roleReference": {
          "$ref": "#/types/nutanix:index%2FAccessControlPolicyRoleReference:AccessControlPolicyRoleReference",
          "description": "- (Required) The reference to a role.\n"
        },
        "state": {
          "type": "string",
          "description": "- The state of the Access Control Policy.\n"
        },
        "userGroupReferenceLists": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FAccessControlPolicyUserGroupReferenceList:AccessControlPolicyUserGroupReferenceList"
          },
          "description": "- (Optional) The User group(s) being assigned a given role.\n"
        },
        "userReferenceLists": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FAccessControlPolicyUserReferenceList:AccessControlPolicyUserReferenceList"
          },
          "description": "- (Optional) The User(s) being assigned a given role.\n"
        }
      },
      "type": "object",
      "required": [
        "apiVersion",
        "categories",
        "contextFilterLists",
        "description",
        "metadata",
        "name",
        "ownerReference",
        "roleReference",
        "state",
        "userGroupReferenceLists",
        "userReferenceLists"
      ],
      "inputProperties": {
        "categories": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FAccessControlPolicyCategory:AccessControlPolicyCategory"
          },
          "description": "- (Optional) Categories for the Access Control Policy.\n"
        },
        "contextFilterLists": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FAccessControlPolicyContextFilterList:AccessControlPolicyContextFilterList"
          }
        },
        "description": {
          "type": "string",
          "description": "- (Optional) The description of Access Control Policy.\n"
        },
        "name": {
          "type": "string",
          "description": "- (Optional) Name of the Access Control Policy.\n"
        },
        "ownerReference": {
          "$ref": "#/types/nutanix:index%2FAccessControlPolicyOwnerReference:AccessControlPolicyOwnerReference",
          "description": "- (Optional) The reference to a user.\n"
        },
        "roleReference": {
          "$ref": "#/types/nutanix:index%2FAccessControlPolicyRoleReference:AccessControlPolicyRoleReference",
          "description": "- (Required) The reference to a role.\n"
        },
        "userGroupReferenceLists": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FAccessControlPolicyUserGroupReferenceList:AccessControlPolicyUserGroupReferenceList"
          },
          "description": "- (Optional) The User group(s) being assigned a given role.\n"
        },
        "userReferenceLists": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FAccessControlPolicyUserReferenceList:AccessControlPolicyUserReferenceList"
          },
          "description": "- (Optional) The User(s) being assigned a given role.\n"
        }
      },
      "requiredInputs": [
        "roleReference"
      ],
      "stateInputs": {
        "description": "Input properties used for looking up and filtering AccessControlPolicy resources.\n",
        "properties": {
          "apiVersion": {
            "type": "string",
            "description": "The version of the API.\n"
          },
          "categories": {
            "type": "array",
            "items": {
              "$ref": "#/types/nutanix:index%2FAccessControlPolicyCategory:AccessControlPolicyCategory"
            },
            "description": "- (Optional) Categories for the Access Control Policy.\n"
          },
          "contextFilterLists": {
            "type": "array",
            "items": {
              "$ref": "#/types/nutanix:index%2FAccessControlPolicyContextFilterList:AccessControlPolicyContextFilterList"
            }
          },
          "description": {
            "type": "string",
            "description": "- (Optional) The description of Access Control Policy.\n"
          },
          "metadata": {
            "type": "object",
            "additionalProperties": {
              "type": "string"
            },
            "description": "- The Access Control Policy kind metadata.\n"
          },
          "name": {
            "type": "string",
            "description": "- (Optional) Name of the Access Control Policy.\n"
          },
          "ownerReference": {
            "$ref": "#/types/nutanix:index%2FAccessControlPolicyOwnerReference:AccessControlPolicyOwnerReference",
            "description": "- (Optional) The reference to a user.\n"
          },
          "roleReference": {
            "$ref": "#/types/nutanix:index%2FAccessControlPolicyRoleReference:AccessControlPolicyRoleReference",
            "description": "- (Required) The reference to a role.\n"
          },
          "state": {
            "type": "string",
            "description": "- The state of the Access Control Policy.\n"
          },
          "userGroupReferenceLists": {
            "type": "array",
            "items": {
              "$ref": "#/types/nutanix:index%2FAccessControlPolicyUserGroupReferenceList:AccessControlPolicyUserGroupReferenceList"
            },
            "description": "- (Optional) The User group(s) being assigned a given role.\n"
          },
          "userReferenceLists": {
            "type": "array",
            "items": {
              "$ref": "#/types/nutanix:index%2FAccessControlPolicyUserReferenceList:AccessControlPolicyUserReferenceList"
            },
            "description": "- (Optional) The User(s) being assigned a given role.\n"
          }
        },
        "type": "object"
      }
    },
    "nutanix:index/addressGroup:AddressGroup": {
      "description": "Provides a resource to create a address group based on the input parameters.\n\n## Example Usage\n\n<!--Start PulumiCodeChooser -->\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as nutanix from \"@pierskarsenbarg/nutanix\";\n\nconst testAddress = new nutanix.AddressGroup(\"test_address\", {\n    name: \"test\",\n    description: \"test address groups resource\",\n    ipAddressBlockLists: [{\n        ip: \"10.0.0.0\",\n        prefixLength: 24,\n    }],\n});\n```\n```python\nimport pulumi\nimport pulumi_nutanix as nutanix\n\ntest_address = nutanix.AddressGroup(\"test_address\",\n    name=\"test\",\n    description=\"test address groups resource\",\n    ip_address_block_lists=[{\n        \"ip\": \"10.0.0.0\",\n        \"prefix_length\": 24,\n    }])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Nutanix = PiersKarsenbarg.Nutanix;\n\nreturn await Deployment.RunAsync(() => \n{\n    var testAddress = new Nutanix.AddressGroup(\"test_address\", new()\n    {\n        Name = \"test\",\n        Description = \"test address groups resource\",\n        IpAddressBlockLists = new[]\n        {\n            new Nutanix.Inputs.AddressGroupIpAddressBlockListArgs\n            {\n                Ip = \"10.0.0.0\",\n                PrefixLength = 24,\n            },\n        },\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pierskarsenbarg/pulumi-nutanix/sdk/go/nutanix\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := nutanix.NewAddressGroup(ctx, \"test_address\", &nutanix.AddressGroupArgs{\n\t\t\tName:        pulumi.String(\"test\"),\n\t\t\tDescription: pulumi.String(\"test address groups resource\"),\n\t\t\tIpAddressBlockLists: nutanix.AddressGroupIpAddressBlockListArray{\n\t\t\t\t&nutanix.AddressGroupIpAddressBlockListArgs{\n\t\t\t\t\tIp:           pulumi.String(\"10.0.0.0\"),\n\t\t\t\t\tPrefixLength: pulumi.Int(24),\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.nutanix.AddressGroup;\nimport com.pulumi.nutanix.AddressGroupArgs;\nimport com.pulumi.nutanix.inputs.AddressGroupIpAddressBlockListArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var testAddress = new AddressGroup(\"testAddress\", AddressGroupArgs.builder()\n            .name(\"test\")\n            .description(\"test address groups resource\")\n            .ipAddressBlockLists(AddressGroupIpAddressBlockListArgs.builder()\n                .ip(\"10.0.0.0\")\n                .prefixLength(24)\n                .build())\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  testAddress:\n    type: nutanix:AddressGroup\n    name: test_address\n    properties:\n      name: test\n      description: test address groups resource\n      ipAddressBlockLists:\n        - ip: 10.0.0.0\n          prefixLength: 24\n```\n<!--End PulumiCodeChooser -->\n",
      "properties": {
        "addressGroupString": {
          "type": "string",
          "description": "- (ReadOnly) Address Group string\n"
        },
        "description": {
          "type": "string",
          "description": "- (Optional) Description of the service group\n"
        },
        "ipAddressBlockLists": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FAddressGroupIpAddressBlockList:AddressGroupIpAddressBlockList"
          },
          "description": "- (Required) list of IP address blocks with their prefix length\n"
        },
        "name": {
          "type": "string",
          "description": "- (Required) Name of the service group\n"
        }
      },
      "type": "object",
      "required": [
        "addressGroupString",
        "ipAddressBlockLists",
        "name"
      ],
      "inputProperties": {
        "description": {
          "type": "string",
          "description": "- (Optional) Description of the service group\n"
        },
        "ipAddressBlockLists": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FAddressGroupIpAddressBlockList:AddressGroupIpAddressBlockList"
          },
          "description": "- (Required) list of IP address blocks with their prefix length\n"
        },
        "name": {
          "type": "string",
          "description": "- (Required) Name of the service group\n"
        }
      },
      "requiredInputs": [
        "ipAddressBlockLists"
      ],
      "stateInputs": {
        "description": "Input properties used for looking up and filtering AddressGroup resources.\n",
        "properties": {
          "addressGroupString": {
            "type": "string",
            "description": "- (ReadOnly) Address Group string\n"
          },
          "description": {
            "type": "string",
            "description": "- (Optional) Description of the service group\n"
          },
          "ipAddressBlockLists": {
            "type": "array",
            "items": {
              "$ref": "#/types/nutanix:index%2FAddressGroupIpAddressBlockList:AddressGroupIpAddressBlockList"
            },
            "description": "- (Required) list of IP address blocks with their prefix length\n"
          },
          "name": {
            "type": "string",
            "description": "- (Required) Name of the service group\n"
          }
        },
        "type": "object"
      }
    },
    "nutanix:index/addressGroupsV2:AddressGroupsV2": {
      "properties": {
        "createdBy": {
          "type": "string"
        },
        "description": {
          "type": "string"
        },
        "extId": {
          "type": "string"
        },
        "ipRanges": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FAddressGroupsV2IpRange:AddressGroupsV2IpRange"
          }
        },
        "ipv4Addresses": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FAddressGroupsV2Ipv4Address:AddressGroupsV2Ipv4Address"
          }
        },
        "links": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FAddressGroupsV2Link:AddressGroupsV2Link"
          }
        },
        "name": {
          "type": "string"
        },
        "policyReferences": {
          "type": "array",
          "items": {
            "type": "string"
          }
        },
        "tenantId": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "createdBy",
        "extId",
        "ipRanges",
        "ipv4Addresses",
        "links",
        "name",
        "policyReferences",
        "tenantId"
      ],
      "inputProperties": {
        "description": {
          "type": "string"
        },
        "ipRanges": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FAddressGroupsV2IpRange:AddressGroupsV2IpRange"
          }
        },
        "ipv4Addresses": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FAddressGroupsV2Ipv4Address:AddressGroupsV2Ipv4Address"
          }
        },
        "name": {
          "type": "string"
        }
      },
      "stateInputs": {
        "description": "Input properties used for looking up and filtering AddressGroupsV2 resources.\n",
        "properties": {
          "createdBy": {
            "type": "string"
          },
          "description": {
            "type": "string"
          },
          "extId": {
            "type": "string"
          },
          "ipRanges": {
            "type": "array",
            "items": {
              "$ref": "#/types/nutanix:index%2FAddressGroupsV2IpRange:AddressGroupsV2IpRange"
            }
          },
          "ipv4Addresses": {
            "type": "array",
            "items": {
              "$ref": "#/types/nutanix:index%2FAddressGroupsV2Ipv4Address:AddressGroupsV2Ipv4Address"
            }
          },
          "links": {
            "type": "array",
            "items": {
              "$ref": "#/types/nutanix:index%2FAddressGroupsV2Link:AddressGroupsV2Link"
            }
          },
          "name": {
            "type": "string"
          },
          "policyReferences": {
            "type": "array",
            "items": {
              "type": "string"
            }
          },
          "tenantId": {
            "type": "string"
          }
        },
        "type": "object"
      }
    },
    "nutanix:index/associateCategoryToVolumeGroupV2:AssociateCategoryToVolumeGroupV2": {
      "description": "Provides a resource to Creates a new Volume Disk.\n\n## Example Usage\n\n<!--Start PulumiCodeChooser -->\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as nutanix from \"@pierskarsenbarg/nutanix\";\n\n// Associate categories to volume group\nconst example = new nutanix.AssociateCategoryToVolumeGroupV2(\"example\", {\n    extId: \"f0c0a4ac-c734-4770-b5d7-eca6793eeeb7\",\n    categories: [\n        {\n            extId: \"85e68112-5b2b-4220-bc8d-e529e4bf420e\",\n        },\n        {\n            extId: \"45588de3-7c18-4230-a147-7e26ad92d8a6\",\n        },\n        {\n            extId: \"1c6638f2-5215-4086-8f21-a30e75cb8068\",\n        },\n    ],\n});\n```\n```python\nimport pulumi\nimport pulumi_nutanix as nutanix\n\n# Associate categories to volume group\nexample = nutanix.AssociateCategoryToVolumeGroupV2(\"example\",\n    ext_id=\"f0c0a4ac-c734-4770-b5d7-eca6793eeeb7\",\n    categories=[\n        {\n            \"ext_id\": \"85e68112-5b2b-4220-bc8d-e529e4bf420e\",\n        },\n        {\n            \"ext_id\": \"45588de3-7c18-4230-a147-7e26ad92d8a6\",\n        },\n        {\n            \"ext_id\": \"1c6638f2-5215-4086-8f21-a30e75cb8068\",\n        },\n    ])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Nutanix = PiersKarsenbarg.Nutanix;\n\nreturn await Deployment.RunAsync(() => \n{\n    // Associate categories to volume group\n    var example = new Nutanix.AssociateCategoryToVolumeGroupV2(\"example\", new()\n    {\n        ExtId = \"f0c0a4ac-c734-4770-b5d7-eca6793eeeb7\",\n        Categories = new[]\n        {\n            new Nutanix.Inputs.AssociateCategoryToVolumeGroupV2CategoryArgs\n            {\n                ExtId = \"85e68112-5b2b-4220-bc8d-e529e4bf420e\",\n            },\n            new Nutanix.Inputs.AssociateCategoryToVolumeGroupV2CategoryArgs\n            {\n                ExtId = \"45588de3-7c18-4230-a147-7e26ad92d8a6\",\n            },\n            new Nutanix.Inputs.AssociateCategoryToVolumeGroupV2CategoryArgs\n            {\n                ExtId = \"1c6638f2-5215-4086-8f21-a30e75cb8068\",\n            },\n        },\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pierskarsenbarg/pulumi-nutanix/sdk/go/nutanix\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t// Associate categories to volume group\n\t\t_, err := nutanix.NewAssociateCategoryToVolumeGroupV2(ctx, \"example\", &nutanix.AssociateCategoryToVolumeGroupV2Args{\n\t\t\tExtId: pulumi.String(\"f0c0a4ac-c734-4770-b5d7-eca6793eeeb7\"),\n\t\t\tCategories: nutanix.AssociateCategoryToVolumeGroupV2CategoryArray{\n\t\t\t\t&nutanix.AssociateCategoryToVolumeGroupV2CategoryArgs{\n\t\t\t\t\tExtId: pulumi.String(\"85e68112-5b2b-4220-bc8d-e529e4bf420e\"),\n\t\t\t\t},\n\t\t\t\t&nutanix.AssociateCategoryToVolumeGroupV2CategoryArgs{\n\t\t\t\t\tExtId: pulumi.String(\"45588de3-7c18-4230-a147-7e26ad92d8a6\"),\n\t\t\t\t},\n\t\t\t\t&nutanix.AssociateCategoryToVolumeGroupV2CategoryArgs{\n\t\t\t\t\tExtId: pulumi.String(\"1c6638f2-5215-4086-8f21-a30e75cb8068\"),\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.nutanix.AssociateCategoryToVolumeGroupV2;\nimport com.pulumi.nutanix.AssociateCategoryToVolumeGroupV2Args;\nimport com.pulumi.nutanix.inputs.AssociateCategoryToVolumeGroupV2CategoryArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        // Associate categories to volume group\n        var example = new AssociateCategoryToVolumeGroupV2(\"example\", AssociateCategoryToVolumeGroupV2Args.builder()\n            .extId(\"f0c0a4ac-c734-4770-b5d7-eca6793eeeb7\")\n            .categories(            \n                AssociateCategoryToVolumeGroupV2CategoryArgs.builder()\n                    .extId(\"85e68112-5b2b-4220-bc8d-e529e4bf420e\")\n                    .build(),\n                AssociateCategoryToVolumeGroupV2CategoryArgs.builder()\n                    .extId(\"45588de3-7c18-4230-a147-7e26ad92d8a6\")\n                    .build(),\n                AssociateCategoryToVolumeGroupV2CategoryArgs.builder()\n                    .extId(\"1c6638f2-5215-4086-8f21-a30e75cb8068\")\n                    .build())\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  # Associate categories to volume group\n  example:\n    type: nutanix:AssociateCategoryToVolumeGroupV2\n    properties:\n      extId: f0c0a4ac-c734-4770-b5d7-eca6793eeeb7\n      categories:\n        - extId: 85e68112-5b2b-4220-bc8d-e529e4bf420e\n        - extId: 45588de3-7c18-4230-a147-7e26ad92d8a6\n        - extId: 1c6638f2-5215-4086-8f21-a30e75cb8068\n```\n<!--End PulumiCodeChooser -->\n",
      "properties": {
        "categories": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FAssociateCategoryToVolumeGroupV2Category:AssociateCategoryToVolumeGroupV2Category"
          },
          "description": "-(Required) The category to be associated/disassociated with the Volume Group. This is a mandatory field.\n"
        },
        "extId": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "extId"
      ],
      "inputProperties": {
        "categories": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FAssociateCategoryToVolumeGroupV2Category:AssociateCategoryToVolumeGroupV2Category"
          },
          "description": "-(Required) The category to be associated/disassociated with the Volume Group. This is a mandatory field.\n"
        },
        "extId": {
          "type": "string"
        }
      },
      "requiredInputs": [
        "extId"
      ],
      "stateInputs": {
        "description": "Input properties used for looking up and filtering AssociateCategoryToVolumeGroupV2 resources.\n",
        "properties": {
          "categories": {
            "type": "array",
            "items": {
              "$ref": "#/types/nutanix:index%2FAssociateCategoryToVolumeGroupV2Category:AssociateCategoryToVolumeGroupV2Category"
            },
            "description": "-(Required) The category to be associated/disassociated with the Volume Group. This is a mandatory field.\n"
          },
          "extId": {
            "type": "string"
          }
        },
        "type": "object"
      }
    },
    "nutanix:index/authorizationPolicyV2:AuthorizationPolicyV2": {
      "description": "Provides Nutanix resource to create authorization policy.\n\n\n## Example\n\n<!--Start PulumiCodeChooser -->\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as nutanix from \"@pierskarsenbarg/nutanix\";\n\nconst ap_example = new nutanix.AuthorizationPolicyV2(\"ap-example\", {\n    role: \"ba250e3e-1db1-4950-917f-a9e2ea35b8e3\",\n    displayName: \"auth_policy_example\",\n    description: \"authorization policy example\",\n    authorizationPolicyType: \"USER_DEFINED\",\n    identities: [{\n        reserved: \"{\\\"user\\\":{\\\"uuid\\\":{\\\"anyof\\\":[\\\"00000000-0000-0000-0000-000000000000\\\"]}}}\",\n    }],\n    entities: [\n        {\n            reserved: \"{\\\"images\\\":{\\\"*\\\":{\\\"eq\\\":\\\"*\\\"}}}\",\n        },\n        {\n            reserved: \"{\\\"marketplace_item\\\":{\\\"owner_uuid\\\":{\\\"eq\\\":\\\"SELF_OWNED\\\"}}}\",\n        },\n    ],\n});\n```\n```python\nimport pulumi\nimport pulumi_nutanix as nutanix\n\nap_example = nutanix.AuthorizationPolicyV2(\"ap-example\",\n    role=\"ba250e3e-1db1-4950-917f-a9e2ea35b8e3\",\n    display_name=\"auth_policy_example\",\n    description=\"authorization policy example\",\n    authorization_policy_type=\"USER_DEFINED\",\n    identities=[{\n        \"reserved\": \"{\\\"user\\\":{\\\"uuid\\\":{\\\"anyof\\\":[\\\"00000000-0000-0000-0000-000000000000\\\"]}}}\",\n    }],\n    entities=[\n        {\n            \"reserved\": \"{\\\"images\\\":{\\\"*\\\":{\\\"eq\\\":\\\"*\\\"}}}\",\n        },\n        {\n            \"reserved\": \"{\\\"marketplace_item\\\":{\\\"owner_uuid\\\":{\\\"eq\\\":\\\"SELF_OWNED\\\"}}}\",\n        },\n    ])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Nutanix = PiersKarsenbarg.Nutanix;\n\nreturn await Deployment.RunAsync(() => \n{\n    var ap_example = new Nutanix.AuthorizationPolicyV2(\"ap-example\", new()\n    {\n        Role = \"ba250e3e-1db1-4950-917f-a9e2ea35b8e3\",\n        DisplayName = \"auth_policy_example\",\n        Description = \"authorization policy example\",\n        AuthorizationPolicyType = \"USER_DEFINED\",\n        Identities = new[]\n        {\n            new Nutanix.Inputs.AuthorizationPolicyV2IdentityArgs\n            {\n                Reserved = \"{\\\"user\\\":{\\\"uuid\\\":{\\\"anyof\\\":[\\\"00000000-0000-0000-0000-000000000000\\\"]}}}\",\n            },\n        },\n        Entities = new[]\n        {\n            new Nutanix.Inputs.AuthorizationPolicyV2EntityArgs\n            {\n                Reserved = \"{\\\"images\\\":{\\\"*\\\":{\\\"eq\\\":\\\"*\\\"}}}\",\n            },\n            new Nutanix.Inputs.AuthorizationPolicyV2EntityArgs\n            {\n                Reserved = \"{\\\"marketplace_item\\\":{\\\"owner_uuid\\\":{\\\"eq\\\":\\\"SELF_OWNED\\\"}}}\",\n            },\n        },\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pierskarsenbarg/pulumi-nutanix/sdk/go/nutanix\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := nutanix.NewAuthorizationPolicyV2(ctx, \"ap-example\", &nutanix.AuthorizationPolicyV2Args{\n\t\t\tRole:                    pulumi.String(\"ba250e3e-1db1-4950-917f-a9e2ea35b8e3\"),\n\t\t\tDisplayName:             pulumi.String(\"auth_policy_example\"),\n\t\t\tDescription:             pulumi.String(\"authorization policy example\"),\n\t\t\tAuthorizationPolicyType: pulumi.String(\"USER_DEFINED\"),\n\t\t\tIdentities: nutanix.AuthorizationPolicyV2IdentityArray{\n\t\t\t\t&nutanix.AuthorizationPolicyV2IdentityArgs{\n\t\t\t\t\tReserved: pulumi.String(\"{\\\"user\\\":{\\\"uuid\\\":{\\\"anyof\\\":[\\\"00000000-0000-0000-0000-000000000000\\\"]}}}\"),\n\t\t\t\t},\n\t\t\t},\n\t\t\tEntities: nutanix.AuthorizationPolicyV2EntityArray{\n\t\t\t\t&nutanix.AuthorizationPolicyV2EntityArgs{\n\t\t\t\t\tReserved: pulumi.String(\"{\\\"images\\\":{\\\"*\\\":{\\\"eq\\\":\\\"*\\\"}}}\"),\n\t\t\t\t},\n\t\t\t\t&nutanix.AuthorizationPolicyV2EntityArgs{\n\t\t\t\t\tReserved: pulumi.String(\"{\\\"marketplace_item\\\":{\\\"owner_uuid\\\":{\\\"eq\\\":\\\"SELF_OWNED\\\"}}}\"),\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.nutanix.AuthorizationPolicyV2;\nimport com.pulumi.nutanix.AuthorizationPolicyV2Args;\nimport com.pulumi.nutanix.inputs.AuthorizationPolicyV2IdentityArgs;\nimport com.pulumi.nutanix.inputs.AuthorizationPolicyV2EntityArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var ap_example = new AuthorizationPolicyV2(\"ap-example\", AuthorizationPolicyV2Args.builder()\n            .role(\"ba250e3e-1db1-4950-917f-a9e2ea35b8e3\")\n            .displayName(\"auth_policy_example\")\n            .description(\"authorization policy example\")\n            .authorizationPolicyType(\"USER_DEFINED\")\n            .identities(AuthorizationPolicyV2IdentityArgs.builder()\n                .reserved(\"{\\\"user\\\":{\\\"uuid\\\":{\\\"anyof\\\":[\\\"00000000-0000-0000-0000-000000000000\\\"]}}}\")\n                .build())\n            .entities(            \n                AuthorizationPolicyV2EntityArgs.builder()\n                    .reserved(\"{\\\"images\\\":{\\\"*\\\":{\\\"eq\\\":\\\"*\\\"}}}\")\n                    .build(),\n                AuthorizationPolicyV2EntityArgs.builder()\n                    .reserved(\"{\\\"marketplace_item\\\":{\\\"owner_uuid\\\":{\\\"eq\\\":\\\"SELF_OWNED\\\"}}}\")\n                    .build())\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  ap-example:\n    type: nutanix:AuthorizationPolicyV2\n    properties:\n      role: ba250e3e-1db1-4950-917f-a9e2ea35b8e3\n      displayName: auth_policy_example\n      description: authorization policy example\n      authorizationPolicyType: USER_DEFINED\n      identities:\n        - reserved: '{\"user\":{\"uuid\":{\"anyof\":[\"00000000-0000-0000-0000-000000000000\"]}}}'\n      entities:\n        - reserved: '{\"images\":{\"*\":{\"eq\":\"*\"}}}'\n        - reserved: '{\"marketplace_item\":{\"owner_uuid\":{\"eq\":\"SELF_OWNED\"}}}'\n```\n<!--End PulumiCodeChooser -->\n",
      "properties": {
        "authorizationPolicyType": {
          "type": "string",
          "description": "Type of Authorization Policy.\n* `PREDEFINED_READ_ONLY` : System-defined read-only ACP, i.e. no modifications allowed.\n* `SERVICE_DEFINED_READ_ONLY` : Read-only ACP defined by a service.\n* `PREDEFINED_UPDATE_IDENTITY_ONLY` : System-defined ACP prohibiting any modifications from customer.\n* `SERVICE_DEFINED` : ACP defined by a service.\n* `USER_DEFINED` : ACP defined by an User.\n"
        },
        "clientName": {
          "type": "string",
          "description": "Client that created the entity.\n"
        },
        "createdBy": {
          "type": "string",
          "description": "User or Service Name that created the Authorization Policy.\n"
        },
        "createdTime": {
          "type": "string",
          "description": "The creation time of the Authorization Policy.\n"
        },
        "description": {
          "type": "string",
          "description": "Description of the Authorization Policy.\n"
        },
        "displayName": {
          "type": "string",
          "description": "Name of the Authorization Policy.\n"
        },
        "entities": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FAuthorizationPolicyV2Entity:AuthorizationPolicyV2Entity"
          },
          "description": "The entities being qualified by the Authorization Policy.\n"
        },
        "extId": {
          "type": "string",
          "description": "ext_id of Authorization policy.\n"
        },
        "identities": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FAuthorizationPolicyV2Identity:AuthorizationPolicyV2Identity"
          },
          "description": "The identities for which the Authorization Policy is created.\n"
        },
        "isSystemDefined": {
          "type": "boolean",
          "description": "Flag identifying if the Authorization Policy is system defined or not.\n"
        },
        "lastUpdatedTime": {
          "type": "string",
          "description": "The time when the Authorization Policy was last updated.\n"
        },
        "role": {
          "type": "string",
          "description": "The Role associated with the Authorization Policy.\n"
        }
      },
      "type": "object",
      "required": [
        "clientName",
        "createdBy",
        "createdTime",
        "displayName",
        "entities",
        "extId",
        "identities",
        "isSystemDefined",
        "lastUpdatedTime",
        "role"
      ],
      "inputProperties": {
        "authorizationPolicyType": {
          "type": "string",
          "description": "Type of Authorization Policy.\n* `PREDEFINED_READ_ONLY` : System-defined read-only ACP, i.e. no modifications allowed.\n* `SERVICE_DEFINED_READ_ONLY` : Read-only ACP defined by a service.\n* `PREDEFINED_UPDATE_IDENTITY_ONLY` : System-defined ACP prohibiting any modifications from customer.\n* `SERVICE_DEFINED` : ACP defined by a service.\n* `USER_DEFINED` : ACP defined by an User.\n"
        },
        "description": {
          "type": "string",
          "description": "Description of the Authorization Policy.\n"
        },
        "displayName": {
          "type": "string",
          "description": "Name of the Authorization Policy.\n"
        },
        "entities": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FAuthorizationPolicyV2Entity:AuthorizationPolicyV2Entity"
          },
          "description": "The entities being qualified by the Authorization Policy.\n"
        },
        "extId": {
          "type": "string",
          "description": "ext_id of Authorization policy.\n"
        },
        "identities": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FAuthorizationPolicyV2Identity:AuthorizationPolicyV2Identity"
          },
          "description": "The identities for which the Authorization Policy is created.\n"
        },
        "role": {
          "type": "string",
          "description": "The Role associated with the Authorization Policy.\n"
        }
      },
      "requiredInputs": [
        "displayName",
        "entities",
        "identities",
        "role"
      ],
      "stateInputs": {
        "description": "Input properties used for looking up and filtering AuthorizationPolicyV2 resources.\n",
        "properties": {
          "authorizationPolicyType": {
            "type": "string",
            "description": "Type of Authorization Policy.\n* `PREDEFINED_READ_ONLY` : System-defined read-only ACP, i.e. no modifications allowed.\n* `SERVICE_DEFINED_READ_ONLY` : Read-only ACP defined by a service.\n* `PREDEFINED_UPDATE_IDENTITY_ONLY` : System-defined ACP prohibiting any modifications from customer.\n* `SERVICE_DEFINED` : ACP defined by a service.\n* `USER_DEFINED` : ACP defined by an User.\n"
          },
          "clientName": {
            "type": "string",
            "description": "Client that created the entity.\n"
          },
          "createdBy": {
            "type": "string",
            "description": "User or Service Name that created the Authorization Policy.\n"
          },
          "createdTime": {
            "type": "string",
            "description": "The creation time of the Authorization Policy.\n"
          },
          "description": {
            "type": "string",
            "description": "Description of the Authorization Policy.\n"
          },
          "displayName": {
            "type": "string",
            "description": "Name of the Authorization Policy.\n"
          },
          "entities": {
            "type": "array",
            "items": {
              "$ref": "#/types/nutanix:index%2FAuthorizationPolicyV2Entity:AuthorizationPolicyV2Entity"
            },
            "description": "The entities being qualified by the Authorization Policy.\n"
          },
          "extId": {
            "type": "string",
            "description": "ext_id of Authorization policy.\n"
          },
          "identities": {
            "type": "array",
            "items": {
              "$ref": "#/types/nutanix:index%2FAuthorizationPolicyV2Identity:AuthorizationPolicyV2Identity"
            },
            "description": "The identities for which the Authorization Policy is created.\n"
          },
          "isSystemDefined": {
            "type": "boolean",
            "description": "Flag identifying if the Authorization Policy is system defined or not.\n"
          },
          "lastUpdatedTime": {
            "type": "string",
            "description": "The time when the Authorization Policy was last updated.\n"
          },
          "role": {
            "type": "string",
            "description": "The Role associated with the Authorization Policy.\n"
          }
        },
        "type": "object"
      }
    },
    "nutanix:index/categoryKey:CategoryKey": {
      "description": "Provides a Nutanix Category key resource to Create a category key name.\n\n## Example Usage\n\n<!--Start PulumiCodeChooser -->\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as nutanix from \"@pierskarsenbarg/nutanix\";\n\nconst test = new nutanix.CategoryKey(\"test\", {\n    name: \"app-support-example\",\n    description: \"App Support Category Key\",\n});\n```\n```python\nimport pulumi\nimport pulumi_nutanix as nutanix\n\ntest = nutanix.CategoryKey(\"test\",\n    name=\"app-support-example\",\n    description=\"App Support Category Key\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Nutanix = PiersKarsenbarg.Nutanix;\n\nreturn await Deployment.RunAsync(() => \n{\n    var test = new Nutanix.CategoryKey(\"test\", new()\n    {\n        Name = \"app-support-example\",\n        Description = \"App Support Category Key\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pierskarsenbarg/pulumi-nutanix/sdk/go/nutanix\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := nutanix.NewCategoryKey(ctx, \"test\", &nutanix.CategoryKeyArgs{\n\t\t\tName:        pulumi.String(\"app-support-example\"),\n\t\t\tDescription: pulumi.String(\"App Support Category Key\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.nutanix.CategoryKey;\nimport com.pulumi.nutanix.CategoryKeyArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var test = new CategoryKey(\"test\", CategoryKeyArgs.builder()\n            .name(\"app-support-example\")\n            .description(\"App Support Category Key\")\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  test:\n    type: nutanix:CategoryKey\n    properties:\n      name: app-support-example\n      description: App Support Category Key\n```\n<!--End PulumiCodeChooser -->\n",
      "properties": {
        "apiVersion": {
          "type": "string",
          "description": "(Optional) The version of the API.\n"
        },
        "description": {
          "type": "string",
          "description": "- (Optional) A description for category key.\n"
        },
        "name": {
          "type": "string",
          "description": "- (Required) The name for the category key.\n"
        },
        "systemDefined": {
          "type": "boolean",
          "description": "- Specifying whether its a system defined category.\n"
        }
      },
      "type": "object",
      "required": [
        "apiVersion",
        "description",
        "name",
        "systemDefined"
      ],
      "inputProperties": {
        "description": {
          "type": "string",
          "description": "- (Optional) A description for category key.\n"
        },
        "name": {
          "type": "string",
          "description": "- (Required) The name for the category key.\n"
        }
      },
      "stateInputs": {
        "description": "Input properties used for looking up and filtering CategoryKey resources.\n",
        "properties": {
          "apiVersion": {
            "type": "string",
            "description": "(Optional) The version of the API.\n"
          },
          "description": {
            "type": "string",
            "description": "- (Optional) A description for category key.\n"
          },
          "name": {
            "type": "string",
            "description": "- (Required) The name for the category key.\n"
          },
          "systemDefined": {
            "type": "boolean",
            "description": "- Specifying whether its a system defined category.\n"
          }
        },
        "type": "object"
      }
    },
    "nutanix:index/categoryV2:CategoryV2": {
      "description": "Fetch a category\n\n\n## Example\n\n<!--Start PulumiCodeChooser -->\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as nutanix from \"@pierskarsenbarg/nutanix\";\n\nconst example = new nutanix.CategoryV2(\"example\", {\n    key: \"category_example_key\",\n    value: \"category_example_value\",\n    description: \"category example description\",\n});\n```\n```python\nimport pulumi\nimport pulumi_nutanix as nutanix\n\nexample = nutanix.CategoryV2(\"example\",\n    key=\"category_example_key\",\n    value=\"category_example_value\",\n    description=\"category example description\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Nutanix = PiersKarsenbarg.Nutanix;\n\nreturn await Deployment.RunAsync(() => \n{\n    var example = new Nutanix.CategoryV2(\"example\", new()\n    {\n        Key = \"category_example_key\",\n        Value = \"category_example_value\",\n        Description = \"category example description\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pierskarsenbarg/pulumi-nutanix/sdk/go/nutanix\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := nutanix.NewCategoryV2(ctx, \"example\", &nutanix.CategoryV2Args{\n\t\t\tKey:         pulumi.String(\"category_example_key\"),\n\t\t\tValue:       pulumi.String(\"category_example_value\"),\n\t\t\tDescription: pulumi.String(\"category example description\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.nutanix.CategoryV2;\nimport com.pulumi.nutanix.CategoryV2Args;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var example = new CategoryV2(\"example\", CategoryV2Args.builder()\n            .key(\"category_example_key\")\n            .value(\"category_example_value\")\n            .description(\"category example description\")\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  example:\n    type: nutanix:CategoryV2\n    properties:\n      key: category_example_key\n      value: category_example_value\n      description: category example description\n```\n<!--End PulumiCodeChooser -->\n",
      "properties": {
        "associations": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FCategoryV2Association:CategoryV2Association"
          },
          "description": "This field gives basic information about resources that are associated with the category.\nThe results present under this field summarize the counts of various kinds of resources associated with the category.\nFor more detailed information about the UUIDs of the resources, please look into the field detailedAssociations.\nThis field will be ignored, if given in the payload of updateCategoryById or createCategory APIs.\nThis field will not be present by default in listCategories API, unless the parameter $expand=associations is present in the URL.\n"
        },
        "description": {
          "type": "string",
          "description": "-(Optional) A string consisting of the description of the category as defined by the user.\nDescription can be optionally provided in the payload of createCategory and updateCategoryById APIs.\nDescription field can be updated through updateCategoryById API.\nThe server does not validate this value nor does it enforce the uniqueness or any other constraints.\nIt is the responsibility of the user to ensure that any semantic or syntactic constraints are retained when mutating this field.\n"
        },
        "detailedAssociations": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FCategoryV2DetailedAssociation:CategoryV2DetailedAssociation"
          },
          "description": "This field gives detailed information about the resources which are associated with the category.\nThe results present under this field contain the UUIDs of the entities and policies of various kinds associated with the category.\nThis field will be ignored, if given in the payload of updateCategoryById or createCategory APIs.\nThis field will not be present by default in listCategories or getCategoryById APIs, unless the parameter $expand=detailedAssociations is present in the URL.\n"
        },
        "key": {
          "type": "string",
          "description": "-(Required) The key of a category when it is represented in key:value format. Constraints applicable when field is given in the payload during create and update:\n\n- A string of maxlength of 64\n- Character at the start cannot be `$`\n- Character `/` is not allowed anywhere.\n\nIt is a mandatory field in the payload of `createCategory` and `updateCategoryById` APIs.\nThis field can't be updated through `updateCategoryById` API.\n"
        },
        "ownerUuid": {
          "type": "string",
          "description": "-(Optional) This field contains the UUID of a user who owns the category.\nThis field will be ignored if given in the payload of createCategory API. Hence, when a category is created, the logged-in user automatically becomes the owner of the category.\nThis field can be updated through updateCategoryById API, in which case, should be provided, UUID of a valid user is present in the system.\nValidity of the user UUID can be checked by invoking the API: authn/users/{extId} in the 'Identity and Access Management' or 'IAM' namespace.\nIt is used for enabling RBAC access to self-owned categories.\n"
        },
        "type": {
          "type": "string",
          "description": "-(Required) Denotes the type of a category.\nValid values are:\n- `SYSTEM` Predefined categories contained in the system to be used by workflows visible in the UI that involve categories. System-defined categories can't be created through the Categories API. They are predefined in a configuration file and are created at PC boot-up time. System-defined categories can't be updated or deleted.\n- `INTERNAL` Predefined categories contained in the system to be used by internal services, APIs and workflows that involve categories. These categories will not be visible in the UI. However, these categories will be returned in the response of `listCategories` and `getCategoryById` APIs, and are available for filtering as well. Internal categories can't be created through the Categories API. They are predefined in a configuration file and are created at PC boot-up time. Internal categories can't be updated or deleted.\n- `USER` These categories get created by users through the invocation of `createCategory` API. User-defined categories can be updated or deleted after creation.\n"
        },
        "value": {
          "type": "string",
          "description": "-(Required) The value of a category when it is represented in key:value format.  Constraints applicable when field is given in the payload during create and update:\n\n- A string of maxlength of 64\n- Character at the start cannot be `$`\n- Character `/` is not allowed anywhere.\n\nIt is a mandatory field in the payload of `createCategory` and `updateCategoryById` APIs.\nThis field can't be updated through `updateCategoryById` API.\nUpdating the value will not change the extId of the category.\n"
        }
      },
      "type": "object",
      "required": [
        "associations",
        "description",
        "detailedAssociations",
        "key",
        "ownerUuid",
        "type",
        "value"
      ],
      "inputProperties": {
        "description": {
          "type": "string",
          "description": "-(Optional) A string consisting of the description of the category as defined by the user.\nDescription can be optionally provided in the payload of createCategory and updateCategoryById APIs.\nDescription field can be updated through updateCategoryById API.\nThe server does not validate this value nor does it enforce the uniqueness or any other constraints.\nIt is the responsibility of the user to ensure that any semantic or syntactic constraints are retained when mutating this field.\n"
        },
        "key": {
          "type": "string",
          "description": "-(Required) The key of a category when it is represented in key:value format. Constraints applicable when field is given in the payload during create and update:\n\n- A string of maxlength of 64\n- Character at the start cannot be `$`\n- Character `/` is not allowed anywhere.\n\nIt is a mandatory field in the payload of `createCategory` and `updateCategoryById` APIs.\nThis field can't be updated through `updateCategoryById` API.\n"
        },
        "ownerUuid": {
          "type": "string",
          "description": "-(Optional) This field contains the UUID of a user who owns the category.\nThis field will be ignored if given in the payload of createCategory API. Hence, when a category is created, the logged-in user automatically becomes the owner of the category.\nThis field can be updated through updateCategoryById API, in which case, should be provided, UUID of a valid user is present in the system.\nValidity of the user UUID can be checked by invoking the API: authn/users/{extId} in the 'Identity and Access Management' or 'IAM' namespace.\nIt is used for enabling RBAC access to self-owned categories.\n"
        },
        "type": {
          "type": "string",
          "description": "-(Required) Denotes the type of a category.\nValid values are:\n- `SYSTEM` Predefined categories contained in the system to be used by workflows visible in the UI that involve categories. System-defined categories can't be created through the Categories API. They are predefined in a configuration file and are created at PC boot-up time. System-defined categories can't be updated or deleted.\n- `INTERNAL` Predefined categories contained in the system to be used by internal services, APIs and workflows that involve categories. These categories will not be visible in the UI. However, these categories will be returned in the response of `listCategories` and `getCategoryById` APIs, and are available for filtering as well. Internal categories can't be created through the Categories API. They are predefined in a configuration file and are created at PC boot-up time. Internal categories can't be updated or deleted.\n- `USER` These categories get created by users through the invocation of `createCategory` API. User-defined categories can be updated or deleted after creation.\n"
        },
        "value": {
          "type": "string",
          "description": "-(Required) The value of a category when it is represented in key:value format.  Constraints applicable when field is given in the payload during create and update:\n\n- A string of maxlength of 64\n- Character at the start cannot be `$`\n- Character `/` is not allowed anywhere.\n\nIt is a mandatory field in the payload of `createCategory` and `updateCategoryById` APIs.\nThis field can't be updated through `updateCategoryById` API.\nUpdating the value will not change the extId of the category.\n"
        }
      },
      "requiredInputs": [
        "key",
        "value"
      ],
      "stateInputs": {
        "description": "Input properties used for looking up and filtering CategoryV2 resources.\n",
        "properties": {
          "associations": {
            "type": "array",
            "items": {
              "$ref": "#/types/nutanix:index%2FCategoryV2Association:CategoryV2Association"
            },
            "description": "This field gives basic information about resources that are associated with the category.\nThe results present under this field summarize the counts of various kinds of resources associated with the category.\nFor more detailed information about the UUIDs of the resources, please look into the field detailedAssociations.\nThis field will be ignored, if given in the payload of updateCategoryById or createCategory APIs.\nThis field will not be present by default in listCategories API, unless the parameter $expand=associations is present in the URL.\n"
          },
          "description": {
            "type": "string",
            "description": "-(Optional) A string consisting of the description of the category as defined by the user.\nDescription can be optionally provided in the payload of createCategory and updateCategoryById APIs.\nDescription field can be updated through updateCategoryById API.\nThe server does not validate this value nor does it enforce the uniqueness or any other constraints.\nIt is the responsibility of the user to ensure that any semantic or syntactic constraints are retained when mutating this field.\n"
          },
          "detailedAssociations": {
            "type": "array",
            "items": {
              "$ref": "#/types/nutanix:index%2FCategoryV2DetailedAssociation:CategoryV2DetailedAssociation"
            },
            "description": "This field gives detailed information about the resources which are associated with the category.\nThe results present under this field contain the UUIDs of the entities and policies of various kinds associated with the category.\nThis field will be ignored, if given in the payload of updateCategoryById or createCategory APIs.\nThis field will not be present by default in listCategories or getCategoryById APIs, unless the parameter $expand=detailedAssociations is present in the URL.\n"
          },
          "key": {
            "type": "string",
            "description": "-(Required) The key of a category when it is represented in key:value format. Constraints applicable when field is given in the payload during create and update:\n\n- A string of maxlength of 64\n- Character at the start cannot be `$`\n- Character `/` is not allowed anywhere.\n\nIt is a mandatory field in the payload of `createCategory` and `updateCategoryById` APIs.\nThis field can't be updated through `updateCategoryById` API.\n"
          },
          "ownerUuid": {
            "type": "string",
            "description": "-(Optional) This field contains the UUID of a user who owns the category.\nThis field will be ignored if given in the payload of createCategory API. Hence, when a category is created, the logged-in user automatically becomes the owner of the category.\nThis field can be updated through updateCategoryById API, in which case, should be provided, UUID of a valid user is present in the system.\nValidity of the user UUID can be checked by invoking the API: authn/users/{extId} in the 'Identity and Access Management' or 'IAM' namespace.\nIt is used for enabling RBAC access to self-owned categories.\n"
          },
          "type": {
            "type": "string",
            "description": "-(Required) Denotes the type of a category.\nValid values are:\n- `SYSTEM` Predefined categories contained in the system to be used by workflows visible in the UI that involve categories. System-defined categories can't be created through the Categories API. They are predefined in a configuration file and are created at PC boot-up time. System-defined categories can't be updated or deleted.\n- `INTERNAL` Predefined categories contained in the system to be used by internal services, APIs and workflows that involve categories. These categories will not be visible in the UI. However, these categories will be returned in the response of `listCategories` and `getCategoryById` APIs, and are available for filtering as well. Internal categories can't be created through the Categories API. They are predefined in a configuration file and are created at PC boot-up time. Internal categories can't be updated or deleted.\n- `USER` These categories get created by users through the invocation of `createCategory` API. User-defined categories can be updated or deleted after creation.\n"
          },
          "value": {
            "type": "string",
            "description": "-(Required) The value of a category when it is represented in key:value format.  Constraints applicable when field is given in the payload during create and update:\n\n- A string of maxlength of 64\n- Character at the start cannot be `$`\n- Character `/` is not allowed anywhere.\n\nIt is a mandatory field in the payload of `createCategory` and `updateCategoryById` APIs.\nThis field can't be updated through `updateCategoryById` API.\nUpdating the value will not change the extId of the category.\n"
          }
        },
        "type": "object"
      }
    },
    "nutanix:index/categoryValue:CategoryValue": {
      "description": "Provides a Nutanix Category value resource to Create a category value.\n\n## Example Usage\n\n<!--Start PulumiCodeChooser -->\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as nutanix from \"@pierskarsenbarg/nutanix\";\n\nconst test_category_key = new nutanix.CategoryKey(\"test-category-key\", {\n    name: \"app-support-1\",\n    description: \"App Support Category Key\",\n});\nconst test = new nutanix.CategoryValue(\"test\", {\n    name: test_category_key.id,\n    description: \"Test Category Value\",\n    value: \"test-value\",\n});\n```\n```python\nimport pulumi\nimport pulumi_nutanix as nutanix\n\ntest_category_key = nutanix.CategoryKey(\"test-category-key\",\n    name=\"app-support-1\",\n    description=\"App Support Category Key\")\ntest = nutanix.CategoryValue(\"test\",\n    name=test_category_key.id,\n    description=\"Test Category Value\",\n    value=\"test-value\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Nutanix = PiersKarsenbarg.Nutanix;\n\nreturn await Deployment.RunAsync(() => \n{\n    var test_category_key = new Nutanix.CategoryKey(\"test-category-key\", new()\n    {\n        Name = \"app-support-1\",\n        Description = \"App Support Category Key\",\n    });\n\n    var test = new Nutanix.CategoryValue(\"test\", new()\n    {\n        Name = test_category_key.Id,\n        Description = \"Test Category Value\",\n        Value = \"test-value\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pierskarsenbarg/pulumi-nutanix/sdk/go/nutanix\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\ttest_category_key, err := nutanix.NewCategoryKey(ctx, \"test-category-key\", &nutanix.CategoryKeyArgs{\n\t\t\tName:        pulumi.String(\"app-support-1\"),\n\t\t\tDescription: pulumi.String(\"App Support Category Key\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = nutanix.NewCategoryValue(ctx, \"test\", &nutanix.CategoryValueArgs{\n\t\t\tName:        test_category_key.ID(),\n\t\t\tDescription: pulumi.String(\"Test Category Value\"),\n\t\t\tValue:       pulumi.String(\"test-value\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.nutanix.CategoryKey;\nimport com.pulumi.nutanix.CategoryKeyArgs;\nimport com.pulumi.nutanix.CategoryValue;\nimport com.pulumi.nutanix.CategoryValueArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var test_category_key = new CategoryKey(\"test-category-key\", CategoryKeyArgs.builder()\n            .name(\"app-support-1\")\n            .description(\"App Support Category Key\")\n            .build());\n\n        var test = new CategoryValue(\"test\", CategoryValueArgs.builder()\n            .name(test_category_key.id())\n            .description(\"Test Category Value\")\n            .value(\"test-value\")\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  test-category-key:\n    type: nutanix:CategoryKey\n    properties:\n      name: app-support-1\n      description: App Support Category Key\n  test:\n    type: nutanix:CategoryValue\n    properties:\n      name: ${[\"test-category-key\"].id}\n      description: Test Category Value\n      value: test-value\n```\n<!--End PulumiCodeChooser -->\n",
      "properties": {
        "apiVersion": {
          "type": "string",
          "description": "(Optional) The version of the API.\n"
        },
        "description": {
          "type": "string",
          "description": "- (Optional) A description for category value.\n"
        },
        "name": {
          "type": "string",
          "description": "- (Required) The<span pulumi-lang-nodejs=\" categoryKey \" pulumi-lang-dotnet=\" CategoryKey \" pulumi-lang-go=\" categoryKey \" pulumi-lang-python=\" category_key \" pulumi-lang-yaml=\" categoryKey \" pulumi-lang-java=\" categoryKey \"> category_key </span>name for the category value.\n"
        },
        "systemDefined": {
          "type": "boolean",
          "description": "- Specifying whether its a system defined category.\n"
        },
        "value": {
          "type": "string",
          "description": "The value for the category value.\n"
        }
      },
      "type": "object",
      "required": [
        "apiVersion",
        "description",
        "name",
        "systemDefined",
        "value"
      ],
      "inputProperties": {
        "description": {
          "type": "string",
          "description": "- (Optional) A description for category value.\n"
        },
        "name": {
          "type": "string",
          "description": "- (Required) The<span pulumi-lang-nodejs=\" categoryKey \" pulumi-lang-dotnet=\" CategoryKey \" pulumi-lang-go=\" categoryKey \" pulumi-lang-python=\" category_key \" pulumi-lang-yaml=\" categoryKey \" pulumi-lang-java=\" categoryKey \"> category_key </span>name for the category value.\n"
        },
        "value": {
          "type": "string",
          "description": "The value for the category value.\n",
          "willReplaceOnChanges": true
        }
      },
      "requiredInputs": [
        "value"
      ],
      "stateInputs": {
        "description": "Input properties used for looking up and filtering CategoryValue resources.\n",
        "properties": {
          "apiVersion": {
            "type": "string",
            "description": "(Optional) The version of the API.\n"
          },
          "description": {
            "type": "string",
            "description": "- (Optional) A description for category value.\n"
          },
          "name": {
            "type": "string",
            "description": "- (Required) The<span pulumi-lang-nodejs=\" categoryKey \" pulumi-lang-dotnet=\" CategoryKey \" pulumi-lang-go=\" categoryKey \" pulumi-lang-python=\" category_key \" pulumi-lang-yaml=\" categoryKey \" pulumi-lang-java=\" categoryKey \"> category_key </span>name for the category value.\n"
          },
          "systemDefined": {
            "type": "boolean",
            "description": "- Specifying whether its a system defined category.\n"
          },
          "value": {
            "type": "string",
            "description": "The value for the category value.\n",
            "willReplaceOnChanges": true
          }
        },
        "type": "object"
      }
    },
    "nutanix:index/clusterAddNodeV2:ClusterAddNodeV2": {
      "description": "Add node on a cluster identified by {extId}.\n\n## Example Usage\n\n<!--Start PulumiCodeChooser -->\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as nutanix from \"@pierskarsenbarg/nutanix\";\n\n// cluster of 3 node uuid that we want to add node\nconst clustersExtId = \"00057b8b-0b3b-4b3b-0000-000000000000\";\n// for example\nconst cvmIp = \"10.xx.xx.xx\";\n//# check if the node to add is un configured or not\nconst cluster_node = new nutanix.ClustersDiscoverUnconfiguredNodesV2(\"cluster-node\", {\n    extId: clustersExtId,\n    addressType: \"IPV4\",\n    ipFilterLists: [{\n        ipv4s: [{\n            value: cvmIp,\n        }],\n    }],\n});\n//# fetch Network info for unconfigured node\nconst node_network_info = new nutanix.ClustersUnconfiguredNodeNetworksV2(\"node-network-info\", {\n    extId: clustersExtId,\n    requestType: \"expand_cluster\",\n    nodeLists: [{\n        cvmIps: [{\n            ipv4s: [{\n                value: cvmIp,\n            }],\n        }],\n        hypervisorIps: [{\n            ipv4s: [{\n                value: cluster_node.unconfiguredNodes.apply(unconfiguredNodes => unconfiguredNodes[0].hypervisorIps?.[0]?.ipv4s?.[0]?.value),\n            }],\n        }],\n    }],\n}, {\n    dependsOn: [cluster_node],\n});\n//# add node to the cluster\nconst add_node = new nutanix.ClusterAddNodeV2(\"add-node\", {\n    clusterExtId: clustersExtId,\n    shouldSkipAddNode: false,\n    shouldSkipPreExpandChecks: false,\n    nodeParams: [{\n        shouldSkipHostNetworking: false,\n        hypervisorIsos: [{\n            type: cluster_node.unconfiguredNodes.apply(unconfiguredNodes => unconfiguredNodes[0].hypervisorType),\n        }],\n        nodeLists: [{\n            nodeUuid: cluster_node.unconfiguredNodes.apply(unconfiguredNodes => unconfiguredNodes[0].nodeUuid),\n            model: cluster_node.unconfiguredNodes.apply(unconfiguredNodes => unconfiguredNodes[0].rackableUnitModel),\n            blockId: cluster_node.unconfiguredNodes.apply(unconfiguredNodes => unconfiguredNodes[0].rackableUnitSerial),\n            hypervisorType: cluster_node.unconfiguredNodes.apply(unconfiguredNodes => unconfiguredNodes[0].hypervisorType),\n            hypervisorVersion: cluster_node.unconfiguredNodes.apply(unconfiguredNodes => unconfiguredNodes[0].hypervisorVersion),\n            nodePosition: cluster_node.unconfiguredNodes.apply(unconfiguredNodes => unconfiguredNodes[0].nodePosition),\n            nosVersion: cluster_node.unconfiguredNodes.apply(unconfiguredNodes => unconfiguredNodes[0].nosVersion),\n            hypervisorHostname: \"example\",\n            currentNetworkInterface: node_network_info.nodesNetworkingDetails.apply(nodesNetworkingDetails => nodesNetworkingDetails[0].uplinks?.[0]?.uplinkLists?.[0]?.name),\n            hypervisorIps: [{\n                ipv4s: [{\n                    value: cluster_node.unconfiguredNodes.apply(unconfiguredNodes => unconfiguredNodes[0].hypervisorIps?.[0]?.ipv4s?.[0]?.value),\n                }],\n            }],\n            cvmIps: [{\n                ipv4s: [{\n                    value: cvmIp,\n                }],\n            }],\n            ipmiIps: [{\n                ipv4s: [{\n                    value: cluster_node.unconfiguredNodes.apply(unconfiguredNodes => unconfiguredNodes[0].ipmiIps?.[0]?.ipv4s?.[0]?.value),\n                }],\n            }],\n            isRoboMixedHypervisor: true,\n            networks: [{\n                name: node_network_info.nodesNetworkingDetails.apply(nodesNetworkingDetails => nodesNetworkingDetails[0].networkInfos?.[0]?.hcis?.[0]?.name),\n                networks: node_network_info.nodesNetworkingDetails.apply(nodesNetworkingDetails => nodesNetworkingDetails[0].networkInfos?.[0]?.hcis?.[0]?.networks),\n                uplinks: [{\n                    actives: [{\n                        name: node_network_info.nodesNetworkingDetails.apply(nodesNetworkingDetails => nodesNetworkingDetails[0].uplinks?.[0]?.uplinkLists?.[0]?.name),\n                        mac: node_network_info.nodesNetworkingDetails.apply(nodesNetworkingDetails => nodesNetworkingDetails[0].uplinks?.[0]?.uplinkLists?.[0]?.mac),\n                        value: node_network_info.nodesNetworkingDetails.apply(nodesNetworkingDetails => nodesNetworkingDetails[0].uplinks?.[0]?.uplinkLists?.[0]?.name),\n                    }],\n                    standbies: [{\n                        name: node_network_info.nodesNetworkingDetails.apply(nodesNetworkingDetails => nodesNetworkingDetails[0].uplinks?.[0]?.uplinkLists?.[1]?.name),\n                        mac: node_network_info.nodesNetworkingDetails.apply(nodesNetworkingDetails => nodesNetworkingDetails[0].uplinks?.[0]?.uplinkLists?.[1]?.mac),\n                        value: node_network_info.nodesNetworkingDetails.apply(nodesNetworkingDetails => nodesNetworkingDetails[0].uplinks?.[0]?.uplinkLists?.[1]?.name),\n                    }],\n                }],\n            }],\n        }],\n    }],\n    configParams: [{\n        shouldSkipImaging: true,\n        targetHypervisor: cluster_node.unconfiguredNodes.apply(unconfiguredNodes => unconfiguredNodes[0].hypervisorType),\n    }],\n    removeNodeParams: [{\n        extraParams: [{\n            shouldSkipUpgradeCheck: false,\n            skipSpaceCheck: false,\n            shouldSkipAddCheck: false,\n        }],\n        shouldSkipRemove: false,\n        shouldSkipPrechecks: false,\n    }],\n}, {\n    dependsOn: [node_network_info],\n});\n```\n```python\nimport pulumi\nimport pulumi_nutanix as nutanix\n\n# cluster of 3 node uuid that we want to add node\nclusters_ext_id = \"00057b8b-0b3b-4b3b-0000-000000000000\"\n# for example\ncvm_ip = \"10.xx.xx.xx\"\n## check if the node to add is un configured or not\ncluster_node = nutanix.ClustersDiscoverUnconfiguredNodesV2(\"cluster-node\",\n    ext_id=clusters_ext_id,\n    address_type=\"IPV4\",\n    ip_filter_lists=[{\n        \"ipv4s\": [{\n            \"value\": cvm_ip,\n        }],\n    }])\n## fetch Network info for unconfigured node\nnode_network_info = nutanix.ClustersUnconfiguredNodeNetworksV2(\"node-network-info\",\n    ext_id=clusters_ext_id,\n    request_type=\"expand_cluster\",\n    node_lists=[{\n        \"cvm_ips\": [{\n            \"ipv4s\": [{\n                \"value\": cvm_ip,\n            }],\n        }],\n        \"hypervisor_ips\": [{\n            \"ipv4s\": [{\n                \"value\": cluster_node.unconfigured_nodes[0].hypervisor_ips[0].ipv4s[0].value,\n            }],\n        }],\n    }],\n    opts = pulumi.ResourceOptions(depends_on=[cluster_node]))\n## add node to the cluster\nadd_node = nutanix.ClusterAddNodeV2(\"add-node\",\n    cluster_ext_id=clusters_ext_id,\n    should_skip_add_node=False,\n    should_skip_pre_expand_checks=False,\n    node_params=[{\n        \"should_skip_host_networking\": False,\n        \"hypervisor_isos\": [{\n            \"type\": cluster_node.unconfigured_nodes[0].hypervisor_type,\n        }],\n        \"node_lists\": [{\n            \"node_uuid\": cluster_node.unconfigured_nodes[0].node_uuid,\n            \"model\": cluster_node.unconfigured_nodes[0].rackable_unit_model,\n            \"block_id\": cluster_node.unconfigured_nodes[0].rackable_unit_serial,\n            \"hypervisor_type\": cluster_node.unconfigured_nodes[0].hypervisor_type,\n            \"hypervisor_version\": cluster_node.unconfigured_nodes[0].hypervisor_version,\n            \"node_position\": cluster_node.unconfigured_nodes[0].node_position,\n            \"nos_version\": cluster_node.unconfigured_nodes[0].nos_version,\n            \"hypervisor_hostname\": \"example\",\n            \"current_network_interface\": node_network_info.nodes_networking_details[0].uplinks[0].uplink_lists[0].name,\n            \"hypervisor_ips\": [{\n                \"ipv4s\": [{\n                    \"value\": cluster_node.unconfigured_nodes[0].hypervisor_ips[0].ipv4s[0].value,\n                }],\n            }],\n            \"cvm_ips\": [{\n                \"ipv4s\": [{\n                    \"value\": cvm_ip,\n                }],\n            }],\n            \"ipmi_ips\": [{\n                \"ipv4s\": [{\n                    \"value\": cluster_node.unconfigured_nodes[0].ipmi_ips[0].ipv4s[0].value,\n                }],\n            }],\n            \"is_robo_mixed_hypervisor\": True,\n            \"networks\": [{\n                \"name\": node_network_info.nodes_networking_details[0].network_infos[0].hcis[0].name,\n                \"networks\": node_network_info.nodes_networking_details[0].network_infos[0].hcis[0].networks,\n                \"uplinks\": [{\n                    \"actives\": [{\n                        \"name\": node_network_info.nodes_networking_details[0].uplinks[0].uplink_lists[0].name,\n                        \"mac\": node_network_info.nodes_networking_details[0].uplinks[0].uplink_lists[0].mac,\n                        \"value\": node_network_info.nodes_networking_details[0].uplinks[0].uplink_lists[0].name,\n                    }],\n                    \"standbies\": [{\n                        \"name\": node_network_info.nodes_networking_details[0].uplinks[0].uplink_lists[1].name,\n                        \"mac\": node_network_info.nodes_networking_details[0].uplinks[0].uplink_lists[1].mac,\n                        \"value\": node_network_info.nodes_networking_details[0].uplinks[0].uplink_lists[1].name,\n                    }],\n                }],\n            }],\n        }],\n    }],\n    config_params=[{\n        \"should_skip_imaging\": True,\n        \"target_hypervisor\": cluster_node.unconfigured_nodes[0].hypervisor_type,\n    }],\n    remove_node_params=[{\n        \"extra_params\": [{\n            \"should_skip_upgrade_check\": False,\n            \"skip_space_check\": False,\n            \"should_skip_add_check\": False,\n        }],\n        \"should_skip_remove\": False,\n        \"should_skip_prechecks\": False,\n    }],\n    opts = pulumi.ResourceOptions(depends_on=[node_network_info]))\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Nutanix = PiersKarsenbarg.Nutanix;\n\nreturn await Deployment.RunAsync(() => \n{\n    // cluster of 3 node uuid that we want to add node\n    var clustersExtId = \"00057b8b-0b3b-4b3b-0000-000000000000\";\n\n    // for example\n    var cvmIp = \"10.xx.xx.xx\";\n\n    //# check if the node to add is un configured or not\n    var cluster_node = new Nutanix.ClustersDiscoverUnconfiguredNodesV2(\"cluster-node\", new()\n    {\n        ExtId = clustersExtId,\n        AddressType = \"IPV4\",\n        IpFilterLists = new[]\n        {\n            new Nutanix.Inputs.ClustersDiscoverUnconfiguredNodesV2IpFilterListArgs\n            {\n                Ipv4s = new[]\n                {\n                    new Nutanix.Inputs.ClustersDiscoverUnconfiguredNodesV2IpFilterListIpv4Args\n                    {\n                        Value = cvmIp,\n                    },\n                },\n            },\n        },\n    });\n\n    //# fetch Network info for unconfigured node\n    var node_network_info = new Nutanix.ClustersUnconfiguredNodeNetworksV2(\"node-network-info\", new()\n    {\n        ExtId = clustersExtId,\n        RequestType = \"expand_cluster\",\n        NodeLists = new[]\n        {\n            new Nutanix.Inputs.ClustersUnconfiguredNodeNetworksV2NodeListArgs\n            {\n                CvmIps = new[]\n                {\n                    new Nutanix.Inputs.ClustersUnconfiguredNodeNetworksV2NodeListCvmIpArgs\n                    {\n                        Ipv4s = new[]\n                        {\n                            new Nutanix.Inputs.ClustersUnconfiguredNodeNetworksV2NodeListCvmIpIpv4Args\n                            {\n                                Value = cvmIp,\n                            },\n                        },\n                    },\n                },\n                HypervisorIps = new[]\n                {\n                    new Nutanix.Inputs.ClustersUnconfiguredNodeNetworksV2NodeListHypervisorIpArgs\n                    {\n                        Ipv4s = new[]\n                        {\n                            new Nutanix.Inputs.ClustersUnconfiguredNodeNetworksV2NodeListHypervisorIpIpv4Args\n                            {\n                                Value = cluster_node.UnconfiguredNodes.Apply(unconfiguredNodes => unconfiguredNodes[0].HypervisorIps[0]?.Ipv4s[0]?.Value),\n                            },\n                        },\n                    },\n                },\n            },\n        },\n    }, new CustomResourceOptions\n    {\n        DependsOn =\n        {\n            cluster_node,\n        },\n    });\n\n    //# add node to the cluster\n    var add_node = new Nutanix.ClusterAddNodeV2(\"add-node\", new()\n    {\n        ClusterExtId = clustersExtId,\n        ShouldSkipAddNode = false,\n        ShouldSkipPreExpandChecks = false,\n        NodeParams = new[]\n        {\n            new Nutanix.Inputs.ClusterAddNodeV2NodeParamArgs\n            {\n                ShouldSkipHostNetworking = false,\n                HypervisorIsos = new[]\n                {\n                    new Nutanix.Inputs.ClusterAddNodeV2NodeParamHypervisorIsoArgs\n                    {\n                        Type = cluster_node.UnconfiguredNodes.Apply(unconfiguredNodes => unconfiguredNodes[0].HypervisorType),\n                    },\n                },\n                NodeLists = new[]\n                {\n                    new Nutanix.Inputs.ClusterAddNodeV2NodeParamNodeListArgs\n                    {\n                        NodeUuid = cluster_node.UnconfiguredNodes.Apply(unconfiguredNodes => unconfiguredNodes[0].NodeUuid),\n                        Model = cluster_node.UnconfiguredNodes.Apply(unconfiguredNodes => unconfiguredNodes[0].RackableUnitModel),\n                        BlockId = cluster_node.UnconfiguredNodes.Apply(unconfiguredNodes => unconfiguredNodes[0].RackableUnitSerial),\n                        HypervisorType = cluster_node.UnconfiguredNodes.Apply(unconfiguredNodes => unconfiguredNodes[0].HypervisorType),\n                        HypervisorVersion = cluster_node.UnconfiguredNodes.Apply(unconfiguredNodes => unconfiguredNodes[0].HypervisorVersion),\n                        NodePosition = cluster_node.UnconfiguredNodes.Apply(unconfiguredNodes => unconfiguredNodes[0].NodePosition),\n                        NosVersion = cluster_node.UnconfiguredNodes.Apply(unconfiguredNodes => unconfiguredNodes[0].NosVersion),\n                        HypervisorHostname = \"example\",\n                        CurrentNetworkInterface = node_network_info.NodesNetworkingDetails.Apply(nodesNetworkingDetails => nodesNetworkingDetails[0].Uplinks[0]?.UplinkLists[0]?.Name),\n                        HypervisorIps = new[]\n                        {\n                            new Nutanix.Inputs.ClusterAddNodeV2NodeParamNodeListHypervisorIpArgs\n                            {\n                                Ipv4s = new[]\n                                {\n                                    new Nutanix.Inputs.ClusterAddNodeV2NodeParamNodeListHypervisorIpIpv4Args\n                                    {\n                                        Value = cluster_node.UnconfiguredNodes.Apply(unconfiguredNodes => unconfiguredNodes[0].HypervisorIps[0]?.Ipv4s[0]?.Value),\n                                    },\n                                },\n                            },\n                        },\n                        CvmIps = new[]\n                        {\n                            new Nutanix.Inputs.ClusterAddNodeV2NodeParamNodeListCvmIpArgs\n                            {\n                                Ipv4s = new[]\n                                {\n                                    new Nutanix.Inputs.ClusterAddNodeV2NodeParamNodeListCvmIpIpv4Args\n                                    {\n                                        Value = cvmIp,\n                                    },\n                                },\n                            },\n                        },\n                        IpmiIps = new[]\n                        {\n                            new Nutanix.Inputs.ClusterAddNodeV2NodeParamNodeListIpmiIpArgs\n                            {\n                                Ipv4s = new[]\n                                {\n                                    new Nutanix.Inputs.ClusterAddNodeV2NodeParamNodeListIpmiIpIpv4Args\n                                    {\n                                        Value = cluster_node.UnconfiguredNodes.Apply(unconfiguredNodes => unconfiguredNodes[0].IpmiIps[0]?.Ipv4s[0]?.Value),\n                                    },\n                                },\n                            },\n                        },\n                        IsRoboMixedHypervisor = true,\n                        Networks = new[]\n                        {\n                            new Nutanix.Inputs.ClusterAddNodeV2NodeParamNodeListNetworkArgs\n                            {\n                                Name = node_network_info.NodesNetworkingDetails.Apply(nodesNetworkingDetails => nodesNetworkingDetails[0].NetworkInfos[0]?.Hcis[0]?.Name),\n                                Networks = node_network_info.NodesNetworkingDetails.Apply(nodesNetworkingDetails => nodesNetworkingDetails[0].NetworkInfos[0]?.Hcis[0]?.Networks),\n                                Uplinks = new[]\n                                {\n                                    new Nutanix.Inputs.ClusterAddNodeV2NodeParamNodeListNetworkUplinkArgs\n                                    {\n                                        Actives = new[]\n                                        {\n                                            new Nutanix.Inputs.ClusterAddNodeV2NodeParamNodeListNetworkUplinkActiveArgs\n                                            {\n                                                Name = node_network_info.NodesNetworkingDetails.Apply(nodesNetworkingDetails => nodesNetworkingDetails[0].Uplinks[0]?.UplinkLists[0]?.Name),\n                                                Mac = node_network_info.NodesNetworkingDetails.Apply(nodesNetworkingDetails => nodesNetworkingDetails[0].Uplinks[0]?.UplinkLists[0]?.Mac),\n                                                Value = node_network_info.NodesNetworkingDetails.Apply(nodesNetworkingDetails => nodesNetworkingDetails[0].Uplinks[0]?.UplinkLists[0]?.Name),\n                                            },\n                                        },\n                                        Standbies = new[]\n                                        {\n                                            new Nutanix.Inputs.ClusterAddNodeV2NodeParamNodeListNetworkUplinkStandbyArgs\n                                            {\n                                                Name = node_network_info.NodesNetworkingDetails.Apply(nodesNetworkingDetails => nodesNetworkingDetails[0].Uplinks[0]?.UplinkLists[1]?.Name),\n                                                Mac = node_network_info.NodesNetworkingDetails.Apply(nodesNetworkingDetails => nodesNetworkingDetails[0].Uplinks[0]?.UplinkLists[1]?.Mac),\n                                                Value = node_network_info.NodesNetworkingDetails.Apply(nodesNetworkingDetails => nodesNetworkingDetails[0].Uplinks[0]?.UplinkLists[1]?.Name),\n                                            },\n                                        },\n                                    },\n                                },\n                            },\n                        },\n                    },\n                },\n            },\n        },\n        ConfigParams = new[]\n        {\n            new Nutanix.Inputs.ClusterAddNodeV2ConfigParamArgs\n            {\n                ShouldSkipImaging = true,\n                TargetHypervisor = cluster_node.UnconfiguredNodes.Apply(unconfiguredNodes => unconfiguredNodes[0].HypervisorType),\n            },\n        },\n        RemoveNodeParams = new[]\n        {\n            new Nutanix.Inputs.ClusterAddNodeV2RemoveNodeParamArgs\n            {\n                ExtraParams = new[]\n                {\n                    new Nutanix.Inputs.ClusterAddNodeV2RemoveNodeParamExtraParamArgs\n                    {\n                        ShouldSkipUpgradeCheck = false,\n                        SkipSpaceCheck = false,\n                        ShouldSkipAddCheck = false,\n                    },\n                },\n                ShouldSkipRemove = false,\n                ShouldSkipPrechecks = false,\n            },\n        },\n    }, new CustomResourceOptions\n    {\n        DependsOn =\n        {\n            node_network_info,\n        },\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pierskarsenbarg/pulumi-nutanix/sdk/go/nutanix\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\nfunc main() {\npulumi.Run(func(ctx *pulumi.Context) error {\n// cluster of 3 node uuid that we want to add node\nclustersExtId := \"00057b8b-0b3b-4b3b-0000-000000000000\";\n// for example\ncvmIp := \"10.xx.xx.xx\";\n//# check if the node to add is un configured or not\ncluster_node, err := nutanix.NewClustersDiscoverUnconfiguredNodesV2(ctx, \"cluster-node\", &nutanix.ClustersDiscoverUnconfiguredNodesV2Args{\nExtId: pulumi.String(clustersExtId),\nAddressType: pulumi.String(\"IPV4\"),\nIpFilterLists: nutanix.ClustersDiscoverUnconfiguredNodesV2IpFilterListArray{\n&nutanix.ClustersDiscoverUnconfiguredNodesV2IpFilterListArgs{\nIpv4s: nutanix.ClustersDiscoverUnconfiguredNodesV2IpFilterListIpv4Array{\n&nutanix.ClustersDiscoverUnconfiguredNodesV2IpFilterListIpv4Args{\nValue: pulumi.String(cvmIp),\n},\n},\n},\n},\n})\nif err != nil {\nreturn err\n}\n//# fetch Network info for unconfigured node\nnode_network_info, err := nutanix.NewClustersUnconfiguredNodeNetworksV2(ctx, \"node-network-info\", &nutanix.ClustersUnconfiguredNodeNetworksV2Args{\nExtId: pulumi.String(clustersExtId),\nRequestType: pulumi.String(\"expand_cluster\"),\nNodeLists: nutanix.ClustersUnconfiguredNodeNetworksV2NodeListArray{\n&nutanix.ClustersUnconfiguredNodeNetworksV2NodeListArgs{\nCvmIps: nutanix.ClustersUnconfiguredNodeNetworksV2NodeListCvmIpArray{\n&nutanix.ClustersUnconfiguredNodeNetworksV2NodeListCvmIpArgs{\nIpv4s: nutanix.ClustersUnconfiguredNodeNetworksV2NodeListCvmIpIpv4Array{\n&nutanix.ClustersUnconfiguredNodeNetworksV2NodeListCvmIpIpv4Args{\nValue: pulumi.String(cvmIp),\n},\n},\n},\n},\nHypervisorIps: nutanix.ClustersUnconfiguredNodeNetworksV2NodeListHypervisorIpArray{\n&nutanix.ClustersUnconfiguredNodeNetworksV2NodeListHypervisorIpArgs{\nIpv4s: nutanix.ClustersUnconfiguredNodeNetworksV2NodeListHypervisorIpIpv4Array{\n&nutanix.ClustersUnconfiguredNodeNetworksV2NodeListHypervisorIpIpv4Args{\nValue: cluster_node.UnconfiguredNodes.ApplyT(func(unconfiguredNodes []nutanix.ClustersDiscoverUnconfiguredNodesV2UnconfiguredNode) (*string, error) {\nreturn &unconfiguredNodes[0].HypervisorIps[0].Ipv4s[0].Value, nil\n}).(pulumi.StringPtrOutput),\n},\n},\n},\n},\n},\n},\n}, pulumi.DependsOn([]pulumi.Resource{\ncluster_node,\n}))\nif err != nil {\nreturn err\n}\n//# add node to the cluster\n_, err = nutanix.NewClusterAddNodeV2(ctx, \"add-node\", &nutanix.ClusterAddNodeV2Args{\nClusterExtId: pulumi.String(clustersExtId),\nShouldSkipAddNode: pulumi.Bool(false),\nShouldSkipPreExpandChecks: pulumi.Bool(false),\nNodeParams: nutanix.ClusterAddNodeV2NodeParamArray{\n&nutanix.ClusterAddNodeV2NodeParamArgs{\nShouldSkipHostNetworking: pulumi.Bool(false),\nHypervisorIsos: nutanix.ClusterAddNodeV2NodeParamHypervisorIsoArray{\n&nutanix.ClusterAddNodeV2NodeParamHypervisorIsoArgs{\nType: cluster_node.UnconfiguredNodes.ApplyT(func(unconfiguredNodes []nutanix.ClustersDiscoverUnconfiguredNodesV2UnconfiguredNode) (*string, error) {\nreturn &unconfiguredNodes[0].HypervisorType, nil\n}).(pulumi.StringPtrOutput),\n},\n},\nNodeLists: nutanix.ClusterAddNodeV2NodeParamNodeListArray{\n&nutanix.ClusterAddNodeV2NodeParamNodeListArgs{\nNodeUuid: cluster_node.UnconfiguredNodes.ApplyT(func(unconfiguredNodes []nutanix.ClustersDiscoverUnconfiguredNodesV2UnconfiguredNode) (*string, error) {\nreturn &unconfiguredNodes[0].NodeUuid, nil\n}).(pulumi.StringPtrOutput),\nModel: cluster_node.UnconfiguredNodes.ApplyT(func(unconfiguredNodes []nutanix.ClustersDiscoverUnconfiguredNodesV2UnconfiguredNode) (*string, error) {\nreturn &unconfiguredNodes[0].RackableUnitModel, nil\n}).(pulumi.StringPtrOutput),\nBlockId: cluster_node.UnconfiguredNodes.ApplyT(func(unconfiguredNodes []nutanix.ClustersDiscoverUnconfiguredNodesV2UnconfiguredNode) (*string, error) {\nreturn &unconfiguredNodes[0].RackableUnitSerial, nil\n}).(pulumi.StringPtrOutput),\nHypervisorType: cluster_node.UnconfiguredNodes.ApplyT(func(unconfiguredNodes []nutanix.ClustersDiscoverUnconfiguredNodesV2UnconfiguredNode) (*string, error) {\nreturn &unconfiguredNodes[0].HypervisorType, nil\n}).(pulumi.StringPtrOutput),\nHypervisorVersion: cluster_node.UnconfiguredNodes.ApplyT(func(unconfiguredNodes []nutanix.ClustersDiscoverUnconfiguredNodesV2UnconfiguredNode) (*string, error) {\nreturn &unconfiguredNodes[0].HypervisorVersion, nil\n}).(pulumi.StringPtrOutput),\nNodePosition: cluster_node.UnconfiguredNodes.ApplyT(func(unconfiguredNodes []nutanix.ClustersDiscoverUnconfiguredNodesV2UnconfiguredNode) (*string, error) {\nreturn &unconfiguredNodes[0].NodePosition, nil\n}).(pulumi.StringPtrOutput),\nNosVersion: cluster_node.UnconfiguredNodes.ApplyT(func(unconfiguredNodes []nutanix.ClustersDiscoverUnconfiguredNodesV2UnconfiguredNode) (*string, error) {\nreturn &unconfiguredNodes[0].NosVersion, nil\n}).(pulumi.StringPtrOutput),\nHypervisorHostname: pulumi.String(\"example\"),\nCurrentNetworkInterface: node_network_info.NodesNetworkingDetails.ApplyT(func(nodesNetworkingDetails []nutanix.ClustersUnconfiguredNodeNetworksV2NodesNetworkingDetail) (*string, error) {\nreturn &nodesNetworkingDetails[0].Uplinks[0].UplinkLists[0].Name, nil\n}).(pulumi.StringPtrOutput),\nHypervisorIps: nutanix.ClusterAddNodeV2NodeParamNodeListHypervisorIpArray{\n&nutanix.ClusterAddNodeV2NodeParamNodeListHypervisorIpArgs{\nIpv4s: nutanix.ClusterAddNodeV2NodeParamNodeListHypervisorIpIpv4Array{\n&nutanix.ClusterAddNodeV2NodeParamNodeListHypervisorIpIpv4Args{\nValue: cluster_node.UnconfiguredNodes.ApplyT(func(unconfiguredNodes []nutanix.ClustersDiscoverUnconfiguredNodesV2UnconfiguredNode) (*string, error) {\nreturn &unconfiguredNodes[0].HypervisorIps[0].Ipv4s[0].Value, nil\n}).(pulumi.StringPtrOutput),\n},\n},\n},\n},\nCvmIps: nutanix.ClusterAddNodeV2NodeParamNodeListCvmIpArray{\n&nutanix.ClusterAddNodeV2NodeParamNodeListCvmIpArgs{\nIpv4s: nutanix.ClusterAddNodeV2NodeParamNodeListCvmIpIpv4Array{\n&nutanix.ClusterAddNodeV2NodeParamNodeListCvmIpIpv4Args{\nValue: pulumi.String(cvmIp),\n},\n},\n},\n},\nIpmiIps: nutanix.ClusterAddNodeV2NodeParamNodeListIpmiIpArray{\n&nutanix.ClusterAddNodeV2NodeParamNodeListIpmiIpArgs{\nIpv4s: nutanix.ClusterAddNodeV2NodeParamNodeListIpmiIpIpv4Array{\n&nutanix.ClusterAddNodeV2NodeParamNodeListIpmiIpIpv4Args{\nValue: cluster_node.UnconfiguredNodes.ApplyT(func(unconfiguredNodes []nutanix.ClustersDiscoverUnconfiguredNodesV2UnconfiguredNode) (*string, error) {\nreturn &unconfiguredNodes[0].IpmiIps[0].Ipv4s[0].Value, nil\n}).(pulumi.StringPtrOutput),\n},\n},\n},\n},\nIsRoboMixedHypervisor: pulumi.Bool(true),\nNetworks: nutanix.ClusterAddNodeV2NodeParamNodeListNetworkArray{\n&nutanix.ClusterAddNodeV2NodeParamNodeListNetworkArgs{\nName: node_network_info.NodesNetworkingDetails.ApplyT(func(nodesNetworkingDetails []nutanix.ClustersUnconfiguredNodeNetworksV2NodesNetworkingDetail) (*string, error) {\nreturn &nodesNetworkingDetails[0].NetworkInfos[0].Hcis[0].Name, nil\n}).(pulumi.StringPtrOutput),\nNetworks: node_network_info.NodesNetworkingDetails.ApplyT(func(nodesNetworkingDetails []nutanix.ClustersUnconfiguredNodeNetworksV2NodesNetworkingDetail) (interface{}, error) {\nreturn nodesNetworkingDetails[0].NetworkInfos[0].Hcis[0].Networks, nil\n}).(pulumi.Interface{}Output),\nUplinks: nutanix.ClusterAddNodeV2NodeParamNodeListNetworkUplinkArray{\n&nutanix.ClusterAddNodeV2NodeParamNodeListNetworkUplinkArgs{\nActives: nutanix.ClusterAddNodeV2NodeParamNodeListNetworkUplinkActiveArray{\n&nutanix.ClusterAddNodeV2NodeParamNodeListNetworkUplinkActiveArgs{\nName: node_network_info.NodesNetworkingDetails.ApplyT(func(nodesNetworkingDetails []nutanix.ClustersUnconfiguredNodeNetworksV2NodesNetworkingDetail) (*string, error) {\nreturn &nodesNetworkingDetails[0].Uplinks[0].UplinkLists[0].Name, nil\n}).(pulumi.StringPtrOutput),\nMac: node_network_info.NodesNetworkingDetails.ApplyT(func(nodesNetworkingDetails []nutanix.ClustersUnconfiguredNodeNetworksV2NodesNetworkingDetail) (*string, error) {\nreturn &nodesNetworkingDetails[0].Uplinks[0].UplinkLists[0].Mac, nil\n}).(pulumi.StringPtrOutput),\nValue: node_network_info.NodesNetworkingDetails.ApplyT(func(nodesNetworkingDetails []nutanix.ClustersUnconfiguredNodeNetworksV2NodesNetworkingDetail) (*string, error) {\nreturn &nodesNetworkingDetails[0].Uplinks[0].UplinkLists[0].Name, nil\n}).(pulumi.StringPtrOutput),\n},\n},\nStandbies: nutanix.ClusterAddNodeV2NodeParamNodeListNetworkUplinkStandbyArray{\n&nutanix.ClusterAddNodeV2NodeParamNodeListNetworkUplinkStandbyArgs{\nName: node_network_info.NodesNetworkingDetails.ApplyT(func(nodesNetworkingDetails []nutanix.ClustersUnconfiguredNodeNetworksV2NodesNetworkingDetail) (*string, error) {\nreturn &nodesNetworkingDetails[0].Uplinks[0].UplinkLists[1].Name, nil\n}).(pulumi.StringPtrOutput),\nMac: node_network_info.NodesNetworkingDetails.ApplyT(func(nodesNetworkingDetails []nutanix.ClustersUnconfiguredNodeNetworksV2NodesNetworkingDetail) (*string, error) {\nreturn &nodesNetworkingDetails[0].Uplinks[0].UplinkLists[1].Mac, nil\n}).(pulumi.StringPtrOutput),\nValue: node_network_info.NodesNetworkingDetails.ApplyT(func(nodesNetworkingDetails []nutanix.ClustersUnconfiguredNodeNetworksV2NodesNetworkingDetail) (*string, error) {\nreturn &nodesNetworkingDetails[0].Uplinks[0].UplinkLists[1].Name, nil\n}).(pulumi.StringPtrOutput),\n},\n},\n},\n},\n},\n},\n},\n},\n},\n},\nConfigParams: nutanix.ClusterAddNodeV2ConfigParamArray{\n&nutanix.ClusterAddNodeV2ConfigParamArgs{\nShouldSkipImaging: pulumi.Bool(true),\nTargetHypervisor: cluster_node.UnconfiguredNodes.ApplyT(func(unconfiguredNodes []nutanix.ClustersDiscoverUnconfiguredNodesV2UnconfiguredNode) (*string, error) {\nreturn &unconfiguredNodes[0].HypervisorType, nil\n}).(pulumi.StringPtrOutput),\n},\n},\nRemoveNodeParams: nutanix.ClusterAddNodeV2RemoveNodeParamArray{\n&nutanix.ClusterAddNodeV2RemoveNodeParamArgs{\nExtraParams: nutanix.ClusterAddNodeV2RemoveNodeParamExtraParamArray{\n&nutanix.ClusterAddNodeV2RemoveNodeParamExtraParamArgs{\nShouldSkipUpgradeCheck: pulumi.Bool(false),\nSkipSpaceCheck: pulumi.Bool(false),\nShouldSkipAddCheck: pulumi.Bool(false),\n},\n},\nShouldSkipRemove: pulumi.Bool(false),\nShouldSkipPrechecks: pulumi.Bool(false),\n},\n},\n}, pulumi.DependsOn([]pulumi.Resource{\nnode_network_info,\n}))\nif err != nil {\nreturn err\n}\nreturn nil\n})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.nutanix.ClustersDiscoverUnconfiguredNodesV2;\nimport com.pulumi.nutanix.ClustersDiscoverUnconfiguredNodesV2Args;\nimport com.pulumi.nutanix.inputs.ClustersDiscoverUnconfiguredNodesV2IpFilterListArgs;\nimport com.pulumi.nutanix.ClustersUnconfiguredNodeNetworksV2;\nimport com.pulumi.nutanix.ClustersUnconfiguredNodeNetworksV2Args;\nimport com.pulumi.nutanix.inputs.ClustersUnconfiguredNodeNetworksV2NodeListArgs;\nimport com.pulumi.nutanix.ClusterAddNodeV2;\nimport com.pulumi.nutanix.ClusterAddNodeV2Args;\nimport com.pulumi.nutanix.inputs.ClusterAddNodeV2NodeParamArgs;\nimport com.pulumi.nutanix.inputs.ClusterAddNodeV2ConfigParamArgs;\nimport com.pulumi.nutanix.inputs.ClusterAddNodeV2RemoveNodeParamArgs;\nimport com.pulumi.resources.CustomResourceOptions;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        // cluster of 3 node uuid that we want to add node\n        final var clustersExtId = \"00057b8b-0b3b-4b3b-0000-000000000000\";\n\n        // for example\n        final var cvmIp = \"10.xx.xx.xx\";\n\n        //# check if the node to add is un configured or not\n        var cluster_node = new ClustersDiscoverUnconfiguredNodesV2(\"cluster-node\", ClustersDiscoverUnconfiguredNodesV2Args.builder()\n            .extId(clustersExtId)\n            .addressType(\"IPV4\")\n            .ipFilterLists(ClustersDiscoverUnconfiguredNodesV2IpFilterListArgs.builder()\n                .ipv4s(ClustersDiscoverUnconfiguredNodesV2IpFilterListIpv4Args.builder()\n                    .value(cvmIp)\n                    .build())\n                .build())\n            .build());\n\n        //# fetch Network info for unconfigured node\n        var node_network_info = new ClustersUnconfiguredNodeNetworksV2(\"node-network-info\", ClustersUnconfiguredNodeNetworksV2Args.builder()\n            .extId(clustersExtId)\n            .requestType(\"expand_cluster\")\n            .nodeLists(ClustersUnconfiguredNodeNetworksV2NodeListArgs.builder()\n                .cvmIps(ClustersUnconfiguredNodeNetworksV2NodeListCvmIpArgs.builder()\n                    .ipv4s(ClustersUnconfiguredNodeNetworksV2NodeListCvmIpIpv4Args.builder()\n                        .value(cvmIp)\n                        .build())\n                    .build())\n                .hypervisorIps(ClustersUnconfiguredNodeNetworksV2NodeListHypervisorIpArgs.builder()\n                    .ipv4s(ClustersUnconfiguredNodeNetworksV2NodeListHypervisorIpIpv4Args.builder()\n                        .value(cluster_node.unconfiguredNodes().applyValue(_unconfiguredNodes -> _unconfiguredNodes[0].hypervisorIps()[0].ipv4s()[0].value()))\n                        .build())\n                    .build())\n                .build())\n            .build(), CustomResourceOptions.builder()\n                .dependsOn(cluster_node)\n                .build());\n\n        //# add node to the cluster\n        var add_node = new ClusterAddNodeV2(\"add-node\", ClusterAddNodeV2Args.builder()\n            .clusterExtId(clustersExtId)\n            .shouldSkipAddNode(false)\n            .shouldSkipPreExpandChecks(false)\n            .nodeParams(ClusterAddNodeV2NodeParamArgs.builder()\n                .shouldSkipHostNetworking(false)\n                .hypervisorIsos(ClusterAddNodeV2NodeParamHypervisorIsoArgs.builder()\n                    .type(cluster_node.unconfiguredNodes().applyValue(_unconfiguredNodes -> _unconfiguredNodes[0].hypervisorType()))\n                    .build())\n                .nodeLists(ClusterAddNodeV2NodeParamNodeListArgs.builder()\n                    .nodeUuid(cluster_node.unconfiguredNodes().applyValue(_unconfiguredNodes -> _unconfiguredNodes[0].nodeUuid()))\n                    .model(cluster_node.unconfiguredNodes().applyValue(_unconfiguredNodes -> _unconfiguredNodes[0].rackableUnitModel()))\n                    .blockId(cluster_node.unconfiguredNodes().applyValue(_unconfiguredNodes -> _unconfiguredNodes[0].rackableUnitSerial()))\n                    .hypervisorType(cluster_node.unconfiguredNodes().applyValue(_unconfiguredNodes -> _unconfiguredNodes[0].hypervisorType()))\n                    .hypervisorVersion(cluster_node.unconfiguredNodes().applyValue(_unconfiguredNodes -> _unconfiguredNodes[0].hypervisorVersion()))\n                    .nodePosition(cluster_node.unconfiguredNodes().applyValue(_unconfiguredNodes -> _unconfiguredNodes[0].nodePosition()))\n                    .nosVersion(cluster_node.unconfiguredNodes().applyValue(_unconfiguredNodes -> _unconfiguredNodes[0].nosVersion()))\n                    .hypervisorHostname(\"example\")\n                    .currentNetworkInterface(node_network_info.nodesNetworkingDetails().applyValue(_nodesNetworkingDetails -> _nodesNetworkingDetails[0].uplinks()[0].uplinkLists()[0].name()))\n                    .hypervisorIps(ClusterAddNodeV2NodeParamNodeListHypervisorIpArgs.builder()\n                        .ipv4s(ClusterAddNodeV2NodeParamNodeListHypervisorIpIpv4Args.builder()\n                            .value(cluster_node.unconfiguredNodes().applyValue(_unconfiguredNodes -> _unconfiguredNodes[0].hypervisorIps()[0].ipv4s()[0].value()))\n                            .build())\n                        .build())\n                    .cvmIps(ClusterAddNodeV2NodeParamNodeListCvmIpArgs.builder()\n                        .ipv4s(ClusterAddNodeV2NodeParamNodeListCvmIpIpv4Args.builder()\n                            .value(cvmIp)\n                            .build())\n                        .build())\n                    .ipmiIps(ClusterAddNodeV2NodeParamNodeListIpmiIpArgs.builder()\n                        .ipv4s(ClusterAddNodeV2NodeParamNodeListIpmiIpIpv4Args.builder()\n                            .value(cluster_node.unconfiguredNodes().applyValue(_unconfiguredNodes -> _unconfiguredNodes[0].ipmiIps()[0].ipv4s()[0].value()))\n                            .build())\n                        .build())\n                    .isRoboMixedHypervisor(true)\n                    .networks(ClusterAddNodeV2NodeParamNodeListNetworkArgs.builder()\n                        .name(node_network_info.nodesNetworkingDetails().applyValue(_nodesNetworkingDetails -> _nodesNetworkingDetails[0].networkInfos()[0].hcis()[0].name()))\n                        .networks(node_network_info.nodesNetworkingDetails().applyValue(_nodesNetworkingDetails -> _nodesNetworkingDetails[0].networkInfos()[0].hcis()[0].networks()))\n                        .uplinks(ClusterAddNodeV2NodeParamNodeListNetworkUplinkArgs.builder()\n                            .actives(ClusterAddNodeV2NodeParamNodeListNetworkUplinkActiveArgs.builder()\n                                .name(node_network_info.nodesNetworkingDetails().applyValue(_nodesNetworkingDetails -> _nodesNetworkingDetails[0].uplinks()[0].uplinkLists()[0].name()))\n                                .mac(node_network_info.nodesNetworkingDetails().applyValue(_nodesNetworkingDetails -> _nodesNetworkingDetails[0].uplinks()[0].uplinkLists()[0].mac()))\n                                .value(node_network_info.nodesNetworkingDetails().applyValue(_nodesNetworkingDetails -> _nodesNetworkingDetails[0].uplinks()[0].uplinkLists()[0].name()))\n                                .build())\n                            .standbies(ClusterAddNodeV2NodeParamNodeListNetworkUplinkStandbyArgs.builder()\n                                .name(node_network_info.nodesNetworkingDetails().applyValue(_nodesNetworkingDetails -> _nodesNetworkingDetails[0].uplinks()[0].uplinkLists()[1].name()))\n                                .mac(node_network_info.nodesNetworkingDetails().applyValue(_nodesNetworkingDetails -> _nodesNetworkingDetails[0].uplinks()[0].uplinkLists()[1].mac()))\n                                .value(node_network_info.nodesNetworkingDetails().applyValue(_nodesNetworkingDetails -> _nodesNetworkingDetails[0].uplinks()[0].uplinkLists()[1].name()))\n                                .build())\n                            .build())\n                        .build())\n                    .build())\n                .build())\n            .configParams(ClusterAddNodeV2ConfigParamArgs.builder()\n                .shouldSkipImaging(true)\n                .targetHypervisor(cluster_node.unconfiguredNodes().applyValue(_unconfiguredNodes -> _unconfiguredNodes[0].hypervisorType()))\n                .build())\n            .removeNodeParams(ClusterAddNodeV2RemoveNodeParamArgs.builder()\n                .extraParams(ClusterAddNodeV2RemoveNodeParamExtraParamArgs.builder()\n                    .shouldSkipUpgradeCheck(false)\n                    .skipSpaceCheck(false)\n                    .shouldSkipAddCheck(false)\n                    .build())\n                .shouldSkipRemove(false)\n                .shouldSkipPrechecks(false)\n                .build())\n            .build(), CustomResourceOptions.builder()\n                .dependsOn(node_network_info)\n                .build());\n\n    }\n}\n```\n```yaml\nresources:\n  ## check if the node to add is un configured or not\n  cluster-node:\n    type: nutanix:ClustersDiscoverUnconfiguredNodesV2\n    properties:\n      extId: ${clustersExtId}\n      addressType: IPV4\n      ipFilterLists:\n        - ipv4s:\n            - value: ${cvmIp}\n  ## fetch Network info for unconfigured node\n  node-network-info:\n    type: nutanix:ClustersUnconfiguredNodeNetworksV2\n    properties:\n      extId: ${clustersExtId}\n      requestType: expand_cluster\n      nodeLists:\n        - cvmIps:\n            - ipv4s:\n                - value: ${cvmIp}\n          hypervisorIps:\n            - ipv4s:\n                - value: ${[\"cluster-node\"].unconfiguredNodes[0].hypervisorIps[0].ipv4s[0].value}\n    options:\n      dependsOn:\n        - ${[\"cluster-node\"]}\n  ## add node to the cluster\n  add-node:\n    type: nutanix:ClusterAddNodeV2\n    properties:\n      clusterExtId: ${clustersExtId}\n      shouldSkipAddNode: false\n      shouldSkipPreExpandChecks: false\n      nodeParams:\n        - shouldSkipHostNetworking: false\n          hypervisorIsos:\n            - type: ${[\"cluster-node\"].unconfiguredNodes[0].hypervisorType}\n          nodeLists:\n            - nodeUuid: ${[\"cluster-node\"].unconfiguredNodes[0].nodeUuid}\n              model: ${[\"cluster-node\"].unconfiguredNodes[0].rackableUnitModel}\n              blockId: ${[\"cluster-node\"].unconfiguredNodes[0].rackableUnitSerial}\n              hypervisorType: ${[\"cluster-node\"].unconfiguredNodes[0].hypervisorType}\n              hypervisorVersion: ${[\"cluster-node\"].unconfiguredNodes[0].hypervisorVersion}\n              nodePosition: ${[\"cluster-node\"].unconfiguredNodes[0].nodePosition}\n              nosVersion: ${[\"cluster-node\"].unconfiguredNodes[0].nosVersion}\n              hypervisorHostname: example\n              currentNetworkInterface: ${[\"node-network-info\"].nodesNetworkingDetails[0].uplinks[0].uplinkLists[0].name}\n              hypervisorIps:\n                - ipv4s:\n                    - value: ${[\"cluster-node\"].unconfiguredNodes[0].hypervisorIps[0].ipv4s[0].value}\n              cvmIps:\n                - ipv4s:\n                    - value: ${cvmIp}\n              ipmiIps:\n                - ipv4s:\n                    - value: ${[\"cluster-node\"].unconfiguredNodes[0].ipmiIps[0].ipv4s[0].value}\n              isRoboMixedHypervisor: true\n              networks:\n                - name: ${[\"node-network-info\"].nodesNetworkingDetails[0].networkInfos[0].hcis[0].name}\n                  networks: ${[\"node-network-info\"].nodesNetworkingDetails[0].networkInfos[0].hcis[0].networks}\n                  uplinks:\n                    - actives:\n                        - name: ${[\"node-network-info\"].nodesNetworkingDetails[0].uplinks[0].uplinkLists[0].name}\n                          mac: ${[\"node-network-info\"].nodesNetworkingDetails[0].uplinks[0].uplinkLists[0].mac}\n                          value: ${[\"node-network-info\"].nodesNetworkingDetails[0].uplinks[0].uplinkLists[0].name}\n                      standbies:\n                        - name: ${[\"node-network-info\"].nodesNetworkingDetails[0].uplinks[0].uplinkLists[1].name}\n                          mac: ${[\"node-network-info\"].nodesNetworkingDetails[0].uplinks[0].uplinkLists[1].mac}\n                          value: ${[\"node-network-info\"].nodesNetworkingDetails[0].uplinks[0].uplinkLists[1].name}\n      configParams:\n        - shouldSkipImaging: true\n          targetHypervisor: ${[\"cluster-node\"].unconfiguredNodes[0].hypervisorType}\n      removeNodeParams:\n        - extraParams:\n            - shouldSkipUpgradeCheck: false\n              skipSpaceCheck: false\n              shouldSkipAddCheck: false\n          shouldSkipRemove: false\n          shouldSkipPrechecks: false\n    options:\n      dependsOn:\n        - ${[\"node-network-info\"]}\nvariables:\n  # cluster of 3 node uuid that we want to add node\n  clustersExtId: 00057b8b-0b3b-4b3b-0000-000000000000\n  # for example\n  cvmIp: 10.xx.xx.xx\n```\n<!--End PulumiCodeChooser -->\n",
      "properties": {
        "clusterExtId": {
          "type": "string",
          "description": "-(Required) Cluster UUID.\n"
        },
        "configParams": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FClusterAddNodeV2ConfigParam:ClusterAddNodeV2ConfigParam"
          },
          "description": "-(Optional) Config parameters.\n"
        },
        "nodeParams": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FClusterAddNodeV2NodeParam:ClusterAddNodeV2NodeParam"
          },
          "description": "-(Required) Parameters of the node to be added.\n"
        },
        "removeNodeParams": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FClusterAddNodeV2RemoveNodeParam:ClusterAddNodeV2RemoveNodeParam"
          },
          "description": "-(Optional) configuration for node removal.\n"
        },
        "shouldSkipAddNode": {
          "type": "boolean",
          "description": "-(Optional) Indicates if node addition can be skipped.\n"
        },
        "shouldSkipPreExpandChecks": {
          "type": "boolean",
          "description": "-(Optional) Indicates if pre-expand checks can be skipped for node addition.\n"
        }
      },
      "type": "object",
      "required": [
        "clusterExtId",
        "configParams",
        "nodeParams",
        "shouldSkipAddNode",
        "shouldSkipPreExpandChecks"
      ],
      "inputProperties": {
        "clusterExtId": {
          "type": "string",
          "description": "-(Required) Cluster UUID.\n"
        },
        "configParams": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FClusterAddNodeV2ConfigParam:ClusterAddNodeV2ConfigParam"
          },
          "description": "-(Optional) Config parameters.\n"
        },
        "nodeParams": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FClusterAddNodeV2NodeParam:ClusterAddNodeV2NodeParam"
          },
          "description": "-(Required) Parameters of the node to be added.\n"
        },
        "removeNodeParams": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FClusterAddNodeV2RemoveNodeParam:ClusterAddNodeV2RemoveNodeParam"
          },
          "description": "-(Optional) configuration for node removal.\n"
        },
        "shouldSkipAddNode": {
          "type": "boolean",
          "description": "-(Optional) Indicates if node addition can be skipped.\n"
        },
        "shouldSkipPreExpandChecks": {
          "type": "boolean",
          "description": "-(Optional) Indicates if pre-expand checks can be skipped for node addition.\n"
        }
      },
      "requiredInputs": [
        "clusterExtId",
        "nodeParams"
      ],
      "stateInputs": {
        "description": "Input properties used for looking up and filtering ClusterAddNodeV2 resources.\n",
        "properties": {
          "clusterExtId": {
            "type": "string",
            "description": "-(Required) Cluster UUID.\n"
          },
          "configParams": {
            "type": "array",
            "items": {
              "$ref": "#/types/nutanix:index%2FClusterAddNodeV2ConfigParam:ClusterAddNodeV2ConfigParam"
            },
            "description": "-(Optional) Config parameters.\n"
          },
          "nodeParams": {
            "type": "array",
            "items": {
              "$ref": "#/types/nutanix:index%2FClusterAddNodeV2NodeParam:ClusterAddNodeV2NodeParam"
            },
            "description": "-(Required) Parameters of the node to be added.\n"
          },
          "removeNodeParams": {
            "type": "array",
            "items": {
              "$ref": "#/types/nutanix:index%2FClusterAddNodeV2RemoveNodeParam:ClusterAddNodeV2RemoveNodeParam"
            },
            "description": "-(Optional) configuration for node removal.\n"
          },
          "shouldSkipAddNode": {
            "type": "boolean",
            "description": "-(Optional) Indicates if node addition can be skipped.\n"
          },
          "shouldSkipPreExpandChecks": {
            "type": "boolean",
            "description": "-(Optional) Indicates if pre-expand checks can be skipped for node addition.\n"
          }
        },
        "type": "object"
      }
    },
    "nutanix:index/clusterV2:ClusterV2": {
      "description": "Represents the Cluster entity. Provides the basic infrastructure for compute, storage and networking. This includes the operations that can be carried out on cluster and its subresources - host (node), rsyslog servers etc and actions that can be performed on cluster - add a node, remove a node, attach categories.\n\n## Example Usage\n\n<!--Start PulumiCodeChooser -->\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as nutanix from \"@pierskarsenbarg/nutanix\";\n\nconst cluster = new nutanix.ClusterV2(\"cluster\", {\n    name: \"cluster-example\",\n    nodes: [{\n        nodeLists: [{\n            controllerVmIps: [{\n                ipv4s: [{\n                    value: \"10.xx.xx.xx\",\n                }],\n            }],\n        }],\n    }],\n    configs: [{\n        clusterFunctions: [\"AOS\"],\n        redundancyFactor: 1,\n        clusterArch: \"X86_64\",\n        faultToleranceStates: [{\n            domainAwarenessLevel: \"DISK\",\n        }],\n    }],\n    networks: [{\n        externalAddresses: [{\n            ipv4s: [{\n                value: \"10.xx.xx.xx\",\n            }],\n        }],\n        externalDataServicesIps: [{\n            ipv4s: [{\n                value: \"10.xx.xx.xx\",\n            }],\n        }],\n        ntpServerIpLists: [\n            {\n                fqdns: [{\n                    value: \"ntp.server.nutanix.com\",\n                }],\n            },\n            {\n                fqdns: [{\n                    value: \"ntp.server_1.nutanix.com\",\n                }],\n            },\n        ],\n        smtpServers: [{\n            emailAddress: \"example.ex@exmple.com\",\n            servers: [{\n                ipAddresses: [{\n                    ipv4s: [{\n                        value: \"10.xx.xx.xx\",\n                    }],\n                }],\n                port: 123,\n                username: \"example\",\n                password: \"example!2134\",\n            }],\n            type: \"PLAIN\",\n        }],\n    }],\n});\n```\n```python\nimport pulumi\nimport pulumi_nutanix as nutanix\n\ncluster = nutanix.ClusterV2(\"cluster\",\n    name=\"cluster-example\",\n    nodes=[{\n        \"node_lists\": [{\n            \"controller_vm_ips\": [{\n                \"ipv4s\": [{\n                    \"value\": \"10.xx.xx.xx\",\n                }],\n            }],\n        }],\n    }],\n    configs=[{\n        \"cluster_functions\": [\"AOS\"],\n        \"redundancy_factor\": 1,\n        \"cluster_arch\": \"X86_64\",\n        \"fault_tolerance_states\": [{\n            \"domain_awareness_level\": \"DISK\",\n        }],\n    }],\n    networks=[{\n        \"external_addresses\": [{\n            \"ipv4s\": [{\n                \"value\": \"10.xx.xx.xx\",\n            }],\n        }],\n        \"external_data_services_ips\": [{\n            \"ipv4s\": [{\n                \"value\": \"10.xx.xx.xx\",\n            }],\n        }],\n        \"ntp_server_ip_lists\": [\n            {\n                \"fqdns\": [{\n                    \"value\": \"ntp.server.nutanix.com\",\n                }],\n            },\n            {\n                \"fqdns\": [{\n                    \"value\": \"ntp.server_1.nutanix.com\",\n                }],\n            },\n        ],\n        \"smtp_servers\": [{\n            \"email_address\": \"example.ex@exmple.com\",\n            \"servers\": [{\n                \"ip_addresses\": [{\n                    \"ipv4s\": [{\n                        \"value\": \"10.xx.xx.xx\",\n                    }],\n                }],\n                \"port\": 123,\n                \"username\": \"example\",\n                \"password\": \"example!2134\",\n            }],\n            \"type\": \"PLAIN\",\n        }],\n    }])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Nutanix = PiersKarsenbarg.Nutanix;\n\nreturn await Deployment.RunAsync(() => \n{\n    var cluster = new Nutanix.ClusterV2(\"cluster\", new()\n    {\n        Name = \"cluster-example\",\n        Nodes = new[]\n        {\n            new Nutanix.Inputs.ClusterV2NodeArgs\n            {\n                NodeLists = new[]\n                {\n                    new Nutanix.Inputs.ClusterV2NodeNodeListArgs\n                    {\n                        ControllerVmIps = new[]\n                        {\n                            new Nutanix.Inputs.ClusterV2NodeNodeListControllerVmIpArgs\n                            {\n                                Ipv4s = new[]\n                                {\n                                    new Nutanix.Inputs.ClusterV2NodeNodeListControllerVmIpIpv4Args\n                                    {\n                                        Value = \"10.xx.xx.xx\",\n                                    },\n                                },\n                            },\n                        },\n                    },\n                },\n            },\n        },\n        Configs = new[]\n        {\n            new Nutanix.Inputs.ClusterV2ConfigArgs\n            {\n                ClusterFunctions = new[]\n                {\n                    \"AOS\",\n                },\n                RedundancyFactor = 1,\n                ClusterArch = \"X86_64\",\n                FaultToleranceStates = new[]\n                {\n                    new Nutanix.Inputs.ClusterV2ConfigFaultToleranceStateArgs\n                    {\n                        DomainAwarenessLevel = \"DISK\",\n                    },\n                },\n            },\n        },\n        Networks = new[]\n        {\n            new Nutanix.Inputs.ClusterV2NetworkArgs\n            {\n                ExternalAddresses = new[]\n                {\n                    new Nutanix.Inputs.ClusterV2NetworkExternalAddressArgs\n                    {\n                        Ipv4s = new[]\n                        {\n                            new Nutanix.Inputs.ClusterV2NetworkExternalAddressIpv4Args\n                            {\n                                Value = \"10.xx.xx.xx\",\n                            },\n                        },\n                    },\n                },\n                ExternalDataServicesIps = new[]\n                {\n                    new Nutanix.Inputs.ClusterV2NetworkExternalDataServicesIpArgs\n                    {\n                        Ipv4s = new[]\n                        {\n                            new Nutanix.Inputs.ClusterV2NetworkExternalDataServicesIpIpv4Args\n                            {\n                                Value = \"10.xx.xx.xx\",\n                            },\n                        },\n                    },\n                },\n                NtpServerIpLists = new[]\n                {\n                    new Nutanix.Inputs.ClusterV2NetworkNtpServerIpListArgs\n                    {\n                        Fqdns = new[]\n                        {\n                            new Nutanix.Inputs.ClusterV2NetworkNtpServerIpListFqdnArgs\n                            {\n                                Value = \"ntp.server.nutanix.com\",\n                            },\n                        },\n                    },\n                    new Nutanix.Inputs.ClusterV2NetworkNtpServerIpListArgs\n                    {\n                        Fqdns = new[]\n                        {\n                            new Nutanix.Inputs.ClusterV2NetworkNtpServerIpListFqdnArgs\n                            {\n                                Value = \"ntp.server_1.nutanix.com\",\n                            },\n                        },\n                    },\n                },\n                SmtpServers = new[]\n                {\n                    new Nutanix.Inputs.ClusterV2NetworkSmtpServerArgs\n                    {\n                        EmailAddress = \"example.ex@exmple.com\",\n                        Servers = new[]\n                        {\n                            new Nutanix.Inputs.ClusterV2NetworkSmtpServerServerArgs\n                            {\n                                IpAddresses = new[]\n                                {\n                                    new Nutanix.Inputs.ClusterV2NetworkSmtpServerServerIpAddressArgs\n                                    {\n                                        Ipv4s = new[]\n                                        {\n                                            new Nutanix.Inputs.ClusterV2NetworkSmtpServerServerIpAddressIpv4Args\n                                            {\n                                                Value = \"10.xx.xx.xx\",\n                                            },\n                                        },\n                                    },\n                                },\n                                Port = 123,\n                                Username = \"example\",\n                                Password = \"example!2134\",\n                            },\n                        },\n                        Type = \"PLAIN\",\n                    },\n                },\n            },\n        },\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pierskarsenbarg/pulumi-nutanix/sdk/go/nutanix\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := nutanix.NewClusterV2(ctx, \"cluster\", &nutanix.ClusterV2Args{\n\t\t\tName: pulumi.String(\"cluster-example\"),\n\t\t\tNodes: nutanix.ClusterV2NodeArray{\n\t\t\t\t&nutanix.ClusterV2NodeArgs{\n\t\t\t\t\tNodeLists: nutanix.ClusterV2NodeNodeListArray{\n\t\t\t\t\t\t&nutanix.ClusterV2NodeNodeListArgs{\n\t\t\t\t\t\t\tControllerVmIps: nutanix.ClusterV2NodeNodeListControllerVmIpArray{\n\t\t\t\t\t\t\t\t&nutanix.ClusterV2NodeNodeListControllerVmIpArgs{\n\t\t\t\t\t\t\t\t\tIpv4s: nutanix.ClusterV2NodeNodeListControllerVmIpIpv4Array{\n\t\t\t\t\t\t\t\t\t\t&nutanix.ClusterV2NodeNodeListControllerVmIpIpv4Args{\n\t\t\t\t\t\t\t\t\t\t\tValue: pulumi.String(\"10.xx.xx.xx\"),\n\t\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t\tConfigs: nutanix.ClusterV2ConfigArray{\n\t\t\t\t&nutanix.ClusterV2ConfigArgs{\n\t\t\t\t\tClusterFunctions: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"AOS\"),\n\t\t\t\t\t},\n\t\t\t\t\tRedundancyFactor: pulumi.Int(1),\n\t\t\t\t\tClusterArch:      pulumi.String(\"X86_64\"),\n\t\t\t\t\tFaultToleranceStates: nutanix.ClusterV2ConfigFaultToleranceStateArray{\n\t\t\t\t\t\t&nutanix.ClusterV2ConfigFaultToleranceStateArgs{\n\t\t\t\t\t\t\tDomainAwarenessLevel: pulumi.String(\"DISK\"),\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t\tNetworks: nutanix.ClusterV2NetworkArray{\n\t\t\t\t&nutanix.ClusterV2NetworkArgs{\n\t\t\t\t\tExternalAddresses: nutanix.ClusterV2NetworkExternalAddressArray{\n\t\t\t\t\t\t&nutanix.ClusterV2NetworkExternalAddressArgs{\n\t\t\t\t\t\t\tIpv4s: nutanix.ClusterV2NetworkExternalAddressIpv4Array{\n\t\t\t\t\t\t\t\t&nutanix.ClusterV2NetworkExternalAddressIpv4Args{\n\t\t\t\t\t\t\t\t\tValue: pulumi.String(\"10.xx.xx.xx\"),\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t\tExternalDataServicesIps: nutanix.ClusterV2NetworkExternalDataServicesIpArray{\n\t\t\t\t\t\t&nutanix.ClusterV2NetworkExternalDataServicesIpArgs{\n\t\t\t\t\t\t\tIpv4s: nutanix.ClusterV2NetworkExternalDataServicesIpIpv4Array{\n\t\t\t\t\t\t\t\t&nutanix.ClusterV2NetworkExternalDataServicesIpIpv4Args{\n\t\t\t\t\t\t\t\t\tValue: pulumi.String(\"10.xx.xx.xx\"),\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t\tNtpServerIpLists: nutanix.ClusterV2NetworkNtpServerIpListArray{\n\t\t\t\t\t\t&nutanix.ClusterV2NetworkNtpServerIpListArgs{\n\t\t\t\t\t\t\tFqdns: nutanix.ClusterV2NetworkNtpServerIpListFqdnArray{\n\t\t\t\t\t\t\t\t&nutanix.ClusterV2NetworkNtpServerIpListFqdnArgs{\n\t\t\t\t\t\t\t\t\tValue: pulumi.String(\"ntp.server.nutanix.com\"),\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t},\n\t\t\t\t\t\t&nutanix.ClusterV2NetworkNtpServerIpListArgs{\n\t\t\t\t\t\t\tFqdns: nutanix.ClusterV2NetworkNtpServerIpListFqdnArray{\n\t\t\t\t\t\t\t\t&nutanix.ClusterV2NetworkNtpServerIpListFqdnArgs{\n\t\t\t\t\t\t\t\t\tValue: pulumi.String(\"ntp.server_1.nutanix.com\"),\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t\tSmtpServers: nutanix.ClusterV2NetworkSmtpServerArray{\n\t\t\t\t\t\t&nutanix.ClusterV2NetworkSmtpServerArgs{\n\t\t\t\t\t\t\tEmailAddress: pulumi.String(\"example.ex@exmple.com\"),\n\t\t\t\t\t\t\tServers: nutanix.ClusterV2NetworkSmtpServerServerArray{\n\t\t\t\t\t\t\t\t&nutanix.ClusterV2NetworkSmtpServerServerArgs{\n\t\t\t\t\t\t\t\t\tIpAddresses: nutanix.ClusterV2NetworkSmtpServerServerIpAddressArray{\n\t\t\t\t\t\t\t\t\t\t&nutanix.ClusterV2NetworkSmtpServerServerIpAddressArgs{\n\t\t\t\t\t\t\t\t\t\t\tIpv4s: nutanix.ClusterV2NetworkSmtpServerServerIpAddressIpv4Array{\n\t\t\t\t\t\t\t\t\t\t\t\t&nutanix.ClusterV2NetworkSmtpServerServerIpAddressIpv4Args{\n\t\t\t\t\t\t\t\t\t\t\t\t\tValue: pulumi.String(\"10.xx.xx.xx\"),\n\t\t\t\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\tPort:     pulumi.Int(123),\n\t\t\t\t\t\t\t\t\tUsername: pulumi.String(\"example\"),\n\t\t\t\t\t\t\t\t\tPassword: pulumi.String(\"example!2134\"),\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\tType: pulumi.String(\"PLAIN\"),\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.nutanix.ClusterV2;\nimport com.pulumi.nutanix.ClusterV2Args;\nimport com.pulumi.nutanix.inputs.ClusterV2NodeArgs;\nimport com.pulumi.nutanix.inputs.ClusterV2ConfigArgs;\nimport com.pulumi.nutanix.inputs.ClusterV2NetworkArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var cluster = new ClusterV2(\"cluster\", ClusterV2Args.builder()\n            .name(\"cluster-example\")\n            .nodes(ClusterV2NodeArgs.builder()\n                .nodeLists(ClusterV2NodeNodeListArgs.builder()\n                    .controllerVmIps(ClusterV2NodeNodeListControllerVmIpArgs.builder()\n                        .ipv4s(ClusterV2NodeNodeListControllerVmIpIpv4Args.builder()\n                            .value(\"10.xx.xx.xx\")\n                            .build())\n                        .build())\n                    .build())\n                .build())\n            .configs(ClusterV2ConfigArgs.builder()\n                .clusterFunctions(\"AOS\")\n                .redundancyFactor(1)\n                .clusterArch(\"X86_64\")\n                .faultToleranceStates(ClusterV2ConfigFaultToleranceStateArgs.builder()\n                    .domainAwarenessLevel(\"DISK\")\n                    .build())\n                .build())\n            .networks(ClusterV2NetworkArgs.builder()\n                .externalAddresses(ClusterV2NetworkExternalAddressArgs.builder()\n                    .ipv4s(ClusterV2NetworkExternalAddressIpv4Args.builder()\n                        .value(\"10.xx.xx.xx\")\n                        .build())\n                    .build())\n                .externalDataServicesIps(ClusterV2NetworkExternalDataServicesIpArgs.builder()\n                    .ipv4s(ClusterV2NetworkExternalDataServicesIpIpv4Args.builder()\n                        .value(\"10.xx.xx.xx\")\n                        .build())\n                    .build())\n                .ntpServerIpLists(                \n                    ClusterV2NetworkNtpServerIpListArgs.builder()\n                        .fqdns(ClusterV2NetworkNtpServerIpListFqdnArgs.builder()\n                            .value(\"ntp.server.nutanix.com\")\n                            .build())\n                        .build(),\n                    ClusterV2NetworkNtpServerIpListArgs.builder()\n                        .fqdns(ClusterV2NetworkNtpServerIpListFqdnArgs.builder()\n                            .value(\"ntp.server_1.nutanix.com\")\n                            .build())\n                        .build())\n                .smtpServers(ClusterV2NetworkSmtpServerArgs.builder()\n                    .emailAddress(\"example.ex@exmple.com\")\n                    .servers(ClusterV2NetworkSmtpServerServerArgs.builder()\n                        .ipAddresses(ClusterV2NetworkSmtpServerServerIpAddressArgs.builder()\n                            .ipv4s(ClusterV2NetworkSmtpServerServerIpAddressIpv4Args.builder()\n                                .value(\"10.xx.xx.xx\")\n                                .build())\n                            .build())\n                        .port(123)\n                        .username(\"example\")\n                        .password(\"example!2134\")\n                        .build())\n                    .type(\"PLAIN\")\n                    .build())\n                .build())\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  cluster:\n    type: nutanix:ClusterV2\n    properties:\n      name: cluster-example\n      nodes:\n        - nodeLists:\n            - controllerVmIps:\n                - ipv4s:\n                    - value: 10.xx.xx.xx\n      configs:\n        - clusterFunctions:\n            - AOS\n          redundancyFactor: 1\n          clusterArch: X86_64\n          faultToleranceStates:\n            - domainAwarenessLevel: DISK\n      networks:\n        - externalAddresses:\n            - ipv4s:\n                - value: 10.xx.xx.xx\n          externalDataServicesIps:\n            - ipv4s:\n                - value: 10.xx.xx.xx\n          ntpServerIpLists:\n            - fqdns:\n                - value: ntp.server.nutanix.com\n            - fqdns:\n                - value: ntp.server_1.nutanix.com\n          smtpServers:\n            - emailAddress: example.ex@exmple.com\n              servers:\n                - ipAddresses:\n                    - ipv4s:\n                        - value: 10.xx.xx.xx\n                  port: 123\n                  username: example\n                  password: example!2134\n              type: PLAIN\n```\n<!--End PulumiCodeChooser -->\n\n## Import\n\nThis helps to manage existing entities which are not created through terraform. Users can be imported using the `UUID`.  eg,\n\nhcl\n\n// create its configuration in the root module. For example:\n\nresource \"nutanix_cluster_v2\" \"import_cluster\" {}\n\n// execute this cli command\n\n```sh\n$ pulumi import nutanix:index/clusterV2:ClusterV2 import_cluster <UUID>\n```\n\nSee detailed information in [Nutanix Create Cluster V4](https://developers.nutanix.com/api-reference?namespace=clustermgmt&version=v4.0#tag/Clusters/operation/createCluster).\n\n",
      "properties": {
        "backupEligibilityScore": {
          "type": "integer"
        },
        "categories": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "- (Optional) The reference to a project.\n"
        },
        "clusterProfileExtId": {
          "type": "string"
        },
        "configs": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FClusterV2Config:ClusterV2Config"
          },
          "description": "- (Optional) Cluster configuration details.\n"
        },
        "containerName": {
          "type": "string",
          "description": "- (Optional) The name of the default container created as part of cluster creation. This is part of payload for cluster create operation only.\n"
        },
        "dryrun": {
          "type": "boolean",
          "description": "- (Optional) parameter that allows long-running operations to execute in a dry-run mode providing ability to identify trouble spots and system failures without performing the actual operation. Additionally this mode also offers a summary snapshot of the resultant system in order to better understand how things fit together. The operation runs in dry-run mode only if the provided value is true.\n"
        },
        "expand": {
          "type": "string"
        },
        "extId": {
          "type": "string"
        },
        "inefficientVmCount": {
          "type": "integer"
        },
        "links": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FClusterV2Link:ClusterV2Link"
          }
        },
        "name": {
          "type": "string",
          "description": "- (Required) The name for the vm.\n"
        },
        "networks": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FClusterV2Network:ClusterV2Network"
          },
          "description": "- (Optional) Network details of a cluster.\n"
        },
        "nodes": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FClusterV2Node:ClusterV2Node"
          },
          "description": "- (Optional) The reference to a node.\n"
        },
        "tenantId": {
          "type": "string"
        },
        "upgradeStatus": {
          "type": "string",
          "description": "- (Optional) The reference to a project.\nValid values are:\n- \"CANCELLED\"\tThe cluster upgrade is cancelled.\n- \"FAILED\"\tThe cluster upgrade failed.\n- \"QUEUED\"\tThe cluster upgrade is in the queue.\n- \"SUCCEEDED\"\tThe cluster was upgraded successfully.\n- \"DOWNLOADING\"\tThe cluster upgrade is downloading.\n- \"PENDING\"\tThe cluster upgrade is in pending state.\n- \"UPGRADING\"\tThe cluster is in upgrade state.\n- \"PREUPGRADE\"\tThe cluster is in pre-upgrade state.\n- \"SCHEDULED\"\tThe cluster upgrade is in scheduled state.\n"
        },
        "vmCount": {
          "type": "integer"
        }
      },
      "type": "object",
      "required": [
        "backupEligibilityScore",
        "categories",
        "clusterProfileExtId",
        "configs",
        "containerName",
        "extId",
        "inefficientVmCount",
        "links",
        "name",
        "networks",
        "nodes",
        "tenantId",
        "upgradeStatus",
        "vmCount"
      ],
      "inputProperties": {
        "categories": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "- (Optional) The reference to a project.\n"
        },
        "configs": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FClusterV2Config:ClusterV2Config"
          },
          "description": "- (Optional) Cluster configuration details.\n"
        },
        "containerName": {
          "type": "string",
          "description": "- (Optional) The name of the default container created as part of cluster creation. This is part of payload for cluster create operation only.\n"
        },
        "dryrun": {
          "type": "boolean",
          "description": "- (Optional) parameter that allows long-running operations to execute in a dry-run mode providing ability to identify trouble spots and system failures without performing the actual operation. Additionally this mode also offers a summary snapshot of the resultant system in order to better understand how things fit together. The operation runs in dry-run mode only if the provided value is true.\n"
        },
        "expand": {
          "type": "string"
        },
        "extId": {
          "type": "string"
        },
        "name": {
          "type": "string",
          "description": "- (Required) The name for the vm.\n"
        },
        "networks": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FClusterV2Network:ClusterV2Network"
          },
          "description": "- (Optional) Network details of a cluster.\n"
        },
        "nodes": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FClusterV2Node:ClusterV2Node"
          },
          "description": "- (Optional) The reference to a node.\n"
        }
      },
      "stateInputs": {
        "description": "Input properties used for looking up and filtering ClusterV2 resources.\n",
        "properties": {
          "backupEligibilityScore": {
            "type": "integer"
          },
          "categories": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "description": "- (Optional) The reference to a project.\n"
          },
          "clusterProfileExtId": {
            "type": "string"
          },
          "configs": {
            "type": "array",
            "items": {
              "$ref": "#/types/nutanix:index%2FClusterV2Config:ClusterV2Config"
            },
            "description": "- (Optional) Cluster configuration details.\n"
          },
          "containerName": {
            "type": "string",
            "description": "- (Optional) The name of the default container created as part of cluster creation. This is part of payload for cluster create operation only.\n"
          },
          "dryrun": {
            "type": "boolean",
            "description": "- (Optional) parameter that allows long-running operations to execute in a dry-run mode providing ability to identify trouble spots and system failures without performing the actual operation. Additionally this mode also offers a summary snapshot of the resultant system in order to better understand how things fit together. The operation runs in dry-run mode only if the provided value is true.\n"
          },
          "expand": {
            "type": "string"
          },
          "extId": {
            "type": "string"
          },
          "inefficientVmCount": {
            "type": "integer"
          },
          "links": {
            "type": "array",
            "items": {
              "$ref": "#/types/nutanix:index%2FClusterV2Link:ClusterV2Link"
            }
          },
          "name": {
            "type": "string",
            "description": "- (Required) The name for the vm.\n"
          },
          "networks": {
            "type": "array",
            "items": {
              "$ref": "#/types/nutanix:index%2FClusterV2Network:ClusterV2Network"
            },
            "description": "- (Optional) Network details of a cluster.\n"
          },
          "nodes": {
            "type": "array",
            "items": {
              "$ref": "#/types/nutanix:index%2FClusterV2Node:ClusterV2Node"
            },
            "description": "- (Optional) The reference to a node.\n"
          },
          "tenantId": {
            "type": "string"
          },
          "upgradeStatus": {
            "type": "string",
            "description": "- (Optional) The reference to a project.\nValid values are:\n- \"CANCELLED\"\tThe cluster upgrade is cancelled.\n- \"FAILED\"\tThe cluster upgrade failed.\n- \"QUEUED\"\tThe cluster upgrade is in the queue.\n- \"SUCCEEDED\"\tThe cluster was upgraded successfully.\n- \"DOWNLOADING\"\tThe cluster upgrade is downloading.\n- \"PENDING\"\tThe cluster upgrade is in pending state.\n- \"UPGRADING\"\tThe cluster is in upgrade state.\n- \"PREUPGRADE\"\tThe cluster is in pre-upgrade state.\n- \"SCHEDULED\"\tThe cluster upgrade is in scheduled state.\n"
          },
          "vmCount": {
            "type": "integer"
          }
        },
        "type": "object"
      }
    },
    "nutanix:index/clustersDiscoverUnconfiguredNodesV2:ClustersDiscoverUnconfiguredNodesV2": {
      "description": "Get the unconfigured node details such as node UUID, node position, node IP, foundation version and more.\n\n",
      "properties": {
        "addressType": {
          "type": "string",
          "description": "- (Optional) Address type.\nValid values are:\n- \"IPV4\"\tIPV4 address type.\n- \"IPV6\"\tIPV6 address type.\n"
        },
        "extId": {
          "type": "string",
          "description": "-(Required) Cluster UUID.\n"
        },
        "interfaceFilterLists": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "- (Optional) Interface name that is used for packet broadcasting.\n"
        },
        "ipFilterLists": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FClustersDiscoverUnconfiguredNodesV2IpFilterList:ClustersDiscoverUnconfiguredNodesV2IpFilterList"
          },
          "description": "- (Optional) IP addresses of the unconfigured nodes.\n"
        },
        "isManualDiscovery": {
          "type": "boolean",
          "description": "- (Optional) Indicates if the discovery is manual or not.\n"
        },
        "timeout": {
          "type": "integer",
          "description": "- (Optional) Timeout for the workflow in seconds.\n"
        },
        "unconfiguredNodes": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FClustersDiscoverUnconfiguredNodesV2UnconfiguredNode:ClustersDiscoverUnconfiguredNodesV2UnconfiguredNode"
          }
        },
        "uuidFilterLists": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "- (Optional) Unconfigured node UUIDs.\n"
        }
      },
      "type": "object",
      "required": [
        "extId",
        "unconfiguredNodes"
      ],
      "inputProperties": {
        "addressType": {
          "type": "string",
          "description": "- (Optional) Address type.\nValid values are:\n- \"IPV4\"\tIPV4 address type.\n- \"IPV6\"\tIPV6 address type.\n"
        },
        "extId": {
          "type": "string",
          "description": "-(Required) Cluster UUID.\n"
        },
        "interfaceFilterLists": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "- (Optional) Interface name that is used for packet broadcasting.\n"
        },
        "ipFilterLists": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FClustersDiscoverUnconfiguredNodesV2IpFilterList:ClustersDiscoverUnconfiguredNodesV2IpFilterList"
          },
          "description": "- (Optional) IP addresses of the unconfigured nodes.\n"
        },
        "isManualDiscovery": {
          "type": "boolean",
          "description": "- (Optional) Indicates if the discovery is manual or not.\n"
        },
        "timeout": {
          "type": "integer",
          "description": "- (Optional) Timeout for the workflow in seconds.\n"
        },
        "uuidFilterLists": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "- (Optional) Unconfigured node UUIDs.\n"
        }
      },
      "requiredInputs": [
        "extId"
      ],
      "stateInputs": {
        "description": "Input properties used for looking up and filtering ClustersDiscoverUnconfiguredNodesV2 resources.\n",
        "properties": {
          "addressType": {
            "type": "string",
            "description": "- (Optional) Address type.\nValid values are:\n- \"IPV4\"\tIPV4 address type.\n- \"IPV6\"\tIPV6 address type.\n"
          },
          "extId": {
            "type": "string",
            "description": "-(Required) Cluster UUID.\n"
          },
          "interfaceFilterLists": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "description": "- (Optional) Interface name that is used for packet broadcasting.\n"
          },
          "ipFilterLists": {
            "type": "array",
            "items": {
              "$ref": "#/types/nutanix:index%2FClustersDiscoverUnconfiguredNodesV2IpFilterList:ClustersDiscoverUnconfiguredNodesV2IpFilterList"
            },
            "description": "- (Optional) IP addresses of the unconfigured nodes.\n"
          },
          "isManualDiscovery": {
            "type": "boolean",
            "description": "- (Optional) Indicates if the discovery is manual or not.\n"
          },
          "timeout": {
            "type": "integer",
            "description": "- (Optional) Timeout for the workflow in seconds.\n"
          },
          "unconfiguredNodes": {
            "type": "array",
            "items": {
              "$ref": "#/types/nutanix:index%2FClustersDiscoverUnconfiguredNodesV2UnconfiguredNode:ClustersDiscoverUnconfiguredNodesV2UnconfiguredNode"
            }
          },
          "uuidFilterLists": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "description": "- (Optional) Unconfigured node UUIDs.\n"
          }
        },
        "type": "object"
      }
    },
    "nutanix:index/clustersUnconfiguredNodeNetworksV2:ClustersUnconfiguredNodeNetworksV2": {
      "description": "Get a dictionary of cluster networks and available uplinks on the given nodes. This API is not supported for XEN hypervisor type.\n\n## Example Usage\n\n<!--Start PulumiCodeChooser -->\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as nutanix from \"@pierskarsenbarg/nutanix\";\n\n// ## fetch Network info for unconfigured node\nconst node_network_info = new nutanix.ClustersUnconfiguredNodeNetworksV2(\"node-network-info\", {\n    extId: \"0005b6b0-0b0b-0000-0000-000000000000\",\n    requestType: \"expand_cluster\",\n    nodeLists: [{\n        cvmIps: [{\n            ipv4s: [{\n                value: \"10.73.23.55\",\n            }],\n        }],\n        hypervisorIps: [{\n            ipv4s: [{\n                value: \"10.33.44.12\",\n            }],\n        }],\n    }],\n});\n```\n```python\nimport pulumi\nimport pulumi_nutanix as nutanix\n\n# ## fetch Network info for unconfigured node\nnode_network_info = nutanix.ClustersUnconfiguredNodeNetworksV2(\"node-network-info\",\n    ext_id=\"0005b6b0-0b0b-0000-0000-000000000000\",\n    request_type=\"expand_cluster\",\n    node_lists=[{\n        \"cvm_ips\": [{\n            \"ipv4s\": [{\n                \"value\": \"10.73.23.55\",\n            }],\n        }],\n        \"hypervisor_ips\": [{\n            \"ipv4s\": [{\n                \"value\": \"10.33.44.12\",\n            }],\n        }],\n    }])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Nutanix = PiersKarsenbarg.Nutanix;\n\nreturn await Deployment.RunAsync(() => \n{\n    // ## fetch Network info for unconfigured node\n    var node_network_info = new Nutanix.ClustersUnconfiguredNodeNetworksV2(\"node-network-info\", new()\n    {\n        ExtId = \"0005b6b0-0b0b-0000-0000-000000000000\",\n        RequestType = \"expand_cluster\",\n        NodeLists = new[]\n        {\n            new Nutanix.Inputs.ClustersUnconfiguredNodeNetworksV2NodeListArgs\n            {\n                CvmIps = new[]\n                {\n                    new Nutanix.Inputs.ClustersUnconfiguredNodeNetworksV2NodeListCvmIpArgs\n                    {\n                        Ipv4s = new[]\n                        {\n                            new Nutanix.Inputs.ClustersUnconfiguredNodeNetworksV2NodeListCvmIpIpv4Args\n                            {\n                                Value = \"10.73.23.55\",\n                            },\n                        },\n                    },\n                },\n                HypervisorIps = new[]\n                {\n                    new Nutanix.Inputs.ClustersUnconfiguredNodeNetworksV2NodeListHypervisorIpArgs\n                    {\n                        Ipv4s = new[]\n                        {\n                            new Nutanix.Inputs.ClustersUnconfiguredNodeNetworksV2NodeListHypervisorIpIpv4Args\n                            {\n                                Value = \"10.33.44.12\",\n                            },\n                        },\n                    },\n                },\n            },\n        },\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pierskarsenbarg/pulumi-nutanix/sdk/go/nutanix\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t// ## fetch Network info for unconfigured node\n\t\t_, err := nutanix.NewClustersUnconfiguredNodeNetworksV2(ctx, \"node-network-info\", &nutanix.ClustersUnconfiguredNodeNetworksV2Args{\n\t\t\tExtId:       pulumi.String(\"0005b6b0-0b0b-0000-0000-000000000000\"),\n\t\t\tRequestType: pulumi.String(\"expand_cluster\"),\n\t\t\tNodeLists: nutanix.ClustersUnconfiguredNodeNetworksV2NodeListArray{\n\t\t\t\t&nutanix.ClustersUnconfiguredNodeNetworksV2NodeListArgs{\n\t\t\t\t\tCvmIps: nutanix.ClustersUnconfiguredNodeNetworksV2NodeListCvmIpArray{\n\t\t\t\t\t\t&nutanix.ClustersUnconfiguredNodeNetworksV2NodeListCvmIpArgs{\n\t\t\t\t\t\t\tIpv4s: nutanix.ClustersUnconfiguredNodeNetworksV2NodeListCvmIpIpv4Array{\n\t\t\t\t\t\t\t\t&nutanix.ClustersUnconfiguredNodeNetworksV2NodeListCvmIpIpv4Args{\n\t\t\t\t\t\t\t\t\tValue: pulumi.String(\"10.73.23.55\"),\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t\tHypervisorIps: nutanix.ClustersUnconfiguredNodeNetworksV2NodeListHypervisorIpArray{\n\t\t\t\t\t\t&nutanix.ClustersUnconfiguredNodeNetworksV2NodeListHypervisorIpArgs{\n\t\t\t\t\t\t\tIpv4s: nutanix.ClustersUnconfiguredNodeNetworksV2NodeListHypervisorIpIpv4Array{\n\t\t\t\t\t\t\t\t&nutanix.ClustersUnconfiguredNodeNetworksV2NodeListHypervisorIpIpv4Args{\n\t\t\t\t\t\t\t\t\tValue: pulumi.String(\"10.33.44.12\"),\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.nutanix.ClustersUnconfiguredNodeNetworksV2;\nimport com.pulumi.nutanix.ClustersUnconfiguredNodeNetworksV2Args;\nimport com.pulumi.nutanix.inputs.ClustersUnconfiguredNodeNetworksV2NodeListArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        // ## fetch Network info for unconfigured node\n        var node_network_info = new ClustersUnconfiguredNodeNetworksV2(\"node-network-info\", ClustersUnconfiguredNodeNetworksV2Args.builder()\n            .extId(\"0005b6b0-0b0b-0000-0000-000000000000\")\n            .requestType(\"expand_cluster\")\n            .nodeLists(ClustersUnconfiguredNodeNetworksV2NodeListArgs.builder()\n                .cvmIps(ClustersUnconfiguredNodeNetworksV2NodeListCvmIpArgs.builder()\n                    .ipv4s(ClustersUnconfiguredNodeNetworksV2NodeListCvmIpIpv4Args.builder()\n                        .value(\"10.73.23.55\")\n                        .build())\n                    .build())\n                .hypervisorIps(ClustersUnconfiguredNodeNetworksV2NodeListHypervisorIpArgs.builder()\n                    .ipv4s(ClustersUnconfiguredNodeNetworksV2NodeListHypervisorIpIpv4Args.builder()\n                        .value(\"10.33.44.12\")\n                        .build())\n                    .build())\n                .build())\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  # ## fetch Network info for unconfigured node\n  node-network-info:\n    type: nutanix:ClustersUnconfiguredNodeNetworksV2\n    properties:\n      extId: 0005b6b0-0b0b-0000-0000-000000000000\n      requestType: expand_cluster\n      nodeLists:\n        - cvmIps:\n            - ipv4s:\n                - value: 10.73.23.55\n          hypervisorIps:\n            - ipv4s:\n                - value: 10.33.44.12\n```\n<!--End PulumiCodeChooser -->\n",
      "properties": {
        "expand": {
          "type": "string"
        },
        "extId": {
          "type": "string",
          "description": "-(Required) Cluster UUID.\n"
        },
        "nodeLists": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FClustersUnconfiguredNodeNetworksV2NodeList:ClustersUnconfiguredNodeNetworksV2NodeList"
          },
          "description": "-(Required) List of nodes for which the network information is required.\n"
        },
        "nodesNetworkingDetails": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FClustersUnconfiguredNodeNetworksV2NodesNetworkingDetail:ClustersUnconfiguredNodeNetworksV2NodesNetworkingDetail"
          }
        },
        "requestType": {
          "type": "string",
          "description": "-(Optional) Request type\n"
        }
      },
      "type": "object",
      "required": [
        "extId",
        "nodeLists",
        "nodesNetworkingDetails",
        "requestType"
      ],
      "inputProperties": {
        "expand": {
          "type": "string"
        },
        "extId": {
          "type": "string",
          "description": "-(Required) Cluster UUID.\n"
        },
        "nodeLists": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FClustersUnconfiguredNodeNetworksV2NodeList:ClustersUnconfiguredNodeNetworksV2NodeList"
          },
          "description": "-(Required) List of nodes for which the network information is required.\n"
        },
        "requestType": {
          "type": "string",
          "description": "-(Optional) Request type\n"
        }
      },
      "requiredInputs": [
        "extId",
        "nodeLists"
      ],
      "stateInputs": {
        "description": "Input properties used for looking up and filtering ClustersUnconfiguredNodeNetworksV2 resources.\n",
        "properties": {
          "expand": {
            "type": "string"
          },
          "extId": {
            "type": "string",
            "description": "-(Required) Cluster UUID.\n"
          },
          "nodeLists": {
            "type": "array",
            "items": {
              "$ref": "#/types/nutanix:index%2FClustersUnconfiguredNodeNetworksV2NodeList:ClustersUnconfiguredNodeNetworksV2NodeList"
            },
            "description": "-(Required) List of nodes for which the network information is required.\n"
          },
          "nodesNetworkingDetails": {
            "type": "array",
            "items": {
              "$ref": "#/types/nutanix:index%2FClustersUnconfiguredNodeNetworksV2NodesNetworkingDetail:ClustersUnconfiguredNodeNetworksV2NodesNetworkingDetail"
            }
          },
          "requestType": {
            "type": "string",
            "description": "-(Optional) Request type\n"
          }
        },
        "type": "object"
      }
    },
    "nutanix:index/deployTemplatesV2:DeployTemplatesV2": {
      "properties": {
        "clusterReference": {
          "type": "string"
        },
        "extId": {
          "type": "string"
        },
        "numberOfVms": {
          "type": "integer"
        },
        "overrideVmConfigMaps": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FDeployTemplatesV2OverrideVmConfigMap:DeployTemplatesV2OverrideVmConfigMap"
          }
        },
        "versionId": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "clusterReference",
        "extId",
        "numberOfVms"
      ],
      "inputProperties": {
        "clusterReference": {
          "type": "string"
        },
        "extId": {
          "type": "string"
        },
        "numberOfVms": {
          "type": "integer"
        },
        "overrideVmConfigMaps": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FDeployTemplatesV2OverrideVmConfigMap:DeployTemplatesV2OverrideVmConfigMap"
          }
        },
        "versionId": {
          "type": "string"
        }
      },
      "requiredInputs": [
        "clusterReference",
        "extId",
        "numberOfVms"
      ],
      "stateInputs": {
        "description": "Input properties used for looking up and filtering DeployTemplatesV2 resources.\n",
        "properties": {
          "clusterReference": {
            "type": "string"
          },
          "extId": {
            "type": "string"
          },
          "numberOfVms": {
            "type": "integer"
          },
          "overrideVmConfigMaps": {
            "type": "array",
            "items": {
              "$ref": "#/types/nutanix:index%2FDeployTemplatesV2OverrideVmConfigMap:DeployTemplatesV2OverrideVmConfigMap"
            }
          },
          "versionId": {
            "type": "string"
          }
        },
        "type": "object"
      }
    },
    "nutanix:index/directoryServicesV2:DirectoryServicesV2": {
      "description": "Provides a resource to Create a Directory Service.\n\n## Example Usage\n\n<!--Start PulumiCodeChooser -->\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as nutanix from \"@pierskarsenbarg/nutanix\";\n\n// Add Directory Service .\nconst active_directory = new nutanix.DirectoryServicesV2(\"active-directory\", {\n    name: \"example_active_directory\",\n    url: \"ldap://10.xx.xx.xx:xxxx\",\n    directoryType: \"ACTIVE_DIRECTORY\",\n    domainName: \"nutanix.com\",\n    serviceAccounts: [{\n        username: \"username\",\n        password: \"password\",\n    }],\n    whiteListedGroups: [\"example\"],\n});\n```\n```python\nimport pulumi\nimport pulumi_nutanix as nutanix\n\n# Add Directory Service .\nactive_directory = nutanix.DirectoryServicesV2(\"active-directory\",\n    name=\"example_active_directory\",\n    url=\"ldap://10.xx.xx.xx:xxxx\",\n    directory_type=\"ACTIVE_DIRECTORY\",\n    domain_name=\"nutanix.com\",\n    service_accounts=[{\n        \"username\": \"username\",\n        \"password\": \"password\",\n    }],\n    white_listed_groups=[\"example\"])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Nutanix = PiersKarsenbarg.Nutanix;\n\nreturn await Deployment.RunAsync(() => \n{\n    // Add Directory Service .\n    var active_directory = new Nutanix.DirectoryServicesV2(\"active-directory\", new()\n    {\n        Name = \"example_active_directory\",\n        Url = \"ldap://10.xx.xx.xx:xxxx\",\n        DirectoryType = \"ACTIVE_DIRECTORY\",\n        DomainName = \"nutanix.com\",\n        ServiceAccounts = new[]\n        {\n            new Nutanix.Inputs.DirectoryServicesV2ServiceAccountArgs\n            {\n                Username = \"username\",\n                Password = \"password\",\n            },\n        },\n        WhiteListedGroups = new[]\n        {\n            \"example\",\n        },\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pierskarsenbarg/pulumi-nutanix/sdk/go/nutanix\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t// Add Directory Service .\n\t\t_, err := nutanix.NewDirectoryServicesV2(ctx, \"active-directory\", &nutanix.DirectoryServicesV2Args{\n\t\t\tName:          pulumi.String(\"example_active_directory\"),\n\t\t\tUrl:           pulumi.String(\"ldap://10.xx.xx.xx:xxxx\"),\n\t\t\tDirectoryType: pulumi.String(\"ACTIVE_DIRECTORY\"),\n\t\t\tDomainName:    pulumi.String(\"nutanix.com\"),\n\t\t\tServiceAccounts: nutanix.DirectoryServicesV2ServiceAccountArray{\n\t\t\t\t&nutanix.DirectoryServicesV2ServiceAccountArgs{\n\t\t\t\t\tUsername: pulumi.String(\"username\"),\n\t\t\t\t\tPassword: pulumi.String(\"password\"),\n\t\t\t\t},\n\t\t\t},\n\t\t\tWhiteListedGroups: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"example\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.nutanix.DirectoryServicesV2;\nimport com.pulumi.nutanix.DirectoryServicesV2Args;\nimport com.pulumi.nutanix.inputs.DirectoryServicesV2ServiceAccountArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        // Add Directory Service .\n        var active_directory = new DirectoryServicesV2(\"active-directory\", DirectoryServicesV2Args.builder()\n            .name(\"example_active_directory\")\n            .url(\"ldap://10.xx.xx.xx:xxxx\")\n            .directoryType(\"ACTIVE_DIRECTORY\")\n            .domainName(\"nutanix.com\")\n            .serviceAccounts(DirectoryServicesV2ServiceAccountArgs.builder()\n                .username(\"username\")\n                .password(\"password\")\n                .build())\n            .whiteListedGroups(\"example\")\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  # Add Directory Service .\n  active-directory:\n    type: nutanix:DirectoryServicesV2\n    properties:\n      name: example_active_directory\n      url: ldap://10.xx.xx.xx:xxxx\n      directoryType: ACTIVE_DIRECTORY\n      domainName: nutanix.com\n      serviceAccounts:\n        - username: username\n          password: password\n      whiteListedGroups:\n        - example\n```\n<!--End PulumiCodeChooser -->\n",
      "properties": {
        "createdBy": {
          "type": "string",
          "description": "- User or Service who created the Directory Service.\n"
        },
        "createdTime": {
          "type": "string",
          "description": "- Creation time of the Directory Service.\n"
        },
        "directoryType": {
          "type": "string",
          "description": "-(Required) Type of Directory Service, Supported values are: \"ACTIVE_DIRECTORY\" (Directory Service type is Active Directory.) and \"OPEN_LDAP\" (Directory Service type is Open LDAP.)\n"
        },
        "domainName": {
          "type": "string",
          "description": "-(Required) Domain name for the Directory Service.\n"
        },
        "extId": {
          "type": "string",
          "description": "-(Optional) A globally unique identifier of an instance that is suitable for external consumption.\n"
        },
        "groupSearchType": {
          "type": "string",
          "description": "-(Optional) Group membership search type for the Directory Service. Supported values are: \"NON_RECURSIVE\" (Doesn't search recursively within groups.) and \"RECURSIVE\" (Searches recursively within groups.)\n"
        },
        "lastUpdatedTime": {
          "type": "string",
          "description": "- Last updated time of the Directory Service.\n"
        },
        "name": {
          "type": "string",
          "description": "-(Required) Name for the Directory Service.\n"
        },
        "openLdapConfigurations": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FDirectoryServicesV2OpenLdapConfiguration:DirectoryServicesV2OpenLdapConfiguration"
          },
          "description": "-(Optional) Configuration for OpenLDAP Directory Service.\n"
        },
        "secondaryUrls": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "-(Optional) Secondary URL for the Directory Service.\n"
        },
        "serviceAccounts": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FDirectoryServicesV2ServiceAccount:DirectoryServicesV2ServiceAccount"
          },
          "description": "-(Required) Information of Service account to connect to the Directory Service.\n"
        },
        "url": {
          "type": "string",
          "description": "-(Required) URL for the Directory Service.\n"
        },
        "whiteListedGroups": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "-(Optional) List of allowed User Groups for the Directory Service.\n"
        }
      },
      "type": "object",
      "required": [
        "createdBy",
        "createdTime",
        "directoryType",
        "domainName",
        "extId",
        "groupSearchType",
        "lastUpdatedTime",
        "name",
        "openLdapConfigurations",
        "secondaryUrls",
        "serviceAccounts",
        "url",
        "whiteListedGroups"
      ],
      "inputProperties": {
        "directoryType": {
          "type": "string",
          "description": "-(Required) Type of Directory Service, Supported values are: \"ACTIVE_DIRECTORY\" (Directory Service type is Active Directory.) and \"OPEN_LDAP\" (Directory Service type is Open LDAP.)\n"
        },
        "domainName": {
          "type": "string",
          "description": "-(Required) Domain name for the Directory Service.\n"
        },
        "extId": {
          "type": "string",
          "description": "-(Optional) A globally unique identifier of an instance that is suitable for external consumption.\n"
        },
        "groupSearchType": {
          "type": "string",
          "description": "-(Optional) Group membership search type for the Directory Service. Supported values are: \"NON_RECURSIVE\" (Doesn't search recursively within groups.) and \"RECURSIVE\" (Searches recursively within groups.)\n"
        },
        "name": {
          "type": "string",
          "description": "-(Required) Name for the Directory Service.\n"
        },
        "openLdapConfigurations": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FDirectoryServicesV2OpenLdapConfiguration:DirectoryServicesV2OpenLdapConfiguration"
          },
          "description": "-(Optional) Configuration for OpenLDAP Directory Service.\n"
        },
        "secondaryUrls": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "-(Optional) Secondary URL for the Directory Service.\n"
        },
        "serviceAccounts": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FDirectoryServicesV2ServiceAccount:DirectoryServicesV2ServiceAccount"
          },
          "description": "-(Required) Information of Service account to connect to the Directory Service.\n"
        },
        "url": {
          "type": "string",
          "description": "-(Required) URL for the Directory Service.\n"
        },
        "whiteListedGroups": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "-(Optional) List of allowed User Groups for the Directory Service.\n"
        }
      },
      "requiredInputs": [
        "directoryType",
        "domainName",
        "serviceAccounts",
        "url"
      ],
      "stateInputs": {
        "description": "Input properties used for looking up and filtering DirectoryServicesV2 resources.\n",
        "properties": {
          "createdBy": {
            "type": "string",
            "description": "- User or Service who created the Directory Service.\n"
          },
          "createdTime": {
            "type": "string",
            "description": "- Creation time of the Directory Service.\n"
          },
          "directoryType": {
            "type": "string",
            "description": "-(Required) Type of Directory Service, Supported values are: \"ACTIVE_DIRECTORY\" (Directory Service type is Active Directory.) and \"OPEN_LDAP\" (Directory Service type is Open LDAP.)\n"
          },
          "domainName": {
            "type": "string",
            "description": "-(Required) Domain name for the Directory Service.\n"
          },
          "extId": {
            "type": "string",
            "description": "-(Optional) A globally unique identifier of an instance that is suitable for external consumption.\n"
          },
          "groupSearchType": {
            "type": "string",
            "description": "-(Optional) Group membership search type for the Directory Service. Supported values are: \"NON_RECURSIVE\" (Doesn't search recursively within groups.) and \"RECURSIVE\" (Searches recursively within groups.)\n"
          },
          "lastUpdatedTime": {
            "type": "string",
            "description": "- Last updated time of the Directory Service.\n"
          },
          "name": {
            "type": "string",
            "description": "-(Required) Name for the Directory Service.\n"
          },
          "openLdapConfigurations": {
            "type": "array",
            "items": {
              "$ref": "#/types/nutanix:index%2FDirectoryServicesV2OpenLdapConfiguration:DirectoryServicesV2OpenLdapConfiguration"
            },
            "description": "-(Optional) Configuration for OpenLDAP Directory Service.\n"
          },
          "secondaryUrls": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "description": "-(Optional) Secondary URL for the Directory Service.\n"
          },
          "serviceAccounts": {
            "type": "array",
            "items": {
              "$ref": "#/types/nutanix:index%2FDirectoryServicesV2ServiceAccount:DirectoryServicesV2ServiceAccount"
            },
            "description": "-(Required) Information of Service account to connect to the Directory Service.\n"
          },
          "url": {
            "type": "string",
            "description": "-(Required) URL for the Directory Service.\n"
          },
          "whiteListedGroups": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "description": "-(Optional) List of allowed User Groups for the Directory Service.\n"
          }
        },
        "type": "object"
      }
    },
    "nutanix:index/floatingIp:FloatingIp": {
      "description": "Provides Nutanix resource to create Floating IPs. \n\n## create Floating IP with External Subnet UUID\n\n<!--Start PulumiCodeChooser -->\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as nutanix from \"@pierskarsenbarg/nutanix\";\n\nconst fip1 = new nutanix.FloatingIp(\"fip1\", {externalSubnetReferenceUuid: \"{{ext_sub_uuid}}\"});\n```\n```python\nimport pulumi\nimport pulumi_nutanix as nutanix\n\nfip1 = nutanix.FloatingIp(\"fip1\", external_subnet_reference_uuid=\"{{ext_sub_uuid}}\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Nutanix = PiersKarsenbarg.Nutanix;\n\nreturn await Deployment.RunAsync(() => \n{\n    var fip1 = new Nutanix.FloatingIp(\"fip1\", new()\n    {\n        ExternalSubnetReferenceUuid = \"{{ext_sub_uuid}}\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pierskarsenbarg/pulumi-nutanix/sdk/go/nutanix\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := nutanix.NewFloatingIp(ctx, \"fip1\", &nutanix.FloatingIpArgs{\n\t\t\tExternalSubnetReferenceUuid: pulumi.String(\"{{ext_sub_uuid}}\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.nutanix.FloatingIp;\nimport com.pulumi.nutanix.FloatingIpArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var fip1 = new FloatingIp(\"fip1\", FloatingIpArgs.builder()\n            .externalSubnetReferenceUuid(\"{{ext_sub_uuid}}\")\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  fip1:\n    type: nutanix:FloatingIp\n    properties:\n      externalSubnetReferenceUuid: '{{ext_sub_uuid}}'\n```\n<!--End PulumiCodeChooser -->\n\n## create Floating IP with vpc name with external subnet name\n\n<!--Start PulumiCodeChooser -->\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as nutanix from \"@pierskarsenbarg/nutanix\";\n\nconst fip2 = new nutanix.FloatingIp(\"fip2\", {\n    externalSubnetReferenceName: \"{{ext_sub_name}}\",\n    vpcReferenceName: \"{{vpc_name}}\",\n    privateIp: \"{{ip_address}}\",\n});\n```\n```python\nimport pulumi\nimport pulumi_nutanix as nutanix\n\nfip2 = nutanix.FloatingIp(\"fip2\",\n    external_subnet_reference_name=\"{{ext_sub_name}}\",\n    vpc_reference_name=\"{{vpc_name}}\",\n    private_ip=\"{{ip_address}}\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Nutanix = PiersKarsenbarg.Nutanix;\n\nreturn await Deployment.RunAsync(() => \n{\n    var fip2 = new Nutanix.FloatingIp(\"fip2\", new()\n    {\n        ExternalSubnetReferenceName = \"{{ext_sub_name}}\",\n        VpcReferenceName = \"{{vpc_name}}\",\n        PrivateIp = \"{{ip_address}}\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pierskarsenbarg/pulumi-nutanix/sdk/go/nutanix\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := nutanix.NewFloatingIp(ctx, \"fip2\", &nutanix.FloatingIpArgs{\n\t\t\tExternalSubnetReferenceName: pulumi.String(\"{{ext_sub_name}}\"),\n\t\t\tVpcReferenceName:            pulumi.String(\"{{vpc_name}}\"),\n\t\t\tPrivateIp:                   pulumi.String(\"{{ip_address}}\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.nutanix.FloatingIp;\nimport com.pulumi.nutanix.FloatingIpArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var fip2 = new FloatingIp(\"fip2\", FloatingIpArgs.builder()\n            .externalSubnetReferenceName(\"{{ext_sub_name}}\")\n            .vpcReferenceName(\"{{vpc_name}}\")\n            .privateIp(\"{{ip_address}}\")\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  fip2:\n    type: nutanix:FloatingIp\n    properties:\n      externalSubnetReferenceName: '{{ext_sub_name}}'\n      vpcReferenceName: '{{vpc_name}}'\n      privateIp: '{{ip_address}}'\n```\n<!--End PulumiCodeChooser -->\n",
      "properties": {
        "apiVersion": {
          "type": "string",
          "description": "The version of the API.\n"
        },
        "externalSubnetReferenceName": {
          "type": "string",
          "description": "The reference to a subnet. Should not be used with \n{external_subnet_reference_uuid} .\n"
        },
        "externalSubnetReferenceUuid": {
          "type": "string",
          "description": "The reference to a subnet. Should not be used with {external_subnet_reference_name} .\n"
        },
        "metadata": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          },
          "description": "The<span pulumi-lang-nodejs=\" floatingIps \" pulumi-lang-dotnet=\" FloatingIps \" pulumi-lang-go=\" floatingIps \" pulumi-lang-python=\" floating_ips \" pulumi-lang-yaml=\" floatingIps \" pulumi-lang-java=\" floatingIps \"> floating_ips </span>kind metadata.\n"
        },
        "privateIp": {
          "type": "string",
          "description": "Private IP with which floating IP is associated. Should be used with<span pulumi-lang-nodejs=\" vpcReference \" pulumi-lang-dotnet=\" VpcReference \" pulumi-lang-go=\" vpcReference \" pulumi-lang-python=\" vpc_reference \" pulumi-lang-yaml=\" vpcReference \" pulumi-lang-java=\" vpcReference \"> vpc_reference </span>.\n"
        },
        "vmNicReferenceUuid": {
          "type": "string",
          "description": "The reference to a<span pulumi-lang-nodejs=\" vmNic \" pulumi-lang-dotnet=\" VmNic \" pulumi-lang-go=\" vmNic \" pulumi-lang-python=\" vm_nic \" pulumi-lang-yaml=\" vmNic \" pulumi-lang-java=\" vmNic \"> vm_nic </span>.\n"
        },
        "vpcReferenceName": {
          "type": "string",
          "description": "The reference to a vpc. Should not be used with {vpc_reference_uuid}.\n"
        },
        "vpcReferenceUuid": {
          "type": "string",
          "description": "The reference to a vpc. Should not be used with {vpc_reference_name}.\n"
        }
      },
      "type": "object",
      "required": [
        "apiVersion",
        "externalSubnetReferenceUuid",
        "metadata",
        "vpcReferenceUuid"
      ],
      "inputProperties": {
        "apiVersion": {
          "type": "string",
          "description": "The version of the API.\n"
        },
        "externalSubnetReferenceName": {
          "type": "string",
          "description": "The reference to a subnet. Should not be used with \n{external_subnet_reference_uuid} .\n",
          "willReplaceOnChanges": true
        },
        "externalSubnetReferenceUuid": {
          "type": "string",
          "description": "The reference to a subnet. Should not be used with {external_subnet_reference_name} .\n",
          "willReplaceOnChanges": true
        },
        "privateIp": {
          "type": "string",
          "description": "Private IP with which floating IP is associated. Should be used with<span pulumi-lang-nodejs=\" vpcReference \" pulumi-lang-dotnet=\" VpcReference \" pulumi-lang-go=\" vpcReference \" pulumi-lang-python=\" vpc_reference \" pulumi-lang-yaml=\" vpcReference \" pulumi-lang-java=\" vpcReference \"> vpc_reference </span>.\n"
        },
        "vmNicReferenceUuid": {
          "type": "string",
          "description": "The reference to a<span pulumi-lang-nodejs=\" vmNic \" pulumi-lang-dotnet=\" VmNic \" pulumi-lang-go=\" vmNic \" pulumi-lang-python=\" vm_nic \" pulumi-lang-yaml=\" vmNic \" pulumi-lang-java=\" vmNic \"> vm_nic </span>.\n"
        },
        "vpcReferenceName": {
          "type": "string",
          "description": "The reference to a vpc. Should not be used with {vpc_reference_uuid}.\n"
        },
        "vpcReferenceUuid": {
          "type": "string",
          "description": "The reference to a vpc. Should not be used with {vpc_reference_name}.\n"
        }
      },
      "stateInputs": {
        "description": "Input properties used for looking up and filtering FloatingIp resources.\n",
        "properties": {
          "apiVersion": {
            "type": "string",
            "description": "The version of the API.\n"
          },
          "externalSubnetReferenceName": {
            "type": "string",
            "description": "The reference to a subnet. Should not be used with \n{external_subnet_reference_uuid} .\n",
            "willReplaceOnChanges": true
          },
          "externalSubnetReferenceUuid": {
            "type": "string",
            "description": "The reference to a subnet. Should not be used with {external_subnet_reference_name} .\n",
            "willReplaceOnChanges": true
          },
          "metadata": {
            "type": "object",
            "additionalProperties": {
              "type": "string"
            },
            "description": "The<span pulumi-lang-nodejs=\" floatingIps \" pulumi-lang-dotnet=\" FloatingIps \" pulumi-lang-go=\" floatingIps \" pulumi-lang-python=\" floating_ips \" pulumi-lang-yaml=\" floatingIps \" pulumi-lang-java=\" floatingIps \"> floating_ips </span>kind metadata.\n"
          },
          "privateIp": {
            "type": "string",
            "description": "Private IP with which floating IP is associated. Should be used with<span pulumi-lang-nodejs=\" vpcReference \" pulumi-lang-dotnet=\" VpcReference \" pulumi-lang-go=\" vpcReference \" pulumi-lang-python=\" vpc_reference \" pulumi-lang-yaml=\" vpcReference \" pulumi-lang-java=\" vpcReference \"> vpc_reference </span>.\n"
          },
          "vmNicReferenceUuid": {
            "type": "string",
            "description": "The reference to a<span pulumi-lang-nodejs=\" vmNic \" pulumi-lang-dotnet=\" VmNic \" pulumi-lang-go=\" vmNic \" pulumi-lang-python=\" vm_nic \" pulumi-lang-yaml=\" vmNic \" pulumi-lang-java=\" vmNic \"> vm_nic </span>.\n"
          },
          "vpcReferenceName": {
            "type": "string",
            "description": "The reference to a vpc. Should not be used with {vpc_reference_uuid}.\n"
          },
          "vpcReferenceUuid": {
            "type": "string",
            "description": "The reference to a vpc. Should not be used with {vpc_reference_name}.\n"
          }
        },
        "type": "object"
      }
    },
    "nutanix:index/floatingIpV2:FloatingIpV2": {
      "description": "Provides Nutanix resource to create Floating IPs.\n\n##  Example1 :  create Floating IP with External Subnet\n\n<!--Start PulumiCodeChooser -->\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as nutanix from \"@pierskarsenbarg/nutanix\";\n\n// create Floating IP with External Subnet UUID\nconst fip_ext_subnet = new nutanix.FloatingIpV2(\"fip-ext-subnet\", {\n    name: \"example-fip\",\n    description: \"example fip  description\",\n    externalSubnetReference: \"ba250e3e-1db1-4950-917f-a9e2ea35b8e3\",\n});\n```\n```python\nimport pulumi\nimport pulumi_nutanix as nutanix\n\n# create Floating IP with External Subnet UUID\nfip_ext_subnet = nutanix.FloatingIpV2(\"fip-ext-subnet\",\n    name=\"example-fip\",\n    description=\"example fip  description\",\n    external_subnet_reference=\"ba250e3e-1db1-4950-917f-a9e2ea35b8e3\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Nutanix = PiersKarsenbarg.Nutanix;\n\nreturn await Deployment.RunAsync(() => \n{\n    // create Floating IP with External Subnet UUID\n    var fip_ext_subnet = new Nutanix.FloatingIpV2(\"fip-ext-subnet\", new()\n    {\n        Name = \"example-fip\",\n        Description = \"example fip  description\",\n        ExternalSubnetReference = \"ba250e3e-1db1-4950-917f-a9e2ea35b8e3\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pierskarsenbarg/pulumi-nutanix/sdk/go/nutanix\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t// create Floating IP with External Subnet UUID\n\t\t_, err := nutanix.NewFloatingIpV2(ctx, \"fip-ext-subnet\", &nutanix.FloatingIpV2Args{\n\t\t\tName:                    pulumi.String(\"example-fip\"),\n\t\t\tDescription:             pulumi.String(\"example fip  description\"),\n\t\t\tExternalSubnetReference: pulumi.String(\"ba250e3e-1db1-4950-917f-a9e2ea35b8e3\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.nutanix.FloatingIpV2;\nimport com.pulumi.nutanix.FloatingIpV2Args;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        // create Floating IP with External Subnet UUID\n        var fip_ext_subnet = new FloatingIpV2(\"fip-ext-subnet\", FloatingIpV2Args.builder()\n            .name(\"example-fip\")\n            .description(\"example fip  description\")\n            .externalSubnetReference(\"ba250e3e-1db1-4950-917f-a9e2ea35b8e3\")\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  # create Floating IP with External Subnet UUID\n  fip-ext-subnet:\n    type: nutanix:FloatingIpV2\n    properties:\n      name: example-fip\n      description: example fip  description\n      externalSubnetReference: ba250e3e-1db1-4950-917f-a9e2ea35b8e3\n```\n<!--End PulumiCodeChooser -->\n\n## Example2 :  create Floating IP with External Subnet with vm association\n\n<!--Start PulumiCodeChooser -->\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as nutanix from \"@pierskarsenbarg/nutanix\";\n\nconst fip_ext_subnet_vm = new nutanix.FloatingIpV2(\"fip-ext-subnet-vm\", {\n    name: \"example-fip\",\n    description: \"example fip  description\",\n    externalSubnetReference: \"ba250e3e-1db1-4950-917f-a9e2ea35b8e3\",\n    associations: [{\n        vmNicAssociations: [{\n            vmNicReference: \"31e4b3b1-4b3b-4b3b-4b3b-4b3b4b3b4b3b\",\n        }],\n    }],\n});\n```\n```python\nimport pulumi\nimport pulumi_nutanix as nutanix\n\nfip_ext_subnet_vm = nutanix.FloatingIpV2(\"fip-ext-subnet-vm\",\n    name=\"example-fip\",\n    description=\"example fip  description\",\n    external_subnet_reference=\"ba250e3e-1db1-4950-917f-a9e2ea35b8e3\",\n    associations=[{\n        \"vm_nic_associations\": [{\n            \"vm_nic_reference\": \"31e4b3b1-4b3b-4b3b-4b3b-4b3b4b3b4b3b\",\n        }],\n    }])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Nutanix = PiersKarsenbarg.Nutanix;\n\nreturn await Deployment.RunAsync(() => \n{\n    var fip_ext_subnet_vm = new Nutanix.FloatingIpV2(\"fip-ext-subnet-vm\", new()\n    {\n        Name = \"example-fip\",\n        Description = \"example fip  description\",\n        ExternalSubnetReference = \"ba250e3e-1db1-4950-917f-a9e2ea35b8e3\",\n        Associations = new[]\n        {\n            new Nutanix.Inputs.FloatingIpV2AssociationArgs\n            {\n                VmNicAssociations = new[]\n                {\n                    new Nutanix.Inputs.FloatingIpV2AssociationVmNicAssociationArgs\n                    {\n                        VmNicReference = \"31e4b3b1-4b3b-4b3b-4b3b-4b3b4b3b4b3b\",\n                    },\n                },\n            },\n        },\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pierskarsenbarg/pulumi-nutanix/sdk/go/nutanix\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := nutanix.NewFloatingIpV2(ctx, \"fip-ext-subnet-vm\", &nutanix.FloatingIpV2Args{\n\t\t\tName:                    pulumi.String(\"example-fip\"),\n\t\t\tDescription:             pulumi.String(\"example fip  description\"),\n\t\t\tExternalSubnetReference: pulumi.String(\"ba250e3e-1db1-4950-917f-a9e2ea35b8e3\"),\n\t\t\tAssociations: nutanix.FloatingIpV2AssociationArray{\n\t\t\t\t&nutanix.FloatingIpV2AssociationArgs{\n\t\t\t\t\tVmNicAssociations: nutanix.FloatingIpV2AssociationVmNicAssociationArray{\n\t\t\t\t\t\t&nutanix.FloatingIpV2AssociationVmNicAssociationArgs{\n\t\t\t\t\t\t\tVmNicReference: pulumi.String(\"31e4b3b1-4b3b-4b3b-4b3b-4b3b4b3b4b3b\"),\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.nutanix.FloatingIpV2;\nimport com.pulumi.nutanix.FloatingIpV2Args;\nimport com.pulumi.nutanix.inputs.FloatingIpV2AssociationArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var fip_ext_subnet_vm = new FloatingIpV2(\"fip-ext-subnet-vm\", FloatingIpV2Args.builder()\n            .name(\"example-fip\")\n            .description(\"example fip  description\")\n            .externalSubnetReference(\"ba250e3e-1db1-4950-917f-a9e2ea35b8e3\")\n            .associations(FloatingIpV2AssociationArgs.builder()\n                .vmNicAssociations(FloatingIpV2AssociationVmNicAssociationArgs.builder()\n                    .vmNicReference(\"31e4b3b1-4b3b-4b3b-4b3b-4b3b4b3b4b3b\")\n                    .build())\n                .build())\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  fip-ext-subnet-vm:\n    type: nutanix:FloatingIpV2\n    properties:\n      name: example-fip\n      description: example fip  description\n      externalSubnetReference: ba250e3e-1db1-4950-917f-a9e2ea35b8e3\n      associations:\n        - vmNicAssociations:\n            - vmNicReference: 31e4b3b1-4b3b-4b3b-4b3b-4b3b4b3b4b3b\n```\n<!--End PulumiCodeChooser -->\n",
      "properties": {
        "associationStatus": {
          "type": "string",
          "description": "Association status of floating IP.\n"
        },
        "associations": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FFloatingIpV2Association:FloatingIpV2Association"
          },
          "description": "Association of the Floating IP with either NIC or Private IP\n"
        },
        "description": {
          "type": "string",
          "description": "Description for the Floating IP.\n"
        },
        "extId": {
          "type": "string"
        },
        "externalSubnetReference": {
          "type": "string",
          "description": "External subnet reference for the Floating IP to be allocated in on-prem only.\n"
        },
        "externalSubnets": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FFloatingIpV2ExternalSubnet:FloatingIpV2ExternalSubnet"
          },
          "description": "Networking common base object\n"
        },
        "floatingIpValue": {
          "type": "string"
        },
        "floatingIps": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FFloatingIpV2FloatingIp:FloatingIpV2FloatingIp"
          },
          "description": "Floating IP address.\n"
        },
        "links": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FFloatingIpV2Link:FloatingIpV2Link"
          },
          "description": "A HATEOAS style link for the response. Each link contains a user-friendly name identifying the link and an address for retrieving the particular resource.\n"
        },
        "loadBalancerSessionReference": {
          "type": "string"
        },
        "metadatas": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FFloatingIpV2Metadata:FloatingIpV2Metadata"
          },
          "description": "Metadata associated with this resource.\n"
        },
        "name": {
          "type": "string",
          "description": "Name of the floating IP.\n"
        },
        "privateIp": {
          "type": "string"
        },
        "tenantId": {
          "type": "string",
          "description": "A globally unique identifier that represents the tenant that owns this entity.\n"
        },
        "vmNicReference": {
          "type": "string",
          "description": "VM NIC reference.\n"
        },
        "vmNics": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FFloatingIpV2VmNic:FloatingIpV2VmNic"
          },
          "description": "Virtual NIC for projections\n"
        },
        "vpcReference": {
          "type": "string",
          "description": "VPC reference UUID\n"
        },
        "vpcs": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FFloatingIpV2Vpc:FloatingIpV2Vpc"
          },
          "description": "Networking common base object\n"
        }
      },
      "type": "object",
      "required": [
        "associationStatus",
        "extId",
        "externalSubnets",
        "floatingIpValue",
        "floatingIps",
        "links",
        "metadatas",
        "name",
        "privateIp",
        "tenantId",
        "vmNicReference",
        "vmNics",
        "vpcReference",
        "vpcs"
      ],
      "inputProperties": {
        "associations": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FFloatingIpV2Association:FloatingIpV2Association"
          },
          "description": "Association of the Floating IP with either NIC or Private IP\n"
        },
        "description": {
          "type": "string",
          "description": "Description for the Floating IP.\n"
        },
        "extId": {
          "type": "string"
        },
        "externalSubnetReference": {
          "type": "string",
          "description": "External subnet reference for the Floating IP to be allocated in on-prem only.\n"
        },
        "externalSubnets": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FFloatingIpV2ExternalSubnet:FloatingIpV2ExternalSubnet"
          },
          "description": "Networking common base object\n"
        },
        "floatingIps": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FFloatingIpV2FloatingIp:FloatingIpV2FloatingIp"
          },
          "description": "Floating IP address.\n"
        },
        "loadBalancerSessionReference": {
          "type": "string"
        },
        "name": {
          "type": "string",
          "description": "Name of the floating IP.\n"
        },
        "vmNicReference": {
          "type": "string",
          "description": "VM NIC reference.\n"
        },
        "vmNics": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FFloatingIpV2VmNic:FloatingIpV2VmNic"
          },
          "description": "Virtual NIC for projections\n"
        },
        "vpcReference": {
          "type": "string",
          "description": "VPC reference UUID\n"
        },
        "vpcs": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FFloatingIpV2Vpc:FloatingIpV2Vpc"
          },
          "description": "Networking common base object\n"
        }
      },
      "stateInputs": {
        "description": "Input properties used for looking up and filtering FloatingIpV2 resources.\n",
        "properties": {
          "associationStatus": {
            "type": "string",
            "description": "Association status of floating IP.\n"
          },
          "associations": {
            "type": "array",
            "items": {
              "$ref": "#/types/nutanix:index%2FFloatingIpV2Association:FloatingIpV2Association"
            },
            "description": "Association of the Floating IP with either NIC or Private IP\n"
          },
          "description": {
            "type": "string",
            "description": "Description for the Floating IP.\n"
          },
          "extId": {
            "type": "string"
          },
          "externalSubnetReference": {
            "type": "string",
            "description": "External subnet reference for the Floating IP to be allocated in on-prem only.\n"
          },
          "externalSubnets": {
            "type": "array",
            "items": {
              "$ref": "#/types/nutanix:index%2FFloatingIpV2ExternalSubnet:FloatingIpV2ExternalSubnet"
            },
            "description": "Networking common base object\n"
          },
          "floatingIpValue": {
            "type": "string"
          },
          "floatingIps": {
            "type": "array",
            "items": {
              "$ref": "#/types/nutanix:index%2FFloatingIpV2FloatingIp:FloatingIpV2FloatingIp"
            },
            "description": "Floating IP address.\n"
          },
          "links": {
            "type": "array",
            "items": {
              "$ref": "#/types/nutanix:index%2FFloatingIpV2Link:FloatingIpV2Link"
            },
            "description": "A HATEOAS style link for the response. Each link contains a user-friendly name identifying the link and an address for retrieving the particular resource.\n"
          },
          "loadBalancerSessionReference": {
            "type": "string"
          },
          "metadatas": {
            "type": "array",
            "items": {
              "$ref": "#/types/nutanix:index%2FFloatingIpV2Metadata:FloatingIpV2Metadata"
            },
            "description": "Metadata associated with this resource.\n"
          },
          "name": {
            "type": "string",
            "description": "Name of the floating IP.\n"
          },
          "privateIp": {
            "type": "string"
          },
          "tenantId": {
            "type": "string",
            "description": "A globally unique identifier that represents the tenant that owns this entity.\n"
          },
          "vmNicReference": {
            "type": "string",
            "description": "VM NIC reference.\n"
          },
          "vmNics": {
            "type": "array",
            "items": {
              "$ref": "#/types/nutanix:index%2FFloatingIpV2VmNic:FloatingIpV2VmNic"
            },
            "description": "Virtual NIC for projections\n"
          },
          "vpcReference": {
            "type": "string",
            "description": "VPC reference UUID\n"
          },
          "vpcs": {
            "type": "array",
            "items": {
              "$ref": "#/types/nutanix:index%2FFloatingIpV2Vpc:FloatingIpV2Vpc"
            },
            "description": "Networking common base object\n"
          }
        },
        "type": "object"
      }
    },
    "nutanix:index/foundationCentralApiKeys:FoundationCentralApiKeys": {
      "description": "Provides a resource to create a new API key for nodes registration with Foundation Central. \n\n## Example Usage\n\n<!--Start PulumiCodeChooser -->\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as nutanix from \"@pierskarsenbarg/nutanix\";\n\nconst newApiKey = new nutanix.FoundationCentralApiKeys(\"new_api_key\", {alias: \"<NAME-FOR-API-KEY>\"});\n```\n```python\nimport pulumi\nimport pulumi_nutanix as nutanix\n\nnew_api_key = nutanix.FoundationCentralApiKeys(\"new_api_key\", alias=\"<NAME-FOR-API-KEY>\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Nutanix = PiersKarsenbarg.Nutanix;\n\nreturn await Deployment.RunAsync(() => \n{\n    var newApiKey = new Nutanix.FoundationCentralApiKeys(\"new_api_key\", new()\n    {\n        Alias = \"<NAME-FOR-API-KEY>\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pierskarsenbarg/pulumi-nutanix/sdk/go/nutanix\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := nutanix.NewFoundationCentralApiKeys(ctx, \"new_api_key\", &nutanix.FoundationCentralApiKeysArgs{\n\t\t\tAlias: pulumi.String(\"<NAME-FOR-API-KEY>\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.nutanix.FoundationCentralApiKeys;\nimport com.pulumi.nutanix.FoundationCentralApiKeysArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var newApiKey = new FoundationCentralApiKeys(\"newApiKey\", FoundationCentralApiKeysArgs.builder()\n            .alias(\"<NAME-FOR-API-KEY>\")\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  newApiKey:\n    type: nutanix:FoundationCentralApiKeys\n    name: new_api_key\n    properties:\n      alias: <NAME-FOR-API-KEY>\n```\n<!--End PulumiCodeChooser -->\n",
      "properties": {
        "alias": {
          "type": "string",
          "description": "- (Required) Alias for the api key to be created.\n"
        },
        "apiKey": {
          "type": "string",
          "description": "Api key in string format.\n"
        },
        "createdTimestamp": {
          "type": "string",
          "description": "Time when the api key was created.\n"
        },
        "currentTime": {
          "type": "string",
          "description": "Current time of Foundation Central.\n"
        },
        "keyUuid": {
          "type": "string",
          "description": "UUID of the api key.\n"
        }
      },
      "type": "object",
      "required": [
        "alias",
        "apiKey",
        "createdTimestamp",
        "currentTime",
        "keyUuid"
      ],
      "inputProperties": {
        "alias": {
          "type": "string",
          "description": "- (Required) Alias for the api key to be created.\n",
          "willReplaceOnChanges": true
        }
      },
      "requiredInputs": [
        "alias"
      ],
      "stateInputs": {
        "description": "Input properties used for looking up and filtering FoundationCentralApiKeys resources.\n",
        "properties": {
          "alias": {
            "type": "string",
            "description": "- (Required) Alias for the api key to be created.\n",
            "willReplaceOnChanges": true
          },
          "apiKey": {
            "type": "string",
            "description": "Api key in string format.\n"
          },
          "createdTimestamp": {
            "type": "string",
            "description": "Time when the api key was created.\n"
          },
          "currentTime": {
            "type": "string",
            "description": "Current time of Foundation Central.\n"
          },
          "keyUuid": {
            "type": "string",
            "description": "UUID of the api key.\n"
          }
        },
        "type": "object"
      }
    },
    "nutanix:index/foundationCentralImageCluster:FoundationCentralImageCluster": {
      "properties": {
        "aosPackageSha256sum": {
          "type": "string",
          "description": "Sha256sum of AOS package.\n"
        },
        "aosPackageUrl": {
          "type": "string",
          "description": "URL to download AOS package. Required only if imaging is needed.\n"
        },
        "archived": {
          "type": "boolean"
        },
        "clusterExternalIp": {
          "type": "string",
          "description": "External management ip of the cluster.\n"
        },
        "clusterName": {
          "type": "string",
          "description": "Name of the cluster.\n"
        },
        "clusterSize": {
          "type": "integer",
          "description": "Number of nodes in the cluster.\n"
        },
        "clusterStatus": {
          "$ref": "#/types/nutanix:index%2FFoundationCentralImageClusterClusterStatus:FoundationCentralImageClusterClusterStatus"
        },
        "commonNetworkSettings": {
          "$ref": "#/types/nutanix:index%2FFoundationCentralImageClusterCommonNetworkSettings:FoundationCentralImageClusterCommonNetworkSettings",
          "description": "Common network settings across the nodes in the cluster.\n"
        },
        "createdTimestamp": {
          "type": "string"
        },
        "currentTime": {
          "type": "string"
        },
        "destroyed": {
          "type": "boolean"
        },
        "foundationInitConfigs": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FFoundationCentralImageClusterFoundationInitConfig:FoundationCentralImageClusterFoundationInitConfig"
          }
        },
        "foundationInitNodeUuid": {
          "type": "string"
        },
        "hypervisorIsoDetails": {
          "$ref": "#/types/nutanix:index%2FFoundationCentralImageClusterHypervisorIsoDetails:FoundationCentralImageClusterHypervisorIsoDetails",
          "description": "Details of the hypervisor iso. (Deprecated)\n"
        },
        "hypervisorIsos": {
          "$ref": "#/types/nutanix:index%2FFoundationCentralImageClusterHypervisorIsos:FoundationCentralImageClusterHypervisorIsos",
          "description": "Details of the hypervisor iso. Required for deploying node with AOS >= 6.8\n"
        },
        "imageClusterUuid": {
          "type": "string"
        },
        "imagedClusterUuid": {
          "type": "string",
          "description": "Unique id of the cluster.\n"
        },
        "imagedNodeUuidLists": {
          "type": "array",
          "items": {
            "type": "string"
          }
        },
        "nodeLists": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FFoundationCentralImageClusterNodeList:FoundationCentralImageClusterNodeList"
          }
        },
        "redundancyFactor": {
          "type": "integer",
          "description": "Redundancy factor of the cluster.\n"
        },
        "skipClusterCreation": {
          "type": "boolean"
        },
        "storageNodeCount": {
          "type": "integer",
          "description": "Number of storage only nodes in the cluster. AHV iso for storage node will be taken from aos package.\n"
        },
        "timezone": {
          "type": "string",
          "description": "Timezone to be set on the cluster.\n"
        },
        "workflowType": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "aosPackageSha256sum",
        "aosPackageUrl",
        "archived",
        "clusterExternalIp",
        "clusterName",
        "clusterSize",
        "clusterStatus",
        "commonNetworkSettings",
        "createdTimestamp",
        "currentTime",
        "destroyed",
        "foundationInitConfigs",
        "foundationInitNodeUuid",
        "hypervisorIsoDetails",
        "imageClusterUuid",
        "imagedClusterUuid",
        "imagedNodeUuidLists",
        "nodeLists",
        "redundancyFactor",
        "storageNodeCount",
        "timezone",
        "workflowType"
      ],
      "inputProperties": {
        "aosPackageSha256sum": {
          "type": "string",
          "description": "Sha256sum of AOS package.\n"
        },
        "aosPackageUrl": {
          "type": "string",
          "description": "URL to download AOS package. Required only if imaging is needed.\n"
        },
        "clusterExternalIp": {
          "type": "string",
          "description": "External management ip of the cluster.\n"
        },
        "clusterName": {
          "type": "string",
          "description": "Name of the cluster.\n"
        },
        "clusterSize": {
          "type": "integer",
          "description": "Number of nodes in the cluster.\n"
        },
        "clusterStatus": {
          "$ref": "#/types/nutanix:index%2FFoundationCentralImageClusterClusterStatus:FoundationCentralImageClusterClusterStatus"
        },
        "commonNetworkSettings": {
          "$ref": "#/types/nutanix:index%2FFoundationCentralImageClusterCommonNetworkSettings:FoundationCentralImageClusterCommonNetworkSettings",
          "description": "Common network settings across the nodes in the cluster.\n"
        },
        "hypervisorIsoDetails": {
          "$ref": "#/types/nutanix:index%2FFoundationCentralImageClusterHypervisorIsoDetails:FoundationCentralImageClusterHypervisorIsoDetails",
          "description": "Details of the hypervisor iso. (Deprecated)\n"
        },
        "hypervisorIsos": {
          "$ref": "#/types/nutanix:index%2FFoundationCentralImageClusterHypervisorIsos:FoundationCentralImageClusterHypervisorIsos",
          "description": "Details of the hypervisor iso. Required for deploying node with AOS >= 6.8\n"
        },
        "imageClusterUuid": {
          "type": "string"
        },
        "nodeLists": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FFoundationCentralImageClusterNodeList:FoundationCentralImageClusterNodeList"
          }
        },
        "redundancyFactor": {
          "type": "integer",
          "description": "Redundancy factor of the cluster.\n"
        },
        "skipClusterCreation": {
          "type": "boolean"
        },
        "storageNodeCount": {
          "type": "integer",
          "description": "Number of storage only nodes in the cluster. AHV iso for storage node will be taken from aos package.\n"
        },
        "timezone": {
          "type": "string",
          "description": "Timezone to be set on the cluster.\n"
        }
      },
      "stateInputs": {
        "description": "Input properties used for looking up and filtering FoundationCentralImageCluster resources.\n",
        "properties": {
          "aosPackageSha256sum": {
            "type": "string",
            "description": "Sha256sum of AOS package.\n"
          },
          "aosPackageUrl": {
            "type": "string",
            "description": "URL to download AOS package. Required only if imaging is needed.\n"
          },
          "archived": {
            "type": "boolean"
          },
          "clusterExternalIp": {
            "type": "string",
            "description": "External management ip of the cluster.\n"
          },
          "clusterName": {
            "type": "string",
            "description": "Name of the cluster.\n"
          },
          "clusterSize": {
            "type": "integer",
            "description": "Number of nodes in the cluster.\n"
          },
          "clusterStatus": {
            "$ref": "#/types/nutanix:index%2FFoundationCentralImageClusterClusterStatus:FoundationCentralImageClusterClusterStatus"
          },
          "commonNetworkSettings": {
            "$ref": "#/types/nutanix:index%2FFoundationCentralImageClusterCommonNetworkSettings:FoundationCentralImageClusterCommonNetworkSettings",
            "description": "Common network settings across the nodes in the cluster.\n"
          },
          "createdTimestamp": {
            "type": "string"
          },
          "currentTime": {
            "type": "string"
          },
          "destroyed": {
            "type": "boolean"
          },
          "foundationInitConfigs": {
            "type": "array",
            "items": {
              "$ref": "#/types/nutanix:index%2FFoundationCentralImageClusterFoundationInitConfig:FoundationCentralImageClusterFoundationInitConfig"
            }
          },
          "foundationInitNodeUuid": {
            "type": "string"
          },
          "hypervisorIsoDetails": {
            "$ref": "#/types/nutanix:index%2FFoundationCentralImageClusterHypervisorIsoDetails:FoundationCentralImageClusterHypervisorIsoDetails",
            "description": "Details of the hypervisor iso. (Deprecated)\n"
          },
          "hypervisorIsos": {
            "$ref": "#/types/nutanix:index%2FFoundationCentralImageClusterHypervisorIsos:FoundationCentralImageClusterHypervisorIsos",
            "description": "Details of the hypervisor iso. Required for deploying node with AOS >= 6.8\n"
          },
          "imageClusterUuid": {
            "type": "string"
          },
          "imagedClusterUuid": {
            "type": "string",
            "description": "Unique id of the cluster.\n"
          },
          "imagedNodeUuidLists": {
            "type": "array",
            "items": {
              "type": "string"
            }
          },
          "nodeLists": {
            "type": "array",
            "items": {
              "$ref": "#/types/nutanix:index%2FFoundationCentralImageClusterNodeList:FoundationCentralImageClusterNodeList"
            }
          },
          "redundancyFactor": {
            "type": "integer",
            "description": "Redundancy factor of the cluster.\n"
          },
          "skipClusterCreation": {
            "type": "boolean"
          },
          "storageNodeCount": {
            "type": "integer",
            "description": "Number of storage only nodes in the cluster. AHV iso for storage node will be taken from aos package.\n"
          },
          "timezone": {
            "type": "string",
            "description": "Timezone to be set on the cluster.\n"
          },
          "workflowType": {
            "type": "string"
          }
        },
        "type": "object"
      }
    },
    "nutanix:index/foundationImage:FoundationImage": {
      "description": "Uploads hypervisor or AOS image to foundation.\n\n## Example Usage\n\n<!--Start PulumiCodeChooser -->\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as nutanix from \"@pierskarsenbarg/nutanix\";\n\nconst nos_image = new nutanix.FoundationImage(\"nos-image\", {\n    source: \"../../../files/nutanix_installer_x86_64.tar\",\n    filename: \"nos_image.tar\",\n    installerType: \"nos\",\n});\nconst hypervisor_image = new nutanix.FoundationImage(\"hypervisor-image\", {\n    source: \"../../../files/VMware-Installer.x86_64.iso\",\n    filename: \"esx_image.iso\",\n    installerType: \"esx\",\n});\n```\n```python\nimport pulumi\nimport pulumi_nutanix as nutanix\n\nnos_image = nutanix.FoundationImage(\"nos-image\",\n    source=\"../../../files/nutanix_installer_x86_64.tar\",\n    filename=\"nos_image.tar\",\n    installer_type=\"nos\")\nhypervisor_image = nutanix.FoundationImage(\"hypervisor-image\",\n    source=\"../../../files/VMware-Installer.x86_64.iso\",\n    filename=\"esx_image.iso\",\n    installer_type=\"esx\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Nutanix = PiersKarsenbarg.Nutanix;\n\nreturn await Deployment.RunAsync(() => \n{\n    var nos_image = new Nutanix.FoundationImage(\"nos-image\", new()\n    {\n        Source = \"../../../files/nutanix_installer_x86_64.tar\",\n        Filename = \"nos_image.tar\",\n        InstallerType = \"nos\",\n    });\n\n    var hypervisor_image = new Nutanix.FoundationImage(\"hypervisor-image\", new()\n    {\n        Source = \"../../../files/VMware-Installer.x86_64.iso\",\n        Filename = \"esx_image.iso\",\n        InstallerType = \"esx\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pierskarsenbarg/pulumi-nutanix/sdk/go/nutanix\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := nutanix.NewFoundationImage(ctx, \"nos-image\", &nutanix.FoundationImageArgs{\n\t\t\tSource:        pulumi.String(\"../../../files/nutanix_installer_x86_64.tar\"),\n\t\t\tFilename:      pulumi.String(\"nos_image.tar\"),\n\t\t\tInstallerType: pulumi.String(\"nos\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = nutanix.NewFoundationImage(ctx, \"hypervisor-image\", &nutanix.FoundationImageArgs{\n\t\t\tSource:        pulumi.String(\"../../../files/VMware-Installer.x86_64.iso\"),\n\t\t\tFilename:      pulumi.String(\"esx_image.iso\"),\n\t\t\tInstallerType: pulumi.String(\"esx\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.nutanix.FoundationImage;\nimport com.pulumi.nutanix.FoundationImageArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var nos_image = new FoundationImage(\"nos-image\", FoundationImageArgs.builder()\n            .source(\"../../../files/nutanix_installer_x86_64.tar\")\n            .filename(\"nos_image.tar\")\n            .installerType(\"nos\")\n            .build());\n\n        var hypervisor_image = new FoundationImage(\"hypervisor-image\", FoundationImageArgs.builder()\n            .source(\"../../../files/VMware-Installer.x86_64.iso\")\n            .filename(\"esx_image.iso\")\n            .installerType(\"esx\")\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  nos-image:\n    type: nutanix:FoundationImage\n    properties:\n      source: ../../../files/nutanix_installer_x86_64.tar\n      filename: nos_image.tar\n      installerType: nos\n  hypervisor-image:\n    type: nutanix:FoundationImage\n    properties:\n      source: ../../../files/VMware-Installer.x86_64.iso\n      filename: esx_image.iso\n      installerType: esx\n```\n<!--End PulumiCodeChooser -->\n\n## lifecycle\n\n* `Update` : - Resource will trigger new resource create call for any kind of update in resource config and delete existing image from foundation vm.\n\nSee detailed information in [Nutanix Foundation Image](https://www.nutanix.dev/api_references/foundation/#/b3A6MjIyMjM0MDQ-upload-hypervisor-or-aos-image-to-foundation).\n",
      "properties": {
        "filename": {
          "type": "string",
          "description": "- (Required) Name of installer file to be kept in foundation vm.\n"
        },
        "inWhitelist": {
          "type": "boolean",
          "description": "- If hypervisor ISO is in whitelist.\n"
        },
        "installerType": {
          "type": "string",
          "description": "- (Required) One of \"kvm\", \"esx\", \"hyperv\", \"xen\", or \"nos\".\n"
        },
        "md5sum": {
          "type": "string",
          "description": "- md5sum of the ISO.\n"
        },
        "name": {
          "type": "string",
          "description": "- file location in foundation vm\n"
        },
        "source": {
          "type": "string",
          "description": "- (Required) Complete path to the file in machine where the .tf  files runs.\n"
        }
      },
      "type": "object",
      "required": [
        "filename",
        "inWhitelist",
        "installerType",
        "md5sum",
        "name",
        "source"
      ],
      "inputProperties": {
        "filename": {
          "type": "string",
          "description": "- (Required) Name of installer file to be kept in foundation vm.\n",
          "willReplaceOnChanges": true
        },
        "installerType": {
          "type": "string",
          "description": "- (Required) One of \"kvm\", \"esx\", \"hyperv\", \"xen\", or \"nos\".\n",
          "willReplaceOnChanges": true
        },
        "source": {
          "type": "string",
          "description": "- (Required) Complete path to the file in machine where the .tf  files runs.\n",
          "willReplaceOnChanges": true
        }
      },
      "requiredInputs": [
        "filename",
        "installerType",
        "source"
      ],
      "stateInputs": {
        "description": "Input properties used for looking up and filtering FoundationImage resources.\n",
        "properties": {
          "filename": {
            "type": "string",
            "description": "- (Required) Name of installer file to be kept in foundation vm.\n",
            "willReplaceOnChanges": true
          },
          "inWhitelist": {
            "type": "boolean",
            "description": "- If hypervisor ISO is in whitelist.\n"
          },
          "installerType": {
            "type": "string",
            "description": "- (Required) One of \"kvm\", \"esx\", \"hyperv\", \"xen\", or \"nos\".\n",
            "willReplaceOnChanges": true
          },
          "md5sum": {
            "type": "string",
            "description": "- md5sum of the ISO.\n"
          },
          "name": {
            "type": "string",
            "description": "- file location in foundation vm\n"
          },
          "source": {
            "type": "string",
            "description": "- (Required) Complete path to the file in machine where the .tf  files runs.\n",
            "willReplaceOnChanges": true
          }
        },
        "type": "object"
      }
    },
    "nutanix:index/foundationImageNodes:FoundationImageNodes": {
      "properties": {
        "blocks": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FFoundationImageNodesBlock:FoundationImageNodesBlock"
          }
        },
        "clusterUrls": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FFoundationImageNodesClusterUrl:FoundationImageNodesClusterUrl"
          },
          "description": "- list containing cluster name and cluster urls for created clusters in current session\n* `cluster_urls.#.cluster_name` :-<span pulumi-lang-nodejs=\" clusterName\n\" pulumi-lang-dotnet=\" ClusterName\n\" pulumi-lang-go=\" clusterName\n\" pulumi-lang-python=\" cluster_name\n\" pulumi-lang-yaml=\" clusterName\n\" pulumi-lang-java=\" clusterName\n\"> cluster_name\n</span>* `cluster_urls.#.cluster_url` :- url to access the cluster login\n"
        },
        "clusters": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FFoundationImageNodesCluster:FoundationImageNodesCluster"
          }
        },
        "cvmGateway": {
          "type": "string",
          "description": "- (Required) CVM gateway.\n"
        },
        "cvmNetmask": {
          "type": "string",
          "description": "- (Required) CVM netmask.\n"
        },
        "eosMetadata": {
          "$ref": "#/types/nutanix:index%2FFoundationImageNodesEosMetadata:FoundationImageNodesEosMetadata",
          "description": "- Contains user data from Eos portal.\n"
        },
        "fcSettings": {
          "$ref": "#/types/nutanix:index%2FFoundationImageNodesFcSettings:FoundationImageNodesFcSettings",
          "description": "- Foundation Central specific settings.\n"
        },
        "hypervExternalVnic": {
          "type": "string",
          "description": "- Hyperv External virtual network adapter name.\n"
        },
        "hypervExternalVswitch": {
          "type": "string",
          "description": "- Hyperv External vswitch name.\n"
        },
        "hypervProductKey": {
          "type": "string",
          "description": "- Hyperv product key.\n"
        },
        "hypervSku": {
          "type": "boolean",
          "description": "- Hyperv SKU.\n"
        },
        "hypervisorGateway": {
          "type": "string",
          "description": "- (Required) Hypervisor gateway.\n"
        },
        "hypervisorIso": {
          "$ref": "#/types/nutanix:index%2FFoundationImageNodesHypervisorIso:FoundationImageNodesHypervisorIso",
          "description": "- Hypervisor ISO.\n"
        },
        "hypervisorNameserver": {
          "type": "string"
        },
        "hypervisorNetmask": {
          "type": "string",
          "description": "- (Required) Hypervisor netmask.\n"
        },
        "hypervisorPassword": {
          "type": "string",
          "description": "- Hypervisor password.\n"
        },
        "installScript": {
          "type": "string",
          "description": "- install script.\n"
        },
        "ipmiGateway": {
          "type": "string",
          "description": "- (Required incase using IPMI based imaging either here or inside node spec) default IPMI gateway\n"
        },
        "ipmiNetmask": {
          "type": "string",
          "description": "- (Required incase using IPMI based imaging either here or inside node spec) default IPMI netmask\n"
        },
        "ipmiPassword": {
          "type": "string",
          "description": "- (Required incase using IPMI based imaging either here or inside node spec) IPMI password.\n"
        },
        "ipmiUser": {
          "type": "string",
          "description": "- (Required incase using IPMI based imaging either here or inside node spec) IPMI username.\n"
        },
        "layoutEggUuid": {
          "type": "string",
          "description": "- Id of the custom layout which needs to be passed to imaging request.\n"
        },
        "nosPackage": {
          "type": "string",
          "description": "- (Required) NOS package.\n"
        },
        "sessionId": {
          "type": "string",
          "description": "-<span pulumi-lang-nodejs=\" sessionId \" pulumi-lang-dotnet=\" SessionId \" pulumi-lang-go=\" sessionId \" pulumi-lang-python=\" session_id \" pulumi-lang-yaml=\" sessionId \" pulumi-lang-java=\" sessionId \"> session_id </span>of the imaging session\n"
        },
        "skipHypervisor": {
          "type": "boolean",
          "description": "- If hypervisor installation should be skipped.\n"
        },
        "svmRescueArgs": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "- Arguments to be passed to<span pulumi-lang-nodejs=\" svmRescue \" pulumi-lang-dotnet=\" SvmRescue \" pulumi-lang-go=\" svmRescue \" pulumi-lang-python=\" svm_rescue \" pulumi-lang-yaml=\" svmRescue \" pulumi-lang-java=\" svmRescue \"> svm_rescue </span>for AOS installation. Ensure that the arguments provided are supported by the AOS version used for imaging.\n"
        },
        "tests": {
          "$ref": "#/types/nutanix:index%2FFoundationImageNodesTests:FoundationImageNodesTests",
          "description": "- Types of tests to be performed.\n"
        },
        "ucsmIp": {
          "type": "string",
          "description": "- UCSM IP address.\n"
        },
        "ucsmPassword": {
          "type": "string",
          "description": "- UCSM password.\n"
        },
        "ucsmUser": {
          "type": "string",
          "description": "- UCSM username.\n"
        },
        "uncPassword": {
          "type": "string",
          "description": "- UNC password.\n"
        },
        "uncPath": {
          "type": "string",
          "description": "- UNC Path.\n"
        },
        "uncUsername": {
          "type": "string",
          "description": "- UNC username.\n"
        },
        "xenConfigType": {
          "type": "string",
          "description": "- xen config types.\n"
        },
        "xsMasterIp": {
          "type": "string",
          "description": "- xen server master IP address.\n"
        },
        "xsMasterLabel": {
          "type": "string",
          "description": "- xen server master label.\n"
        },
        "xsMasterPassword": {
          "type": "string",
          "description": "- xen server master password.\n"
        },
        "xsMasterUsername": {
          "type": "string",
          "description": "- xen server master username.\n"
        }
      },
      "type": "object",
      "required": [
        "blocks",
        "clusterUrls",
        "cvmGateway",
        "cvmNetmask",
        "hypervisorGateway",
        "hypervisorNetmask",
        "nosPackage",
        "sessionId"
      ],
      "inputProperties": {
        "blocks": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FFoundationImageNodesBlock:FoundationImageNodesBlock"
          },
          "willReplaceOnChanges": true
        },
        "clusters": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FFoundationImageNodesCluster:FoundationImageNodesCluster"
          },
          "willReplaceOnChanges": true
        },
        "cvmGateway": {
          "type": "string",
          "description": "- (Required) CVM gateway.\n",
          "willReplaceOnChanges": true
        },
        "cvmNetmask": {
          "type": "string",
          "description": "- (Required) CVM netmask.\n",
          "willReplaceOnChanges": true
        },
        "eosMetadata": {
          "$ref": "#/types/nutanix:index%2FFoundationImageNodesEosMetadata:FoundationImageNodesEosMetadata",
          "description": "- Contains user data from Eos portal.\n",
          "willReplaceOnChanges": true
        },
        "fcSettings": {
          "$ref": "#/types/nutanix:index%2FFoundationImageNodesFcSettings:FoundationImageNodesFcSettings",
          "description": "- Foundation Central specific settings.\n",
          "willReplaceOnChanges": true
        },
        "hypervExternalVnic": {
          "type": "string",
          "description": "- Hyperv External virtual network adapter name.\n",
          "willReplaceOnChanges": true
        },
        "hypervExternalVswitch": {
          "type": "string",
          "description": "- Hyperv External vswitch name.\n",
          "willReplaceOnChanges": true
        },
        "hypervProductKey": {
          "type": "string",
          "description": "- Hyperv product key.\n",
          "willReplaceOnChanges": true
        },
        "hypervSku": {
          "type": "boolean",
          "description": "- Hyperv SKU.\n",
          "willReplaceOnChanges": true
        },
        "hypervisorGateway": {
          "type": "string",
          "description": "- (Required) Hypervisor gateway.\n",
          "willReplaceOnChanges": true
        },
        "hypervisorIso": {
          "$ref": "#/types/nutanix:index%2FFoundationImageNodesHypervisorIso:FoundationImageNodesHypervisorIso",
          "description": "- Hypervisor ISO.\n",
          "willReplaceOnChanges": true
        },
        "hypervisorNameserver": {
          "type": "string",
          "willReplaceOnChanges": true
        },
        "hypervisorNetmask": {
          "type": "string",
          "description": "- (Required) Hypervisor netmask.\n",
          "willReplaceOnChanges": true
        },
        "hypervisorPassword": {
          "type": "string",
          "description": "- Hypervisor password.\n",
          "willReplaceOnChanges": true
        },
        "installScript": {
          "type": "string",
          "description": "- install script.\n",
          "willReplaceOnChanges": true
        },
        "ipmiGateway": {
          "type": "string",
          "description": "- (Required incase using IPMI based imaging either here or inside node spec) default IPMI gateway\n",
          "willReplaceOnChanges": true
        },
        "ipmiNetmask": {
          "type": "string",
          "description": "- (Required incase using IPMI based imaging either here or inside node spec) default IPMI netmask\n",
          "willReplaceOnChanges": true
        },
        "ipmiPassword": {
          "type": "string",
          "description": "- (Required incase using IPMI based imaging either here or inside node spec) IPMI password.\n",
          "willReplaceOnChanges": true
        },
        "ipmiUser": {
          "type": "string",
          "description": "- (Required incase using IPMI based imaging either here or inside node spec) IPMI username.\n",
          "willReplaceOnChanges": true
        },
        "layoutEggUuid": {
          "type": "string",
          "description": "- Id of the custom layout which needs to be passed to imaging request.\n",
          "willReplaceOnChanges": true
        },
        "nosPackage": {
          "type": "string",
          "description": "- (Required) NOS package.\n",
          "willReplaceOnChanges": true
        },
        "skipHypervisor": {
          "type": "boolean",
          "description": "- If hypervisor installation should be skipped.\n",
          "willReplaceOnChanges": true
        },
        "svmRescueArgs": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "- Arguments to be passed to<span pulumi-lang-nodejs=\" svmRescue \" pulumi-lang-dotnet=\" SvmRescue \" pulumi-lang-go=\" svmRescue \" pulumi-lang-python=\" svm_rescue \" pulumi-lang-yaml=\" svmRescue \" pulumi-lang-java=\" svmRescue \"> svm_rescue </span>for AOS installation. Ensure that the arguments provided are supported by the AOS version used for imaging.\n",
          "willReplaceOnChanges": true
        },
        "tests": {
          "$ref": "#/types/nutanix:index%2FFoundationImageNodesTests:FoundationImageNodesTests",
          "description": "- Types of tests to be performed.\n",
          "willReplaceOnChanges": true
        },
        "ucsmIp": {
          "type": "string",
          "description": "- UCSM IP address.\n",
          "willReplaceOnChanges": true
        },
        "ucsmPassword": {
          "type": "string",
          "description": "- UCSM password.\n",
          "willReplaceOnChanges": true
        },
        "ucsmUser": {
          "type": "string",
          "description": "- UCSM username.\n",
          "willReplaceOnChanges": true
        },
        "uncPassword": {
          "type": "string",
          "description": "- UNC password.\n",
          "willReplaceOnChanges": true
        },
        "uncPath": {
          "type": "string",
          "description": "- UNC Path.\n",
          "willReplaceOnChanges": true
        },
        "uncUsername": {
          "type": "string",
          "description": "- UNC username.\n",
          "willReplaceOnChanges": true
        },
        "xenConfigType": {
          "type": "string",
          "description": "- xen config types.\n",
          "willReplaceOnChanges": true
        },
        "xsMasterIp": {
          "type": "string",
          "description": "- xen server master IP address.\n",
          "willReplaceOnChanges": true
        },
        "xsMasterLabel": {
          "type": "string",
          "description": "- xen server master label.\n",
          "willReplaceOnChanges": true
        },
        "xsMasterPassword": {
          "type": "string",
          "description": "- xen server master password.\n",
          "willReplaceOnChanges": true
        },
        "xsMasterUsername": {
          "type": "string",
          "description": "- xen server master username.\n",
          "willReplaceOnChanges": true
        }
      },
      "requiredInputs": [
        "blocks",
        "cvmGateway",
        "cvmNetmask",
        "hypervisorGateway",
        "hypervisorNetmask",
        "nosPackage"
      ],
      "stateInputs": {
        "description": "Input properties used for looking up and filtering FoundationImageNodes resources.\n",
        "properties": {
          "blocks": {
            "type": "array",
            "items": {
              "$ref": "#/types/nutanix:index%2FFoundationImageNodesBlock:FoundationImageNodesBlock"
            },
            "willReplaceOnChanges": true
          },
          "clusterUrls": {
            "type": "array",
            "items": {
              "$ref": "#/types/nutanix:index%2FFoundationImageNodesClusterUrl:FoundationImageNodesClusterUrl"
            },
            "description": "- list containing cluster name and cluster urls for created clusters in current session\n* `cluster_urls.#.cluster_name` :-<span pulumi-lang-nodejs=\" clusterName\n\" pulumi-lang-dotnet=\" ClusterName\n\" pulumi-lang-go=\" clusterName\n\" pulumi-lang-python=\" cluster_name\n\" pulumi-lang-yaml=\" clusterName\n\" pulumi-lang-java=\" clusterName\n\"> cluster_name\n</span>* `cluster_urls.#.cluster_url` :- url to access the cluster login\n"
          },
          "clusters": {
            "type": "array",
            "items": {
              "$ref": "#/types/nutanix:index%2FFoundationImageNodesCluster:FoundationImageNodesCluster"
            },
            "willReplaceOnChanges": true
          },
          "cvmGateway": {
            "type": "string",
            "description": "- (Required) CVM gateway.\n",
            "willReplaceOnChanges": true
          },
          "cvmNetmask": {
            "type": "string",
            "description": "- (Required) CVM netmask.\n",
            "willReplaceOnChanges": true
          },
          "eosMetadata": {
            "$ref": "#/types/nutanix:index%2FFoundationImageNodesEosMetadata:FoundationImageNodesEosMetadata",
            "description": "- Contains user data from Eos portal.\n",
            "willReplaceOnChanges": true
          },
          "fcSettings": {
            "$ref": "#/types/nutanix:index%2FFoundationImageNodesFcSettings:FoundationImageNodesFcSettings",
            "description": "- Foundation Central specific settings.\n",
            "willReplaceOnChanges": true
          },
          "hypervExternalVnic": {
            "type": "string",
            "description": "- Hyperv External virtual network adapter name.\n",
            "willReplaceOnChanges": true
          },
          "hypervExternalVswitch": {
            "type": "string",
            "description": "- Hyperv External vswitch name.\n",
            "willReplaceOnChanges": true
          },
          "hypervProductKey": {
            "type": "string",
            "description": "- Hyperv product key.\n",
            "willReplaceOnChanges": true
          },
          "hypervSku": {
            "type": "boolean",
            "description": "- Hyperv SKU.\n",
            "willReplaceOnChanges": true
          },
          "hypervisorGateway": {
            "type": "string",
            "description": "- (Required) Hypervisor gateway.\n",
            "willReplaceOnChanges": true
          },
          "hypervisorIso": {
            "$ref": "#/types/nutanix:index%2FFoundationImageNodesHypervisorIso:FoundationImageNodesHypervisorIso",
            "description": "- Hypervisor ISO.\n",
            "willReplaceOnChanges": true
          },
          "hypervisorNameserver": {
            "type": "string",
            "willReplaceOnChanges": true
          },
          "hypervisorNetmask": {
            "type": "string",
            "description": "- (Required) Hypervisor netmask.\n",
            "willReplaceOnChanges": true
          },
          "hypervisorPassword": {
            "type": "string",
            "description": "- Hypervisor password.\n",
            "willReplaceOnChanges": true
          },
          "installScript": {
            "type": "string",
            "description": "- install script.\n",
            "willReplaceOnChanges": true
          },
          "ipmiGateway": {
            "type": "string",
            "description": "- (Required incase using IPMI based imaging either here or inside node spec) default IPMI gateway\n",
            "willReplaceOnChanges": true
          },
          "ipmiNetmask": {
            "type": "string",
            "description": "- (Required incase using IPMI based imaging either here or inside node spec) default IPMI netmask\n",
            "willReplaceOnChanges": true
          },
          "ipmiPassword": {
            "type": "string",
            "description": "- (Required incase using IPMI based imaging either here or inside node spec) IPMI password.\n",
            "willReplaceOnChanges": true
          },
          "ipmiUser": {
            "type": "string",
            "description": "- (Required incase using IPMI based imaging either here or inside node spec) IPMI username.\n",
            "willReplaceOnChanges": true
          },
          "layoutEggUuid": {
            "type": "string",
            "description": "- Id of the custom layout which needs to be passed to imaging request.\n",
            "willReplaceOnChanges": true
          },
          "nosPackage": {
            "type": "string",
            "description": "- (Required) NOS package.\n",
            "willReplaceOnChanges": true
          },
          "sessionId": {
            "type": "string",
            "description": "-<span pulumi-lang-nodejs=\" sessionId \" pulumi-lang-dotnet=\" SessionId \" pulumi-lang-go=\" sessionId \" pulumi-lang-python=\" session_id \" pulumi-lang-yaml=\" sessionId \" pulumi-lang-java=\" sessionId \"> session_id </span>of the imaging session\n"
          },
          "skipHypervisor": {
            "type": "boolean",
            "description": "- If hypervisor installation should be skipped.\n",
            "willReplaceOnChanges": true
          },
          "svmRescueArgs": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "description": "- Arguments to be passed to<span pulumi-lang-nodejs=\" svmRescue \" pulumi-lang-dotnet=\" SvmRescue \" pulumi-lang-go=\" svmRescue \" pulumi-lang-python=\" svm_rescue \" pulumi-lang-yaml=\" svmRescue \" pulumi-lang-java=\" svmRescue \"> svm_rescue </span>for AOS installation. Ensure that the arguments provided are supported by the AOS version used for imaging.\n",
            "willReplaceOnChanges": true
          },
          "tests": {
            "$ref": "#/types/nutanix:index%2FFoundationImageNodesTests:FoundationImageNodesTests",
            "description": "- Types of tests to be performed.\n",
            "willReplaceOnChanges": true
          },
          "ucsmIp": {
            "type": "string",
            "description": "- UCSM IP address.\n",
            "willReplaceOnChanges": true
          },
          "ucsmPassword": {
            "type": "string",
            "description": "- UCSM password.\n",
            "willReplaceOnChanges": true
          },
          "ucsmUser": {
            "type": "string",
            "description": "- UCSM username.\n",
            "willReplaceOnChanges": true
          },
          "uncPassword": {
            "type": "string",
            "description": "- UNC password.\n",
            "willReplaceOnChanges": true
          },
          "uncPath": {
            "type": "string",
            "description": "- UNC Path.\n",
            "willReplaceOnChanges": true
          },
          "uncUsername": {
            "type": "string",
            "description": "- UNC username.\n",
            "willReplaceOnChanges": true
          },
          "xenConfigType": {
            "type": "string",
            "description": "- xen config types.\n",
            "willReplaceOnChanges": true
          },
          "xsMasterIp": {
            "type": "string",
            "description": "- xen server master IP address.\n",
            "willReplaceOnChanges": true
          },
          "xsMasterLabel": {
            "type": "string",
            "description": "- xen server master label.\n",
            "willReplaceOnChanges": true
          },
          "xsMasterPassword": {
            "type": "string",
            "description": "- xen server master password.\n",
            "willReplaceOnChanges": true
          },
          "xsMasterUsername": {
            "type": "string",
            "description": "- xen server master username.\n",
            "willReplaceOnChanges": true
          }
        },
        "type": "object"
      }
    },
    "nutanix:index/foundationIpmiConfig:FoundationIpmiConfig": {
      "properties": {
        "blocks": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FFoundationIpmiConfigBlock:FoundationIpmiConfigBlock"
          },
          "description": "- (Required) List of blocks.\n"
        },
        "ipmiGateway": {
          "type": "string",
          "description": "- (Required) IPMI gateway.\n"
        },
        "ipmiNetmask": {
          "type": "string",
          "description": "- (Required) IPMI netmask.\n"
        },
        "ipmiPassword": {
          "type": "string",
          "description": "- (Required) IPMI password.\n"
        },
        "ipmiUser": {
          "type": "string",
          "description": "- (Required) IPMI username.\n"
        }
      },
      "type": "object",
      "required": [
        "blocks",
        "ipmiGateway",
        "ipmiNetmask",
        "ipmiPassword",
        "ipmiUser"
      ],
      "inputProperties": {
        "blocks": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FFoundationIpmiConfigBlock:FoundationIpmiConfigBlock"
          },
          "description": "- (Required) List of blocks.\n",
          "willReplaceOnChanges": true
        },
        "ipmiGateway": {
          "type": "string",
          "description": "- (Required) IPMI gateway.\n",
          "willReplaceOnChanges": true
        },
        "ipmiNetmask": {
          "type": "string",
          "description": "- (Required) IPMI netmask.\n",
          "willReplaceOnChanges": true
        },
        "ipmiPassword": {
          "type": "string",
          "description": "- (Required) IPMI password.\n",
          "willReplaceOnChanges": true
        },
        "ipmiUser": {
          "type": "string",
          "description": "- (Required) IPMI username.\n",
          "willReplaceOnChanges": true
        }
      },
      "requiredInputs": [
        "blocks",
        "ipmiGateway",
        "ipmiNetmask",
        "ipmiPassword",
        "ipmiUser"
      ],
      "stateInputs": {
        "description": "Input properties used for looking up and filtering FoundationIpmiConfig resources.\n",
        "properties": {
          "blocks": {
            "type": "array",
            "items": {
              "$ref": "#/types/nutanix:index%2FFoundationIpmiConfigBlock:FoundationIpmiConfigBlock"
            },
            "description": "- (Required) List of blocks.\n",
            "willReplaceOnChanges": true
          },
          "ipmiGateway": {
            "type": "string",
            "description": "- (Required) IPMI gateway.\n",
            "willReplaceOnChanges": true
          },
          "ipmiNetmask": {
            "type": "string",
            "description": "- (Required) IPMI netmask.\n",
            "willReplaceOnChanges": true
          },
          "ipmiPassword": {
            "type": "string",
            "description": "- (Required) IPMI password.\n",
            "willReplaceOnChanges": true
          },
          "ipmiUser": {
            "type": "string",
            "description": "- (Required) IPMI username.\n",
            "willReplaceOnChanges": true
          }
        },
        "type": "object"
      }
    },
    "nutanix:index/image:Image": {
      "description": "Provides a Nutanix Image resource to Create a image.\n\n## Example Usage\n\n<!--Start PulumiCodeChooser -->\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as nutanix from \"@pierskarsenbarg/nutanix\";\n\nconst test = new nutanix.Image(\"test\", {\n    name: \"Ubuntu\",\n    description: \"Ubuntu\",\n    sourceUri: \"http://archive.ubuntu.com/ubuntu/dists/bionic/main/installer-amd64/current/images/netboot/mini.iso\",\n});\n// Create image with data_source_reference\nconst createImageWithDataSourceReference = new nutanix.Image(\"create_image_with_data_source_reference\", {\n    name: \"Sql Server Image\",\n    description: \"Sql Server\",\n    imageType: \"DISK_IMAGE\",\n    dataSourceReferences: [{\n        kind: \"vm_disk\",\n        uuid: \"<uuid of the vm disk>\",\n    }],\n});\n```\n```python\nimport pulumi\nimport pulumi_nutanix as nutanix\n\ntest = nutanix.Image(\"test\",\n    name=\"Ubuntu\",\n    description=\"Ubuntu\",\n    source_uri=\"http://archive.ubuntu.com/ubuntu/dists/bionic/main/installer-amd64/current/images/netboot/mini.iso\")\n# Create image with data_source_reference\ncreate_image_with_data_source_reference = nutanix.Image(\"create_image_with_data_source_reference\",\n    name=\"Sql Server Image\",\n    description=\"Sql Server\",\n    image_type=\"DISK_IMAGE\",\n    data_source_references=[{\n        \"kind\": \"vm_disk\",\n        \"uuid\": \"<uuid of the vm disk>\",\n    }])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Nutanix = PiersKarsenbarg.Nutanix;\n\nreturn await Deployment.RunAsync(() => \n{\n    var test = new Nutanix.Image(\"test\", new()\n    {\n        Name = \"Ubuntu\",\n        Description = \"Ubuntu\",\n        SourceUri = \"http://archive.ubuntu.com/ubuntu/dists/bionic/main/installer-amd64/current/images/netboot/mini.iso\",\n    });\n\n    // Create image with data_source_reference\n    var createImageWithDataSourceReference = new Nutanix.Image(\"create_image_with_data_source_reference\", new()\n    {\n        Name = \"Sql Server Image\",\n        Description = \"Sql Server\",\n        ImageType = \"DISK_IMAGE\",\n        DataSourceReferences = new[]\n        {\n            new Nutanix.Inputs.ImageDataSourceReferenceArgs\n            {\n                Kind = \"vm_disk\",\n                Uuid = \"<uuid of the vm disk>\",\n            },\n        },\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pierskarsenbarg/pulumi-nutanix/sdk/go/nutanix\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := nutanix.NewImage(ctx, \"test\", &nutanix.ImageArgs{\n\t\t\tName:        pulumi.String(\"Ubuntu\"),\n\t\t\tDescription: pulumi.String(\"Ubuntu\"),\n\t\t\tSourceUri:   pulumi.String(\"http://archive.ubuntu.com/ubuntu/dists/bionic/main/installer-amd64/current/images/netboot/mini.iso\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t// Create image with data_source_reference\n\t\t_, err = nutanix.NewImage(ctx, \"create_image_with_data_source_reference\", &nutanix.ImageArgs{\n\t\t\tName:        pulumi.String(\"Sql Server Image\"),\n\t\t\tDescription: pulumi.String(\"Sql Server\"),\n\t\t\tImageType:   pulumi.String(\"DISK_IMAGE\"),\n\t\t\tDataSourceReferences: nutanix.ImageDataSourceReferenceArray{\n\t\t\t\t&nutanix.ImageDataSourceReferenceArgs{\n\t\t\t\t\tKind: pulumi.String(\"vm_disk\"),\n\t\t\t\t\tUuid: pulumi.String(\"<uuid of the vm disk>\"),\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.nutanix.Image;\nimport com.pulumi.nutanix.ImageArgs;\nimport com.pulumi.nutanix.inputs.ImageDataSourceReferenceArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var test = new Image(\"test\", ImageArgs.builder()\n            .name(\"Ubuntu\")\n            .description(\"Ubuntu\")\n            .sourceUri(\"http://archive.ubuntu.com/ubuntu/dists/bionic/main/installer-amd64/current/images/netboot/mini.iso\")\n            .build());\n\n        // Create image with data_source_reference\n        var createImageWithDataSourceReference = new Image(\"createImageWithDataSourceReference\", ImageArgs.builder()\n            .name(\"Sql Server Image\")\n            .description(\"Sql Server\")\n            .imageType(\"DISK_IMAGE\")\n            .dataSourceReferences(ImageDataSourceReferenceArgs.builder()\n                .kind(\"vm_disk\")\n                .uuid(\"<uuid of the vm disk>\")\n                .build())\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  test:\n    type: nutanix:Image\n    properties:\n      name: Ubuntu\n      description: Ubuntu\n      sourceUri: http://archive.ubuntu.com/ubuntu/dists/bionic/main/installer-amd64/current/images/netboot/mini.iso\n  # Create image with data_source_reference\n  createImageWithDataSourceReference:\n    type: nutanix:Image\n    name: create_image_with_data_source_reference\n    properties:\n      name: Sql Server Image\n      description: Sql Server\n      imageType: DISK_IMAGE\n      dataSourceReferences:\n        - kind: vm_disk\n          uuid: <uuid of the vm disk>\n```\n<!--End PulumiCodeChooser -->\n",
      "properties": {
        "apiVersion": {
          "type": "string",
          "description": "The version of the API.\n"
        },
        "architecture": {
          "type": "string",
          "description": "- (Optional) The supported CPU architecture for a disk image.\n"
        },
        "availabilityZoneReference": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          },
          "description": "- (Optional) The reference to a availability_zone.\n"
        },
        "categories": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FImageCategory:ImageCategory"
          },
          "description": "- (Optional) Categories for the image.\n"
        },
        "checksum": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          },
          "description": "- (Optional) Checksum of the image. The checksum is used for image validation if the image has a source specified. For images that do not have their source specified the checksum is generated by the image service.\n"
        },
        "clusterName": {
          "type": "string"
        },
        "clusterReferences": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FImageClusterReference:ImageClusterReference"
          }
        },
        "clusterUuid": {
          "type": "string"
        },
        "currentClusterReferenceLists": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FImageCurrentClusterReferenceList:ImageCurrentClusterReferenceList"
          }
        },
        "dataSourceReferences": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FImageDataSourceReference:ImageDataSourceReference"
          },
          "description": "Reference to a data source.\n"
        },
        "description": {
          "type": "string",
          "description": "- (Optional) A description for image.\n"
        },
        "imageType": {
          "type": "string",
          "description": "- (Optional) The type of image.\n"
        },
        "metadata": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          },
          "description": "- The image kind metadata.\n"
        },
        "name": {
          "type": "string",
          "description": "- (Required) The name for the image.\n"
        },
        "ownerReference": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          },
          "description": "- (Optional) The reference to a user.\n"
        },
        "projectReference": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          },
          "description": "- (Optional) The reference to a project.\n"
        },
        "retrievalUriLists": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "- List of URIs where the raw image data can be accessed.\n"
        },
        "sizeBytes": {
          "type": "integer",
          "description": "- The size of the image in bytes.\n"
        },
        "sourcePath": {
          "type": "string",
          "description": "- (Optional) A local path to upload an image.\n"
        },
        "sourceUri": {
          "type": "string",
          "description": "- (Optional) The source URI points at the location of the source image which is used to create/update image.\n"
        },
        "state": {
          "type": "string",
          "description": "- The state of the image.\n"
        },
        "version": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          },
          "description": "- (Optional) The image version.\n"
        }
      },
      "type": "object",
      "required": [
        "apiVersion",
        "architecture",
        "availabilityZoneReference",
        "categories",
        "checksum",
        "clusterName",
        "clusterReferences",
        "clusterUuid",
        "currentClusterReferenceLists",
        "dataSourceReferences",
        "description",
        "imageType",
        "metadata",
        "name",
        "ownerReference",
        "retrievalUriLists",
        "sizeBytes",
        "sourcePath",
        "sourceUri",
        "state",
        "version"
      ],
      "inputProperties": {
        "architecture": {
          "type": "string",
          "description": "- (Optional) The supported CPU architecture for a disk image.\n"
        },
        "availabilityZoneReference": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          },
          "description": "- (Optional) The reference to a availability_zone.\n"
        },
        "categories": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FImageCategory:ImageCategory"
          },
          "description": "- (Optional) Categories for the image.\n"
        },
        "checksum": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          },
          "description": "- (Optional) Checksum of the image. The checksum is used for image validation if the image has a source specified. For images that do not have their source specified the checksum is generated by the image service.\n"
        },
        "clusterReferences": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FImageClusterReference:ImageClusterReference"
          }
        },
        "dataSourceReferences": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FImageDataSourceReference:ImageDataSourceReference"
          },
          "description": "Reference to a data source.\n"
        },
        "description": {
          "type": "string",
          "description": "- (Optional) A description for image.\n"
        },
        "imageType": {
          "type": "string",
          "description": "- (Optional) The type of image.\n"
        },
        "name": {
          "type": "string",
          "description": "- (Required) The name for the image.\n"
        },
        "ownerReference": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          },
          "description": "- (Optional) The reference to a user.\n"
        },
        "projectReference": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          },
          "description": "- (Optional) The reference to a project.\n"
        },
        "sourcePath": {
          "type": "string",
          "description": "- (Optional) A local path to upload an image.\n"
        },
        "sourceUri": {
          "type": "string",
          "description": "- (Optional) The source URI points at the location of the source image which is used to create/update image.\n"
        },
        "version": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          },
          "description": "- (Optional) The image version.\n"
        }
      },
      "stateInputs": {
        "description": "Input properties used for looking up and filtering Image resources.\n",
        "properties": {
          "apiVersion": {
            "type": "string",
            "description": "The version of the API.\n"
          },
          "architecture": {
            "type": "string",
            "description": "- (Optional) The supported CPU architecture for a disk image.\n"
          },
          "availabilityZoneReference": {
            "type": "object",
            "additionalProperties": {
              "type": "string"
            },
            "description": "- (Optional) The reference to a availability_zone.\n"
          },
          "categories": {
            "type": "array",
            "items": {
              "$ref": "#/types/nutanix:index%2FImageCategory:ImageCategory"
            },
            "description": "- (Optional) Categories for the image.\n"
          },
          "checksum": {
            "type": "object",
            "additionalProperties": {
              "type": "string"
            },
            "description": "- (Optional) Checksum of the image. The checksum is used for image validation if the image has a source specified. For images that do not have their source specified the checksum is generated by the image service.\n"
          },
          "clusterName": {
            "type": "string"
          },
          "clusterReferences": {
            "type": "array",
            "items": {
              "$ref": "#/types/nutanix:index%2FImageClusterReference:ImageClusterReference"
            }
          },
          "clusterUuid": {
            "type": "string"
          },
          "currentClusterReferenceLists": {
            "type": "array",
            "items": {
              "$ref": "#/types/nutanix:index%2FImageCurrentClusterReferenceList:ImageCurrentClusterReferenceList"
            }
          },
          "dataSourceReferences": {
            "type": "array",
            "items": {
              "$ref": "#/types/nutanix:index%2FImageDataSourceReference:ImageDataSourceReference"
            },
            "description": "Reference to a data source.\n"
          },
          "description": {
            "type": "string",
            "description": "- (Optional) A description for image.\n"
          },
          "imageType": {
            "type": "string",
            "description": "- (Optional) The type of image.\n"
          },
          "metadata": {
            "type": "object",
            "additionalProperties": {
              "type": "string"
            },
            "description": "- The image kind metadata.\n"
          },
          "name": {
            "type": "string",
            "description": "- (Required) The name for the image.\n"
          },
          "ownerReference": {
            "type": "object",
            "additionalProperties": {
              "type": "string"
            },
            "description": "- (Optional) The reference to a user.\n"
          },
          "projectReference": {
            "type": "object",
            "additionalProperties": {
              "type": "string"
            },
            "description": "- (Optional) The reference to a project.\n"
          },
          "retrievalUriLists": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "description": "- List of URIs where the raw image data can be accessed.\n"
          },
          "sizeBytes": {
            "type": "integer",
            "description": "- The size of the image in bytes.\n"
          },
          "sourcePath": {
            "type": "string",
            "description": "- (Optional) A local path to upload an image.\n"
          },
          "sourceUri": {
            "type": "string",
            "description": "- (Optional) The source URI points at the location of the source image which is used to create/update image.\n"
          },
          "state": {
            "type": "string",
            "description": "- The state of the image.\n"
          },
          "version": {
            "type": "object",
            "additionalProperties": {
              "type": "string"
            },
            "description": "- (Optional) The image version.\n"
          }
        },
        "type": "object"
      }
    },
    "nutanix:index/imagePlacementPolicyV2:ImagePlacementPolicyV2": {
      "description": "Create an image placement policy using the provided request body. Name, placement_type,<span pulumi-lang-nodejs=\" imageEntityFilter \" pulumi-lang-dotnet=\" ImageEntityFilter \" pulumi-lang-go=\" imageEntityFilter \" pulumi-lang-python=\" image_entity_filter \" pulumi-lang-yaml=\" imageEntityFilter \" pulumi-lang-java=\" imageEntityFilter \"> image_entity_filter </span>and source are mandatory fields to create an policy.\n\n\n<!--Start PulumiCodeChooser -->\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as nutanix from \"@pierskarsenbarg/nutanix\";\n\nconst example = new nutanix.ImagePlacementPolicyV2(\"example\", {\n    name: \"image_placement_policy\",\n    description: \"%[2]s\",\n    placementType: \"SOFT\",\n    clusterEntityFilters: [{\n        categoryExtIds: [\"ab520e1d-4950-1db1-917f-a9e2ea35b8e3\"],\n        type: \"CATEGORIES_MATCH_ALL\",\n    }],\n    imageEntityFilters: [{\n        categoryExtIds: [\"ab520e1d-4950-1db1-917f-a9e2ea35b8e3\"],\n        type: \"CATEGORIES_MATCH_ALL\",\n    }],\n});\n```\n```python\nimport pulumi\nimport pulumi_nutanix as nutanix\n\nexample = nutanix.ImagePlacementPolicyV2(\"example\",\n    name=\"image_placement_policy\",\n    description=\"%[2]s\",\n    placement_type=\"SOFT\",\n    cluster_entity_filters=[{\n        \"category_ext_ids\": [\"ab520e1d-4950-1db1-917f-a9e2ea35b8e3\"],\n        \"type\": \"CATEGORIES_MATCH_ALL\",\n    }],\n    image_entity_filters=[{\n        \"category_ext_ids\": [\"ab520e1d-4950-1db1-917f-a9e2ea35b8e3\"],\n        \"type\": \"CATEGORIES_MATCH_ALL\",\n    }])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Nutanix = PiersKarsenbarg.Nutanix;\n\nreturn await Deployment.RunAsync(() => \n{\n    var example = new Nutanix.ImagePlacementPolicyV2(\"example\", new()\n    {\n        Name = \"image_placement_policy\",\n        Description = \"%[2]s\",\n        PlacementType = \"SOFT\",\n        ClusterEntityFilters = new[]\n        {\n            new Nutanix.Inputs.ImagePlacementPolicyV2ClusterEntityFilterArgs\n            {\n                CategoryExtIds = new[]\n                {\n                    \"ab520e1d-4950-1db1-917f-a9e2ea35b8e3\",\n                },\n                Type = \"CATEGORIES_MATCH_ALL\",\n            },\n        },\n        ImageEntityFilters = new[]\n        {\n            new Nutanix.Inputs.ImagePlacementPolicyV2ImageEntityFilterArgs\n            {\n                CategoryExtIds = new[]\n                {\n                    \"ab520e1d-4950-1db1-917f-a9e2ea35b8e3\",\n                },\n                Type = \"CATEGORIES_MATCH_ALL\",\n            },\n        },\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pierskarsenbarg/pulumi-nutanix/sdk/go/nutanix\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := nutanix.NewImagePlacementPolicyV2(ctx, \"example\", &nutanix.ImagePlacementPolicyV2Args{\n\t\t\tName:          pulumi.String(\"image_placement_policy\"),\n\t\t\tDescription:   pulumi.String(\"%[2]s\"),\n\t\t\tPlacementType: pulumi.String(\"SOFT\"),\n\t\t\tClusterEntityFilters: nutanix.ImagePlacementPolicyV2ClusterEntityFilterArray{\n\t\t\t\t&nutanix.ImagePlacementPolicyV2ClusterEntityFilterArgs{\n\t\t\t\t\tCategoryExtIds: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"ab520e1d-4950-1db1-917f-a9e2ea35b8e3\"),\n\t\t\t\t\t},\n\t\t\t\t\tType: pulumi.String(\"CATEGORIES_MATCH_ALL\"),\n\t\t\t\t},\n\t\t\t},\n\t\t\tImageEntityFilters: nutanix.ImagePlacementPolicyV2ImageEntityFilterArray{\n\t\t\t\t&nutanix.ImagePlacementPolicyV2ImageEntityFilterArgs{\n\t\t\t\t\tCategoryExtIds: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"ab520e1d-4950-1db1-917f-a9e2ea35b8e3\"),\n\t\t\t\t\t},\n\t\t\t\t\tType: pulumi.String(\"CATEGORIES_MATCH_ALL\"),\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.nutanix.ImagePlacementPolicyV2;\nimport com.pulumi.nutanix.ImagePlacementPolicyV2Args;\nimport com.pulumi.nutanix.inputs.ImagePlacementPolicyV2ClusterEntityFilterArgs;\nimport com.pulumi.nutanix.inputs.ImagePlacementPolicyV2ImageEntityFilterArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var example = new ImagePlacementPolicyV2(\"example\", ImagePlacementPolicyV2Args.builder()\n            .name(\"image_placement_policy\")\n            .description(\"%[2]s\")\n            .placementType(\"SOFT\")\n            .clusterEntityFilters(ImagePlacementPolicyV2ClusterEntityFilterArgs.builder()\n                .categoryExtIds(\"ab520e1d-4950-1db1-917f-a9e2ea35b8e3\")\n                .type(\"CATEGORIES_MATCH_ALL\")\n                .build())\n            .imageEntityFilters(ImagePlacementPolicyV2ImageEntityFilterArgs.builder()\n                .categoryExtIds(\"ab520e1d-4950-1db1-917f-a9e2ea35b8e3\")\n                .type(\"CATEGORIES_MATCH_ALL\")\n                .build())\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  example:\n    type: nutanix:ImagePlacementPolicyV2\n    properties:\n      name: image_placement_policy\n      description: '%[2]s'\n      placementType: SOFT\n      clusterEntityFilters:\n        - categoryExtIds:\n            - ab520e1d-4950-1db1-917f-a9e2ea35b8e3\n          type: CATEGORIES_MATCH_ALL\n      imageEntityFilters:\n        - categoryExtIds:\n            - ab520e1d-4950-1db1-917f-a9e2ea35b8e3\n          type: CATEGORIES_MATCH_ALL\n```\n<!--End PulumiCodeChooser -->\n",
      "properties": {
        "action": {
          "type": "string",
          "description": "Action to be performed on the image placement policy. Valid values \"RESUME\", \"SUSPEND\"\n"
        },
        "clusterEntityFilters": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FImagePlacementPolicyV2ClusterEntityFilter:ImagePlacementPolicyV2ClusterEntityFilter"
          },
          "description": "Category-based entity filter.\n"
        },
        "createTime": {
          "type": "string"
        },
        "description": {
          "type": "string",
          "description": "Description of the image placement policy.\n"
        },
        "enforcementState": {
          "type": "string",
          "description": "Enforcement status of the image placement policy. Valid values \"ACTIVE\", \"SUSPENDED\"\n"
        },
        "extId": {
          "type": "string"
        },
        "imageEntityFilters": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FImagePlacementPolicyV2ImageEntityFilter:ImagePlacementPolicyV2ImageEntityFilter"
          },
          "description": "Category-based entity filter.\n"
        },
        "lastUpdateTime": {
          "type": "string"
        },
        "name": {
          "type": "string",
          "description": "Name of the image placement policy.\n"
        },
        "ownerExtId": {
          "type": "string"
        },
        "placementType": {
          "type": "string",
          "description": "Type of the image placement policy. Valid values \"HARD\", \"SOFT\"\n"
        },
        "shouldCancelRunningTasks": {
          "type": "boolean"
        }
      },
      "type": "object",
      "required": [
        "clusterEntityFilters",
        "createTime",
        "description",
        "enforcementState",
        "extId",
        "imageEntityFilters",
        "lastUpdateTime",
        "name",
        "ownerExtId",
        "placementType"
      ],
      "inputProperties": {
        "action": {
          "type": "string",
          "description": "Action to be performed on the image placement policy. Valid values \"RESUME\", \"SUSPEND\"\n"
        },
        "clusterEntityFilters": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FImagePlacementPolicyV2ClusterEntityFilter:ImagePlacementPolicyV2ClusterEntityFilter"
          },
          "description": "Category-based entity filter.\n"
        },
        "description": {
          "type": "string",
          "description": "Description of the image placement policy.\n"
        },
        "enforcementState": {
          "type": "string",
          "description": "Enforcement status of the image placement policy. Valid values \"ACTIVE\", \"SUSPENDED\"\n"
        },
        "extId": {
          "type": "string"
        },
        "imageEntityFilters": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FImagePlacementPolicyV2ImageEntityFilter:ImagePlacementPolicyV2ImageEntityFilter"
          },
          "description": "Category-based entity filter.\n"
        },
        "name": {
          "type": "string",
          "description": "Name of the image placement policy.\n"
        },
        "placementType": {
          "type": "string",
          "description": "Type of the image placement policy. Valid values \"HARD\", \"SOFT\"\n"
        },
        "shouldCancelRunningTasks": {
          "type": "boolean"
        }
      },
      "requiredInputs": [
        "clusterEntityFilters",
        "imageEntityFilters",
        "placementType"
      ],
      "stateInputs": {
        "description": "Input properties used for looking up and filtering ImagePlacementPolicyV2 resources.\n",
        "properties": {
          "action": {
            "type": "string",
            "description": "Action to be performed on the image placement policy. Valid values \"RESUME\", \"SUSPEND\"\n"
          },
          "clusterEntityFilters": {
            "type": "array",
            "items": {
              "$ref": "#/types/nutanix:index%2FImagePlacementPolicyV2ClusterEntityFilter:ImagePlacementPolicyV2ClusterEntityFilter"
            },
            "description": "Category-based entity filter.\n"
          },
          "createTime": {
            "type": "string"
          },
          "description": {
            "type": "string",
            "description": "Description of the image placement policy.\n"
          },
          "enforcementState": {
            "type": "string",
            "description": "Enforcement status of the image placement policy. Valid values \"ACTIVE\", \"SUSPENDED\"\n"
          },
          "extId": {
            "type": "string"
          },
          "imageEntityFilters": {
            "type": "array",
            "items": {
              "$ref": "#/types/nutanix:index%2FImagePlacementPolicyV2ImageEntityFilter:ImagePlacementPolicyV2ImageEntityFilter"
            },
            "description": "Category-based entity filter.\n"
          },
          "lastUpdateTime": {
            "type": "string"
          },
          "name": {
            "type": "string",
            "description": "Name of the image placement policy.\n"
          },
          "ownerExtId": {
            "type": "string"
          },
          "placementType": {
            "type": "string",
            "description": "Type of the image placement policy. Valid values \"HARD\", \"SOFT\"\n"
          },
          "shouldCancelRunningTasks": {
            "type": "boolean"
          }
        },
        "type": "object"
      }
    },
    "nutanix:index/imagesV2:ImagesV2": {
      "properties": {
        "categoryExtIds": {
          "type": "array",
          "items": {
            "type": "string"
          }
        },
        "checksums": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FImagesV2Checksum:ImagesV2Checksum"
          }
        },
        "clusterLocationExtIds": {
          "type": "array",
          "items": {
            "type": "string"
          }
        },
        "createTime": {
          "type": "string"
        },
        "description": {
          "type": "string"
        },
        "lastUpdateTime": {
          "type": "string"
        },
        "name": {
          "type": "string"
        },
        "ownerExtId": {
          "type": "string"
        },
        "placementPolicyStatuses": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FImagesV2PlacementPolicyStatus:ImagesV2PlacementPolicyStatus"
          }
        },
        "sizeBytes": {
          "type": "integer"
        },
        "sources": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FImagesV2Source:ImagesV2Source"
          }
        },
        "type": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "categoryExtIds",
        "clusterLocationExtIds",
        "createTime",
        "lastUpdateTime",
        "name",
        "ownerExtId",
        "placementPolicyStatuses",
        "sizeBytes",
        "type"
      ],
      "inputProperties": {
        "categoryExtIds": {
          "type": "array",
          "items": {
            "type": "string"
          }
        },
        "checksums": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FImagesV2Checksum:ImagesV2Checksum"
          }
        },
        "clusterLocationExtIds": {
          "type": "array",
          "items": {
            "type": "string"
          }
        },
        "description": {
          "type": "string"
        },
        "name": {
          "type": "string"
        },
        "sources": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FImagesV2Source:ImagesV2Source"
          }
        },
        "type": {
          "type": "string"
        }
      },
      "requiredInputs": [
        "type"
      ],
      "stateInputs": {
        "description": "Input properties used for looking up and filtering ImagesV2 resources.\n",
        "properties": {
          "categoryExtIds": {
            "type": "array",
            "items": {
              "type": "string"
            }
          },
          "checksums": {
            "type": "array",
            "items": {
              "$ref": "#/types/nutanix:index%2FImagesV2Checksum:ImagesV2Checksum"
            }
          },
          "clusterLocationExtIds": {
            "type": "array",
            "items": {
              "type": "string"
            }
          },
          "createTime": {
            "type": "string"
          },
          "description": {
            "type": "string"
          },
          "lastUpdateTime": {
            "type": "string"
          },
          "name": {
            "type": "string"
          },
          "ownerExtId": {
            "type": "string"
          },
          "placementPolicyStatuses": {
            "type": "array",
            "items": {
              "$ref": "#/types/nutanix:index%2FImagesV2PlacementPolicyStatus:ImagesV2PlacementPolicyStatus"
            }
          },
          "sizeBytes": {
            "type": "integer"
          },
          "sources": {
            "type": "array",
            "items": {
              "$ref": "#/types/nutanix:index%2FImagesV2Source:ImagesV2Source"
            }
          },
          "type": {
            "type": "string"
          }
        },
        "type": "object"
      }
    },
    "nutanix:index/karbonCluster:KarbonCluster": {
      "description": "Provides a Nutanix Karbon Cluster resource to Create a k8s cluster.\n\n**Note:** Minimum tested version is Karbon 2.2\n\n**Note:** Kubernetes and Node OS upgrades are not supported using this provider.\n\n## Example Usage\n\n<!--Start PulumiCodeChooser -->\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as nutanix from \"@pierskarsenbarg/nutanix\";\n\nconst exampleCluster = new nutanix.KarbonCluster(\"example_cluster\", {\n    name: \"example_cluster\",\n    version: \"1.18.15-1\",\n    storageClassConfig: {\n        reclaimPolicy: \"Delete\",\n        volumesConfig: {\n            fileSystem: \"ext4\",\n            flashMode: false,\n            password: \"my_pe_pw\",\n            prismElementClusterUuid: \"my_pe_cluster_uuid\",\n            storageContainer: \"my_storage_container_name\",\n            username: \"my_pe_username\",\n        },\n    },\n    cniConfig: {\n        nodeCidrMaskSize: 24,\n        podIpv4Cidr: \"172.20.0.0/16\",\n        serviceIpv4Cidr: \"172.19.0.0/16\",\n    },\n    workerNodePool: {\n        nodeOsVersion: \"ntnx-1.0\",\n        numInstances: 1,\n        ahvConfig: {\n            networkUuid: \"my_subnet_id\",\n            prismElementClusterUuid: \"my_pe_cluster_uuid\",\n        },\n    },\n    etcdNodePool: {\n        nodeOsVersion: \"ntnx-1.0\",\n        numInstances: 1,\n        ahvConfig: {\n            networkUuid: \"my_subnet_id\",\n            prismElementClusterUuid: \"my_pe_cluster_uuid\",\n        },\n    },\n    masterNodePool: {\n        nodeOsVersion: \"ntnx-1.0\",\n        numInstances: 1,\n        ahvConfig: {\n            networkUuid: \"my_subnet_id\",\n            prismElementClusterUuid: \"my_pe_cluster_uuid\",\n        },\n    },\n});\n```\n```python\nimport pulumi\nimport pulumi_nutanix as nutanix\n\nexample_cluster = nutanix.KarbonCluster(\"example_cluster\",\n    name=\"example_cluster\",\n    version=\"1.18.15-1\",\n    storage_class_config={\n        \"reclaim_policy\": \"Delete\",\n        \"volumes_config\": {\n            \"file_system\": \"ext4\",\n            \"flash_mode\": False,\n            \"password\": \"my_pe_pw\",\n            \"prism_element_cluster_uuid\": \"my_pe_cluster_uuid\",\n            \"storage_container\": \"my_storage_container_name\",\n            \"username\": \"my_pe_username\",\n        },\n    },\n    cni_config={\n        \"node_cidr_mask_size\": 24,\n        \"pod_ipv4_cidr\": \"172.20.0.0/16\",\n        \"service_ipv4_cidr\": \"172.19.0.0/16\",\n    },\n    worker_node_pool={\n        \"node_os_version\": \"ntnx-1.0\",\n        \"num_instances\": 1,\n        \"ahv_config\": {\n            \"network_uuid\": \"my_subnet_id\",\n            \"prism_element_cluster_uuid\": \"my_pe_cluster_uuid\",\n        },\n    },\n    etcd_node_pool={\n        \"node_os_version\": \"ntnx-1.0\",\n        \"num_instances\": 1,\n        \"ahv_config\": {\n            \"network_uuid\": \"my_subnet_id\",\n            \"prism_element_cluster_uuid\": \"my_pe_cluster_uuid\",\n        },\n    },\n    master_node_pool={\n        \"node_os_version\": \"ntnx-1.0\",\n        \"num_instances\": 1,\n        \"ahv_config\": {\n            \"network_uuid\": \"my_subnet_id\",\n            \"prism_element_cluster_uuid\": \"my_pe_cluster_uuid\",\n        },\n    })\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Nutanix = PiersKarsenbarg.Nutanix;\n\nreturn await Deployment.RunAsync(() => \n{\n    var exampleCluster = new Nutanix.KarbonCluster(\"example_cluster\", new()\n    {\n        Name = \"example_cluster\",\n        Version = \"1.18.15-1\",\n        StorageClassConfig = new Nutanix.Inputs.KarbonClusterStorageClassConfigArgs\n        {\n            ReclaimPolicy = \"Delete\",\n            VolumesConfig = new Nutanix.Inputs.KarbonClusterStorageClassConfigVolumesConfigArgs\n            {\n                FileSystem = \"ext4\",\n                FlashMode = false,\n                Password = \"my_pe_pw\",\n                PrismElementClusterUuid = \"my_pe_cluster_uuid\",\n                StorageContainer = \"my_storage_container_name\",\n                Username = \"my_pe_username\",\n            },\n        },\n        CniConfig = new Nutanix.Inputs.KarbonClusterCniConfigArgs\n        {\n            NodeCidrMaskSize = 24,\n            PodIpv4Cidr = \"172.20.0.0/16\",\n            ServiceIpv4Cidr = \"172.19.0.0/16\",\n        },\n        WorkerNodePool = new Nutanix.Inputs.KarbonClusterWorkerNodePoolArgs\n        {\n            NodeOsVersion = \"ntnx-1.0\",\n            NumInstances = 1,\n            AhvConfig = new Nutanix.Inputs.KarbonClusterWorkerNodePoolAhvConfigArgs\n            {\n                NetworkUuid = \"my_subnet_id\",\n                PrismElementClusterUuid = \"my_pe_cluster_uuid\",\n            },\n        },\n        EtcdNodePool = new Nutanix.Inputs.KarbonClusterEtcdNodePoolArgs\n        {\n            NodeOsVersion = \"ntnx-1.0\",\n            NumInstances = 1,\n            AhvConfig = new Nutanix.Inputs.KarbonClusterEtcdNodePoolAhvConfigArgs\n            {\n                NetworkUuid = \"my_subnet_id\",\n                PrismElementClusterUuid = \"my_pe_cluster_uuid\",\n            },\n        },\n        MasterNodePool = new Nutanix.Inputs.KarbonClusterMasterNodePoolArgs\n        {\n            NodeOsVersion = \"ntnx-1.0\",\n            NumInstances = 1,\n            AhvConfig = new Nutanix.Inputs.KarbonClusterMasterNodePoolAhvConfigArgs\n            {\n                NetworkUuid = \"my_subnet_id\",\n                PrismElementClusterUuid = \"my_pe_cluster_uuid\",\n            },\n        },\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pierskarsenbarg/pulumi-nutanix/sdk/go/nutanix\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := nutanix.NewKarbonCluster(ctx, \"example_cluster\", &nutanix.KarbonClusterArgs{\n\t\t\tName:    pulumi.String(\"example_cluster\"),\n\t\t\tVersion: pulumi.String(\"1.18.15-1\"),\n\t\t\tStorageClassConfig: &nutanix.KarbonClusterStorageClassConfigArgs{\n\t\t\t\tReclaimPolicy: pulumi.String(\"Delete\"),\n\t\t\t\tVolumesConfig: &nutanix.KarbonClusterStorageClassConfigVolumesConfigArgs{\n\t\t\t\t\tFileSystem:              pulumi.String(\"ext4\"),\n\t\t\t\t\tFlashMode:               pulumi.Bool(false),\n\t\t\t\t\tPassword:                pulumi.String(\"my_pe_pw\"),\n\t\t\t\t\tPrismElementClusterUuid: pulumi.String(\"my_pe_cluster_uuid\"),\n\t\t\t\t\tStorageContainer:        pulumi.String(\"my_storage_container_name\"),\n\t\t\t\t\tUsername:                pulumi.String(\"my_pe_username\"),\n\t\t\t\t},\n\t\t\t},\n\t\t\tCniConfig: &nutanix.KarbonClusterCniConfigArgs{\n\t\t\t\tNodeCidrMaskSize: pulumi.Int(24),\n\t\t\t\tPodIpv4Cidr:      pulumi.String(\"172.20.0.0/16\"),\n\t\t\t\tServiceIpv4Cidr:  pulumi.String(\"172.19.0.0/16\"),\n\t\t\t},\n\t\t\tWorkerNodePool: &nutanix.KarbonClusterWorkerNodePoolArgs{\n\t\t\t\tNodeOsVersion: pulumi.String(\"ntnx-1.0\"),\n\t\t\t\tNumInstances:  pulumi.Int(1),\n\t\t\t\tAhvConfig: &nutanix.KarbonClusterWorkerNodePoolAhvConfigArgs{\n\t\t\t\t\tNetworkUuid:             pulumi.String(\"my_subnet_id\"),\n\t\t\t\t\tPrismElementClusterUuid: pulumi.String(\"my_pe_cluster_uuid\"),\n\t\t\t\t},\n\t\t\t},\n\t\t\tEtcdNodePool: &nutanix.KarbonClusterEtcdNodePoolArgs{\n\t\t\t\tNodeOsVersion: pulumi.String(\"ntnx-1.0\"),\n\t\t\t\tNumInstances:  pulumi.Int(1),\n\t\t\t\tAhvConfig: &nutanix.KarbonClusterEtcdNodePoolAhvConfigArgs{\n\t\t\t\t\tNetworkUuid:             pulumi.String(\"my_subnet_id\"),\n\t\t\t\t\tPrismElementClusterUuid: pulumi.String(\"my_pe_cluster_uuid\"),\n\t\t\t\t},\n\t\t\t},\n\t\t\tMasterNodePool: &nutanix.KarbonClusterMasterNodePoolArgs{\n\t\t\t\tNodeOsVersion: pulumi.String(\"ntnx-1.0\"),\n\t\t\t\tNumInstances:  pulumi.Int(1),\n\t\t\t\tAhvConfig: &nutanix.KarbonClusterMasterNodePoolAhvConfigArgs{\n\t\t\t\t\tNetworkUuid:             pulumi.String(\"my_subnet_id\"),\n\t\t\t\t\tPrismElementClusterUuid: pulumi.String(\"my_pe_cluster_uuid\"),\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.nutanix.KarbonCluster;\nimport com.pulumi.nutanix.KarbonClusterArgs;\nimport com.pulumi.nutanix.inputs.KarbonClusterStorageClassConfigArgs;\nimport com.pulumi.nutanix.inputs.KarbonClusterStorageClassConfigVolumesConfigArgs;\nimport com.pulumi.nutanix.inputs.KarbonClusterCniConfigArgs;\nimport com.pulumi.nutanix.inputs.KarbonClusterWorkerNodePoolArgs;\nimport com.pulumi.nutanix.inputs.KarbonClusterWorkerNodePoolAhvConfigArgs;\nimport com.pulumi.nutanix.inputs.KarbonClusterEtcdNodePoolArgs;\nimport com.pulumi.nutanix.inputs.KarbonClusterEtcdNodePoolAhvConfigArgs;\nimport com.pulumi.nutanix.inputs.KarbonClusterMasterNodePoolArgs;\nimport com.pulumi.nutanix.inputs.KarbonClusterMasterNodePoolAhvConfigArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var exampleCluster = new KarbonCluster(\"exampleCluster\", KarbonClusterArgs.builder()\n            .name(\"example_cluster\")\n            .version(\"1.18.15-1\")\n            .storageClassConfig(KarbonClusterStorageClassConfigArgs.builder()\n                .reclaimPolicy(\"Delete\")\n                .volumesConfig(KarbonClusterStorageClassConfigVolumesConfigArgs.builder()\n                    .fileSystem(\"ext4\")\n                    .flashMode(false)\n                    .password(\"my_pe_pw\")\n                    .prismElementClusterUuid(\"my_pe_cluster_uuid\")\n                    .storageContainer(\"my_storage_container_name\")\n                    .username(\"my_pe_username\")\n                    .build())\n                .build())\n            .cniConfig(KarbonClusterCniConfigArgs.builder()\n                .nodeCidrMaskSize(24)\n                .podIpv4Cidr(\"172.20.0.0/16\")\n                .serviceIpv4Cidr(\"172.19.0.0/16\")\n                .build())\n            .workerNodePool(KarbonClusterWorkerNodePoolArgs.builder()\n                .nodeOsVersion(\"ntnx-1.0\")\n                .numInstances(1)\n                .ahvConfig(KarbonClusterWorkerNodePoolAhvConfigArgs.builder()\n                    .networkUuid(\"my_subnet_id\")\n                    .prismElementClusterUuid(\"my_pe_cluster_uuid\")\n                    .build())\n                .build())\n            .etcdNodePool(KarbonClusterEtcdNodePoolArgs.builder()\n                .nodeOsVersion(\"ntnx-1.0\")\n                .numInstances(1)\n                .ahvConfig(KarbonClusterEtcdNodePoolAhvConfigArgs.builder()\n                    .networkUuid(\"my_subnet_id\")\n                    .prismElementClusterUuid(\"my_pe_cluster_uuid\")\n                    .build())\n                .build())\n            .masterNodePool(KarbonClusterMasterNodePoolArgs.builder()\n                .nodeOsVersion(\"ntnx-1.0\")\n                .numInstances(1)\n                .ahvConfig(KarbonClusterMasterNodePoolAhvConfigArgs.builder()\n                    .networkUuid(\"my_subnet_id\")\n                    .prismElementClusterUuid(\"my_pe_cluster_uuid\")\n                    .build())\n                .build())\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  exampleCluster:\n    type: nutanix:KarbonCluster\n    name: example_cluster\n    properties:\n      name: example_cluster\n      version: 1.18.15-1\n      storageClassConfig:\n        reclaimPolicy: Delete\n        volumesConfig:\n          fileSystem: ext4\n          flashMode: false\n          password: my_pe_pw\n          prismElementClusterUuid: my_pe_cluster_uuid\n          storageContainer: my_storage_container_name\n          username: my_pe_username\n      cniConfig:\n        nodeCidrMaskSize: 24\n        podIpv4Cidr: 172.20.0.0/16\n        serviceIpv4Cidr: 172.19.0.0/16\n      workerNodePool:\n        nodeOsVersion: ntnx-1.0\n        numInstances: 1\n        ahvConfig:\n          networkUuid: my_subnet_id\n          prismElementClusterUuid: my_pe_cluster_uuid\n      etcdNodePool:\n        nodeOsVersion: ntnx-1.0\n        numInstances: 1\n        ahvConfig:\n          networkUuid: my_subnet_id\n          prismElementClusterUuid: my_pe_cluster_uuid\n      masterNodePool:\n        nodeOsVersion: ntnx-1.0\n        numInstances: 1\n        ahvConfig:\n          networkUuid: my_subnet_id\n          prismElementClusterUuid: my_pe_cluster_uuid\n```\n<!--End PulumiCodeChooser -->\n\n\n### resource to create karbon cluster with timeouts\n<!--Start PulumiCodeChooser -->\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as nutanix from \"@pierskarsenbarg/nutanix\";\n\nconst exampleCluster = new nutanix.KarbonCluster(\"example_cluster\", {\n    name: \"example_cluster\",\n    version: \"1.18.15-1\",\n    storageClassConfig: {\n        reclaimPolicy: \"Delete\",\n        volumesConfig: {\n            fileSystem: \"ext4\",\n            flashMode: false,\n            password: \"my_pe_pw\",\n            prismElementClusterUuid: \"my_pe_cluster_uuid\",\n            storageContainer: \"my_storage_container_name\",\n            username: \"my_pe_username\",\n        },\n    },\n    cniConfig: {\n        nodeCidrMaskSize: 24,\n        podIpv4Cidr: \"172.20.0.0/16\",\n        serviceIpv4Cidr: \"172.19.0.0/16\",\n    },\n    workerNodePool: {\n        nodeOsVersion: \"ntnx-1.0\",\n        numInstances: 1,\n        ahvConfig: {\n            networkUuid: \"my_subnet_id\",\n            prismElementClusterUuid: \"my_pe_cluster_uuid\",\n        },\n    },\n    etcdNodePool: {\n        nodeOsVersion: \"ntnx-1.0\",\n        numInstances: 1,\n        ahvConfig: {\n            networkUuid: \"my_subnet_id\",\n            prismElementClusterUuid: \"my_pe_cluster_uuid\",\n        },\n    },\n    masterNodePool: {\n        nodeOsVersion: \"ntnx-1.0\",\n        numInstances: 1,\n        ahvConfig: {\n            networkUuid: \"my_subnet_id\",\n            prismElementClusterUuid: \"my_pe_cluster_uuid\",\n        },\n    },\n});\n```\n```python\nimport pulumi\nimport pulumi_nutanix as nutanix\n\nexample_cluster = nutanix.KarbonCluster(\"example_cluster\",\n    name=\"example_cluster\",\n    version=\"1.18.15-1\",\n    storage_class_config={\n        \"reclaim_policy\": \"Delete\",\n        \"volumes_config\": {\n            \"file_system\": \"ext4\",\n            \"flash_mode\": False,\n            \"password\": \"my_pe_pw\",\n            \"prism_element_cluster_uuid\": \"my_pe_cluster_uuid\",\n            \"storage_container\": \"my_storage_container_name\",\n            \"username\": \"my_pe_username\",\n        },\n    },\n    cni_config={\n        \"node_cidr_mask_size\": 24,\n        \"pod_ipv4_cidr\": \"172.20.0.0/16\",\n        \"service_ipv4_cidr\": \"172.19.0.0/16\",\n    },\n    worker_node_pool={\n        \"node_os_version\": \"ntnx-1.0\",\n        \"num_instances\": 1,\n        \"ahv_config\": {\n            \"network_uuid\": \"my_subnet_id\",\n            \"prism_element_cluster_uuid\": \"my_pe_cluster_uuid\",\n        },\n    },\n    etcd_node_pool={\n        \"node_os_version\": \"ntnx-1.0\",\n        \"num_instances\": 1,\n        \"ahv_config\": {\n            \"network_uuid\": \"my_subnet_id\",\n            \"prism_element_cluster_uuid\": \"my_pe_cluster_uuid\",\n        },\n    },\n    master_node_pool={\n        \"node_os_version\": \"ntnx-1.0\",\n        \"num_instances\": 1,\n        \"ahv_config\": {\n            \"network_uuid\": \"my_subnet_id\",\n            \"prism_element_cluster_uuid\": \"my_pe_cluster_uuid\",\n        },\n    })\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Nutanix = PiersKarsenbarg.Nutanix;\n\nreturn await Deployment.RunAsync(() => \n{\n    var exampleCluster = new Nutanix.KarbonCluster(\"example_cluster\", new()\n    {\n        Name = \"example_cluster\",\n        Version = \"1.18.15-1\",\n        StorageClassConfig = new Nutanix.Inputs.KarbonClusterStorageClassConfigArgs\n        {\n            ReclaimPolicy = \"Delete\",\n            VolumesConfig = new Nutanix.Inputs.KarbonClusterStorageClassConfigVolumesConfigArgs\n            {\n                FileSystem = \"ext4\",\n                FlashMode = false,\n                Password = \"my_pe_pw\",\n                PrismElementClusterUuid = \"my_pe_cluster_uuid\",\n                StorageContainer = \"my_storage_container_name\",\n                Username = \"my_pe_username\",\n            },\n        },\n        CniConfig = new Nutanix.Inputs.KarbonClusterCniConfigArgs\n        {\n            NodeCidrMaskSize = 24,\n            PodIpv4Cidr = \"172.20.0.0/16\",\n            ServiceIpv4Cidr = \"172.19.0.0/16\",\n        },\n        WorkerNodePool = new Nutanix.Inputs.KarbonClusterWorkerNodePoolArgs\n        {\n            NodeOsVersion = \"ntnx-1.0\",\n            NumInstances = 1,\n            AhvConfig = new Nutanix.Inputs.KarbonClusterWorkerNodePoolAhvConfigArgs\n            {\n                NetworkUuid = \"my_subnet_id\",\n                PrismElementClusterUuid = \"my_pe_cluster_uuid\",\n            },\n        },\n        EtcdNodePool = new Nutanix.Inputs.KarbonClusterEtcdNodePoolArgs\n        {\n            NodeOsVersion = \"ntnx-1.0\",\n            NumInstances = 1,\n            AhvConfig = new Nutanix.Inputs.KarbonClusterEtcdNodePoolAhvConfigArgs\n            {\n                NetworkUuid = \"my_subnet_id\",\n                PrismElementClusterUuid = \"my_pe_cluster_uuid\",\n            },\n        },\n        MasterNodePool = new Nutanix.Inputs.KarbonClusterMasterNodePoolArgs\n        {\n            NodeOsVersion = \"ntnx-1.0\",\n            NumInstances = 1,\n            AhvConfig = new Nutanix.Inputs.KarbonClusterMasterNodePoolAhvConfigArgs\n            {\n                NetworkUuid = \"my_subnet_id\",\n                PrismElementClusterUuid = \"my_pe_cluster_uuid\",\n            },\n        },\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pierskarsenbarg/pulumi-nutanix/sdk/go/nutanix\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := nutanix.NewKarbonCluster(ctx, \"example_cluster\", &nutanix.KarbonClusterArgs{\n\t\t\tName:    pulumi.String(\"example_cluster\"),\n\t\t\tVersion: pulumi.String(\"1.18.15-1\"),\n\t\t\tStorageClassConfig: &nutanix.KarbonClusterStorageClassConfigArgs{\n\t\t\t\tReclaimPolicy: pulumi.String(\"Delete\"),\n\t\t\t\tVolumesConfig: &nutanix.KarbonClusterStorageClassConfigVolumesConfigArgs{\n\t\t\t\t\tFileSystem:              pulumi.String(\"ext4\"),\n\t\t\t\t\tFlashMode:               pulumi.Bool(false),\n\t\t\t\t\tPassword:                pulumi.String(\"my_pe_pw\"),\n\t\t\t\t\tPrismElementClusterUuid: pulumi.String(\"my_pe_cluster_uuid\"),\n\t\t\t\t\tStorageContainer:        pulumi.String(\"my_storage_container_name\"),\n\t\t\t\t\tUsername:                pulumi.String(\"my_pe_username\"),\n\t\t\t\t},\n\t\t\t},\n\t\t\tCniConfig: &nutanix.KarbonClusterCniConfigArgs{\n\t\t\t\tNodeCidrMaskSize: pulumi.Int(24),\n\t\t\t\tPodIpv4Cidr:      pulumi.String(\"172.20.0.0/16\"),\n\t\t\t\tServiceIpv4Cidr:  pulumi.String(\"172.19.0.0/16\"),\n\t\t\t},\n\t\t\tWorkerNodePool: &nutanix.KarbonClusterWorkerNodePoolArgs{\n\t\t\t\tNodeOsVersion: pulumi.String(\"ntnx-1.0\"),\n\t\t\t\tNumInstances:  pulumi.Int(1),\n\t\t\t\tAhvConfig: &nutanix.KarbonClusterWorkerNodePoolAhvConfigArgs{\n\t\t\t\t\tNetworkUuid:             pulumi.String(\"my_subnet_id\"),\n\t\t\t\t\tPrismElementClusterUuid: pulumi.String(\"my_pe_cluster_uuid\"),\n\t\t\t\t},\n\t\t\t},\n\t\t\tEtcdNodePool: &nutanix.KarbonClusterEtcdNodePoolArgs{\n\t\t\t\tNodeOsVersion: pulumi.String(\"ntnx-1.0\"),\n\t\t\t\tNumInstances:  pulumi.Int(1),\n\t\t\t\tAhvConfig: &nutanix.KarbonClusterEtcdNodePoolAhvConfigArgs{\n\t\t\t\t\tNetworkUuid:             pulumi.String(\"my_subnet_id\"),\n\t\t\t\t\tPrismElementClusterUuid: pulumi.String(\"my_pe_cluster_uuid\"),\n\t\t\t\t},\n\t\t\t},\n\t\t\tMasterNodePool: &nutanix.KarbonClusterMasterNodePoolArgs{\n\t\t\t\tNodeOsVersion: pulumi.String(\"ntnx-1.0\"),\n\t\t\t\tNumInstances:  pulumi.Int(1),\n\t\t\t\tAhvConfig: &nutanix.KarbonClusterMasterNodePoolAhvConfigArgs{\n\t\t\t\t\tNetworkUuid:             pulumi.String(\"my_subnet_id\"),\n\t\t\t\t\tPrismElementClusterUuid: pulumi.String(\"my_pe_cluster_uuid\"),\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.nutanix.KarbonCluster;\nimport com.pulumi.nutanix.KarbonClusterArgs;\nimport com.pulumi.nutanix.inputs.KarbonClusterStorageClassConfigArgs;\nimport com.pulumi.nutanix.inputs.KarbonClusterStorageClassConfigVolumesConfigArgs;\nimport com.pulumi.nutanix.inputs.KarbonClusterCniConfigArgs;\nimport com.pulumi.nutanix.inputs.KarbonClusterWorkerNodePoolArgs;\nimport com.pulumi.nutanix.inputs.KarbonClusterWorkerNodePoolAhvConfigArgs;\nimport com.pulumi.nutanix.inputs.KarbonClusterEtcdNodePoolArgs;\nimport com.pulumi.nutanix.inputs.KarbonClusterEtcdNodePoolAhvConfigArgs;\nimport com.pulumi.nutanix.inputs.KarbonClusterMasterNodePoolArgs;\nimport com.pulumi.nutanix.inputs.KarbonClusterMasterNodePoolAhvConfigArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var exampleCluster = new KarbonCluster(\"exampleCluster\", KarbonClusterArgs.builder()\n            .name(\"example_cluster\")\n            .version(\"1.18.15-1\")\n            .storageClassConfig(KarbonClusterStorageClassConfigArgs.builder()\n                .reclaimPolicy(\"Delete\")\n                .volumesConfig(KarbonClusterStorageClassConfigVolumesConfigArgs.builder()\n                    .fileSystem(\"ext4\")\n                    .flashMode(false)\n                    .password(\"my_pe_pw\")\n                    .prismElementClusterUuid(\"my_pe_cluster_uuid\")\n                    .storageContainer(\"my_storage_container_name\")\n                    .username(\"my_pe_username\")\n                    .build())\n                .build())\n            .cniConfig(KarbonClusterCniConfigArgs.builder()\n                .nodeCidrMaskSize(24)\n                .podIpv4Cidr(\"172.20.0.0/16\")\n                .serviceIpv4Cidr(\"172.19.0.0/16\")\n                .build())\n            .workerNodePool(KarbonClusterWorkerNodePoolArgs.builder()\n                .nodeOsVersion(\"ntnx-1.0\")\n                .numInstances(1)\n                .ahvConfig(KarbonClusterWorkerNodePoolAhvConfigArgs.builder()\n                    .networkUuid(\"my_subnet_id\")\n                    .prismElementClusterUuid(\"my_pe_cluster_uuid\")\n                    .build())\n                .build())\n            .etcdNodePool(KarbonClusterEtcdNodePoolArgs.builder()\n                .nodeOsVersion(\"ntnx-1.0\")\n                .numInstances(1)\n                .ahvConfig(KarbonClusterEtcdNodePoolAhvConfigArgs.builder()\n                    .networkUuid(\"my_subnet_id\")\n                    .prismElementClusterUuid(\"my_pe_cluster_uuid\")\n                    .build())\n                .build())\n            .masterNodePool(KarbonClusterMasterNodePoolArgs.builder()\n                .nodeOsVersion(\"ntnx-1.0\")\n                .numInstances(1)\n                .ahvConfig(KarbonClusterMasterNodePoolAhvConfigArgs.builder()\n                    .networkUuid(\"my_subnet_id\")\n                    .prismElementClusterUuid(\"my_pe_cluster_uuid\")\n                    .build())\n                .build())\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  exampleCluster:\n    type: nutanix:KarbonCluster\n    name: example_cluster\n    properties:\n      name: example_cluster\n      version: 1.18.15-1\n      storageClassConfig:\n        reclaimPolicy: Delete\n        volumesConfig:\n          fileSystem: ext4\n          flashMode: false\n          password: my_pe_pw\n          prismElementClusterUuid: my_pe_cluster_uuid\n          storageContainer: my_storage_container_name\n          username: my_pe_username\n      cniConfig:\n        nodeCidrMaskSize: 24\n        podIpv4Cidr: 172.20.0.0/16\n        serviceIpv4Cidr: 172.19.0.0/16\n      workerNodePool:\n        nodeOsVersion: ntnx-1.0\n        numInstances: 1\n        ahvConfig:\n          networkUuid: my_subnet_id\n          prismElementClusterUuid: my_pe_cluster_uuid\n      etcdNodePool:\n        nodeOsVersion: ntnx-1.0\n        numInstances: 1\n        ahvConfig:\n          networkUuid: my_subnet_id\n          prismElementClusterUuid: my_pe_cluster_uuid\n      masterNodePool:\n        nodeOsVersion: ntnx-1.0\n        numInstances: 1\n        ahvConfig:\n          networkUuid: my_subnet_id\n          prismElementClusterUuid: my_pe_cluster_uuid\n```\n<!--End PulumiCodeChooser -->\n",
      "properties": {
        "activePassiveConfig": {
          "$ref": "#/types/nutanix:index%2FKarbonClusterActivePassiveConfig:KarbonClusterActivePassiveConfig",
          "description": "- (Optional) The active passive mode uses the Virtual Router Redundancy Protocol (VRRP) protocol to provide high availability of the master. **Note:** Updates to this attribute forces new resource creation.\n"
        },
        "cniConfig": {
          "$ref": "#/types/nutanix:index%2FKarbonClusterCniConfig:KarbonClusterCniConfig",
          "description": "- (Required) K8s cluster networking configuration. The flannel or the calico configuration needs to be provided. **Note:** Updates to this attribute forces new resource creation.\n"
        },
        "deploymentType": {
          "type": "string"
        },
        "etcdNodePool": {
          "$ref": "#/types/nutanix:index%2FKarbonClusterEtcdNodePool:KarbonClusterEtcdNodePool",
          "description": "- (Required) Configuration of the node pools that the nodes in the etcd cluster belong to. The etcd nodes require a minimum of 8,192 MiB memory and 409,60 MiB disk space.\n"
        },
        "externalLbConfig": {
          "$ref": "#/types/nutanix:index%2FKarbonClusterExternalLbConfig:KarbonClusterExternalLbConfig",
          "description": "- (Optional) The external load balancer configuration in the case of a multi-master-external-load-balancer type master deployment. **Note:** Updates to this attribute forces new resource creation.\n"
        },
        "kubeapiServerIpv4Address": {
          "type": "string"
        },
        "masterNodePool": {
          "$ref": "#/types/nutanix:index%2FKarbonClusterMasterNodePool:KarbonClusterMasterNodePool",
          "description": "- (Required) Configuration of the master node pools.\n"
        },
        "name": {
          "type": "string",
          "description": "- (Required) The name for the k8s cluster. **Note:** Updates to this attribute forces new resource creation.\n"
        },
        "privateRegistries": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FKarbonClusterPrivateRegistry:KarbonClusterPrivateRegistry"
          },
          "description": "- (Optional) Allows the Karbon cluster to pull images of a list of private registries.\n"
        },
        "singleMasterConfig": {
          "$ref": "#/types/nutanix:index%2FKarbonClusterSingleMasterConfig:KarbonClusterSingleMasterConfig",
          "description": "- (Optional) Configuration of a single master node. **Note:** Updates to this attribute forces new resource creation.\n"
        },
        "status": {
          "type": "string"
        },
        "storageClassConfig": {
          "$ref": "#/types/nutanix:index%2FKarbonClusterStorageClassConfig:KarbonClusterStorageClassConfig",
          "description": "- (Required) Storage class configuration attribute for defining the persistent volume attributes. **Note:** Updates to this attribute forces new resource creation.\n"
        },
        "version": {
          "type": "string",
          "description": "- (Required) K8s version of the cluster. **Note:** Updates to this attribute forces new resource creation.\n"
        },
        "waitTimeoutMinutes": {
          "type": "integer",
          "description": "- (Optional) Maximum wait time for the Karbon cluster to provision.\n",
          "deprecationMessage": "use timeouts instead"
        },
        "workerNodePool": {
          "$ref": "#/types/nutanix:index%2FKarbonClusterWorkerNodePool:KarbonClusterWorkerNodePool"
        }
      },
      "type": "object",
      "required": [
        "cniConfig",
        "deploymentType",
        "etcdNodePool",
        "kubeapiServerIpv4Address",
        "masterNodePool",
        "name",
        "status",
        "storageClassConfig",
        "version",
        "workerNodePool"
      ],
      "inputProperties": {
        "activePassiveConfig": {
          "$ref": "#/types/nutanix:index%2FKarbonClusterActivePassiveConfig:KarbonClusterActivePassiveConfig",
          "description": "- (Optional) The active passive mode uses the Virtual Router Redundancy Protocol (VRRP) protocol to provide high availability of the master. **Note:** Updates to this attribute forces new resource creation.\n",
          "willReplaceOnChanges": true
        },
        "cniConfig": {
          "$ref": "#/types/nutanix:index%2FKarbonClusterCniConfig:KarbonClusterCniConfig",
          "description": "- (Required) K8s cluster networking configuration. The flannel or the calico configuration needs to be provided. **Note:** Updates to this attribute forces new resource creation.\n",
          "willReplaceOnChanges": true
        },
        "etcdNodePool": {
          "$ref": "#/types/nutanix:index%2FKarbonClusterEtcdNodePool:KarbonClusterEtcdNodePool",
          "description": "- (Required) Configuration of the node pools that the nodes in the etcd cluster belong to. The etcd nodes require a minimum of 8,192 MiB memory and 409,60 MiB disk space.\n"
        },
        "externalLbConfig": {
          "$ref": "#/types/nutanix:index%2FKarbonClusterExternalLbConfig:KarbonClusterExternalLbConfig",
          "description": "- (Optional) The external load balancer configuration in the case of a multi-master-external-load-balancer type master deployment. **Note:** Updates to this attribute forces new resource creation.\n",
          "willReplaceOnChanges": true
        },
        "masterNodePool": {
          "$ref": "#/types/nutanix:index%2FKarbonClusterMasterNodePool:KarbonClusterMasterNodePool",
          "description": "- (Required) Configuration of the master node pools.\n"
        },
        "name": {
          "type": "string",
          "description": "- (Required) The name for the k8s cluster. **Note:** Updates to this attribute forces new resource creation.\n",
          "willReplaceOnChanges": true
        },
        "privateRegistries": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FKarbonClusterPrivateRegistry:KarbonClusterPrivateRegistry"
          },
          "description": "- (Optional) Allows the Karbon cluster to pull images of a list of private registries.\n"
        },
        "singleMasterConfig": {
          "$ref": "#/types/nutanix:index%2FKarbonClusterSingleMasterConfig:KarbonClusterSingleMasterConfig",
          "description": "- (Optional) Configuration of a single master node. **Note:** Updates to this attribute forces new resource creation.\n",
          "willReplaceOnChanges": true
        },
        "storageClassConfig": {
          "$ref": "#/types/nutanix:index%2FKarbonClusterStorageClassConfig:KarbonClusterStorageClassConfig",
          "description": "- (Required) Storage class configuration attribute for defining the persistent volume attributes. **Note:** Updates to this attribute forces new resource creation.\n",
          "willReplaceOnChanges": true
        },
        "version": {
          "type": "string",
          "description": "- (Required) K8s version of the cluster. **Note:** Updates to this attribute forces new resource creation.\n",
          "willReplaceOnChanges": true
        },
        "waitTimeoutMinutes": {
          "type": "integer",
          "description": "- (Optional) Maximum wait time for the Karbon cluster to provision.\n",
          "deprecationMessage": "use timeouts instead"
        },
        "workerNodePool": {
          "$ref": "#/types/nutanix:index%2FKarbonClusterWorkerNodePool:KarbonClusterWorkerNodePool"
        }
      },
      "requiredInputs": [
        "cniConfig",
        "etcdNodePool",
        "masterNodePool",
        "storageClassConfig",
        "version",
        "workerNodePool"
      ],
      "stateInputs": {
        "description": "Input properties used for looking up and filtering KarbonCluster resources.\n",
        "properties": {
          "activePassiveConfig": {
            "$ref": "#/types/nutanix:index%2FKarbonClusterActivePassiveConfig:KarbonClusterActivePassiveConfig",
            "description": "- (Optional) The active passive mode uses the Virtual Router Redundancy Protocol (VRRP) protocol to provide high availability of the master. **Note:** Updates to this attribute forces new resource creation.\n",
            "willReplaceOnChanges": true
          },
          "cniConfig": {
            "$ref": "#/types/nutanix:index%2FKarbonClusterCniConfig:KarbonClusterCniConfig",
            "description": "- (Required) K8s cluster networking configuration. The flannel or the calico configuration needs to be provided. **Note:** Updates to this attribute forces new resource creation.\n",
            "willReplaceOnChanges": true
          },
          "deploymentType": {
            "type": "string"
          },
          "etcdNodePool": {
            "$ref": "#/types/nutanix:index%2FKarbonClusterEtcdNodePool:KarbonClusterEtcdNodePool",
            "description": "- (Required) Configuration of the node pools that the nodes in the etcd cluster belong to. The etcd nodes require a minimum of 8,192 MiB memory and 409,60 MiB disk space.\n"
          },
          "externalLbConfig": {
            "$ref": "#/types/nutanix:index%2FKarbonClusterExternalLbConfig:KarbonClusterExternalLbConfig",
            "description": "- (Optional) The external load balancer configuration in the case of a multi-master-external-load-balancer type master deployment. **Note:** Updates to this attribute forces new resource creation.\n",
            "willReplaceOnChanges": true
          },
          "kubeapiServerIpv4Address": {
            "type": "string"
          },
          "masterNodePool": {
            "$ref": "#/types/nutanix:index%2FKarbonClusterMasterNodePool:KarbonClusterMasterNodePool",
            "description": "- (Required) Configuration of the master node pools.\n"
          },
          "name": {
            "type": "string",
            "description": "- (Required) The name for the k8s cluster. **Note:** Updates to this attribute forces new resource creation.\n",
            "willReplaceOnChanges": true
          },
          "privateRegistries": {
            "type": "array",
            "items": {
              "$ref": "#/types/nutanix:index%2FKarbonClusterPrivateRegistry:KarbonClusterPrivateRegistry"
            },
            "description": "- (Optional) Allows the Karbon cluster to pull images of a list of private registries.\n"
          },
          "singleMasterConfig": {
            "$ref": "#/types/nutanix:index%2FKarbonClusterSingleMasterConfig:KarbonClusterSingleMasterConfig",
            "description": "- (Optional) Configuration of a single master node. **Note:** Updates to this attribute forces new resource creation.\n",
            "willReplaceOnChanges": true
          },
          "status": {
            "type": "string"
          },
          "storageClassConfig": {
            "$ref": "#/types/nutanix:index%2FKarbonClusterStorageClassConfig:KarbonClusterStorageClassConfig",
            "description": "- (Required) Storage class configuration attribute for defining the persistent volume attributes. **Note:** Updates to this attribute forces new resource creation.\n",
            "willReplaceOnChanges": true
          },
          "version": {
            "type": "string",
            "description": "- (Required) K8s version of the cluster. **Note:** Updates to this attribute forces new resource creation.\n",
            "willReplaceOnChanges": true
          },
          "waitTimeoutMinutes": {
            "type": "integer",
            "description": "- (Optional) Maximum wait time for the Karbon cluster to provision.\n",
            "deprecationMessage": "use timeouts instead"
          },
          "workerNodePool": {
            "$ref": "#/types/nutanix:index%2FKarbonClusterWorkerNodePool:KarbonClusterWorkerNodePool"
          }
        },
        "type": "object"
      }
    },
    "nutanix:index/karbonPrivateRegistry:KarbonPrivateRegistry": {
      "description": "Provides a Nutanix Karbon Registry resource to Create a private registry entry in Karbon.\n\n## Example Usage\n\n<!--Start PulumiCodeChooser -->\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as nutanix from \"@pierskarsenbarg/nutanix\";\n\nconst registries = nutanix.getKarbonPrivateRegistry({});\nconst registry = new nutanix.KarbonPrivateRegistry(\"registry\", {});\n```\n```python\nimport pulumi\nimport pulumi_nutanix as nutanix\n\nregistries = nutanix.get_karbon_private_registry()\nregistry = nutanix.KarbonPrivateRegistry(\"registry\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Nutanix = PiersKarsenbarg.Nutanix;\nusing Nutanix = Pulumi.Nutanix;\n\nreturn await Deployment.RunAsync(() => \n{\n    var registries = Nutanix.GetKarbonPrivateRegistry.Invoke();\n\n    var registry = new Nutanix.KarbonPrivateRegistry(\"registry\");\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pierskarsenbarg/pulumi-nutanix/sdk/go/nutanix\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := nutanix.LookupKarbonPrivateRegistry(ctx, &nutanix.LookupKarbonPrivateRegistryArgs{}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = nutanix.NewKarbonPrivateRegistry(ctx, \"registry\", nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.nutanix.NutanixFunctions;\nimport com.pulumi.nutanix.inputs.GetKarbonPrivateRegistryArgs;\nimport com.pulumi.nutanix.KarbonPrivateRegistry;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var registries = NutanixFunctions.getKarbonPrivateRegistry(GetKarbonPrivateRegistryArgs.builder()\n            .build());\n\n        var registry = new KarbonPrivateRegistry(\"registry\");\n\n    }\n}\n```\n```yaml\nresources:\n  registry:\n    type: nutanix:KarbonPrivateRegistry\nvariables:\n  registries:\n    fn::invoke:\n      function: nutanix:getKarbonPrivateRegistry\n      arguments: {}\n```\n<!--End PulumiCodeChooser -->\n",
      "properties": {
        "cert": {
          "type": "string",
          "description": "- (Optional) Certificate of the private registry in format of base64-encoded byte array. **Note:** Updates to this attribute forces new resource creation.\n"
        },
        "endpoint": {
          "type": "string",
          "description": "- Endpoint of the private in format `url:port`.\n"
        },
        "name": {
          "type": "string",
          "description": "- (Required) Name of the private registry configuration. **Note:** Updates to this attribute forces new resource creation.\n"
        },
        "password": {
          "type": "string",
          "description": "- (Optional) Password for authentication to the private registry. **Note:** Updates to this attribute forces new resource creation.\n",
          "secret": true
        },
        "port": {
          "type": "integer",
          "description": "- (Optional) Port of the private registry.\n"
        },
        "url": {
          "type": "string",
          "description": "- (Optional) URL of the private registry. **Note:** Updates to this attribute forces new resource creation.\n"
        },
        "username": {
          "type": "string",
          "description": "- (Optional) Username for authentication to the private registry. **Note:** Updates to this attribute forces new resource creation.\n"
        }
      },
      "type": "object",
      "required": [
        "endpoint",
        "name",
        "url"
      ],
      "inputProperties": {
        "cert": {
          "type": "string",
          "description": "- (Optional) Certificate of the private registry in format of base64-encoded byte array. **Note:** Updates to this attribute forces new resource creation.\n",
          "willReplaceOnChanges": true
        },
        "name": {
          "type": "string",
          "description": "- (Required) Name of the private registry configuration. **Note:** Updates to this attribute forces new resource creation.\n",
          "willReplaceOnChanges": true
        },
        "password": {
          "type": "string",
          "description": "- (Optional) Password for authentication to the private registry. **Note:** Updates to this attribute forces new resource creation.\n",
          "secret": true,
          "willReplaceOnChanges": true
        },
        "port": {
          "type": "integer",
          "description": "- (Optional) Port of the private registry.\n"
        },
        "url": {
          "type": "string",
          "description": "- (Optional) URL of the private registry. **Note:** Updates to this attribute forces new resource creation.\n",
          "willReplaceOnChanges": true
        },
        "username": {
          "type": "string",
          "description": "- (Optional) Username for authentication to the private registry. **Note:** Updates to this attribute forces new resource creation.\n",
          "willReplaceOnChanges": true
        }
      },
      "requiredInputs": [
        "url"
      ],
      "stateInputs": {
        "description": "Input properties used for looking up and filtering KarbonPrivateRegistry resources.\n",
        "properties": {
          "cert": {
            "type": "string",
            "description": "- (Optional) Certificate of the private registry in format of base64-encoded byte array. **Note:** Updates to this attribute forces new resource creation.\n",
            "willReplaceOnChanges": true
          },
          "endpoint": {
            "type": "string",
            "description": "- Endpoint of the private in format `url:port`.\n"
          },
          "name": {
            "type": "string",
            "description": "- (Required) Name of the private registry configuration. **Note:** Updates to this attribute forces new resource creation.\n",
            "willReplaceOnChanges": true
          },
          "password": {
            "type": "string",
            "description": "- (Optional) Password for authentication to the private registry. **Note:** Updates to this attribute forces new resource creation.\n",
            "secret": true,
            "willReplaceOnChanges": true
          },
          "port": {
            "type": "integer",
            "description": "- (Optional) Port of the private registry.\n"
          },
          "url": {
            "type": "string",
            "description": "- (Optional) URL of the private registry. **Note:** Updates to this attribute forces new resource creation.\n",
            "willReplaceOnChanges": true
          },
          "username": {
            "type": "string",
            "description": "- (Optional) Username for authentication to the private registry. **Note:** Updates to this attribute forces new resource creation.\n",
            "willReplaceOnChanges": true
          }
        },
        "type": "object"
      }
    },
    "nutanix:index/karbonWorkerNodepool:KarbonWorkerNodepool": {
      "description": "Provides a resource to add/remove worker nodepool in an existing Nutanix Kubernetes Engine (NKE).\n\n## Example Usage\n\n<!--Start PulumiCodeChooser -->\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as nutanix from \"@pierskarsenbarg/nutanix\";\n\nconst kworkerNp = new nutanix.KarbonWorkerNodepool(\"kworkerNp\", {\n    clusterName: \"karbon\",\n    name: \"workerpool1\",\n    numInstances: 1,\n    ahvConfig: {\n        cpu: 4,\n        diskMib: 122880,\n        memoryMib: 8192,\n        networkUuid: \"61213511-6383-4a38-9ac8-4a552c0e5865\",\n    },\n});\n```\n```python\nimport pulumi\nimport pulumi_nutanix as nutanix\n\nkworker_np = nutanix.KarbonWorkerNodepool(\"kworkerNp\",\n    cluster_name=\"karbon\",\n    name=\"workerpool1\",\n    num_instances=1,\n    ahv_config={\n        \"cpu\": 4,\n        \"disk_mib\": 122880,\n        \"memory_mib\": 8192,\n        \"network_uuid\": \"61213511-6383-4a38-9ac8-4a552c0e5865\",\n    })\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Nutanix = PiersKarsenbarg.Nutanix;\n\nreturn await Deployment.RunAsync(() => \n{\n    var kworkerNp = new Nutanix.KarbonWorkerNodepool(\"kworkerNp\", new()\n    {\n        ClusterName = \"karbon\",\n        Name = \"workerpool1\",\n        NumInstances = 1,\n        AhvConfig = new Nutanix.Inputs.KarbonWorkerNodepoolAhvConfigArgs\n        {\n            Cpu = 4,\n            DiskMib = 122880,\n            MemoryMib = 8192,\n            NetworkUuid = \"61213511-6383-4a38-9ac8-4a552c0e5865\",\n        },\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pierskarsenbarg/pulumi-nutanix/sdk/go/nutanix\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := nutanix.NewKarbonWorkerNodepool(ctx, \"kworkerNp\", &nutanix.KarbonWorkerNodepoolArgs{\n\t\t\tClusterName:  pulumi.String(\"karbon\"),\n\t\t\tName:         pulumi.String(\"workerpool1\"),\n\t\t\tNumInstances: pulumi.Int(1),\n\t\t\tAhvConfig: &nutanix.KarbonWorkerNodepoolAhvConfigArgs{\n\t\t\t\tCpu:         pulumi.Int(4),\n\t\t\t\tDiskMib:     pulumi.Int(122880),\n\t\t\t\tMemoryMib:   pulumi.Int(8192),\n\t\t\t\tNetworkUuid: pulumi.String(\"61213511-6383-4a38-9ac8-4a552c0e5865\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.nutanix.KarbonWorkerNodepool;\nimport com.pulumi.nutanix.KarbonWorkerNodepoolArgs;\nimport com.pulumi.nutanix.inputs.KarbonWorkerNodepoolAhvConfigArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var kworkerNp = new KarbonWorkerNodepool(\"kworkerNp\", KarbonWorkerNodepoolArgs.builder()\n            .clusterName(\"karbon\")\n            .name(\"workerpool1\")\n            .numInstances(1)\n            .ahvConfig(KarbonWorkerNodepoolAhvConfigArgs.builder()\n                .cpu(4)\n                .diskMib(122880)\n                .memoryMib(8192)\n                .networkUuid(\"61213511-6383-4a38-9ac8-4a552c0e5865\")\n                .build())\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  kworkerNp:\n    type: nutanix:KarbonWorkerNodepool\n    properties:\n      clusterName: karbon\n      name: workerpool1\n      numInstances: 1\n      ahvConfig:\n        cpu: 4\n        diskMib: 122880\n        memoryMib: 8192\n        networkUuid: 61213511-6383-4a38-9ac8-4a552c0e5865\n```\n<!--End PulumiCodeChooser -->\n\n<!--Start PulumiCodeChooser -->\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as nutanix from \"@pierskarsenbarg/nutanix\";\n\nconst kworkerNp = new nutanix.KarbonWorkerNodepool(\"kworkerNp\", {\n    clusterName: \"karbon\",\n    name: \"workerpool1\",\n    numInstances: 1,\n    ahvConfig: {\n        cpu: 4,\n        diskMib: 122880,\n        memoryMib: 8192,\n        networkUuid: \"61213511-6383-4a38-9ac8-4a552c0e5865\",\n    },\n    labels: {\n        k1: \"v1\",\n        k2: \"v2\",\n    },\n});\n```\n```python\nimport pulumi\nimport pulumi_nutanix as nutanix\n\nkworker_np = nutanix.KarbonWorkerNodepool(\"kworkerNp\",\n    cluster_name=\"karbon\",\n    name=\"workerpool1\",\n    num_instances=1,\n    ahv_config={\n        \"cpu\": 4,\n        \"disk_mib\": 122880,\n        \"memory_mib\": 8192,\n        \"network_uuid\": \"61213511-6383-4a38-9ac8-4a552c0e5865\",\n    },\n    labels={\n        \"k1\": \"v1\",\n        \"k2\": \"v2\",\n    })\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Nutanix = PiersKarsenbarg.Nutanix;\n\nreturn await Deployment.RunAsync(() => \n{\n    var kworkerNp = new Nutanix.KarbonWorkerNodepool(\"kworkerNp\", new()\n    {\n        ClusterName = \"karbon\",\n        Name = \"workerpool1\",\n        NumInstances = 1,\n        AhvConfig = new Nutanix.Inputs.KarbonWorkerNodepoolAhvConfigArgs\n        {\n            Cpu = 4,\n            DiskMib = 122880,\n            MemoryMib = 8192,\n            NetworkUuid = \"61213511-6383-4a38-9ac8-4a552c0e5865\",\n        },\n        Labels = \n        {\n            { \"k1\", \"v1\" },\n            { \"k2\", \"v2\" },\n        },\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pierskarsenbarg/pulumi-nutanix/sdk/go/nutanix\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := nutanix.NewKarbonWorkerNodepool(ctx, \"kworkerNp\", &nutanix.KarbonWorkerNodepoolArgs{\n\t\t\tClusterName:  pulumi.String(\"karbon\"),\n\t\t\tName:         pulumi.String(\"workerpool1\"),\n\t\t\tNumInstances: pulumi.Int(1),\n\t\t\tAhvConfig: &nutanix.KarbonWorkerNodepoolAhvConfigArgs{\n\t\t\t\tCpu:         pulumi.Int(4),\n\t\t\t\tDiskMib:     pulumi.Int(122880),\n\t\t\t\tMemoryMib:   pulumi.Int(8192),\n\t\t\t\tNetworkUuid: pulumi.String(\"61213511-6383-4a38-9ac8-4a552c0e5865\"),\n\t\t\t},\n\t\t\tLabels: pulumi.StringMap{\n\t\t\t\t\"k1\": pulumi.String(\"v1\"),\n\t\t\t\t\"k2\": pulumi.String(\"v2\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.nutanix.KarbonWorkerNodepool;\nimport com.pulumi.nutanix.KarbonWorkerNodepoolArgs;\nimport com.pulumi.nutanix.inputs.KarbonWorkerNodepoolAhvConfigArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var kworkerNp = new KarbonWorkerNodepool(\"kworkerNp\", KarbonWorkerNodepoolArgs.builder()\n            .clusterName(\"karbon\")\n            .name(\"workerpool1\")\n            .numInstances(1)\n            .ahvConfig(KarbonWorkerNodepoolAhvConfigArgs.builder()\n                .cpu(4)\n                .diskMib(122880)\n                .memoryMib(8192)\n                .networkUuid(\"61213511-6383-4a38-9ac8-4a552c0e5865\")\n                .build())\n            .labels(Map.ofEntries(\n                Map.entry(\"k1\", \"v1\"),\n                Map.entry(\"k2\", \"v2\")\n            ))\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  kworkerNp:\n    type: nutanix:KarbonWorkerNodepool\n    properties:\n      clusterName: karbon\n      name: workerpool1\n      numInstances: 1\n      ahvConfig:\n        cpu: 4\n        diskMib: 122880\n        memoryMib: 8192\n        networkUuid: 61213511-6383-4a38-9ac8-4a552c0e5865\n      labels:\n        k1: v1\n        k2: v2\n```\n<!--End PulumiCodeChooser -->\n",
      "properties": {
        "ahvConfig": {
          "$ref": "#/types/nutanix:index%2FKarbonWorkerNodepoolAhvConfig:KarbonWorkerNodepoolAhvConfig",
          "description": "VM configuration in AHV.\n"
        },
        "clusterName": {
          "type": "string",
          "description": "Kubernetes cluster name\n"
        },
        "labels": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          },
          "description": "labels of node\n"
        },
        "name": {
          "type": "string",
          "description": "unique worker nodepool name\n"
        },
        "nodeOsVersion": {
          "type": "string",
          "description": "The version of the node OS image\n"
        },
        "nodes": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FKarbonWorkerNodepoolNode:KarbonWorkerNodepoolNode"
          },
          "description": "List of node details of pool.\n"
        },
        "numInstances": {
          "type": "integer",
          "description": "number of node instances\n"
        }
      },
      "type": "object",
      "required": [
        "ahvConfig",
        "clusterName",
        "labels",
        "name",
        "nodeOsVersion",
        "nodes",
        "numInstances"
      ],
      "inputProperties": {
        "ahvConfig": {
          "$ref": "#/types/nutanix:index%2FKarbonWorkerNodepoolAhvConfig:KarbonWorkerNodepoolAhvConfig",
          "description": "VM configuration in AHV.\n"
        },
        "clusterName": {
          "type": "string",
          "description": "Kubernetes cluster name\n"
        },
        "labels": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          },
          "description": "labels of node\n"
        },
        "name": {
          "type": "string",
          "description": "unique worker nodepool name\n"
        },
        "nodeOsVersion": {
          "type": "string",
          "description": "The version of the node OS image\n"
        },
        "numInstances": {
          "type": "integer",
          "description": "number of node instances\n"
        }
      },
      "requiredInputs": [
        "clusterName",
        "numInstances"
      ],
      "stateInputs": {
        "description": "Input properties used for looking up and filtering KarbonWorkerNodepool resources.\n",
        "properties": {
          "ahvConfig": {
            "$ref": "#/types/nutanix:index%2FKarbonWorkerNodepoolAhvConfig:KarbonWorkerNodepoolAhvConfig",
            "description": "VM configuration in AHV.\n"
          },
          "clusterName": {
            "type": "string",
            "description": "Kubernetes cluster name\n"
          },
          "labels": {
            "type": "object",
            "additionalProperties": {
              "type": "string"
            },
            "description": "labels of node\n"
          },
          "name": {
            "type": "string",
            "description": "unique worker nodepool name\n"
          },
          "nodeOsVersion": {
            "type": "string",
            "description": "The version of the node OS image\n"
          },
          "nodes": {
            "type": "array",
            "items": {
              "$ref": "#/types/nutanix:index%2FKarbonWorkerNodepoolNode:KarbonWorkerNodepoolNode"
            },
            "description": "List of node details of pool.\n"
          },
          "numInstances": {
            "type": "integer",
            "description": "number of node instances\n"
          }
        },
        "type": "object"
      }
    },
    "nutanix:index/lcmConfigV2:LcmConfigV2": {
      "description": "Update LCM configuration.\n\n## Example\n\n<!--Start PulumiCodeChooser -->\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as nutanix from \"@pierskarsenbarg/nutanix\";\n\n// Enable Auto Inventory, Add Auto Inventory Schedule and enable auto upgrade\nconst lcm_configuration_update = new nutanix.LcmConfigV2(\"lcm-configuration-update\", {\n    xClusterId: \"0005a104-0b0b-4b0b-8005-0b0b0b0b0b0b\",\n    isAutoInventoryEnabled: true,\n    autoInventorySchedule: \"16:30\",\n    hasModuleAutoUpgradeEnabled: true,\n});\n// Update the LCM url to darksite server\nconst lcm_configuration_update_connectivity_type = new nutanix.LcmConfigV2(\"lcm-configuration-update-connectivity-type\", {\n    xClusterId: \"0005a104-0b0b-4b0b-8005-0b0b0b0b0b0b\",\n    url: \"https://x.x.x.x:8000/builds\",\n    connectivityType: \"DARKSITE_WEB_SERVER\",\n});\n```\n```python\nimport pulumi\nimport pulumi_nutanix as nutanix\n\n# Enable Auto Inventory, Add Auto Inventory Schedule and enable auto upgrade\nlcm_configuration_update = nutanix.LcmConfigV2(\"lcm-configuration-update\",\n    x_cluster_id=\"0005a104-0b0b-4b0b-8005-0b0b0b0b0b0b\",\n    is_auto_inventory_enabled=True,\n    auto_inventory_schedule=\"16:30\",\n    has_module_auto_upgrade_enabled=True)\n# Update the LCM url to darksite server\nlcm_configuration_update_connectivity_type = nutanix.LcmConfigV2(\"lcm-configuration-update-connectivity-type\",\n    x_cluster_id=\"0005a104-0b0b-4b0b-8005-0b0b0b0b0b0b\",\n    url=\"https://x.x.x.x:8000/builds\",\n    connectivity_type=\"DARKSITE_WEB_SERVER\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Nutanix = PiersKarsenbarg.Nutanix;\n\nreturn await Deployment.RunAsync(() => \n{\n    // Enable Auto Inventory, Add Auto Inventory Schedule and enable auto upgrade\n    var lcm_configuration_update = new Nutanix.LcmConfigV2(\"lcm-configuration-update\", new()\n    {\n        XClusterId = \"0005a104-0b0b-4b0b-8005-0b0b0b0b0b0b\",\n        IsAutoInventoryEnabled = true,\n        AutoInventorySchedule = \"16:30\",\n        HasModuleAutoUpgradeEnabled = true,\n    });\n\n    // Update the LCM url to darksite server\n    var lcm_configuration_update_connectivity_type = new Nutanix.LcmConfigV2(\"lcm-configuration-update-connectivity-type\", new()\n    {\n        XClusterId = \"0005a104-0b0b-4b0b-8005-0b0b0b0b0b0b\",\n        Url = \"https://x.x.x.x:8000/builds\",\n        ConnectivityType = \"DARKSITE_WEB_SERVER\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pierskarsenbarg/pulumi-nutanix/sdk/go/nutanix\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t// Enable Auto Inventory, Add Auto Inventory Schedule and enable auto upgrade\n\t\t_, err := nutanix.NewLcmConfigV2(ctx, \"lcm-configuration-update\", &nutanix.LcmConfigV2Args{\n\t\t\tXClusterId:                  pulumi.String(\"0005a104-0b0b-4b0b-8005-0b0b0b0b0b0b\"),\n\t\t\tIsAutoInventoryEnabled:      pulumi.Bool(true),\n\t\t\tAutoInventorySchedule:       pulumi.String(\"16:30\"),\n\t\t\tHasModuleAutoUpgradeEnabled: pulumi.Bool(true),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t// Update the LCM url to darksite server\n\t\t_, err = nutanix.NewLcmConfigV2(ctx, \"lcm-configuration-update-connectivity-type\", &nutanix.LcmConfigV2Args{\n\t\t\tXClusterId:       pulumi.String(\"0005a104-0b0b-4b0b-8005-0b0b0b0b0b0b\"),\n\t\t\tUrl:              pulumi.String(\"https://x.x.x.x:8000/builds\"),\n\t\t\tConnectivityType: pulumi.String(\"DARKSITE_WEB_SERVER\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.nutanix.LcmConfigV2;\nimport com.pulumi.nutanix.LcmConfigV2Args;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        // Enable Auto Inventory, Add Auto Inventory Schedule and enable auto upgrade\n        var lcm_configuration_update = new LcmConfigV2(\"lcm-configuration-update\", LcmConfigV2Args.builder()\n            .xClusterId(\"0005a104-0b0b-4b0b-8005-0b0b0b0b0b0b\")\n            .isAutoInventoryEnabled(true)\n            .autoInventorySchedule(\"16:30\")\n            .hasModuleAutoUpgradeEnabled(true)\n            .build());\n\n        // Update the LCM url to darksite server\n        var lcm_configuration_update_connectivity_type = new LcmConfigV2(\"lcm-configuration-update-connectivity-type\", LcmConfigV2Args.builder()\n            .xClusterId(\"0005a104-0b0b-4b0b-8005-0b0b0b0b0b0b\")\n            .url(\"https://x.x.x.x:8000/builds\")\n            .connectivityType(\"DARKSITE_WEB_SERVER\")\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  # Enable Auto Inventory, Add Auto Inventory Schedule and enable auto upgrade\n  lcm-configuration-update:\n    type: nutanix:LcmConfigV2\n    properties:\n      xClusterId: 0005a104-0b0b-4b0b-8005-0b0b0b0b0b0b\n      isAutoInventoryEnabled: true\n      autoInventorySchedule: 16:30\n      hasModuleAutoUpgradeEnabled: true\n  # Update the LCM url to darksite server\n  lcm-configuration-update-connectivity-type:\n    type: nutanix:LcmConfigV2\n    properties:\n      xClusterId: 0005a104-0b0b-4b0b-8005-0b0b0b0b0b0b\n      url: https://x.x.x.x:8000/builds\n      connectivityType: DARKSITE_WEB_SERVER\n```\n<!--End PulumiCodeChooser -->\n",
      "properties": {
        "autoInventorySchedule": {
          "type": "string",
          "description": "The scheduled time in \"%H:%M\" 24-hour format of the next inventory execution. Used when<span pulumi-lang-nodejs=\" autoInventoryEnabled \" pulumi-lang-dotnet=\" AutoInventoryEnabled \" pulumi-lang-go=\" autoInventoryEnabled \" pulumi-lang-python=\" auto_inventory_enabled \" pulumi-lang-yaml=\" autoInventoryEnabled \" pulumi-lang-java=\" autoInventoryEnabled \"> auto_inventory_enabled </span>is set to True. The default schedule time is 03:00(AM).\n"
        },
        "connectivityType": {
          "type": "string",
          "description": "This field indicates whether LCM framework on the cluster is running in connected-site mode or darksite mode.\n"
        },
        "extId": {
          "type": "string"
        },
        "hasModuleAutoUpgradeEnabled": {
          "type": "boolean",
          "description": "Indicates if LCM is enabled to auto-upgrade products. The default value is False.\n\nSee detailed information in [Nutanix Update LCM Config V4](https://developers.nutanix.com/api-reference?namespace=lifecycle&version=v4.0#tag/Config/operation/updateConfig)\n"
        },
        "isAutoInventoryEnabled": {
          "type": "boolean",
          "description": "Indicates if the auto inventory operation is enabled. The default value is set to False.\n"
        },
        "isHttpsEnabled": {
          "type": "boolean",
          "description": "Indicates if the LCM URL has HTTPS enabled. The default value is True.\n"
        },
        "url": {
          "type": "string",
          "description": "URL of the LCM repository.\n"
        },
        "xClusterId": {
          "type": "string",
          "description": "Cluster uuid on which the resource is present or operation is being performed.\n"
        }
      },
      "type": "object",
      "required": [
        "extId"
      ],
      "inputProperties": {
        "autoInventorySchedule": {
          "type": "string",
          "description": "The scheduled time in \"%H:%M\" 24-hour format of the next inventory execution. Used when<span pulumi-lang-nodejs=\" autoInventoryEnabled \" pulumi-lang-dotnet=\" AutoInventoryEnabled \" pulumi-lang-go=\" autoInventoryEnabled \" pulumi-lang-python=\" auto_inventory_enabled \" pulumi-lang-yaml=\" autoInventoryEnabled \" pulumi-lang-java=\" autoInventoryEnabled \"> auto_inventory_enabled </span>is set to True. The default schedule time is 03:00(AM).\n"
        },
        "connectivityType": {
          "type": "string",
          "description": "This field indicates whether LCM framework on the cluster is running in connected-site mode or darksite mode.\n"
        },
        "hasModuleAutoUpgradeEnabled": {
          "type": "boolean",
          "description": "Indicates if LCM is enabled to auto-upgrade products. The default value is False.\n\nSee detailed information in [Nutanix Update LCM Config V4](https://developers.nutanix.com/api-reference?namespace=lifecycle&version=v4.0#tag/Config/operation/updateConfig)\n"
        },
        "isAutoInventoryEnabled": {
          "type": "boolean",
          "description": "Indicates if the auto inventory operation is enabled. The default value is set to False.\n"
        },
        "isHttpsEnabled": {
          "type": "boolean",
          "description": "Indicates if the LCM URL has HTTPS enabled. The default value is True.\n"
        },
        "url": {
          "type": "string",
          "description": "URL of the LCM repository.\n"
        },
        "xClusterId": {
          "type": "string",
          "description": "Cluster uuid on which the resource is present or operation is being performed.\n"
        }
      },
      "stateInputs": {
        "description": "Input properties used for looking up and filtering LcmConfigV2 resources.\n",
        "properties": {
          "autoInventorySchedule": {
            "type": "string",
            "description": "The scheduled time in \"%H:%M\" 24-hour format of the next inventory execution. Used when<span pulumi-lang-nodejs=\" autoInventoryEnabled \" pulumi-lang-dotnet=\" AutoInventoryEnabled \" pulumi-lang-go=\" autoInventoryEnabled \" pulumi-lang-python=\" auto_inventory_enabled \" pulumi-lang-yaml=\" autoInventoryEnabled \" pulumi-lang-java=\" autoInventoryEnabled \"> auto_inventory_enabled </span>is set to True. The default schedule time is 03:00(AM).\n"
          },
          "connectivityType": {
            "type": "string",
            "description": "This field indicates whether LCM framework on the cluster is running in connected-site mode or darksite mode.\n"
          },
          "extId": {
            "type": "string"
          },
          "hasModuleAutoUpgradeEnabled": {
            "type": "boolean",
            "description": "Indicates if LCM is enabled to auto-upgrade products. The default value is False.\n\nSee detailed information in [Nutanix Update LCM Config V4](https://developers.nutanix.com/api-reference?namespace=lifecycle&version=v4.0#tag/Config/operation/updateConfig)\n"
          },
          "isAutoInventoryEnabled": {
            "type": "boolean",
            "description": "Indicates if the auto inventory operation is enabled. The default value is set to False.\n"
          },
          "isHttpsEnabled": {
            "type": "boolean",
            "description": "Indicates if the LCM URL has HTTPS enabled. The default value is True.\n"
          },
          "url": {
            "type": "string",
            "description": "URL of the LCM repository.\n"
          },
          "xClusterId": {
            "type": "string",
            "description": "Cluster uuid on which the resource is present or operation is being performed.\n"
          }
        },
        "type": "object"
      }
    },
    "nutanix:index/lcmPerformInventoryV2:LcmPerformInventoryV2": {
      "description": "Perform an inventory operation to identify/scan entities on the cluster that can be updated through LCM.\n\n## Example\n\n<!--Start PulumiCodeChooser -->\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as nutanix from \"@pierskarsenbarg/nutanix\";\n\n// perform inventory\nconst inventory = new nutanix.LcmPerformInventoryV2(\"inventory\", {xClusterId: \"0005a104-0b0b-4b0b-8005-0b0b0b0b0b0b\"});\n```\n```python\nimport pulumi\nimport pulumi_nutanix as nutanix\n\n# perform inventory\ninventory = nutanix.LcmPerformInventoryV2(\"inventory\", x_cluster_id=\"0005a104-0b0b-4b0b-8005-0b0b0b0b0b0b\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Nutanix = PiersKarsenbarg.Nutanix;\n\nreturn await Deployment.RunAsync(() => \n{\n    // perform inventory\n    var inventory = new Nutanix.LcmPerformInventoryV2(\"inventory\", new()\n    {\n        XClusterId = \"0005a104-0b0b-4b0b-8005-0b0b0b0b0b0b\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pierskarsenbarg/pulumi-nutanix/sdk/go/nutanix\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t// perform inventory\n\t\t_, err := nutanix.NewLcmPerformInventoryV2(ctx, \"inventory\", &nutanix.LcmPerformInventoryV2Args{\n\t\t\tXClusterId: pulumi.String(\"0005a104-0b0b-4b0b-8005-0b0b0b0b0b0b\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.nutanix.LcmPerformInventoryV2;\nimport com.pulumi.nutanix.LcmPerformInventoryV2Args;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        // perform inventory\n        var inventory = new LcmPerformInventoryV2(\"inventory\", LcmPerformInventoryV2Args.builder()\n            .xClusterId(\"0005a104-0b0b-4b0b-8005-0b0b0b0b0b0b\")\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  # perform inventory\n  inventory:\n    type: nutanix:LcmPerformInventoryV2\n    properties:\n      xClusterId: 0005a104-0b0b-4b0b-8005-0b0b0b0b0b0b\n```\n<!--End PulumiCodeChooser -->\n",
      "properties": {
        "xClusterId": {
          "type": "string",
          "description": "Cluster uuid on which the resource is present or operation is being performed.\n\nSee detailed information in [Nutanix LCM Perform Inventory v4](https://developers.nutanix.com/api-reference?namespace=lifecycle&version=v4.0#tag/Inventory/operation/performInventory)\n"
        }
      },
      "type": "object",
      "inputProperties": {
        "xClusterId": {
          "type": "string",
          "description": "Cluster uuid on which the resource is present or operation is being performed.\n\nSee detailed information in [Nutanix LCM Perform Inventory v4](https://developers.nutanix.com/api-reference?namespace=lifecycle&version=v4.0#tag/Inventory/operation/performInventory)\n"
        }
      },
      "stateInputs": {
        "description": "Input properties used for looking up and filtering LcmPerformInventoryV2 resources.\n",
        "properties": {
          "xClusterId": {
            "type": "string",
            "description": "Cluster uuid on which the resource is present or operation is being performed.\n\nSee detailed information in [Nutanix LCM Perform Inventory v4](https://developers.nutanix.com/api-reference?namespace=lifecycle&version=v4.0#tag/Inventory/operation/performInventory)\n"
          }
        },
        "type": "object"
      }
    },
    "nutanix:index/lcmPrechecksV2:LcmPrechecksV2": {
      "description": "Perform LCM prechecks for the intended update operation.\n\n## Example\n\n<!--Start PulumiCodeChooser -->\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as nutanix from \"@pierskarsenbarg/nutanix\";\n\nconst pre_checks = new nutanix.LcmPrechecksV2(\"pre-checks\", {\n    xClusterId: \"0005a104-0b0b-4b0-8005-0b0b0b0b0b0b\",\n    entityUpdateSpecs: [{\n        entityUuid: \"0c5c9e53-3551-4c5d-b13c-e41c04cbfaf7\",\n        toVersion: \"4.0.0\",\n    }],\n});\n```\n```python\nimport pulumi\nimport pulumi_nutanix as nutanix\n\npre_checks = nutanix.LcmPrechecksV2(\"pre-checks\",\n    x_cluster_id=\"0005a104-0b0b-4b0-8005-0b0b0b0b0b0b\",\n    entity_update_specs=[{\n        \"entity_uuid\": \"0c5c9e53-3551-4c5d-b13c-e41c04cbfaf7\",\n        \"to_version\": \"4.0.0\",\n    }])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Nutanix = PiersKarsenbarg.Nutanix;\n\nreturn await Deployment.RunAsync(() => \n{\n    var pre_checks = new Nutanix.LcmPrechecksV2(\"pre-checks\", new()\n    {\n        XClusterId = \"0005a104-0b0b-4b0-8005-0b0b0b0b0b0b\",\n        EntityUpdateSpecs = new[]\n        {\n            new Nutanix.Inputs.LcmPrechecksV2EntityUpdateSpecArgs\n            {\n                EntityUuid = \"0c5c9e53-3551-4c5d-b13c-e41c04cbfaf7\",\n                ToVersion = \"4.0.0\",\n            },\n        },\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pierskarsenbarg/pulumi-nutanix/sdk/go/nutanix\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := nutanix.NewLcmPrechecksV2(ctx, \"pre-checks\", &nutanix.LcmPrechecksV2Args{\n\t\t\tXClusterId: pulumi.String(\"0005a104-0b0b-4b0-8005-0b0b0b0b0b0b\"),\n\t\t\tEntityUpdateSpecs: nutanix.LcmPrechecksV2EntityUpdateSpecArray{\n\t\t\t\t&nutanix.LcmPrechecksV2EntityUpdateSpecArgs{\n\t\t\t\t\tEntityUuid: pulumi.String(\"0c5c9e53-3551-4c5d-b13c-e41c04cbfaf7\"),\n\t\t\t\t\tToVersion:  pulumi.String(\"4.0.0\"),\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.nutanix.LcmPrechecksV2;\nimport com.pulumi.nutanix.LcmPrechecksV2Args;\nimport com.pulumi.nutanix.inputs.LcmPrechecksV2EntityUpdateSpecArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var pre_checks = new LcmPrechecksV2(\"pre-checks\", LcmPrechecksV2Args.builder()\n            .xClusterId(\"0005a104-0b0b-4b0-8005-0b0b0b0b0b0b\")\n            .entityUpdateSpecs(LcmPrechecksV2EntityUpdateSpecArgs.builder()\n                .entityUuid(\"0c5c9e53-3551-4c5d-b13c-e41c04cbfaf7\")\n                .toVersion(\"4.0.0\")\n                .build())\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  pre-checks:\n    type: nutanix:LcmPrechecksV2\n    properties:\n      xClusterId: 0005a104-0b0b-4b0-8005-0b0b0b0b0b0b\n      entityUpdateSpecs:\n        - entityUuid: 0c5c9e53-3551-4c5d-b13c-e41c04cbfaf7\n          toVersion: 4.0.0\n```\n<!--End PulumiCodeChooser -->\n",
      "properties": {
        "entityUpdateSpecs": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FLcmPrechecksV2EntityUpdateSpec:LcmPrechecksV2EntityUpdateSpec"
          },
          "description": "List of entity update objects for getting recommendations.\n"
        },
        "extId": {
          "type": "string"
        },
        "managementServer": {
          "$ref": "#/types/nutanix:index%2FLcmPrechecksV2ManagementServer:LcmPrechecksV2ManagementServer",
          "description": "Cluster management server configuration used while updating clusters with ESX or Hyper-V.\n"
        },
        "skippedPrecheckFlags": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "List of prechecks to skip. The allowed value is 'powerOffUvms' that skips the pinned VM prechecks. Items Enum: `POWER_OFF_UVMS`\n"
        },
        "xClusterId": {
          "type": "string",
          "description": "Cluster uuid on which the resource is present or operation is being performed.\n"
        }
      },
      "type": "object",
      "required": [
        "entityUpdateSpecs",
        "extId"
      ],
      "inputProperties": {
        "entityUpdateSpecs": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FLcmPrechecksV2EntityUpdateSpec:LcmPrechecksV2EntityUpdateSpec"
          },
          "description": "List of entity update objects for getting recommendations.\n"
        },
        "managementServer": {
          "$ref": "#/types/nutanix:index%2FLcmPrechecksV2ManagementServer:LcmPrechecksV2ManagementServer",
          "description": "Cluster management server configuration used while updating clusters with ESX or Hyper-V.\n"
        },
        "skippedPrecheckFlags": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "List of prechecks to skip. The allowed value is 'powerOffUvms' that skips the pinned VM prechecks. Items Enum: `POWER_OFF_UVMS`\n"
        },
        "xClusterId": {
          "type": "string",
          "description": "Cluster uuid on which the resource is present or operation is being performed.\n"
        }
      },
      "requiredInputs": [
        "entityUpdateSpecs"
      ],
      "stateInputs": {
        "description": "Input properties used for looking up and filtering LcmPrechecksV2 resources.\n",
        "properties": {
          "entityUpdateSpecs": {
            "type": "array",
            "items": {
              "$ref": "#/types/nutanix:index%2FLcmPrechecksV2EntityUpdateSpec:LcmPrechecksV2EntityUpdateSpec"
            },
            "description": "List of entity update objects for getting recommendations.\n"
          },
          "extId": {
            "type": "string"
          },
          "managementServer": {
            "$ref": "#/types/nutanix:index%2FLcmPrechecksV2ManagementServer:LcmPrechecksV2ManagementServer",
            "description": "Cluster management server configuration used while updating clusters with ESX or Hyper-V.\n"
          },
          "skippedPrecheckFlags": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "description": "List of prechecks to skip. The allowed value is 'powerOffUvms' that skips the pinned VM prechecks. Items Enum: `POWER_OFF_UVMS`\n"
          },
          "xClusterId": {
            "type": "string",
            "description": "Cluster uuid on which the resource is present or operation is being performed.\n"
          }
        },
        "type": "object"
      }
    },
    "nutanix:index/lcmUpgradeV2:LcmUpgradeV2": {
      "description": "Perform upgrade operation to a specific target version for discovered LCM entity/entities.\n\n\n## Example\n\n<!--Start PulumiCodeChooser -->\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as nutanix from \"@pierskarsenbarg/nutanix\";\n\n// upgrade the entity\nconst upgrade = new nutanix.LcmUpgradeV2(\"upgrade\", {entityUpdateSpecs: [{\n    entityUuid: \"0c5c9e53-3551-4c5d-b13c-e41c04cbfaf7\",\n    toVersion: \"4.0.0\",\n}]});\n```\n```python\nimport pulumi\nimport pulumi_nutanix as nutanix\n\n# upgrade the entity\nupgrade = nutanix.LcmUpgradeV2(\"upgrade\", entity_update_specs=[{\n    \"entity_uuid\": \"0c5c9e53-3551-4c5d-b13c-e41c04cbfaf7\",\n    \"to_version\": \"4.0.0\",\n}])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Nutanix = PiersKarsenbarg.Nutanix;\n\nreturn await Deployment.RunAsync(() => \n{\n    // upgrade the entity\n    var upgrade = new Nutanix.LcmUpgradeV2(\"upgrade\", new()\n    {\n        EntityUpdateSpecs = new[]\n        {\n            new Nutanix.Inputs.LcmUpgradeV2EntityUpdateSpecArgs\n            {\n                EntityUuid = \"0c5c9e53-3551-4c5d-b13c-e41c04cbfaf7\",\n                ToVersion = \"4.0.0\",\n            },\n        },\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pierskarsenbarg/pulumi-nutanix/sdk/go/nutanix\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t// upgrade the entity\n\t\t_, err := nutanix.NewLcmUpgradeV2(ctx, \"upgrade\", &nutanix.LcmUpgradeV2Args{\n\t\t\tEntityUpdateSpecs: nutanix.LcmUpgradeV2EntityUpdateSpecArray{\n\t\t\t\t&nutanix.LcmUpgradeV2EntityUpdateSpecArgs{\n\t\t\t\t\tEntityUuid: pulumi.String(\"0c5c9e53-3551-4c5d-b13c-e41c04cbfaf7\"),\n\t\t\t\t\tToVersion:  pulumi.String(\"4.0.0\"),\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.nutanix.LcmUpgradeV2;\nimport com.pulumi.nutanix.LcmUpgradeV2Args;\nimport com.pulumi.nutanix.inputs.LcmUpgradeV2EntityUpdateSpecArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        // upgrade the entity\n        var upgrade = new LcmUpgradeV2(\"upgrade\", LcmUpgradeV2Args.builder()\n            .entityUpdateSpecs(LcmUpgradeV2EntityUpdateSpecArgs.builder()\n                .entityUuid(\"0c5c9e53-3551-4c5d-b13c-e41c04cbfaf7\")\n                .toVersion(\"4.0.0\")\n                .build())\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  # upgrade the entity\n  upgrade:\n    type: nutanix:LcmUpgradeV2\n    properties:\n      entityUpdateSpecs:\n        - entityUuid: 0c5c9e53-3551-4c5d-b13c-e41c04cbfaf7\n          toVersion: 4.0.0\n```\n<!--End PulumiCodeChooser -->\n",
      "properties": {
        "autoHandleFlags": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "List of automated system operations to perform, to avoid precheck failure and let the system restore state after an update is complete. The allowed flag is: - 'powerOffUvms': This allows the system to automatically power off user VMs which cannot be migrated to other hosts and power them on when the update is done. This option can avoid pinned VM precheck failure on the host which needs to enter maintenance mode during the update and allow the update to go through. Items Enum: `POWER_OFF_UVMS`\n"
        },
        "entityUpdateSpecs": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FLcmUpgradeV2EntityUpdateSpec:LcmUpgradeV2EntityUpdateSpec"
          },
          "description": "List of entity update objects for getting recommendations.\n"
        },
        "managementServer": {
          "$ref": "#/types/nutanix:index%2FLcmUpgradeV2ManagementServer:LcmUpgradeV2ManagementServer",
          "description": "Cluster management server configuration used while updating clusters with ESX or Hyper-V.\n"
        },
        "maxWaitTimeInSecs": {
          "type": "integer",
          "description": "Number of seconds LCM waits for the VMs to come up after exiting host maintenance mode. Value in Range [ 60 .. 86400]\n"
        },
        "skippedPrecheckFlags": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "List of prechecks to skip. The allowed value is 'powerOffUvms' that skips the pinned VM prechecks. Items Enum: `POWER_OFF_UVMS`\n"
        },
        "xClusterId": {
          "type": "string",
          "description": "Cluster uuid on which the resource is present or operation is being performed.\n"
        }
      },
      "type": "object",
      "inputProperties": {
        "autoHandleFlags": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "List of automated system operations to perform, to avoid precheck failure and let the system restore state after an update is complete. The allowed flag is: - 'powerOffUvms': This allows the system to automatically power off user VMs which cannot be migrated to other hosts and power them on when the update is done. This option can avoid pinned VM precheck failure on the host which needs to enter maintenance mode during the update and allow the update to go through. Items Enum: `POWER_OFF_UVMS`\n"
        },
        "entityUpdateSpecs": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FLcmUpgradeV2EntityUpdateSpec:LcmUpgradeV2EntityUpdateSpec"
          },
          "description": "List of entity update objects for getting recommendations.\n"
        },
        "managementServer": {
          "$ref": "#/types/nutanix:index%2FLcmUpgradeV2ManagementServer:LcmUpgradeV2ManagementServer",
          "description": "Cluster management server configuration used while updating clusters with ESX or Hyper-V.\n"
        },
        "maxWaitTimeInSecs": {
          "type": "integer",
          "description": "Number of seconds LCM waits for the VMs to come up after exiting host maintenance mode. Value in Range [ 60 .. 86400]\n"
        },
        "skippedPrecheckFlags": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "List of prechecks to skip. The allowed value is 'powerOffUvms' that skips the pinned VM prechecks. Items Enum: `POWER_OFF_UVMS`\n"
        },
        "xClusterId": {
          "type": "string",
          "description": "Cluster uuid on which the resource is present or operation is being performed.\n"
        }
      },
      "stateInputs": {
        "description": "Input properties used for looking up and filtering LcmUpgradeV2 resources.\n",
        "properties": {
          "autoHandleFlags": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "description": "List of automated system operations to perform, to avoid precheck failure and let the system restore state after an update is complete. The allowed flag is: - 'powerOffUvms': This allows the system to automatically power off user VMs which cannot be migrated to other hosts and power them on when the update is done. This option can avoid pinned VM precheck failure on the host which needs to enter maintenance mode during the update and allow the update to go through. Items Enum: `POWER_OFF_UVMS`\n"
          },
          "entityUpdateSpecs": {
            "type": "array",
            "items": {
              "$ref": "#/types/nutanix:index%2FLcmUpgradeV2EntityUpdateSpec:LcmUpgradeV2EntityUpdateSpec"
            },
            "description": "List of entity update objects for getting recommendations.\n"
          },
          "managementServer": {
            "$ref": "#/types/nutanix:index%2FLcmUpgradeV2ManagementServer:LcmUpgradeV2ManagementServer",
            "description": "Cluster management server configuration used while updating clusters with ESX or Hyper-V.\n"
          },
          "maxWaitTimeInSecs": {
            "type": "integer",
            "description": "Number of seconds LCM waits for the VMs to come up after exiting host maintenance mode. Value in Range [ 60 .. 86400]\n"
          },
          "skippedPrecheckFlags": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "description": "List of prechecks to skip. The allowed value is 'powerOffUvms' that skips the pinned VM prechecks. Items Enum: `POWER_OFF_UVMS`\n"
          },
          "xClusterId": {
            "type": "string",
            "description": "Cluster uuid on which the resource is present or operation is being performed.\n"
          }
        },
        "type": "object"
      }
    },
    "nutanix:index/ndbAuthorizeDbserver:NdbAuthorizeDbserver": {
      "description": "Provides a resource to authorize db server VMs for cloning of database instance based on the input parameters. \n\n## Example Usage\n\n<!--Start PulumiCodeChooser -->\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as nutanix from \"@pierskarsenbarg/nutanix\";\n\nconst name = new nutanix.NdbAuthorizeDbserver(\"name\", {\n    timeMachineName: \"test-pg-inst\",\n    dbserversIds: [\"{{ dbServer_IDs}}\"],\n});\n```\n```python\nimport pulumi\nimport pulumi_nutanix as nutanix\n\nname = nutanix.NdbAuthorizeDbserver(\"name\",\n    time_machine_name=\"test-pg-inst\",\n    dbservers_ids=[\"{{ dbServer_IDs}}\"])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Nutanix = PiersKarsenbarg.Nutanix;\n\nreturn await Deployment.RunAsync(() => \n{\n    var name = new Nutanix.NdbAuthorizeDbserver(\"name\", new()\n    {\n        TimeMachineName = \"test-pg-inst\",\n        DbserversIds = new[]\n        {\n            \"{{ dbServer_IDs}}\",\n        },\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pierskarsenbarg/pulumi-nutanix/sdk/go/nutanix\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := nutanix.NewNdbAuthorizeDbserver(ctx, \"name\", &nutanix.NdbAuthorizeDbserverArgs{\n\t\t\tTimeMachineName: pulumi.String(\"test-pg-inst\"),\n\t\t\tDbserversIds: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"{{ dbServer_IDs}}\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.nutanix.NdbAuthorizeDbserver;\nimport com.pulumi.nutanix.NdbAuthorizeDbserverArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var name = new NdbAuthorizeDbserver(\"name\", NdbAuthorizeDbserverArgs.builder()\n            .timeMachineName(\"test-pg-inst\")\n            .dbserversIds(\"{{ dbServer_IDs}}\")\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  name:\n    type: nutanix:NdbAuthorizeDbserver\n    properties:\n      timeMachineName: test-pg-inst\n      dbserversIds:\n        - '{{ dbServer_IDs}}'\n```\n<!--End PulumiCodeChooser -->\n",
      "properties": {
        "dbserversIds": {
          "type": "array",
          "items": {
            "type": "string"
          }
        },
        "timeMachineId": {
          "type": "string"
        },
        "timeMachineName": {
          "type": "string",
          "description": "* <span pulumi-lang-nodejs=\"`dbserversId \" pulumi-lang-dotnet=\"`DbserversId \" pulumi-lang-go=\"`dbserversId \" pulumi-lang-python=\"`dbservers_id \" pulumi-lang-yaml=\"`dbserversId \" pulumi-lang-java=\"`dbserversId \">`dbservers_id </span>`: (Required)\n"
        }
      },
      "type": "object",
      "inputProperties": {
        "dbserversIds": {
          "type": "array",
          "items": {
            "type": "string"
          }
        },
        "timeMachineId": {
          "type": "string"
        },
        "timeMachineName": {
          "type": "string",
          "description": "* <span pulumi-lang-nodejs=\"`dbserversId \" pulumi-lang-dotnet=\"`DbserversId \" pulumi-lang-go=\"`dbserversId \" pulumi-lang-python=\"`dbservers_id \" pulumi-lang-yaml=\"`dbserversId \" pulumi-lang-java=\"`dbserversId \">`dbservers_id </span>`: (Required)\n"
        }
      },
      "stateInputs": {
        "description": "Input properties used for looking up and filtering NdbAuthorizeDbserver resources.\n",
        "properties": {
          "dbserversIds": {
            "type": "array",
            "items": {
              "type": "string"
            }
          },
          "timeMachineId": {
            "type": "string"
          },
          "timeMachineName": {
            "type": "string",
            "description": "* <span pulumi-lang-nodejs=\"`dbserversId \" pulumi-lang-dotnet=\"`DbserversId \" pulumi-lang-go=\"`dbserversId \" pulumi-lang-python=\"`dbservers_id \" pulumi-lang-yaml=\"`dbserversId \" pulumi-lang-java=\"`dbserversId \">`dbservers_id </span>`: (Required)\n"
          }
        },
        "type": "object"
      }
    },
    "nutanix:index/ndbClone:NdbClone": {
      "description": "Provides a resource to perform the clone of database instance based on the input parameters. \n\n## Example Usage\n\n<!--Start PulumiCodeChooser -->\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as nutanix from \"@pierskarsenbarg/nutanix\";\n\n//# resource for cloning using Point in time given time machine name\nconst name = new nutanix.NdbClone(\"name\", {\n    timeMachineName: \"test-pg-inst\",\n    name: \"test-inst-tf-check\",\n    nxClusterId: \"{{ nx_Cluster_id }}\",\n    sshPublicKey: \"{{ sshkey }}\",\n    userPitrTimestamp: \"{{ point_in_time }}\",\n    timeZone: \"Asia/Calcutta\",\n    createDbserver: true,\n    computeProfileId: \"{{ compute_profile_id }}\",\n    networkProfileId: \"{{ network_profile_id }}\",\n    databaseParameterProfileId: \"{{ databse_profile_id }}\",\n    nodes: [{\n        vmName: \"test_vm_clone\",\n        computeProfileId: \"{{ compute_profile_id }}\",\n        networkProfileId: \"{{ network_profile_id }}\",\n        nxClusterId: \"{{ nx_Cluster_id }}\",\n    }],\n    postgresqlInfos: [{\n        vmName: \"test_vm_clone\",\n        dbPassword: \"pass\",\n    }],\n});\n```\n```python\nimport pulumi\nimport pulumi_nutanix as nutanix\n\n## resource for cloning using Point in time given time machine name\nname = nutanix.NdbClone(\"name\",\n    time_machine_name=\"test-pg-inst\",\n    name=\"test-inst-tf-check\",\n    nx_cluster_id=\"{{ nx_Cluster_id }}\",\n    ssh_public_key=\"{{ sshkey }}\",\n    user_pitr_timestamp=\"{{ point_in_time }}\",\n    time_zone=\"Asia/Calcutta\",\n    create_dbserver=True,\n    compute_profile_id=\"{{ compute_profile_id }}\",\n    network_profile_id=\"{{ network_profile_id }}\",\n    database_parameter_profile_id=\"{{ databse_profile_id }}\",\n    nodes=[{\n        \"vm_name\": \"test_vm_clone\",\n        \"compute_profile_id\": \"{{ compute_profile_id }}\",\n        \"network_profile_id\": \"{{ network_profile_id }}\",\n        \"nx_cluster_id\": \"{{ nx_Cluster_id }}\",\n    }],\n    postgresql_infos=[{\n        \"vm_name\": \"test_vm_clone\",\n        \"db_password\": \"pass\",\n    }])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Nutanix = PiersKarsenbarg.Nutanix;\n\nreturn await Deployment.RunAsync(() => \n{\n    //# resource for cloning using Point in time given time machine name\n    var name = new Nutanix.NdbClone(\"name\", new()\n    {\n        TimeMachineName = \"test-pg-inst\",\n        Name = \"test-inst-tf-check\",\n        NxClusterId = \"{{ nx_Cluster_id }}\",\n        SshPublicKey = \"{{ sshkey }}\",\n        UserPitrTimestamp = \"{{ point_in_time }}\",\n        TimeZone = \"Asia/Calcutta\",\n        CreateDbserver = true,\n        ComputeProfileId = \"{{ compute_profile_id }}\",\n        NetworkProfileId = \"{{ network_profile_id }}\",\n        DatabaseParameterProfileId = \"{{ databse_profile_id }}\",\n        Nodes = new[]\n        {\n            new Nutanix.Inputs.NdbCloneNodeArgs\n            {\n                VmName = \"test_vm_clone\",\n                ComputeProfileId = \"{{ compute_profile_id }}\",\n                NetworkProfileId = \"{{ network_profile_id }}\",\n                NxClusterId = \"{{ nx_Cluster_id }}\",\n            },\n        },\n        PostgresqlInfos = new[]\n        {\n            new Nutanix.Inputs.NdbClonePostgresqlInfoArgs\n            {\n                VmName = \"test_vm_clone\",\n                DbPassword = \"pass\",\n            },\n        },\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pierskarsenbarg/pulumi-nutanix/sdk/go/nutanix\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t// # resource for cloning using Point in time given time machine name\n\t\t_, err := nutanix.NewNdbClone(ctx, \"name\", &nutanix.NdbCloneArgs{\n\t\t\tTimeMachineName:            pulumi.String(\"test-pg-inst\"),\n\t\t\tName:                       pulumi.String(\"test-inst-tf-check\"),\n\t\t\tNxClusterId:                pulumi.String(\"{{ nx_Cluster_id }}\"),\n\t\t\tSshPublicKey:               pulumi.String(\"{{ sshkey }}\"),\n\t\t\tUserPitrTimestamp:          pulumi.String(\"{{ point_in_time }}\"),\n\t\t\tTimeZone:                   pulumi.String(\"Asia/Calcutta\"),\n\t\t\tCreateDbserver:             pulumi.Bool(true),\n\t\t\tComputeProfileId:           pulumi.String(\"{{ compute_profile_id }}\"),\n\t\t\tNetworkProfileId:           pulumi.String(\"{{ network_profile_id }}\"),\n\t\t\tDatabaseParameterProfileId: pulumi.String(\"{{ databse_profile_id }}\"),\n\t\t\tNodes: nutanix.NdbCloneNodeArray{\n\t\t\t\t&nutanix.NdbCloneNodeArgs{\n\t\t\t\t\tVmName:           pulumi.String(\"test_vm_clone\"),\n\t\t\t\t\tComputeProfileId: pulumi.String(\"{{ compute_profile_id }}\"),\n\t\t\t\t\tNetworkProfileId: pulumi.String(\"{{ network_profile_id }}\"),\n\t\t\t\t\tNxClusterId:      pulumi.String(\"{{ nx_Cluster_id }}\"),\n\t\t\t\t},\n\t\t\t},\n\t\t\tPostgresqlInfos: nutanix.NdbClonePostgresqlInfoArray{\n\t\t\t\t&nutanix.NdbClonePostgresqlInfoArgs{\n\t\t\t\t\tVmName:     pulumi.String(\"test_vm_clone\"),\n\t\t\t\t\tDbPassword: pulumi.String(\"pass\"),\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.nutanix.NdbClone;\nimport com.pulumi.nutanix.NdbCloneArgs;\nimport com.pulumi.nutanix.inputs.NdbCloneNodeArgs;\nimport com.pulumi.nutanix.inputs.NdbClonePostgresqlInfoArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        //# resource for cloning using Point in time given time machine name\n        var name = new NdbClone(\"name\", NdbCloneArgs.builder()\n            .timeMachineName(\"test-pg-inst\")\n            .name(\"test-inst-tf-check\")\n            .nxClusterId(\"{{ nx_Cluster_id }}\")\n            .sshPublicKey(\"{{ sshkey }}\")\n            .userPitrTimestamp(\"{{ point_in_time }}\")\n            .timeZone(\"Asia/Calcutta\")\n            .createDbserver(true)\n            .computeProfileId(\"{{ compute_profile_id }}\")\n            .networkProfileId(\"{{ network_profile_id }}\")\n            .databaseParameterProfileId(\"{{ databse_profile_id }}\")\n            .nodes(NdbCloneNodeArgs.builder()\n                .vmName(\"test_vm_clone\")\n                .computeProfileId(\"{{ compute_profile_id }}\")\n                .networkProfileId(\"{{ network_profile_id }}\")\n                .nxClusterId(\"{{ nx_Cluster_id }}\")\n                .build())\n            .postgresqlInfos(NdbClonePostgresqlInfoArgs.builder()\n                .vmName(\"test_vm_clone\")\n                .dbPassword(\"pass\")\n                .build())\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  ## resource for cloning using Point in time given time machine name\n  name:\n    type: nutanix:NdbClone\n    properties:\n      timeMachineName: test-pg-inst\n      name: test-inst-tf-check\n      nxClusterId: '{{ nx_Cluster_id }}'\n      sshPublicKey: '{{ sshkey }}'\n      userPitrTimestamp: '{{ point_in_time }}'\n      timeZone: Asia/Calcutta\n      createDbserver: true\n      computeProfileId: '{{ compute_profile_id }}'\n      networkProfileId: '{{ network_profile_id }}'\n      databaseParameterProfileId: '{{ databse_profile_id }}'\n      nodes:\n        - vmName: test_vm_clone\n          computeProfileId: '{{ compute_profile_id }}'\n          networkProfileId: '{{ network_profile_id }}'\n          nxClusterId: '{{ nx_Cluster_id }}'\n      postgresqlInfos:\n        - vmName: test_vm_clone\n          dbPassword: pass\n```\n<!--End PulumiCodeChooser -->\n",
      "properties": {
        "actionarguments": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FNdbCloneActionargument:NdbCloneActionargument"
          },
          "description": "if any action arguments is required\n"
        },
        "clone": {
          "type": "boolean",
          "description": "cloned or not\n"
        },
        "clustered": {
          "type": "boolean",
          "description": "clone will be clustered or not\n"
        },
        "computeProfileId": {
          "type": "string",
          "description": "specify the compute profile id\n"
        },
        "createDbserver": {
          "type": "boolean",
          "description": "create new dbserver\n"
        },
        "databaseClusterType": {
          "type": "string",
          "description": "database cluster type\n"
        },
        "databaseName": {
          "type": "string",
          "description": "database name\n"
        },
        "databaseNodes": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FNdbCloneDatabaseNode:NdbCloneDatabaseNode"
          },
          "description": "database nodes associated with database instance\n"
        },
        "databaseParameterProfileId": {
          "type": "string",
          "description": "specify the database parameter profile id\n"
        },
        "dateCreated": {
          "type": "string",
          "description": "date created for clone\n"
        },
        "dateModified": {
          "type": "string",
          "description": "last modified date for clone\n"
        },
        "dbserverClusterId": {
          "type": "string",
          "description": "dbserver cluster id\n"
        },
        "dbserverId": {
          "type": "string",
          "description": "Specify if you want to create a database server. This value can be set to true or false as required.\n"
        },
        "dbserverLogicalCluster": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          },
          "description": "dbserver logical cluster\n"
        },
        "dbserverLogicalClusterId": {
          "type": "string",
          "description": "dbserver logical cluster id\n"
        },
        "delete": {
          "type": "boolean",
          "description": "- (Optional) Delete the database clone from the VM. Default value is true\n"
        },
        "deleteLogicalCluster": {
          "type": "boolean",
          "description": "- (Optional) Delete the logical cluster. Default is true\n"
        },
        "deleteTimeMachine": {
          "type": "boolean",
          "description": "- (Optional) Delete the database's Time Machine (snapshots/logs) from the NDB. Default value is true\n"
        },
        "description": {
          "type": "string",
          "description": "database instance description\n"
        },
        "forced": {
          "type": "boolean",
          "description": "- (Optional) Force delete of instance. Default is false\n"
        },
        "infos": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FNdbCloneInfo:NdbCloneInfo"
          },
          "description": "info of clone\n"
        },
        "latestSnapshot": {
          "type": "boolean",
          "description": "latest snapshot\n"
        },
        "lcmConfigs": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FNdbCloneLcmConfig:NdbCloneLcmConfig"
          },
          "description": "LCM Config contains the expiry details and refresh details\n"
        },
        "linkedDatabases": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FNdbCloneLinkedDatabase:NdbCloneLinkedDatabase"
          },
          "description": "linked databases within database instance\n"
        },
        "metric": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          },
          "description": "Stores storage info regarding size, allocatedSize, usedSize and unit of calculation that seems to have been fetched from PRISM.\n"
        },
        "name": {
          "type": "string",
          "description": "database instance name\n"
        },
        "networkProfileId": {
          "type": "string",
          "description": "specify the network profile id\n"
        },
        "nodeCount": {
          "type": "integer",
          "description": "Node count. Default is 1 for single instance\n"
        },
        "nodes": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FNdbCloneNode:NdbCloneNode"
          },
          "description": "Nodes contain info about dbservers vm\n"
        },
        "nxClusterId": {
          "type": "string",
          "description": "cluster id on where clone will be present\n"
        },
        "parentDatabaseId": {
          "type": "string"
        },
        "postgresqlInfos": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FNdbClonePostgresqlInfo:NdbClonePostgresqlInfo"
          },
          "description": "postgresql info for the clone\n"
        },
        "properties": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FNdbCloneProperty:NdbCloneProperty"
          },
          "description": "List of all the properties"
        },
        "remove": {
          "type": "boolean",
          "description": "- (Optional) Unregister the database clone from NDB. Default value is false\n"
        },
        "removeLogicalCluster": {
          "type": "boolean",
          "description": "remove logical cluster. Default value is false\n"
        },
        "snapshotId": {
          "type": "string",
          "description": "snapshot id from where clone is created\n"
        },
        "softRemove": {
          "type": "boolean",
          "description": "- (Optional) Soft remove. Default will be false\n"
        },
        "sshPublicKey": {
          "type": "string",
          "description": "ssh public key\n",
          "secret": true
        },
        "status": {
          "type": "string",
          "description": "status of clone\n"
        },
        "tags": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FNdbCloneTag:NdbCloneTag"
          },
          "description": "allows you to assign metadata to entities (clones, time machines, databases, and database servers) by using tags.\n"
        },
        "timeMachineId": {
          "type": "string",
          "description": "time machine id\n"
        },
        "timeMachineName": {
          "type": "string",
          "description": "time machine name\n"
        },
        "timeMachines": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FNdbCloneTimeMachine:NdbCloneTimeMachine"
          }
        },
        "timeZone": {
          "type": "string",
          "description": "timezone\n"
        },
        "type": {
          "type": "string",
          "description": "type of clone\n"
        },
        "userPitrTimestamp": {
          "type": "string",
          "description": "point in time for clone to be created\n"
        },
        "vmPassword": {
          "type": "string",
          "description": "vm password\n",
          "secret": true
        }
      },
      "type": "object",
      "required": [
        "clone",
        "databaseClusterType",
        "databaseName",
        "databaseNodes",
        "dateCreated",
        "dateModified",
        "dbserverLogicalCluster",
        "infos",
        "linkedDatabases",
        "metric",
        "name",
        "nodes",
        "nxClusterId",
        "parentDatabaseId",
        "properties",
        "status",
        "tags",
        "timeMachines",
        "timeZone",
        "type"
      ],
      "inputProperties": {
        "actionarguments": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FNdbCloneActionargument:NdbCloneActionargument"
          },
          "description": "if any action arguments is required\n"
        },
        "clustered": {
          "type": "boolean",
          "description": "clone will be clustered or not\n"
        },
        "computeProfileId": {
          "type": "string",
          "description": "specify the compute profile id\n"
        },
        "createDbserver": {
          "type": "boolean",
          "description": "create new dbserver\n"
        },
        "databaseParameterProfileId": {
          "type": "string",
          "description": "specify the database parameter profile id\n"
        },
        "dbserverClusterId": {
          "type": "string",
          "description": "dbserver cluster id\n"
        },
        "dbserverId": {
          "type": "string",
          "description": "Specify if you want to create a database server. This value can be set to true or false as required.\n"
        },
        "dbserverLogicalClusterId": {
          "type": "string",
          "description": "dbserver logical cluster id\n"
        },
        "delete": {
          "type": "boolean",
          "description": "- (Optional) Delete the database clone from the VM. Default value is true\n"
        },
        "deleteLogicalCluster": {
          "type": "boolean",
          "description": "- (Optional) Delete the logical cluster. Default is true\n"
        },
        "deleteTimeMachine": {
          "type": "boolean",
          "description": "- (Optional) Delete the database's Time Machine (snapshots/logs) from the NDB. Default value is true\n"
        },
        "description": {
          "type": "string",
          "description": "database instance description\n"
        },
        "forced": {
          "type": "boolean",
          "description": "- (Optional) Force delete of instance. Default is false\n"
        },
        "latestSnapshot": {
          "type": "boolean",
          "description": "latest snapshot\n"
        },
        "lcmConfigs": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FNdbCloneLcmConfig:NdbCloneLcmConfig"
          },
          "description": "LCM Config contains the expiry details and refresh details\n"
        },
        "name": {
          "type": "string",
          "description": "database instance name\n"
        },
        "networkProfileId": {
          "type": "string",
          "description": "specify the network profile id\n"
        },
        "nodeCount": {
          "type": "integer",
          "description": "Node count. Default is 1 for single instance\n"
        },
        "nodes": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FNdbCloneNode:NdbCloneNode"
          },
          "description": "Nodes contain info about dbservers vm\n"
        },
        "nxClusterId": {
          "type": "string",
          "description": "cluster id on where clone will be present\n"
        },
        "postgresqlInfos": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FNdbClonePostgresqlInfo:NdbClonePostgresqlInfo"
          },
          "description": "postgresql info for the clone\n"
        },
        "remove": {
          "type": "boolean",
          "description": "- (Optional) Unregister the database clone from NDB. Default value is false\n"
        },
        "removeLogicalCluster": {
          "type": "boolean",
          "description": "remove logical cluster. Default value is false\n"
        },
        "snapshotId": {
          "type": "string",
          "description": "snapshot id from where clone is created\n"
        },
        "softRemove": {
          "type": "boolean",
          "description": "- (Optional) Soft remove. Default will be false\n"
        },
        "sshPublicKey": {
          "type": "string",
          "description": "ssh public key\n",
          "secret": true
        },
        "tags": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FNdbCloneTag:NdbCloneTag"
          },
          "description": "allows you to assign metadata to entities (clones, time machines, databases, and database servers) by using tags.\n"
        },
        "timeMachineId": {
          "type": "string",
          "description": "time machine id\n"
        },
        "timeMachineName": {
          "type": "string",
          "description": "time machine name\n"
        },
        "timeZone": {
          "type": "string",
          "description": "timezone\n"
        },
        "userPitrTimestamp": {
          "type": "string",
          "description": "point in time for clone to be created\n"
        },
        "vmPassword": {
          "type": "string",
          "description": "vm password\n",
          "secret": true
        }
      },
      "requiredInputs": [
        "nodes",
        "nxClusterId"
      ],
      "stateInputs": {
        "description": "Input properties used for looking up and filtering NdbClone resources.\n",
        "properties": {
          "actionarguments": {
            "type": "array",
            "items": {
              "$ref": "#/types/nutanix:index%2FNdbCloneActionargument:NdbCloneActionargument"
            },
            "description": "if any action arguments is required\n"
          },
          "clone": {
            "type": "boolean",
            "description": "cloned or not\n"
          },
          "clustered": {
            "type": "boolean",
            "description": "clone will be clustered or not\n"
          },
          "computeProfileId": {
            "type": "string",
            "description": "specify the compute profile id\n"
          },
          "createDbserver": {
            "type": "boolean",
            "description": "create new dbserver\n"
          },
          "databaseClusterType": {
            "type": "string",
            "description": "database cluster type\n"
          },
          "databaseName": {
            "type": "string",
            "description": "database name\n"
          },
          "databaseNodes": {
            "type": "array",
            "items": {
              "$ref": "#/types/nutanix:index%2FNdbCloneDatabaseNode:NdbCloneDatabaseNode"
            },
            "description": "database nodes associated with database instance\n"
          },
          "databaseParameterProfileId": {
            "type": "string",
            "description": "specify the database parameter profile id\n"
          },
          "dateCreated": {
            "type": "string",
            "description": "date created for clone\n"
          },
          "dateModified": {
            "type": "string",
            "description": "last modified date for clone\n"
          },
          "dbserverClusterId": {
            "type": "string",
            "description": "dbserver cluster id\n"
          },
          "dbserverId": {
            "type": "string",
            "description": "Specify if you want to create a database server. This value can be set to true or false as required.\n"
          },
          "dbserverLogicalCluster": {
            "type": "object",
            "additionalProperties": {
              "type": "string"
            },
            "description": "dbserver logical cluster\n"
          },
          "dbserverLogicalClusterId": {
            "type": "string",
            "description": "dbserver logical cluster id\n"
          },
          "delete": {
            "type": "boolean",
            "description": "- (Optional) Delete the database clone from the VM. Default value is true\n"
          },
          "deleteLogicalCluster": {
            "type": "boolean",
            "description": "- (Optional) Delete the logical cluster. Default is true\n"
          },
          "deleteTimeMachine": {
            "type": "boolean",
            "description": "- (Optional) Delete the database's Time Machine (snapshots/logs) from the NDB. Default value is true\n"
          },
          "description": {
            "type": "string",
            "description": "database instance description\n"
          },
          "forced": {
            "type": "boolean",
            "description": "- (Optional) Force delete of instance. Default is false\n"
          },
          "infos": {
            "type": "array",
            "items": {
              "$ref": "#/types/nutanix:index%2FNdbCloneInfo:NdbCloneInfo"
            },
            "description": "info of clone\n"
          },
          "latestSnapshot": {
            "type": "boolean",
            "description": "latest snapshot\n"
          },
          "lcmConfigs": {
            "type": "array",
            "items": {
              "$ref": "#/types/nutanix:index%2FNdbCloneLcmConfig:NdbCloneLcmConfig"
            },
            "description": "LCM Config contains the expiry details and refresh details\n"
          },
          "linkedDatabases": {
            "type": "array",
            "items": {
              "$ref": "#/types/nutanix:index%2FNdbCloneLinkedDatabase:NdbCloneLinkedDatabase"
            },
            "description": "linked databases within database instance\n"
          },
          "metric": {
            "type": "object",
            "additionalProperties": {
              "type": "string"
            },
            "description": "Stores storage info regarding size, allocatedSize, usedSize and unit of calculation that seems to have been fetched from PRISM.\n"
          },
          "name": {
            "type": "string",
            "description": "database instance name\n"
          },
          "networkProfileId": {
            "type": "string",
            "description": "specify the network profile id\n"
          },
          "nodeCount": {
            "type": "integer",
            "description": "Node count. Default is 1 for single instance\n"
          },
          "nodes": {
            "type": "array",
            "items": {
              "$ref": "#/types/nutanix:index%2FNdbCloneNode:NdbCloneNode"
            },
            "description": "Nodes contain info about dbservers vm\n"
          },
          "nxClusterId": {
            "type": "string",
            "description": "cluster id on where clone will be present\n"
          },
          "parentDatabaseId": {
            "type": "string"
          },
          "postgresqlInfos": {
            "type": "array",
            "items": {
              "$ref": "#/types/nutanix:index%2FNdbClonePostgresqlInfo:NdbClonePostgresqlInfo"
            },
            "description": "postgresql info for the clone\n"
          },
          "properties": {
            "type": "array",
            "items": {
              "$ref": "#/types/nutanix:index%2FNdbCloneProperty:NdbCloneProperty"
            },
            "description": "List of all the properties"
          },
          "remove": {
            "type": "boolean",
            "description": "- (Optional) Unregister the database clone from NDB. Default value is false\n"
          },
          "removeLogicalCluster": {
            "type": "boolean",
            "description": "remove logical cluster. Default value is false\n"
          },
          "snapshotId": {
            "type": "string",
            "description": "snapshot id from where clone is created\n"
          },
          "softRemove": {
            "type": "boolean",
            "description": "- (Optional) Soft remove. Default will be false\n"
          },
          "sshPublicKey": {
            "type": "string",
            "description": "ssh public key\n",
            "secret": true
          },
          "status": {
            "type": "string",
            "description": "status of clone\n"
          },
          "tags": {
            "type": "array",
            "items": {
              "$ref": "#/types/nutanix:index%2FNdbCloneTag:NdbCloneTag"
            },
            "description": "allows you to assign metadata to entities (clones, time machines, databases, and database servers) by using tags.\n"
          },
          "timeMachineId": {
            "type": "string",
            "description": "time machine id\n"
          },
          "timeMachineName": {
            "type": "string",
            "description": "time machine name\n"
          },
          "timeMachines": {
            "type": "array",
            "items": {
              "$ref": "#/types/nutanix:index%2FNdbCloneTimeMachine:NdbCloneTimeMachine"
            }
          },
          "timeZone": {
            "type": "string",
            "description": "timezone\n"
          },
          "type": {
            "type": "string",
            "description": "type of clone\n"
          },
          "userPitrTimestamp": {
            "type": "string",
            "description": "point in time for clone to be created\n"
          },
          "vmPassword": {
            "type": "string",
            "description": "vm password\n",
            "secret": true
          }
        },
        "type": "object"
      }
    },
    "nutanix:index/ndbCloneRefresh:NdbCloneRefresh": {
      "description": "Provides a resource to perform the refresh clone of database based on the input parameters. \n\n## Example Usage\n\n### resource to refresh clone with snapshot id\n\n<!--Start PulumiCodeChooser -->\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as nutanix from \"@pierskarsenbarg/nutanix\";\n\nconst acctest_managed = new nutanix.NdbCloneRefresh(\"acctest-managed\", {\n    cloneId: \"{{ clone_id }}\",\n    snapshotId: \"{{ snapshot_id }}\",\n    timezone: \"Asia/Calcutta\",\n});\n```\n```python\nimport pulumi\nimport pulumi_nutanix as nutanix\n\nacctest_managed = nutanix.NdbCloneRefresh(\"acctest-managed\",\n    clone_id=\"{{ clone_id }}\",\n    snapshot_id=\"{{ snapshot_id }}\",\n    timezone=\"Asia/Calcutta\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Nutanix = PiersKarsenbarg.Nutanix;\n\nreturn await Deployment.RunAsync(() => \n{\n    var acctest_managed = new Nutanix.NdbCloneRefresh(\"acctest-managed\", new()\n    {\n        CloneId = \"{{ clone_id }}\",\n        SnapshotId = \"{{ snapshot_id }}\",\n        Timezone = \"Asia/Calcutta\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pierskarsenbarg/pulumi-nutanix/sdk/go/nutanix\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := nutanix.NewNdbCloneRefresh(ctx, \"acctest-managed\", &nutanix.NdbCloneRefreshArgs{\n\t\t\tCloneId:    pulumi.String(\"{{ clone_id }}\"),\n\t\t\tSnapshotId: pulumi.String(\"{{ snapshot_id }}\"),\n\t\t\tTimezone:   pulumi.String(\"Asia/Calcutta\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.nutanix.NdbCloneRefresh;\nimport com.pulumi.nutanix.NdbCloneRefreshArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var acctest_managed = new NdbCloneRefresh(\"acctest-managed\", NdbCloneRefreshArgs.builder()\n            .cloneId(\"{{ clone_id }}\")\n            .snapshotId(\"{{ snapshot_id }}\")\n            .timezone(\"Asia/Calcutta\")\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  acctest-managed:\n    type: nutanix:NdbCloneRefresh\n    properties:\n      cloneId: '{{ clone_id }}'\n      snapshotId: '{{ snapshot_id }}'\n      timezone: Asia/Calcutta\n```\n<!--End PulumiCodeChooser -->\n\n### resource to refresh clone with user pitr timestamp\n\n<!--Start PulumiCodeChooser -->\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as nutanix from \"@pierskarsenbarg/nutanix\";\n\nconst acctest_managed = new nutanix.NdbCloneRefresh(\"acctest-managed\", {\n    cloneId: \"{{ clone_id }}\",\n    userPitrStamp: \"{{ timestamp }}\",\n    timezone: \"Asia/Calcutta\",\n});\n```\n```python\nimport pulumi\nimport pulumi_nutanix as nutanix\n\nacctest_managed = nutanix.NdbCloneRefresh(\"acctest-managed\",\n    clone_id=\"{{ clone_id }}\",\n    user_pitr_stamp=\"{{ timestamp }}\",\n    timezone=\"Asia/Calcutta\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Nutanix = PiersKarsenbarg.Nutanix;\n\nreturn await Deployment.RunAsync(() => \n{\n    var acctest_managed = new Nutanix.NdbCloneRefresh(\"acctest-managed\", new()\n    {\n        CloneId = \"{{ clone_id }}\",\n        UserPitrStamp = \"{{ timestamp }}\",\n        Timezone = \"Asia/Calcutta\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pierskarsenbarg/pulumi-nutanix/sdk/go/nutanix\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := nutanix.NewNdbCloneRefresh(ctx, \"acctest-managed\", &nutanix.NdbCloneRefreshArgs{\n\t\t\tCloneId:       pulumi.String(\"{{ clone_id }}\"),\n\t\t\tUserPitrStamp: \"{{ timestamp }}\",\n\t\t\tTimezone:      pulumi.String(\"Asia/Calcutta\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.nutanix.NdbCloneRefresh;\nimport com.pulumi.nutanix.NdbCloneRefreshArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var acctest_managed = new NdbCloneRefresh(\"acctest-managed\", NdbCloneRefreshArgs.builder()\n            .cloneId(\"{{ clone_id }}\")\n            .userPitrStamp(\"{{ timestamp }}\")\n            .timezone(\"Asia/Calcutta\")\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  acctest-managed:\n    type: nutanix:NdbCloneRefresh\n    properties:\n      cloneId: '{{ clone_id }}'\n      userPitrStamp: '{{ timestamp }}'\n      timezone: Asia/Calcutta\n```\n<!--End PulumiCodeChooser -->\n",
      "properties": {
        "cloneId": {
          "type": "string",
          "description": "clone id\n"
        },
        "snapshotId": {
          "type": "string",
          "description": "snapshot id where clone has to be refreshed\n"
        },
        "timezone": {
          "type": "string",
          "description": "timezone. Default is Asia/Calcutta. \n\nSee detailed information in [NDB Clone Refresh](https://www.nutanix.dev/api_references/ndb/#/d4e53fff274fa-start-refresh-operation-for-the-given-clone).\n"
        },
        "userPitrTimestamp": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "cloneId"
      ],
      "inputProperties": {
        "cloneId": {
          "type": "string",
          "description": "clone id\n"
        },
        "snapshotId": {
          "type": "string",
          "description": "snapshot id where clone has to be refreshed\n"
        },
        "timezone": {
          "type": "string",
          "description": "timezone. Default is Asia/Calcutta. \n\nSee detailed information in [NDB Clone Refresh](https://www.nutanix.dev/api_references/ndb/#/d4e53fff274fa-start-refresh-operation-for-the-given-clone).\n"
        },
        "userPitrTimestamp": {
          "type": "string"
        }
      },
      "requiredInputs": [
        "cloneId"
      ],
      "stateInputs": {
        "description": "Input properties used for looking up and filtering NdbCloneRefresh resources.\n",
        "properties": {
          "cloneId": {
            "type": "string",
            "description": "clone id\n"
          },
          "snapshotId": {
            "type": "string",
            "description": "snapshot id where clone has to be refreshed\n"
          },
          "timezone": {
            "type": "string",
            "description": "timezone. Default is Asia/Calcutta. \n\nSee detailed information in [NDB Clone Refresh](https://www.nutanix.dev/api_references/ndb/#/d4e53fff274fa-start-refresh-operation-for-the-given-clone).\n"
          },
          "userPitrTimestamp": {
            "type": "string"
          }
        },
        "type": "object"
      }
    },
    "nutanix:index/ndbCluster:NdbCluster": {
      "description": "Provides a resource to add a Nutanix cluster based on the input parameters. \n\n## Example Usage\n\n<!--Start PulumiCodeChooser -->\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as nutanix from \"@pierskarsenbarg/nutanix\";\n\nconst clsname = new nutanix.index.NdbClusters(\"clsname\", {\n    name: \"{{ test-cluster }}\",\n    description: \"test description\",\n    clusterIp: \"{{ cluster_ip }}\",\n    username: \"{{ username of cluster }}\",\n    password: \"{{ password of cluster }}\",\n    storageContainer: \"{{ storage_container }}\",\n    agentNetworkInfo: [{\n        dns: \"{{ DNS servers available in the }}\",\n        ntp: \"{{ NTP servers available }}\",\n    }],\n    networksInfo: [{\n        type: \"DHCP\",\n        networkInfo: [{\n            vlanName: \"vlan_static\",\n            staticIp: \"{{ static_ip }}\",\n            gateway: \"{{ gateway }}\",\n            subnetMask: \"{{ subnet_mask }}\",\n        }],\n        accessType: [\n            \"PRISM\",\n            \"DSIP\",\n            \"DBSERVER\",\n        ],\n    }],\n});\n```\n```python\nimport pulumi\nimport pulumi_nutanix as nutanix\n\nclsname = nutanix.index.NdbClusters(\"clsname\",\n    name={{ test-cluster }},\n    description=test description,\n    cluster_ip={{ cluster_ip }},\n    username={{ username of cluster }},\n    password={{ password of cluster }},\n    storage_container={{ storage_container }},\n    agent_network_info=[{\n        dns: {{ DNS servers available in the }},\n        ntp: {{ NTP servers available }},\n    }],\n    networks_info=[{\n        type: DHCP,\n        networkInfo: [{\n            vlanName: vlan_static,\n            staticIp: {{ static_ip }},\n            gateway: {{ gateway }},\n            subnetMask: {{ subnet_mask }},\n        }],\n        accessType: [\n            PRISM,\n            DSIP,\n            DBSERVER,\n        ],\n    }])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Nutanix = Pulumi.Nutanix;\n\nreturn await Deployment.RunAsync(() => \n{\n    var clsname = new Nutanix.Index.NdbClusters(\"clsname\", new()\n    {\n        Name = \"{{ test-cluster }}\",\n        Description = \"test description\",\n        ClusterIp = \"{{ cluster_ip }}\",\n        Username = \"{{ username of cluster }}\",\n        Password = \"{{ password of cluster }}\",\n        StorageContainer = \"{{ storage_container }}\",\n        AgentNetworkInfo = new[]\n        {\n            \n            {\n                { \"dns\", \"{{ DNS servers available in the }}\" },\n                { \"ntp\", \"{{ NTP servers available }}\" },\n            },\n        },\n        NetworksInfo = new[]\n        {\n            \n            {\n                { \"type\", \"DHCP\" },\n                { \"networkInfo\", new[]\n                {\n                    \n                    {\n                        { \"vlanName\", \"vlan_static\" },\n                        { \"staticIp\", \"{{ static_ip }}\" },\n                        { \"gateway\", \"{{ gateway }}\" },\n                        { \"subnetMask\", \"{{ subnet_mask }}\" },\n                    },\n                } },\n                { \"accessType\", new[]\n                {\n                    \"PRISM\",\n                    \"DSIP\",\n                    \"DBSERVER\",\n                } },\n            },\n        },\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pierskarsenbarg/pulumi-nutanix/sdk/go/nutanix\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := nutanix.NewNdbClusters(ctx, \"clsname\", &nutanix.NdbClustersArgs{\n\t\t\tName:             \"{{ test-cluster }}\",\n\t\t\tDescription:      \"test description\",\n\t\t\tClusterIp:        \"{{ cluster_ip }}\",\n\t\t\tUsername:         \"{{ username of cluster }}\",\n\t\t\tPassword:         \"{{ password of cluster }}\",\n\t\t\tStorageContainer: \"{{ storage_container }}\",\n\t\t\tAgentNetworkInfo: []map[string]interface{}{\n\t\t\t\tmap[string]interface{}{\n\t\t\t\t\t\"dns\": \"{{ DNS servers available in the }}\",\n\t\t\t\t\t\"ntp\": \"{{ NTP servers available }}\",\n\t\t\t\t},\n\t\t\t},\n\t\t\tNetworksInfo: []map[string]interface{}{\n\t\t\t\tmap[string]interface{}{\n\t\t\t\t\t\"type\": \"DHCP\",\n\t\t\t\t\t\"networkInfo\": []map[string]interface{}{\n\t\t\t\t\t\tmap[string]interface{}{\n\t\t\t\t\t\t\t\"vlanName\":   \"vlan_static\",\n\t\t\t\t\t\t\t\"staticIp\":   \"{{ static_ip }}\",\n\t\t\t\t\t\t\t\"gateway\":    \"{{ gateway }}\",\n\t\t\t\t\t\t\t\"subnetMask\": \"{{ subnet_mask }}\",\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t\t\"accessType\": []string{\n\t\t\t\t\t\t\"PRISM\",\n\t\t\t\t\t\t\"DSIP\",\n\t\t\t\t\t\t\"DBSERVER\",\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.nutanix.ndbClusters;\nimport com.pulumi.nutanix.ndbClustersArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var clsname = new NdbClusters(\"clsname\", NdbClustersArgs.builder()\n            .name(\"{{ test-cluster }}\")\n            .description(\"test description\")\n            .clusterIp(\"{{ cluster_ip }}\")\n            .username(\"{{ username of cluster }}\")\n            .password(\"{{ password of cluster }}\")\n            .storageContainer(\"{{ storage_container }}\")\n            .agentNetworkInfo(List.of(Map.ofEntries(\n                Map.entry(\"dns\", \"{{ DNS servers available in the }}\"),\n                Map.entry(\"ntp\", \"{{ NTP servers available }}\")\n            )))\n            .networksInfo(List.of(Map.ofEntries(\n                Map.entry(\"type\", \"DHCP\"),\n                Map.entry(\"networkInfo\", List.of(Map.ofEntries(\n                    Map.entry(\"vlanName\", \"vlan_static\"),\n                    Map.entry(\"staticIp\", \"{{ static_ip }}\"),\n                    Map.entry(\"gateway\", \"{{ gateway }}\"),\n                    Map.entry(\"subnetMask\", \"{{ subnet_mask }}\")\n                ))),\n                Map.entry(\"accessType\", List.of(                \n                    \"PRISM\",\n                    \"DSIP\",\n                    \"DBSERVER\"))\n            )))\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  clsname:\n    type: nutanix:ndbClusters\n    properties:\n      name: '{{ test-cluster }}'\n      description: test description\n      clusterIp: '{{ cluster_ip }}'\n      username: '{{ username of cluster }}'\n      password: '{{ password of cluster }}'\n      storageContainer: '{{ storage_container }}'\n      agentNetworkInfo:\n        - dns: '{{ DNS servers available in the }}'\n          ntp: '{{ NTP servers available }}'\n      networksInfo:\n        - type: DHCP\n          networkInfo:\n            - vlanName: vlan_static\n              staticIp: '{{ static_ip }}'\n              gateway: '{{ gateway }}'\n              subnetMask: '{{ subnet_mask }}'\n          accessType:\n            - PRISM\n            - DSIP\n            - DBSERVER\n```\n<!--End PulumiCodeChooser -->\n",
      "properties": {
        "agentNetworkInfos": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FNdbClusterAgentNetworkInfo:NdbClusterAgentNetworkInfo"
          },
          "description": "agent network info to register cluster\n"
        },
        "agentVmPrefix": {
          "type": "string"
        },
        "cloudInfo": {
          "type": "string",
          "description": "- cloud info\n"
        },
        "cloudType": {
          "type": "string",
          "description": "- cloud type\n"
        },
        "clusterIp": {
          "type": "string",
          "description": "Prism Element IP address\n"
        },
        "clusterType": {
          "type": "string"
        },
        "dateCreated": {
          "type": "string",
          "description": "- creation date\n"
        },
        "dateModified": {
          "type": "string",
          "description": "- date modified\n"
        },
        "description": {
          "type": "string",
          "description": "description of cluster\n"
        },
        "entityCounts": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FNdbClusterEntityCount:NdbClusterEntityCount"
          },
          "description": "- no. of entities related\n"
        },
        "fqdns": {
          "type": "string",
          "description": "- fqdn\n"
        },
        "healthy": {
          "type": "boolean",
          "description": "- if healthy status\n"
        },
        "hypervisorType": {
          "type": "string",
          "description": "- hypervisor type\n"
        },
        "hypervisorVersion": {
          "type": "string",
          "description": "- hypervisor version\n"
        },
        "ipAddresses": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "- IP address\n"
        },
        "managementServerInfo": {
          "type": "string",
          "description": "- NA\n"
        },
        "name": {
          "type": "string",
          "description": "name of the cluster to be registered\n"
        },
        "networksInfos": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FNdbClusterNetworksInfo:NdbClusterNetworksInfo"
          },
          "description": "network segmentation to segment the network traffic of the agent VM.\n"
        },
        "nxClusterUuid": {
          "type": "string",
          "description": "- nutanix cluster uuid\n"
        },
        "ownerId": {
          "type": "string",
          "description": "- owner UUID\n"
        },
        "password": {
          "type": "string",
          "description": "Prism Element password\n",
          "secret": true
        },
        "port": {
          "type": "integer"
        },
        "properties": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FNdbClusterProperty:NdbClusterProperty"
          },
          "description": "- list of properties\n"
        },
        "protocol": {
          "type": "string"
        },
        "referenceCount": {
          "type": "integer",
          "description": "- NA\n"
        },
        "resourceConfigs": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FNdbClusterResourceConfig:NdbClusterResourceConfig"
          },
          "description": "- resource related consumption info\n"
        },
        "status": {
          "type": "string",
          "description": "- current status\n"
        },
        "storageContainer": {
          "type": "string",
          "description": "select a storage container which is used for performing database operations in the cluster\n"
        },
        "uniqueName": {
          "type": "string",
          "description": "- unique name of cluster\n"
        },
        "username": {
          "type": "string",
          "description": "username of the Prism Element administrator\n"
        },
        "version": {
          "type": "string",
          "description": "- version\n"
        }
      },
      "type": "object",
      "required": [
        "agentNetworkInfos",
        "cloudInfo",
        "cloudType",
        "clusterIp",
        "dateCreated",
        "dateModified",
        "entityCounts",
        "fqdns",
        "healthy",
        "hypervisorType",
        "hypervisorVersion",
        "ipAddresses",
        "managementServerInfo",
        "name",
        "networksInfos",
        "nxClusterUuid",
        "ownerId",
        "password",
        "properties",
        "referenceCount",
        "resourceConfigs",
        "status",
        "storageContainer",
        "uniqueName",
        "username"
      ],
      "inputProperties": {
        "agentNetworkInfos": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FNdbClusterAgentNetworkInfo:NdbClusterAgentNetworkInfo"
          },
          "description": "agent network info to register cluster\n"
        },
        "agentVmPrefix": {
          "type": "string"
        },
        "clusterIp": {
          "type": "string",
          "description": "Prism Element IP address\n"
        },
        "clusterType": {
          "type": "string"
        },
        "description": {
          "type": "string",
          "description": "description of cluster\n"
        },
        "name": {
          "type": "string",
          "description": "name of the cluster to be registered\n"
        },
        "networksInfos": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FNdbClusterNetworksInfo:NdbClusterNetworksInfo"
          },
          "description": "network segmentation to segment the network traffic of the agent VM.\n"
        },
        "password": {
          "type": "string",
          "description": "Prism Element password\n",
          "secret": true
        },
        "port": {
          "type": "integer"
        },
        "protocol": {
          "type": "string"
        },
        "storageContainer": {
          "type": "string",
          "description": "select a storage container which is used for performing database operations in the cluster\n"
        },
        "username": {
          "type": "string",
          "description": "username of the Prism Element administrator\n"
        },
        "version": {
          "type": "string",
          "description": "- version\n"
        }
      },
      "requiredInputs": [
        "agentNetworkInfos",
        "clusterIp",
        "networksInfos",
        "password",
        "storageContainer",
        "username"
      ],
      "stateInputs": {
        "description": "Input properties used for looking up and filtering NdbCluster resources.\n",
        "properties": {
          "agentNetworkInfos": {
            "type": "array",
            "items": {
              "$ref": "#/types/nutanix:index%2FNdbClusterAgentNetworkInfo:NdbClusterAgentNetworkInfo"
            },
            "description": "agent network info to register cluster\n"
          },
          "agentVmPrefix": {
            "type": "string"
          },
          "cloudInfo": {
            "type": "string",
            "description": "- cloud info\n"
          },
          "cloudType": {
            "type": "string",
            "description": "- cloud type\n"
          },
          "clusterIp": {
            "type": "string",
            "description": "Prism Element IP address\n"
          },
          "clusterType": {
            "type": "string"
          },
          "dateCreated": {
            "type": "string",
            "description": "- creation date\n"
          },
          "dateModified": {
            "type": "string",
            "description": "- date modified\n"
          },
          "description": {
            "type": "string",
            "description": "description of cluster\n"
          },
          "entityCounts": {
            "type": "array",
            "items": {
              "$ref": "#/types/nutanix:index%2FNdbClusterEntityCount:NdbClusterEntityCount"
            },
            "description": "- no. of entities related\n"
          },
          "fqdns": {
            "type": "string",
            "description": "- fqdn\n"
          },
          "healthy": {
            "type": "boolean",
            "description": "- if healthy status\n"
          },
          "hypervisorType": {
            "type": "string",
            "description": "- hypervisor type\n"
          },
          "hypervisorVersion": {
            "type": "string",
            "description": "- hypervisor version\n"
          },
          "ipAddresses": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "description": "- IP address\n"
          },
          "managementServerInfo": {
            "type": "string",
            "description": "- NA\n"
          },
          "name": {
            "type": "string",
            "description": "name of the cluster to be registered\n"
          },
          "networksInfos": {
            "type": "array",
            "items": {
              "$ref": "#/types/nutanix:index%2FNdbClusterNetworksInfo:NdbClusterNetworksInfo"
            },
            "description": "network segmentation to segment the network traffic of the agent VM.\n"
          },
          "nxClusterUuid": {
            "type": "string",
            "description": "- nutanix cluster uuid\n"
          },
          "ownerId": {
            "type": "string",
            "description": "- owner UUID\n"
          },
          "password": {
            "type": "string",
            "description": "Prism Element password\n",
            "secret": true
          },
          "port": {
            "type": "integer"
          },
          "properties": {
            "type": "array",
            "items": {
              "$ref": "#/types/nutanix:index%2FNdbClusterProperty:NdbClusterProperty"
            },
            "description": "- list of properties\n"
          },
          "protocol": {
            "type": "string"
          },
          "referenceCount": {
            "type": "integer",
            "description": "- NA\n"
          },
          "resourceConfigs": {
            "type": "array",
            "items": {
              "$ref": "#/types/nutanix:index%2FNdbClusterResourceConfig:NdbClusterResourceConfig"
            },
            "description": "- resource related consumption info\n"
          },
          "status": {
            "type": "string",
            "description": "- current status\n"
          },
          "storageContainer": {
            "type": "string",
            "description": "select a storage container which is used for performing database operations in the cluster\n"
          },
          "uniqueName": {
            "type": "string",
            "description": "- unique name of cluster\n"
          },
          "username": {
            "type": "string",
            "description": "username of the Prism Element administrator\n"
          },
          "version": {
            "type": "string",
            "description": "- version\n"
          }
        },
        "type": "object"
      }
    },
    "nutanix:index/ndbDatabase:NdbDatabase": {
      "description": "Provides a resource to create database instance based on the input parameters. For 1.8.0 release, only postgress database type is qualified and officially supported.\n\n## Example Usage\n\n### NDB database resource with new database server VM\n\n<!--Start PulumiCodeChooser -->\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as nutanix from \"@pierskarsenbarg/nutanix\";\n\nconst dbp = new nutanix.NdbDatabase(\"dbp\", {\n    databasetype: \"postgres_database\",\n    name: \"test-inst\",\n    description: \"add description\",\n    softwareprofileid: \"{{ software_profile_id }}\",\n    softwareprofileversionid: \"{{ software_profile_version_id }}\",\n    computeprofileid: \"{{ compute_profile_id }}\",\n    networkprofileid: \"{{ network_profile_id }}\",\n    dbparameterprofileid: \"{{ db_parameter_profile_id }}\",\n    postgresqlInfo: {\n        listenerPort: \"{{ listner_port }}\",\n        databaseSize: \"{{ 200 }}\",\n        dbPassword: \"password\",\n        databaseNames: \"testdb1\",\n    },\n    nxclusterid: clusters.EraCluster.id,\n    sshpublickey: \"{{ ssh-public-key }}\",\n    nodes: [{\n        vmname: \"test-era-vm1\",\n        networkprofileid: \"<network-profile-uuid>\",\n    }],\n    timemachineinfo: {\n        name: \"test-pg-inst\",\n        description: \"description of time machine\",\n        slaid: \"{{ sla_id }}\",\n        schedule: {\n            snapshottimeofday: {\n                hours: 16,\n                minutes: 0,\n                seconds: 0,\n            },\n            continuousschedule: {\n                enabled: true,\n                logbackupinterval: 30,\n                snapshotsperday: 1,\n            },\n            weeklyschedule: {\n                enabled: true,\n                dayofweek: \"WEDNESDAY\",\n            },\n            monthlyschedule: {\n                enabled: true,\n                dayofmonth: 27,\n            },\n            quartelyschedule: {\n                enabled: true,\n                startmonth: \"JANUARY\",\n                dayofmonth: 27,\n            },\n            yearlyschedule: {\n                enabled: false,\n                dayofmonth: 31,\n                month: \"DECEMBER\",\n            },\n        },\n    },\n});\n```\n```python\nimport pulumi\nimport pulumi_nutanix as nutanix\n\ndbp = nutanix.NdbDatabase(\"dbp\",\n    databasetype=\"postgres_database\",\n    name=\"test-inst\",\n    description=\"add description\",\n    softwareprofileid=\"{{ software_profile_id }}\",\n    softwareprofileversionid=\"{{ software_profile_version_id }}\",\n    computeprofileid=\"{{ compute_profile_id }}\",\n    networkprofileid=\"{{ network_profile_id }}\",\n    dbparameterprofileid=\"{{ db_parameter_profile_id }}\",\n    postgresql_info={\n        \"listener_port\": \"{{ listner_port }}\",\n        \"database_size\": \"{{ 200 }}\",\n        \"db_password\": \"password\",\n        \"database_names\": \"testdb1\",\n    },\n    nxclusterid=clusters[\"EraCluster\"][\"id\"],\n    sshpublickey=\"{{ ssh-public-key }}\",\n    nodes=[{\n        \"vmname\": \"test-era-vm1\",\n        \"networkprofileid\": \"<network-profile-uuid>\",\n    }],\n    timemachineinfo={\n        \"name\": \"test-pg-inst\",\n        \"description\": \"description of time machine\",\n        \"slaid\": \"{{ sla_id }}\",\n        \"schedule\": {\n            \"snapshottimeofday\": {\n                \"hours\": 16,\n                \"minutes\": 0,\n                \"seconds\": 0,\n            },\n            \"continuousschedule\": {\n                \"enabled\": True,\n                \"logbackupinterval\": 30,\n                \"snapshotsperday\": 1,\n            },\n            \"weeklyschedule\": {\n                \"enabled\": True,\n                \"dayofweek\": \"WEDNESDAY\",\n            },\n            \"monthlyschedule\": {\n                \"enabled\": True,\n                \"dayofmonth\": 27,\n            },\n            \"quartelyschedule\": {\n                \"enabled\": True,\n                \"startmonth\": \"JANUARY\",\n                \"dayofmonth\": 27,\n            },\n            \"yearlyschedule\": {\n                \"enabled\": False,\n                \"dayofmonth\": 31,\n                \"month\": \"DECEMBER\",\n            },\n        },\n    })\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Nutanix = PiersKarsenbarg.Nutanix;\n\nreturn await Deployment.RunAsync(() => \n{\n    var dbp = new Nutanix.NdbDatabase(\"dbp\", new()\n    {\n        Databasetype = \"postgres_database\",\n        Name = \"test-inst\",\n        Description = \"add description\",\n        Softwareprofileid = \"{{ software_profile_id }}\",\n        Softwareprofileversionid = \"{{ software_profile_version_id }}\",\n        Computeprofileid = \"{{ compute_profile_id }}\",\n        Networkprofileid = \"{{ network_profile_id }}\",\n        Dbparameterprofileid = \"{{ db_parameter_profile_id }}\",\n        PostgresqlInfo = new Nutanix.Inputs.NdbDatabasePostgresqlInfoArgs\n        {\n            ListenerPort = \"{{ listner_port }}\",\n            DatabaseSize = \"{{ 200 }}\",\n            DbPassword = \"password\",\n            DatabaseNames = \"testdb1\",\n        },\n        Nxclusterid = clusters.EraCluster.Id,\n        Sshpublickey = \"{{ ssh-public-key }}\",\n        Nodes = new[]\n        {\n            new Nutanix.Inputs.NdbDatabaseNodeArgs\n            {\n                Vmname = \"test-era-vm1\",\n                Networkprofileid = \"<network-profile-uuid>\",\n            },\n        },\n        Timemachineinfo = new Nutanix.Inputs.NdbDatabaseTimemachineinfoArgs\n        {\n            Name = \"test-pg-inst\",\n            Description = \"description of time machine\",\n            Slaid = \"{{ sla_id }}\",\n            Schedule = new Nutanix.Inputs.NdbDatabaseTimemachineinfoScheduleArgs\n            {\n                Snapshottimeofday = new Nutanix.Inputs.NdbDatabaseTimemachineinfoScheduleSnapshottimeofdayArgs\n                {\n                    Hours = 16,\n                    Minutes = 0,\n                    Seconds = 0,\n                },\n                Continuousschedule = new Nutanix.Inputs.NdbDatabaseTimemachineinfoScheduleContinuousscheduleArgs\n                {\n                    Enabled = true,\n                    Logbackupinterval = 30,\n                    Snapshotsperday = 1,\n                },\n                Weeklyschedule = new Nutanix.Inputs.NdbDatabaseTimemachineinfoScheduleWeeklyscheduleArgs\n                {\n                    Enabled = true,\n                    Dayofweek = \"WEDNESDAY\",\n                },\n                Monthlyschedule = new Nutanix.Inputs.NdbDatabaseTimemachineinfoScheduleMonthlyscheduleArgs\n                {\n                    Enabled = true,\n                    Dayofmonth = 27,\n                },\n                Quartelyschedule = new Nutanix.Inputs.NdbDatabaseTimemachineinfoScheduleQuartelyscheduleArgs\n                {\n                    Enabled = true,\n                    Startmonth = \"JANUARY\",\n                    Dayofmonth = 27,\n                },\n                Yearlyschedule = new Nutanix.Inputs.NdbDatabaseTimemachineinfoScheduleYearlyscheduleArgs\n                {\n                    Enabled = false,\n                    Dayofmonth = 31,\n                    Month = \"DECEMBER\",\n                },\n            },\n        },\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pierskarsenbarg/pulumi-nutanix/sdk/go/nutanix\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := nutanix.NewNdbDatabase(ctx, \"dbp\", &nutanix.NdbDatabaseArgs{\n\t\t\tDatabasetype:             pulumi.String(\"postgres_database\"),\n\t\t\tName:                     pulumi.String(\"test-inst\"),\n\t\t\tDescription:              pulumi.String(\"add description\"),\n\t\t\tSoftwareprofileid:        pulumi.String(\"{{ software_profile_id }}\"),\n\t\t\tSoftwareprofileversionid: pulumi.String(\"{{ software_profile_version_id }}\"),\n\t\t\tComputeprofileid:         pulumi.String(\"{{ compute_profile_id }}\"),\n\t\t\tNetworkprofileid:         pulumi.String(\"{{ network_profile_id }}\"),\n\t\t\tDbparameterprofileid:     pulumi.String(\"{{ db_parameter_profile_id }}\"),\n\t\t\tPostgresqlInfo: &nutanix.NdbDatabasePostgresqlInfoArgs{\n\t\t\t\tListenerPort:  pulumi.String(\"{{ listner_port }}\"),\n\t\t\t\tDatabaseSize:  pulumi.String(\"{{ 200 }}\"),\n\t\t\t\tDbPassword:    pulumi.String(\"password\"),\n\t\t\t\tDatabaseNames: pulumi.String(\"testdb1\"),\n\t\t\t},\n\t\t\tNxclusterid:  pulumi.Any(clusters.EraCluster.Id),\n\t\t\tSshpublickey: pulumi.String(\"{{ ssh-public-key }}\"),\n\t\t\tNodes: nutanix.NdbDatabaseNodeArray{\n\t\t\t\t&nutanix.NdbDatabaseNodeArgs{\n\t\t\t\t\tVmname:           pulumi.String(\"test-era-vm1\"),\n\t\t\t\t\tNetworkprofileid: pulumi.String(\"<network-profile-uuid>\"),\n\t\t\t\t},\n\t\t\t},\n\t\t\tTimemachineinfo: &nutanix.NdbDatabaseTimemachineinfoArgs{\n\t\t\t\tName:        pulumi.String(\"test-pg-inst\"),\n\t\t\t\tDescription: pulumi.String(\"description of time machine\"),\n\t\t\t\tSlaid:       pulumi.String(\"{{ sla_id }}\"),\n\t\t\t\tSchedule: &nutanix.NdbDatabaseTimemachineinfoScheduleArgs{\n\t\t\t\t\tSnapshottimeofday: &nutanix.NdbDatabaseTimemachineinfoScheduleSnapshottimeofdayArgs{\n\t\t\t\t\t\tHours:   pulumi.Int(16),\n\t\t\t\t\t\tMinutes: pulumi.Int(0),\n\t\t\t\t\t\tSeconds: pulumi.Int(0),\n\t\t\t\t\t},\n\t\t\t\t\tContinuousschedule: &nutanix.NdbDatabaseTimemachineinfoScheduleContinuousscheduleArgs{\n\t\t\t\t\t\tEnabled:           pulumi.Bool(true),\n\t\t\t\t\t\tLogbackupinterval: pulumi.Int(30),\n\t\t\t\t\t\tSnapshotsperday:   pulumi.Int(1),\n\t\t\t\t\t},\n\t\t\t\t\tWeeklyschedule: &nutanix.NdbDatabaseTimemachineinfoScheduleWeeklyscheduleArgs{\n\t\t\t\t\t\tEnabled:   pulumi.Bool(true),\n\t\t\t\t\t\tDayofweek: pulumi.String(\"WEDNESDAY\"),\n\t\t\t\t\t},\n\t\t\t\t\tMonthlyschedule: &nutanix.NdbDatabaseTimemachineinfoScheduleMonthlyscheduleArgs{\n\t\t\t\t\t\tEnabled:    pulumi.Bool(true),\n\t\t\t\t\t\tDayofmonth: pulumi.Int(27),\n\t\t\t\t\t},\n\t\t\t\t\tQuartelyschedule: &nutanix.NdbDatabaseTimemachineinfoScheduleQuartelyscheduleArgs{\n\t\t\t\t\t\tEnabled:    pulumi.Bool(true),\n\t\t\t\t\t\tStartmonth: pulumi.String(\"JANUARY\"),\n\t\t\t\t\t\tDayofmonth: pulumi.Int(27),\n\t\t\t\t\t},\n\t\t\t\t\tYearlyschedule: &nutanix.NdbDatabaseTimemachineinfoScheduleYearlyscheduleArgs{\n\t\t\t\t\t\tEnabled:    pulumi.Bool(false),\n\t\t\t\t\t\tDayofmonth: pulumi.Int(31),\n\t\t\t\t\t\tMonth:      pulumi.String(\"DECEMBER\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.nutanix.NdbDatabase;\nimport com.pulumi.nutanix.NdbDatabaseArgs;\nimport com.pulumi.nutanix.inputs.NdbDatabasePostgresqlInfoArgs;\nimport com.pulumi.nutanix.inputs.NdbDatabaseNodeArgs;\nimport com.pulumi.nutanix.inputs.NdbDatabaseTimemachineinfoArgs;\nimport com.pulumi.nutanix.inputs.NdbDatabaseTimemachineinfoScheduleArgs;\nimport com.pulumi.nutanix.inputs.NdbDatabaseTimemachineinfoScheduleSnapshottimeofdayArgs;\nimport com.pulumi.nutanix.inputs.NdbDatabaseTimemachineinfoScheduleContinuousscheduleArgs;\nimport com.pulumi.nutanix.inputs.NdbDatabaseTimemachineinfoScheduleWeeklyscheduleArgs;\nimport com.pulumi.nutanix.inputs.NdbDatabaseTimemachineinfoScheduleMonthlyscheduleArgs;\nimport com.pulumi.nutanix.inputs.NdbDatabaseTimemachineinfoScheduleQuartelyscheduleArgs;\nimport com.pulumi.nutanix.inputs.NdbDatabaseTimemachineinfoScheduleYearlyscheduleArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var dbp = new NdbDatabase(\"dbp\", NdbDatabaseArgs.builder()\n            .databasetype(\"postgres_database\")\n            .name(\"test-inst\")\n            .description(\"add description\")\n            .softwareprofileid(\"{{ software_profile_id }}\")\n            .softwareprofileversionid(\"{{ software_profile_version_id }}\")\n            .computeprofileid(\"{{ compute_profile_id }}\")\n            .networkprofileid(\"{{ network_profile_id }}\")\n            .dbparameterprofileid(\"{{ db_parameter_profile_id }}\")\n            .postgresqlInfo(NdbDatabasePostgresqlInfoArgs.builder()\n                .listenerPort(\"{{ listner_port }}\")\n                .databaseSize(\"{{ 200 }}\")\n                .dbPassword(\"password\")\n                .databaseNames(\"testdb1\")\n                .build())\n            .nxclusterid(clusters.EraCluster().id())\n            .sshpublickey(\"{{ ssh-public-key }}\")\n            .nodes(NdbDatabaseNodeArgs.builder()\n                .vmname(\"test-era-vm1\")\n                .networkprofileid(\"<network-profile-uuid>\")\n                .build())\n            .timemachineinfo(NdbDatabaseTimemachineinfoArgs.builder()\n                .name(\"test-pg-inst\")\n                .description(\"description of time machine\")\n                .slaid(\"{{ sla_id }}\")\n                .schedule(NdbDatabaseTimemachineinfoScheduleArgs.builder()\n                    .snapshottimeofday(NdbDatabaseTimemachineinfoScheduleSnapshottimeofdayArgs.builder()\n                        .hours(16)\n                        .minutes(0)\n                        .seconds(0)\n                        .build())\n                    .continuousschedule(NdbDatabaseTimemachineinfoScheduleContinuousscheduleArgs.builder()\n                        .enabled(true)\n                        .logbackupinterval(30)\n                        .snapshotsperday(1)\n                        .build())\n                    .weeklyschedule(NdbDatabaseTimemachineinfoScheduleWeeklyscheduleArgs.builder()\n                        .enabled(true)\n                        .dayofweek(\"WEDNESDAY\")\n                        .build())\n                    .monthlyschedule(NdbDatabaseTimemachineinfoScheduleMonthlyscheduleArgs.builder()\n                        .enabled(true)\n                        .dayofmonth(27)\n                        .build())\n                    .quartelyschedule(NdbDatabaseTimemachineinfoScheduleQuartelyscheduleArgs.builder()\n                        .enabled(true)\n                        .startmonth(\"JANUARY\")\n                        .dayofmonth(27)\n                        .build())\n                    .yearlyschedule(NdbDatabaseTimemachineinfoScheduleYearlyscheduleArgs.builder()\n                        .enabled(false)\n                        .dayofmonth(31)\n                        .month(\"DECEMBER\")\n                        .build())\n                    .build())\n                .build())\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  dbp:\n    type: nutanix:NdbDatabase\n    properties:\n      databasetype: postgres_database\n      name: test-inst\n      description: add description\n      softwareprofileid: '{{ software_profile_id }}'\n      softwareprofileversionid: '{{ software_profile_version_id }}'\n      computeprofileid: '{{ compute_profile_id }}'\n      networkprofileid: '{{ network_profile_id }}'\n      dbparameterprofileid: '{{ db_parameter_profile_id }}'\n      postgresqlInfo:\n        listenerPort: '{{ listner_port }}'\n        databaseSize: '{{ 200 }}'\n        dbPassword: password\n        databaseNames: testdb1\n      nxclusterid: ${clusters.EraCluster.id}\n      sshpublickey: '{{ ssh-public-key }}'\n      nodes:\n        - vmname: test-era-vm1\n          networkprofileid: <network-profile-uuid>\n      timemachineinfo:\n        name: test-pg-inst\n        description: description of time machine\n        slaid: '{{ sla_id }}'\n        schedule:\n          snapshottimeofday:\n            hours: 16\n            minutes: 0\n            seconds: 0\n          continuousschedule:\n            enabled: true\n            logbackupinterval: 30\n            snapshotsperday: 1\n          weeklyschedule:\n            enabled: true\n            dayofweek: WEDNESDAY\n          monthlyschedule:\n            enabled: true\n            dayofmonth: '27'\n          quartelyschedule:\n            enabled: true\n            startmonth: JANUARY\n            dayofmonth: 27\n          yearlyschedule:\n            enabled: false\n            dayofmonth: 31\n            month: DECEMBER\n```\n<!--End PulumiCodeChooser -->\n\n\n### NDB database resource to provision HA instance with new database server VM\n\n<!--Start PulumiCodeChooser -->\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as nutanix from \"@pierskarsenbarg/nutanix\";\n\nconst dbp = new nutanix.NdbDatabase(\"dbp\", {\n    databasetype: \"postgres_database\",\n    name: \"test-pg-inst-HA-tf\",\n    description: \"adding description\",\n    softwareprofileid: \"{{ software_profile_id }}\",\n    softwareprofileversionid: \"{{ software_profile_version_id }}\",\n    computeprofileid: \"{{ compute_profile_id }}\",\n    networkprofileid: \"{{ network_profile_id }}\",\n    dbparameterprofileid: \"{{ db_parameter_profile_id }}\",\n    createdbserver: true,\n    clustered: true,\n    nodecount: 4,\n    postgresqlInfo: {\n        listenerPort: \"5432\",\n        databaseSize: \"200\",\n        dbPassword: \"{{ database password}}\",\n        databaseNames: \"testdb1\",\n        haInstance: {\n            proxyReadPort: \"5001\",\n            proxyWritePort: \"5000\",\n            clusterName: \"{{ cluster_name }}\",\n            patroniClusterName: \" {{ patroni_cluster_name }}\",\n        },\n    },\n    nxclusterid: \"1c42ca25-32f4-42d9-a2bd-6a21f925b725\",\n    sshpublickey: \"{{ ssh_public_key }}\",\n    nodes: [\n        {\n            properties: [{\n                name: \"node_type\",\n                value: \"haproxy\",\n            }],\n            vmname: \"{{ vm name }}\",\n            nxClusterId: \"{{ nx_cluster_id }}\",\n        },\n        {\n            properties: [\n                {\n                    name: \"role\",\n                    value: \"Primary\",\n                },\n                {\n                    name: \"failover_mode\",\n                    value: \"Automatic\",\n                },\n                {\n                    name: \"node_type\",\n                    value: \"database\",\n                },\n            ],\n            vmname: \"{{ name of vm }}\",\n            networkprofileid: \"{{ network_profile_id }}\",\n            computeprofileid: \"{{ compute_profile_id }}\",\n            nxClusterId: \"{{ nx_cluster_id }}\",\n        },\n        {\n            properties: [\n                {\n                    name: \"role\",\n                    value: \"Secondary\",\n                },\n                {\n                    name: \"failover_mode\",\n                    value: \"Automatic\",\n                },\n                {\n                    name: \"node_type\",\n                    value: \"database\",\n                },\n            ],\n            vmname: \"{{ name of vm }}\",\n            networkprofileid: \"{{ network_profile_id }}\",\n            computeprofileid: \"{{ compute_profile_id }}\",\n            nxClusterId: \"{{ nx_cluster_id }}\",\n        },\n        {\n            properties: [\n                {\n                    name: \"role\",\n                    value: \"Secondary\",\n                },\n                {\n                    name: \"failover_mode\",\n                    value: \"Automatic\",\n                },\n                {\n                    name: \"node_type\",\n                    value: \"database\",\n                },\n            ],\n            vmname: \"{{ name of vm }}\",\n            networkprofileid: \"{{ network_profile_id }}\",\n            computeprofileid: \"{{ compute_profile_id }}\",\n            nxClusterId: \"{{ nx_cluster_id }}\",\n        },\n    ],\n    timemachineinfo: {\n        name: \"test-pg-inst-HA\",\n        description: \"\",\n        slaDetails: [{\n            primarySlas: [{\n                slaId: \"{{ required SLA}}0\",\n                nxClusterIds: [\"{{ nx_cluster_id}}\"],\n            }],\n        }],\n        schedule: {\n            snapshottimeofday: {\n                hours: 16,\n                minutes: 0,\n                seconds: 0,\n            },\n            continuousschedule: {\n                enabled: true,\n                logbackupinterval: 30,\n                snapshotsperday: 1,\n            },\n            weeklyschedule: {\n                enabled: true,\n                dayofweek: \"WEDNESDAY\",\n            },\n            monthlyschedule: {\n                enabled: true,\n                dayofmonth: 27,\n            },\n            quartelyschedule: {\n                enabled: true,\n                startmonth: \"JANUARY\",\n                dayofmonth: 27,\n            },\n            yearlyschedule: {\n                enabled: false,\n                dayofmonth: 31,\n                month: \"DECEMBER\",\n            },\n        },\n    },\n    vmPassword: \"{{ vm_password}}\",\n    autotunestagingdrive: true,\n});\n```\n```python\nimport pulumi\nimport pulumi_nutanix as nutanix\n\ndbp = nutanix.NdbDatabase(\"dbp\",\n    databasetype=\"postgres_database\",\n    name=\"test-pg-inst-HA-tf\",\n    description=\"adding description\",\n    softwareprofileid=\"{{ software_profile_id }}\",\n    softwareprofileversionid=\"{{ software_profile_version_id }}\",\n    computeprofileid=\"{{ compute_profile_id }}\",\n    networkprofileid=\"{{ network_profile_id }}\",\n    dbparameterprofileid=\"{{ db_parameter_profile_id }}\",\n    createdbserver=True,\n    clustered=True,\n    nodecount=4,\n    postgresql_info={\n        \"listener_port\": \"5432\",\n        \"database_size\": \"200\",\n        \"db_password\": \"{{ database password}}\",\n        \"database_names\": \"testdb1\",\n        \"ha_instance\": {\n            \"proxy_read_port\": \"5001\",\n            \"proxy_write_port\": \"5000\",\n            \"cluster_name\": \"{{ cluster_name }}\",\n            \"patroni_cluster_name\": \" {{ patroni_cluster_name }}\",\n        },\n    },\n    nxclusterid=\"1c42ca25-32f4-42d9-a2bd-6a21f925b725\",\n    sshpublickey=\"{{ ssh_public_key }}\",\n    nodes=[\n        {\n            \"properties\": [{\n                \"name\": \"node_type\",\n                \"value\": \"haproxy\",\n            }],\n            \"vmname\": \"{{ vm name }}\",\n            \"nx_cluster_id\": \"{{ nx_cluster_id }}\",\n        },\n        {\n            \"properties\": [\n                {\n                    \"name\": \"role\",\n                    \"value\": \"Primary\",\n                },\n                {\n                    \"name\": \"failover_mode\",\n                    \"value\": \"Automatic\",\n                },\n                {\n                    \"name\": \"node_type\",\n                    \"value\": \"database\",\n                },\n            ],\n            \"vmname\": \"{{ name of vm }}\",\n            \"networkprofileid\": \"{{ network_profile_id }}\",\n            \"computeprofileid\": \"{{ compute_profile_id }}\",\n            \"nx_cluster_id\": \"{{ nx_cluster_id }}\",\n        },\n        {\n            \"properties\": [\n                {\n                    \"name\": \"role\",\n                    \"value\": \"Secondary\",\n                },\n                {\n                    \"name\": \"failover_mode\",\n                    \"value\": \"Automatic\",\n                },\n                {\n                    \"name\": \"node_type\",\n                    \"value\": \"database\",\n                },\n            ],\n            \"vmname\": \"{{ name of vm }}\",\n            \"networkprofileid\": \"{{ network_profile_id }}\",\n            \"computeprofileid\": \"{{ compute_profile_id }}\",\n            \"nx_cluster_id\": \"{{ nx_cluster_id }}\",\n        },\n        {\n            \"properties\": [\n                {\n                    \"name\": \"role\",\n                    \"value\": \"Secondary\",\n                },\n                {\n                    \"name\": \"failover_mode\",\n                    \"value\": \"Automatic\",\n                },\n                {\n                    \"name\": \"node_type\",\n                    \"value\": \"database\",\n                },\n            ],\n            \"vmname\": \"{{ name of vm }}\",\n            \"networkprofileid\": \"{{ network_profile_id }}\",\n            \"computeprofileid\": \"{{ compute_profile_id }}\",\n            \"nx_cluster_id\": \"{{ nx_cluster_id }}\",\n        },\n    ],\n    timemachineinfo={\n        \"name\": \"test-pg-inst-HA\",\n        \"description\": \"\",\n        \"sla_details\": [{\n            \"primary_slas\": [{\n                \"sla_id\": \"{{ required SLA}}0\",\n                \"nx_cluster_ids\": [\"{{ nx_cluster_id}}\"],\n            }],\n        }],\n        \"schedule\": {\n            \"snapshottimeofday\": {\n                \"hours\": 16,\n                \"minutes\": 0,\n                \"seconds\": 0,\n            },\n            \"continuousschedule\": {\n                \"enabled\": True,\n                \"logbackupinterval\": 30,\n                \"snapshotsperday\": 1,\n            },\n            \"weeklyschedule\": {\n                \"enabled\": True,\n                \"dayofweek\": \"WEDNESDAY\",\n            },\n            \"monthlyschedule\": {\n                \"enabled\": True,\n                \"dayofmonth\": 27,\n            },\n            \"quartelyschedule\": {\n                \"enabled\": True,\n                \"startmonth\": \"JANUARY\",\n                \"dayofmonth\": 27,\n            },\n            \"yearlyschedule\": {\n                \"enabled\": False,\n                \"dayofmonth\": 31,\n                \"month\": \"DECEMBER\",\n            },\n        },\n    },\n    vm_password=\"{{ vm_password}}\",\n    autotunestagingdrive=True)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Nutanix = PiersKarsenbarg.Nutanix;\n\nreturn await Deployment.RunAsync(() => \n{\n    var dbp = new Nutanix.NdbDatabase(\"dbp\", new()\n    {\n        Databasetype = \"postgres_database\",\n        Name = \"test-pg-inst-HA-tf\",\n        Description = \"adding description\",\n        Softwareprofileid = \"{{ software_profile_id }}\",\n        Softwareprofileversionid = \"{{ software_profile_version_id }}\",\n        Computeprofileid = \"{{ compute_profile_id }}\",\n        Networkprofileid = \"{{ network_profile_id }}\",\n        Dbparameterprofileid = \"{{ db_parameter_profile_id }}\",\n        Createdbserver = true,\n        Clustered = true,\n        Nodecount = 4,\n        PostgresqlInfo = new Nutanix.Inputs.NdbDatabasePostgresqlInfoArgs\n        {\n            ListenerPort = \"5432\",\n            DatabaseSize = \"200\",\n            DbPassword = \"{{ database password}}\",\n            DatabaseNames = \"testdb1\",\n            HaInstance = new Nutanix.Inputs.NdbDatabasePostgresqlInfoHaInstanceArgs\n            {\n                ProxyReadPort = \"5001\",\n                ProxyWritePort = \"5000\",\n                ClusterName = \"{{ cluster_name }}\",\n                PatroniClusterName = \" {{ patroni_cluster_name }}\",\n            },\n        },\n        Nxclusterid = \"1c42ca25-32f4-42d9-a2bd-6a21f925b725\",\n        Sshpublickey = \"{{ ssh_public_key }}\",\n        Nodes = new[]\n        {\n            new Nutanix.Inputs.NdbDatabaseNodeArgs\n            {\n                Properties = new[]\n                {\n                    new Nutanix.Inputs.NdbDatabaseNodePropertyArgs\n                    {\n                        Name = \"node_type\",\n                        Value = \"haproxy\",\n                    },\n                },\n                Vmname = \"{{ vm name }}\",\n                NxClusterId = \"{{ nx_cluster_id }}\",\n            },\n            new Nutanix.Inputs.NdbDatabaseNodeArgs\n            {\n                Properties = new[]\n                {\n                    new Nutanix.Inputs.NdbDatabaseNodePropertyArgs\n                    {\n                        Name = \"role\",\n                        Value = \"Primary\",\n                    },\n                    new Nutanix.Inputs.NdbDatabaseNodePropertyArgs\n                    {\n                        Name = \"failover_mode\",\n                        Value = \"Automatic\",\n                    },\n                    new Nutanix.Inputs.NdbDatabaseNodePropertyArgs\n                    {\n                        Name = \"node_type\",\n                        Value = \"database\",\n                    },\n                },\n                Vmname = \"{{ name of vm }}\",\n                Networkprofileid = \"{{ network_profile_id }}\",\n                Computeprofileid = \"{{ compute_profile_id }}\",\n                NxClusterId = \"{{ nx_cluster_id }}\",\n            },\n            new Nutanix.Inputs.NdbDatabaseNodeArgs\n            {\n                Properties = new[]\n                {\n                    new Nutanix.Inputs.NdbDatabaseNodePropertyArgs\n                    {\n                        Name = \"role\",\n                        Value = \"Secondary\",\n                    },\n                    new Nutanix.Inputs.NdbDatabaseNodePropertyArgs\n                    {\n                        Name = \"failover_mode\",\n                        Value = \"Automatic\",\n                    },\n                    new Nutanix.Inputs.NdbDatabaseNodePropertyArgs\n                    {\n                        Name = \"node_type\",\n                        Value = \"database\",\n                    },\n                },\n                Vmname = \"{{ name of vm }}\",\n                Networkprofileid = \"{{ network_profile_id }}\",\n                Computeprofileid = \"{{ compute_profile_id }}\",\n                NxClusterId = \"{{ nx_cluster_id }}\",\n            },\n            new Nutanix.Inputs.NdbDatabaseNodeArgs\n            {\n                Properties = new[]\n                {\n                    new Nutanix.Inputs.NdbDatabaseNodePropertyArgs\n                    {\n                        Name = \"role\",\n                        Value = \"Secondary\",\n                    },\n                    new Nutanix.Inputs.NdbDatabaseNodePropertyArgs\n                    {\n                        Name = \"failover_mode\",\n                        Value = \"Automatic\",\n                    },\n                    new Nutanix.Inputs.NdbDatabaseNodePropertyArgs\n                    {\n                        Name = \"node_type\",\n                        Value = \"database\",\n                    },\n                },\n                Vmname = \"{{ name of vm }}\",\n                Networkprofileid = \"{{ network_profile_id }}\",\n                Computeprofileid = \"{{ compute_profile_id }}\",\n                NxClusterId = \"{{ nx_cluster_id }}\",\n            },\n        },\n        Timemachineinfo = new Nutanix.Inputs.NdbDatabaseTimemachineinfoArgs\n        {\n            Name = \"test-pg-inst-HA\",\n            Description = \"\",\n            SlaDetails = new[]\n            {\n                new Nutanix.Inputs.NdbDatabaseTimemachineinfoSlaDetailArgs\n                {\n                    PrimarySlas = new[]\n                    {\n                        new Nutanix.Inputs.NdbDatabaseTimemachineinfoSlaDetailPrimarySlaArgs\n                        {\n                            SlaId = \"{{ required SLA}}0\",\n                            NxClusterIds = new[]\n                            {\n                                \"{{ nx_cluster_id}}\",\n                            },\n                        },\n                    },\n                },\n            },\n            Schedule = new Nutanix.Inputs.NdbDatabaseTimemachineinfoScheduleArgs\n            {\n                Snapshottimeofday = new Nutanix.Inputs.NdbDatabaseTimemachineinfoScheduleSnapshottimeofdayArgs\n                {\n                    Hours = 16,\n                    Minutes = 0,\n                    Seconds = 0,\n                },\n                Continuousschedule = new Nutanix.Inputs.NdbDatabaseTimemachineinfoScheduleContinuousscheduleArgs\n                {\n                    Enabled = true,\n                    Logbackupinterval = 30,\n                    Snapshotsperday = 1,\n                },\n                Weeklyschedule = new Nutanix.Inputs.NdbDatabaseTimemachineinfoScheduleWeeklyscheduleArgs\n                {\n                    Enabled = true,\n                    Dayofweek = \"WEDNESDAY\",\n                },\n                Monthlyschedule = new Nutanix.Inputs.NdbDatabaseTimemachineinfoScheduleMonthlyscheduleArgs\n                {\n                    Enabled = true,\n                    Dayofmonth = 27,\n                },\n                Quartelyschedule = new Nutanix.Inputs.NdbDatabaseTimemachineinfoScheduleQuartelyscheduleArgs\n                {\n                    Enabled = true,\n                    Startmonth = \"JANUARY\",\n                    Dayofmonth = 27,\n                },\n                Yearlyschedule = new Nutanix.Inputs.NdbDatabaseTimemachineinfoScheduleYearlyscheduleArgs\n                {\n                    Enabled = false,\n                    Dayofmonth = 31,\n                    Month = \"DECEMBER\",\n                },\n            },\n        },\n        VmPassword = \"{{ vm_password}}\",\n        Autotunestagingdrive = true,\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pierskarsenbarg/pulumi-nutanix/sdk/go/nutanix\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := nutanix.NewNdbDatabase(ctx, \"dbp\", &nutanix.NdbDatabaseArgs{\n\t\t\tDatabasetype:             pulumi.String(\"postgres_database\"),\n\t\t\tName:                     pulumi.String(\"test-pg-inst-HA-tf\"),\n\t\t\tDescription:              pulumi.String(\"adding description\"),\n\t\t\tSoftwareprofileid:        pulumi.String(\"{{ software_profile_id }}\"),\n\t\t\tSoftwareprofileversionid: pulumi.String(\"{{ software_profile_version_id }}\"),\n\t\t\tComputeprofileid:         pulumi.String(\"{{ compute_profile_id }}\"),\n\t\t\tNetworkprofileid:         pulumi.String(\"{{ network_profile_id }}\"),\n\t\t\tDbparameterprofileid:     pulumi.String(\"{{ db_parameter_profile_id }}\"),\n\t\t\tCreatedbserver:           pulumi.Bool(true),\n\t\t\tClustered:                pulumi.Bool(true),\n\t\t\tNodecount:                pulumi.Int(4),\n\t\t\tPostgresqlInfo: &nutanix.NdbDatabasePostgresqlInfoArgs{\n\t\t\t\tListenerPort:  pulumi.String(\"5432\"),\n\t\t\t\tDatabaseSize:  pulumi.String(\"200\"),\n\t\t\t\tDbPassword:    pulumi.String(\"{{ database password}}\"),\n\t\t\t\tDatabaseNames: pulumi.String(\"testdb1\"),\n\t\t\t\tHaInstance: &nutanix.NdbDatabasePostgresqlInfoHaInstanceArgs{\n\t\t\t\t\tProxyReadPort:      pulumi.String(\"5001\"),\n\t\t\t\t\tProxyWritePort:     pulumi.String(\"5000\"),\n\t\t\t\t\tClusterName:        pulumi.String(\"{{ cluster_name }}\"),\n\t\t\t\t\tPatroniClusterName: pulumi.String(\" {{ patroni_cluster_name }}\"),\n\t\t\t\t},\n\t\t\t},\n\t\t\tNxclusterid:  pulumi.String(\"1c42ca25-32f4-42d9-a2bd-6a21f925b725\"),\n\t\t\tSshpublickey: pulumi.String(\"{{ ssh_public_key }}\"),\n\t\t\tNodes: nutanix.NdbDatabaseNodeArray{\n\t\t\t\t&nutanix.NdbDatabaseNodeArgs{\n\t\t\t\t\tProperties: nutanix.NdbDatabaseNodePropertyArray{\n\t\t\t\t\t\t&nutanix.NdbDatabaseNodePropertyArgs{\n\t\t\t\t\t\t\tName:  pulumi.String(\"node_type\"),\n\t\t\t\t\t\t\tValue: pulumi.String(\"haproxy\"),\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t\tVmname:      pulumi.String(\"{{ vm name }}\"),\n\t\t\t\t\tNxClusterId: pulumi.String(\"{{ nx_cluster_id }}\"),\n\t\t\t\t},\n\t\t\t\t&nutanix.NdbDatabaseNodeArgs{\n\t\t\t\t\tProperties: nutanix.NdbDatabaseNodePropertyArray{\n\t\t\t\t\t\t&nutanix.NdbDatabaseNodePropertyArgs{\n\t\t\t\t\t\t\tName:  pulumi.String(\"role\"),\n\t\t\t\t\t\t\tValue: pulumi.String(\"Primary\"),\n\t\t\t\t\t\t},\n\t\t\t\t\t\t&nutanix.NdbDatabaseNodePropertyArgs{\n\t\t\t\t\t\t\tName:  pulumi.String(\"failover_mode\"),\n\t\t\t\t\t\t\tValue: pulumi.String(\"Automatic\"),\n\t\t\t\t\t\t},\n\t\t\t\t\t\t&nutanix.NdbDatabaseNodePropertyArgs{\n\t\t\t\t\t\t\tName:  pulumi.String(\"node_type\"),\n\t\t\t\t\t\t\tValue: pulumi.String(\"database\"),\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t\tVmname:           pulumi.String(\"{{ name of vm }}\"),\n\t\t\t\t\tNetworkprofileid: pulumi.String(\"{{ network_profile_id }}\"),\n\t\t\t\t\tComputeprofileid: pulumi.String(\"{{ compute_profile_id }}\"),\n\t\t\t\t\tNxClusterId:      pulumi.String(\"{{ nx_cluster_id }}\"),\n\t\t\t\t},\n\t\t\t\t&nutanix.NdbDatabaseNodeArgs{\n\t\t\t\t\tProperties: nutanix.NdbDatabaseNodePropertyArray{\n\t\t\t\t\t\t&nutanix.NdbDatabaseNodePropertyArgs{\n\t\t\t\t\t\t\tName:  pulumi.String(\"role\"),\n\t\t\t\t\t\t\tValue: pulumi.String(\"Secondary\"),\n\t\t\t\t\t\t},\n\t\t\t\t\t\t&nutanix.NdbDatabaseNodePropertyArgs{\n\t\t\t\t\t\t\tName:  pulumi.String(\"failover_mode\"),\n\t\t\t\t\t\t\tValue: pulumi.String(\"Automatic\"),\n\t\t\t\t\t\t},\n\t\t\t\t\t\t&nutanix.NdbDatabaseNodePropertyArgs{\n\t\t\t\t\t\t\tName:  pulumi.String(\"node_type\"),\n\t\t\t\t\t\t\tValue: pulumi.String(\"database\"),\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t\tVmname:           pulumi.String(\"{{ name of vm }}\"),\n\t\t\t\t\tNetworkprofileid: pulumi.String(\"{{ network_profile_id }}\"),\n\t\t\t\t\tComputeprofileid: pulumi.String(\"{{ compute_profile_id }}\"),\n\t\t\t\t\tNxClusterId:      pulumi.String(\"{{ nx_cluster_id }}\"),\n\t\t\t\t},\n\t\t\t\t&nutanix.NdbDatabaseNodeArgs{\n\t\t\t\t\tProperties: nutanix.NdbDatabaseNodePropertyArray{\n\t\t\t\t\t\t&nutanix.NdbDatabaseNodePropertyArgs{\n\t\t\t\t\t\t\tName:  pulumi.String(\"role\"),\n\t\t\t\t\t\t\tValue: pulumi.String(\"Secondary\"),\n\t\t\t\t\t\t},\n\t\t\t\t\t\t&nutanix.NdbDatabaseNodePropertyArgs{\n\t\t\t\t\t\t\tName:  pulumi.String(\"failover_mode\"),\n\t\t\t\t\t\t\tValue: pulumi.String(\"Automatic\"),\n\t\t\t\t\t\t},\n\t\t\t\t\t\t&nutanix.NdbDatabaseNodePropertyArgs{\n\t\t\t\t\t\t\tName:  pulumi.String(\"node_type\"),\n\t\t\t\t\t\t\tValue: pulumi.String(\"database\"),\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t\tVmname:           pulumi.String(\"{{ name of vm }}\"),\n\t\t\t\t\tNetworkprofileid: pulumi.String(\"{{ network_profile_id }}\"),\n\t\t\t\t\tComputeprofileid: pulumi.String(\"{{ compute_profile_id }}\"),\n\t\t\t\t\tNxClusterId:      pulumi.String(\"{{ nx_cluster_id }}\"),\n\t\t\t\t},\n\t\t\t},\n\t\t\tTimemachineinfo: &nutanix.NdbDatabaseTimemachineinfoArgs{\n\t\t\t\tName:        pulumi.String(\"test-pg-inst-HA\"),\n\t\t\t\tDescription: pulumi.String(\"\"),\n\t\t\t\tSlaDetails: nutanix.NdbDatabaseTimemachineinfoSlaDetailArray{\n\t\t\t\t\t&nutanix.NdbDatabaseTimemachineinfoSlaDetailArgs{\n\t\t\t\t\t\tPrimarySlas: nutanix.NdbDatabaseTimemachineinfoSlaDetailPrimarySlaArray{\n\t\t\t\t\t\t\t&nutanix.NdbDatabaseTimemachineinfoSlaDetailPrimarySlaArgs{\n\t\t\t\t\t\t\t\tSlaId: pulumi.String(\"{{ required SLA}}0\"),\n\t\t\t\t\t\t\t\tNxClusterIds: pulumi.StringArray{\n\t\t\t\t\t\t\t\t\tpulumi.String(\"{{ nx_cluster_id}}\"),\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\tSchedule: &nutanix.NdbDatabaseTimemachineinfoScheduleArgs{\n\t\t\t\t\tSnapshottimeofday: &nutanix.NdbDatabaseTimemachineinfoScheduleSnapshottimeofdayArgs{\n\t\t\t\t\t\tHours:   pulumi.Int(16),\n\t\t\t\t\t\tMinutes: pulumi.Int(0),\n\t\t\t\t\t\tSeconds: pulumi.Int(0),\n\t\t\t\t\t},\n\t\t\t\t\tContinuousschedule: &nutanix.NdbDatabaseTimemachineinfoScheduleContinuousscheduleArgs{\n\t\t\t\t\t\tEnabled:           pulumi.Bool(true),\n\t\t\t\t\t\tLogbackupinterval: pulumi.Int(30),\n\t\t\t\t\t\tSnapshotsperday:   pulumi.Int(1),\n\t\t\t\t\t},\n\t\t\t\t\tWeeklyschedule: &nutanix.NdbDatabaseTimemachineinfoScheduleWeeklyscheduleArgs{\n\t\t\t\t\t\tEnabled:   pulumi.Bool(true),\n\t\t\t\t\t\tDayofweek: pulumi.String(\"WEDNESDAY\"),\n\t\t\t\t\t},\n\t\t\t\t\tMonthlyschedule: &nutanix.NdbDatabaseTimemachineinfoScheduleMonthlyscheduleArgs{\n\t\t\t\t\t\tEnabled:    pulumi.Bool(true),\n\t\t\t\t\t\tDayofmonth: pulumi.Int(27),\n\t\t\t\t\t},\n\t\t\t\t\tQuartelyschedule: &nutanix.NdbDatabaseTimemachineinfoScheduleQuartelyscheduleArgs{\n\t\t\t\t\t\tEnabled:    pulumi.Bool(true),\n\t\t\t\t\t\tStartmonth: pulumi.String(\"JANUARY\"),\n\t\t\t\t\t\tDayofmonth: pulumi.Int(27),\n\t\t\t\t\t},\n\t\t\t\t\tYearlyschedule: &nutanix.NdbDatabaseTimemachineinfoScheduleYearlyscheduleArgs{\n\t\t\t\t\t\tEnabled:    pulumi.Bool(false),\n\t\t\t\t\t\tDayofmonth: pulumi.Int(31),\n\t\t\t\t\t\tMonth:      pulumi.String(\"DECEMBER\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t\tVmPassword:           pulumi.String(\"{{ vm_password}}\"),\n\t\t\tAutotunestagingdrive: pulumi.Bool(true),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.nutanix.NdbDatabase;\nimport com.pulumi.nutanix.NdbDatabaseArgs;\nimport com.pulumi.nutanix.inputs.NdbDatabasePostgresqlInfoArgs;\nimport com.pulumi.nutanix.inputs.NdbDatabasePostgresqlInfoHaInstanceArgs;\nimport com.pulumi.nutanix.inputs.NdbDatabaseNodeArgs;\nimport com.pulumi.nutanix.inputs.NdbDatabaseTimemachineinfoArgs;\nimport com.pulumi.nutanix.inputs.NdbDatabaseTimemachineinfoScheduleArgs;\nimport com.pulumi.nutanix.inputs.NdbDatabaseTimemachineinfoScheduleSnapshottimeofdayArgs;\nimport com.pulumi.nutanix.inputs.NdbDatabaseTimemachineinfoScheduleContinuousscheduleArgs;\nimport com.pulumi.nutanix.inputs.NdbDatabaseTimemachineinfoScheduleWeeklyscheduleArgs;\nimport com.pulumi.nutanix.inputs.NdbDatabaseTimemachineinfoScheduleMonthlyscheduleArgs;\nimport com.pulumi.nutanix.inputs.NdbDatabaseTimemachineinfoScheduleQuartelyscheduleArgs;\nimport com.pulumi.nutanix.inputs.NdbDatabaseTimemachineinfoScheduleYearlyscheduleArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var dbp = new NdbDatabase(\"dbp\", NdbDatabaseArgs.builder()\n            .databasetype(\"postgres_database\")\n            .name(\"test-pg-inst-HA-tf\")\n            .description(\"adding description\")\n            .softwareprofileid(\"{{ software_profile_id }}\")\n            .softwareprofileversionid(\"{{ software_profile_version_id }}\")\n            .computeprofileid(\"{{ compute_profile_id }}\")\n            .networkprofileid(\"{{ network_profile_id }}\")\n            .dbparameterprofileid(\"{{ db_parameter_profile_id }}\")\n            .createdbserver(true)\n            .clustered(true)\n            .nodecount(4)\n            .postgresqlInfo(NdbDatabasePostgresqlInfoArgs.builder()\n                .listenerPort(\"5432\")\n                .databaseSize(\"200\")\n                .dbPassword(\"{{ database password}}\")\n                .databaseNames(\"testdb1\")\n                .haInstance(NdbDatabasePostgresqlInfoHaInstanceArgs.builder()\n                    .proxyReadPort(\"5001\")\n                    .proxyWritePort(\"5000\")\n                    .clusterName(\"{{ cluster_name }}\")\n                    .patroniClusterName(\" {{ patroni_cluster_name }}\")\n                    .build())\n                .build())\n            .nxclusterid(\"1c42ca25-32f4-42d9-a2bd-6a21f925b725\")\n            .sshpublickey(\"{{ ssh_public_key }}\")\n            .nodes(            \n                NdbDatabaseNodeArgs.builder()\n                    .properties(NdbDatabaseNodePropertyArgs.builder()\n                        .name(\"node_type\")\n                        .value(\"haproxy\")\n                        .build())\n                    .vmname(\"{{ vm name }}\")\n                    .nxClusterId(\"{{ nx_cluster_id }}\")\n                    .build(),\n                NdbDatabaseNodeArgs.builder()\n                    .properties(                    \n                        NdbDatabaseNodePropertyArgs.builder()\n                            .name(\"role\")\n                            .value(\"Primary\")\n                            .build(),\n                        NdbDatabaseNodePropertyArgs.builder()\n                            .name(\"failover_mode\")\n                            .value(\"Automatic\")\n                            .build(),\n                        NdbDatabaseNodePropertyArgs.builder()\n                            .name(\"node_type\")\n                            .value(\"database\")\n                            .build())\n                    .vmname(\"{{ name of vm }}\")\n                    .networkprofileid(\"{{ network_profile_id }}\")\n                    .computeprofileid(\"{{ compute_profile_id }}\")\n                    .nxClusterId(\"{{ nx_cluster_id }}\")\n                    .build(),\n                NdbDatabaseNodeArgs.builder()\n                    .properties(                    \n                        NdbDatabaseNodePropertyArgs.builder()\n                            .name(\"role\")\n                            .value(\"Secondary\")\n                            .build(),\n                        NdbDatabaseNodePropertyArgs.builder()\n                            .name(\"failover_mode\")\n                            .value(\"Automatic\")\n                            .build(),\n                        NdbDatabaseNodePropertyArgs.builder()\n                            .name(\"node_type\")\n                            .value(\"database\")\n                            .build())\n                    .vmname(\"{{ name of vm }}\")\n                    .networkprofileid(\"{{ network_profile_id }}\")\n                    .computeprofileid(\"{{ compute_profile_id }}\")\n                    .nxClusterId(\"{{ nx_cluster_id }}\")\n                    .build(),\n                NdbDatabaseNodeArgs.builder()\n                    .properties(                    \n                        NdbDatabaseNodePropertyArgs.builder()\n                            .name(\"role\")\n                            .value(\"Secondary\")\n                            .build(),\n                        NdbDatabaseNodePropertyArgs.builder()\n                            .name(\"failover_mode\")\n                            .value(\"Automatic\")\n                            .build(),\n                        NdbDatabaseNodePropertyArgs.builder()\n                            .name(\"node_type\")\n                            .value(\"database\")\n                            .build())\n                    .vmname(\"{{ name of vm }}\")\n                    .networkprofileid(\"{{ network_profile_id }}\")\n                    .computeprofileid(\"{{ compute_profile_id }}\")\n                    .nxClusterId(\"{{ nx_cluster_id }}\")\n                    .build())\n            .timemachineinfo(NdbDatabaseTimemachineinfoArgs.builder()\n                .name(\"test-pg-inst-HA\")\n                .description(\"\")\n                .slaDetails(NdbDatabaseTimemachineinfoSlaDetailArgs.builder()\n                    .primarySlas(NdbDatabaseTimemachineinfoSlaDetailPrimarySlaArgs.builder()\n                        .slaId(\"{{ required SLA}}0\")\n                        .nxClusterIds(\"{{ nx_cluster_id}}\")\n                        .build())\n                    .build())\n                .schedule(NdbDatabaseTimemachineinfoScheduleArgs.builder()\n                    .snapshottimeofday(NdbDatabaseTimemachineinfoScheduleSnapshottimeofdayArgs.builder()\n                        .hours(16)\n                        .minutes(0)\n                        .seconds(0)\n                        .build())\n                    .continuousschedule(NdbDatabaseTimemachineinfoScheduleContinuousscheduleArgs.builder()\n                        .enabled(true)\n                        .logbackupinterval(30)\n                        .snapshotsperday(1)\n                        .build())\n                    .weeklyschedule(NdbDatabaseTimemachineinfoScheduleWeeklyscheduleArgs.builder()\n                        .enabled(true)\n                        .dayofweek(\"WEDNESDAY\")\n                        .build())\n                    .monthlyschedule(NdbDatabaseTimemachineinfoScheduleMonthlyscheduleArgs.builder()\n                        .enabled(true)\n                        .dayofmonth(27)\n                        .build())\n                    .quartelyschedule(NdbDatabaseTimemachineinfoScheduleQuartelyscheduleArgs.builder()\n                        .enabled(true)\n                        .startmonth(\"JANUARY\")\n                        .dayofmonth(27)\n                        .build())\n                    .yearlyschedule(NdbDatabaseTimemachineinfoScheduleYearlyscheduleArgs.builder()\n                        .enabled(false)\n                        .dayofmonth(31)\n                        .month(\"DECEMBER\")\n                        .build())\n                    .build())\n                .build())\n            .vmPassword(\"{{ vm_password}}\")\n            .autotunestagingdrive(true)\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  dbp:\n    type: nutanix:NdbDatabase\n    properties:\n      databasetype: postgres_database\n      name: test-pg-inst-HA-tf\n      description: adding description\n      softwareprofileid: '{{ software_profile_id }}'\n      softwareprofileversionid: '{{ software_profile_version_id }}'\n      computeprofileid: '{{ compute_profile_id }}'\n      networkprofileid: '{{ network_profile_id }}'\n      dbparameterprofileid: '{{ db_parameter_profile_id }}'\n      createdbserver: true\n      clustered: true # node count (with haproxy server node)\n      nodecount: 4 # min required details for provisioning HA instance\n      postgresqlInfo:\n        listenerPort: '5432'\n        databaseSize: '200'\n        dbPassword: '{{ database password}}'\n        databaseNames: testdb1\n        haInstance:\n          proxyReadPort: '5001'\n          proxyWritePort: '5000'\n          clusterName: '{{ cluster_name }}'\n          patroniClusterName: ' {{ patroni_cluster_name }}'\n      nxclusterid: 1c42ca25-32f4-42d9-a2bd-6a21f925b725\n      sshpublickey: '{{ ssh_public_key }}'\n      nodes:\n        - properties:\n            - name: node_type\n              value: haproxy\n          vmname: '{{ vm name }}'\n          nxClusterId: '{{ nx_cluster_id }}'\n        - properties:\n            - name: role\n              value: Primary\n            - name: failover_mode\n              value: Automatic\n            - name: node_type\n              value: database\n          vmname: '{{ name of vm }}'\n          networkprofileid: '{{ network_profile_id }}'\n          computeprofileid: '{{ compute_profile_id }}'\n          nxClusterId: '{{ nx_cluster_id }}'\n        - properties:\n            - name: role\n              value: Secondary\n            - name: failover_mode\n              value: Automatic\n            - name: node_type\n              value: database\n          vmname: '{{ name of vm }}'\n          networkprofileid: '{{ network_profile_id }}'\n          computeprofileid: '{{ compute_profile_id }}'\n          nxClusterId: '{{ nx_cluster_id }}'\n        - properties:\n            - name: role\n              value: Secondary\n            - name: failover_mode\n              value: Automatic\n            - name: node_type\n              value: database\n          vmname: '{{ name of vm }}'\n          networkprofileid: '{{ network_profile_id }}'\n          computeprofileid: '{{ compute_profile_id }}'\n          nxClusterId: '{{ nx_cluster_id }}'\n      timemachineinfo:\n        name: test-pg-inst-HA\n        description: \"\"\n        slaDetails:\n          - primarySlas:\n              - slaId: '{{ required SLA}}0'\n                nxClusterIds:\n                  - '{{ nx_cluster_id}}'\n        schedule:\n          snapshottimeofday:\n            hours: 16\n            minutes: 0\n            seconds: 0\n          continuousschedule:\n            enabled: true\n            logbackupinterval: 30\n            snapshotsperday: 1\n          weeklyschedule:\n            enabled: true\n            dayofweek: WEDNESDAY\n          monthlyschedule:\n            enabled: true\n            dayofmonth: '27'\n          quartelyschedule:\n            enabled: true\n            startmonth: JANUARY\n            dayofmonth: 27\n          yearlyschedule:\n            enabled: false\n            dayofmonth: 31\n            month: DECEMBER\n      vmPassword: '{{ vm_password}}'\n      autotunestagingdrive: true\n```\n<!--End PulumiCodeChooser -->\n\n### NDB database resource with registered database server VM\n\n<!--Start PulumiCodeChooser -->\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as nutanix from \"@pierskarsenbarg/nutanix\";\n\nconst dbp = new nutanix.NdbDatabase(\"dbp\", {\n    databasetype: \"postgres_database\",\n    name: \"test-inst\",\n    description: \"add description\",\n    dbparameterprofileid: \"{{ db_parameter_profile_id }}\",\n    dbserverId: \"{{ dbserver_id }}\",\n    createdbserver: false,\n    postgresqlInfo: {\n        listenerPort: \"{{ listner_port }}\",\n        databaseSize: \"{{ 200 }}\",\n        dbPassword: \"password\",\n        databaseNames: \"testdb1\",\n    },\n    actionarguments: [{\n        name: \"host_ip\",\n        value: \"{{ hostIP }}\",\n    }],\n    nodes: [{\n        dbserverid: \"{{ dbserver_id }}\",\n    }],\n    timemachineinfo: {\n        name: \"test-pg-inst\",\n        description: \"description of time machine\",\n        slaid: \"{{ sla_id }}\",\n        schedule: {\n            snapshottimeofday: {\n                hours: 16,\n                minutes: 0,\n                seconds: 0,\n            },\n            continuousschedule: {\n                enabled: true,\n                logbackupinterval: 30,\n                snapshotsperday: 1,\n            },\n            weeklyschedule: {\n                enabled: true,\n                dayofweek: \"WEDNESDAY\",\n            },\n            monthlyschedule: {\n                enabled: true,\n                dayofmonth: 27,\n            },\n            quartelyschedule: {\n                enabled: true,\n                startmonth: \"JANUARY\",\n                dayofmonth: 27,\n            },\n            yearlyschedule: {\n                enabled: false,\n                dayofmonth: 31,\n                month: \"DECEMBER\",\n            },\n        },\n    },\n});\n```\n```python\nimport pulumi\nimport pulumi_nutanix as nutanix\n\ndbp = nutanix.NdbDatabase(\"dbp\",\n    databasetype=\"postgres_database\",\n    name=\"test-inst\",\n    description=\"add description\",\n    dbparameterprofileid=\"{{ db_parameter_profile_id }}\",\n    dbserver_id=\"{{ dbserver_id }}\",\n    createdbserver=False,\n    postgresql_info={\n        \"listener_port\": \"{{ listner_port }}\",\n        \"database_size\": \"{{ 200 }}\",\n        \"db_password\": \"password\",\n        \"database_names\": \"testdb1\",\n    },\n    actionarguments=[{\n        \"name\": \"host_ip\",\n        \"value\": \"{{ hostIP }}\",\n    }],\n    nodes=[{\n        \"dbserverid\": \"{{ dbserver_id }}\",\n    }],\n    timemachineinfo={\n        \"name\": \"test-pg-inst\",\n        \"description\": \"description of time machine\",\n        \"slaid\": \"{{ sla_id }}\",\n        \"schedule\": {\n            \"snapshottimeofday\": {\n                \"hours\": 16,\n                \"minutes\": 0,\n                \"seconds\": 0,\n            },\n            \"continuousschedule\": {\n                \"enabled\": True,\n                \"logbackupinterval\": 30,\n                \"snapshotsperday\": 1,\n            },\n            \"weeklyschedule\": {\n                \"enabled\": True,\n                \"dayofweek\": \"WEDNESDAY\",\n            },\n            \"monthlyschedule\": {\n                \"enabled\": True,\n                \"dayofmonth\": 27,\n            },\n            \"quartelyschedule\": {\n                \"enabled\": True,\n                \"startmonth\": \"JANUARY\",\n                \"dayofmonth\": 27,\n            },\n            \"yearlyschedule\": {\n                \"enabled\": False,\n                \"dayofmonth\": 31,\n                \"month\": \"DECEMBER\",\n            },\n        },\n    })\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Nutanix = PiersKarsenbarg.Nutanix;\n\nreturn await Deployment.RunAsync(() => \n{\n    var dbp = new Nutanix.NdbDatabase(\"dbp\", new()\n    {\n        Databasetype = \"postgres_database\",\n        Name = \"test-inst\",\n        Description = \"add description\",\n        Dbparameterprofileid = \"{{ db_parameter_profile_id }}\",\n        DbserverId = \"{{ dbserver_id }}\",\n        Createdbserver = false,\n        PostgresqlInfo = new Nutanix.Inputs.NdbDatabasePostgresqlInfoArgs\n        {\n            ListenerPort = \"{{ listner_port }}\",\n            DatabaseSize = \"{{ 200 }}\",\n            DbPassword = \"password\",\n            DatabaseNames = \"testdb1\",\n        },\n        Actionarguments = new[]\n        {\n            new Nutanix.Inputs.NdbDatabaseActionargumentArgs\n            {\n                Name = \"host_ip\",\n                Value = \"{{ hostIP }}\",\n            },\n        },\n        Nodes = new[]\n        {\n            new Nutanix.Inputs.NdbDatabaseNodeArgs\n            {\n                Dbserverid = \"{{ dbserver_id }}\",\n            },\n        },\n        Timemachineinfo = new Nutanix.Inputs.NdbDatabaseTimemachineinfoArgs\n        {\n            Name = \"test-pg-inst\",\n            Description = \"description of time machine\",\n            Slaid = \"{{ sla_id }}\",\n            Schedule = new Nutanix.Inputs.NdbDatabaseTimemachineinfoScheduleArgs\n            {\n                Snapshottimeofday = new Nutanix.Inputs.NdbDatabaseTimemachineinfoScheduleSnapshottimeofdayArgs\n                {\n                    Hours = 16,\n                    Minutes = 0,\n                    Seconds = 0,\n                },\n                Continuousschedule = new Nutanix.Inputs.NdbDatabaseTimemachineinfoScheduleContinuousscheduleArgs\n                {\n                    Enabled = true,\n                    Logbackupinterval = 30,\n                    Snapshotsperday = 1,\n                },\n                Weeklyschedule = new Nutanix.Inputs.NdbDatabaseTimemachineinfoScheduleWeeklyscheduleArgs\n                {\n                    Enabled = true,\n                    Dayofweek = \"WEDNESDAY\",\n                },\n                Monthlyschedule = new Nutanix.Inputs.NdbDatabaseTimemachineinfoScheduleMonthlyscheduleArgs\n                {\n                    Enabled = true,\n                    Dayofmonth = 27,\n                },\n                Quartelyschedule = new Nutanix.Inputs.NdbDatabaseTimemachineinfoScheduleQuartelyscheduleArgs\n                {\n                    Enabled = true,\n                    Startmonth = \"JANUARY\",\n                    Dayofmonth = 27,\n                },\n                Yearlyschedule = new Nutanix.Inputs.NdbDatabaseTimemachineinfoScheduleYearlyscheduleArgs\n                {\n                    Enabled = false,\n                    Dayofmonth = 31,\n                    Month = \"DECEMBER\",\n                },\n            },\n        },\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pierskarsenbarg/pulumi-nutanix/sdk/go/nutanix\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := nutanix.NewNdbDatabase(ctx, \"dbp\", &nutanix.NdbDatabaseArgs{\n\t\t\tDatabasetype:         pulumi.String(\"postgres_database\"),\n\t\t\tName:                 pulumi.String(\"test-inst\"),\n\t\t\tDescription:          pulumi.String(\"add description\"),\n\t\t\tDbparameterprofileid: pulumi.String(\"{{ db_parameter_profile_id }}\"),\n\t\t\tDbserverId:           pulumi.String(\"{{ dbserver_id }}\"),\n\t\t\tCreatedbserver:       pulumi.Bool(false),\n\t\t\tPostgresqlInfo: &nutanix.NdbDatabasePostgresqlInfoArgs{\n\t\t\t\tListenerPort:  pulumi.String(\"{{ listner_port }}\"),\n\t\t\t\tDatabaseSize:  pulumi.String(\"{{ 200 }}\"),\n\t\t\t\tDbPassword:    pulumi.String(\"password\"),\n\t\t\t\tDatabaseNames: pulumi.String(\"testdb1\"),\n\t\t\t},\n\t\t\tActionarguments: nutanix.NdbDatabaseActionargumentArray{\n\t\t\t\t&nutanix.NdbDatabaseActionargumentArgs{\n\t\t\t\t\tName:  pulumi.String(\"host_ip\"),\n\t\t\t\t\tValue: pulumi.String(\"{{ hostIP }}\"),\n\t\t\t\t},\n\t\t\t},\n\t\t\tNodes: nutanix.NdbDatabaseNodeArray{\n\t\t\t\t&nutanix.NdbDatabaseNodeArgs{\n\t\t\t\t\tDbserverid: pulumi.String(\"{{ dbserver_id }}\"),\n\t\t\t\t},\n\t\t\t},\n\t\t\tTimemachineinfo: &nutanix.NdbDatabaseTimemachineinfoArgs{\n\t\t\t\tName:        pulumi.String(\"test-pg-inst\"),\n\t\t\t\tDescription: pulumi.String(\"description of time machine\"),\n\t\t\t\tSlaid:       pulumi.String(\"{{ sla_id }}\"),\n\t\t\t\tSchedule: &nutanix.NdbDatabaseTimemachineinfoScheduleArgs{\n\t\t\t\t\tSnapshottimeofday: &nutanix.NdbDatabaseTimemachineinfoScheduleSnapshottimeofdayArgs{\n\t\t\t\t\t\tHours:   pulumi.Int(16),\n\t\t\t\t\t\tMinutes: pulumi.Int(0),\n\t\t\t\t\t\tSeconds: pulumi.Int(0),\n\t\t\t\t\t},\n\t\t\t\t\tContinuousschedule: &nutanix.NdbDatabaseTimemachineinfoScheduleContinuousscheduleArgs{\n\t\t\t\t\t\tEnabled:           pulumi.Bool(true),\n\t\t\t\t\t\tLogbackupinterval: pulumi.Int(30),\n\t\t\t\t\t\tSnapshotsperday:   pulumi.Int(1),\n\t\t\t\t\t},\n\t\t\t\t\tWeeklyschedule: &nutanix.NdbDatabaseTimemachineinfoScheduleWeeklyscheduleArgs{\n\t\t\t\t\t\tEnabled:   pulumi.Bool(true),\n\t\t\t\t\t\tDayofweek: pulumi.String(\"WEDNESDAY\"),\n\t\t\t\t\t},\n\t\t\t\t\tMonthlyschedule: &nutanix.NdbDatabaseTimemachineinfoScheduleMonthlyscheduleArgs{\n\t\t\t\t\t\tEnabled:    pulumi.Bool(true),\n\t\t\t\t\t\tDayofmonth: pulumi.Int(27),\n\t\t\t\t\t},\n\t\t\t\t\tQuartelyschedule: &nutanix.NdbDatabaseTimemachineinfoScheduleQuartelyscheduleArgs{\n\t\t\t\t\t\tEnabled:    pulumi.Bool(true),\n\t\t\t\t\t\tStartmonth: pulumi.String(\"JANUARY\"),\n\t\t\t\t\t\tDayofmonth: pulumi.Int(27),\n\t\t\t\t\t},\n\t\t\t\t\tYearlyschedule: &nutanix.NdbDatabaseTimemachineinfoScheduleYearlyscheduleArgs{\n\t\t\t\t\t\tEnabled:    pulumi.Bool(false),\n\t\t\t\t\t\tDayofmonth: pulumi.Int(31),\n\t\t\t\t\t\tMonth:      pulumi.String(\"DECEMBER\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.nutanix.NdbDatabase;\nimport com.pulumi.nutanix.NdbDatabaseArgs;\nimport com.pulumi.nutanix.inputs.NdbDatabasePostgresqlInfoArgs;\nimport com.pulumi.nutanix.inputs.NdbDatabaseActionargumentArgs;\nimport com.pulumi.nutanix.inputs.NdbDatabaseNodeArgs;\nimport com.pulumi.nutanix.inputs.NdbDatabaseTimemachineinfoArgs;\nimport com.pulumi.nutanix.inputs.NdbDatabaseTimemachineinfoScheduleArgs;\nimport com.pulumi.nutanix.inputs.NdbDatabaseTimemachineinfoScheduleSnapshottimeofdayArgs;\nimport com.pulumi.nutanix.inputs.NdbDatabaseTimemachineinfoScheduleContinuousscheduleArgs;\nimport com.pulumi.nutanix.inputs.NdbDatabaseTimemachineinfoScheduleWeeklyscheduleArgs;\nimport com.pulumi.nutanix.inputs.NdbDatabaseTimemachineinfoScheduleMonthlyscheduleArgs;\nimport com.pulumi.nutanix.inputs.NdbDatabaseTimemachineinfoScheduleQuartelyscheduleArgs;\nimport com.pulumi.nutanix.inputs.NdbDatabaseTimemachineinfoScheduleYearlyscheduleArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var dbp = new NdbDatabase(\"dbp\", NdbDatabaseArgs.builder()\n            .databasetype(\"postgres_database\")\n            .name(\"test-inst\")\n            .description(\"add description\")\n            .dbparameterprofileid(\"{{ db_parameter_profile_id }}\")\n            .dbserverId(\"{{ dbserver_id }}\")\n            .createdbserver(false)\n            .postgresqlInfo(NdbDatabasePostgresqlInfoArgs.builder()\n                .listenerPort(\"{{ listner_port }}\")\n                .databaseSize(\"{{ 200 }}\")\n                .dbPassword(\"password\")\n                .databaseNames(\"testdb1\")\n                .build())\n            .actionarguments(NdbDatabaseActionargumentArgs.builder()\n                .name(\"host_ip\")\n                .value(\"{{ hostIP }}\")\n                .build())\n            .nodes(NdbDatabaseNodeArgs.builder()\n                .dbserverid(\"{{ dbserver_id }}\")\n                .build())\n            .timemachineinfo(NdbDatabaseTimemachineinfoArgs.builder()\n                .name(\"test-pg-inst\")\n                .description(\"description of time machine\")\n                .slaid(\"{{ sla_id }}\")\n                .schedule(NdbDatabaseTimemachineinfoScheduleArgs.builder()\n                    .snapshottimeofday(NdbDatabaseTimemachineinfoScheduleSnapshottimeofdayArgs.builder()\n                        .hours(16)\n                        .minutes(0)\n                        .seconds(0)\n                        .build())\n                    .continuousschedule(NdbDatabaseTimemachineinfoScheduleContinuousscheduleArgs.builder()\n                        .enabled(true)\n                        .logbackupinterval(30)\n                        .snapshotsperday(1)\n                        .build())\n                    .weeklyschedule(NdbDatabaseTimemachineinfoScheduleWeeklyscheduleArgs.builder()\n                        .enabled(true)\n                        .dayofweek(\"WEDNESDAY\")\n                        .build())\n                    .monthlyschedule(NdbDatabaseTimemachineinfoScheduleMonthlyscheduleArgs.builder()\n                        .enabled(true)\n                        .dayofmonth(27)\n                        .build())\n                    .quartelyschedule(NdbDatabaseTimemachineinfoScheduleQuartelyscheduleArgs.builder()\n                        .enabled(true)\n                        .startmonth(\"JANUARY\")\n                        .dayofmonth(27)\n                        .build())\n                    .yearlyschedule(NdbDatabaseTimemachineinfoScheduleYearlyscheduleArgs.builder()\n                        .enabled(false)\n                        .dayofmonth(31)\n                        .month(\"DECEMBER\")\n                        .build())\n                    .build())\n                .build())\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  dbp:\n    type: nutanix:NdbDatabase\n    properties:\n      databasetype: postgres_database\n      name: test-inst\n      description: add description\n      dbparameterprofileid: '{{ db_parameter_profile_id }}'\n      dbserverId: '{{ dbserver_id }}'\n      createdbserver: false # postgreSQL Info\n      postgresqlInfo:\n        listenerPort: '{{ listner_port }}'\n        databaseSize: '{{ 200 }}'\n        dbPassword: password\n        databaseNames: testdb1\n      actionarguments:\n        - name: host_ip\n          value: '{{ hostIP }}'\n      nodes:\n        - dbserverid: '{{ dbserver_id }}'\n      timemachineinfo:\n        name: test-pg-inst\n        description: description of time machine\n        slaid: '{{ sla_id }}'\n        schedule:\n          snapshottimeofday:\n            hours: 16\n            minutes: 0\n            seconds: 0\n          continuousschedule:\n            enabled: true\n            logbackupinterval: 30\n            snapshotsperday: 1\n          weeklyschedule:\n            enabled: true\n            dayofweek: WEDNESDAY\n          monthlyschedule:\n            enabled: true\n            dayofmonth: '27'\n          quartelyschedule:\n            enabled: true\n            startmonth: JANUARY\n            dayofmonth: 27\n          yearlyschedule:\n            enabled: false\n            dayofmonth: 31\n            month: DECEMBER\n```\n<!--End PulumiCodeChooser -->\n\n## lifecycle\n\n* `Update` : - Currently only update of instance's name and description is supported using this resource\n\nSee detailed information in [NDB Database Instance](https://www.nutanix.dev/api_references/ndb/#/9d9eee4304496-provision-a-database).\n",
      "properties": {
        "actionarguments": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FNdbDatabaseActionargument:NdbDatabaseActionargument"
          },
          "description": "- (Optional) action arguments for database. For postgress, you can use postgresql_info\n"
        },
        "autotunestagingdrive": {
          "type": "boolean",
          "description": "- (Optional) Enable auto tuning of staging drive. Default: true\n"
        },
        "clone": {
          "type": "boolean"
        },
        "clusterInfos": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FNdbDatabaseClusterInfo:NdbDatabaseClusterInfo"
          }
        },
        "clustered": {
          "type": "boolean",
          "description": "- (Optional) If clustered database. Default: false\n"
        },
        "computeprofileid": {
          "type": "string",
          "description": "- (Optional) ID of compute profile\n"
        },
        "createdbserver": {
          "type": "boolean",
          "description": "- (Optional) Set this to create new DB server VM. Default: true\n"
        },
        "databaseClusterType": {
          "type": "string"
        },
        "databaseInstanceId": {
          "type": "string"
        },
        "databaseName": {
          "type": "string"
        },
        "databaseNodes": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FNdbDatabaseDatabaseNode:NdbDatabaseDatabaseNode"
          }
        },
        "databasetype": {
          "type": "string",
          "description": "- (Required) Type of database. Valid values: postgres_database\n"
        },
        "dateCreated": {
          "type": "string"
        },
        "dateModified": {
          "type": "string"
        },
        "dbparameterprofileid": {
          "type": "string",
          "description": "- (Optional) DB parameters profile ID\n"
        },
        "dbserverLogicalCluster": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          }
        },
        "dbserverLogicalClusterId": {
          "type": "string"
        },
        "dbserverid": {
          "type": "string",
          "description": "- (Optional) DB server VM ID for creating instance on registered DB server VM\n"
        },
        "delete": {
          "type": "boolean",
          "description": "- (Optional) Delete the database from the VM. Default value is true\n"
        },
        "deleteLogicalCluster": {
          "type": "boolean",
          "description": "- (Optional) Delete the logical cluster. Default is true\n"
        },
        "deleteTimeMachine": {
          "type": "boolean",
          "description": "- (Optional) Delete the database's Time Machine (snapshots/logs) from the NDB. Default value is true\n"
        },
        "description": {
          "type": "string",
          "description": "- (Optional) The description\n"
        },
        "forced": {
          "type": "boolean",
          "description": "- (Optional) Force delete of instance. Default is false\n"
        },
        "infos": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FNdbDatabaseInfo:NdbDatabaseInfo"
          }
        },
        "lcmConfigs": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FNdbDatabaseLcmConfig:NdbDatabaseLcmConfig"
          }
        },
        "linkedDatabases": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FNdbDatabaseLinkedDatabase:NdbDatabaseLinkedDatabase"
          }
        },
        "maintenanceTasks": {
          "$ref": "#/types/nutanix:index%2FNdbDatabaseMaintenanceTasks:NdbDatabaseMaintenanceTasks"
        },
        "metric": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          }
        },
        "name": {
          "type": "string",
          "description": "- (Required) Name of the instance.\n"
        },
        "networkprofileid": {
          "type": "string",
          "description": "- (Optional) ID of network profile\n"
        },
        "newdbservertimezone": {
          "type": "string",
          "description": "- (Optional) Timezone of new DB server VM\n"
        },
        "nodecount": {
          "type": "integer",
          "description": "- (Optional) No. of nodes/db server vms. Default: 1\n"
        },
        "nodes": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FNdbDatabaseNode:NdbDatabaseNode"
          },
          "description": "- (Optional) nodes info\n"
        },
        "nxclusterid": {
          "type": "string",
          "description": "- (Optional) Cluster ID for DB server VM\n"
        },
        "parentDatabaseId": {
          "type": "string"
        },
        "postgresqlInfo": {
          "$ref": "#/types/nutanix:index%2FNdbDatabasePostgresqlInfo:NdbDatabasePostgresqlInfo",
          "description": "- (Optional) action arguments for postgress type database.\n"
        },
        "properties": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FNdbDatabaseProperty:NdbDatabaseProperty"
          },
          "description": "List of all the properties"
        },
        "remove": {
          "type": "boolean",
          "description": "- (Optional) Unregister the database from NDB. Default value is true\n"
        },
        "softRemove": {
          "type": "boolean",
          "description": "- (Optional) Soft remove. Default will be false\n"
        },
        "softwareprofileid": {
          "type": "string",
          "description": "- (Optional) ID of software profile\n"
        },
        "softwareprofileversionid": {
          "type": "string",
          "description": "- (Optional) ID of version in software profile\n"
        },
        "sshpublickey": {
          "type": "string",
          "description": "- (Optional) public key for ssh access to DB server VM\n",
          "secret": true
        },
        "status": {
          "type": "string"
        },
        "tags": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FNdbDatabaseTag:NdbDatabaseTag"
          }
        },
        "timeMachineId": {
          "type": "string"
        },
        "timeMachines": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FNdbDatabaseTimeMachine:NdbDatabaseTimeMachine"
          }
        },
        "timeZone": {
          "type": "string"
        },
        "timemachineinfo": {
          "$ref": "#/types/nutanix:index%2FNdbDatabaseTimemachineinfo:NdbDatabaseTimemachineinfo",
          "description": "- (Optional) time machine config\n"
        },
        "type": {
          "type": "string"
        },
        "vmPassword": {
          "type": "string",
          "description": "- (Optional) password for DB server VM and era drive user\n",
          "secret": true
        }
      },
      "type": "object",
      "required": [
        "clone",
        "databaseClusterType",
        "databaseInstanceId",
        "databaseName",
        "databaseNodes",
        "dateCreated",
        "dateModified",
        "dbserverLogicalCluster",
        "dbserverLogicalClusterId",
        "infos",
        "lcmConfigs",
        "linkedDatabases",
        "metric",
        "name",
        "nodes",
        "parentDatabaseId",
        "properties",
        "status",
        "tags",
        "timeMachineId",
        "timeMachines",
        "timeZone",
        "type"
      ],
      "inputProperties": {
        "actionarguments": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FNdbDatabaseActionargument:NdbDatabaseActionargument"
          },
          "description": "- (Optional) action arguments for database. For postgress, you can use postgresql_info\n"
        },
        "autotunestagingdrive": {
          "type": "boolean",
          "description": "- (Optional) Enable auto tuning of staging drive. Default: true\n"
        },
        "clusterInfos": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FNdbDatabaseClusterInfo:NdbDatabaseClusterInfo"
          }
        },
        "clustered": {
          "type": "boolean",
          "description": "- (Optional) If clustered database. Default: false\n"
        },
        "computeprofileid": {
          "type": "string",
          "description": "- (Optional) ID of compute profile\n",
          "willReplaceOnChanges": true
        },
        "createdbserver": {
          "type": "boolean",
          "description": "- (Optional) Set this to create new DB server VM. Default: true\n"
        },
        "databaseInstanceId": {
          "type": "string"
        },
        "databasetype": {
          "type": "string",
          "description": "- (Required) Type of database. Valid values: postgres_database\n",
          "willReplaceOnChanges": true
        },
        "dbparameterprofileid": {
          "type": "string",
          "description": "- (Optional) DB parameters profile ID\n",
          "willReplaceOnChanges": true
        },
        "dbserverid": {
          "type": "string",
          "description": "- (Optional) DB server VM ID for creating instance on registered DB server VM\n",
          "willReplaceOnChanges": true
        },
        "delete": {
          "type": "boolean",
          "description": "- (Optional) Delete the database from the VM. Default value is true\n"
        },
        "deleteLogicalCluster": {
          "type": "boolean",
          "description": "- (Optional) Delete the logical cluster. Default is true\n"
        },
        "deleteTimeMachine": {
          "type": "boolean",
          "description": "- (Optional) Delete the database's Time Machine (snapshots/logs) from the NDB. Default value is true\n"
        },
        "description": {
          "type": "string",
          "description": "- (Optional) The description\n"
        },
        "forced": {
          "type": "boolean",
          "description": "- (Optional) Force delete of instance. Default is false\n"
        },
        "maintenanceTasks": {
          "$ref": "#/types/nutanix:index%2FNdbDatabaseMaintenanceTasks:NdbDatabaseMaintenanceTasks"
        },
        "name": {
          "type": "string",
          "description": "- (Required) Name of the instance.\n"
        },
        "networkprofileid": {
          "type": "string",
          "description": "- (Optional) ID of network profile\n",
          "willReplaceOnChanges": true
        },
        "newdbservertimezone": {
          "type": "string",
          "description": "- (Optional) Timezone of new DB server VM\n",
          "willReplaceOnChanges": true
        },
        "nodecount": {
          "type": "integer",
          "description": "- (Optional) No. of nodes/db server vms. Default: 1\n"
        },
        "nodes": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FNdbDatabaseNode:NdbDatabaseNode"
          },
          "description": "- (Optional) nodes info\n",
          "willReplaceOnChanges": true
        },
        "nxclusterid": {
          "type": "string",
          "description": "- (Optional) Cluster ID for DB server VM\n",
          "willReplaceOnChanges": true
        },
        "postgresqlInfo": {
          "$ref": "#/types/nutanix:index%2FNdbDatabasePostgresqlInfo:NdbDatabasePostgresqlInfo",
          "description": "- (Optional) action arguments for postgress type database.\n"
        },
        "remove": {
          "type": "boolean",
          "description": "- (Optional) Unregister the database from NDB. Default value is true\n"
        },
        "softRemove": {
          "type": "boolean",
          "description": "- (Optional) Soft remove. Default will be false\n"
        },
        "softwareprofileid": {
          "type": "string",
          "description": "- (Optional) ID of software profile\n",
          "willReplaceOnChanges": true
        },
        "softwareprofileversionid": {
          "type": "string",
          "description": "- (Optional) ID of version in software profile\n",
          "willReplaceOnChanges": true
        },
        "sshpublickey": {
          "type": "string",
          "description": "- (Optional) public key for ssh access to DB server VM\n",
          "secret": true,
          "willReplaceOnChanges": true
        },
        "tags": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FNdbDatabaseTag:NdbDatabaseTag"
          }
        },
        "timemachineinfo": {
          "$ref": "#/types/nutanix:index%2FNdbDatabaseTimemachineinfo:NdbDatabaseTimemachineinfo",
          "description": "- (Optional) time machine config\n",
          "willReplaceOnChanges": true
        },
        "vmPassword": {
          "type": "string",
          "description": "- (Optional) password for DB server VM and era drive user\n",
          "secret": true
        }
      },
      "stateInputs": {
        "description": "Input properties used for looking up and filtering NdbDatabase resources.\n",
        "properties": {
          "actionarguments": {
            "type": "array",
            "items": {
              "$ref": "#/types/nutanix:index%2FNdbDatabaseActionargument:NdbDatabaseActionargument"
            },
            "description": "- (Optional) action arguments for database. For postgress, you can use postgresql_info\n"
          },
          "autotunestagingdrive": {
            "type": "boolean",
            "description": "- (Optional) Enable auto tuning of staging drive. Default: true\n"
          },
          "clone": {
            "type": "boolean"
          },
          "clusterInfos": {
            "type": "array",
            "items": {
              "$ref": "#/types/nutanix:index%2FNdbDatabaseClusterInfo:NdbDatabaseClusterInfo"
            }
          },
          "clustered": {
            "type": "boolean",
            "description": "- (Optional) If clustered database. Default: false\n"
          },
          "computeprofileid": {
            "type": "string",
            "description": "- (Optional) ID of compute profile\n",
            "willReplaceOnChanges": true
          },
          "createdbserver": {
            "type": "boolean",
            "description": "- (Optional) Set this to create new DB server VM. Default: true\n"
          },
          "databaseClusterType": {
            "type": "string"
          },
          "databaseInstanceId": {
            "type": "string"
          },
          "databaseName": {
            "type": "string"
          },
          "databaseNodes": {
            "type": "array",
            "items": {
              "$ref": "#/types/nutanix:index%2FNdbDatabaseDatabaseNode:NdbDatabaseDatabaseNode"
            }
          },
          "databasetype": {
            "type": "string",
            "description": "- (Required) Type of database. Valid values: postgres_database\n",
            "willReplaceOnChanges": true
          },
          "dateCreated": {
            "type": "string"
          },
          "dateModified": {
            "type": "string"
          },
          "dbparameterprofileid": {
            "type": "string",
            "description": "- (Optional) DB parameters profile ID\n",
            "willReplaceOnChanges": true
          },
          "dbserverLogicalCluster": {
            "type": "object",
            "additionalProperties": {
              "type": "string"
            }
          },
          "dbserverLogicalClusterId": {
            "type": "string"
          },
          "dbserverid": {
            "type": "string",
            "description": "- (Optional) DB server VM ID for creating instance on registered DB server VM\n",
            "willReplaceOnChanges": true
          },
          "delete": {
            "type": "boolean",
            "description": "- (Optional) Delete the database from the VM. Default value is true\n"
          },
          "deleteLogicalCluster": {
            "type": "boolean",
            "description": "- (Optional) Delete the logical cluster. Default is true\n"
          },
          "deleteTimeMachine": {
            "type": "boolean",
            "description": "- (Optional) Delete the database's Time Machine (snapshots/logs) from the NDB. Default value is true\n"
          },
          "description": {
            "type": "string",
            "description": "- (Optional) The description\n"
          },
          "forced": {
            "type": "boolean",
            "description": "- (Optional) Force delete of instance. Default is false\n"
          },
          "infos": {
            "type": "array",
            "items": {
              "$ref": "#/types/nutanix:index%2FNdbDatabaseInfo:NdbDatabaseInfo"
            }
          },
          "lcmConfigs": {
            "type": "array",
            "items": {
              "$ref": "#/types/nutanix:index%2FNdbDatabaseLcmConfig:NdbDatabaseLcmConfig"
            }
          },
          "linkedDatabases": {
            "type": "array",
            "items": {
              "$ref": "#/types/nutanix:index%2FNdbDatabaseLinkedDatabase:NdbDatabaseLinkedDatabase"
            }
          },
          "maintenanceTasks": {
            "$ref": "#/types/nutanix:index%2FNdbDatabaseMaintenanceTasks:NdbDatabaseMaintenanceTasks"
          },
          "metric": {
            "type": "object",
            "additionalProperties": {
              "type": "string"
            }
          },
          "name": {
            "type": "string",
            "description": "- (Required) Name of the instance.\n"
          },
          "networkprofileid": {
            "type": "string",
            "description": "- (Optional) ID of network profile\n",
            "willReplaceOnChanges": true
          },
          "newdbservertimezone": {
            "type": "string",
            "description": "- (Optional) Timezone of new DB server VM\n",
            "willReplaceOnChanges": true
          },
          "nodecount": {
            "type": "integer",
            "description": "- (Optional) No. of nodes/db server vms. Default: 1\n"
          },
          "nodes": {
            "type": "array",
            "items": {
              "$ref": "#/types/nutanix:index%2FNdbDatabaseNode:NdbDatabaseNode"
            },
            "description": "- (Optional) nodes info\n",
            "willReplaceOnChanges": true
          },
          "nxclusterid": {
            "type": "string",
            "description": "- (Optional) Cluster ID for DB server VM\n",
            "willReplaceOnChanges": true
          },
          "parentDatabaseId": {
            "type": "string"
          },
          "postgresqlInfo": {
            "$ref": "#/types/nutanix:index%2FNdbDatabasePostgresqlInfo:NdbDatabasePostgresqlInfo",
            "description": "- (Optional) action arguments for postgress type database.\n"
          },
          "properties": {
            "type": "array",
            "items": {
              "$ref": "#/types/nutanix:index%2FNdbDatabaseProperty:NdbDatabaseProperty"
            },
            "description": "List of all the properties"
          },
          "remove": {
            "type": "boolean",
            "description": "- (Optional) Unregister the database from NDB. Default value is true\n"
          },
          "softRemove": {
            "type": "boolean",
            "description": "- (Optional) Soft remove. Default will be false\n"
          },
          "softwareprofileid": {
            "type": "string",
            "description": "- (Optional) ID of software profile\n",
            "willReplaceOnChanges": true
          },
          "softwareprofileversionid": {
            "type": "string",
            "description": "- (Optional) ID of version in software profile\n",
            "willReplaceOnChanges": true
          },
          "sshpublickey": {
            "type": "string",
            "description": "- (Optional) public key for ssh access to DB server VM\n",
            "secret": true,
            "willReplaceOnChanges": true
          },
          "status": {
            "type": "string"
          },
          "tags": {
            "type": "array",
            "items": {
              "$ref": "#/types/nutanix:index%2FNdbDatabaseTag:NdbDatabaseTag"
            }
          },
          "timeMachineId": {
            "type": "string"
          },
          "timeMachines": {
            "type": "array",
            "items": {
              "$ref": "#/types/nutanix:index%2FNdbDatabaseTimeMachine:NdbDatabaseTimeMachine"
            }
          },
          "timeZone": {
            "type": "string"
          },
          "timemachineinfo": {
            "$ref": "#/types/nutanix:index%2FNdbDatabaseTimemachineinfo:NdbDatabaseTimemachineinfo",
            "description": "- (Optional) time machine config\n",
            "willReplaceOnChanges": true
          },
          "type": {
            "type": "string"
          },
          "vmPassword": {
            "type": "string",
            "description": "- (Optional) password for DB server VM and era drive user\n",
            "secret": true
          }
        },
        "type": "object"
      }
    },
    "nutanix:index/ndbDatabaseRestore:NdbDatabaseRestore": {
      "description": "Provides a resource to restore the database instance based on the input parameters. \n\n",
      "properties": {
        "clone": {
          "type": "boolean",
          "description": "whether instance is cloned or not\n"
        },
        "databaseClusterType": {
          "type": "string",
          "description": "database cluster type\n"
        },
        "databaseId": {
          "type": "string",
          "description": "database id\n"
        },
        "databaseInstanceId": {
          "type": "string"
        },
        "databaseName": {
          "type": "string",
          "description": "name of database\n"
        },
        "databaseNodes": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FNdbDatabaseRestoreDatabaseNode:NdbDatabaseRestoreDatabaseNode"
          },
          "description": "database nodes associated with database instance\n"
        },
        "dateCreated": {
          "type": "string",
          "description": "date created for db instance\n"
        },
        "dateModified": {
          "type": "string",
          "description": "date modified for instance\n"
        },
        "dbserverLogicalCluster": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          },
          "description": "dbserver logical cluster\n"
        },
        "dbserverLogicalClusterId": {
          "type": "string",
          "description": "dbserver logical cluster id\n"
        },
        "description": {
          "type": "string",
          "description": "description of database instance\n"
        },
        "infos": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FNdbDatabaseRestoreInfo:NdbDatabaseRestoreInfo"
          },
          "description": "info of instance\n"
        },
        "latestSnapshot": {
          "type": "string",
          "description": "latest snapshot id\n"
        },
        "lcmConfigs": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FNdbDatabaseRestoreLcmConfig:NdbDatabaseRestoreLcmConfig"
          },
          "description": "LCM config of instance\n"
        },
        "linkedDatabases": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FNdbDatabaseRestoreLinkedDatabase:NdbDatabaseRestoreLinkedDatabase"
          },
          "description": "linked databases within database instance\n"
        },
        "metric": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          },
          "description": "Stores storage info regarding size, allocatedSize, usedSize and unit of calculation that seems to have been fetched from PRISM.\n"
        },
        "name": {
          "type": "string",
          "description": "Name of database instance\n"
        },
        "parentDatabaseId": {
          "type": "string",
          "description": "parent database id\n"
        },
        "properties": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FNdbDatabaseRestoreProperty:NdbDatabaseRestoreProperty"
          },
          "description": "properties of database created\n"
        },
        "restoreVersion": {
          "type": "integer",
          "description": "helps to restore the database with same config.\n"
        },
        "snapshotId": {
          "type": "string",
          "description": "snapshot id from you want to use for restoring the instance\n"
        },
        "status": {
          "type": "string",
          "description": "status of instance\n"
        },
        "tags": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FNdbDatabaseRestoreTag:NdbDatabaseRestoreTag"
          },
          "description": "allows you to assign metadata to entities (clones, time machines, databases, and database servers) by using tags.\n"
        },
        "timeMachineId": {
          "type": "string",
          "description": "time machine id of instance\n"
        },
        "timeMachines": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FNdbDatabaseRestoreTimeMachine:NdbDatabaseRestoreTimeMachine"
          },
          "description": "Time Machine details of instance\n"
        },
        "timeZone": {
          "type": "string",
          "description": "timezone on which instance is created xw\n"
        },
        "timeZonePitr": {
          "type": "string",
          "description": "timezone . Should be used with  <span pulumi-lang-nodejs=\"`userPitrTimestamp`\" pulumi-lang-dotnet=\"`UserPitrTimestamp`\" pulumi-lang-go=\"`userPitrTimestamp`\" pulumi-lang-python=\"`user_pitr_timestamp`\" pulumi-lang-yaml=\"`userPitrTimestamp`\" pulumi-lang-java=\"`userPitrTimestamp`\">`user_pitr_timestamp`</span>\n"
        },
        "type": {
          "type": "string",
          "description": "type of database\n"
        },
        "userPitrTimestamp": {
          "type": "string",
          "description": "the time to which you want to restore your instance.\n"
        }
      },
      "type": "object",
      "required": [
        "clone",
        "databaseClusterType",
        "databaseId",
        "databaseInstanceId",
        "databaseName",
        "databaseNodes",
        "dateCreated",
        "dateModified",
        "dbserverLogicalCluster",
        "dbserverLogicalClusterId",
        "description",
        "infos",
        "lcmConfigs",
        "linkedDatabases",
        "metric",
        "name",
        "parentDatabaseId",
        "properties",
        "status",
        "tags",
        "timeMachineId",
        "timeMachines",
        "timeZone",
        "type"
      ],
      "inputProperties": {
        "databaseId": {
          "type": "string",
          "description": "database id\n",
          "willReplaceOnChanges": true
        },
        "latestSnapshot": {
          "type": "string",
          "description": "latest snapshot id\n"
        },
        "restoreVersion": {
          "type": "integer",
          "description": "helps to restore the database with same config.\n"
        },
        "snapshotId": {
          "type": "string",
          "description": "snapshot id from you want to use for restoring the instance\n"
        },
        "tags": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FNdbDatabaseRestoreTag:NdbDatabaseRestoreTag"
          },
          "description": "allows you to assign metadata to entities (clones, time machines, databases, and database servers) by using tags.\n"
        },
        "timeZonePitr": {
          "type": "string",
          "description": "timezone . Should be used with  <span pulumi-lang-nodejs=\"`userPitrTimestamp`\" pulumi-lang-dotnet=\"`UserPitrTimestamp`\" pulumi-lang-go=\"`userPitrTimestamp`\" pulumi-lang-python=\"`user_pitr_timestamp`\" pulumi-lang-yaml=\"`userPitrTimestamp`\" pulumi-lang-java=\"`userPitrTimestamp`\">`user_pitr_timestamp`</span>\n"
        },
        "userPitrTimestamp": {
          "type": "string",
          "description": "the time to which you want to restore your instance.\n"
        }
      },
      "requiredInputs": [
        "databaseId"
      ],
      "stateInputs": {
        "description": "Input properties used for looking up and filtering NdbDatabaseRestore resources.\n",
        "properties": {
          "clone": {
            "type": "boolean",
            "description": "whether instance is cloned or not\n"
          },
          "databaseClusterType": {
            "type": "string",
            "description": "database cluster type\n"
          },
          "databaseId": {
            "type": "string",
            "description": "database id\n",
            "willReplaceOnChanges": true
          },
          "databaseInstanceId": {
            "type": "string"
          },
          "databaseName": {
            "type": "string",
            "description": "name of database\n"
          },
          "databaseNodes": {
            "type": "array",
            "items": {
              "$ref": "#/types/nutanix:index%2FNdbDatabaseRestoreDatabaseNode:NdbDatabaseRestoreDatabaseNode"
            },
            "description": "database nodes associated with database instance\n"
          },
          "dateCreated": {
            "type": "string",
            "description": "date created for db instance\n"
          },
          "dateModified": {
            "type": "string",
            "description": "date modified for instance\n"
          },
          "dbserverLogicalCluster": {
            "type": "object",
            "additionalProperties": {
              "type": "string"
            },
            "description": "dbserver logical cluster\n"
          },
          "dbserverLogicalClusterId": {
            "type": "string",
            "description": "dbserver logical cluster id\n"
          },
          "description": {
            "type": "string",
            "description": "description of database instance\n"
          },
          "infos": {
            "type": "array",
            "items": {
              "$ref": "#/types/nutanix:index%2FNdbDatabaseRestoreInfo:NdbDatabaseRestoreInfo"
            },
            "description": "info of instance\n"
          },
          "latestSnapshot": {
            "type": "string",
            "description": "latest snapshot id\n"
          },
          "lcmConfigs": {
            "type": "array",
            "items": {
              "$ref": "#/types/nutanix:index%2FNdbDatabaseRestoreLcmConfig:NdbDatabaseRestoreLcmConfig"
            },
            "description": "LCM config of instance\n"
          },
          "linkedDatabases": {
            "type": "array",
            "items": {
              "$ref": "#/types/nutanix:index%2FNdbDatabaseRestoreLinkedDatabase:NdbDatabaseRestoreLinkedDatabase"
            },
            "description": "linked databases within database instance\n"
          },
          "metric": {
            "type": "object",
            "additionalProperties": {
              "type": "string"
            },
            "description": "Stores storage info regarding size, allocatedSize, usedSize and unit of calculation that seems to have been fetched from PRISM.\n"
          },
          "name": {
            "type": "string",
            "description": "Name of database instance\n"
          },
          "parentDatabaseId": {
            "type": "string",
            "description": "parent database id\n"
          },
          "properties": {
            "type": "array",
            "items": {
              "$ref": "#/types/nutanix:index%2FNdbDatabaseRestoreProperty:NdbDatabaseRestoreProperty"
            },
            "description": "properties of database created\n"
          },
          "restoreVersion": {
            "type": "integer",
            "description": "helps to restore the database with same config.\n"
          },
          "snapshotId": {
            "type": "string",
            "description": "snapshot id from you want to use for restoring the instance\n"
          },
          "status": {
            "type": "string",
            "description": "status of instance\n"
          },
          "tags": {
            "type": "array",
            "items": {
              "$ref": "#/types/nutanix:index%2FNdbDatabaseRestoreTag:NdbDatabaseRestoreTag"
            },
            "description": "allows you to assign metadata to entities (clones, time machines, databases, and database servers) by using tags.\n"
          },
          "timeMachineId": {
            "type": "string",
            "description": "time machine id of instance\n"
          },
          "timeMachines": {
            "type": "array",
            "items": {
              "$ref": "#/types/nutanix:index%2FNdbDatabaseRestoreTimeMachine:NdbDatabaseRestoreTimeMachine"
            },
            "description": "Time Machine details of instance\n"
          },
          "timeZone": {
            "type": "string",
            "description": "timezone on which instance is created xw\n"
          },
          "timeZonePitr": {
            "type": "string",
            "description": "timezone . Should be used with  <span pulumi-lang-nodejs=\"`userPitrTimestamp`\" pulumi-lang-dotnet=\"`UserPitrTimestamp`\" pulumi-lang-go=\"`userPitrTimestamp`\" pulumi-lang-python=\"`user_pitr_timestamp`\" pulumi-lang-yaml=\"`userPitrTimestamp`\" pulumi-lang-java=\"`userPitrTimestamp`\">`user_pitr_timestamp`</span>\n"
          },
          "type": {
            "type": "string",
            "description": "type of database\n"
          },
          "userPitrTimestamp": {
            "type": "string",
            "description": "the time to which you want to restore your instance.\n"
          }
        },
        "type": "object"
      }
    },
    "nutanix:index/ndbDatabaseScale:NdbDatabaseScale": {
      "description": "Provides a resource to scale the database instance based on the input parameters. \n\n## Example Usage\n\n<!--Start PulumiCodeChooser -->\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as nutanix from \"@pierskarsenbarg/nutanix\";\n\n// resource to scale the database\nconst scale = new nutanix.NdbDatabaseScale(\"scale\", {\n    applicationType: \"{{ Application Type }}\",\n    databaseUuid: \"{{ database_id }}\",\n    dataStorageSize: 1,\n});\n```\n```python\nimport pulumi\nimport pulumi_nutanix as nutanix\n\n# resource to scale the database\nscale = nutanix.NdbDatabaseScale(\"scale\",\n    application_type=\"{{ Application Type }}\",\n    database_uuid=\"{{ database_id }}\",\n    data_storage_size=1)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Nutanix = PiersKarsenbarg.Nutanix;\n\nreturn await Deployment.RunAsync(() => \n{\n    // resource to scale the database\n    var scale = new Nutanix.NdbDatabaseScale(\"scale\", new()\n    {\n        ApplicationType = \"{{ Application Type }}\",\n        DatabaseUuid = \"{{ database_id }}\",\n        DataStorageSize = 1,\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pierskarsenbarg/pulumi-nutanix/sdk/go/nutanix\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t// resource to scale the database\n\t\t_, err := nutanix.NewNdbDatabaseScale(ctx, \"scale\", &nutanix.NdbDatabaseScaleArgs{\n\t\t\tApplicationType: pulumi.String(\"{{ Application Type }}\"),\n\t\t\tDatabaseUuid:    pulumi.String(\"{{ database_id }}\"),\n\t\t\tDataStorageSize: pulumi.Int(1),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.nutanix.NdbDatabaseScale;\nimport com.pulumi.nutanix.NdbDatabaseScaleArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        // resource to scale the database\n        var scale = new NdbDatabaseScale(\"scale\", NdbDatabaseScaleArgs.builder()\n            .applicationType(\"{{ Application Type }}\")\n            .databaseUuid(\"{{ database_id }}\")\n            .dataStorageSize(1)\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  # resource to scale the database\n  scale:\n    type: nutanix:NdbDatabaseScale\n    properties:\n      applicationType: '{{ Application Type }}'\n      databaseUuid: '{{ database_id }}'\n      dataStorageSize: 1\n```\n<!--End PulumiCodeChooser -->\n",
      "properties": {
        "applicationType": {
          "type": "string",
          "description": "type of instance. eg: postgres_database\n"
        },
        "clone": {
          "type": "boolean",
          "description": "whether instance is cloned or not\n"
        },
        "dataStorageSize": {
          "type": "integer",
          "description": "data area (in GiB) to be added to the existing database.\n"
        },
        "databaseClusterType": {
          "type": "string",
          "description": "database cluster type\n"
        },
        "databaseInstanceId": {
          "type": "string"
        },
        "databaseName": {
          "type": "string",
          "description": "name of database\n"
        },
        "databaseNodes": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FNdbDatabaseScaleDatabaseNode:NdbDatabaseScaleDatabaseNode"
          },
          "description": "database nodes associated with database instance\n"
        },
        "databaseUuid": {
          "type": "string",
          "description": "Database id\n"
        },
        "databasetype": {
          "type": "string",
          "description": "type of database\n"
        },
        "dateCreated": {
          "type": "string",
          "description": "date created for db instance\n"
        },
        "dateModified": {
          "type": "string",
          "description": "date modified for instance\n"
        },
        "dbserverLogicalCluster": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          },
          "description": "dbserver logical cluster\n"
        },
        "dbserverLogicalClusterId": {
          "type": "string",
          "description": "dbserver logical cluster id\n"
        },
        "description": {
          "type": "string",
          "description": "description of database instance\n"
        },
        "infos": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FNdbDatabaseScaleInfo:NdbDatabaseScaleInfo"
          },
          "description": "info of instance\n"
        },
        "lcmConfigs": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FNdbDatabaseScaleLcmConfig:NdbDatabaseScaleLcmConfig"
          },
          "description": "LCM config of instance\n"
        },
        "linkedDatabases": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FNdbDatabaseScaleLinkedDatabase:NdbDatabaseScaleLinkedDatabase"
          },
          "description": "linked databases within database instance\n"
        },
        "metric": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          },
          "description": "Stores storage info regarding size, allocatedSize, usedSize and unit of calculation that seems to have been fetched from PRISM.\n"
        },
        "name": {
          "type": "string",
          "description": "Name of database instance\n"
        },
        "parentDatabaseId": {
          "type": "string",
          "description": "parent database id\n"
        },
        "parentSourceDatabaseId": {
          "type": "string"
        },
        "postScriptCmd": {
          "type": "string",
          "description": "post script command\n"
        },
        "preScriptCmd": {
          "type": "string",
          "description": "pre script command\n"
        },
        "properties": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FNdbDatabaseScaleProperty:NdbDatabaseScaleProperty"
          },
          "description": "properties of database created\n"
        },
        "scaleCount": {
          "type": "integer",
          "description": "scale count helps to scale the same instance with same config\n"
        },
        "status": {
          "type": "string",
          "description": "status of instance\n"
        },
        "tags": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FNdbDatabaseScaleTag:NdbDatabaseScaleTag"
          },
          "description": "allows you to assign metadata to entities (clones, time machines, databases, and database servers) by using tags.\n"
        },
        "timeMachineId": {
          "type": "string",
          "description": "time machine id of instance\n"
        },
        "timeMachines": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FNdbDatabaseScaleTimeMachine:NdbDatabaseScaleTimeMachine"
          },
          "description": "Time Machine details of instance\n"
        },
        "timeZone": {
          "type": "string",
          "description": "timezone on which instance is created xw\n"
        },
        "type": {
          "type": "string",
          "description": "type of database\n"
        }
      },
      "type": "object",
      "required": [
        "applicationType",
        "clone",
        "dataStorageSize",
        "databaseClusterType",
        "databaseInstanceId",
        "databaseName",
        "databaseNodes",
        "databaseUuid",
        "databasetype",
        "dateCreated",
        "dateModified",
        "dbserverLogicalCluster",
        "dbserverLogicalClusterId",
        "description",
        "infos",
        "lcmConfigs",
        "linkedDatabases",
        "metric",
        "name",
        "parentDatabaseId",
        "parentSourceDatabaseId",
        "properties",
        "status",
        "tags",
        "timeMachineId",
        "timeMachines",
        "timeZone",
        "type"
      ],
      "inputProperties": {
        "applicationType": {
          "type": "string",
          "description": "type of instance. eg: postgres_database\n"
        },
        "dataStorageSize": {
          "type": "integer",
          "description": "data area (in GiB) to be added to the existing database.\n"
        },
        "databaseUuid": {
          "type": "string",
          "description": "Database id\n"
        },
        "postScriptCmd": {
          "type": "string",
          "description": "post script command\n"
        },
        "preScriptCmd": {
          "type": "string",
          "description": "pre script command\n"
        },
        "scaleCount": {
          "type": "integer",
          "description": "scale count helps to scale the same instance with same config\n"
        },
        "tags": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FNdbDatabaseScaleTag:NdbDatabaseScaleTag"
          },
          "description": "allows you to assign metadata to entities (clones, time machines, databases, and database servers) by using tags.\n"
        }
      },
      "requiredInputs": [
        "applicationType",
        "dataStorageSize",
        "databaseUuid"
      ],
      "stateInputs": {
        "description": "Input properties used for looking up and filtering NdbDatabaseScale resources.\n",
        "properties": {
          "applicationType": {
            "type": "string",
            "description": "type of instance. eg: postgres_database\n"
          },
          "clone": {
            "type": "boolean",
            "description": "whether instance is cloned or not\n"
          },
          "dataStorageSize": {
            "type": "integer",
            "description": "data area (in GiB) to be added to the existing database.\n"
          },
          "databaseClusterType": {
            "type": "string",
            "description": "database cluster type\n"
          },
          "databaseInstanceId": {
            "type": "string"
          },
          "databaseName": {
            "type": "string",
            "description": "name of database\n"
          },
          "databaseNodes": {
            "type": "array",
            "items": {
              "$ref": "#/types/nutanix:index%2FNdbDatabaseScaleDatabaseNode:NdbDatabaseScaleDatabaseNode"
            },
            "description": "database nodes associated with database instance\n"
          },
          "databaseUuid": {
            "type": "string",
            "description": "Database id\n"
          },
          "databasetype": {
            "type": "string",
            "description": "type of database\n"
          },
          "dateCreated": {
            "type": "string",
            "description": "date created for db instance\n"
          },
          "dateModified": {
            "type": "string",
            "description": "date modified for instance\n"
          },
          "dbserverLogicalCluster": {
            "type": "object",
            "additionalProperties": {
              "type": "string"
            },
            "description": "dbserver logical cluster\n"
          },
          "dbserverLogicalClusterId": {
            "type": "string",
            "description": "dbserver logical cluster id\n"
          },
          "description": {
            "type": "string",
            "description": "description of database instance\n"
          },
          "infos": {
            "type": "array",
            "items": {
              "$ref": "#/types/nutanix:index%2FNdbDatabaseScaleInfo:NdbDatabaseScaleInfo"
            },
            "description": "info of instance\n"
          },
          "lcmConfigs": {
            "type": "array",
            "items": {
              "$ref": "#/types/nutanix:index%2FNdbDatabaseScaleLcmConfig:NdbDatabaseScaleLcmConfig"
            },
            "description": "LCM config of instance\n"
          },
          "linkedDatabases": {
            "type": "array",
            "items": {
              "$ref": "#/types/nutanix:index%2FNdbDatabaseScaleLinkedDatabase:NdbDatabaseScaleLinkedDatabase"
            },
            "description": "linked databases within database instance\n"
          },
          "metric": {
            "type": "object",
            "additionalProperties": {
              "type": "string"
            },
            "description": "Stores storage info regarding size, allocatedSize, usedSize and unit of calculation that seems to have been fetched from PRISM.\n"
          },
          "name": {
            "type": "string",
            "description": "Name of database instance\n"
          },
          "parentDatabaseId": {
            "type": "string",
            "description": "parent database id\n"
          },
          "parentSourceDatabaseId": {
            "type": "string"
          },
          "postScriptCmd": {
            "type": "string",
            "description": "post script command\n"
          },
          "preScriptCmd": {
            "type": "string",
            "description": "pre script command\n"
          },
          "properties": {
            "type": "array",
            "items": {
              "$ref": "#/types/nutanix:index%2FNdbDatabaseScaleProperty:NdbDatabaseScaleProperty"
            },
            "description": "properties of database created\n"
          },
          "scaleCount": {
            "type": "integer",
            "description": "scale count helps to scale the same instance with same config\n"
          },
          "status": {
            "type": "string",
            "description": "status of instance\n"
          },
          "tags": {
            "type": "array",
            "items": {
              "$ref": "#/types/nutanix:index%2FNdbDatabaseScaleTag:NdbDatabaseScaleTag"
            },
            "description": "allows you to assign metadata to entities (clones, time machines, databases, and database servers) by using tags.\n"
          },
          "timeMachineId": {
            "type": "string",
            "description": "time machine id of instance\n"
          },
          "timeMachines": {
            "type": "array",
            "items": {
              "$ref": "#/types/nutanix:index%2FNdbDatabaseScaleTimeMachine:NdbDatabaseScaleTimeMachine"
            },
            "description": "Time Machine details of instance\n"
          },
          "timeZone": {
            "type": "string",
            "description": "timezone on which instance is created xw\n"
          },
          "type": {
            "type": "string",
            "description": "type of database\n"
          }
        },
        "type": "object"
      }
    },
    "nutanix:index/ndbDatabaseSnapshot:NdbDatabaseSnapshot": {
      "description": "Provides a resource to perform the snapshot for database instance based on the input parameters. \n\n",
      "properties": {
        "appInfoVersion": {
          "type": "string",
          "description": "App info version\n"
        },
        "applicableTypes": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "Applicable types\n"
        },
        "databaseNodeId": {
          "type": "string",
          "description": "database node id\n"
        },
        "databaseSnapshot": {
          "type": "boolean",
          "description": "database snapshot\n"
        },
        "dateCreated": {
          "type": "string",
          "description": "created date\n"
        },
        "dateModified": {
          "type": "string",
          "description": "modified date\n"
        },
        "dbserverId": {
          "type": "string",
          "description": "dbserver id\n"
        },
        "dbserverIp": {
          "type": "string",
          "description": "dbserver ip\n"
        },
        "dbserverName": {
          "type": "string",
          "description": "dbserver name\n"
        },
        "dbserverStorageMetadataVersion": {
          "type": "integer",
          "description": "dbserver storage metadata version\n"
        },
        "description": {
          "type": "string",
          "description": "description of snapshot\n"
        },
        "expiryDateTimezone": {
          "type": "string",
          "description": "Default is set to Asia/Calcutta\n"
        },
        "fromTimestamp": {
          "type": "string",
          "description": "from timestamp\n"
        },
        "lcmConfigs": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FNdbDatabaseSnapshotLcmConfig:NdbDatabaseSnapshotLcmConfig"
          },
          "description": "LCM config\n"
        },
        "name": {
          "type": "string",
          "description": "Snapshot name. Default value is era_manual_snapshot.\n"
        },
        "nxClusterId": {
          "type": "string",
          "description": "nx cluster id\n"
        },
        "parentSnapshot": {
          "type": "boolean",
          "description": "parent snapshot\n"
        },
        "parentSnapshotId": {
          "type": "string",
          "description": "parent snapshot id\n"
        },
        "processed": {
          "type": "boolean",
          "description": "processed\n"
        },
        "properties": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FNdbDatabaseSnapshotProperty:NdbDatabaseSnapshotProperty"
          },
          "description": "properties\n"
        },
        "protectionDomainId": {
          "type": "string",
          "description": "protection domain\n"
        },
        "removeScheduleInDays": {
          "type": "integer",
          "description": "Removal schedule after which the snapshot should be removed.\n"
        },
        "replicateToClusters": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "snapshots to be replicated to clusters.\n"
        },
        "replicatedSnapshots": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "replicated snapshots\n"
        },
        "santized": {
          "type": "boolean"
        },
        "santizedFromSnapshotId": {
          "type": "string"
        },
        "santizedSnapshots": {
          "type": "string"
        },
        "snapshotFamily": {
          "type": "string",
          "description": "snapshot family\n"
        },
        "snapshotSize": {
          "type": "number",
          "description": "snapshot size\n"
        },
        "snapshotTimestamp": {
          "type": "string",
          "description": "snapshot timeStamp\n"
        },
        "snapshotTimestampDate": {
          "type": "integer",
          "description": "snapshot timestamp date\n"
        },
        "snapshotUuid": {
          "type": "string",
          "description": "snapshot uuid\n"
        },
        "softwareDatabaseSnapshot": {
          "type": "boolean",
          "description": "software database snapshot\n"
        },
        "softwareSnapshot": {
          "type": "string",
          "description": "software snapshot\n"
        },
        "softwareSnapshotId": {
          "type": "string",
          "description": "software snapshot id\n"
        },
        "status": {
          "type": "string",
          "description": "status\n"
        },
        "tags": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FNdbDatabaseSnapshotTag:NdbDatabaseSnapshotTag"
          },
          "description": "tags\n"
        },
        "timeMachineId": {
          "type": "string",
          "description": "Time Machine Id\n"
        },
        "timeMachineName": {
          "type": "string",
          "description": "Time Machine Name\n"
        },
        "timezone": {
          "type": "string",
          "description": "timezone\n"
        },
        "toTimestamp": {
          "type": "string",
          "description": "to timestamp\n"
        },
        "type": {
          "type": "string",
          "description": "type\n"
        }
      },
      "type": "object",
      "required": [
        "appInfoVersion",
        "applicableTypes",
        "databaseNodeId",
        "databaseSnapshot",
        "dateCreated",
        "dateModified",
        "dbserverId",
        "dbserverIp",
        "dbserverName",
        "dbserverStorageMetadataVersion",
        "description",
        "fromTimestamp",
        "lcmConfigs",
        "name",
        "nxClusterId",
        "parentSnapshot",
        "parentSnapshotId",
        "processed",
        "properties",
        "protectionDomainId",
        "replicatedSnapshots",
        "santized",
        "santizedFromSnapshotId",
        "santizedSnapshots",
        "snapshotFamily",
        "snapshotSize",
        "snapshotTimestamp",
        "snapshotTimestampDate",
        "snapshotUuid",
        "softwareDatabaseSnapshot",
        "softwareSnapshot",
        "softwareSnapshotId",
        "status",
        "tags",
        "timezone",
        "toTimestamp",
        "type"
      ],
      "inputProperties": {
        "expiryDateTimezone": {
          "type": "string",
          "description": "Default is set to Asia/Calcutta\n"
        },
        "name": {
          "type": "string",
          "description": "Snapshot name. Default value is era_manual_snapshot.\n"
        },
        "removeScheduleInDays": {
          "type": "integer",
          "description": "Removal schedule after which the snapshot should be removed.\n"
        },
        "replicateToClusters": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "snapshots to be replicated to clusters.\n"
        },
        "tags": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FNdbDatabaseSnapshotTag:NdbDatabaseSnapshotTag"
          },
          "description": "tags\n"
        },
        "timeMachineId": {
          "type": "string",
          "description": "Time Machine Id\n"
        },
        "timeMachineName": {
          "type": "string",
          "description": "Time Machine Name\n"
        }
      },
      "stateInputs": {
        "description": "Input properties used for looking up and filtering NdbDatabaseSnapshot resources.\n",
        "properties": {
          "appInfoVersion": {
            "type": "string",
            "description": "App info version\n"
          },
          "applicableTypes": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "description": "Applicable types\n"
          },
          "databaseNodeId": {
            "type": "string",
            "description": "database node id\n"
          },
          "databaseSnapshot": {
            "type": "boolean",
            "description": "database snapshot\n"
          },
          "dateCreated": {
            "type": "string",
            "description": "created date\n"
          },
          "dateModified": {
            "type": "string",
            "description": "modified date\n"
          },
          "dbserverId": {
            "type": "string",
            "description": "dbserver id\n"
          },
          "dbserverIp": {
            "type": "string",
            "description": "dbserver ip\n"
          },
          "dbserverName": {
            "type": "string",
            "description": "dbserver name\n"
          },
          "dbserverStorageMetadataVersion": {
            "type": "integer",
            "description": "dbserver storage metadata version\n"
          },
          "description": {
            "type": "string",
            "description": "description of snapshot\n"
          },
          "expiryDateTimezone": {
            "type": "string",
            "description": "Default is set to Asia/Calcutta\n"
          },
          "fromTimestamp": {
            "type": "string",
            "description": "from timestamp\n"
          },
          "lcmConfigs": {
            "type": "array",
            "items": {
              "$ref": "#/types/nutanix:index%2FNdbDatabaseSnapshotLcmConfig:NdbDatabaseSnapshotLcmConfig"
            },
            "description": "LCM config\n"
          },
          "name": {
            "type": "string",
            "description": "Snapshot name. Default value is era_manual_snapshot.\n"
          },
          "nxClusterId": {
            "type": "string",
            "description": "nx cluster id\n"
          },
          "parentSnapshot": {
            "type": "boolean",
            "description": "parent snapshot\n"
          },
          "parentSnapshotId": {
            "type": "string",
            "description": "parent snapshot id\n"
          },
          "processed": {
            "type": "boolean",
            "description": "processed\n"
          },
          "properties": {
            "type": "array",
            "items": {
              "$ref": "#/types/nutanix:index%2FNdbDatabaseSnapshotProperty:NdbDatabaseSnapshotProperty"
            },
            "description": "properties\n"
          },
          "protectionDomainId": {
            "type": "string",
            "description": "protection domain\n"
          },
          "removeScheduleInDays": {
            "type": "integer",
            "description": "Removal schedule after which the snapshot should be removed.\n"
          },
          "replicateToClusters": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "description": "snapshots to be replicated to clusters.\n"
          },
          "replicatedSnapshots": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "description": "replicated snapshots\n"
          },
          "santized": {
            "type": "boolean"
          },
          "santizedFromSnapshotId": {
            "type": "string"
          },
          "santizedSnapshots": {
            "type": "string"
          },
          "snapshotFamily": {
            "type": "string",
            "description": "snapshot family\n"
          },
          "snapshotSize": {
            "type": "number",
            "description": "snapshot size\n"
          },
          "snapshotTimestamp": {
            "type": "string",
            "description": "snapshot timeStamp\n"
          },
          "snapshotTimestampDate": {
            "type": "integer",
            "description": "snapshot timestamp date\n"
          },
          "snapshotUuid": {
            "type": "string",
            "description": "snapshot uuid\n"
          },
          "softwareDatabaseSnapshot": {
            "type": "boolean",
            "description": "software database snapshot\n"
          },
          "softwareSnapshot": {
            "type": "string",
            "description": "software snapshot\n"
          },
          "softwareSnapshotId": {
            "type": "string",
            "description": "software snapshot id\n"
          },
          "status": {
            "type": "string",
            "description": "status\n"
          },
          "tags": {
            "type": "array",
            "items": {
              "$ref": "#/types/nutanix:index%2FNdbDatabaseSnapshotTag:NdbDatabaseSnapshotTag"
            },
            "description": "tags\n"
          },
          "timeMachineId": {
            "type": "string",
            "description": "Time Machine Id\n"
          },
          "timeMachineName": {
            "type": "string",
            "description": "Time Machine Name\n"
          },
          "timezone": {
            "type": "string",
            "description": "timezone\n"
          },
          "toTimestamp": {
            "type": "string",
            "description": "to timestamp\n"
          },
          "type": {
            "type": "string",
            "description": "type\n"
          }
        },
        "type": "object"
      }
    },
    "nutanix:index/ndbDbserverVm:NdbDbserverVm": {
      "description": "Provides a resource to create database server VMs based on the input parameters. For 1.8.0 release, only postgress database type is qualified and officially supported.\n\n## Example Usage\n\n",
      "properties": {
        "clientId": {
          "type": "string"
        },
        "computeProfileId": {
          "type": "string",
          "description": "Compute profile id.\n"
        },
        "credentials": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FNdbDbserverVmCredential:NdbDbserverVmCredential"
          }
        },
        "databaseType": {
          "type": "string",
          "description": "database type. Valid values: postgres_database\n"
        },
        "dbserverClusterId": {
          "type": "string"
        },
        "delete": {
          "type": "boolean",
          "description": "- (Optional) Delete the VM and associated storage. Default value is true\n"
        },
        "deleteVgs": {
          "type": "boolean",
          "description": "- (Optional) Delete volume grous. Default value is true\n"
        },
        "deleteVmSnapshots": {
          "type": "boolean",
          "description": "- (Optional) Delete the vm snapshots. Default is true\n"
        },
        "description": {
          "type": "string",
          "description": "Type a description for the database server VM.\n"
        },
        "eraDriveId": {
          "type": "string"
        },
        "eraVersion": {
          "type": "string"
        },
        "fqdns": {
          "type": "string"
        },
        "ipAddresses": {
          "type": "array",
          "items": {
            "type": "string"
          }
        },
        "latestSnapshot": {
          "type": "boolean"
        },
        "macAddresses": {
          "type": "array",
          "items": {
            "type": "string"
          }
        },
        "maintenanceTasks": {
          "$ref": "#/types/nutanix:index%2FNdbDbserverVmMaintenanceTasks:NdbDbserverVmMaintenanceTasks",
          "description": "maintenance window configured to enable automated patching.\n"
        },
        "name": {
          "type": "string"
        },
        "networkProfileId": {
          "type": "string",
          "description": "Network profile id.\n"
        },
        "nxClusterId": {
          "type": "string"
        },
        "postgresDatabases": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FNdbDbserverVmPostgresDatabase:NdbDbserverVmPostgresDatabase"
          },
          "description": "Postgres database server vm\n"
        },
        "properties": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FNdbDbserverVmProperty:NdbDbserverVmProperty"
          },
          "description": "List of all the properties"
        },
        "remove": {
          "type": "boolean",
          "description": "- (Optional) Unregister the database from NDB. Default value is false\n"
        },
        "snapshotId": {
          "type": "string",
          "description": "Snapshot id. If not given, it will use latest snapshot to provision db server vm.\n"
        },
        "softRemove": {
          "type": "boolean",
          "description": "- (Optional) Soft remove. Default will be false\n"
        },
        "softwareProfileId": {
          "type": "string",
          "description": "software profile id you want to provision a database server VM from an existing software profile.Required with software_profile_version_id. Conflicts with<span pulumi-lang-nodejs=\" timeMachineId \" pulumi-lang-dotnet=\" TimeMachineId \" pulumi-lang-go=\" timeMachineId \" pulumi-lang-python=\" time_machine_id \" pulumi-lang-yaml=\" timeMachineId \" pulumi-lang-java=\" timeMachineId \"> time_machine_id </span>.\n"
        },
        "softwareProfileVersionId": {
          "type": "string",
          "description": "SOftware Profile Version Id.\n"
        },
        "status": {
          "type": "string"
        },
        "tags": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FNdbDbserverVmTag:NdbDbserverVmTag"
          }
        },
        "timeMachineId": {
          "type": "string",
          "description": "Time Machine id you want to provision a database server VM by using the database and operating system software stored in a time machine. Conflicts with software_profile_id.\n"
        },
        "timezone": {
          "type": "string"
        },
        "type": {
          "type": "string"
        },
        "vmClusterName": {
          "type": "string"
        },
        "vmClusterUuid": {
          "type": "string"
        },
        "vmPassword": {
          "type": "string",
          "description": "password of the NDB drive user account.\n",
          "secret": true
        },
        "vmTimezone": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "clientId",
        "computeProfileId",
        "databaseType",
        "dbserverClusterId",
        "description",
        "eraDriveId",
        "eraVersion",
        "fqdns",
        "ipAddresses",
        "macAddresses",
        "name",
        "networkProfileId",
        "nxClusterId",
        "properties",
        "status",
        "tags",
        "type",
        "vmClusterName",
        "vmClusterUuid",
        "vmTimezone"
      ],
      "inputProperties": {
        "computeProfileId": {
          "type": "string",
          "description": "Compute profile id.\n"
        },
        "credentials": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FNdbDbserverVmCredential:NdbDbserverVmCredential"
          }
        },
        "databaseType": {
          "type": "string",
          "description": "database type. Valid values: postgres_database\n"
        },
        "delete": {
          "type": "boolean",
          "description": "- (Optional) Delete the VM and associated storage. Default value is true\n"
        },
        "deleteVgs": {
          "type": "boolean",
          "description": "- (Optional) Delete volume grous. Default value is true\n"
        },
        "deleteVmSnapshots": {
          "type": "boolean",
          "description": "- (Optional) Delete the vm snapshots. Default is true\n"
        },
        "description": {
          "type": "string",
          "description": "Type a description for the database server VM.\n"
        },
        "latestSnapshot": {
          "type": "boolean"
        },
        "maintenanceTasks": {
          "$ref": "#/types/nutanix:index%2FNdbDbserverVmMaintenanceTasks:NdbDbserverVmMaintenanceTasks",
          "description": "maintenance window configured to enable automated patching.\n"
        },
        "networkProfileId": {
          "type": "string",
          "description": "Network profile id.\n"
        },
        "nxClusterId": {
          "type": "string"
        },
        "postgresDatabases": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FNdbDbserverVmPostgresDatabase:NdbDbserverVmPostgresDatabase"
          },
          "description": "Postgres database server vm\n"
        },
        "remove": {
          "type": "boolean",
          "description": "- (Optional) Unregister the database from NDB. Default value is false\n"
        },
        "snapshotId": {
          "type": "string",
          "description": "Snapshot id. If not given, it will use latest snapshot to provision db server vm.\n"
        },
        "softRemove": {
          "type": "boolean",
          "description": "- (Optional) Soft remove. Default will be false\n"
        },
        "softwareProfileId": {
          "type": "string",
          "description": "software profile id you want to provision a database server VM from an existing software profile.Required with software_profile_version_id. Conflicts with<span pulumi-lang-nodejs=\" timeMachineId \" pulumi-lang-dotnet=\" TimeMachineId \" pulumi-lang-go=\" timeMachineId \" pulumi-lang-python=\" time_machine_id \" pulumi-lang-yaml=\" timeMachineId \" pulumi-lang-java=\" timeMachineId \"> time_machine_id </span>.\n"
        },
        "softwareProfileVersionId": {
          "type": "string",
          "description": "SOftware Profile Version Id.\n"
        },
        "tags": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FNdbDbserverVmTag:NdbDbserverVmTag"
          }
        },
        "timeMachineId": {
          "type": "string",
          "description": "Time Machine id you want to provision a database server VM by using the database and operating system software stored in a time machine. Conflicts with software_profile_id.\n"
        },
        "timezone": {
          "type": "string"
        },
        "vmPassword": {
          "type": "string",
          "description": "password of the NDB drive user account.\n",
          "secret": true
        }
      },
      "requiredInputs": [
        "computeProfileId",
        "databaseType",
        "networkProfileId",
        "nxClusterId"
      ],
      "stateInputs": {
        "description": "Input properties used for looking up and filtering NdbDbserverVm resources.\n",
        "properties": {
          "clientId": {
            "type": "string"
          },
          "computeProfileId": {
            "type": "string",
            "description": "Compute profile id.\n"
          },
          "credentials": {
            "type": "array",
            "items": {
              "$ref": "#/types/nutanix:index%2FNdbDbserverVmCredential:NdbDbserverVmCredential"
            }
          },
          "databaseType": {
            "type": "string",
            "description": "database type. Valid values: postgres_database\n"
          },
          "dbserverClusterId": {
            "type": "string"
          },
          "delete": {
            "type": "boolean",
            "description": "- (Optional) Delete the VM and associated storage. Default value is true\n"
          },
          "deleteVgs": {
            "type": "boolean",
            "description": "- (Optional) Delete volume grous. Default value is true\n"
          },
          "deleteVmSnapshots": {
            "type": "boolean",
            "description": "- (Optional) Delete the vm snapshots. Default is true\n"
          },
          "description": {
            "type": "string",
            "description": "Type a description for the database server VM.\n"
          },
          "eraDriveId": {
            "type": "string"
          },
          "eraVersion": {
            "type": "string"
          },
          "fqdns": {
            "type": "string"
          },
          "ipAddresses": {
            "type": "array",
            "items": {
              "type": "string"
            }
          },
          "latestSnapshot": {
            "type": "boolean"
          },
          "macAddresses": {
            "type": "array",
            "items": {
              "type": "string"
            }
          },
          "maintenanceTasks": {
            "$ref": "#/types/nutanix:index%2FNdbDbserverVmMaintenanceTasks:NdbDbserverVmMaintenanceTasks",
            "description": "maintenance window configured to enable automated patching.\n"
          },
          "name": {
            "type": "string"
          },
          "networkProfileId": {
            "type": "string",
            "description": "Network profile id.\n"
          },
          "nxClusterId": {
            "type": "string"
          },
          "postgresDatabases": {
            "type": "array",
            "items": {
              "$ref": "#/types/nutanix:index%2FNdbDbserverVmPostgresDatabase:NdbDbserverVmPostgresDatabase"
            },
            "description": "Postgres database server vm\n"
          },
          "properties": {
            "type": "array",
            "items": {
              "$ref": "#/types/nutanix:index%2FNdbDbserverVmProperty:NdbDbserverVmProperty"
            },
            "description": "List of all the properties"
          },
          "remove": {
            "type": "boolean",
            "description": "- (Optional) Unregister the database from NDB. Default value is false\n"
          },
          "snapshotId": {
            "type": "string",
            "description": "Snapshot id. If not given, it will use latest snapshot to provision db server vm.\n"
          },
          "softRemove": {
            "type": "boolean",
            "description": "- (Optional) Soft remove. Default will be false\n"
          },
          "softwareProfileId": {
            "type": "string",
            "description": "software profile id you want to provision a database server VM from an existing software profile.Required with software_profile_version_id. Conflicts with<span pulumi-lang-nodejs=\" timeMachineId \" pulumi-lang-dotnet=\" TimeMachineId \" pulumi-lang-go=\" timeMachineId \" pulumi-lang-python=\" time_machine_id \" pulumi-lang-yaml=\" timeMachineId \" pulumi-lang-java=\" timeMachineId \"> time_machine_id </span>.\n"
          },
          "softwareProfileVersionId": {
            "type": "string",
            "description": "SOftware Profile Version Id.\n"
          },
          "status": {
            "type": "string"
          },
          "tags": {
            "type": "array",
            "items": {
              "$ref": "#/types/nutanix:index%2FNdbDbserverVmTag:NdbDbserverVmTag"
            }
          },
          "timeMachineId": {
            "type": "string",
            "description": "Time Machine id you want to provision a database server VM by using the database and operating system software stored in a time machine. Conflicts with software_profile_id.\n"
          },
          "timezone": {
            "type": "string"
          },
          "type": {
            "type": "string"
          },
          "vmClusterName": {
            "type": "string"
          },
          "vmClusterUuid": {
            "type": "string"
          },
          "vmPassword": {
            "type": "string",
            "description": "password of the NDB drive user account.\n",
            "secret": true
          },
          "vmTimezone": {
            "type": "string"
          }
        },
        "type": "object"
      }
    },
    "nutanix:index/ndbLinkedDatabases:NdbLinkedDatabases": {
      "properties": {
        "databaseId": {
          "type": "string"
        },
        "databaseName": {
          "type": "string"
        },
        "databaseStatus": {
          "type": "string"
        },
        "dateCreated": {
          "type": "string"
        },
        "dateModified": {
          "type": "string"
        },
        "description": {
          "type": "string"
        },
        "infos": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FNdbLinkedDatabasesInfo:NdbLinkedDatabasesInfo"
          }
        },
        "metric": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          }
        },
        "name": {
          "type": "string"
        },
        "parentDatabaseId": {
          "type": "string"
        },
        "parentLinkedDatabaseId": {
          "type": "string"
        },
        "snapshotId": {
          "type": "string"
        },
        "status": {
          "type": "string"
        },
        "timezone": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "databaseId",
        "databaseStatus",
        "dateCreated",
        "dateModified",
        "description",
        "infos",
        "metric",
        "name",
        "parentDatabaseId",
        "parentLinkedDatabaseId",
        "snapshotId",
        "status",
        "timezone"
      ],
      "inputProperties": {
        "databaseId": {
          "type": "string"
        },
        "databaseName": {
          "type": "string"
        }
      },
      "requiredInputs": [
        "databaseId"
      ],
      "stateInputs": {
        "description": "Input properties used for looking up and filtering NdbLinkedDatabases resources.\n",
        "properties": {
          "databaseId": {
            "type": "string"
          },
          "databaseName": {
            "type": "string"
          },
          "databaseStatus": {
            "type": "string"
          },
          "dateCreated": {
            "type": "string"
          },
          "dateModified": {
            "type": "string"
          },
          "description": {
            "type": "string"
          },
          "infos": {
            "type": "array",
            "items": {
              "$ref": "#/types/nutanix:index%2FNdbLinkedDatabasesInfo:NdbLinkedDatabasesInfo"
            }
          },
          "metric": {
            "type": "object",
            "additionalProperties": {
              "type": "string"
            }
          },
          "name": {
            "type": "string"
          },
          "parentDatabaseId": {
            "type": "string"
          },
          "parentLinkedDatabaseId": {
            "type": "string"
          },
          "snapshotId": {
            "type": "string"
          },
          "status": {
            "type": "string"
          },
          "timezone": {
            "type": "string"
          }
        },
        "type": "object"
      }
    },
    "nutanix:index/ndbLogCatchups:NdbLogCatchups": {
      "description": "Provides a resource to perform the log cactup for database instance based on the input parameters. \n\n",
      "properties": {
        "databaseId": {
          "type": "string"
        },
        "forRestore": {
          "type": "boolean",
          "description": "Logs to Backup. The database may contain additional logs. Backup any remaining logs before restore or they will be lost.\n"
        },
        "logCatchupVersion": {
          "type": "integer",
          "description": "it helps to perform same operation with same config.\n\n\nSee detailed information in [NDB Log Catchups](https://www.nutanix.dev/api_references/ndb/#/6100cd9959e52-start-log-catchup-for-given-time-machine) .\n"
        },
        "timeMachineId": {
          "type": "string",
          "description": "Time machine id of\n"
        }
      },
      "type": "object",
      "inputProperties": {
        "databaseId": {
          "type": "string",
          "willReplaceOnChanges": true
        },
        "forRestore": {
          "type": "boolean",
          "description": "Logs to Backup. The database may contain additional logs. Backup any remaining logs before restore or they will be lost.\n"
        },
        "logCatchupVersion": {
          "type": "integer",
          "description": "it helps to perform same operation with same config.\n\n\nSee detailed information in [NDB Log Catchups](https://www.nutanix.dev/api_references/ndb/#/6100cd9959e52-start-log-catchup-for-given-time-machine) .\n"
        },
        "timeMachineId": {
          "type": "string",
          "description": "Time machine id of\n",
          "willReplaceOnChanges": true
        }
      },
      "stateInputs": {
        "description": "Input properties used for looking up and filtering NdbLogCatchups resources.\n",
        "properties": {
          "databaseId": {
            "type": "string",
            "willReplaceOnChanges": true
          },
          "forRestore": {
            "type": "boolean",
            "description": "Logs to Backup. The database may contain additional logs. Backup any remaining logs before restore or they will be lost.\n"
          },
          "logCatchupVersion": {
            "type": "integer",
            "description": "it helps to perform same operation with same config.\n\n\nSee detailed information in [NDB Log Catchups](https://www.nutanix.dev/api_references/ndb/#/6100cd9959e52-start-log-catchup-for-given-time-machine) .\n"
          },
          "timeMachineId": {
            "type": "string",
            "description": "Time machine id of\n",
            "willReplaceOnChanges": true
          }
        },
        "type": "object"
      }
    },
    "nutanix:index/ndbMaintenanceTask:NdbMaintenanceTask": {
      "description": "Provides a resource to associate a maintenance window with database server VM based on the input parameters. \n\n## Example Usage\n\n### resource to associated maintenance window with OS_PATCHING\n<!--Start PulumiCodeChooser -->\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as nutanix from \"@pierskarsenbarg/nutanix\";\n\nconst name = new nutanix.NdbMaintenanceTask(\"name\", {\n    dbserverIds: [\"{{ dbserver_vm_id }}\"],\n    maintenanceWindowId: \"{{ maintenance_window_id }}\",\n    tasks: [{\n        taskType: \"OS_PATCHING\",\n    }],\n});\n```\n```python\nimport pulumi\nimport pulumi_nutanix as nutanix\n\nname = nutanix.NdbMaintenanceTask(\"name\",\n    dbserver_ids=[\"{{ dbserver_vm_id }}\"],\n    maintenance_window_id=\"{{ maintenance_window_id }}\",\n    tasks=[{\n        \"task_type\": \"OS_PATCHING\",\n    }])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Nutanix = PiersKarsenbarg.Nutanix;\n\nreturn await Deployment.RunAsync(() => \n{\n    var name = new Nutanix.NdbMaintenanceTask(\"name\", new()\n    {\n        DbserverIds = new[]\n        {\n            \"{{ dbserver_vm_id }}\",\n        },\n        MaintenanceWindowId = \"{{ maintenance_window_id }}\",\n        Tasks = new[]\n        {\n            new Nutanix.Inputs.NdbMaintenanceTaskTaskArgs\n            {\n                TaskType = \"OS_PATCHING\",\n            },\n        },\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pierskarsenbarg/pulumi-nutanix/sdk/go/nutanix\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := nutanix.NewNdbMaintenanceTask(ctx, \"name\", &nutanix.NdbMaintenanceTaskArgs{\n\t\t\tDbserverIds: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"{{ dbserver_vm_id }}\"),\n\t\t\t},\n\t\t\tMaintenanceWindowId: pulumi.String(\"{{ maintenance_window_id }}\"),\n\t\t\tTasks: nutanix.NdbMaintenanceTaskTaskArray{\n\t\t\t\t&nutanix.NdbMaintenanceTaskTaskArgs{\n\t\t\t\t\tTaskType: pulumi.String(\"OS_PATCHING\"),\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.nutanix.NdbMaintenanceTask;\nimport com.pulumi.nutanix.NdbMaintenanceTaskArgs;\nimport com.pulumi.nutanix.inputs.NdbMaintenanceTaskTaskArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var name = new NdbMaintenanceTask(\"name\", NdbMaintenanceTaskArgs.builder()\n            .dbserverIds(\"{{ dbserver_vm_id }}\")\n            .maintenanceWindowId(\"{{ maintenance_window_id }}\")\n            .tasks(NdbMaintenanceTaskTaskArgs.builder()\n                .taskType(\"OS_PATCHING\")\n                .build())\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  name:\n    type: nutanix:NdbMaintenanceTask\n    properties:\n      dbserverIds:\n        - '{{ dbserver_vm_id }}'\n      maintenanceWindowId: '{{ maintenance_window_id }}'\n      tasks:\n        - taskType: OS_PATCHING\n```\n<!--End PulumiCodeChooser -->\n\n### resource to associated maintenance window with DB_PATCHING\n<!--Start PulumiCodeChooser -->\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as nutanix from \"@pierskarsenbarg/nutanix\";\n\nconst name = new nutanix.NdbMaintenanceTask(\"name\", {\n    dbserverIds: [\"{{ dbserver_vm_id }}\"],\n    maintenanceWindowId: \"{{ maintenance_window_id }}\",\n    tasks: [{\n        taskType: \"DB_PATCHING\",\n    }],\n});\n```\n```python\nimport pulumi\nimport pulumi_nutanix as nutanix\n\nname = nutanix.NdbMaintenanceTask(\"name\",\n    dbserver_ids=[\"{{ dbserver_vm_id }}\"],\n    maintenance_window_id=\"{{ maintenance_window_id }}\",\n    tasks=[{\n        \"task_type\": \"DB_PATCHING\",\n    }])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Nutanix = PiersKarsenbarg.Nutanix;\n\nreturn await Deployment.RunAsync(() => \n{\n    var name = new Nutanix.NdbMaintenanceTask(\"name\", new()\n    {\n        DbserverIds = new[]\n        {\n            \"{{ dbserver_vm_id }}\",\n        },\n        MaintenanceWindowId = \"{{ maintenance_window_id }}\",\n        Tasks = new[]\n        {\n            new Nutanix.Inputs.NdbMaintenanceTaskTaskArgs\n            {\n                TaskType = \"DB_PATCHING\",\n            },\n        },\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pierskarsenbarg/pulumi-nutanix/sdk/go/nutanix\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := nutanix.NewNdbMaintenanceTask(ctx, \"name\", &nutanix.NdbMaintenanceTaskArgs{\n\t\t\tDbserverIds: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"{{ dbserver_vm_id }}\"),\n\t\t\t},\n\t\t\tMaintenanceWindowId: pulumi.String(\"{{ maintenance_window_id }}\"),\n\t\t\tTasks: nutanix.NdbMaintenanceTaskTaskArray{\n\t\t\t\t&nutanix.NdbMaintenanceTaskTaskArgs{\n\t\t\t\t\tTaskType: pulumi.String(\"DB_PATCHING\"),\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.nutanix.NdbMaintenanceTask;\nimport com.pulumi.nutanix.NdbMaintenanceTaskArgs;\nimport com.pulumi.nutanix.inputs.NdbMaintenanceTaskTaskArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var name = new NdbMaintenanceTask(\"name\", NdbMaintenanceTaskArgs.builder()\n            .dbserverIds(\"{{ dbserver_vm_id }}\")\n            .maintenanceWindowId(\"{{ maintenance_window_id }}\")\n            .tasks(NdbMaintenanceTaskTaskArgs.builder()\n                .taskType(\"DB_PATCHING\")\n                .build())\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  name:\n    type: nutanix:NdbMaintenanceTask\n    properties:\n      dbserverIds:\n        - '{{ dbserver_vm_id }}'\n      maintenanceWindowId: '{{ maintenance_window_id }}'\n      tasks:\n        - taskType: DB_PATCHING\n```\n<!--End PulumiCodeChooser -->\n\n### resource to associated maintenance window with pre and post command on each task\n<!--Start PulumiCodeChooser -->\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as nutanix from \"@pierskarsenbarg/nutanix\";\n\nconst name = new nutanix.NdbMaintenanceTask(\"name\", {\n    dbserverIds: [\"{{ dbserver_vm_id }}\"],\n    maintenanceWindowId: \"{{ maintenance_window_id }}\",\n    tasks: [\n        {\n            taskType: \"DB_PATCHING\",\n            preCommand: \"{{ pre_command for db patching }}\",\n            postCommand: \"{{ post_command for db patching }}\",\n        },\n        {\n            taskType: \"OS_PATCHING\",\n            preCommand: \"{{ pre_command for os patching}}\",\n            postCommand: \"{{ post_command for os patching }}\",\n        },\n    ],\n});\n```\n```python\nimport pulumi\nimport pulumi_nutanix as nutanix\n\nname = nutanix.NdbMaintenanceTask(\"name\",\n    dbserver_ids=[\"{{ dbserver_vm_id }}\"],\n    maintenance_window_id=\"{{ maintenance_window_id }}\",\n    tasks=[\n        {\n            \"task_type\": \"DB_PATCHING\",\n            \"pre_command\": \"{{ pre_command for db patching }}\",\n            \"post_command\": \"{{ post_command for db patching }}\",\n        },\n        {\n            \"task_type\": \"OS_PATCHING\",\n            \"pre_command\": \"{{ pre_command for os patching}}\",\n            \"post_command\": \"{{ post_command for os patching }}\",\n        },\n    ])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Nutanix = PiersKarsenbarg.Nutanix;\n\nreturn await Deployment.RunAsync(() => \n{\n    var name = new Nutanix.NdbMaintenanceTask(\"name\", new()\n    {\n        DbserverIds = new[]\n        {\n            \"{{ dbserver_vm_id }}\",\n        },\n        MaintenanceWindowId = \"{{ maintenance_window_id }}\",\n        Tasks = new[]\n        {\n            new Nutanix.Inputs.NdbMaintenanceTaskTaskArgs\n            {\n                TaskType = \"DB_PATCHING\",\n                PreCommand = \"{{ pre_command for db patching }}\",\n                PostCommand = \"{{ post_command for db patching }}\",\n            },\n            new Nutanix.Inputs.NdbMaintenanceTaskTaskArgs\n            {\n                TaskType = \"OS_PATCHING\",\n                PreCommand = \"{{ pre_command for os patching}}\",\n                PostCommand = \"{{ post_command for os patching }}\",\n            },\n        },\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pierskarsenbarg/pulumi-nutanix/sdk/go/nutanix\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := nutanix.NewNdbMaintenanceTask(ctx, \"name\", &nutanix.NdbMaintenanceTaskArgs{\n\t\t\tDbserverIds: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"{{ dbserver_vm_id }}\"),\n\t\t\t},\n\t\t\tMaintenanceWindowId: pulumi.String(\"{{ maintenance_window_id }}\"),\n\t\t\tTasks: nutanix.NdbMaintenanceTaskTaskArray{\n\t\t\t\t&nutanix.NdbMaintenanceTaskTaskArgs{\n\t\t\t\t\tTaskType:    pulumi.String(\"DB_PATCHING\"),\n\t\t\t\t\tPreCommand:  pulumi.String(\"{{ pre_command for db patching }}\"),\n\t\t\t\t\tPostCommand: pulumi.String(\"{{ post_command for db patching }}\"),\n\t\t\t\t},\n\t\t\t\t&nutanix.NdbMaintenanceTaskTaskArgs{\n\t\t\t\t\tTaskType:    pulumi.String(\"OS_PATCHING\"),\n\t\t\t\t\tPreCommand:  pulumi.String(\"{{ pre_command for os patching}}\"),\n\t\t\t\t\tPostCommand: pulumi.String(\"{{ post_command for os patching }}\"),\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.nutanix.NdbMaintenanceTask;\nimport com.pulumi.nutanix.NdbMaintenanceTaskArgs;\nimport com.pulumi.nutanix.inputs.NdbMaintenanceTaskTaskArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var name = new NdbMaintenanceTask(\"name\", NdbMaintenanceTaskArgs.builder()\n            .dbserverIds(\"{{ dbserver_vm_id }}\")\n            .maintenanceWindowId(\"{{ maintenance_window_id }}\")\n            .tasks(            \n                NdbMaintenanceTaskTaskArgs.builder()\n                    .taskType(\"DB_PATCHING\")\n                    .preCommand(\"{{ pre_command for db patching }}\")\n                    .postCommand(\"{{ post_command for db patching }}\")\n                    .build(),\n                NdbMaintenanceTaskTaskArgs.builder()\n                    .taskType(\"OS_PATCHING\")\n                    .preCommand(\"{{ pre_command for os patching}}\")\n                    .postCommand(\"{{ post_command for os patching }}\")\n                    .build())\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  name:\n    type: nutanix:NdbMaintenanceTask\n    properties:\n      dbserverIds:\n        - '{{ dbserver_vm_id }}'\n      maintenanceWindowId: '{{ maintenance_window_id }}'\n      tasks:\n        - taskType: DB_PATCHING\n          preCommand: '{{ pre_command for db patching }}'\n          postCommand: '{{ post_command for db patching }}'\n        - taskType: OS_PATCHING\n          preCommand: '{{ pre_command for os patching}}'\n          postCommand: '{{ post_command for os patching }}'\n```\n<!--End PulumiCodeChooser -->\n",
      "properties": {
        "dbserverClusters": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "dbserver cluster ids. Conflicts with <span pulumi-lang-nodejs=\"\"dbserverId\"\" pulumi-lang-dotnet=\"\"DbserverId\"\" pulumi-lang-go=\"\"dbserverId\"\" pulumi-lang-python=\"\"dbserver_id\"\" pulumi-lang-yaml=\"\"dbserverId\"\" pulumi-lang-java=\"\"dbserverId\"\">\"dbserver_id\"</span>\n"
        },
        "dbserverIds": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "dbserver vm id. Conflicts with <span pulumi-lang-nodejs=\"\"dbserverCluster\"\" pulumi-lang-dotnet=\"\"DbserverCluster\"\" pulumi-lang-go=\"\"dbserverCluster\"\" pulumi-lang-python=\"\"dbserver_cluster\"\" pulumi-lang-yaml=\"\"dbserverCluster\"\" pulumi-lang-java=\"\"dbserverCluster\"\">\"dbserver_cluster\"</span>\n"
        },
        "entityTaskAssociations": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FNdbMaintenanceTaskEntityTaskAssociation:NdbMaintenanceTaskEntityTaskAssociation"
          },
          "description": "Entity Task Association  List.\n"
        },
        "maintenanceWindowId": {
          "type": "string",
          "description": "maintenance window id which has to be associated\n"
        },
        "tasks": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FNdbMaintenanceTaskTask:NdbMaintenanceTaskTask"
          },
          "description": "task input for Operating System Patching or Database Patching or both\n"
        }
      },
      "type": "object",
      "required": [
        "entityTaskAssociations",
        "maintenanceWindowId"
      ],
      "inputProperties": {
        "dbserverClusters": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "dbserver cluster ids. Conflicts with <span pulumi-lang-nodejs=\"\"dbserverId\"\" pulumi-lang-dotnet=\"\"DbserverId\"\" pulumi-lang-go=\"\"dbserverId\"\" pulumi-lang-python=\"\"dbserver_id\"\" pulumi-lang-yaml=\"\"dbserverId\"\" pulumi-lang-java=\"\"dbserverId\"\">\"dbserver_id\"</span>\n"
        },
        "dbserverIds": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "dbserver vm id. Conflicts with <span pulumi-lang-nodejs=\"\"dbserverCluster\"\" pulumi-lang-dotnet=\"\"DbserverCluster\"\" pulumi-lang-go=\"\"dbserverCluster\"\" pulumi-lang-python=\"\"dbserver_cluster\"\" pulumi-lang-yaml=\"\"dbserverCluster\"\" pulumi-lang-java=\"\"dbserverCluster\"\">\"dbserver_cluster\"</span>\n"
        },
        "maintenanceWindowId": {
          "type": "string",
          "description": "maintenance window id which has to be associated\n"
        },
        "tasks": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FNdbMaintenanceTaskTask:NdbMaintenanceTaskTask"
          },
          "description": "task input for Operating System Patching or Database Patching or both\n"
        }
      },
      "requiredInputs": [
        "maintenanceWindowId"
      ],
      "stateInputs": {
        "description": "Input properties used for looking up and filtering NdbMaintenanceTask resources.\n",
        "properties": {
          "dbserverClusters": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "description": "dbserver cluster ids. Conflicts with <span pulumi-lang-nodejs=\"\"dbserverId\"\" pulumi-lang-dotnet=\"\"DbserverId\"\" pulumi-lang-go=\"\"dbserverId\"\" pulumi-lang-python=\"\"dbserver_id\"\" pulumi-lang-yaml=\"\"dbserverId\"\" pulumi-lang-java=\"\"dbserverId\"\">\"dbserver_id\"</span>\n"
          },
          "dbserverIds": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "description": "dbserver vm id. Conflicts with <span pulumi-lang-nodejs=\"\"dbserverCluster\"\" pulumi-lang-dotnet=\"\"DbserverCluster\"\" pulumi-lang-go=\"\"dbserverCluster\"\" pulumi-lang-python=\"\"dbserver_cluster\"\" pulumi-lang-yaml=\"\"dbserverCluster\"\" pulumi-lang-java=\"\"dbserverCluster\"\">\"dbserver_cluster\"</span>\n"
          },
          "entityTaskAssociations": {
            "type": "array",
            "items": {
              "$ref": "#/types/nutanix:index%2FNdbMaintenanceTaskEntityTaskAssociation:NdbMaintenanceTaskEntityTaskAssociation"
            },
            "description": "Entity Task Association  List.\n"
          },
          "maintenanceWindowId": {
            "type": "string",
            "description": "maintenance window id which has to be associated\n"
          },
          "tasks": {
            "type": "array",
            "items": {
              "$ref": "#/types/nutanix:index%2FNdbMaintenanceTaskTask:NdbMaintenanceTaskTask"
            },
            "description": "task input for Operating System Patching or Database Patching or both\n"
          }
        },
        "type": "object"
      }
    },
    "nutanix:index/ndbMaintenanceWindow:NdbMaintenanceWindow": {
      "description": "Provides a resource to create maintenance window based on the input parameters. \n\n## Example Usage\n\n### resource to create weekly maintenance window\n<!--Start PulumiCodeChooser -->\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as nutanix from \"@pierskarsenbarg/nutanix\";\n\nconst acctest_managed = new nutanix.NdbMaintenanceWindow(\"acctest-managed\", {\n    name: \"test-maintenance\",\n    description: \"desc\",\n    duration: 3,\n    recurrence: \"WEEKLY\",\n    dayOfWeek: \"TUESDAY\",\n    startTime: \"17:04:47\",\n});\n```\n```python\nimport pulumi\nimport pulumi_nutanix as nutanix\n\nacctest_managed = nutanix.NdbMaintenanceWindow(\"acctest-managed\",\n    name=\"test-maintenance\",\n    description=\"desc\",\n    duration=3,\n    recurrence=\"WEEKLY\",\n    day_of_week=\"TUESDAY\",\n    start_time=\"17:04:47\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Nutanix = PiersKarsenbarg.Nutanix;\n\nreturn await Deployment.RunAsync(() => \n{\n    var acctest_managed = new Nutanix.NdbMaintenanceWindow(\"acctest-managed\", new()\n    {\n        Name = \"test-maintenance\",\n        Description = \"desc\",\n        Duration = 3,\n        Recurrence = \"WEEKLY\",\n        DayOfWeek = \"TUESDAY\",\n        StartTime = \"17:04:47\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pierskarsenbarg/pulumi-nutanix/sdk/go/nutanix\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := nutanix.NewNdbMaintenanceWindow(ctx, \"acctest-managed\", &nutanix.NdbMaintenanceWindowArgs{\n\t\t\tName:        pulumi.String(\"test-maintenance\"),\n\t\t\tDescription: pulumi.String(\"desc\"),\n\t\t\tDuration:    pulumi.Int(3),\n\t\t\tRecurrence:  pulumi.String(\"WEEKLY\"),\n\t\t\tDayOfWeek:   pulumi.String(\"TUESDAY\"),\n\t\t\tStartTime:   pulumi.String(\"17:04:47\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.nutanix.NdbMaintenanceWindow;\nimport com.pulumi.nutanix.NdbMaintenanceWindowArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var acctest_managed = new NdbMaintenanceWindow(\"acctest-managed\", NdbMaintenanceWindowArgs.builder()\n            .name(\"test-maintenance\")\n            .description(\"desc\")\n            .duration(3)\n            .recurrence(\"WEEKLY\")\n            .dayOfWeek(\"TUESDAY\")\n            .startTime(\"17:04:47\")\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  acctest-managed:\n    type: nutanix:NdbMaintenanceWindow\n    properties:\n      name: test-maintenance\n      description: desc\n      duration: 3\n      recurrence: WEEKLY\n      dayOfWeek: TUESDAY\n      startTime: 17:04:47\n```\n<!--End PulumiCodeChooser -->\n\n### resource to create monthly maintenance window\n<!--Start PulumiCodeChooser -->\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as nutanix from \"@pierskarsenbarg/nutanix\";\n\nconst acctest_managed = new nutanix.NdbMaintenanceWindow(\"acctest-managed\", {\n    name: \"test-maintenance\",\n    description: \"description\",\n    duration: 2,\n    recurrence: \"MONTHLY\",\n    dayOfWeek: \"TUESDAY\",\n    startTime: \"17:04:47\",\n    weekOfMonth: 4,\n});\n```\n```python\nimport pulumi\nimport pulumi_nutanix as nutanix\n\nacctest_managed = nutanix.NdbMaintenanceWindow(\"acctest-managed\",\n    name=\"test-maintenance\",\n    description=\"description\",\n    duration=2,\n    recurrence=\"MONTHLY\",\n    day_of_week=\"TUESDAY\",\n    start_time=\"17:04:47\",\n    week_of_month=4)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Nutanix = PiersKarsenbarg.Nutanix;\n\nreturn await Deployment.RunAsync(() => \n{\n    var acctest_managed = new Nutanix.NdbMaintenanceWindow(\"acctest-managed\", new()\n    {\n        Name = \"test-maintenance\",\n        Description = \"description\",\n        Duration = 2,\n        Recurrence = \"MONTHLY\",\n        DayOfWeek = \"TUESDAY\",\n        StartTime = \"17:04:47\",\n        WeekOfMonth = 4,\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pierskarsenbarg/pulumi-nutanix/sdk/go/nutanix\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := nutanix.NewNdbMaintenanceWindow(ctx, \"acctest-managed\", &nutanix.NdbMaintenanceWindowArgs{\n\t\t\tName:        pulumi.String(\"test-maintenance\"),\n\t\t\tDescription: pulumi.String(\"description\"),\n\t\t\tDuration:    pulumi.Int(2),\n\t\t\tRecurrence:  pulumi.String(\"MONTHLY\"),\n\t\t\tDayOfWeek:   pulumi.String(\"TUESDAY\"),\n\t\t\tStartTime:   pulumi.String(\"17:04:47\"),\n\t\t\tWeekOfMonth: pulumi.Int(4),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.nutanix.NdbMaintenanceWindow;\nimport com.pulumi.nutanix.NdbMaintenanceWindowArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var acctest_managed = new NdbMaintenanceWindow(\"acctest-managed\", NdbMaintenanceWindowArgs.builder()\n            .name(\"test-maintenance\")\n            .description(\"description\")\n            .duration(2)\n            .recurrence(\"MONTHLY\")\n            .dayOfWeek(\"TUESDAY\")\n            .startTime(\"17:04:47\")\n            .weekOfMonth(4)\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  acctest-managed:\n    type: nutanix:NdbMaintenanceWindow\n    properties:\n      name: test-maintenance\n      description: description\n      duration: 2\n      recurrence: MONTHLY\n      dayOfWeek: TUESDAY\n      startTime: 17:04:47\n      weekOfMonth: 4\n```\n<!--End PulumiCodeChooser -->\n",
      "properties": {
        "accessLevel": {
          "type": "string",
          "description": "access level\n"
        },
        "dateCreated": {
          "type": "string",
          "description": "created date of maintenance window\n"
        },
        "dateModified": {
          "type": "string",
          "description": "modified date of maintenance window\n"
        },
        "dayOfWeek": {
          "type": "string",
          "description": "Day of the week to trigger maintenance window. Supports [ MONDAY, TUESDAY, WEDNESDAY, THURSDAY, FRIDAY, SATURDAY, SUNDAY ]\n"
        },
        "description": {
          "type": "string",
          "description": "Description for maintenance window\n"
        },
        "duration": {
          "type": "integer",
          "description": "duration in hours. Default is 2\n"
        },
        "entityTaskAssocs": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FNdbMaintenanceWindowEntityTaskAssoc:NdbMaintenanceWindowEntityTaskAssoc"
          },
          "description": "entity task association for maintenance window\n"
        },
        "name": {
          "type": "string",
          "description": "Name for the maintenance window.\n"
        },
        "nextRunTime": {
          "type": "string",
          "description": "next run time for maintenance window to trigger\n"
        },
        "ownerId": {
          "type": "string",
          "description": "owner id of maintenance window\n"
        },
        "properties": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FNdbMaintenanceWindowProperty:NdbMaintenanceWindowProperty"
          },
          "description": "properties of maintenance window\n"
        },
        "recurrence": {
          "type": "string",
          "description": "Supported values [ MONTHLY, WEEKLY ]\n"
        },
        "schedules": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FNdbMaintenanceWindowSchedule:NdbMaintenanceWindowSchedule"
          },
          "description": "schedule of maintenance window\n"
        },
        "startTime": {
          "type": "string",
          "description": "start time for maintenance window to trigger\n"
        },
        "status": {
          "type": "string",
          "description": "status of maintennace window\n"
        },
        "tags": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FNdbMaintenanceWindowTag:NdbMaintenanceWindowTag"
          },
          "description": "tags of maintenance window\n"
        },
        "timezone": {
          "type": "string",
          "description": "timezone . Default is Asia/Calcutta .\n"
        },
        "weekOfMonth": {
          "type": "integer",
          "description": "week of the month. Supports [1, 2, 3, 4] .\n"
        }
      },
      "type": "object",
      "required": [
        "accessLevel",
        "dateCreated",
        "dateModified",
        "entityTaskAssocs",
        "name",
        "nextRunTime",
        "ownerId",
        "properties",
        "recurrence",
        "schedules",
        "startTime",
        "status",
        "tags"
      ],
      "inputProperties": {
        "dayOfWeek": {
          "type": "string",
          "description": "Day of the week to trigger maintenance window. Supports [ MONDAY, TUESDAY, WEDNESDAY, THURSDAY, FRIDAY, SATURDAY, SUNDAY ]\n"
        },
        "description": {
          "type": "string",
          "description": "Description for maintenance window\n"
        },
        "duration": {
          "type": "integer",
          "description": "duration in hours. Default is 2\n"
        },
        "name": {
          "type": "string",
          "description": "Name for the maintenance window.\n"
        },
        "recurrence": {
          "type": "string",
          "description": "Supported values [ MONTHLY, WEEKLY ]\n"
        },
        "startTime": {
          "type": "string",
          "description": "start time for maintenance window to trigger\n"
        },
        "tags": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FNdbMaintenanceWindowTag:NdbMaintenanceWindowTag"
          },
          "description": "tags of maintenance window\n"
        },
        "timezone": {
          "type": "string",
          "description": "timezone . Default is Asia/Calcutta .\n"
        },
        "weekOfMonth": {
          "type": "integer",
          "description": "week of the month. Supports [1, 2, 3, 4] .\n"
        }
      },
      "requiredInputs": [
        "recurrence",
        "startTime"
      ],
      "stateInputs": {
        "description": "Input properties used for looking up and filtering NdbMaintenanceWindow resources.\n",
        "properties": {
          "accessLevel": {
            "type": "string",
            "description": "access level\n"
          },
          "dateCreated": {
            "type": "string",
            "description": "created date of maintenance window\n"
          },
          "dateModified": {
            "type": "string",
            "description": "modified date of maintenance window\n"
          },
          "dayOfWeek": {
            "type": "string",
            "description": "Day of the week to trigger maintenance window. Supports [ MONDAY, TUESDAY, WEDNESDAY, THURSDAY, FRIDAY, SATURDAY, SUNDAY ]\n"
          },
          "description": {
            "type": "string",
            "description": "Description for maintenance window\n"
          },
          "duration": {
            "type": "integer",
            "description": "duration in hours. Default is 2\n"
          },
          "entityTaskAssocs": {
            "type": "array",
            "items": {
              "$ref": "#/types/nutanix:index%2FNdbMaintenanceWindowEntityTaskAssoc:NdbMaintenanceWindowEntityTaskAssoc"
            },
            "description": "entity task association for maintenance window\n"
          },
          "name": {
            "type": "string",
            "description": "Name for the maintenance window.\n"
          },
          "nextRunTime": {
            "type": "string",
            "description": "next run time for maintenance window to trigger\n"
          },
          "ownerId": {
            "type": "string",
            "description": "owner id of maintenance window\n"
          },
          "properties": {
            "type": "array",
            "items": {
              "$ref": "#/types/nutanix:index%2FNdbMaintenanceWindowProperty:NdbMaintenanceWindowProperty"
            },
            "description": "properties of maintenance window\n"
          },
          "recurrence": {
            "type": "string",
            "description": "Supported values [ MONTHLY, WEEKLY ]\n"
          },
          "schedules": {
            "type": "array",
            "items": {
              "$ref": "#/types/nutanix:index%2FNdbMaintenanceWindowSchedule:NdbMaintenanceWindowSchedule"
            },
            "description": "schedule of maintenance window\n"
          },
          "startTime": {
            "type": "string",
            "description": "start time for maintenance window to trigger\n"
          },
          "status": {
            "type": "string",
            "description": "status of maintennace window\n"
          },
          "tags": {
            "type": "array",
            "items": {
              "$ref": "#/types/nutanix:index%2FNdbMaintenanceWindowTag:NdbMaintenanceWindowTag"
            },
            "description": "tags of maintenance window\n"
          },
          "timezone": {
            "type": "string",
            "description": "timezone . Default is Asia/Calcutta .\n"
          },
          "weekOfMonth": {
            "type": "integer",
            "description": "week of the month. Supports [1, 2, 3, 4] .\n"
          }
        },
        "type": "object"
      }
    },
    "nutanix:index/ndbNetwork:NdbNetwork": {
      "description": "Provides a resource to create VLANs and IP address pools that are managed both in NDB and outside NDB. \n\n## Example Usage\n\n### resource to create network for NDB\n<!--Start PulumiCodeChooser -->\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as nutanix from \"@pierskarsenbarg/nutanix\";\n\nconst name = new nutanix.NdbNetwork(\"name\", {\n    name: \"test-sub\",\n    type: \"Static\",\n    clusterId: \"{{ cluster_id }}\",\n    gateway: \"{{ gatway for the vlan }}\",\n    subnetMask: \"{{ subnet mask for the vlan}}\",\n    primaryDns: \" {{ primary dns for the vlan }}\",\n    secondaryDns: \"{{secondary dns for the vlan }}\",\n    ipPools: [{\n        startIp: \"{{ starting address range}}\",\n        endIp: \"{{ ending address range }}\",\n    }],\n});\n```\n```python\nimport pulumi\nimport pulumi_nutanix as nutanix\n\nname = nutanix.NdbNetwork(\"name\",\n    name=\"test-sub\",\n    type=\"Static\",\n    cluster_id=\"{{ cluster_id }}\",\n    gateway=\"{{ gatway for the vlan }}\",\n    subnet_mask=\"{{ subnet mask for the vlan}}\",\n    primary_dns=\" {{ primary dns for the vlan }}\",\n    secondary_dns=\"{{secondary dns for the vlan }}\",\n    ip_pools=[{\n        \"start_ip\": \"{{ starting address range}}\",\n        \"end_ip\": \"{{ ending address range }}\",\n    }])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Nutanix = PiersKarsenbarg.Nutanix;\n\nreturn await Deployment.RunAsync(() => \n{\n    var name = new Nutanix.NdbNetwork(\"name\", new()\n    {\n        Name = \"test-sub\",\n        Type = \"Static\",\n        ClusterId = \"{{ cluster_id }}\",\n        Gateway = \"{{ gatway for the vlan }}\",\n        SubnetMask = \"{{ subnet mask for the vlan}}\",\n        PrimaryDns = \" {{ primary dns for the vlan }}\",\n        SecondaryDns = \"{{secondary dns for the vlan }}\",\n        IpPools = new[]\n        {\n            new Nutanix.Inputs.NdbNetworkIpPoolArgs\n            {\n                StartIp = \"{{ starting address range}}\",\n                EndIp = \"{{ ending address range }}\",\n            },\n        },\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pierskarsenbarg/pulumi-nutanix/sdk/go/nutanix\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := nutanix.NewNdbNetwork(ctx, \"name\", &nutanix.NdbNetworkArgs{\n\t\t\tName:         pulumi.String(\"test-sub\"),\n\t\t\tType:         pulumi.String(\"Static\"),\n\t\t\tClusterId:    pulumi.String(\"{{ cluster_id }}\"),\n\t\t\tGateway:      pulumi.String(\"{{ gatway for the vlan }}\"),\n\t\t\tSubnetMask:   pulumi.String(\"{{ subnet mask for the vlan}}\"),\n\t\t\tPrimaryDns:   pulumi.String(\" {{ primary dns for the vlan }}\"),\n\t\t\tSecondaryDns: pulumi.String(\"{{secondary dns for the vlan }}\"),\n\t\t\tIpPools: nutanix.NdbNetworkIpPoolArray{\n\t\t\t\t&nutanix.NdbNetworkIpPoolArgs{\n\t\t\t\t\tStartIp: pulumi.String(\"{{ starting address range}}\"),\n\t\t\t\t\tEndIp:   pulumi.String(\"{{ ending address range }}\"),\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.nutanix.NdbNetwork;\nimport com.pulumi.nutanix.NdbNetworkArgs;\nimport com.pulumi.nutanix.inputs.NdbNetworkIpPoolArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var name = new NdbNetwork(\"name\", NdbNetworkArgs.builder()\n            .name(\"test-sub\")\n            .type(\"Static\")\n            .clusterId(\"{{ cluster_id }}\")\n            .gateway(\"{{ gatway for the vlan }}\")\n            .subnetMask(\"{{ subnet mask for the vlan}}\")\n            .primaryDns(\" {{ primary dns for the vlan }}\")\n            .secondaryDns(\"{{secondary dns for the vlan }}\")\n            .ipPools(NdbNetworkIpPoolArgs.builder()\n                .startIp(\"{{ starting address range}}\")\n                .endIp(\"{{ ending address range }}\")\n                .build())\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  name:\n    type: nutanix:NdbNetwork\n    properties:\n      name: test-sub\n      type: Static\n      clusterId: '{{ cluster_id }}'\n      gateway: '{{ gatway for the vlan }}'\n      subnetMask: '{{ subnet mask for the vlan}}'\n      primaryDns: ' {{ primary dns for the vlan }}'\n      secondaryDns: '{{secondary dns for the vlan }}'\n      ipPools:\n        - startIp: '{{ starting address range}}'\n          endIp: '{{ ending address range }}'\n```\n<!--End PulumiCodeChooser -->\n\n",
      "properties": {
        "clusterId": {
          "type": "string",
          "description": "Select the Nutanix cluster on which you want to add the VLAN.\n"
        },
        "dnsDomain": {
          "type": "string",
          "description": "dns domain for vlan. (Static IP address assignment only)\n"
        },
        "gateway": {
          "type": "string",
          "description": "Gateway for vlan. Supports in Static IP address assignment only\n"
        },
        "ipPools": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FNdbNetworkIpPool:NdbNetworkIpPool"
          },
          "description": "Manage IP Address Pool in NDB option if you want to assign static IP addresses to your database server VMs\n"
        },
        "managed": {
          "type": "boolean",
          "description": "Managed by NDB or not\n"
        },
        "name": {
          "type": "string",
          "description": "Name of the vlan to be attached in NDB\n"
        },
        "primaryDns": {
          "type": "string",
          "description": "primary dns for vlan. (Static IP address assignment only)\n"
        },
        "properties": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FNdbNetworkProperty:NdbNetworkProperty"
          },
          "description": "properties of network\n"
        },
        "propertiesMaps": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FNdbNetworkPropertiesMap:NdbNetworkPropertiesMap"
          },
          "description": "properties map of network\n"
        },
        "secondaryDns": {
          "type": "string",
          "description": "secondary dns for vlan. (Static IP address assignment only)\n"
        },
        "stretchedVlanId": {
          "type": "string",
          "description": "stretched vlan id\n"
        },
        "subnetMask": {
          "type": "string",
          "description": "Subnet mask for vlan. (Static IP address assignment only)\n"
        },
        "type": {
          "type": "string",
          "description": "Vlan type. Supports [DHCP, Static]\n"
        }
      },
      "type": "object",
      "required": [
        "clusterId",
        "ipPools",
        "managed",
        "name",
        "properties",
        "propertiesMaps",
        "stretchedVlanId",
        "type"
      ],
      "inputProperties": {
        "clusterId": {
          "type": "string",
          "description": "Select the Nutanix cluster on which you want to add the VLAN.\n"
        },
        "dnsDomain": {
          "type": "string",
          "description": "dns domain for vlan. (Static IP address assignment only)\n"
        },
        "gateway": {
          "type": "string",
          "description": "Gateway for vlan. Supports in Static IP address assignment only\n"
        },
        "ipPools": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FNdbNetworkIpPool:NdbNetworkIpPool"
          },
          "description": "Manage IP Address Pool in NDB option if you want to assign static IP addresses to your database server VMs\n"
        },
        "name": {
          "type": "string",
          "description": "Name of the vlan to be attached in NDB\n"
        },
        "primaryDns": {
          "type": "string",
          "description": "primary dns for vlan. (Static IP address assignment only)\n"
        },
        "secondaryDns": {
          "type": "string",
          "description": "secondary dns for vlan. (Static IP address assignment only)\n"
        },
        "subnetMask": {
          "type": "string",
          "description": "Subnet mask for vlan. (Static IP address assignment only)\n"
        },
        "type": {
          "type": "string",
          "description": "Vlan type. Supports [DHCP, Static]\n"
        }
      },
      "requiredInputs": [
        "clusterId",
        "type"
      ],
      "stateInputs": {
        "description": "Input properties used for looking up and filtering NdbNetwork resources.\n",
        "properties": {
          "clusterId": {
            "type": "string",
            "description": "Select the Nutanix cluster on which you want to add the VLAN.\n"
          },
          "dnsDomain": {
            "type": "string",
            "description": "dns domain for vlan. (Static IP address assignment only)\n"
          },
          "gateway": {
            "type": "string",
            "description": "Gateway for vlan. Supports in Static IP address assignment only\n"
          },
          "ipPools": {
            "type": "array",
            "items": {
              "$ref": "#/types/nutanix:index%2FNdbNetworkIpPool:NdbNetworkIpPool"
            },
            "description": "Manage IP Address Pool in NDB option if you want to assign static IP addresses to your database server VMs\n"
          },
          "managed": {
            "type": "boolean",
            "description": "Managed by NDB or not\n"
          },
          "name": {
            "type": "string",
            "description": "Name of the vlan to be attached in NDB\n"
          },
          "primaryDns": {
            "type": "string",
            "description": "primary dns for vlan. (Static IP address assignment only)\n"
          },
          "properties": {
            "type": "array",
            "items": {
              "$ref": "#/types/nutanix:index%2FNdbNetworkProperty:NdbNetworkProperty"
            },
            "description": "properties of network\n"
          },
          "propertiesMaps": {
            "type": "array",
            "items": {
              "$ref": "#/types/nutanix:index%2FNdbNetworkPropertiesMap:NdbNetworkPropertiesMap"
            },
            "description": "properties map of network\n"
          },
          "secondaryDns": {
            "type": "string",
            "description": "secondary dns for vlan. (Static IP address assignment only)\n"
          },
          "stretchedVlanId": {
            "type": "string",
            "description": "stretched vlan id\n"
          },
          "subnetMask": {
            "type": "string",
            "description": "Subnet mask for vlan. (Static IP address assignment only)\n"
          },
          "type": {
            "type": "string",
            "description": "Vlan type. Supports [DHCP, Static]\n"
          }
        },
        "type": "object"
      }
    },
    "nutanix:index/ndbProfile:NdbProfile": {
      "description": "Provides a resource to create profiles (Software, Network, Database Parameter, Compute) based on the input parameters. \n\n",
      "properties": {
        "assocDatabases": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "associated databases of profiles\n"
        },
        "assocDbServers": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "associated database servers for associated profiles\n"
        },
        "clusterAvailabilities": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FNdbProfileClusterAvailability:NdbProfileClusterAvailability"
          },
          "description": "cluster availability of profile\n"
        },
        "computeProfiles": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FNdbProfileComputeProfile:NdbProfileComputeProfile"
          },
          "description": "Compute Profile\n"
        },
        "databaseParameterProfiles": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FNdbProfileDatabaseParameterProfile:NdbProfileDatabaseParameterProfile"
          },
          "description": "Database Parameter Profile\n"
        },
        "description": {
          "type": "string",
          "description": "Description of profile\n"
        },
        "engineType": {
          "type": "string",
          "description": "Engine Type of database\n"
        },
        "latestVersion": {
          "type": "string",
          "description": "latest version of profile\n"
        },
        "latestVersionId": {
          "type": "string",
          "description": "latest version id of profile\n"
        },
        "name": {
          "type": "string",
          "description": "Name of profile\n"
        },
        "networkProfiles": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FNdbProfileNetworkProfile:NdbProfileNetworkProfile"
          },
          "description": "Network Profile\n"
        },
        "nxClusterId": {
          "type": "string",
          "description": "cluster on which profile created\n"
        },
        "owner": {
          "type": "string",
          "description": "owner  of profile\n"
        },
        "published": {
          "type": "boolean",
          "description": "Publish for all users\n"
        },
        "softwareProfile": {
          "$ref": "#/types/nutanix:index%2FNdbProfileSoftwareProfile:NdbProfileSoftwareProfile",
          "description": "Software Profile\n"
        },
        "status": {
          "type": "string",
          "description": "status of profile\n"
        },
        "versions": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FNdbProfileVersion:NdbProfileVersion"
          },
          "description": "versions of associated profiles\n"
        }
      },
      "type": "object",
      "required": [
        "assocDatabases",
        "assocDbServers",
        "clusterAvailabilities",
        "engineType",
        "latestVersion",
        "latestVersionId",
        "name",
        "nxClusterId",
        "owner",
        "status",
        "versions"
      ],
      "inputProperties": {
        "computeProfiles": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FNdbProfileComputeProfile:NdbProfileComputeProfile"
          },
          "description": "Compute Profile\n"
        },
        "databaseParameterProfiles": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FNdbProfileDatabaseParameterProfile:NdbProfileDatabaseParameterProfile"
          },
          "description": "Database Parameter Profile\n"
        },
        "description": {
          "type": "string",
          "description": "Description of profile\n"
        },
        "engineType": {
          "type": "string",
          "description": "Engine Type of database\n"
        },
        "name": {
          "type": "string",
          "description": "Name of profile\n"
        },
        "networkProfiles": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FNdbProfileNetworkProfile:NdbProfileNetworkProfile"
          },
          "description": "Network Profile\n"
        },
        "published": {
          "type": "boolean",
          "description": "Publish for all users\n"
        },
        "softwareProfile": {
          "$ref": "#/types/nutanix:index%2FNdbProfileSoftwareProfile:NdbProfileSoftwareProfile",
          "description": "Software Profile\n"
        }
      },
      "stateInputs": {
        "description": "Input properties used for looking up and filtering NdbProfile resources.\n",
        "properties": {
          "assocDatabases": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "description": "associated databases of profiles\n"
          },
          "assocDbServers": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "description": "associated database servers for associated profiles\n"
          },
          "clusterAvailabilities": {
            "type": "array",
            "items": {
              "$ref": "#/types/nutanix:index%2FNdbProfileClusterAvailability:NdbProfileClusterAvailability"
            },
            "description": "cluster availability of profile\n"
          },
          "computeProfiles": {
            "type": "array",
            "items": {
              "$ref": "#/types/nutanix:index%2FNdbProfileComputeProfile:NdbProfileComputeProfile"
            },
            "description": "Compute Profile\n"
          },
          "databaseParameterProfiles": {
            "type": "array",
            "items": {
              "$ref": "#/types/nutanix:index%2FNdbProfileDatabaseParameterProfile:NdbProfileDatabaseParameterProfile"
            },
            "description": "Database Parameter Profile\n"
          },
          "description": {
            "type": "string",
            "description": "Description of profile\n"
          },
          "engineType": {
            "type": "string",
            "description": "Engine Type of database\n"
          },
          "latestVersion": {
            "type": "string",
            "description": "latest version of profile\n"
          },
          "latestVersionId": {
            "type": "string",
            "description": "latest version id of profile\n"
          },
          "name": {
            "type": "string",
            "description": "Name of profile\n"
          },
          "networkProfiles": {
            "type": "array",
            "items": {
              "$ref": "#/types/nutanix:index%2FNdbProfileNetworkProfile:NdbProfileNetworkProfile"
            },
            "description": "Network Profile\n"
          },
          "nxClusterId": {
            "type": "string",
            "description": "cluster on which profile created\n"
          },
          "owner": {
            "type": "string",
            "description": "owner  of profile\n"
          },
          "published": {
            "type": "boolean",
            "description": "Publish for all users\n"
          },
          "softwareProfile": {
            "$ref": "#/types/nutanix:index%2FNdbProfileSoftwareProfile:NdbProfileSoftwareProfile",
            "description": "Software Profile\n"
          },
          "status": {
            "type": "string",
            "description": "status of profile\n"
          },
          "versions": {
            "type": "array",
            "items": {
              "$ref": "#/types/nutanix:index%2FNdbProfileVersion:NdbProfileVersion"
            },
            "description": "versions of associated profiles\n"
          }
        },
        "type": "object"
      }
    },
    "nutanix:index/ndbRegisterDatabase:NdbRegisterDatabase": {
      "description": "Provides a resource to register the database based on the input parameters. \n\n",
      "properties": {
        "actionarguments": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FNdbRegisterDatabaseActionargument:NdbRegisterDatabaseActionargument"
          },
          "description": "action arguments\n"
        },
        "autoTuneStagingDrive": {
          "type": "boolean",
          "description": "auto tune staging drive. Default is true\n"
        },
        "category": {
          "type": "string",
          "description": "category of database. Default is \"DEFAULT\"\n"
        },
        "clone": {
          "type": "boolean",
          "description": "whether instance is cloned or not\n"
        },
        "clustered": {
          "type": "boolean",
          "description": "clustered or not. Default is false\n"
        },
        "databaseClusterType": {
          "type": "string",
          "description": "database cluster type\n"
        },
        "databaseName": {
          "type": "string",
          "description": "name of database\n"
        },
        "databaseNodes": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FNdbRegisterDatabaseDatabaseNode:NdbRegisterDatabaseDatabaseNode"
          },
          "description": "database nodes associated with database instance\n"
        },
        "databaseStatus": {
          "type": "string",
          "description": "status of database\n"
        },
        "databaseType": {
          "type": "string",
          "description": "type of database. Required value: postgres_database\n"
        },
        "dateCreated": {
          "type": "string",
          "description": "date created for db instance\n"
        },
        "dateModified": {
          "type": "string",
          "description": "date modified for instance\n"
        },
        "dbserverLogicalCluster": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          },
          "description": "dbserver logical cluster\n"
        },
        "dbserverLogicalClusterId": {
          "type": "string",
          "description": "dbserver logical cluster id\n"
        },
        "delete": {
          "type": "boolean",
          "description": "- (Optional) Delete the database from the VM. Default value is false\n"
        },
        "deleteLogicalCluster": {
          "type": "boolean",
          "description": "- (Optional) Delete the logical cluster. Default is true\n"
        },
        "deleteTimeMachine": {
          "type": "boolean",
          "description": "- (Optional) Delete the database's Time Machine (snapshots/logs) from the NDB. Default value is true\n"
        },
        "description": {
          "type": "string",
          "description": "description\n"
        },
        "forced": {
          "type": "boolean",
          "description": "- (Optional) Force delete of instance. Default is false\n"
        },
        "forcedInstall": {
          "type": "boolean",
          "description": "forced install. Default:  true\n"
        },
        "groupInfo": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          }
        },
        "infos": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FNdbRegisterDatabaseInfo:NdbRegisterDatabaseInfo"
          },
          "description": "info of instance\n"
        },
        "lcmConfigs": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FNdbRegisterDatabaseLcmConfig:NdbRegisterDatabaseLcmConfig"
          },
          "description": "LCM config of instance\n"
        },
        "linkedDatabases": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FNdbRegisterDatabaseLinkedDatabase:NdbRegisterDatabaseLinkedDatabase"
          },
          "description": "linked databases within database instance\n"
        },
        "metric": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          },
          "description": "Stores storage info regarding size, allocatedSize, usedSize and unit of calculation that seems to have been fetched from PRISM.\n"
        },
        "name": {
          "type": "string",
          "description": "Name of database instance\n"
        },
        "nxClusterId": {
          "type": "string",
          "description": "cluster on which NDB is present\n"
        },
        "parentDatabaseId": {
          "type": "string",
          "description": "parent database id\n"
        },
        "parentSourceDatabaseId": {
          "type": "string",
          "description": "parent source database id\n"
        },
        "parentTimeMachineId": {
          "type": "string",
          "description": "parent time machine id\n"
        },
        "postgressInfos": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FNdbRegisterDatabasePostgressInfo:NdbRegisterDatabasePostgressInfo"
          },
          "description": "Postgress_Info for registering.\n"
        },
        "properties": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FNdbRegisterDatabaseProperty:NdbRegisterDatabaseProperty"
          },
          "description": "properties of database created\n"
        },
        "remove": {
          "type": "boolean",
          "description": "- (Optional) Unregister the database from NDB. Default value is true\n"
        },
        "resetDescriptionInNxCluster": {
          "type": "boolean",
          "description": "Reset description in cluster\n"
        },
        "softRemove": {
          "type": "boolean",
          "description": "- (Optional) Soft remove. Default will be false\n"
        },
        "status": {
          "type": "string",
          "description": "status of instance\n"
        },
        "tags": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FNdbRegisterDatabaseTag:NdbRegisterDatabaseTag"
          },
          "description": "tags\n"
        },
        "timeMachineId": {
          "type": "string",
          "description": "time machine id of instance\n"
        },
        "timeMachineInfo": {
          "$ref": "#/types/nutanix:index%2FNdbRegisterDatabaseTimeMachineInfo:NdbRegisterDatabaseTimeMachineInfo",
          "description": "Time Machine info\n"
        },
        "timeMachines": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FNdbRegisterDatabaseTimeMachine:NdbRegisterDatabaseTimeMachine"
          },
          "description": "Time Machine details of instance\n"
        },
        "timeZone": {
          "type": "string",
          "description": "timezone on which instance is created xw\n"
        },
        "type": {
          "type": "string",
          "description": "type of database\n"
        },
        "vmDescription": {
          "type": "string",
          "description": "description for VM\n"
        },
        "vmIp": {
          "type": "string",
          "description": "IP address of dbserver VM\n"
        },
        "vmPassword": {
          "type": "string",
          "description": "password of the NDB drive user account.\n",
          "secret": true
        },
        "vmSshkey": {
          "type": "string",
          "description": "ssh key for vm\n",
          "secret": true
        },
        "vmUsername": {
          "type": "string",
          "description": "username of the NDB drive user account that has sudo access.\n"
        },
        "workingDirectory": {
          "type": "string",
          "description": "working directory. Default is /tmp\n"
        }
      },
      "type": "object",
      "required": [
        "clone",
        "databaseClusterType",
        "databaseName",
        "databaseNodes",
        "databaseStatus",
        "databaseType",
        "dateCreated",
        "dateModified",
        "dbserverLogicalCluster",
        "dbserverLogicalClusterId",
        "groupInfo",
        "infos",
        "lcmConfigs",
        "linkedDatabases",
        "metric",
        "name",
        "parentDatabaseId",
        "parentSourceDatabaseId",
        "parentTimeMachineId",
        "properties",
        "status",
        "tags",
        "timeMachineId",
        "timeMachines",
        "timeZone",
        "type",
        "vmIp"
      ],
      "inputProperties": {
        "actionarguments": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FNdbRegisterDatabaseActionargument:NdbRegisterDatabaseActionargument"
          },
          "description": "action arguments\n"
        },
        "autoTuneStagingDrive": {
          "type": "boolean",
          "description": "auto tune staging drive. Default is true\n"
        },
        "category": {
          "type": "string",
          "description": "category of database. Default is \"DEFAULT\"\n"
        },
        "clustered": {
          "type": "boolean",
          "description": "clustered or not. Default is false\n"
        },
        "databaseName": {
          "type": "string",
          "description": "name of database\n"
        },
        "databaseType": {
          "type": "string",
          "description": "type of database. Required value: postgres_database\n"
        },
        "delete": {
          "type": "boolean",
          "description": "- (Optional) Delete the database from the VM. Default value is false\n"
        },
        "deleteLogicalCluster": {
          "type": "boolean",
          "description": "- (Optional) Delete the logical cluster. Default is true\n"
        },
        "deleteTimeMachine": {
          "type": "boolean",
          "description": "- (Optional) Delete the database's Time Machine (snapshots/logs) from the NDB. Default value is true\n"
        },
        "description": {
          "type": "string",
          "description": "description\n"
        },
        "forced": {
          "type": "boolean",
          "description": "- (Optional) Force delete of instance. Default is false\n"
        },
        "forcedInstall": {
          "type": "boolean",
          "description": "forced install. Default:  true\n"
        },
        "nxClusterId": {
          "type": "string",
          "description": "cluster on which NDB is present\n"
        },
        "postgressInfos": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FNdbRegisterDatabasePostgressInfo:NdbRegisterDatabasePostgressInfo"
          },
          "description": "Postgress_Info for registering.\n"
        },
        "remove": {
          "type": "boolean",
          "description": "- (Optional) Unregister the database from NDB. Default value is true\n"
        },
        "resetDescriptionInNxCluster": {
          "type": "boolean",
          "description": "Reset description in cluster\n"
        },
        "softRemove": {
          "type": "boolean",
          "description": "- (Optional) Soft remove. Default will be false\n"
        },
        "tags": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FNdbRegisterDatabaseTag:NdbRegisterDatabaseTag"
          },
          "description": "tags\n"
        },
        "timeMachineInfo": {
          "$ref": "#/types/nutanix:index%2FNdbRegisterDatabaseTimeMachineInfo:NdbRegisterDatabaseTimeMachineInfo",
          "description": "Time Machine info\n",
          "willReplaceOnChanges": true
        },
        "vmDescription": {
          "type": "string",
          "description": "description for VM\n"
        },
        "vmIp": {
          "type": "string",
          "description": "IP address of dbserver VM\n"
        },
        "vmPassword": {
          "type": "string",
          "description": "password of the NDB drive user account.\n",
          "secret": true
        },
        "vmSshkey": {
          "type": "string",
          "description": "ssh key for vm\n",
          "secret": true
        },
        "vmUsername": {
          "type": "string",
          "description": "username of the NDB drive user account that has sudo access.\n"
        },
        "workingDirectory": {
          "type": "string",
          "description": "working directory. Default is /tmp\n"
        }
      },
      "requiredInputs": [
        "databaseName",
        "databaseType",
        "vmIp"
      ],
      "stateInputs": {
        "description": "Input properties used for looking up and filtering NdbRegisterDatabase resources.\n",
        "properties": {
          "actionarguments": {
            "type": "array",
            "items": {
              "$ref": "#/types/nutanix:index%2FNdbRegisterDatabaseActionargument:NdbRegisterDatabaseActionargument"
            },
            "description": "action arguments\n"
          },
          "autoTuneStagingDrive": {
            "type": "boolean",
            "description": "auto tune staging drive. Default is true\n"
          },
          "category": {
            "type": "string",
            "description": "category of database. Default is \"DEFAULT\"\n"
          },
          "clone": {
            "type": "boolean",
            "description": "whether instance is cloned or not\n"
          },
          "clustered": {
            "type": "boolean",
            "description": "clustered or not. Default is false\n"
          },
          "databaseClusterType": {
            "type": "string",
            "description": "database cluster type\n"
          },
          "databaseName": {
            "type": "string",
            "description": "name of database\n"
          },
          "databaseNodes": {
            "type": "array",
            "items": {
              "$ref": "#/types/nutanix:index%2FNdbRegisterDatabaseDatabaseNode:NdbRegisterDatabaseDatabaseNode"
            },
            "description": "database nodes associated with database instance\n"
          },
          "databaseStatus": {
            "type": "string",
            "description": "status of database\n"
          },
          "databaseType": {
            "type": "string",
            "description": "type of database. Required value: postgres_database\n"
          },
          "dateCreated": {
            "type": "string",
            "description": "date created for db instance\n"
          },
          "dateModified": {
            "type": "string",
            "description": "date modified for instance\n"
          },
          "dbserverLogicalCluster": {
            "type": "object",
            "additionalProperties": {
              "type": "string"
            },
            "description": "dbserver logical cluster\n"
          },
          "dbserverLogicalClusterId": {
            "type": "string",
            "description": "dbserver logical cluster id\n"
          },
          "delete": {
            "type": "boolean",
            "description": "- (Optional) Delete the database from the VM. Default value is false\n"
          },
          "deleteLogicalCluster": {
            "type": "boolean",
            "description": "- (Optional) Delete the logical cluster. Default is true\n"
          },
          "deleteTimeMachine": {
            "type": "boolean",
            "description": "- (Optional) Delete the database's Time Machine (snapshots/logs) from the NDB. Default value is true\n"
          },
          "description": {
            "type": "string",
            "description": "description\n"
          },
          "forced": {
            "type": "boolean",
            "description": "- (Optional) Force delete of instance. Default is false\n"
          },
          "forcedInstall": {
            "type": "boolean",
            "description": "forced install. Default:  true\n"
          },
          "groupInfo": {
            "type": "object",
            "additionalProperties": {
              "type": "string"
            }
          },
          "infos": {
            "type": "array",
            "items": {
              "$ref": "#/types/nutanix:index%2FNdbRegisterDatabaseInfo:NdbRegisterDatabaseInfo"
            },
            "description": "info of instance\n"
          },
          "lcmConfigs": {
            "type": "array",
            "items": {
              "$ref": "#/types/nutanix:index%2FNdbRegisterDatabaseLcmConfig:NdbRegisterDatabaseLcmConfig"
            },
            "description": "LCM config of instance\n"
          },
          "linkedDatabases": {
            "type": "array",
            "items": {
              "$ref": "#/types/nutanix:index%2FNdbRegisterDatabaseLinkedDatabase:NdbRegisterDatabaseLinkedDatabase"
            },
            "description": "linked databases within database instance\n"
          },
          "metric": {
            "type": "object",
            "additionalProperties": {
              "type": "string"
            },
            "description": "Stores storage info regarding size, allocatedSize, usedSize and unit of calculation that seems to have been fetched from PRISM.\n"
          },
          "name": {
            "type": "string",
            "description": "Name of database instance\n"
          },
          "nxClusterId": {
            "type": "string",
            "description": "cluster on which NDB is present\n"
          },
          "parentDatabaseId": {
            "type": "string",
            "description": "parent database id\n"
          },
          "parentSourceDatabaseId": {
            "type": "string",
            "description": "parent source database id\n"
          },
          "parentTimeMachineId": {
            "type": "string",
            "description": "parent time machine id\n"
          },
          "postgressInfos": {
            "type": "array",
            "items": {
              "$ref": "#/types/nutanix:index%2FNdbRegisterDatabasePostgressInfo:NdbRegisterDatabasePostgressInfo"
            },
            "description": "Postgress_Info for registering.\n"
          },
          "properties": {
            "type": "array",
            "items": {
              "$ref": "#/types/nutanix:index%2FNdbRegisterDatabaseProperty:NdbRegisterDatabaseProperty"
            },
            "description": "properties of database created\n"
          },
          "remove": {
            "type": "boolean",
            "description": "- (Optional) Unregister the database from NDB. Default value is true\n"
          },
          "resetDescriptionInNxCluster": {
            "type": "boolean",
            "description": "Reset description in cluster\n"
          },
          "softRemove": {
            "type": "boolean",
            "description": "- (Optional) Soft remove. Default will be false\n"
          },
          "status": {
            "type": "string",
            "description": "status of instance\n"
          },
          "tags": {
            "type": "array",
            "items": {
              "$ref": "#/types/nutanix:index%2FNdbRegisterDatabaseTag:NdbRegisterDatabaseTag"
            },
            "description": "tags\n"
          },
          "timeMachineId": {
            "type": "string",
            "description": "time machine id of instance\n"
          },
          "timeMachineInfo": {
            "$ref": "#/types/nutanix:index%2FNdbRegisterDatabaseTimeMachineInfo:NdbRegisterDatabaseTimeMachineInfo",
            "description": "Time Machine info\n",
            "willReplaceOnChanges": true
          },
          "timeMachines": {
            "type": "array",
            "items": {
              "$ref": "#/types/nutanix:index%2FNdbRegisterDatabaseTimeMachine:NdbRegisterDatabaseTimeMachine"
            },
            "description": "Time Machine details of instance\n"
          },
          "timeZone": {
            "type": "string",
            "description": "timezone on which instance is created xw\n"
          },
          "type": {
            "type": "string",
            "description": "type of database\n"
          },
          "vmDescription": {
            "type": "string",
            "description": "description for VM\n"
          },
          "vmIp": {
            "type": "string",
            "description": "IP address of dbserver VM\n"
          },
          "vmPassword": {
            "type": "string",
            "description": "password of the NDB drive user account.\n",
            "secret": true
          },
          "vmSshkey": {
            "type": "string",
            "description": "ssh key for vm\n",
            "secret": true
          },
          "vmUsername": {
            "type": "string",
            "description": "username of the NDB drive user account that has sudo access.\n"
          },
          "workingDirectory": {
            "type": "string",
            "description": "working directory. Default is /tmp\n"
          }
        },
        "type": "object"
      }
    },
    "nutanix:index/ndbRegisterDbserver:NdbRegisterDbserver": {
      "description": "Provides a resource to register database server VMs based on the input parameters. For 1.8.0 release, only postgress database type is qualified and officially supported.\n\n",
      "properties": {
        "clientId": {
          "type": "string"
        },
        "credentials": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FNdbRegisterDbserverCredential:NdbRegisterDbserverCredential"
          }
        },
        "databaseType": {
          "type": "string",
          "description": "database type i.e. postgres_database\n"
        },
        "dbserverClusterId": {
          "type": "string"
        },
        "delete": {
          "type": "boolean",
          "description": "- (Optional) Delete the VM and associated storage. Default value is false\n"
        },
        "deleteVgs": {
          "type": "boolean",
          "description": "- (Optional) Delete volume grous. Default value is true\n"
        },
        "deleteVmSnapshots": {
          "type": "boolean",
          "description": "- (Optional) Delete the vm snapshots. Default is true\n"
        },
        "description": {
          "type": "string",
          "description": "description of db server vm. Should be used in update Method only .\n"
        },
        "eraCreated": {
          "type": "boolean"
        },
        "eraDriveId": {
          "type": "string"
        },
        "eraVersion": {
          "type": "string"
        },
        "forcedInstall": {
          "type": "boolean",
          "description": "forced install the packages. Default is true\n"
        },
        "fqdns": {
          "type": "string"
        },
        "internal": {
          "type": "boolean"
        },
        "ipAddresses": {
          "type": "array",
          "items": {
            "type": "string"
          }
        },
        "macAddresses": {
          "type": "array",
          "items": {
            "type": "string"
          }
        },
        "name": {
          "type": "string",
          "description": "Name of db server vm. Should be used in Update Method only.\n"
        },
        "nxclusterId": {
          "type": "string",
          "description": "cluster on which you want to register the database server VM.\n"
        },
        "password": {
          "type": "string",
          "description": "password of the NDB drive user account. Conflicts with ssh_key.\n",
          "secret": true
        },
        "postgresDatabases": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FNdbRegisterDbserverPostgresDatabase:NdbRegisterDbserverPostgresDatabase"
          },
          "description": "postgres info for dbserver\n"
        },
        "properties": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FNdbRegisterDbserverProperty:NdbRegisterDbserverProperty"
          },
          "description": "List of all the properties"
        },
        "remove": {
          "type": "boolean",
          "description": "- (Optional) Unregister the database from NDB. Default value is true\n"
        },
        "softRemove": {
          "type": "boolean",
          "description": "- (Optional) Soft remove. Default will be false\n"
        },
        "sshKey": {
          "type": "string",
          "description": "the private key. Conflicts with password.\n",
          "secret": true
        },
        "status": {
          "type": "string"
        },
        "tags": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FNdbRegisterDbserverTag:NdbRegisterDbserverTag"
          }
        },
        "type": {
          "type": "string"
        },
        "updateNameDescriptionInCluster": {
          "type": "boolean",
          "description": "Updates the name and description in cluster. Should be used in Update Method only.\n"
        },
        "username": {
          "type": "string",
          "description": "username of the NDB drive user account that has sudo access\n"
        },
        "vmClusterName": {
          "type": "string"
        },
        "vmClusterUuid": {
          "type": "string"
        },
        "vmIp": {
          "type": "string",
          "description": "IP address of the database server VM\n"
        },
        "vmTimezone": {
          "type": "string"
        },
        "workingDirectory": {
          "type": "string",
          "description": "working directory of postgres. Default is \"/tmp\"\n"
        }
      },
      "type": "object",
      "required": [
        "clientId",
        "databaseType",
        "dbserverClusterId",
        "description",
        "eraCreated",
        "eraDriveId",
        "eraVersion",
        "fqdns",
        "internal",
        "ipAddresses",
        "macAddresses",
        "name",
        "properties",
        "status",
        "tags",
        "type",
        "vmClusterName",
        "vmClusterUuid",
        "vmIp",
        "vmTimezone"
      ],
      "inputProperties": {
        "credentials": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FNdbRegisterDbserverCredential:NdbRegisterDbserverCredential"
          }
        },
        "databaseType": {
          "type": "string",
          "description": "database type i.e. postgres_database\n"
        },
        "delete": {
          "type": "boolean",
          "description": "- (Optional) Delete the VM and associated storage. Default value is false\n"
        },
        "deleteVgs": {
          "type": "boolean",
          "description": "- (Optional) Delete volume grous. Default value is true\n"
        },
        "deleteVmSnapshots": {
          "type": "boolean",
          "description": "- (Optional) Delete the vm snapshots. Default is true\n"
        },
        "description": {
          "type": "string",
          "description": "description of db server vm. Should be used in update Method only .\n"
        },
        "forcedInstall": {
          "type": "boolean",
          "description": "forced install the packages. Default is true\n"
        },
        "name": {
          "type": "string",
          "description": "Name of db server vm. Should be used in Update Method only.\n"
        },
        "nxclusterId": {
          "type": "string",
          "description": "cluster on which you want to register the database server VM.\n"
        },
        "password": {
          "type": "string",
          "description": "password of the NDB drive user account. Conflicts with ssh_key.\n",
          "secret": true
        },
        "postgresDatabases": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FNdbRegisterDbserverPostgresDatabase:NdbRegisterDbserverPostgresDatabase"
          },
          "description": "postgres info for dbserver\n"
        },
        "remove": {
          "type": "boolean",
          "description": "- (Optional) Unregister the database from NDB. Default value is true\n"
        },
        "softRemove": {
          "type": "boolean",
          "description": "- (Optional) Soft remove. Default will be false\n"
        },
        "sshKey": {
          "type": "string",
          "description": "the private key. Conflicts with password.\n",
          "secret": true
        },
        "tags": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FNdbRegisterDbserverTag:NdbRegisterDbserverTag"
          }
        },
        "updateNameDescriptionInCluster": {
          "type": "boolean",
          "description": "Updates the name and description in cluster. Should be used in Update Method only.\n"
        },
        "username": {
          "type": "string",
          "description": "username of the NDB drive user account that has sudo access\n"
        },
        "vmIp": {
          "type": "string",
          "description": "IP address of the database server VM\n"
        },
        "workingDirectory": {
          "type": "string",
          "description": "working directory of postgres. Default is \"/tmp\"\n"
        }
      },
      "requiredInputs": [
        "databaseType",
        "vmIp"
      ],
      "stateInputs": {
        "description": "Input properties used for looking up and filtering NdbRegisterDbserver resources.\n",
        "properties": {
          "clientId": {
            "type": "string"
          },
          "credentials": {
            "type": "array",
            "items": {
              "$ref": "#/types/nutanix:index%2FNdbRegisterDbserverCredential:NdbRegisterDbserverCredential"
            }
          },
          "databaseType": {
            "type": "string",
            "description": "database type i.e. postgres_database\n"
          },
          "dbserverClusterId": {
            "type": "string"
          },
          "delete": {
            "type": "boolean",
            "description": "- (Optional) Delete the VM and associated storage. Default value is false\n"
          },
          "deleteVgs": {
            "type": "boolean",
            "description": "- (Optional) Delete volume grous. Default value is true\n"
          },
          "deleteVmSnapshots": {
            "type": "boolean",
            "description": "- (Optional) Delete the vm snapshots. Default is true\n"
          },
          "description": {
            "type": "string",
            "description": "description of db server vm. Should be used in update Method only .\n"
          },
          "eraCreated": {
            "type": "boolean"
          },
          "eraDriveId": {
            "type": "string"
          },
          "eraVersion": {
            "type": "string"
          },
          "forcedInstall": {
            "type": "boolean",
            "description": "forced install the packages. Default is true\n"
          },
          "fqdns": {
            "type": "string"
          },
          "internal": {
            "type": "boolean"
          },
          "ipAddresses": {
            "type": "array",
            "items": {
              "type": "string"
            }
          },
          "macAddresses": {
            "type": "array",
            "items": {
              "type": "string"
            }
          },
          "name": {
            "type": "string",
            "description": "Name of db server vm. Should be used in Update Method only.\n"
          },
          "nxclusterId": {
            "type": "string",
            "description": "cluster on which you want to register the database server VM.\n"
          },
          "password": {
            "type": "string",
            "description": "password of the NDB drive user account. Conflicts with ssh_key.\n",
            "secret": true
          },
          "postgresDatabases": {
            "type": "array",
            "items": {
              "$ref": "#/types/nutanix:index%2FNdbRegisterDbserverPostgresDatabase:NdbRegisterDbserverPostgresDatabase"
            },
            "description": "postgres info for dbserver\n"
          },
          "properties": {
            "type": "array",
            "items": {
              "$ref": "#/types/nutanix:index%2FNdbRegisterDbserverProperty:NdbRegisterDbserverProperty"
            },
            "description": "List of all the properties"
          },
          "remove": {
            "type": "boolean",
            "description": "- (Optional) Unregister the database from NDB. Default value is true\n"
          },
          "softRemove": {
            "type": "boolean",
            "description": "- (Optional) Soft remove. Default will be false\n"
          },
          "sshKey": {
            "type": "string",
            "description": "the private key. Conflicts with password.\n",
            "secret": true
          },
          "status": {
            "type": "string"
          },
          "tags": {
            "type": "array",
            "items": {
              "$ref": "#/types/nutanix:index%2FNdbRegisterDbserverTag:NdbRegisterDbserverTag"
            }
          },
          "type": {
            "type": "string"
          },
          "updateNameDescriptionInCluster": {
            "type": "boolean",
            "description": "Updates the name and description in cluster. Should be used in Update Method only.\n"
          },
          "username": {
            "type": "string",
            "description": "username of the NDB drive user account that has sudo access\n"
          },
          "vmClusterName": {
            "type": "string"
          },
          "vmClusterUuid": {
            "type": "string"
          },
          "vmIp": {
            "type": "string",
            "description": "IP address of the database server VM\n"
          },
          "vmTimezone": {
            "type": "string"
          },
          "workingDirectory": {
            "type": "string",
            "description": "working directory of postgres. Default is \"/tmp\"\n"
          }
        },
        "type": "object"
      }
    },
    "nutanix:index/ndbScaleDatabase:NdbScaleDatabase": {
      "description": "Provides a resource to scale the database instance based on the input parameters. \n\n## Example Usage\n\n<!--Start PulumiCodeChooser -->\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as nutanix from \"@pierskarsenbarg/nutanix\";\n\n// resource to scale the database\nconst scale = new nutanix.NdbDatabaseScale(\"scale\", {\n    applicationType: \"{{ Application Type }}\",\n    databaseUuid: \"{{ database_id }}\",\n    dataStorageSize: 1,\n});\n```\n```python\nimport pulumi\nimport pulumi_nutanix as nutanix\n\n# resource to scale the database\nscale = nutanix.NdbDatabaseScale(\"scale\",\n    application_type=\"{{ Application Type }}\",\n    database_uuid=\"{{ database_id }}\",\n    data_storage_size=1)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Nutanix = PiersKarsenbarg.Nutanix;\n\nreturn await Deployment.RunAsync(() => \n{\n    // resource to scale the database\n    var scale = new Nutanix.NdbDatabaseScale(\"scale\", new()\n    {\n        ApplicationType = \"{{ Application Type }}\",\n        DatabaseUuid = \"{{ database_id }}\",\n        DataStorageSize = 1,\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pierskarsenbarg/pulumi-nutanix/sdk/go/nutanix\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t// resource to scale the database\n\t\t_, err := nutanix.NewNdbDatabaseScale(ctx, \"scale\", &nutanix.NdbDatabaseScaleArgs{\n\t\t\tApplicationType: pulumi.String(\"{{ Application Type }}\"),\n\t\t\tDatabaseUuid:    pulumi.String(\"{{ database_id }}\"),\n\t\t\tDataStorageSize: pulumi.Int(1),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.nutanix.NdbDatabaseScale;\nimport com.pulumi.nutanix.NdbDatabaseScaleArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        // resource to scale the database\n        var scale = new NdbDatabaseScale(\"scale\", NdbDatabaseScaleArgs.builder()\n            .applicationType(\"{{ Application Type }}\")\n            .databaseUuid(\"{{ database_id }}\")\n            .dataStorageSize(1)\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  # resource to scale the database\n  scale:\n    type: nutanix:NdbDatabaseScale\n    properties:\n      applicationType: '{{ Application Type }}'\n      databaseUuid: '{{ database_id }}'\n      dataStorageSize: 1\n```\n<!--End PulumiCodeChooser -->\n",
      "properties": {
        "applicationType": {
          "type": "string",
          "description": "type of instance. eg: postgres_database\n"
        },
        "clone": {
          "type": "boolean",
          "description": "whether instance is cloned or not\n"
        },
        "dataStorageSize": {
          "type": "integer",
          "description": "data area (in GiB) to be added to the existing database.\n"
        },
        "databaseClusterType": {
          "type": "string",
          "description": "database cluster type\n"
        },
        "databaseInstanceId": {
          "type": "string"
        },
        "databaseName": {
          "type": "string",
          "description": "name of database\n"
        },
        "databaseNodes": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FNdbScaleDatabaseDatabaseNode:NdbScaleDatabaseDatabaseNode"
          },
          "description": "database nodes associated with database instance\n"
        },
        "databaseUuid": {
          "type": "string",
          "description": "Database id\n"
        },
        "databasetype": {
          "type": "string",
          "description": "type of database\n"
        },
        "dateCreated": {
          "type": "string",
          "description": "date created for db instance\n"
        },
        "dateModified": {
          "type": "string",
          "description": "date modified for instance\n"
        },
        "dbserverLogicalCluster": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          },
          "description": "dbserver logical cluster\n"
        },
        "dbserverLogicalClusterId": {
          "type": "string",
          "description": "dbserver logical cluster id\n"
        },
        "description": {
          "type": "string",
          "description": "description of database instance\n"
        },
        "infos": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FNdbScaleDatabaseInfo:NdbScaleDatabaseInfo"
          },
          "description": "info of instance\n"
        },
        "lcmConfigs": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FNdbScaleDatabaseLcmConfig:NdbScaleDatabaseLcmConfig"
          },
          "description": "LCM config of instance\n"
        },
        "linkedDatabases": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FNdbScaleDatabaseLinkedDatabase:NdbScaleDatabaseLinkedDatabase"
          },
          "description": "linked databases within database instance\n"
        },
        "metric": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          },
          "description": "Stores storage info regarding size, allocatedSize, usedSize and unit of calculation that seems to have been fetched from PRISM.\n"
        },
        "name": {
          "type": "string",
          "description": "Name of database instance\n"
        },
        "parentDatabaseId": {
          "type": "string",
          "description": "parent database id\n"
        },
        "parentSourceDatabaseId": {
          "type": "string"
        },
        "postScriptCmd": {
          "type": "string",
          "description": "post script command\n"
        },
        "preScriptCmd": {
          "type": "string",
          "description": "pre script command\n"
        },
        "properties": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FNdbScaleDatabaseProperty:NdbScaleDatabaseProperty"
          },
          "description": "properties of database created\n"
        },
        "scaleCount": {
          "type": "integer",
          "description": "scale count helps to scale the same instance with same config\n"
        },
        "status": {
          "type": "string",
          "description": "status of instance\n"
        },
        "tags": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FNdbScaleDatabaseTag:NdbScaleDatabaseTag"
          },
          "description": "allows you to assign metadata to entities (clones, time machines, databases, and database servers) by using tags.\n"
        },
        "timeMachineId": {
          "type": "string",
          "description": "time machine id of instance\n"
        },
        "timeMachines": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FNdbScaleDatabaseTimeMachine:NdbScaleDatabaseTimeMachine"
          },
          "description": "Time Machine details of instance\n"
        },
        "timeZone": {
          "type": "string",
          "description": "timezone on which instance is created xw\n"
        },
        "type": {
          "type": "string",
          "description": "type of database\n"
        }
      },
      "type": "object",
      "required": [
        "applicationType",
        "clone",
        "dataStorageSize",
        "databaseClusterType",
        "databaseInstanceId",
        "databaseName",
        "databaseNodes",
        "databaseUuid",
        "databasetype",
        "dateCreated",
        "dateModified",
        "dbserverLogicalCluster",
        "dbserverLogicalClusterId",
        "description",
        "infos",
        "lcmConfigs",
        "linkedDatabases",
        "metric",
        "name",
        "parentDatabaseId",
        "parentSourceDatabaseId",
        "properties",
        "status",
        "tags",
        "timeMachineId",
        "timeMachines",
        "timeZone",
        "type"
      ],
      "inputProperties": {
        "applicationType": {
          "type": "string",
          "description": "type of instance. eg: postgres_database\n"
        },
        "dataStorageSize": {
          "type": "integer",
          "description": "data area (in GiB) to be added to the existing database.\n"
        },
        "databaseUuid": {
          "type": "string",
          "description": "Database id\n"
        },
        "postScriptCmd": {
          "type": "string",
          "description": "post script command\n"
        },
        "preScriptCmd": {
          "type": "string",
          "description": "pre script command\n"
        },
        "scaleCount": {
          "type": "integer",
          "description": "scale count helps to scale the same instance with same config\n"
        },
        "tags": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FNdbScaleDatabaseTag:NdbScaleDatabaseTag"
          },
          "description": "allows you to assign metadata to entities (clones, time machines, databases, and database servers) by using tags.\n"
        }
      },
      "requiredInputs": [
        "applicationType",
        "dataStorageSize",
        "databaseUuid"
      ],
      "stateInputs": {
        "description": "Input properties used for looking up and filtering NdbScaleDatabase resources.\n",
        "properties": {
          "applicationType": {
            "type": "string",
            "description": "type of instance. eg: postgres_database\n"
          },
          "clone": {
            "type": "boolean",
            "description": "whether instance is cloned or not\n"
          },
          "dataStorageSize": {
            "type": "integer",
            "description": "data area (in GiB) to be added to the existing database.\n"
          },
          "databaseClusterType": {
            "type": "string",
            "description": "database cluster type\n"
          },
          "databaseInstanceId": {
            "type": "string"
          },
          "databaseName": {
            "type": "string",
            "description": "name of database\n"
          },
          "databaseNodes": {
            "type": "array",
            "items": {
              "$ref": "#/types/nutanix:index%2FNdbScaleDatabaseDatabaseNode:NdbScaleDatabaseDatabaseNode"
            },
            "description": "database nodes associated with database instance\n"
          },
          "databaseUuid": {
            "type": "string",
            "description": "Database id\n"
          },
          "databasetype": {
            "type": "string",
            "description": "type of database\n"
          },
          "dateCreated": {
            "type": "string",
            "description": "date created for db instance\n"
          },
          "dateModified": {
            "type": "string",
            "description": "date modified for instance\n"
          },
          "dbserverLogicalCluster": {
            "type": "object",
            "additionalProperties": {
              "type": "string"
            },
            "description": "dbserver logical cluster\n"
          },
          "dbserverLogicalClusterId": {
            "type": "string",
            "description": "dbserver logical cluster id\n"
          },
          "description": {
            "type": "string",
            "description": "description of database instance\n"
          },
          "infos": {
            "type": "array",
            "items": {
              "$ref": "#/types/nutanix:index%2FNdbScaleDatabaseInfo:NdbScaleDatabaseInfo"
            },
            "description": "info of instance\n"
          },
          "lcmConfigs": {
            "type": "array",
            "items": {
              "$ref": "#/types/nutanix:index%2FNdbScaleDatabaseLcmConfig:NdbScaleDatabaseLcmConfig"
            },
            "description": "LCM config of instance\n"
          },
          "linkedDatabases": {
            "type": "array",
            "items": {
              "$ref": "#/types/nutanix:index%2FNdbScaleDatabaseLinkedDatabase:NdbScaleDatabaseLinkedDatabase"
            },
            "description": "linked databases within database instance\n"
          },
          "metric": {
            "type": "object",
            "additionalProperties": {
              "type": "string"
            },
            "description": "Stores storage info regarding size, allocatedSize, usedSize and unit of calculation that seems to have been fetched from PRISM.\n"
          },
          "name": {
            "type": "string",
            "description": "Name of database instance\n"
          },
          "parentDatabaseId": {
            "type": "string",
            "description": "parent database id\n"
          },
          "parentSourceDatabaseId": {
            "type": "string"
          },
          "postScriptCmd": {
            "type": "string",
            "description": "post script command\n"
          },
          "preScriptCmd": {
            "type": "string",
            "description": "pre script command\n"
          },
          "properties": {
            "type": "array",
            "items": {
              "$ref": "#/types/nutanix:index%2FNdbScaleDatabaseProperty:NdbScaleDatabaseProperty"
            },
            "description": "properties of database created\n"
          },
          "scaleCount": {
            "type": "integer",
            "description": "scale count helps to scale the same instance with same config\n"
          },
          "status": {
            "type": "string",
            "description": "status of instance\n"
          },
          "tags": {
            "type": "array",
            "items": {
              "$ref": "#/types/nutanix:index%2FNdbScaleDatabaseTag:NdbScaleDatabaseTag"
            },
            "description": "allows you to assign metadata to entities (clones, time machines, databases, and database servers) by using tags.\n"
          },
          "timeMachineId": {
            "type": "string",
            "description": "time machine id of instance\n"
          },
          "timeMachines": {
            "type": "array",
            "items": {
              "$ref": "#/types/nutanix:index%2FNdbScaleDatabaseTimeMachine:NdbScaleDatabaseTimeMachine"
            },
            "description": "Time Machine details of instance\n"
          },
          "timeZone": {
            "type": "string",
            "description": "timezone on which instance is created xw\n"
          },
          "type": {
            "type": "string",
            "description": "type of database\n"
          }
        },
        "type": "object"
      }
    },
    "nutanix:index/ndbSla:NdbSla": {
      "description": "Provides a resource to create SLAs based on the input parameters. \n\n## Example Usage\n\n<!--Start PulumiCodeChooser -->\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as nutanix from \"@pierskarsenbarg/nutanix\";\n\nconst sla = new nutanix.NdbSla(\"sla\", {\n    name: \"test-sla\",\n    description: \"here goes description\",\n    continuousRetention: 30,\n    dailyRetention: 3,\n    weeklyRetention: 2,\n    monthlyRetention: 1,\n    quarterlyRetention: 1,\n});\n```\n```python\nimport pulumi\nimport pulumi_nutanix as nutanix\n\nsla = nutanix.NdbSla(\"sla\",\n    name=\"test-sla\",\n    description=\"here goes description\",\n    continuous_retention=30,\n    daily_retention=3,\n    weekly_retention=2,\n    monthly_retention=1,\n    quarterly_retention=1)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Nutanix = PiersKarsenbarg.Nutanix;\n\nreturn await Deployment.RunAsync(() => \n{\n    var sla = new Nutanix.NdbSla(\"sla\", new()\n    {\n        Name = \"test-sla\",\n        Description = \"here goes description\",\n        ContinuousRetention = 30,\n        DailyRetention = 3,\n        WeeklyRetention = 2,\n        MonthlyRetention = 1,\n        QuarterlyRetention = 1,\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pierskarsenbarg/pulumi-nutanix/sdk/go/nutanix\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := nutanix.NewNdbSla(ctx, \"sla\", &nutanix.NdbSlaArgs{\n\t\t\tName:                pulumi.String(\"test-sla\"),\n\t\t\tDescription:         pulumi.String(\"here goes description\"),\n\t\t\tContinuousRetention: pulumi.Int(30),\n\t\t\tDailyRetention:      pulumi.Int(3),\n\t\t\tWeeklyRetention:     pulumi.Int(2),\n\t\t\tMonthlyRetention:    pulumi.Int(1),\n\t\t\tQuarterlyRetention:  pulumi.Int(1),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.nutanix.NdbSla;\nimport com.pulumi.nutanix.NdbSlaArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var sla = new NdbSla(\"sla\", NdbSlaArgs.builder()\n            .name(\"test-sla\")\n            .description(\"here goes description\")\n            .continuousRetention(30)\n            .dailyRetention(3)\n            .weeklyRetention(2)\n            .monthlyRetention(1)\n            .quarterlyRetention(1)\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  sla:\n    type: nutanix:NdbSla\n    properties:\n      name: test-sla\n      description: here goes description\n      continuousRetention: 30\n      dailyRetention: 3\n      weeklyRetention: 2\n      monthlyRetention: 1\n      quarterlyRetention: 1\n```\n<!--End PulumiCodeChooser -->\n",
      "properties": {
        "continuousRetention": {
          "type": "integer",
          "description": "Duration in days for which transaction logs are retained in NDB.\n"
        },
        "currentActiveFrequency": {
          "type": "string",
          "description": "slas current frequency\n"
        },
        "dailyRetention": {
          "type": "integer",
          "description": "Duration in days for which a daily snapshot must be retained in NDB.\n"
        },
        "dateCreated": {
          "type": "string",
          "description": "sla created data\n"
        },
        "dateModified": {
          "type": "string",
          "description": "sla last modified date\n"
        },
        "description": {
          "type": "string",
          "description": "Description of profile\n"
        },
        "monthlyRetention": {
          "type": "integer",
          "description": "Duration in months for which a monthly snapshot must be retained in NDB\n"
        },
        "name": {
          "type": "string",
          "description": "Name of profile\n"
        },
        "ownerId": {
          "type": "string",
          "description": "owner id\n"
        },
        "pitrEnabled": {
          "type": "boolean",
          "description": "pitr enabled\n"
        },
        "quarterlyRetention": {
          "type": "integer",
          "description": "Duration in number of quarters for which a quarterly snapshot must be retained in NDB.\n"
        },
        "referenceCount": {
          "type": "integer",
          "description": "reference count\n"
        },
        "systemSla": {
          "type": "boolean",
          "description": "refers whether sla is custom or built-in\n"
        },
        "uniqueName": {
          "type": "string",
          "description": "name of sla\n"
        },
        "weeklyRetention": {
          "type": "integer",
          "description": "Duration in weeks for which a weekly snapshot must be retained in NDB.\n"
        },
        "yearlyRetention": {
          "type": "integer",
          "description": "Not supported as of now.\n"
        }
      },
      "type": "object",
      "required": [
        "currentActiveFrequency",
        "dateCreated",
        "dateModified",
        "name",
        "ownerId",
        "pitrEnabled",
        "referenceCount",
        "systemSla",
        "uniqueName",
        "yearlyRetention"
      ],
      "inputProperties": {
        "continuousRetention": {
          "type": "integer",
          "description": "Duration in days for which transaction logs are retained in NDB.\n"
        },
        "dailyRetention": {
          "type": "integer",
          "description": "Duration in days for which a daily snapshot must be retained in NDB.\n"
        },
        "description": {
          "type": "string",
          "description": "Description of profile\n"
        },
        "monthlyRetention": {
          "type": "integer",
          "description": "Duration in months for which a monthly snapshot must be retained in NDB\n"
        },
        "name": {
          "type": "string",
          "description": "Name of profile\n"
        },
        "quarterlyRetention": {
          "type": "integer",
          "description": "Duration in number of quarters for which a quarterly snapshot must be retained in NDB.\n"
        },
        "weeklyRetention": {
          "type": "integer",
          "description": "Duration in weeks for which a weekly snapshot must be retained in NDB.\n"
        },
        "yearlyRetention": {
          "type": "integer",
          "description": "Not supported as of now.\n"
        }
      },
      "stateInputs": {
        "description": "Input properties used for looking up and filtering NdbSla resources.\n",
        "properties": {
          "continuousRetention": {
            "type": "integer",
            "description": "Duration in days for which transaction logs are retained in NDB.\n"
          },
          "currentActiveFrequency": {
            "type": "string",
            "description": "slas current frequency\n"
          },
          "dailyRetention": {
            "type": "integer",
            "description": "Duration in days for which a daily snapshot must be retained in NDB.\n"
          },
          "dateCreated": {
            "type": "string",
            "description": "sla created data\n"
          },
          "dateModified": {
            "type": "string",
            "description": "sla last modified date\n"
          },
          "description": {
            "type": "string",
            "description": "Description of profile\n"
          },
          "monthlyRetention": {
            "type": "integer",
            "description": "Duration in months for which a monthly snapshot must be retained in NDB\n"
          },
          "name": {
            "type": "string",
            "description": "Name of profile\n"
          },
          "ownerId": {
            "type": "string",
            "description": "owner id\n"
          },
          "pitrEnabled": {
            "type": "boolean",
            "description": "pitr enabled\n"
          },
          "quarterlyRetention": {
            "type": "integer",
            "description": "Duration in number of quarters for which a quarterly snapshot must be retained in NDB.\n"
          },
          "referenceCount": {
            "type": "integer",
            "description": "reference count\n"
          },
          "systemSla": {
            "type": "boolean",
            "description": "refers whether sla is custom or built-in\n"
          },
          "uniqueName": {
            "type": "string",
            "description": "name of sla\n"
          },
          "weeklyRetention": {
            "type": "integer",
            "description": "Duration in weeks for which a weekly snapshot must be retained in NDB.\n"
          },
          "yearlyRetention": {
            "type": "integer",
            "description": "Not supported as of now.\n"
          }
        },
        "type": "object"
      }
    },
    "nutanix:index/ndbSoftwareVersionProfile:NdbSoftwareVersionProfile": {
      "description": "Provides a resource to create software profile versions based on the input parameters. \n\n## Example Usage\n\n<!--Start PulumiCodeChooser -->\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as nutanix from \"@pierskarsenbarg/nutanix\";\n\nconst name = new nutanix.NdbSoftwareVersionProfile(\"name\", {\n    engineType: \"postgres_database\",\n    profileId: nutanixNdbProfile.name12.id,\n    name: \"test-tf\",\n    description: \"made  by tf\",\n    postgresDatabases: [{\n        sourceDbserverId: \"{{ DB_Server_ID }}\",\n    }],\n    availableClusterIds: [\"{{ cluster_ids }}\"],\n    status: \"published\",\n});\n```\n```python\nimport pulumi\nimport pulumi_nutanix as nutanix\n\nname = nutanix.NdbSoftwareVersionProfile(\"name\",\n    engine_type=\"postgres_database\",\n    profile_id=nutanix_ndb_profile[\"name12\"][\"id\"],\n    name=\"test-tf\",\n    description=\"made  by tf\",\n    postgres_databases=[{\n        \"source_dbserver_id\": \"{{ DB_Server_ID }}\",\n    }],\n    available_cluster_ids=[\"{{ cluster_ids }}\"],\n    status=\"published\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Nutanix = PiersKarsenbarg.Nutanix;\n\nreturn await Deployment.RunAsync(() => \n{\n    var name = new Nutanix.NdbSoftwareVersionProfile(\"name\", new()\n    {\n        EngineType = \"postgres_database\",\n        ProfileId = nutanixNdbProfile.Name12.Id,\n        Name = \"test-tf\",\n        Description = \"made  by tf\",\n        PostgresDatabases = new[]\n        {\n            new Nutanix.Inputs.NdbSoftwareVersionProfilePostgresDatabaseArgs\n            {\n                SourceDbserverId = \"{{ DB_Server_ID }}\",\n            },\n        },\n        AvailableClusterIds = new[]\n        {\n            \"{{ cluster_ids }}\",\n        },\n        Status = \"published\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pierskarsenbarg/pulumi-nutanix/sdk/go/nutanix\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := nutanix.NewNdbSoftwareVersionProfile(ctx, \"name\", &nutanix.NdbSoftwareVersionProfileArgs{\n\t\t\tEngineType:  pulumi.String(\"postgres_database\"),\n\t\t\tProfileId:   pulumi.Any(nutanixNdbProfile.Name12.Id),\n\t\t\tName:        pulumi.String(\"test-tf\"),\n\t\t\tDescription: pulumi.String(\"made  by tf\"),\n\t\t\tPostgresDatabases: nutanix.NdbSoftwareVersionProfilePostgresDatabaseArray{\n\t\t\t\t&nutanix.NdbSoftwareVersionProfilePostgresDatabaseArgs{\n\t\t\t\t\tSourceDbserverId: pulumi.String(\"{{ DB_Server_ID }}\"),\n\t\t\t\t},\n\t\t\t},\n\t\t\tAvailableClusterIds: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"{{ cluster_ids }}\"),\n\t\t\t},\n\t\t\tStatus: pulumi.String(\"published\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.nutanix.NdbSoftwareVersionProfile;\nimport com.pulumi.nutanix.NdbSoftwareVersionProfileArgs;\nimport com.pulumi.nutanix.inputs.NdbSoftwareVersionProfilePostgresDatabaseArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var name = new NdbSoftwareVersionProfile(\"name\", NdbSoftwareVersionProfileArgs.builder()\n            .engineType(\"postgres_database\")\n            .profileId(nutanixNdbProfile.name12().id())\n            .name(\"test-tf\")\n            .description(\"made  by tf\")\n            .postgresDatabases(NdbSoftwareVersionProfilePostgresDatabaseArgs.builder()\n                .sourceDbserverId(\"{{ DB_Server_ID }}\")\n                .build())\n            .availableClusterIds(\"{{ cluster_ids }}\")\n            .status(\"published\")\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  name:\n    type: nutanix:NdbSoftwareVersionProfile\n    properties:\n      engineType: postgres_database\n      profileId: ${nutanixNdbProfile.name12.id}\n      name: test-tf\n      description: made  by tf\n      postgresDatabases:\n        - sourceDbserverId: '{{ DB_Server_ID }}'\n      availableClusterIds:\n        - '{{ cluster_ids }}'\n      status: published\n```\n<!--End PulumiCodeChooser -->\n",
      "properties": {
        "availableClusterIds": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "available cluster ids\n"
        },
        "dbVersion": {
          "type": "string",
          "description": "Db version of software profile\n"
        },
        "deprecated": {
          "type": "boolean",
          "description": "deprecated or not\n"
        },
        "description": {
          "type": "string",
          "description": "description of profile\n"
        },
        "engineType": {
          "type": "string",
          "description": "engine type of profile\n"
        },
        "name": {
          "type": "string",
          "description": "Name of profile\n"
        },
        "owner": {
          "type": "string",
          "description": "owner  of profile\n"
        },
        "postgresDatabases": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FNdbSoftwareVersionProfilePostgresDatabase:NdbSoftwareVersionProfilePostgresDatabase"
          },
          "description": "postgres database info\n"
        },
        "profileId": {
          "type": "string",
          "description": "profile id\n"
        },
        "properties": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FNdbSoftwareVersionProfileProperty:NdbSoftwareVersionProfileProperty"
          },
          "description": "properties of software profile\n"
        },
        "propertiesMap": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          },
          "description": "properties map of profile\n"
        },
        "published": {
          "type": "boolean",
          "description": "Published or not\n"
        },
        "status": {
          "type": "string",
          "description": "status of profile. Allowed Values are \"deprecated\", \"published\", \"unpublished\"\n"
        },
        "systemProfile": {
          "type": "boolean",
          "description": "system profile or not.\n"
        },
        "topology": {
          "type": "string",
          "description": "topology of software profile\n"
        },
        "version": {
          "type": "string",
          "description": "Version of software profile\n"
        },
        "versionClusterAssociations": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FNdbSoftwareVersionProfileVersionClusterAssociation:NdbSoftwareVersionProfileVersionClusterAssociation"
          },
          "description": "version cluster association\n"
        }
      },
      "type": "object",
      "required": [
        "dbVersion",
        "deprecated",
        "engineType",
        "name",
        "owner",
        "profileId",
        "properties",
        "propertiesMap",
        "published",
        "systemProfile",
        "topology",
        "version",
        "versionClusterAssociations"
      ],
      "inputProperties": {
        "availableClusterIds": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "available cluster ids\n"
        },
        "description": {
          "type": "string",
          "description": "description of profile\n"
        },
        "engineType": {
          "type": "string",
          "description": "engine type of profile\n"
        },
        "name": {
          "type": "string",
          "description": "Name of profile\n"
        },
        "postgresDatabases": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FNdbSoftwareVersionProfilePostgresDatabase:NdbSoftwareVersionProfilePostgresDatabase"
          },
          "description": "postgres database info\n"
        },
        "profileId": {
          "type": "string",
          "description": "profile id\n"
        },
        "status": {
          "type": "string",
          "description": "status of profile. Allowed Values are \"deprecated\", \"published\", \"unpublished\"\n"
        }
      },
      "requiredInputs": [
        "engineType",
        "profileId"
      ],
      "stateInputs": {
        "description": "Input properties used for looking up and filtering NdbSoftwareVersionProfile resources.\n",
        "properties": {
          "availableClusterIds": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "description": "available cluster ids\n"
          },
          "dbVersion": {
            "type": "string",
            "description": "Db version of software profile\n"
          },
          "deprecated": {
            "type": "boolean",
            "description": "deprecated or not\n"
          },
          "description": {
            "type": "string",
            "description": "description of profile\n"
          },
          "engineType": {
            "type": "string",
            "description": "engine type of profile\n"
          },
          "name": {
            "type": "string",
            "description": "Name of profile\n"
          },
          "owner": {
            "type": "string",
            "description": "owner  of profile\n"
          },
          "postgresDatabases": {
            "type": "array",
            "items": {
              "$ref": "#/types/nutanix:index%2FNdbSoftwareVersionProfilePostgresDatabase:NdbSoftwareVersionProfilePostgresDatabase"
            },
            "description": "postgres database info\n"
          },
          "profileId": {
            "type": "string",
            "description": "profile id\n"
          },
          "properties": {
            "type": "array",
            "items": {
              "$ref": "#/types/nutanix:index%2FNdbSoftwareVersionProfileProperty:NdbSoftwareVersionProfileProperty"
            },
            "description": "properties of software profile\n"
          },
          "propertiesMap": {
            "type": "object",
            "additionalProperties": {
              "type": "string"
            },
            "description": "properties map of profile\n"
          },
          "published": {
            "type": "boolean",
            "description": "Published or not\n"
          },
          "status": {
            "type": "string",
            "description": "status of profile. Allowed Values are \"deprecated\", \"published\", \"unpublished\"\n"
          },
          "systemProfile": {
            "type": "boolean",
            "description": "system profile or not.\n"
          },
          "topology": {
            "type": "string",
            "description": "topology of software profile\n"
          },
          "version": {
            "type": "string",
            "description": "Version of software profile\n"
          },
          "versionClusterAssociations": {
            "type": "array",
            "items": {
              "$ref": "#/types/nutanix:index%2FNdbSoftwareVersionProfileVersionClusterAssociation:NdbSoftwareVersionProfileVersionClusterAssociation"
            },
            "description": "version cluster association\n"
          }
        },
        "type": "object"
      }
    },
    "nutanix:index/ndbStretchedVlan:NdbStretchedVlan": {
      "description": "Provides a resource to create stretched vlans based on the input parameters. \n\n## Example Usage\n\n### resource to add stretched vlan in NDB\n<!--Start PulumiCodeChooser -->\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as nutanix from \"@pierskarsenbarg/nutanix\";\n\nconst name = new nutanix.NdbStretchedVlan(\"name\", {\n    name: \"test-stretcName\",\n    description: \"vlan desc updated\",\n    type: \"Static\",\n    vlanIds: [\n        \"{{ vlan_id_1 }}\",\n        \"{{ vlan_id_2 }}\",\n    ],\n});\n```\n```python\nimport pulumi\nimport pulumi_nutanix as nutanix\n\nname = nutanix.NdbStretchedVlan(\"name\",\n    name=\"test-stretcName\",\n    description=\"vlan desc updated\",\n    type=\"Static\",\n    vlan_ids=[\n        \"{{ vlan_id_1 }}\",\n        \"{{ vlan_id_2 }}\",\n    ])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Nutanix = PiersKarsenbarg.Nutanix;\n\nreturn await Deployment.RunAsync(() => \n{\n    var name = new Nutanix.NdbStretchedVlan(\"name\", new()\n    {\n        Name = \"test-stretcName\",\n        Description = \"vlan desc updated\",\n        Type = \"Static\",\n        VlanIds = new[]\n        {\n            \"{{ vlan_id_1 }}\",\n            \"{{ vlan_id_2 }}\",\n        },\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pierskarsenbarg/pulumi-nutanix/sdk/go/nutanix\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := nutanix.NewNdbStretchedVlan(ctx, \"name\", &nutanix.NdbStretchedVlanArgs{\n\t\t\tName:        pulumi.String(\"test-stretcName\"),\n\t\t\tDescription: pulumi.String(\"vlan desc updated\"),\n\t\t\tType:        pulumi.String(\"Static\"),\n\t\t\tVlanIds: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"{{ vlan_id_1 }}\"),\n\t\t\t\tpulumi.String(\"{{ vlan_id_2 }}\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.nutanix.NdbStretchedVlan;\nimport com.pulumi.nutanix.NdbStretchedVlanArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var name = new NdbStretchedVlan(\"name\", NdbStretchedVlanArgs.builder()\n            .name(\"test-stretcName\")\n            .description(\"vlan desc updated\")\n            .type(\"Static\")\n            .vlanIds(            \n                \"{{ vlan_id_1 }}\",\n                \"{{ vlan_id_2 }}\")\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  name:\n    type: nutanix:NdbStretchedVlan\n    properties:\n      name: test-stretcName\n      description: vlan desc updated\n      type: Static\n      vlanIds:\n        - '{{ vlan_id_1 }}'\n        - '{{ vlan_id_2 }}'\n```\n<!--End PulumiCodeChooser -->\n\n### resource to update the strteched vlan with new gateway and subnet mask\n<!--Start PulumiCodeChooser -->\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as nutanix from \"@pierskarsenbarg/nutanix\";\n\nconst name = new nutanix.NdbStretchedVlan(\"name\", {\n    name: \"test-stretcName\",\n    description: \"vlan desc updated\",\n    type: \"Static\",\n    vlanIds: [\n        \"{{ vlan_id_1 }}\",\n        \"{{ vlan_id_2 }}\",\n    ],\n    metadata: {\n        gateway: \"{{ gateway of vlans }}\",\n        subnetMask: \"{{ subnet mask of vlans }}\",\n    },\n});\n```\n```python\nimport pulumi\nimport pulumi_nutanix as nutanix\n\nname = nutanix.NdbStretchedVlan(\"name\",\n    name=\"test-stretcName\",\n    description=\"vlan desc updated\",\n    type=\"Static\",\n    vlan_ids=[\n        \"{{ vlan_id_1 }}\",\n        \"{{ vlan_id_2 }}\",\n    ],\n    metadata={\n        \"gateway\": \"{{ gateway of vlans }}\",\n        \"subnet_mask\": \"{{ subnet mask of vlans }}\",\n    })\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Nutanix = PiersKarsenbarg.Nutanix;\n\nreturn await Deployment.RunAsync(() => \n{\n    var name = new Nutanix.NdbStretchedVlan(\"name\", new()\n    {\n        Name = \"test-stretcName\",\n        Description = \"vlan desc updated\",\n        Type = \"Static\",\n        VlanIds = new[]\n        {\n            \"{{ vlan_id_1 }}\",\n            \"{{ vlan_id_2 }}\",\n        },\n        Metadata = new Nutanix.Inputs.NdbStretchedVlanMetadataArgs\n        {\n            Gateway = \"{{ gateway of vlans }}\",\n            SubnetMask = \"{{ subnet mask of vlans }}\",\n        },\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pierskarsenbarg/pulumi-nutanix/sdk/go/nutanix\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := nutanix.NewNdbStretchedVlan(ctx, \"name\", &nutanix.NdbStretchedVlanArgs{\n\t\t\tName:        pulumi.String(\"test-stretcName\"),\n\t\t\tDescription: pulumi.String(\"vlan desc updated\"),\n\t\t\tType:        pulumi.String(\"Static\"),\n\t\t\tVlanIds: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"{{ vlan_id_1 }}\"),\n\t\t\t\tpulumi.String(\"{{ vlan_id_2 }}\"),\n\t\t\t},\n\t\t\tMetadata: &nutanix.NdbStretchedVlanMetadataArgs{\n\t\t\t\tGateway:    pulumi.String(\"{{ gateway of vlans }}\"),\n\t\t\t\tSubnetMask: pulumi.String(\"{{ subnet mask of vlans }}\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.nutanix.NdbStretchedVlan;\nimport com.pulumi.nutanix.NdbStretchedVlanArgs;\nimport com.pulumi.nutanix.inputs.NdbStretchedVlanMetadataArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var name = new NdbStretchedVlan(\"name\", NdbStretchedVlanArgs.builder()\n            .name(\"test-stretcName\")\n            .description(\"vlan desc updated\")\n            .type(\"Static\")\n            .vlanIds(            \n                \"{{ vlan_id_1 }}\",\n                \"{{ vlan_id_2 }}\")\n            .metadata(NdbStretchedVlanMetadataArgs.builder()\n                .gateway(\"{{ gateway of vlans }}\")\n                .subnetMask(\"{{ subnet mask of vlans }}\")\n                .build())\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  name:\n    type: nutanix:NdbStretchedVlan\n    properties:\n      name: test-stretcName\n      description: vlan desc updated\n      type: Static\n      vlanIds:\n        - '{{ vlan_id_1 }}'\n        - '{{ vlan_id_2 }}'\n      metadata:\n        gateway: '{{ gateway of vlans }}'\n        subnetMask: '{{ subnet mask of vlans }}'\n```\n<!--End PulumiCodeChooser -->\n",
      "properties": {
        "description": {
          "type": "string",
          "description": "Description of stretched vlan\n"
        },
        "metadata": {
          "$ref": "#/types/nutanix:index%2FNdbStretchedVlanMetadata:NdbStretchedVlanMetadata",
          "description": "Update the stretched VLAN Gateway and Subnet Mask IP address\n* `metadata.gateway`: Update the gateway of stretched vlan\n* `metadata.subnet_mask`: Update the<span pulumi-lang-nodejs=\" subnetMask \" pulumi-lang-dotnet=\" SubnetMask \" pulumi-lang-go=\" subnetMask \" pulumi-lang-python=\" subnet_mask \" pulumi-lang-yaml=\" subnetMask \" pulumi-lang-java=\" subnetMask \"> subnet_mask </span>of stretched vlan\n"
        },
        "name": {
          "type": "string",
          "description": "name for the stretched VLAN\n"
        },
        "type": {
          "type": "string",
          "description": "type of vlan. static VLANs that are managed in NDB can be added to a stretched VLAN.\n"
        },
        "vlanIds": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "list of vlan ids to be added in NDB\n"
        },
        "vlansLists": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FNdbStretchedVlanVlansList:NdbStretchedVlanVlansList"
          },
          "description": "properties of vlans\n"
        }
      },
      "type": "object",
      "required": [
        "metadata",
        "name",
        "type",
        "vlanIds",
        "vlansLists"
      ],
      "inputProperties": {
        "description": {
          "type": "string",
          "description": "Description of stretched vlan\n"
        },
        "metadata": {
          "$ref": "#/types/nutanix:index%2FNdbStretchedVlanMetadata:NdbStretchedVlanMetadata",
          "description": "Update the stretched VLAN Gateway and Subnet Mask IP address\n* `metadata.gateway`: Update the gateway of stretched vlan\n* `metadata.subnet_mask`: Update the<span pulumi-lang-nodejs=\" subnetMask \" pulumi-lang-dotnet=\" SubnetMask \" pulumi-lang-go=\" subnetMask \" pulumi-lang-python=\" subnet_mask \" pulumi-lang-yaml=\" subnetMask \" pulumi-lang-java=\" subnetMask \"> subnet_mask </span>of stretched vlan\n"
        },
        "name": {
          "type": "string",
          "description": "name for the stretched VLAN\n"
        },
        "type": {
          "type": "string",
          "description": "type of vlan. static VLANs that are managed in NDB can be added to a stretched VLAN.\n"
        },
        "vlanIds": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "list of vlan ids to be added in NDB\n"
        }
      },
      "requiredInputs": [
        "type",
        "vlanIds"
      ],
      "stateInputs": {
        "description": "Input properties used for looking up and filtering NdbStretchedVlan resources.\n",
        "properties": {
          "description": {
            "type": "string",
            "description": "Description of stretched vlan\n"
          },
          "metadata": {
            "$ref": "#/types/nutanix:index%2FNdbStretchedVlanMetadata:NdbStretchedVlanMetadata",
            "description": "Update the stretched VLAN Gateway and Subnet Mask IP address\n* `metadata.gateway`: Update the gateway of stretched vlan\n* `metadata.subnet_mask`: Update the<span pulumi-lang-nodejs=\" subnetMask \" pulumi-lang-dotnet=\" SubnetMask \" pulumi-lang-go=\" subnetMask \" pulumi-lang-python=\" subnet_mask \" pulumi-lang-yaml=\" subnetMask \" pulumi-lang-java=\" subnetMask \"> subnet_mask </span>of stretched vlan\n"
          },
          "name": {
            "type": "string",
            "description": "name for the stretched VLAN\n"
          },
          "type": {
            "type": "string",
            "description": "type of vlan. static VLANs that are managed in NDB can be added to a stretched VLAN.\n"
          },
          "vlanIds": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "description": "list of vlan ids to be added in NDB\n"
          },
          "vlansLists": {
            "type": "array",
            "items": {
              "$ref": "#/types/nutanix:index%2FNdbStretchedVlanVlansList:NdbStretchedVlanVlansList"
            },
            "description": "properties of vlans\n"
          }
        },
        "type": "object"
      }
    },
    "nutanix:index/ndbTag:NdbTag": {
      "description": "Provides a resource to create tags based on the input parameters. \n\n## Example Usage\n\n### resource to create tag\n<!--Start PulumiCodeChooser -->\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as nutanix from \"@pierskarsenbarg/nutanix\";\n\nconst name = new nutanix.NdbTag(\"name\", {\n    name: \"testst-up\",\n    description: \"this is desc ok\",\n    entityType: \"DATABASE\",\n    required: true,\n});\n```\n```python\nimport pulumi\nimport pulumi_nutanix as nutanix\n\nname = nutanix.NdbTag(\"name\",\n    name=\"testst-up\",\n    description=\"this is desc ok\",\n    entity_type=\"DATABASE\",\n    required=True)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Nutanix = PiersKarsenbarg.Nutanix;\n\nreturn await Deployment.RunAsync(() => \n{\n    var name = new Nutanix.NdbTag(\"name\", new()\n    {\n        Name = \"testst-up\",\n        Description = \"this is desc ok\",\n        EntityType = \"DATABASE\",\n        Required = true,\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pierskarsenbarg/pulumi-nutanix/sdk/go/nutanix\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := nutanix.NewNdbTag(ctx, \"name\", &nutanix.NdbTagArgs{\n\t\t\tName:        pulumi.String(\"testst-up\"),\n\t\t\tDescription: pulumi.String(\"this is desc ok\"),\n\t\t\tEntityType:  pulumi.String(\"DATABASE\"),\n\t\t\tRequired:    pulumi.Bool(true),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.nutanix.NdbTag;\nimport com.pulumi.nutanix.NdbTagArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var name = new NdbTag(\"name\", NdbTagArgs.builder()\n            .name(\"testst-up\")\n            .description(\"this is desc ok\")\n            .entityType(\"DATABASE\")\n            .required(true)\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  name:\n    type: nutanix:NdbTag\n    properties:\n      name: testst-up\n      description: this is desc ok\n      entityType: DATABASE\n      required: true\n```\n<!--End PulumiCodeChooser -->\n\n### resource to update tag with status\n<!--Start PulumiCodeChooser -->\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as nutanix from \"@pierskarsenbarg/nutanix\";\n\nconst name = new nutanix.NdbTag(\"name\", {\n    name: \"testst-up\",\n    description: \"this is desc ok\",\n    entityType: \"DATABASE\",\n    required: true,\n    status: \"DEPRECATED\",\n});\n```\n```python\nimport pulumi\nimport pulumi_nutanix as nutanix\n\nname = nutanix.NdbTag(\"name\",\n    name=\"testst-up\",\n    description=\"this is desc ok\",\n    entity_type=\"DATABASE\",\n    required=True,\n    status=\"DEPRECATED\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Nutanix = PiersKarsenbarg.Nutanix;\n\nreturn await Deployment.RunAsync(() => \n{\n    var name = new Nutanix.NdbTag(\"name\", new()\n    {\n        Name = \"testst-up\",\n        Description = \"this is desc ok\",\n        EntityType = \"DATABASE\",\n        Required = true,\n        Status = \"DEPRECATED\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pierskarsenbarg/pulumi-nutanix/sdk/go/nutanix\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := nutanix.NewNdbTag(ctx, \"name\", &nutanix.NdbTagArgs{\n\t\t\tName:        pulumi.String(\"testst-up\"),\n\t\t\tDescription: pulumi.String(\"this is desc ok\"),\n\t\t\tEntityType:  pulumi.String(\"DATABASE\"),\n\t\t\tRequired:    pulumi.Bool(true),\n\t\t\tStatus:      pulumi.String(\"DEPRECATED\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.nutanix.NdbTag;\nimport com.pulumi.nutanix.NdbTagArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var name = new NdbTag(\"name\", NdbTagArgs.builder()\n            .name(\"testst-up\")\n            .description(\"this is desc ok\")\n            .entityType(\"DATABASE\")\n            .required(true)\n            .status(\"DEPRECATED\")\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  name:\n    type: nutanix:NdbTag\n    properties:\n      name: testst-up\n      description: this is desc ok\n      entityType: DATABASE\n      required: true\n      status: DEPRECATED\n```\n<!--End PulumiCodeChooser -->\n",
      "properties": {
        "dateCreated": {
          "type": "string",
          "description": "date created of the tag\n"
        },
        "dateModified": {
          "type": "string",
          "description": "modified date of tha tag\n"
        },
        "description": {
          "type": "string",
          "description": "description for the tag\n"
        },
        "entityType": {
          "type": "string",
          "description": "entity for the tag to be associated with. Supported values [ DATABASE, TIME_MACHINE, CLONE, DATABASE_SERVER ].\n"
        },
        "name": {
          "type": "string",
          "description": "name for the tag\n"
        },
        "owner": {
          "type": "string",
          "description": "owner id of the tag\n"
        },
        "required": {
          "type": "boolean",
          "description": "provide a tag value for entities.\n"
        },
        "status": {
          "type": "string",
          "description": "Status of the tag. Supported values are [ ENABLED, DEPRECATED ]\n"
        },
        "values": {
          "type": "integer",
          "description": "value for the tag\n"
        }
      },
      "type": "object",
      "required": [
        "dateCreated",
        "dateModified",
        "entityType",
        "name",
        "owner",
        "status",
        "values"
      ],
      "inputProperties": {
        "description": {
          "type": "string",
          "description": "description for the tag\n"
        },
        "entityType": {
          "type": "string",
          "description": "entity for the tag to be associated with. Supported values [ DATABASE, TIME_MACHINE, CLONE, DATABASE_SERVER ].\n"
        },
        "name": {
          "type": "string",
          "description": "name for the tag\n"
        },
        "required": {
          "type": "boolean",
          "description": "provide a tag value for entities.\n"
        },
        "status": {
          "type": "string",
          "description": "Status of the tag. Supported values are [ ENABLED, DEPRECATED ]\n"
        }
      },
      "requiredInputs": [
        "entityType"
      ],
      "stateInputs": {
        "description": "Input properties used for looking up and filtering NdbTag resources.\n",
        "properties": {
          "dateCreated": {
            "type": "string",
            "description": "date created of the tag\n"
          },
          "dateModified": {
            "type": "string",
            "description": "modified date of tha tag\n"
          },
          "description": {
            "type": "string",
            "description": "description for the tag\n"
          },
          "entityType": {
            "type": "string",
            "description": "entity for the tag to be associated with. Supported values [ DATABASE, TIME_MACHINE, CLONE, DATABASE_SERVER ].\n"
          },
          "name": {
            "type": "string",
            "description": "name for the tag\n"
          },
          "owner": {
            "type": "string",
            "description": "owner id of the tag\n"
          },
          "required": {
            "type": "boolean",
            "description": "provide a tag value for entities.\n"
          },
          "status": {
            "type": "string",
            "description": "Status of the tag. Supported values are [ ENABLED, DEPRECATED ]\n"
          },
          "values": {
            "type": "integer",
            "description": "value for the tag\n"
          }
        },
        "type": "object"
      }
    },
    "nutanix:index/ndbTmsCluster:NdbTmsCluster": {
      "description": "Provides a resource to manage time machine data availability across all the registered Nutanix clusters in NDB.\n\n## Example Usage\n\n<!--Start PulumiCodeChooser -->\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as nutanix from \"@pierskarsenbarg/nutanix\";\n\nconst cls = new nutanix.NdbTmsCluster(\"cls\", {\n    timeMachineId: \"{{ tms_id }}\",\n    nxClusterId: \"{{ cluster_id }}\",\n    slaId: \"{{ sla_id }}\",\n});\n```\n```python\nimport pulumi\nimport pulumi_nutanix as nutanix\n\ncls = nutanix.NdbTmsCluster(\"cls\",\n    time_machine_id=\"{{ tms_id }}\",\n    nx_cluster_id=\"{{ cluster_id }}\",\n    sla_id=\"{{ sla_id }}\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Nutanix = PiersKarsenbarg.Nutanix;\n\nreturn await Deployment.RunAsync(() => \n{\n    var cls = new Nutanix.NdbTmsCluster(\"cls\", new()\n    {\n        TimeMachineId = \"{{ tms_id }}\",\n        NxClusterId = \"{{ cluster_id }}\",\n        SlaId = \"{{ sla_id }}\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pierskarsenbarg/pulumi-nutanix/sdk/go/nutanix\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := nutanix.NewNdbTmsCluster(ctx, \"cls\", &nutanix.NdbTmsClusterArgs{\n\t\t\tTimeMachineId: pulumi.String(\"{{ tms_id }}\"),\n\t\t\tNxClusterId:   pulumi.String(\"{{ cluster_id }}\"),\n\t\t\tSlaId:         pulumi.String(\"{{ sla_id }}\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.nutanix.NdbTmsCluster;\nimport com.pulumi.nutanix.NdbTmsClusterArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var cls = new NdbTmsCluster(\"cls\", NdbTmsClusterArgs.builder()\n            .timeMachineId(\"{{ tms_id }}\")\n            .nxClusterId(\"{{ cluster_id }}\")\n            .slaId(\"{{ sla_id }}\")\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  cls:\n    type: nutanix:NdbTmsCluster\n    properties:\n      timeMachineId: '{{ tms_id }}'\n      nxClusterId: '{{ cluster_id }}'\n      slaId: '{{ sla_id }}'\n```\n<!--End PulumiCodeChooser -->\n",
      "properties": {
        "dateCreated": {
          "type": "string",
          "description": "created date of time machine associated with cluster\n"
        },
        "dateModified": {
          "type": "string",
          "description": "modified date of time machine associated with cluster\n"
        },
        "description": {
          "type": "string",
          "description": "description of nutanix cluster associated with time machine\n"
        },
        "logDriveId": {
          "type": "string",
          "description": "log drive id\n"
        },
        "logDriveStatus": {
          "type": "string",
          "description": "log drive status of time machine\n"
        },
        "nxClusterId": {
          "type": "string",
          "description": "Nutanix cluster id on the associated registered clusters.\n"
        },
        "ownerId": {
          "type": "string",
          "description": "owner id\n"
        },
        "scheduleId": {
          "type": "string",
          "description": "schedule id of the data associated with time machine\n"
        },
        "slaId": {
          "type": "string",
          "description": "SLA id for the associated cluster.\n"
        },
        "source": {
          "type": "boolean",
          "description": "source is present or not\n"
        },
        "sourceClusters": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "source clusters in time machines\n"
        },
        "status": {
          "type": "string",
          "description": "status of the cluster associated with time machine\n"
        },
        "timeMachineId": {
          "type": "string",
          "description": "time machine id\n"
        },
        "type": {
          "type": "string",
          "description": "Default value is \"OTHER\"\n"
        }
      },
      "type": "object",
      "required": [
        "dateCreated",
        "dateModified",
        "description",
        "logDriveId",
        "logDriveStatus",
        "nxClusterId",
        "ownerId",
        "scheduleId",
        "slaId",
        "source",
        "sourceClusters",
        "status",
        "timeMachineId"
      ],
      "inputProperties": {
        "nxClusterId": {
          "type": "string",
          "description": "Nutanix cluster id on the associated registered clusters.\n"
        },
        "slaId": {
          "type": "string",
          "description": "SLA id for the associated cluster.\n"
        },
        "timeMachineId": {
          "type": "string",
          "description": "time machine id\n"
        },
        "type": {
          "type": "string",
          "description": "Default value is \"OTHER\"\n"
        }
      },
      "requiredInputs": [
        "nxClusterId",
        "slaId",
        "timeMachineId"
      ],
      "stateInputs": {
        "description": "Input properties used for looking up and filtering NdbTmsCluster resources.\n",
        "properties": {
          "dateCreated": {
            "type": "string",
            "description": "created date of time machine associated with cluster\n"
          },
          "dateModified": {
            "type": "string",
            "description": "modified date of time machine associated with cluster\n"
          },
          "description": {
            "type": "string",
            "description": "description of nutanix cluster associated with time machine\n"
          },
          "logDriveId": {
            "type": "string",
            "description": "log drive id\n"
          },
          "logDriveStatus": {
            "type": "string",
            "description": "log drive status of time machine\n"
          },
          "nxClusterId": {
            "type": "string",
            "description": "Nutanix cluster id on the associated registered clusters.\n"
          },
          "ownerId": {
            "type": "string",
            "description": "owner id\n"
          },
          "scheduleId": {
            "type": "string",
            "description": "schedule id of the data associated with time machine\n"
          },
          "slaId": {
            "type": "string",
            "description": "SLA id for the associated cluster.\n"
          },
          "source": {
            "type": "boolean",
            "description": "source is present or not\n"
          },
          "sourceClusters": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "description": "source clusters in time machines\n"
          },
          "status": {
            "type": "string",
            "description": "status of the cluster associated with time machine\n"
          },
          "timeMachineId": {
            "type": "string",
            "description": "time machine id\n"
          },
          "type": {
            "type": "string",
            "description": "Default value is \"OTHER\"\n"
          }
        },
        "type": "object"
      }
    },
    "nutanix:index/networkSecurityPolicyV2:NetworkSecurityPolicyV2": {
      "description": "Create a Network Security Policy\n\n## Example\n\n<!--Start PulumiCodeChooser -->\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as nutanix from \"@pierskarsenbarg/nutanix\";\n\n// Network Security Policy TWO_ENV_ISOLATION Rule\nconst isolation_nsp = new nutanix.NetworkSecurityPolicyV2(\"isolation-nsp\", {\n    name: \"isolation_policy\",\n    description: \"isolation policy example\",\n    state: \"SAVE\",\n    type: \"ISOLATION\",\n    rules: [{\n        type: \"TWO_ENV_ISOLATION\",\n        specs: [{\n            twoEnvIsolationRuleSpecs: [{\n                firstIsolationGroups: [\"ba250e3e-1db1-4950-917f-a9e2ea35b8e3\"],\n                secondIsolationGroups: [\"ab520e1d-4950-1db1-917f-a9e2ea35b8e3\"],\n            }],\n        }],\n    }],\n    isHitlogEnabled: true,\n});\n```\n```python\nimport pulumi\nimport pulumi_nutanix as nutanix\n\n# Network Security Policy TWO_ENV_ISOLATION Rule\nisolation_nsp = nutanix.NetworkSecurityPolicyV2(\"isolation-nsp\",\n    name=\"isolation_policy\",\n    description=\"isolation policy example\",\n    state=\"SAVE\",\n    type=\"ISOLATION\",\n    rules=[{\n        \"type\": \"TWO_ENV_ISOLATION\",\n        \"specs\": [{\n            \"two_env_isolation_rule_specs\": [{\n                \"first_isolation_groups\": [\"ba250e3e-1db1-4950-917f-a9e2ea35b8e3\"],\n                \"second_isolation_groups\": [\"ab520e1d-4950-1db1-917f-a9e2ea35b8e3\"],\n            }],\n        }],\n    }],\n    is_hitlog_enabled=True)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Nutanix = PiersKarsenbarg.Nutanix;\n\nreturn await Deployment.RunAsync(() => \n{\n    // Network Security Policy TWO_ENV_ISOLATION Rule\n    var isolation_nsp = new Nutanix.NetworkSecurityPolicyV2(\"isolation-nsp\", new()\n    {\n        Name = \"isolation_policy\",\n        Description = \"isolation policy example\",\n        State = \"SAVE\",\n        Type = \"ISOLATION\",\n        Rules = new[]\n        {\n            new Nutanix.Inputs.NetworkSecurityPolicyV2RuleArgs\n            {\n                Type = \"TWO_ENV_ISOLATION\",\n                Specs = new[]\n                {\n                    new Nutanix.Inputs.NetworkSecurityPolicyV2RuleSpecArgs\n                    {\n                        TwoEnvIsolationRuleSpecs = new[]\n                        {\n                            new Nutanix.Inputs.NetworkSecurityPolicyV2RuleSpecTwoEnvIsolationRuleSpecArgs\n                            {\n                                FirstIsolationGroups = new[]\n                                {\n                                    \"ba250e3e-1db1-4950-917f-a9e2ea35b8e3\",\n                                },\n                                SecondIsolationGroups = new[]\n                                {\n                                    \"ab520e1d-4950-1db1-917f-a9e2ea35b8e3\",\n                                },\n                            },\n                        },\n                    },\n                },\n            },\n        },\n        IsHitlogEnabled = true,\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pierskarsenbarg/pulumi-nutanix/sdk/go/nutanix\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t// Network Security Policy TWO_ENV_ISOLATION Rule\n\t\t_, err := nutanix.NewNetworkSecurityPolicyV2(ctx, \"isolation-nsp\", &nutanix.NetworkSecurityPolicyV2Args{\n\t\t\tName:        pulumi.String(\"isolation_policy\"),\n\t\t\tDescription: pulumi.String(\"isolation policy example\"),\n\t\t\tState:       pulumi.String(\"SAVE\"),\n\t\t\tType:        pulumi.String(\"ISOLATION\"),\n\t\t\tRules: nutanix.NetworkSecurityPolicyV2RuleArray{\n\t\t\t\t&nutanix.NetworkSecurityPolicyV2RuleArgs{\n\t\t\t\t\tType: pulumi.String(\"TWO_ENV_ISOLATION\"),\n\t\t\t\t\tSpecs: nutanix.NetworkSecurityPolicyV2RuleSpecArray{\n\t\t\t\t\t\t&nutanix.NetworkSecurityPolicyV2RuleSpecArgs{\n\t\t\t\t\t\t\tTwoEnvIsolationRuleSpecs: nutanix.NetworkSecurityPolicyV2RuleSpecTwoEnvIsolationRuleSpecArray{\n\t\t\t\t\t\t\t\t&nutanix.NetworkSecurityPolicyV2RuleSpecTwoEnvIsolationRuleSpecArgs{\n\t\t\t\t\t\t\t\t\tFirstIsolationGroups: pulumi.StringArray{\n\t\t\t\t\t\t\t\t\t\tpulumi.String(\"ba250e3e-1db1-4950-917f-a9e2ea35b8e3\"),\n\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\tSecondIsolationGroups: pulumi.StringArray{\n\t\t\t\t\t\t\t\t\t\tpulumi.String(\"ab520e1d-4950-1db1-917f-a9e2ea35b8e3\"),\n\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t\tIsHitlogEnabled: pulumi.Bool(true),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.nutanix.NetworkSecurityPolicyV2;\nimport com.pulumi.nutanix.NetworkSecurityPolicyV2Args;\nimport com.pulumi.nutanix.inputs.NetworkSecurityPolicyV2RuleArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        // Network Security Policy TWO_ENV_ISOLATION Rule\n        var isolation_nsp = new NetworkSecurityPolicyV2(\"isolation-nsp\", NetworkSecurityPolicyV2Args.builder()\n            .name(\"isolation_policy\")\n            .description(\"isolation policy example\")\n            .state(\"SAVE\")\n            .type(\"ISOLATION\")\n            .rules(NetworkSecurityPolicyV2RuleArgs.builder()\n                .type(\"TWO_ENV_ISOLATION\")\n                .specs(NetworkSecurityPolicyV2RuleSpecArgs.builder()\n                    .twoEnvIsolationRuleSpecs(NetworkSecurityPolicyV2RuleSpecTwoEnvIsolationRuleSpecArgs.builder()\n                        .firstIsolationGroups(\"ba250e3e-1db1-4950-917f-a9e2ea35b8e3\")\n                        .secondIsolationGroups(\"ab520e1d-4950-1db1-917f-a9e2ea35b8e3\")\n                        .build())\n                    .build())\n                .build())\n            .isHitlogEnabled(true)\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  # Network Security Policy TWO_ENV_ISOLATION Rule\n  isolation-nsp:\n    type: nutanix:NetworkSecurityPolicyV2\n    properties:\n      name: isolation_policy\n      description: isolation policy example\n      state: SAVE\n      type: ISOLATION\n      rules:\n        - type: TWO_ENV_ISOLATION\n          specs:\n            - twoEnvIsolationRuleSpecs:\n                - firstIsolationGroups:\n                    - ba250e3e-1db1-4950-917f-a9e2ea35b8e3\n                  secondIsolationGroups:\n                    - ab520e1d-4950-1db1-917f-a9e2ea35b8e3\n      isHitlogEnabled: true\n```\n<!--End PulumiCodeChooser -->\n",
      "properties": {
        "createdBy": {
          "type": "string",
          "description": "created by.\n"
        },
        "creationTime": {
          "type": "string",
          "description": "creation time of NSP\n"
        },
        "description": {
          "type": "string",
          "description": "A user defined annotation for a policy.\n"
        },
        "extId": {
          "type": "string",
          "description": "A globally unique identifier of an instance that is suitable for external consumption.\n"
        },
        "isHitlogEnabled": {
          "type": "boolean",
          "description": "If Hitlog is enabled.\n"
        },
        "isIpv6TrafficAllowed": {
          "type": "boolean",
          "description": "If Ipv6 Traffic is allowed.\n"
        },
        "isSystemDefined": {
          "type": "boolean",
          "description": "Is system defined NSP\n"
        },
        "lastUpdateTime": {
          "type": "string",
          "description": "last updated time\n"
        },
        "links": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FNetworkSecurityPolicyV2Link:NetworkSecurityPolicyV2Link"
          },
          "description": "A HATEOAS style link for the response. Each link contains a user-friendly name identifying the link and an address for retrieving the particular resource.\n"
        },
        "name": {
          "type": "string",
          "description": "Name of the Flow Network Security Policy.\n"
        },
        "rules": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FNetworkSecurityPolicyV2Rule:NetworkSecurityPolicyV2Rule"
          },
          "description": "A list of rules that form a policy. For isolation policies, use isolation rules; for application or quarantine policies, use application rules.\n"
        },
        "scope": {
          "type": "string",
          "description": "Defines the scope of the policy. Currently, only ALL_VLAN and VPC_LIST are supported. If scope is not provided, the default is set based on whether vpcReferences field is provided or not.\n"
        },
        "securedGroups": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "Uuids of the secured groups in the NSP.\n"
        },
        "state": {
          "type": "string",
          "description": "Whether the policy is applied or monitored; can be omitted or set null to save the policy without applying or monitoring it. Acceptable values are \"SAVE\", \"MONITOR\", \"ENFORCE\".\n"
        },
        "tenantId": {
          "type": "string",
          "description": "A globally unique identifier that represents the tenant that owns this entity\n"
        },
        "type": {
          "type": "string",
          "description": "Defines the type of rules that can be used in a policy. Acceptable values are \"QUARANTINE\", \"ISOLATION\", \"APPLICATION\".\n"
        },
        "vpcReferences": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "A list of external ids for VPCs, used only when the scope of policy is a list of VPCs.\n"
        }
      },
      "type": "object",
      "required": [
        "createdBy",
        "creationTime",
        "extId",
        "isSystemDefined",
        "lastUpdateTime",
        "links",
        "name",
        "scope",
        "securedGroups",
        "tenantId",
        "type"
      ],
      "inputProperties": {
        "description": {
          "type": "string",
          "description": "A user defined annotation for a policy.\n"
        },
        "isHitlogEnabled": {
          "type": "boolean",
          "description": "If Hitlog is enabled.\n"
        },
        "isIpv6TrafficAllowed": {
          "type": "boolean",
          "description": "If Ipv6 Traffic is allowed.\n"
        },
        "name": {
          "type": "string",
          "description": "Name of the Flow Network Security Policy.\n"
        },
        "rules": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FNetworkSecurityPolicyV2Rule:NetworkSecurityPolicyV2Rule"
          },
          "description": "A list of rules that form a policy. For isolation policies, use isolation rules; for application or quarantine policies, use application rules.\n"
        },
        "scope": {
          "type": "string",
          "description": "Defines the scope of the policy. Currently, only ALL_VLAN and VPC_LIST are supported. If scope is not provided, the default is set based on whether vpcReferences field is provided or not.\n"
        },
        "state": {
          "type": "string",
          "description": "Whether the policy is applied or monitored; can be omitted or set null to save the policy without applying or monitoring it. Acceptable values are \"SAVE\", \"MONITOR\", \"ENFORCE\".\n"
        },
        "type": {
          "type": "string",
          "description": "Defines the type of rules that can be used in a policy. Acceptable values are \"QUARANTINE\", \"ISOLATION\", \"APPLICATION\".\n"
        },
        "vpcReferences": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "A list of external ids for VPCs, used only when the scope of policy is a list of VPCs.\n"
        }
      },
      "requiredInputs": [
        "type"
      ],
      "stateInputs": {
        "description": "Input properties used for looking up and filtering NetworkSecurityPolicyV2 resources.\n",
        "properties": {
          "createdBy": {
            "type": "string",
            "description": "created by.\n"
          },
          "creationTime": {
            "type": "string",
            "description": "creation time of NSP\n"
          },
          "description": {
            "type": "string",
            "description": "A user defined annotation for a policy.\n"
          },
          "extId": {
            "type": "string",
            "description": "A globally unique identifier of an instance that is suitable for external consumption.\n"
          },
          "isHitlogEnabled": {
            "type": "boolean",
            "description": "If Hitlog is enabled.\n"
          },
          "isIpv6TrafficAllowed": {
            "type": "boolean",
            "description": "If Ipv6 Traffic is allowed.\n"
          },
          "isSystemDefined": {
            "type": "boolean",
            "description": "Is system defined NSP\n"
          },
          "lastUpdateTime": {
            "type": "string",
            "description": "last updated time\n"
          },
          "links": {
            "type": "array",
            "items": {
              "$ref": "#/types/nutanix:index%2FNetworkSecurityPolicyV2Link:NetworkSecurityPolicyV2Link"
            },
            "description": "A HATEOAS style link for the response. Each link contains a user-friendly name identifying the link and an address for retrieving the particular resource.\n"
          },
          "name": {
            "type": "string",
            "description": "Name of the Flow Network Security Policy.\n"
          },
          "rules": {
            "type": "array",
            "items": {
              "$ref": "#/types/nutanix:index%2FNetworkSecurityPolicyV2Rule:NetworkSecurityPolicyV2Rule"
            },
            "description": "A list of rules that form a policy. For isolation policies, use isolation rules; for application or quarantine policies, use application rules.\n"
          },
          "scope": {
            "type": "string",
            "description": "Defines the scope of the policy. Currently, only ALL_VLAN and VPC_LIST are supported. If scope is not provided, the default is set based on whether vpcReferences field is provided or not.\n"
          },
          "securedGroups": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "description": "Uuids of the secured groups in the NSP.\n"
          },
          "state": {
            "type": "string",
            "description": "Whether the policy is applied or monitored; can be omitted or set null to save the policy without applying or monitoring it. Acceptable values are \"SAVE\", \"MONITOR\", \"ENFORCE\".\n"
          },
          "tenantId": {
            "type": "string",
            "description": "A globally unique identifier that represents the tenant that owns this entity\n"
          },
          "type": {
            "type": "string",
            "description": "Defines the type of rules that can be used in a policy. Acceptable values are \"QUARANTINE\", \"ISOLATION\", \"APPLICATION\".\n"
          },
          "vpcReferences": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "description": "A list of external ids for VPCs, used only when the scope of policy is a list of VPCs.\n"
          }
        },
        "type": "object"
      }
    },
    "nutanix:index/networkSecurityRule:NetworkSecurityRule": {
      "description": "Provides a Nutanix network security rule resource to Create a network security rule.\n\n> NOTE: The use of<span pulumi-lang-nodejs=\" networkSecurityRule \" pulumi-lang-dotnet=\" NetworkSecurityRule \" pulumi-lang-go=\" networkSecurityRule \" pulumi-lang-python=\" network_security_rule \" pulumi-lang-yaml=\" networkSecurityRule \" pulumi-lang-java=\" networkSecurityRule \"> network_security_rule </span>is only applicable in AHV clusters and requires Microsegmentation to be enabled. This feature is a function of the Flow product and requires a Flow license. For more information on Flow and Microsegmentation please visit https://www.nutanix.com/products/flow\n\n## Example Usage\n\n### Isolation Rule Example\n\n<!--Start PulumiCodeChooser -->\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as nutanix from \"@pierskarsenbarg/nutanix\";\n\nconst isolation = new nutanix.NetworkSecurityRule(\"isolation\", {\n    name: \"example-isolation-rule\",\n    description: \"Isolation Rule Example\",\n    isolationRuleAction: \"APPLY\",\n    isolationRuleFirstEntityFilterKindLists: [\"vm\"],\n    isolationRuleFirstEntityFilterType: \"CATEGORIES_MATCH_ALL\",\n    isolationRuleFirstEntityFilterParams: [{\n        name: \"Environment\",\n        values: [\"Dev\"],\n    }],\n    isolationRuleSecondEntityFilterKindLists: [\"vm\"],\n    isolationRuleSecondEntityFilterType: \"CATEGORIES_MATCH_ALL\",\n    isolationRuleSecondEntityFilterParams: [{\n        name: \"Environment\",\n        values: [\"Production\"],\n    }],\n});\n```\n```python\nimport pulumi\nimport pulumi_nutanix as nutanix\n\nisolation = nutanix.NetworkSecurityRule(\"isolation\",\n    name=\"example-isolation-rule\",\n    description=\"Isolation Rule Example\",\n    isolation_rule_action=\"APPLY\",\n    isolation_rule_first_entity_filter_kind_lists=[\"vm\"],\n    isolation_rule_first_entity_filter_type=\"CATEGORIES_MATCH_ALL\",\n    isolation_rule_first_entity_filter_params=[{\n        \"name\": \"Environment\",\n        \"values\": [\"Dev\"],\n    }],\n    isolation_rule_second_entity_filter_kind_lists=[\"vm\"],\n    isolation_rule_second_entity_filter_type=\"CATEGORIES_MATCH_ALL\",\n    isolation_rule_second_entity_filter_params=[{\n        \"name\": \"Environment\",\n        \"values\": [\"Production\"],\n    }])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Nutanix = PiersKarsenbarg.Nutanix;\n\nreturn await Deployment.RunAsync(() => \n{\n    var isolation = new Nutanix.NetworkSecurityRule(\"isolation\", new()\n    {\n        Name = \"example-isolation-rule\",\n        Description = \"Isolation Rule Example\",\n        IsolationRuleAction = \"APPLY\",\n        IsolationRuleFirstEntityFilterKindLists = new[]\n        {\n            \"vm\",\n        },\n        IsolationRuleFirstEntityFilterType = \"CATEGORIES_MATCH_ALL\",\n        IsolationRuleFirstEntityFilterParams = new[]\n        {\n            new Nutanix.Inputs.NetworkSecurityRuleIsolationRuleFirstEntityFilterParamArgs\n            {\n                Name = \"Environment\",\n                Values = new[]\n                {\n                    \"Dev\",\n                },\n            },\n        },\n        IsolationRuleSecondEntityFilterKindLists = new[]\n        {\n            \"vm\",\n        },\n        IsolationRuleSecondEntityFilterType = \"CATEGORIES_MATCH_ALL\",\n        IsolationRuleSecondEntityFilterParams = new[]\n        {\n            new Nutanix.Inputs.NetworkSecurityRuleIsolationRuleSecondEntityFilterParamArgs\n            {\n                Name = \"Environment\",\n                Values = new[]\n                {\n                    \"Production\",\n                },\n            },\n        },\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pierskarsenbarg/pulumi-nutanix/sdk/go/nutanix\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := nutanix.NewNetworkSecurityRule(ctx, \"isolation\", &nutanix.NetworkSecurityRuleArgs{\n\t\t\tName:                pulumi.String(\"example-isolation-rule\"),\n\t\t\tDescription:         pulumi.String(\"Isolation Rule Example\"),\n\t\t\tIsolationRuleAction: pulumi.String(\"APPLY\"),\n\t\t\tIsolationRuleFirstEntityFilterKindLists: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"vm\"),\n\t\t\t},\n\t\t\tIsolationRuleFirstEntityFilterType: pulumi.String(\"CATEGORIES_MATCH_ALL\"),\n\t\t\tIsolationRuleFirstEntityFilterParams: nutanix.NetworkSecurityRuleIsolationRuleFirstEntityFilterParamArray{\n\t\t\t\t&nutanix.NetworkSecurityRuleIsolationRuleFirstEntityFilterParamArgs{\n\t\t\t\t\tName: pulumi.String(\"Environment\"),\n\t\t\t\t\tValues: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"Dev\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t\tIsolationRuleSecondEntityFilterKindLists: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"vm\"),\n\t\t\t},\n\t\t\tIsolationRuleSecondEntityFilterType: pulumi.String(\"CATEGORIES_MATCH_ALL\"),\n\t\t\tIsolationRuleSecondEntityFilterParams: nutanix.NetworkSecurityRuleIsolationRuleSecondEntityFilterParamArray{\n\t\t\t\t&nutanix.NetworkSecurityRuleIsolationRuleSecondEntityFilterParamArgs{\n\t\t\t\t\tName: pulumi.String(\"Environment\"),\n\t\t\t\t\tValues: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"Production\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.nutanix.NetworkSecurityRule;\nimport com.pulumi.nutanix.NetworkSecurityRuleArgs;\nimport com.pulumi.nutanix.inputs.NetworkSecurityRuleIsolationRuleFirstEntityFilterParamArgs;\nimport com.pulumi.nutanix.inputs.NetworkSecurityRuleIsolationRuleSecondEntityFilterParamArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var isolation = new NetworkSecurityRule(\"isolation\", NetworkSecurityRuleArgs.builder()\n            .name(\"example-isolation-rule\")\n            .description(\"Isolation Rule Example\")\n            .isolationRuleAction(\"APPLY\")\n            .isolationRuleFirstEntityFilterKindLists(\"vm\")\n            .isolationRuleFirstEntityFilterType(\"CATEGORIES_MATCH_ALL\")\n            .isolationRuleFirstEntityFilterParams(NetworkSecurityRuleIsolationRuleFirstEntityFilterParamArgs.builder()\n                .name(\"Environment\")\n                .values(\"Dev\")\n                .build())\n            .isolationRuleSecondEntityFilterKindLists(\"vm\")\n            .isolationRuleSecondEntityFilterType(\"CATEGORIES_MATCH_ALL\")\n            .isolationRuleSecondEntityFilterParams(NetworkSecurityRuleIsolationRuleSecondEntityFilterParamArgs.builder()\n                .name(\"Environment\")\n                .values(\"Production\")\n                .build())\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  isolation:\n    type: nutanix:NetworkSecurityRule\n    properties:\n      name: example-isolation-rule\n      description: Isolation Rule Example\n      isolationRuleAction: APPLY\n      isolationRuleFirstEntityFilterKindLists:\n        - vm\n      isolationRuleFirstEntityFilterType: CATEGORIES_MATCH_ALL\n      isolationRuleFirstEntityFilterParams:\n        - name: Environment\n          values:\n            - Dev\n      isolationRuleSecondEntityFilterKindLists:\n        - vm\n      isolationRuleSecondEntityFilterType: CATEGORIES_MATCH_ALL\n      isolationRuleSecondEntityFilterParams:\n        - name: Environment\n          values:\n            - Production\n```\n<!--End PulumiCodeChooser -->\n\n### App Rule Example with associated VMs.\n<!--Start PulumiCodeChooser -->\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as nutanix from \"@pierskarsenbarg/nutanix\";\n\nconst clusters = nutanix.getClusters({});\nconst clusterUuid = clusters.then(clusters => .filter(cluster => cluster.serviceList[0] != \"PRISM_CENTRAL\").map(cluster => (cluster.metadata?.uuid))[0]);\n//Create categories.\nconst test_category_key = new nutanix.CategoryKey(\"test-category-key\", {\n    name: \"TIER-1\",\n    description: \"TIER Category Key\",\n});\nconst USER = new nutanix.CategoryKey(\"USER\", {\n    name: \"user\",\n    description: \"user Category Key\",\n});\nconst WEB = new nutanix.CategoryValue(\"WEB\", {\n    name: test_category_key.id,\n    description: \"WEB Category Value\",\n    value: \"WEB-1\",\n});\nconst APP = new nutanix.CategoryValue(\"APP\", {\n    name: test_category_key.id,\n    description: \"APP Category Value\",\n    value: \"APP-1\",\n});\nconst DB = new nutanix.CategoryValue(\"DB\", {\n    name: test_category_key.id,\n    description: \"DB Category Value\",\n    value: \"DB-1\",\n});\nconst group = new nutanix.CategoryValue(\"group\", {\n    name: USER.id,\n    description: \"group Category Value\",\n    value: \"group-1\",\n});\n//Create a cirros image\nconst cirros_034_disk = new nutanix.Image(\"cirros-034-disk\", {\n    name: \"test-image-vm-create-flow\",\n    sourceUri: \"http://download.cirros-cloud.net/0.4.0/cirros-0.4.0-x86_64-disk.img\",\n    description: \"heres a tiny linux image, not an iso, but a real disk!\",\n});\n//APP-1 VM.\nconst vm_app = new nutanix.VirtualMachine(\"vm-app\", {\n    name: \"test-dou-vm-flow-APP-1\",\n    clusterUuid: clusterUuid,\n    numVcpusPerSocket: 1,\n    numSockets: 1,\n    memorySizeMib: 186,\n    nicLists: [{\n        subnetUuid: \"c56b535c-8aff-4435-ae85-78e64a07f76d\",\n    }],\n    diskLists: [{\n        dataSourceReference: {\n            kind: \"image\",\n            uuid: cirros_034_disk.id,\n        },\n        deviceProperties: {\n            diskAddress: {\n                device_index: \"0\",\n                adapter_type: \"SCSI\",\n            },\n            deviceType: \"DISK\",\n        },\n    }],\n    categories: [\n        {\n            name: \"Environment\",\n            value: \"Staging\",\n        },\n        {\n            name: \"TIER-1\",\n            value: APP.id,\n        },\n    ],\n});\n//WEB-1 VM\nconst vm_web = new nutanix.VirtualMachine(\"vm-web\", {\n    name: \"test-dou-vm-flow-WEB-1\",\n    clusterUuid: clusterUuid,\n    numVcpusPerSocket: 1,\n    numSockets: 1,\n    memorySizeMib: 186,\n    nicLists: [{\n        subnetUuid: \"c56b535c-8aff-4435-ae85-78e64a07f76d\",\n    }],\n    diskLists: [{\n        dataSourceReference: {\n            kind: \"image\",\n            uuid: cirros_034_disk.id,\n        },\n        deviceProperties: {\n            diskAddress: {\n                device_index: \"0\",\n                adapter_type: \"SCSI\",\n            },\n            deviceType: \"DISK\",\n        },\n    }],\n    categories: [\n        {\n            name: \"Environment\",\n            value: \"Staging\",\n        },\n        {\n            name: \"TIER-1\",\n            value: WEB.id,\n        },\n    ],\n});\n//DB-1 VM\nconst vm_db = new nutanix.VirtualMachine(\"vm-db\", {\n    name: \"test-dou-vm-flow-DB-1\",\n    clusterUuid: clusterUuid,\n    numVcpusPerSocket: 1,\n    numSockets: 1,\n    memorySizeMib: 186,\n    nicLists: [{\n        subnetUuid: \"c56b535c-8aff-4435-ae85-78e64a07f76d\",\n    }],\n    diskLists: [{\n        dataSourceReference: {\n            kind: \"image\",\n            uuid: cirros_034_disk.id,\n        },\n        deviceProperties: {\n            diskAddress: {\n                device_index: \"0\",\n                adapter_type: \"SCSI\",\n            },\n            deviceType: \"DISK\",\n        },\n    }],\n    categories: [\n        {\n            name: \"Environment\",\n            value: \"Staging\",\n        },\n        {\n            name: \"TIER-1\",\n            value: DB.id,\n        },\n    ],\n});\n//Create Application Network Policy.\nconst TEST_TIER = new nutanix.NetworkSecurityRule(\"TEST-TIER\", {\n    name: \"RULE-1-TIERS\",\n    description: \"rule 1 tiers\",\n    appRuleAction: \"APPLY\",\n    appRuleInboundAllowLists: [{\n        peerSpecificationType: \"FILTER\",\n        filterType: \"CATEGORIES_MATCH_ALL\",\n        filterKindLists: [\"vm\"],\n        filterParams: [{\n            name: test_category_key.id,\n            values: [WEB.id],\n        }],\n    }],\n    appRuleTargetGroupDefaultInternalPolicy: \"DENY_ALL\",\n    appRuleTargetGroupPeerSpecificationType: \"FILTER\",\n    appRuleTargetGroupFilterType: \"CATEGORIES_MATCH_ALL\",\n    appRuleTargetGroupFilterKindLists: [\"vm\"],\n    appRuleTargetGroupFilterParams: [\n        {\n            name: test_category_key.id,\n            values: [APP.id],\n        },\n        {\n            name: USER.id,\n            values: [group.id],\n        },\n        {\n            name: \"AppType\",\n            values: [\"Default\"],\n        },\n    ],\n    appRuleOutboundAllowLists: [{\n        peerSpecificationType: \"FILTER\",\n        filterType: \"CATEGORIES_MATCH_ALL\",\n        filterKindLists: [\"vm\"],\n        filterParams: [{\n            name: test_category_key.id,\n            values: [DB.id],\n        }],\n    }],\n}, {\n    dependsOn: [\n        vm_app,\n        vm_web,\n        vm_db,\n    ],\n});\n```\n```python\nimport pulumi\nimport pulumi_nutanix as nutanix\n\nclusters = nutanix.get_clusters()\ncluster_uuid = [cluster.metadata[\"uuid\"] for cluster in clusters.entities if cluster.service_list[0] != \"PRISM_CENTRAL\"][0]\n#Create categories.\ntest_category_key = nutanix.CategoryKey(\"test-category-key\",\n    name=\"TIER-1\",\n    description=\"TIER Category Key\")\nuser = nutanix.CategoryKey(\"USER\",\n    name=\"user\",\n    description=\"user Category Key\")\nweb = nutanix.CategoryValue(\"WEB\",\n    name=test_category_key.id,\n    description=\"WEB Category Value\",\n    value=\"WEB-1\")\napp = nutanix.CategoryValue(\"APP\",\n    name=test_category_key.id,\n    description=\"APP Category Value\",\n    value=\"APP-1\")\ndb = nutanix.CategoryValue(\"DB\",\n    name=test_category_key.id,\n    description=\"DB Category Value\",\n    value=\"DB-1\")\ngroup = nutanix.CategoryValue(\"group\",\n    name=user.id,\n    description=\"group Category Value\",\n    value=\"group-1\")\n#Create a cirros image\ncirros_034_disk = nutanix.Image(\"cirros-034-disk\",\n    name=\"test-image-vm-create-flow\",\n    source_uri=\"http://download.cirros-cloud.net/0.4.0/cirros-0.4.0-x86_64-disk.img\",\n    description=\"heres a tiny linux image, not an iso, but a real disk!\")\n#APP-1 VM.\nvm_app = nutanix.VirtualMachine(\"vm-app\",\n    name=\"test-dou-vm-flow-APP-1\",\n    cluster_uuid=cluster_uuid,\n    num_vcpus_per_socket=1,\n    num_sockets=1,\n    memory_size_mib=186,\n    nic_lists=[{\n        \"subnet_uuid\": \"c56b535c-8aff-4435-ae85-78e64a07f76d\",\n    }],\n    disk_lists=[{\n        \"data_source_reference\": {\n            \"kind\": \"image\",\n            \"uuid\": cirros_034_disk.id,\n        },\n        \"device_properties\": {\n            \"disk_address\": {\n                \"device_index\": \"0\",\n                \"adapter_type\": \"SCSI\",\n            },\n            \"device_type\": \"DISK\",\n        },\n    }],\n    categories=[\n        {\n            \"name\": \"Environment\",\n            \"value\": \"Staging\",\n        },\n        {\n            \"name\": \"TIER-1\",\n            \"value\": app.id,\n        },\n    ])\n#WEB-1 VM\nvm_web = nutanix.VirtualMachine(\"vm-web\",\n    name=\"test-dou-vm-flow-WEB-1\",\n    cluster_uuid=cluster_uuid,\n    num_vcpus_per_socket=1,\n    num_sockets=1,\n    memory_size_mib=186,\n    nic_lists=[{\n        \"subnet_uuid\": \"c56b535c-8aff-4435-ae85-78e64a07f76d\",\n    }],\n    disk_lists=[{\n        \"data_source_reference\": {\n            \"kind\": \"image\",\n            \"uuid\": cirros_034_disk.id,\n        },\n        \"device_properties\": {\n            \"disk_address\": {\n                \"device_index\": \"0\",\n                \"adapter_type\": \"SCSI\",\n            },\n            \"device_type\": \"DISK\",\n        },\n    }],\n    categories=[\n        {\n            \"name\": \"Environment\",\n            \"value\": \"Staging\",\n        },\n        {\n            \"name\": \"TIER-1\",\n            \"value\": web.id,\n        },\n    ])\n#DB-1 VM\nvm_db = nutanix.VirtualMachine(\"vm-db\",\n    name=\"test-dou-vm-flow-DB-1\",\n    cluster_uuid=cluster_uuid,\n    num_vcpus_per_socket=1,\n    num_sockets=1,\n    memory_size_mib=186,\n    nic_lists=[{\n        \"subnet_uuid\": \"c56b535c-8aff-4435-ae85-78e64a07f76d\",\n    }],\n    disk_lists=[{\n        \"data_source_reference\": {\n            \"kind\": \"image\",\n            \"uuid\": cirros_034_disk.id,\n        },\n        \"device_properties\": {\n            \"disk_address\": {\n                \"device_index\": \"0\",\n                \"adapter_type\": \"SCSI\",\n            },\n            \"device_type\": \"DISK\",\n        },\n    }],\n    categories=[\n        {\n            \"name\": \"Environment\",\n            \"value\": \"Staging\",\n        },\n        {\n            \"name\": \"TIER-1\",\n            \"value\": db.id,\n        },\n    ])\n#Create Application Network Policy.\ntes_t__tier = nutanix.NetworkSecurityRule(\"TEST-TIER\",\n    name=\"RULE-1-TIERS\",\n    description=\"rule 1 tiers\",\n    app_rule_action=\"APPLY\",\n    app_rule_inbound_allow_lists=[{\n        \"peer_specification_type\": \"FILTER\",\n        \"filter_type\": \"CATEGORIES_MATCH_ALL\",\n        \"filter_kind_lists\": [\"vm\"],\n        \"filter_params\": [{\n            \"name\": test_category_key.id,\n            \"values\": [web.id],\n        }],\n    }],\n    app_rule_target_group_default_internal_policy=\"DENY_ALL\",\n    app_rule_target_group_peer_specification_type=\"FILTER\",\n    app_rule_target_group_filter_type=\"CATEGORIES_MATCH_ALL\",\n    app_rule_target_group_filter_kind_lists=[\"vm\"],\n    app_rule_target_group_filter_params=[\n        {\n            \"name\": test_category_key.id,\n            \"values\": [app.id],\n        },\n        {\n            \"name\": user.id,\n            \"values\": [group.id],\n        },\n        {\n            \"name\": \"AppType\",\n            \"values\": [\"Default\"],\n        },\n    ],\n    app_rule_outbound_allow_lists=[{\n        \"peer_specification_type\": \"FILTER\",\n        \"filter_type\": \"CATEGORIES_MATCH_ALL\",\n        \"filter_kind_lists\": [\"vm\"],\n        \"filter_params\": [{\n            \"name\": test_category_key.id,\n            \"values\": [db.id],\n        }],\n    }],\n    opts = pulumi.ResourceOptions(depends_on=[\n            vm_app,\n            vm_web,\n            vm_db,\n        ]))\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Nutanix = PiersKarsenbarg.Nutanix;\nusing Nutanix = Pulumi.Nutanix;\n\nreturn await Deployment.RunAsync(() => \n{\n    var clusters = Nutanix.GetClusters.Invoke();\n\n    var clusterUuid = .Where(cluster => cluster.ServiceList[0] != \"PRISM_CENTRAL\").Select(cluster => \n    {\n        return cluster.Metadata?.Uuid;\n    }).ToList()[0];\n\n    //Create categories.\n    var test_category_key = new Nutanix.CategoryKey(\"test-category-key\", new()\n    {\n        Name = \"TIER-1\",\n        Description = \"TIER Category Key\",\n    });\n\n    var USER = new Nutanix.CategoryKey(\"USER\", new()\n    {\n        Name = \"user\",\n        Description = \"user Category Key\",\n    });\n\n    var WEB = new Nutanix.CategoryValue(\"WEB\", new()\n    {\n        Name = test_category_key.Id,\n        Description = \"WEB Category Value\",\n        Value = \"WEB-1\",\n    });\n\n    var APP = new Nutanix.CategoryValue(\"APP\", new()\n    {\n        Name = test_category_key.Id,\n        Description = \"APP Category Value\",\n        Value = \"APP-1\",\n    });\n\n    var DB = new Nutanix.CategoryValue(\"DB\", new()\n    {\n        Name = test_category_key.Id,\n        Description = \"DB Category Value\",\n        Value = \"DB-1\",\n    });\n\n    var @group = new Nutanix.CategoryValue(\"group\", new()\n    {\n        Name = USER.Id,\n        Description = \"group Category Value\",\n        Value = \"group-1\",\n    });\n\n    //Create a cirros image\n    var cirros_034_disk = new Nutanix.Image(\"cirros-034-disk\", new()\n    {\n        Name = \"test-image-vm-create-flow\",\n        SourceUri = \"http://download.cirros-cloud.net/0.4.0/cirros-0.4.0-x86_64-disk.img\",\n        Description = \"heres a tiny linux image, not an iso, but a real disk!\",\n    });\n\n    //APP-1 VM.\n    var vm_app = new Nutanix.VirtualMachine(\"vm-app\", new()\n    {\n        Name = \"test-dou-vm-flow-APP-1\",\n        ClusterUuid = clusterUuid,\n        NumVcpusPerSocket = 1,\n        NumSockets = 1,\n        MemorySizeMib = 186,\n        NicLists = new[]\n        {\n            new Nutanix.Inputs.VirtualMachineNicListArgs\n            {\n                SubnetUuid = \"c56b535c-8aff-4435-ae85-78e64a07f76d\",\n            },\n        },\n        DiskLists = new[]\n        {\n            new Nutanix.Inputs.VirtualMachineDiskListArgs\n            {\n                DataSourceReference = \n                {\n                    { \"kind\", \"image\" },\n                    { \"uuid\", cirros_034_disk.Id },\n                },\n                DeviceProperties = new Nutanix.Inputs.VirtualMachineDiskListDevicePropertiesArgs\n                {\n                    DiskAddress = \n                    {\n                        { \"device_index\", \"0\" },\n                        { \"adapter_type\", \"SCSI\" },\n                    },\n                    DeviceType = \"DISK\",\n                },\n            },\n        },\n        Categories = new[]\n        {\n            new Nutanix.Inputs.VirtualMachineCategoryArgs\n            {\n                Name = \"Environment\",\n                Value = \"Staging\",\n            },\n            new Nutanix.Inputs.VirtualMachineCategoryArgs\n            {\n                Name = \"TIER-1\",\n                Value = APP.Id,\n            },\n        },\n    });\n\n    //WEB-1 VM\n    var vm_web = new Nutanix.VirtualMachine(\"vm-web\", new()\n    {\n        Name = \"test-dou-vm-flow-WEB-1\",\n        ClusterUuid = clusterUuid,\n        NumVcpusPerSocket = 1,\n        NumSockets = 1,\n        MemorySizeMib = 186,\n        NicLists = new[]\n        {\n            new Nutanix.Inputs.VirtualMachineNicListArgs\n            {\n                SubnetUuid = \"c56b535c-8aff-4435-ae85-78e64a07f76d\",\n            },\n        },\n        DiskLists = new[]\n        {\n            new Nutanix.Inputs.VirtualMachineDiskListArgs\n            {\n                DataSourceReference = \n                {\n                    { \"kind\", \"image\" },\n                    { \"uuid\", cirros_034_disk.Id },\n                },\n                DeviceProperties = new Nutanix.Inputs.VirtualMachineDiskListDevicePropertiesArgs\n                {\n                    DiskAddress = \n                    {\n                        { \"device_index\", \"0\" },\n                        { \"adapter_type\", \"SCSI\" },\n                    },\n                    DeviceType = \"DISK\",\n                },\n            },\n        },\n        Categories = new[]\n        {\n            new Nutanix.Inputs.VirtualMachineCategoryArgs\n            {\n                Name = \"Environment\",\n                Value = \"Staging\",\n            },\n            new Nutanix.Inputs.VirtualMachineCategoryArgs\n            {\n                Name = \"TIER-1\",\n                Value = WEB.Id,\n            },\n        },\n    });\n\n    //DB-1 VM\n    var vm_db = new Nutanix.VirtualMachine(\"vm-db\", new()\n    {\n        Name = \"test-dou-vm-flow-DB-1\",\n        ClusterUuid = clusterUuid,\n        NumVcpusPerSocket = 1,\n        NumSockets = 1,\n        MemorySizeMib = 186,\n        NicLists = new[]\n        {\n            new Nutanix.Inputs.VirtualMachineNicListArgs\n            {\n                SubnetUuid = \"c56b535c-8aff-4435-ae85-78e64a07f76d\",\n            },\n        },\n        DiskLists = new[]\n        {\n            new Nutanix.Inputs.VirtualMachineDiskListArgs\n            {\n                DataSourceReference = \n                {\n                    { \"kind\", \"image\" },\n                    { \"uuid\", cirros_034_disk.Id },\n                },\n                DeviceProperties = new Nutanix.Inputs.VirtualMachineDiskListDevicePropertiesArgs\n                {\n                    DiskAddress = \n                    {\n                        { \"device_index\", \"0\" },\n                        { \"adapter_type\", \"SCSI\" },\n                    },\n                    DeviceType = \"DISK\",\n                },\n            },\n        },\n        Categories = new[]\n        {\n            new Nutanix.Inputs.VirtualMachineCategoryArgs\n            {\n                Name = \"Environment\",\n                Value = \"Staging\",\n            },\n            new Nutanix.Inputs.VirtualMachineCategoryArgs\n            {\n                Name = \"TIER-1\",\n                Value = DB.Id,\n            },\n        },\n    });\n\n    //Create Application Network Policy.\n    var TEST_TIER = new Nutanix.NetworkSecurityRule(\"TEST-TIER\", new()\n    {\n        Name = \"RULE-1-TIERS\",\n        Description = \"rule 1 tiers\",\n        AppRuleAction = \"APPLY\",\n        AppRuleInboundAllowLists = new[]\n        {\n            new Nutanix.Inputs.NetworkSecurityRuleAppRuleInboundAllowListArgs\n            {\n                PeerSpecificationType = \"FILTER\",\n                FilterType = \"CATEGORIES_MATCH_ALL\",\n                FilterKindLists = new[]\n                {\n                    \"vm\",\n                },\n                FilterParams = new[]\n                {\n                    new Nutanix.Inputs.NetworkSecurityRuleAppRuleInboundAllowListFilterParamArgs\n                    {\n                        Name = test_category_key.Id,\n                        Values = new[]\n                        {\n                            WEB.Id,\n                        },\n                    },\n                },\n            },\n        },\n        AppRuleTargetGroupDefaultInternalPolicy = \"DENY_ALL\",\n        AppRuleTargetGroupPeerSpecificationType = \"FILTER\",\n        AppRuleTargetGroupFilterType = \"CATEGORIES_MATCH_ALL\",\n        AppRuleTargetGroupFilterKindLists = new[]\n        {\n            \"vm\",\n        },\n        AppRuleTargetGroupFilterParams = new[]\n        {\n            new Nutanix.Inputs.NetworkSecurityRuleAppRuleTargetGroupFilterParamArgs\n            {\n                Name = test_category_key.Id,\n                Values = new[]\n                {\n                    APP.Id,\n                },\n            },\n            new Nutanix.Inputs.NetworkSecurityRuleAppRuleTargetGroupFilterParamArgs\n            {\n                Name = USER.Id,\n                Values = new[]\n                {\n                    @group.Id,\n                },\n            },\n            new Nutanix.Inputs.NetworkSecurityRuleAppRuleTargetGroupFilterParamArgs\n            {\n                Name = \"AppType\",\n                Values = new[]\n                {\n                    \"Default\",\n                },\n            },\n        },\n        AppRuleOutboundAllowLists = new[]\n        {\n            new Nutanix.Inputs.NetworkSecurityRuleAppRuleOutboundAllowListArgs\n            {\n                PeerSpecificationType = \"FILTER\",\n                FilterType = \"CATEGORIES_MATCH_ALL\",\n                FilterKindLists = new[]\n                {\n                    \"vm\",\n                },\n                FilterParams = new[]\n                {\n                    new Nutanix.Inputs.NetworkSecurityRuleAppRuleOutboundAllowListFilterParamArgs\n                    {\n                        Name = test_category_key.Id,\n                        Values = new[]\n                        {\n                            DB.Id,\n                        },\n                    },\n                },\n            },\n        },\n    }, new CustomResourceOptions\n    {\n        DependsOn =\n        {\n            vm_app,\n            vm_web,\n            vm_db,\n        },\n    });\n\n});\n```\n<!--End PulumiCodeChooser -->\n\n### Usage with service and address groups\n<!--Start PulumiCodeChooser -->\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as nutanix from \"@pierskarsenbarg/nutanix\";\n\nconst service1 = new nutanix.ServiceGroup(\"service1\", {\n    name: \"srv-1\",\n    description: \"test\",\n    serviceLists: [{\n        protocol: \"TCP\",\n        tcpPortRangeLists: [\n            {\n                startPort: 22,\n                endPort: 22,\n            },\n            {\n                startPort: 2222,\n                endPort: 2222,\n            },\n        ],\n    }],\n});\nconst address1 = new nutanix.AddressGroup(\"address1\", {\n    name: \"addr-1\",\n    description: \"test\",\n    ipAddressBlockLists: [{\n        ip: \"10.0.0.0\",\n        prefixLength: 24,\n    }],\n});\nconst ad_group_user_1 = new nutanix.CategoryValue(\"ad-group-user-1\", {\n    name: \"AD\",\n    description: \"group user category value\",\n    value: \"AD\",\n});\nconst VDI = new nutanix.NetworkSecurityRule(\"VDI\", {\n    name: \"nsr-1\",\n    adRuleAction: \"APPLY\",\n    description: \"test\",\n    adRuleInboundAllowLists: [{\n        ipSubnet: \"10.0.0.0\",\n        ipSubnetPrefixLength: \"8\",\n        peerSpecificationType: \"IP_SUBNET\",\n        protocol: \"ALL\",\n    }],\n    adRuleTargetGroupDefaultInternalPolicy: \"DENY_ALL\",\n    adRuleTargetGroupFilterKindLists: [\"vm\"],\n    adRuleTargetGroupFilterParams: [{\n        name: \"AD\",\n        values: [\"AD\"],\n    }],\n    adRuleTargetGroupFilterType: \"CATEGORIES_MATCH_ALL\",\n    adRuleTargetGroupPeerSpecificationType: \"FILTER\",\n    adRuleOutboundAllowLists: [{\n        peerSpecificationType: \"ALL\",\n        serviceGroupLists: [{\n            kind: \"service_group\",\n            uuid: service1.id,\n        }],\n        addressGroupInclusionLists: [{\n            kind: \"address_group\",\n            uuid: address1.id,\n        }],\n    }],\n}, {\n    dependsOn: [ad_group_user_1],\n});\n```\n```python\nimport pulumi\nimport pulumi_nutanix as nutanix\n\nservice1 = nutanix.ServiceGroup(\"service1\",\n    name=\"srv-1\",\n    description=\"test\",\n    service_lists=[{\n        \"protocol\": \"TCP\",\n        \"tcp_port_range_lists\": [\n            {\n                \"start_port\": 22,\n                \"end_port\": 22,\n            },\n            {\n                \"start_port\": 2222,\n                \"end_port\": 2222,\n            },\n        ],\n    }])\naddress1 = nutanix.AddressGroup(\"address1\",\n    name=\"addr-1\",\n    description=\"test\",\n    ip_address_block_lists=[{\n        \"ip\": \"10.0.0.0\",\n        \"prefix_length\": 24,\n    }])\nad_group_user_1 = nutanix.CategoryValue(\"ad-group-user-1\",\n    name=\"AD\",\n    description=\"group user category value\",\n    value=\"AD\")\nvdi = nutanix.NetworkSecurityRule(\"VDI\",\n    name=\"nsr-1\",\n    ad_rule_action=\"APPLY\",\n    description=\"test\",\n    ad_rule_inbound_allow_lists=[{\n        \"ip_subnet\": \"10.0.0.0\",\n        \"ip_subnet_prefix_length\": \"8\",\n        \"peer_specification_type\": \"IP_SUBNET\",\n        \"protocol\": \"ALL\",\n    }],\n    ad_rule_target_group_default_internal_policy=\"DENY_ALL\",\n    ad_rule_target_group_filter_kind_lists=[\"vm\"],\n    ad_rule_target_group_filter_params=[{\n        \"name\": \"AD\",\n        \"values\": [\"AD\"],\n    }],\n    ad_rule_target_group_filter_type=\"CATEGORIES_MATCH_ALL\",\n    ad_rule_target_group_peer_specification_type=\"FILTER\",\n    ad_rule_outbound_allow_lists=[{\n        \"peer_specification_type\": \"ALL\",\n        \"service_group_lists\": [{\n            \"kind\": \"service_group\",\n            \"uuid\": service1.id,\n        }],\n        \"address_group_inclusion_lists\": [{\n            \"kind\": \"address_group\",\n            \"uuid\": address1.id,\n        }],\n    }],\n    opts = pulumi.ResourceOptions(depends_on=[ad_group_user_1]))\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Nutanix = PiersKarsenbarg.Nutanix;\n\nreturn await Deployment.RunAsync(() => \n{\n    var service1 = new Nutanix.ServiceGroup(\"service1\", new()\n    {\n        Name = \"srv-1\",\n        Description = \"test\",\n        ServiceLists = new[]\n        {\n            new Nutanix.Inputs.ServiceGroupServiceListArgs\n            {\n                Protocol = \"TCP\",\n                TcpPortRangeLists = new[]\n                {\n                    new Nutanix.Inputs.ServiceGroupServiceListTcpPortRangeListArgs\n                    {\n                        StartPort = 22,\n                        EndPort = 22,\n                    },\n                    new Nutanix.Inputs.ServiceGroupServiceListTcpPortRangeListArgs\n                    {\n                        StartPort = 2222,\n                        EndPort = 2222,\n                    },\n                },\n            },\n        },\n    });\n\n    var address1 = new Nutanix.AddressGroup(\"address1\", new()\n    {\n        Name = \"addr-1\",\n        Description = \"test\",\n        IpAddressBlockLists = new[]\n        {\n            new Nutanix.Inputs.AddressGroupIpAddressBlockListArgs\n            {\n                Ip = \"10.0.0.0\",\n                PrefixLength = 24,\n            },\n        },\n    });\n\n    var ad_group_user_1 = new Nutanix.CategoryValue(\"ad-group-user-1\", new()\n    {\n        Name = \"AD\",\n        Description = \"group user category value\",\n        Value = \"AD\",\n    });\n\n    var VDI = new Nutanix.NetworkSecurityRule(\"VDI\", new()\n    {\n        Name = \"nsr-1\",\n        AdRuleAction = \"APPLY\",\n        Description = \"test\",\n        AdRuleInboundAllowLists = new[]\n        {\n            new Nutanix.Inputs.NetworkSecurityRuleAdRuleInboundAllowListArgs\n            {\n                IpSubnet = \"10.0.0.0\",\n                IpSubnetPrefixLength = \"8\",\n                PeerSpecificationType = \"IP_SUBNET\",\n                Protocol = \"ALL\",\n            },\n        },\n        AdRuleTargetGroupDefaultInternalPolicy = \"DENY_ALL\",\n        AdRuleTargetGroupFilterKindLists = new[]\n        {\n            \"vm\",\n        },\n        AdRuleTargetGroupFilterParams = new[]\n        {\n            new Nutanix.Inputs.NetworkSecurityRuleAdRuleTargetGroupFilterParamArgs\n            {\n                Name = \"AD\",\n                Values = new[]\n                {\n                    \"AD\",\n                },\n            },\n        },\n        AdRuleTargetGroupFilterType = \"CATEGORIES_MATCH_ALL\",\n        AdRuleTargetGroupPeerSpecificationType = \"FILTER\",\n        AdRuleOutboundAllowLists = new[]\n        {\n            new Nutanix.Inputs.NetworkSecurityRuleAdRuleOutboundAllowListArgs\n            {\n                PeerSpecificationType = \"ALL\",\n                ServiceGroupLists = new[]\n                {\n                    new Nutanix.Inputs.NetworkSecurityRuleAdRuleOutboundAllowListServiceGroupListArgs\n                    {\n                        Kind = \"service_group\",\n                        Uuid = service1.Id,\n                    },\n                },\n                AddressGroupInclusionLists = new[]\n                {\n                    new Nutanix.Inputs.NetworkSecurityRuleAdRuleOutboundAllowListAddressGroupInclusionListArgs\n                    {\n                        Kind = \"address_group\",\n                        Uuid = address1.Id,\n                    },\n                },\n            },\n        },\n    }, new CustomResourceOptions\n    {\n        DependsOn =\n        {\n            ad_group_user_1,\n        },\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pierskarsenbarg/pulumi-nutanix/sdk/go/nutanix\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tservice1, err := nutanix.NewServiceGroup(ctx, \"service1\", &nutanix.ServiceGroupArgs{\n\t\t\tName:        pulumi.String(\"srv-1\"),\n\t\t\tDescription: pulumi.String(\"test\"),\n\t\t\tServiceLists: nutanix.ServiceGroupServiceListArray{\n\t\t\t\t&nutanix.ServiceGroupServiceListArgs{\n\t\t\t\t\tProtocol: pulumi.String(\"TCP\"),\n\t\t\t\t\tTcpPortRangeLists: nutanix.ServiceGroupServiceListTcpPortRangeListArray{\n\t\t\t\t\t\t&nutanix.ServiceGroupServiceListTcpPortRangeListArgs{\n\t\t\t\t\t\t\tStartPort: pulumi.Int(22),\n\t\t\t\t\t\t\tEndPort:   pulumi.Int(22),\n\t\t\t\t\t\t},\n\t\t\t\t\t\t&nutanix.ServiceGroupServiceListTcpPortRangeListArgs{\n\t\t\t\t\t\t\tStartPort: pulumi.Int(2222),\n\t\t\t\t\t\t\tEndPort:   pulumi.Int(2222),\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\taddress1, err := nutanix.NewAddressGroup(ctx, \"address1\", &nutanix.AddressGroupArgs{\n\t\t\tName:        pulumi.String(\"addr-1\"),\n\t\t\tDescription: pulumi.String(\"test\"),\n\t\t\tIpAddressBlockLists: nutanix.AddressGroupIpAddressBlockListArray{\n\t\t\t\t&nutanix.AddressGroupIpAddressBlockListArgs{\n\t\t\t\t\tIp:           pulumi.String(\"10.0.0.0\"),\n\t\t\t\t\tPrefixLength: pulumi.Int(24),\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tad_group_user_1, err := nutanix.NewCategoryValue(ctx, \"ad-group-user-1\", &nutanix.CategoryValueArgs{\n\t\t\tName:        pulumi.String(\"AD\"),\n\t\t\tDescription: pulumi.String(\"group user category value\"),\n\t\t\tValue:       pulumi.String(\"AD\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = nutanix.NewNetworkSecurityRule(ctx, \"VDI\", &nutanix.NetworkSecurityRuleArgs{\n\t\t\tName:         pulumi.String(\"nsr-1\"),\n\t\t\tAdRuleAction: pulumi.String(\"APPLY\"),\n\t\t\tDescription:  pulumi.String(\"test\"),\n\t\t\tAdRuleInboundAllowLists: nutanix.NetworkSecurityRuleAdRuleInboundAllowListArray{\n\t\t\t\t&nutanix.NetworkSecurityRuleAdRuleInboundAllowListArgs{\n\t\t\t\t\tIpSubnet:              pulumi.String(\"10.0.0.0\"),\n\t\t\t\t\tIpSubnetPrefixLength:  pulumi.String(\"8\"),\n\t\t\t\t\tPeerSpecificationType: pulumi.String(\"IP_SUBNET\"),\n\t\t\t\t\tProtocol:              pulumi.String(\"ALL\"),\n\t\t\t\t},\n\t\t\t},\n\t\t\tAdRuleTargetGroupDefaultInternalPolicy: pulumi.String(\"DENY_ALL\"),\n\t\t\tAdRuleTargetGroupFilterKindLists: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"vm\"),\n\t\t\t},\n\t\t\tAdRuleTargetGroupFilterParams: nutanix.NetworkSecurityRuleAdRuleTargetGroupFilterParamArray{\n\t\t\t\t&nutanix.NetworkSecurityRuleAdRuleTargetGroupFilterParamArgs{\n\t\t\t\t\tName: pulumi.String(\"AD\"),\n\t\t\t\t\tValues: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"AD\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t\tAdRuleTargetGroupFilterType:            pulumi.String(\"CATEGORIES_MATCH_ALL\"),\n\t\t\tAdRuleTargetGroupPeerSpecificationType: pulumi.String(\"FILTER\"),\n\t\t\tAdRuleOutboundAllowLists: nutanix.NetworkSecurityRuleAdRuleOutboundAllowListArray{\n\t\t\t\t&nutanix.NetworkSecurityRuleAdRuleOutboundAllowListArgs{\n\t\t\t\t\tPeerSpecificationType: pulumi.String(\"ALL\"),\n\t\t\t\t\tServiceGroupLists: nutanix.NetworkSecurityRuleAdRuleOutboundAllowListServiceGroupListArray{\n\t\t\t\t\t\t&nutanix.NetworkSecurityRuleAdRuleOutboundAllowListServiceGroupListArgs{\n\t\t\t\t\t\t\tKind: pulumi.String(\"service_group\"),\n\t\t\t\t\t\t\tUuid: service1.ID(),\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t\tAddressGroupInclusionLists: nutanix.NetworkSecurityRuleAdRuleOutboundAllowListAddressGroupInclusionListArray{\n\t\t\t\t\t\t&nutanix.NetworkSecurityRuleAdRuleOutboundAllowListAddressGroupInclusionListArgs{\n\t\t\t\t\t\t\tKind: pulumi.String(\"address_group\"),\n\t\t\t\t\t\t\tUuid: address1.ID(),\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t}, pulumi.DependsOn([]pulumi.Resource{\n\t\t\tad_group_user_1,\n\t\t}))\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.nutanix.ServiceGroup;\nimport com.pulumi.nutanix.ServiceGroupArgs;\nimport com.pulumi.nutanix.inputs.ServiceGroupServiceListArgs;\nimport com.pulumi.nutanix.AddressGroup;\nimport com.pulumi.nutanix.AddressGroupArgs;\nimport com.pulumi.nutanix.inputs.AddressGroupIpAddressBlockListArgs;\nimport com.pulumi.nutanix.CategoryValue;\nimport com.pulumi.nutanix.CategoryValueArgs;\nimport com.pulumi.nutanix.NetworkSecurityRule;\nimport com.pulumi.nutanix.NetworkSecurityRuleArgs;\nimport com.pulumi.nutanix.inputs.NetworkSecurityRuleAdRuleInboundAllowListArgs;\nimport com.pulumi.nutanix.inputs.NetworkSecurityRuleAdRuleTargetGroupFilterParamArgs;\nimport com.pulumi.nutanix.inputs.NetworkSecurityRuleAdRuleOutboundAllowListArgs;\nimport com.pulumi.resources.CustomResourceOptions;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var service1 = new ServiceGroup(\"service1\", ServiceGroupArgs.builder()\n            .name(\"srv-1\")\n            .description(\"test\")\n            .serviceLists(ServiceGroupServiceListArgs.builder()\n                .protocol(\"TCP\")\n                .tcpPortRangeLists(                \n                    ServiceGroupServiceListTcpPortRangeListArgs.builder()\n                        .startPort(22)\n                        .endPort(22)\n                        .build(),\n                    ServiceGroupServiceListTcpPortRangeListArgs.builder()\n                        .startPort(2222)\n                        .endPort(2222)\n                        .build())\n                .build())\n            .build());\n\n        var address1 = new AddressGroup(\"address1\", AddressGroupArgs.builder()\n            .name(\"addr-1\")\n            .description(\"test\")\n            .ipAddressBlockLists(AddressGroupIpAddressBlockListArgs.builder()\n                .ip(\"10.0.0.0\")\n                .prefixLength(24)\n                .build())\n            .build());\n\n        var ad_group_user_1 = new CategoryValue(\"ad-group-user-1\", CategoryValueArgs.builder()\n            .name(\"AD\")\n            .description(\"group user category value\")\n            .value(\"AD\")\n            .build());\n\n        var vDI = new NetworkSecurityRule(\"VDI\", NetworkSecurityRuleArgs.builder()\n            .name(\"nsr-1\")\n            .adRuleAction(\"APPLY\")\n            .description(\"test\")\n            .adRuleInboundAllowLists(NetworkSecurityRuleAdRuleInboundAllowListArgs.builder()\n                .ipSubnet(\"10.0.0.0\")\n                .ipSubnetPrefixLength(\"8\")\n                .peerSpecificationType(\"IP_SUBNET\")\n                .protocol(\"ALL\")\n                .build())\n            .adRuleTargetGroupDefaultInternalPolicy(\"DENY_ALL\")\n            .adRuleTargetGroupFilterKindLists(\"vm\")\n            .adRuleTargetGroupFilterParams(NetworkSecurityRuleAdRuleTargetGroupFilterParamArgs.builder()\n                .name(\"AD\")\n                .values(\"AD\")\n                .build())\n            .adRuleTargetGroupFilterType(\"CATEGORIES_MATCH_ALL\")\n            .adRuleTargetGroupPeerSpecificationType(\"FILTER\")\n            .adRuleOutboundAllowLists(NetworkSecurityRuleAdRuleOutboundAllowListArgs.builder()\n                .peerSpecificationType(\"ALL\")\n                .serviceGroupLists(NetworkSecurityRuleAdRuleOutboundAllowListServiceGroupListArgs.builder()\n                    .kind(\"service_group\")\n                    .uuid(service1.id())\n                    .build())\n                .addressGroupInclusionLists(NetworkSecurityRuleAdRuleOutboundAllowListAddressGroupInclusionListArgs.builder()\n                    .kind(\"address_group\")\n                    .uuid(address1.id())\n                    .build())\n                .build())\n            .build(), CustomResourceOptions.builder()\n                .dependsOn(ad_group_user_1)\n                .build());\n\n    }\n}\n```\n```yaml\nresources:\n  service1:\n    type: nutanix:ServiceGroup\n    properties:\n      name: srv-1\n      description: test\n      serviceLists:\n        - protocol: TCP\n          tcpPortRangeLists:\n            - startPort: 22\n              endPort: 22\n            - startPort: 2222\n              endPort: 2222\n  address1:\n    type: nutanix:AddressGroup\n    properties:\n      name: addr-1\n      description: test\n      ipAddressBlockLists:\n        - ip: 10.0.0.0\n          prefixLength: 24\n  ad-group-user-1:\n    type: nutanix:CategoryValue\n    properties:\n      name: AD\n      description: group user category value\n      value: AD\n  VDI:\n    type: nutanix:NetworkSecurityRule\n    properties:\n      name: nsr-1\n      adRuleAction: APPLY\n      description: test\n      adRuleInboundAllowLists:\n        - ipSubnet: 10.0.0.0\n          ipSubnetPrefixLength: '8'\n          peerSpecificationType: IP_SUBNET\n          protocol: ALL\n      adRuleTargetGroupDefaultInternalPolicy: DENY_ALL\n      adRuleTargetGroupFilterKindLists:\n        - vm\n      adRuleTargetGroupFilterParams:\n        - name: AD\n          values:\n            - AD\n      adRuleTargetGroupFilterType: CATEGORIES_MATCH_ALL\n      adRuleTargetGroupPeerSpecificationType: FILTER\n      adRuleOutboundAllowLists:\n        - peerSpecificationType: ALL\n          serviceGroupLists:\n            - kind: service_group\n              uuid: ${service1.id}\n          addressGroupInclusionLists:\n            - kind: address_group\n              uuid: ${address1.id}\n    options:\n      dependsOn:\n        - ${[\"ad-group-user-1\"]}\n```\n<!--End PulumiCodeChooser -->\n",
      "properties": {
        "adRuleAction": {
          "type": "string",
          "description": "- (Optional) - These rules govern what flows are allowed. Target group is a required attribute. Empty<span pulumi-lang-nodejs=\" inboundAllowList \" pulumi-lang-dotnet=\" InboundAllowList \" pulumi-lang-go=\" inboundAllowList \" pulumi-lang-python=\" inbound_allow_list \" pulumi-lang-yaml=\" inboundAllowList \" pulumi-lang-java=\" inboundAllowList \"> inbound_allow_list </span>will not anything into target group. Empty<span pulumi-lang-nodejs=\" outboundAllowList \" pulumi-lang-dotnet=\" OutboundAllowList \" pulumi-lang-go=\" outboundAllowList \" pulumi-lang-python=\" outbound_allow_list \" pulumi-lang-yaml=\" outboundAllowList \" pulumi-lang-java=\" outboundAllowList \"> outbound_allow_list </span>will allow everything from target group.\n"
        },
        "adRuleInboundAllowLists": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FNetworkSecurityRuleAdRuleInboundAllowList:NetworkSecurityRuleAdRuleInboundAllowList"
          },
          "description": "- (Optional) The set of categories that matching VMs need to have.\n"
        },
        "adRuleOutboundAllowLists": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FNetworkSecurityRuleAdRuleOutboundAllowList:NetworkSecurityRuleAdRuleOutboundAllowList"
          },
          "description": "- (Optional)\n"
        },
        "adRuleTargetGroupDefaultInternalPolicy": {
          "type": "string",
          "description": "- (Optional) - Default policy for communication within target group.\n"
        },
        "adRuleTargetGroupFilterKindLists": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "- (Optional) - List of kinds associated with this filter.\n"
        },
        "adRuleTargetGroupFilterParams": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FNetworkSecurityRuleAdRuleTargetGroupFilterParam:NetworkSecurityRuleAdRuleTargetGroupFilterParam"
          },
          "description": "- (Optional) - A list of category key and list of values.\n"
        },
        "adRuleTargetGroupFilterType": {
          "type": "string",
          "description": "- (Optional) - The type of the filter being used.\n"
        },
        "adRuleTargetGroupPeerSpecificationType": {
          "type": "string",
          "description": "- (Optional) - Way to identify the object for which rule is applied.\n"
        },
        "allowIpv6Traffic": {
          "type": "boolean"
        },
        "apiVersion": {
          "type": "string",
          "description": "The version of the API.\n"
        },
        "appRuleAction": {
          "type": "string",
          "description": "- (Optional) - These rules govern what flows are allowed. Target group is a required attribute. Empty<span pulumi-lang-nodejs=\" inboundAllowList \" pulumi-lang-dotnet=\" InboundAllowList \" pulumi-lang-go=\" inboundAllowList \" pulumi-lang-python=\" inbound_allow_list \" pulumi-lang-yaml=\" inboundAllowList \" pulumi-lang-java=\" inboundAllowList \"> inbound_allow_list </span>will not anything into target group. Empty<span pulumi-lang-nodejs=\" outboundAllowList \" pulumi-lang-dotnet=\" OutboundAllowList \" pulumi-lang-go=\" outboundAllowList \" pulumi-lang-python=\" outbound_allow_list \" pulumi-lang-yaml=\" outboundAllowList \" pulumi-lang-java=\" outboundAllowList \"> outbound_allow_list </span>will allow everything from target group.\n"
        },
        "appRuleInboundAllowLists": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FNetworkSecurityRuleAppRuleInboundAllowList:NetworkSecurityRuleAppRuleInboundAllowList"
          },
          "description": "- (Optional) The set of categories that matching VMs need to have.\n"
        },
        "appRuleOutboundAllowLists": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FNetworkSecurityRuleAppRuleOutboundAllowList:NetworkSecurityRuleAppRuleOutboundAllowList"
          },
          "description": "- (Optional)\n"
        },
        "appRuleTargetGroupDefaultInternalPolicy": {
          "type": "string",
          "description": "- (Optional) - Default policy for communication within target group.\n"
        },
        "appRuleTargetGroupFilterKindLists": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "- (Optional) - List of kinds associated with this filter.\n"
        },
        "appRuleTargetGroupFilterParams": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FNetworkSecurityRuleAppRuleTargetGroupFilterParam:NetworkSecurityRuleAppRuleTargetGroupFilterParam"
          },
          "description": "- (Optional) - A list of category key and list of values.\n"
        },
        "appRuleTargetGroupFilterType": {
          "type": "string",
          "description": "- (Optional) - The type of the filter being used.\n"
        },
        "appRuleTargetGroupPeerSpecificationType": {
          "type": "string",
          "description": "- (Optional) - Way to identify the object for which rule is applied.\n"
        },
        "categories": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FNetworkSecurityRuleCategory:NetworkSecurityRuleCategory"
          },
          "description": "- (Optional) Categories for the network_security_rule.\n"
        },
        "description": {
          "type": "string",
          "description": "- (Optional) A description for network_security_rule.\n"
        },
        "isPolicyHitlogEnabled": {
          "type": "boolean"
        },
        "isolationRuleAction": {
          "type": "string",
          "description": "- (Optional) - These rules are used for environmental isolation.\n"
        },
        "isolationRuleFirstEntityFilterKindLists": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "- (Optional) - List of kinds associated with this filter.\n"
        },
        "isolationRuleFirstEntityFilterParams": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FNetworkSecurityRuleIsolationRuleFirstEntityFilterParam:NetworkSecurityRuleIsolationRuleFirstEntityFilterParam"
          },
          "description": "- (Optional) - A list of category key and list of values.\n"
        },
        "isolationRuleFirstEntityFilterType": {
          "type": "string",
          "description": "- (Optional) - The type of the filter being used.\n"
        },
        "isolationRuleSecondEntityFilterKindLists": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "- (Optional) - List of kinds associated with this filter.\n"
        },
        "isolationRuleSecondEntityFilterParams": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FNetworkSecurityRuleIsolationRuleSecondEntityFilterParam:NetworkSecurityRuleIsolationRuleSecondEntityFilterParam"
          },
          "description": "- (Optional) - A list of category key and list of values.\n"
        },
        "isolationRuleSecondEntityFilterType": {
          "type": "string",
          "description": "- (Optional) - The type of the filter being used.\n"
        },
        "metadata": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          },
          "description": "- The<span pulumi-lang-nodejs=\" networkSecurityRule \" pulumi-lang-dotnet=\" NetworkSecurityRule \" pulumi-lang-go=\" networkSecurityRule \" pulumi-lang-python=\" network_security_rule \" pulumi-lang-yaml=\" networkSecurityRule \" pulumi-lang-java=\" networkSecurityRule \"> network_security_rule </span>kind metadata.\n"
        },
        "name": {
          "type": "string",
          "description": "- (Required) The name for the network_security_rule.\n"
        },
        "ownerReference": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          },
          "description": "- (Optional) The reference to a user.\n"
        },
        "projectReference": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          },
          "description": "- (Optional) The reference to a project.\n"
        }
      },
      "type": "object",
      "required": [
        "adRuleAction",
        "adRuleInboundAllowLists",
        "adRuleOutboundAllowLists",
        "adRuleTargetGroupFilterKindLists",
        "adRuleTargetGroupFilterParams",
        "adRuleTargetGroupFilterType",
        "allowIpv6Traffic",
        "apiVersion",
        "appRuleAction",
        "appRuleInboundAllowLists",
        "appRuleOutboundAllowLists",
        "appRuleTargetGroupFilterKindLists",
        "appRuleTargetGroupFilterParams",
        "appRuleTargetGroupFilterType",
        "categories",
        "description",
        "isPolicyHitlogEnabled",
        "isolationRuleAction",
        "isolationRuleFirstEntityFilterKindLists",
        "isolationRuleFirstEntityFilterParams",
        "isolationRuleFirstEntityFilterType",
        "isolationRuleSecondEntityFilterKindLists",
        "isolationRuleSecondEntityFilterParams",
        "isolationRuleSecondEntityFilterType",
        "metadata",
        "name",
        "ownerReference",
        "projectReference"
      ],
      "inputProperties": {
        "adRuleAction": {
          "type": "string",
          "description": "- (Optional) - These rules govern what flows are allowed. Target group is a required attribute. Empty<span pulumi-lang-nodejs=\" inboundAllowList \" pulumi-lang-dotnet=\" InboundAllowList \" pulumi-lang-go=\" inboundAllowList \" pulumi-lang-python=\" inbound_allow_list \" pulumi-lang-yaml=\" inboundAllowList \" pulumi-lang-java=\" inboundAllowList \"> inbound_allow_list </span>will not anything into target group. Empty<span pulumi-lang-nodejs=\" outboundAllowList \" pulumi-lang-dotnet=\" OutboundAllowList \" pulumi-lang-go=\" outboundAllowList \" pulumi-lang-python=\" outbound_allow_list \" pulumi-lang-yaml=\" outboundAllowList \" pulumi-lang-java=\" outboundAllowList \"> outbound_allow_list </span>will allow everything from target group.\n"
        },
        "adRuleInboundAllowLists": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FNetworkSecurityRuleAdRuleInboundAllowList:NetworkSecurityRuleAdRuleInboundAllowList"
          },
          "description": "- (Optional) The set of categories that matching VMs need to have.\n"
        },
        "adRuleOutboundAllowLists": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FNetworkSecurityRuleAdRuleOutboundAllowList:NetworkSecurityRuleAdRuleOutboundAllowList"
          },
          "description": "- (Optional)\n"
        },
        "adRuleTargetGroupDefaultInternalPolicy": {
          "type": "string",
          "description": "- (Optional) - Default policy for communication within target group.\n"
        },
        "adRuleTargetGroupFilterKindLists": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "- (Optional) - List of kinds associated with this filter.\n"
        },
        "adRuleTargetGroupFilterParams": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FNetworkSecurityRuleAdRuleTargetGroupFilterParam:NetworkSecurityRuleAdRuleTargetGroupFilterParam"
          },
          "description": "- (Optional) - A list of category key and list of values.\n"
        },
        "adRuleTargetGroupFilterType": {
          "type": "string",
          "description": "- (Optional) - The type of the filter being used.\n"
        },
        "adRuleTargetGroupPeerSpecificationType": {
          "type": "string",
          "description": "- (Optional) - Way to identify the object for which rule is applied.\n"
        },
        "allowIpv6Traffic": {
          "type": "boolean"
        },
        "appRuleAction": {
          "type": "string",
          "description": "- (Optional) - These rules govern what flows are allowed. Target group is a required attribute. Empty<span pulumi-lang-nodejs=\" inboundAllowList \" pulumi-lang-dotnet=\" InboundAllowList \" pulumi-lang-go=\" inboundAllowList \" pulumi-lang-python=\" inbound_allow_list \" pulumi-lang-yaml=\" inboundAllowList \" pulumi-lang-java=\" inboundAllowList \"> inbound_allow_list </span>will not anything into target group. Empty<span pulumi-lang-nodejs=\" outboundAllowList \" pulumi-lang-dotnet=\" OutboundAllowList \" pulumi-lang-go=\" outboundAllowList \" pulumi-lang-python=\" outbound_allow_list \" pulumi-lang-yaml=\" outboundAllowList \" pulumi-lang-java=\" outboundAllowList \"> outbound_allow_list </span>will allow everything from target group.\n"
        },
        "appRuleInboundAllowLists": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FNetworkSecurityRuleAppRuleInboundAllowList:NetworkSecurityRuleAppRuleInboundAllowList"
          },
          "description": "- (Optional) The set of categories that matching VMs need to have.\n"
        },
        "appRuleOutboundAllowLists": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FNetworkSecurityRuleAppRuleOutboundAllowList:NetworkSecurityRuleAppRuleOutboundAllowList"
          },
          "description": "- (Optional)\n"
        },
        "appRuleTargetGroupDefaultInternalPolicy": {
          "type": "string",
          "description": "- (Optional) - Default policy for communication within target group.\n"
        },
        "appRuleTargetGroupFilterKindLists": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "- (Optional) - List of kinds associated with this filter.\n"
        },
        "appRuleTargetGroupFilterParams": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FNetworkSecurityRuleAppRuleTargetGroupFilterParam:NetworkSecurityRuleAppRuleTargetGroupFilterParam"
          },
          "description": "- (Optional) - A list of category key and list of values.\n"
        },
        "appRuleTargetGroupFilterType": {
          "type": "string",
          "description": "- (Optional) - The type of the filter being used.\n"
        },
        "appRuleTargetGroupPeerSpecificationType": {
          "type": "string",
          "description": "- (Optional) - Way to identify the object for which rule is applied.\n"
        },
        "categories": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FNetworkSecurityRuleCategory:NetworkSecurityRuleCategory"
          },
          "description": "- (Optional) Categories for the network_security_rule.\n"
        },
        "description": {
          "type": "string",
          "description": "- (Optional) A description for network_security_rule.\n"
        },
        "isPolicyHitlogEnabled": {
          "type": "boolean"
        },
        "isolationRuleAction": {
          "type": "string",
          "description": "- (Optional) - These rules are used for environmental isolation.\n"
        },
        "isolationRuleFirstEntityFilterKindLists": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "- (Optional) - List of kinds associated with this filter.\n"
        },
        "isolationRuleFirstEntityFilterParams": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FNetworkSecurityRuleIsolationRuleFirstEntityFilterParam:NetworkSecurityRuleIsolationRuleFirstEntityFilterParam"
          },
          "description": "- (Optional) - A list of category key and list of values.\n"
        },
        "isolationRuleFirstEntityFilterType": {
          "type": "string",
          "description": "- (Optional) - The type of the filter being used.\n"
        },
        "isolationRuleSecondEntityFilterKindLists": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "- (Optional) - List of kinds associated with this filter.\n"
        },
        "isolationRuleSecondEntityFilterParams": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FNetworkSecurityRuleIsolationRuleSecondEntityFilterParam:NetworkSecurityRuleIsolationRuleSecondEntityFilterParam"
          },
          "description": "- (Optional) - A list of category key and list of values.\n"
        },
        "isolationRuleSecondEntityFilterType": {
          "type": "string",
          "description": "- (Optional) - The type of the filter being used.\n"
        },
        "name": {
          "type": "string",
          "description": "- (Required) The name for the network_security_rule.\n"
        },
        "ownerReference": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          },
          "description": "- (Optional) The reference to a user.\n"
        },
        "projectReference": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          },
          "description": "- (Optional) The reference to a project.\n"
        }
      },
      "stateInputs": {
        "description": "Input properties used for looking up and filtering NetworkSecurityRule resources.\n",
        "properties": {
          "adRuleAction": {
            "type": "string",
            "description": "- (Optional) - These rules govern what flows are allowed. Target group is a required attribute. Empty<span pulumi-lang-nodejs=\" inboundAllowList \" pulumi-lang-dotnet=\" InboundAllowList \" pulumi-lang-go=\" inboundAllowList \" pulumi-lang-python=\" inbound_allow_list \" pulumi-lang-yaml=\" inboundAllowList \" pulumi-lang-java=\" inboundAllowList \"> inbound_allow_list </span>will not anything into target group. Empty<span pulumi-lang-nodejs=\" outboundAllowList \" pulumi-lang-dotnet=\" OutboundAllowList \" pulumi-lang-go=\" outboundAllowList \" pulumi-lang-python=\" outbound_allow_list \" pulumi-lang-yaml=\" outboundAllowList \" pulumi-lang-java=\" outboundAllowList \"> outbound_allow_list </span>will allow everything from target group.\n"
          },
          "adRuleInboundAllowLists": {
            "type": "array",
            "items": {
              "$ref": "#/types/nutanix:index%2FNetworkSecurityRuleAdRuleInboundAllowList:NetworkSecurityRuleAdRuleInboundAllowList"
            },
            "description": "- (Optional) The set of categories that matching VMs need to have.\n"
          },
          "adRuleOutboundAllowLists": {
            "type": "array",
            "items": {
              "$ref": "#/types/nutanix:index%2FNetworkSecurityRuleAdRuleOutboundAllowList:NetworkSecurityRuleAdRuleOutboundAllowList"
            },
            "description": "- (Optional)\n"
          },
          "adRuleTargetGroupDefaultInternalPolicy": {
            "type": "string",
            "description": "- (Optional) - Default policy for communication within target group.\n"
          },
          "adRuleTargetGroupFilterKindLists": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "description": "- (Optional) - List of kinds associated with this filter.\n"
          },
          "adRuleTargetGroupFilterParams": {
            "type": "array",
            "items": {
              "$ref": "#/types/nutanix:index%2FNetworkSecurityRuleAdRuleTargetGroupFilterParam:NetworkSecurityRuleAdRuleTargetGroupFilterParam"
            },
            "description": "- (Optional) - A list of category key and list of values.\n"
          },
          "adRuleTargetGroupFilterType": {
            "type": "string",
            "description": "- (Optional) - The type of the filter being used.\n"
          },
          "adRuleTargetGroupPeerSpecificationType": {
            "type": "string",
            "description": "- (Optional) - Way to identify the object for which rule is applied.\n"
          },
          "allowIpv6Traffic": {
            "type": "boolean"
          },
          "apiVersion": {
            "type": "string",
            "description": "The version of the API.\n"
          },
          "appRuleAction": {
            "type": "string",
            "description": "- (Optional) - These rules govern what flows are allowed. Target group is a required attribute. Empty<span pulumi-lang-nodejs=\" inboundAllowList \" pulumi-lang-dotnet=\" InboundAllowList \" pulumi-lang-go=\" inboundAllowList \" pulumi-lang-python=\" inbound_allow_list \" pulumi-lang-yaml=\" inboundAllowList \" pulumi-lang-java=\" inboundAllowList \"> inbound_allow_list </span>will not anything into target group. Empty<span pulumi-lang-nodejs=\" outboundAllowList \" pulumi-lang-dotnet=\" OutboundAllowList \" pulumi-lang-go=\" outboundAllowList \" pulumi-lang-python=\" outbound_allow_list \" pulumi-lang-yaml=\" outboundAllowList \" pulumi-lang-java=\" outboundAllowList \"> outbound_allow_list </span>will allow everything from target group.\n"
          },
          "appRuleInboundAllowLists": {
            "type": "array",
            "items": {
              "$ref": "#/types/nutanix:index%2FNetworkSecurityRuleAppRuleInboundAllowList:NetworkSecurityRuleAppRuleInboundAllowList"
            },
            "description": "- (Optional) The set of categories that matching VMs need to have.\n"
          },
          "appRuleOutboundAllowLists": {
            "type": "array",
            "items": {
              "$ref": "#/types/nutanix:index%2FNetworkSecurityRuleAppRuleOutboundAllowList:NetworkSecurityRuleAppRuleOutboundAllowList"
            },
            "description": "- (Optional)\n"
          },
          "appRuleTargetGroupDefaultInternalPolicy": {
            "type": "string",
            "description": "- (Optional) - Default policy for communication within target group.\n"
          },
          "appRuleTargetGroupFilterKindLists": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "description": "- (Optional) - List of kinds associated with this filter.\n"
          },
          "appRuleTargetGroupFilterParams": {
            "type": "array",
            "items": {
              "$ref": "#/types/nutanix:index%2FNetworkSecurityRuleAppRuleTargetGroupFilterParam:NetworkSecurityRuleAppRuleTargetGroupFilterParam"
            },
            "description": "- (Optional) - A list of category key and list of values.\n"
          },
          "appRuleTargetGroupFilterType": {
            "type": "string",
            "description": "- (Optional) - The type of the filter being used.\n"
          },
          "appRuleTargetGroupPeerSpecificationType": {
            "type": "string",
            "description": "- (Optional) - Way to identify the object for which rule is applied.\n"
          },
          "categories": {
            "type": "array",
            "items": {
              "$ref": "#/types/nutanix:index%2FNetworkSecurityRuleCategory:NetworkSecurityRuleCategory"
            },
            "description": "- (Optional) Categories for the network_security_rule.\n"
          },
          "description": {
            "type": "string",
            "description": "- (Optional) A description for network_security_rule.\n"
          },
          "isPolicyHitlogEnabled": {
            "type": "boolean"
          },
          "isolationRuleAction": {
            "type": "string",
            "description": "- (Optional) - These rules are used for environmental isolation.\n"
          },
          "isolationRuleFirstEntityFilterKindLists": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "description": "- (Optional) - List of kinds associated with this filter.\n"
          },
          "isolationRuleFirstEntityFilterParams": {
            "type": "array",
            "items": {
              "$ref": "#/types/nutanix:index%2FNetworkSecurityRuleIsolationRuleFirstEntityFilterParam:NetworkSecurityRuleIsolationRuleFirstEntityFilterParam"
            },
            "description": "- (Optional) - A list of category key and list of values.\n"
          },
          "isolationRuleFirstEntityFilterType": {
            "type": "string",
            "description": "- (Optional) - The type of the filter being used.\n"
          },
          "isolationRuleSecondEntityFilterKindLists": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "description": "- (Optional) - List of kinds associated with this filter.\n"
          },
          "isolationRuleSecondEntityFilterParams": {
            "type": "array",
            "items": {
              "$ref": "#/types/nutanix:index%2FNetworkSecurityRuleIsolationRuleSecondEntityFilterParam:NetworkSecurityRuleIsolationRuleSecondEntityFilterParam"
            },
            "description": "- (Optional) - A list of category key and list of values.\n"
          },
          "isolationRuleSecondEntityFilterType": {
            "type": "string",
            "description": "- (Optional) - The type of the filter being used.\n"
          },
          "metadata": {
            "type": "object",
            "additionalProperties": {
              "type": "string"
            },
            "description": "- The<span pulumi-lang-nodejs=\" networkSecurityRule \" pulumi-lang-dotnet=\" NetworkSecurityRule \" pulumi-lang-go=\" networkSecurityRule \" pulumi-lang-python=\" network_security_rule \" pulumi-lang-yaml=\" networkSecurityRule \" pulumi-lang-java=\" networkSecurityRule \"> network_security_rule </span>kind metadata.\n"
          },
          "name": {
            "type": "string",
            "description": "- (Required) The name for the network_security_rule.\n"
          },
          "ownerReference": {
            "type": "object",
            "additionalProperties": {
              "type": "string"
            },
            "description": "- (Optional) The reference to a user.\n"
          },
          "projectReference": {
            "type": "object",
            "additionalProperties": {
              "type": "string"
            },
            "description": "- (Optional) The reference to a project.\n"
          }
        },
        "type": "object"
      }
    },
    "nutanix:index/ngtInsertIsoV2:NgtInsertIsoV2": {
      "description": "Provides Nutanix resource toInserts the Nutanix Guest Tools installation and configuration ISO into a virtual machine.\n\n\n## Example\n\n<!--Start PulumiCodeChooser -->\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as nutanix from \"@pierskarsenbarg/nutanix\";\n\nconst example = new nutanix.NgtInsertIsoV2(\"example\", {\n    extId: \"ab520e1d-4950-1db1-917f-a9e2ea35b8e3\",\n    capablities: [\"VSS_SNAPSHOT\"],\n    isConfigOnly: false,\n});\n```\n```python\nimport pulumi\nimport pulumi_nutanix as nutanix\n\nexample = nutanix.NgtInsertIsoV2(\"example\",\n    ext_id=\"ab520e1d-4950-1db1-917f-a9e2ea35b8e3\",\n    capablities=[\"VSS_SNAPSHOT\"],\n    is_config_only=False)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Nutanix = PiersKarsenbarg.Nutanix;\n\nreturn await Deployment.RunAsync(() => \n{\n    var example = new Nutanix.NgtInsertIsoV2(\"example\", new()\n    {\n        ExtId = \"ab520e1d-4950-1db1-917f-a9e2ea35b8e3\",\n        Capablities = new[]\n        {\n            \"VSS_SNAPSHOT\",\n        },\n        IsConfigOnly = false,\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pierskarsenbarg/pulumi-nutanix/sdk/go/nutanix\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := nutanix.NewNgtInsertIsoV2(ctx, \"example\", &nutanix.NgtInsertIsoV2Args{\n\t\t\tExtId: pulumi.String(\"ab520e1d-4950-1db1-917f-a9e2ea35b8e3\"),\n\t\t\tCapablities: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"VSS_SNAPSHOT\"),\n\t\t\t},\n\t\t\tIsConfigOnly: pulumi.Bool(false),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.nutanix.NgtInsertIsoV2;\nimport com.pulumi.nutanix.NgtInsertIsoV2Args;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var example = new NgtInsertIsoV2(\"example\", NgtInsertIsoV2Args.builder()\n            .extId(\"ab520e1d-4950-1db1-917f-a9e2ea35b8e3\")\n            .capablities(\"VSS_SNAPSHOT\")\n            .isConfigOnly(false)\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  example:\n    type: nutanix:NgtInsertIsoV2\n    properties:\n      extId: ab520e1d-4950-1db1-917f-a9e2ea35b8e3\n      capablities:\n        - VSS_SNAPSHOT\n      isConfigOnly: false\n```\n<!--End PulumiCodeChooser -->\n",
      "properties": {
        "availableVersion": {
          "type": "string",
          "description": "Version of Nutanix Guest Tools available on the cluster.\n"
        },
        "capablities": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "The list of the application names that are enabled on the guest VM. [`SELF_SERVICE_RESTORE`, `VSS_SNAPSHOT`]\n"
        },
        "extId": {
          "type": "string",
          "description": "uuid of the Virtual Machine.\n"
        },
        "guestOsVersion": {
          "type": "string",
          "description": "Version of the operating system on the VM.\n"
        },
        "isConfigOnly": {
          "type": "boolean",
          "description": "Indicates that the Nutanix Guest Tools are already installed on the guest VM, and the ISO is being inserted to update the configuration of these tools.\n"
        },
        "isEnabled": {
          "type": "boolean",
          "description": "Indicates whether Nutanix Guest Tools is enabled or not.\n"
        },
        "isInstalled": {
          "type": "boolean",
          "description": "Indicates whether Nutanix Guest Tools is installed on the VM or not.\n"
        },
        "isIsoInserted": {
          "type": "boolean",
          "description": "Indicates whether Nutanix Guest Tools ISO is inserted or not.\n"
        },
        "isReachable": {
          "type": "boolean",
          "description": "Indicates whether the communication from VM to CVM is active or not.\n"
        },
        "isVmMobilityDriversInstalled": {
          "type": "boolean",
          "description": "Indicates whether the VM mobility drivers are installed on the VM or not.\n"
        },
        "isVssSnapshotCapable": {
          "type": "boolean",
          "description": "Indicates whether the VM is configured to take VSS snapshots through NGT or not.\n"
        },
        "version": {
          "type": "string",
          "description": "Version of Nutanix Guest Tools installed on the VM.\n"
        }
      },
      "type": "object",
      "required": [
        "availableVersion",
        "capablities",
        "extId",
        "guestOsVersion",
        "isConfigOnly",
        "isEnabled",
        "isInstalled",
        "isIsoInserted",
        "isReachable",
        "isVmMobilityDriversInstalled",
        "isVssSnapshotCapable",
        "version"
      ],
      "inputProperties": {
        "capablities": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "The list of the application names that are enabled on the guest VM. [`SELF_SERVICE_RESTORE`, `VSS_SNAPSHOT`]\n"
        },
        "extId": {
          "type": "string",
          "description": "uuid of the Virtual Machine.\n"
        },
        "isConfigOnly": {
          "type": "boolean",
          "description": "Indicates that the Nutanix Guest Tools are already installed on the guest VM, and the ISO is being inserted to update the configuration of these tools.\n"
        }
      },
      "requiredInputs": [
        "extId"
      ],
      "stateInputs": {
        "description": "Input properties used for looking up and filtering NgtInsertIsoV2 resources.\n",
        "properties": {
          "availableVersion": {
            "type": "string",
            "description": "Version of Nutanix Guest Tools available on the cluster.\n"
          },
          "capablities": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "description": "The list of the application names that are enabled on the guest VM. [`SELF_SERVICE_RESTORE`, `VSS_SNAPSHOT`]\n"
          },
          "extId": {
            "type": "string",
            "description": "uuid of the Virtual Machine.\n"
          },
          "guestOsVersion": {
            "type": "string",
            "description": "Version of the operating system on the VM.\n"
          },
          "isConfigOnly": {
            "type": "boolean",
            "description": "Indicates that the Nutanix Guest Tools are already installed on the guest VM, and the ISO is being inserted to update the configuration of these tools.\n"
          },
          "isEnabled": {
            "type": "boolean",
            "description": "Indicates whether Nutanix Guest Tools is enabled or not.\n"
          },
          "isInstalled": {
            "type": "boolean",
            "description": "Indicates whether Nutanix Guest Tools is installed on the VM or not.\n"
          },
          "isIsoInserted": {
            "type": "boolean",
            "description": "Indicates whether Nutanix Guest Tools ISO is inserted or not.\n"
          },
          "isReachable": {
            "type": "boolean",
            "description": "Indicates whether the communication from VM to CVM is active or not.\n"
          },
          "isVmMobilityDriversInstalled": {
            "type": "boolean",
            "description": "Indicates whether the VM mobility drivers are installed on the VM or not.\n"
          },
          "isVssSnapshotCapable": {
            "type": "boolean",
            "description": "Indicates whether the VM is configured to take VSS snapshots through NGT or not.\n"
          },
          "version": {
            "type": "string",
            "description": "Version of Nutanix Guest Tools installed on the VM.\n"
          }
        },
        "type": "object"
      }
    },
    "nutanix:index/ngtInstallationV2:NgtInstallationV2": {
      "description": "Provides Nutanix resource to Installs Nutanix Guest Tools in a Virtual Machine by using the provided credentials.\n\n\n## Example\n\n<!--Start PulumiCodeChooser -->\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as nutanix from \"@pierskarsenbarg/nutanix\";\n\nconst example = new nutanix.NgtInstallationV2(\"example\", {\n    extId: \"ab520e1d-4950-1db1-917f-a9e2ea35b8e3\",\n    credential: {\n        username: \"username\",\n        password: \"pass.1234567890\",\n    },\n    rebootPreference: {\n        scheduleType: \"IMMEDIATE\",\n    },\n    capablities: [\"VSS_SNAPSHOT\"],\n});\n```\n```python\nimport pulumi\nimport pulumi_nutanix as nutanix\n\nexample = nutanix.NgtInstallationV2(\"example\",\n    ext_id=\"ab520e1d-4950-1db1-917f-a9e2ea35b8e3\",\n    credential={\n        \"username\": \"username\",\n        \"password\": \"pass.1234567890\",\n    },\n    reboot_preference={\n        \"schedule_type\": \"IMMEDIATE\",\n    },\n    capablities=[\"VSS_SNAPSHOT\"])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Nutanix = PiersKarsenbarg.Nutanix;\n\nreturn await Deployment.RunAsync(() => \n{\n    var example = new Nutanix.NgtInstallationV2(\"example\", new()\n    {\n        ExtId = \"ab520e1d-4950-1db1-917f-a9e2ea35b8e3\",\n        Credential = new Nutanix.Inputs.NgtInstallationV2CredentialArgs\n        {\n            Username = \"username\",\n            Password = \"pass.1234567890\",\n        },\n        RebootPreference = new Nutanix.Inputs.NgtInstallationV2RebootPreferenceArgs\n        {\n            ScheduleType = \"IMMEDIATE\",\n        },\n        Capablities = new[]\n        {\n            \"VSS_SNAPSHOT\",\n        },\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pierskarsenbarg/pulumi-nutanix/sdk/go/nutanix\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := nutanix.NewNgtInstallationV2(ctx, \"example\", &nutanix.NgtInstallationV2Args{\n\t\t\tExtId: pulumi.String(\"ab520e1d-4950-1db1-917f-a9e2ea35b8e3\"),\n\t\t\tCredential: &nutanix.NgtInstallationV2CredentialArgs{\n\t\t\t\tUsername: pulumi.String(\"username\"),\n\t\t\t\tPassword: pulumi.String(\"pass.1234567890\"),\n\t\t\t},\n\t\t\tRebootPreference: &nutanix.NgtInstallationV2RebootPreferenceArgs{\n\t\t\t\tScheduleType: pulumi.String(\"IMMEDIATE\"),\n\t\t\t},\n\t\t\tCapablities: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"VSS_SNAPSHOT\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.nutanix.NgtInstallationV2;\nimport com.pulumi.nutanix.NgtInstallationV2Args;\nimport com.pulumi.nutanix.inputs.NgtInstallationV2CredentialArgs;\nimport com.pulumi.nutanix.inputs.NgtInstallationV2RebootPreferenceArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var example = new NgtInstallationV2(\"example\", NgtInstallationV2Args.builder()\n            .extId(\"ab520e1d-4950-1db1-917f-a9e2ea35b8e3\")\n            .credential(NgtInstallationV2CredentialArgs.builder()\n                .username(\"username\")\n                .password(\"pass.1234567890\")\n                .build())\n            .rebootPreference(NgtInstallationV2RebootPreferenceArgs.builder()\n                .scheduleType(\"IMMEDIATE\")\n                .build())\n            .capablities(\"VSS_SNAPSHOT\")\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  example:\n    type: nutanix:NgtInstallationV2\n    properties:\n      extId: ab520e1d-4950-1db1-917f-a9e2ea35b8e3\n      credential:\n        username: username\n        password: pass.1234567890\n      rebootPreference:\n        scheduleType: IMMEDIATE\n      capablities:\n        - VSS_SNAPSHOT\n```\n<!--End PulumiCodeChooser -->\n",
      "properties": {
        "availableVersion": {
          "type": "string",
          "description": "Version of Nutanix Guest Tools available on the cluster.\n"
        },
        "capablities": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "The list of the application names that are enabled on the guest VM. [`SELF_SERVICE_RESTORE`, `VSS_SNAPSHOT`]\n"
        },
        "credential": {
          "$ref": "#/types/nutanix:index%2FNgtInstallationV2Credential:NgtInstallationV2Credential",
          "description": "Sign in credentials for the server.\n"
        },
        "extId": {
          "type": "string",
          "description": "uuid of the Virtual Machine.\n"
        },
        "guestOsVersion": {
          "type": "string",
          "description": "Version of the operating system on the VM.\n"
        },
        "isEnabled": {
          "type": "boolean",
          "description": "Indicates whether Nutanix Guest Tools is enabled or not.\n"
        },
        "isInstalled": {
          "type": "boolean",
          "description": "Indicates whether Nutanix Guest Tools is installed on the VM or not.\n"
        },
        "isIsoInserted": {
          "type": "boolean",
          "description": "Indicates whether Nutanix Guest Tools ISO is inserted or not.\n"
        },
        "isReachable": {
          "type": "boolean",
          "description": "Indicates whether the communication from VM to CVM is active or not.\n"
        },
        "isVmMobilityDriversInstalled": {
          "type": "boolean",
          "description": "Indicates whether the VM mobility drivers are installed on the VM or not.\n"
        },
        "isVssSnapshotCapable": {
          "type": "boolean",
          "description": "Indicates whether the VM is configured to take VSS snapshots through NGT or not.\n"
        },
        "rebootPreference": {
          "$ref": "#/types/nutanix:index%2FNgtInstallationV2RebootPreference:NgtInstallationV2RebootPreference",
          "description": "The restart schedule after installing or upgrading Nutanix Guest Tools.\n"
        },
        "version": {
          "type": "string",
          "description": "Version of Nutanix Guest Tools installed on the VM.\n"
        }
      },
      "type": "object",
      "required": [
        "availableVersion",
        "capablities",
        "extId",
        "guestOsVersion",
        "isEnabled",
        "isInstalled",
        "isIsoInserted",
        "isReachable",
        "isVmMobilityDriversInstalled",
        "isVssSnapshotCapable",
        "version"
      ],
      "inputProperties": {
        "capablities": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "The list of the application names that are enabled on the guest VM. [`SELF_SERVICE_RESTORE`, `VSS_SNAPSHOT`]\n"
        },
        "credential": {
          "$ref": "#/types/nutanix:index%2FNgtInstallationV2Credential:NgtInstallationV2Credential",
          "description": "Sign in credentials for the server.\n"
        },
        "extId": {
          "type": "string",
          "description": "uuid of the Virtual Machine.\n"
        },
        "isEnabled": {
          "type": "boolean",
          "description": "Indicates whether Nutanix Guest Tools is enabled or not.\n"
        },
        "rebootPreference": {
          "$ref": "#/types/nutanix:index%2FNgtInstallationV2RebootPreference:NgtInstallationV2RebootPreference",
          "description": "The restart schedule after installing or upgrading Nutanix Guest Tools.\n"
        }
      },
      "requiredInputs": [
        "extId"
      ],
      "stateInputs": {
        "description": "Input properties used for looking up and filtering NgtInstallationV2 resources.\n",
        "properties": {
          "availableVersion": {
            "type": "string",
            "description": "Version of Nutanix Guest Tools available on the cluster.\n"
          },
          "capablities": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "description": "The list of the application names that are enabled on the guest VM. [`SELF_SERVICE_RESTORE`, `VSS_SNAPSHOT`]\n"
          },
          "credential": {
            "$ref": "#/types/nutanix:index%2FNgtInstallationV2Credential:NgtInstallationV2Credential",
            "description": "Sign in credentials for the server.\n"
          },
          "extId": {
            "type": "string",
            "description": "uuid of the Virtual Machine.\n"
          },
          "guestOsVersion": {
            "type": "string",
            "description": "Version of the operating system on the VM.\n"
          },
          "isEnabled": {
            "type": "boolean",
            "description": "Indicates whether Nutanix Guest Tools is enabled or not.\n"
          },
          "isInstalled": {
            "type": "boolean",
            "description": "Indicates whether Nutanix Guest Tools is installed on the VM or not.\n"
          },
          "isIsoInserted": {
            "type": "boolean",
            "description": "Indicates whether Nutanix Guest Tools ISO is inserted or not.\n"
          },
          "isReachable": {
            "type": "boolean",
            "description": "Indicates whether the communication from VM to CVM is active or not.\n"
          },
          "isVmMobilityDriversInstalled": {
            "type": "boolean",
            "description": "Indicates whether the VM mobility drivers are installed on the VM or not.\n"
          },
          "isVssSnapshotCapable": {
            "type": "boolean",
            "description": "Indicates whether the VM is configured to take VSS snapshots through NGT or not.\n"
          },
          "rebootPreference": {
            "$ref": "#/types/nutanix:index%2FNgtInstallationV2RebootPreference:NgtInstallationV2RebootPreference",
            "description": "The restart schedule after installing or upgrading Nutanix Guest Tools.\n"
          },
          "version": {
            "type": "string",
            "description": "Version of Nutanix Guest Tools installed on the VM.\n"
          }
        },
        "type": "object"
      }
    },
    "nutanix:index/ngtUpgradeV2:NgtUpgradeV2": {
      "description": "Provides Nutanix resource to Trigger an in-guest upgrade of Nutanix Guest Tools.\n\n\n## Example\n\n<!--Start PulumiCodeChooser -->\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as nutanix from \"@pierskarsenbarg/nutanix\";\n\nconst example = new nutanix.NgtUpgradeV2(\"example\", {\n    extId: \"ab520e1d-4950-1db1-917f-a9e2ea35b8e3\",\n    rebootPreference: {\n        scheduleType: \"IMMEDIATE\",\n    },\n});\n```\n```python\nimport pulumi\nimport pulumi_nutanix as nutanix\n\nexample = nutanix.NgtUpgradeV2(\"example\",\n    ext_id=\"ab520e1d-4950-1db1-917f-a9e2ea35b8e3\",\n    reboot_preference={\n        \"schedule_type\": \"IMMEDIATE\",\n    })\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Nutanix = PiersKarsenbarg.Nutanix;\n\nreturn await Deployment.RunAsync(() => \n{\n    var example = new Nutanix.NgtUpgradeV2(\"example\", new()\n    {\n        ExtId = \"ab520e1d-4950-1db1-917f-a9e2ea35b8e3\",\n        RebootPreference = new Nutanix.Inputs.NgtUpgradeV2RebootPreferenceArgs\n        {\n            ScheduleType = \"IMMEDIATE\",\n        },\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pierskarsenbarg/pulumi-nutanix/sdk/go/nutanix\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := nutanix.NewNgtUpgradeV2(ctx, \"example\", &nutanix.NgtUpgradeV2Args{\n\t\t\tExtId: pulumi.String(\"ab520e1d-4950-1db1-917f-a9e2ea35b8e3\"),\n\t\t\tRebootPreference: &nutanix.NgtUpgradeV2RebootPreferenceArgs{\n\t\t\t\tScheduleType: pulumi.String(\"IMMEDIATE\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.nutanix.NgtUpgradeV2;\nimport com.pulumi.nutanix.NgtUpgradeV2Args;\nimport com.pulumi.nutanix.inputs.NgtUpgradeV2RebootPreferenceArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var example = new NgtUpgradeV2(\"example\", NgtUpgradeV2Args.builder()\n            .extId(\"ab520e1d-4950-1db1-917f-a9e2ea35b8e3\")\n            .rebootPreference(NgtUpgradeV2RebootPreferenceArgs.builder()\n                .scheduleType(\"IMMEDIATE\")\n                .build())\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  example:\n    type: nutanix:NgtUpgradeV2\n    properties:\n      extId: ab520e1d-4950-1db1-917f-a9e2ea35b8e3\n      rebootPreference:\n        scheduleType: IMMEDIATE\n```\n<!--End PulumiCodeChooser -->\n",
      "properties": {
        "availableVersion": {
          "type": "string",
          "description": "Version of Nutanix Guest Tools available on the cluster.\n"
        },
        "capablities": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "The list of the application names that are enabled on the guest VM. [`SELF_SERVICE_RESTORE`, `VSS_SNAPSHOT`]\n"
        },
        "extId": {
          "type": "string",
          "description": "uuid of the Virtual Machine.\n"
        },
        "guestOsVersion": {
          "type": "string",
          "description": "Version of the operating system on the VM.\n"
        },
        "isEnabled": {
          "type": "boolean",
          "description": "Indicates whether Nutanix Guest Tools is enabled or not.\n"
        },
        "isInstalled": {
          "type": "boolean",
          "description": "Indicates whether Nutanix Guest Tools is installed on the VM or not.\n"
        },
        "isIsoInserted": {
          "type": "boolean",
          "description": "Indicates whether Nutanix Guest Tools ISO is inserted or not.\n"
        },
        "isReachable": {
          "type": "boolean",
          "description": "Indicates whether the communication from VM to CVM is active or not.\n"
        },
        "isVmMobilityDriversInstalled": {
          "type": "boolean",
          "description": "Indicates whether the VM mobility drivers are installed on the VM or not.\n"
        },
        "isVssSnapshotCapable": {
          "type": "boolean",
          "description": "Indicates whether the VM is configured to take VSS snapshots through NGT or not.\n"
        },
        "rebootPreference": {
          "$ref": "#/types/nutanix:index%2FNgtUpgradeV2RebootPreference:NgtUpgradeV2RebootPreference",
          "description": "The restart schedule after installing or upgrading Nutanix Guest Tools.\n"
        },
        "version": {
          "type": "string",
          "description": "Version of Nutanix Guest Tools installed on the VM.\n"
        }
      },
      "type": "object",
      "required": [
        "availableVersion",
        "capablities",
        "extId",
        "guestOsVersion",
        "isEnabled",
        "isInstalled",
        "isIsoInserted",
        "isReachable",
        "isVmMobilityDriversInstalled",
        "isVssSnapshotCapable",
        "version"
      ],
      "inputProperties": {
        "extId": {
          "type": "string",
          "description": "uuid of the Virtual Machine.\n"
        },
        "rebootPreference": {
          "$ref": "#/types/nutanix:index%2FNgtUpgradeV2RebootPreference:NgtUpgradeV2RebootPreference",
          "description": "The restart schedule after installing or upgrading Nutanix Guest Tools.\n"
        }
      },
      "requiredInputs": [
        "extId"
      ],
      "stateInputs": {
        "description": "Input properties used for looking up and filtering NgtUpgradeV2 resources.\n",
        "properties": {
          "availableVersion": {
            "type": "string",
            "description": "Version of Nutanix Guest Tools available on the cluster.\n"
          },
          "capablities": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "description": "The list of the application names that are enabled on the guest VM. [`SELF_SERVICE_RESTORE`, `VSS_SNAPSHOT`]\n"
          },
          "extId": {
            "type": "string",
            "description": "uuid of the Virtual Machine.\n"
          },
          "guestOsVersion": {
            "type": "string",
            "description": "Version of the operating system on the VM.\n"
          },
          "isEnabled": {
            "type": "boolean",
            "description": "Indicates whether Nutanix Guest Tools is enabled or not.\n"
          },
          "isInstalled": {
            "type": "boolean",
            "description": "Indicates whether Nutanix Guest Tools is installed on the VM or not.\n"
          },
          "isIsoInserted": {
            "type": "boolean",
            "description": "Indicates whether Nutanix Guest Tools ISO is inserted or not.\n"
          },
          "isReachable": {
            "type": "boolean",
            "description": "Indicates whether the communication from VM to CVM is active or not.\n"
          },
          "isVmMobilityDriversInstalled": {
            "type": "boolean",
            "description": "Indicates whether the VM mobility drivers are installed on the VM or not.\n"
          },
          "isVssSnapshotCapable": {
            "type": "boolean",
            "description": "Indicates whether the VM is configured to take VSS snapshots through NGT or not.\n"
          },
          "rebootPreference": {
            "$ref": "#/types/nutanix:index%2FNgtUpgradeV2RebootPreference:NgtUpgradeV2RebootPreference",
            "description": "The restart schedule after installing or upgrading Nutanix Guest Tools.\n"
          },
          "version": {
            "type": "string",
            "description": "Version of Nutanix Guest Tools installed on the VM.\n"
          }
        },
        "type": "object"
      }
    },
    "nutanix:index/objectStoreCertificateV2:ObjectStoreCertificateV2": {
      "description": "This operation creates a new default certificate and keys. It also creates the alternate FQDNs and alternate IPs for the Object store. The certificate of an Object store can be created when it is in a OBJECT_STORE_AVAILABLE or OBJECT_STORE_CERT_CREATION_FAILED state. If the publicCert, privateKey, and ca values are provided in the request body, these values are used to create the new certificate. If these values are not provided, a new certificate will be generated if 'shouldGenerate' is set to true and if it is set to false, the existing certificate will be used as the new certificate. Optionally, a list of additional alternate FQDNs and alternate IPs can be provided. These alternateFqdns and alternateIps must be included in the CA certificate if it has been provided.\n\n\n\n## Example Usage\n\n<!--Start PulumiCodeChooser -->\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as nutanix from \"@pierskarsenbarg/nutanix\";\n\nconst example = nutanix.getCertificateV2({\n    objectStoreExtId: \"ac91151a-28b4-4ffe-b150-6bcb2ec80cd4\",\n    extId: \"ef0a9a54-e7e1-42e2-a59f-de779ec1c9ea\",\n});\n```\n```python\nimport pulumi\nimport pulumi_nutanix as nutanix\n\nexample = nutanix.get_certificate_v2(object_store_ext_id=\"ac91151a-28b4-4ffe-b150-6bcb2ec80cd4\",\n    ext_id=\"ef0a9a54-e7e1-42e2-a59f-de779ec1c9ea\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Nutanix = Pulumi.Nutanix;\n\nreturn await Deployment.RunAsync(() => \n{\n    var example = Nutanix.GetCertificateV2.Invoke(new()\n    {\n        ObjectStoreExtId = \"ac91151a-28b4-4ffe-b150-6bcb2ec80cd4\",\n        ExtId = \"ef0a9a54-e7e1-42e2-a59f-de779ec1c9ea\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pierskarsenbarg/pulumi-nutanix/sdk/go/nutanix\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := nutanix.GetCertificateV2(ctx, &nutanix.GetCertificateV2Args{\n\t\t\tObjectStoreExtId: \"ac91151a-28b4-4ffe-b150-6bcb2ec80cd4\",\n\t\t\tExtId:            \"ef0a9a54-e7e1-42e2-a59f-de779ec1c9ea\",\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.nutanix.NutanixFunctions;\nimport com.pulumi.nutanix.inputs.GetCertificateV2Args;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var example = NutanixFunctions.getCertificateV2(GetCertificateV2Args.builder()\n            .objectStoreExtId(\"ac91151a-28b4-4ffe-b150-6bcb2ec80cd4\")\n            .extId(\"ef0a9a54-e7e1-42e2-a59f-de779ec1c9ea\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  example:\n    fn::invoke:\n      function: nutanix:getCertificateV2\n      arguments:\n        objectStoreExtId: ac91151a-28b4-4ffe-b150-6bcb2ec80cd4\n        extId: ef0a9a54-e7e1-42e2-a59f-de779ec1c9ea\n```\n<!--End PulumiCodeChooser -->\n\n## JSON Example\n\n```json\n{\n  \"alternateFqdns\": [\n    {\n      \"value\": \"fqdn1.example.com\"\n    },\n    {\n      \"value\": \"fqdn2.example.com\"\n    }\n  ],\n  \"alternateIps\": [\n    {\n      \"ipv4\": {\n        \"value\": \"192.168.1.1\"\n      }\n    },\n    {\n      \"ipv4\": {\n         \"value\": \"192.168.1.2\"\n      }\n    }\n  ],\n  \"shouldGenerate\": true,\n  \"ca\": \"-----BEGIN CERTIFICATE-----\\nMIIDzTCCArWgAwIBAgIUI...\\n-----END CERTIFICATE-----\",\n  \"publicCert\": \"-----BEGIN CERTIFICATE-----\\nMIIDzTCCArWgAwIBAgIUI...\\n-----END CERTIFICATE-----\",\n  \"privateKey\": \"-----BEGIN RSA PRIVATE KEY-----\\nMIIDzTCCArWgAwIBAgIUI...\\n-----END RSA PRIVATE KEY-----\"\n}\n```\n\nSee detailed information in [Nutanix Create a SSL certificate for an Object store V4 ](https://developers.nutanix.com/api-reference?namespace=objects&version=v4.0#tag/ObjectStores/operation/createCertificate).\n",
      "properties": {
        "alternateFqdns": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FObjectStoreCertificateV2AlternateFqdn:ObjectStoreCertificateV2AlternateFqdn"
          }
        },
        "alternateIps": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FObjectStoreCertificateV2AlternateIp:ObjectStoreCertificateV2AlternateIp"
          }
        },
        "extId": {
          "type": "string",
          "description": "-(Required) The UUID of the certificate of an Object store.\n"
        },
        "links": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FObjectStoreCertificateV2Link:ObjectStoreCertificateV2Link"
          }
        },
        "metadatas": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FObjectStoreCertificateV2Metadata:ObjectStoreCertificateV2Metadata"
          }
        },
        "objectStoreExtId": {
          "type": "string",
          "description": "-(Required) The UUID of the Object store.\n"
        },
        "path": {
          "type": "string",
          "description": "-(Required) Path to a JSON file which contains the public certificates, private key, and CA certificate or chain, along with a list of alternate FQDNs and alternate IPs to create a certificate for the Object store.\n"
        },
        "tenantId": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "alternateFqdns",
        "alternateIps",
        "extId",
        "links",
        "metadatas",
        "objectStoreExtId",
        "path",
        "tenantId"
      ],
      "inputProperties": {
        "objectStoreExtId": {
          "type": "string",
          "description": "-(Required) The UUID of the Object store.\n"
        },
        "path": {
          "type": "string",
          "description": "-(Required) Path to a JSON file which contains the public certificates, private key, and CA certificate or chain, along with a list of alternate FQDNs and alternate IPs to create a certificate for the Object store.\n"
        }
      },
      "requiredInputs": [
        "objectStoreExtId",
        "path"
      ],
      "stateInputs": {
        "description": "Input properties used for looking up and filtering ObjectStoreCertificateV2 resources.\n",
        "properties": {
          "alternateFqdns": {
            "type": "array",
            "items": {
              "$ref": "#/types/nutanix:index%2FObjectStoreCertificateV2AlternateFqdn:ObjectStoreCertificateV2AlternateFqdn"
            }
          },
          "alternateIps": {
            "type": "array",
            "items": {
              "$ref": "#/types/nutanix:index%2FObjectStoreCertificateV2AlternateIp:ObjectStoreCertificateV2AlternateIp"
            }
          },
          "extId": {
            "type": "string",
            "description": "-(Required) The UUID of the certificate of an Object store.\n"
          },
          "links": {
            "type": "array",
            "items": {
              "$ref": "#/types/nutanix:index%2FObjectStoreCertificateV2Link:ObjectStoreCertificateV2Link"
            }
          },
          "metadatas": {
            "type": "array",
            "items": {
              "$ref": "#/types/nutanix:index%2FObjectStoreCertificateV2Metadata:ObjectStoreCertificateV2Metadata"
            }
          },
          "objectStoreExtId": {
            "type": "string",
            "description": "-(Required) The UUID of the Object store.\n"
          },
          "path": {
            "type": "string",
            "description": "-(Required) Path to a JSON file which contains the public certificates, private key, and CA certificate or chain, along with a list of alternate FQDNs and alternate IPs to create a certificate for the Object store.\n"
          },
          "tenantId": {
            "type": "string"
          }
        },
        "type": "object"
      }
    },
    "nutanix:index/objectStoreV2:ObjectStoreV2": {
      "description": "## Example Usage\n\n<!--Start PulumiCodeChooser -->\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as nutanix from \"@pierskarsenbarg/nutanix\";\nimport * as std from \"@pulumi/std\";\n\nconst example = new nutanix.ObjectStoreV2(\"example\", {\n    name: \"tf-example-os\",\n    description: \"terraform create object store example\",\n    deploymentVersion: \"5.1.1\",\n    domain: \"msp.pc-idbc.nutanix.com\",\n    numWorkerNodes: 1,\n    clusterExtId: \"ba250e3e-1db1-4950-917f-a9e2ea35b8e3\",\n    totalCapacityGib: std.pow({\n        base: 1024,\n        exponent: 3,\n    }).then(invoke => 20 * invoke.result),\n    publicNetworkReference: \"57c4caf1-67e3-457e-8265-6d872f2a3135\",\n    publicNetworkIps: [{\n        ipv4: {\n            value: \"10.44.77.123\",\n        },\n    }],\n    storageNetworkReference: \"57c4caf1-67e3-457e-8265-6d872f2a3135\",\n    storageNetworkDnsIp: {\n        ipv4: {\n            value: \"10.44.77.124\",\n        },\n    },\n    storageNetworkVip: {\n        ipv4: {\n            value: \"10.44.77.125\",\n        },\n    },\n});\n// Deploying Object Store in draft state\nconst example_draft = new nutanix.ObjectStoreV2(\"example-draft\", {\n    name: \"tf-draft-os\",\n    description: \"terraform deploy object store draft example\",\n    deploymentVersion: \"5.1.1\",\n    domain: \"msp.pc-idbc.nutanix.com\",\n    numWorkerNodes: 1,\n    clusterExtId: \"ba250e3e-1db1-4950-917f-a9e2ea35b8e3\",\n    totalCapacityGib: std.pow({\n        base: 1024,\n        exponent: 3,\n    }).then(invoke => 20 * invoke.result),\n    publicNetworkReference: \"57c4caf1-67e3-457e-8265-6d872f2a3135\",\n    state: \"UNDEPLOYED_OBJECT_STORE\",\n    publicNetworkIps: [{\n        ipv4: {\n            value: \"10.44.77.126\",\n        },\n    }],\n    storageNetworkReference: \"57c4caf1-67e3-457e-8265-6d872f2a3135\",\n    storageNetworkDnsIp: {\n        ipv4: {\n            value: \"10.44.77.127\",\n        },\n    },\n    storageNetworkVip: {\n        ipv4: {\n            value: \"10.44.77.128\",\n        },\n    },\n});\n```\n```python\nimport pulumi\nimport pulumi_nutanix as nutanix\nimport pulumi_std as std\n\nexample = nutanix.ObjectStoreV2(\"example\",\n    name=\"tf-example-os\",\n    description=\"terraform create object store example\",\n    deployment_version=\"5.1.1\",\n    domain=\"msp.pc-idbc.nutanix.com\",\n    num_worker_nodes=1,\n    cluster_ext_id=\"ba250e3e-1db1-4950-917f-a9e2ea35b8e3\",\n    total_capacity_gib=20 * std.pow(base=1024,\n        exponent=3).result,\n    public_network_reference=\"57c4caf1-67e3-457e-8265-6d872f2a3135\",\n    public_network_ips=[{\n        \"ipv4\": {\n            \"value\": \"10.44.77.123\",\n        },\n    }],\n    storage_network_reference=\"57c4caf1-67e3-457e-8265-6d872f2a3135\",\n    storage_network_dns_ip={\n        \"ipv4\": {\n            \"value\": \"10.44.77.124\",\n        },\n    },\n    storage_network_vip={\n        \"ipv4\": {\n            \"value\": \"10.44.77.125\",\n        },\n    })\n# Deploying Object Store in draft state\nexample_draft = nutanix.ObjectStoreV2(\"example-draft\",\n    name=\"tf-draft-os\",\n    description=\"terraform deploy object store draft example\",\n    deployment_version=\"5.1.1\",\n    domain=\"msp.pc-idbc.nutanix.com\",\n    num_worker_nodes=1,\n    cluster_ext_id=\"ba250e3e-1db1-4950-917f-a9e2ea35b8e3\",\n    total_capacity_gib=20 * std.pow(base=1024,\n        exponent=3).result,\n    public_network_reference=\"57c4caf1-67e3-457e-8265-6d872f2a3135\",\n    state=\"UNDEPLOYED_OBJECT_STORE\",\n    public_network_ips=[{\n        \"ipv4\": {\n            \"value\": \"10.44.77.126\",\n        },\n    }],\n    storage_network_reference=\"57c4caf1-67e3-457e-8265-6d872f2a3135\",\n    storage_network_dns_ip={\n        \"ipv4\": {\n            \"value\": \"10.44.77.127\",\n        },\n    },\n    storage_network_vip={\n        \"ipv4\": {\n            \"value\": \"10.44.77.128\",\n        },\n    })\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Nutanix = PiersKarsenbarg.Nutanix;\nusing Std = Pulumi.Std;\n\nreturn await Deployment.RunAsync(() => \n{\n    var example = new Nutanix.ObjectStoreV2(\"example\", new()\n    {\n        Name = \"tf-example-os\",\n        Description = \"terraform create object store example\",\n        DeploymentVersion = \"5.1.1\",\n        Domain = \"msp.pc-idbc.nutanix.com\",\n        NumWorkerNodes = 1,\n        ClusterExtId = \"ba250e3e-1db1-4950-917f-a9e2ea35b8e3\",\n        TotalCapacityGib = Std.Pow.Invoke(new()\n        {\n            Base = 1024,\n            Exponent = 3,\n        }).Apply(invoke => 20 * invoke.Result),\n        PublicNetworkReference = \"57c4caf1-67e3-457e-8265-6d872f2a3135\",\n        PublicNetworkIps = new[]\n        {\n            new Nutanix.Inputs.ObjectStoreV2PublicNetworkIpArgs\n            {\n                Ipv4 = new Nutanix.Inputs.ObjectStoreV2PublicNetworkIpIpv4Args\n                {\n                    Value = \"10.44.77.123\",\n                },\n            },\n        },\n        StorageNetworkReference = \"57c4caf1-67e3-457e-8265-6d872f2a3135\",\n        StorageNetworkDnsIp = new Nutanix.Inputs.ObjectStoreV2StorageNetworkDnsIpArgs\n        {\n            Ipv4 = new Nutanix.Inputs.ObjectStoreV2StorageNetworkDnsIpIpv4Args\n            {\n                Value = \"10.44.77.124\",\n            },\n        },\n        StorageNetworkVip = new Nutanix.Inputs.ObjectStoreV2StorageNetworkVipArgs\n        {\n            Ipv4 = new Nutanix.Inputs.ObjectStoreV2StorageNetworkVipIpv4Args\n            {\n                Value = \"10.44.77.125\",\n            },\n        },\n    });\n\n    // Deploying Object Store in draft state\n    var example_draft = new Nutanix.ObjectStoreV2(\"example-draft\", new()\n    {\n        Name = \"tf-draft-os\",\n        Description = \"terraform deploy object store draft example\",\n        DeploymentVersion = \"5.1.1\",\n        Domain = \"msp.pc-idbc.nutanix.com\",\n        NumWorkerNodes = 1,\n        ClusterExtId = \"ba250e3e-1db1-4950-917f-a9e2ea35b8e3\",\n        TotalCapacityGib = Std.Pow.Invoke(new()\n        {\n            Base = 1024,\n            Exponent = 3,\n        }).Apply(invoke => 20 * invoke.Result),\n        PublicNetworkReference = \"57c4caf1-67e3-457e-8265-6d872f2a3135\",\n        State = \"UNDEPLOYED_OBJECT_STORE\",\n        PublicNetworkIps = new[]\n        {\n            new Nutanix.Inputs.ObjectStoreV2PublicNetworkIpArgs\n            {\n                Ipv4 = new Nutanix.Inputs.ObjectStoreV2PublicNetworkIpIpv4Args\n                {\n                    Value = \"10.44.77.126\",\n                },\n            },\n        },\n        StorageNetworkReference = \"57c4caf1-67e3-457e-8265-6d872f2a3135\",\n        StorageNetworkDnsIp = new Nutanix.Inputs.ObjectStoreV2StorageNetworkDnsIpArgs\n        {\n            Ipv4 = new Nutanix.Inputs.ObjectStoreV2StorageNetworkDnsIpIpv4Args\n            {\n                Value = \"10.44.77.127\",\n            },\n        },\n        StorageNetworkVip = new Nutanix.Inputs.ObjectStoreV2StorageNetworkVipArgs\n        {\n            Ipv4 = new Nutanix.Inputs.ObjectStoreV2StorageNetworkVipIpv4Args\n            {\n                Value = \"10.44.77.128\",\n            },\n        },\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pierskarsenbarg/pulumi-nutanix/sdk/go/nutanix\"\n\t\"github.com/pulumi/pulumi-std/sdk/go/std\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tinvokePow, err := std.Pow(ctx, &std.PowArgs{\n\t\t\tBase:     1024,\n\t\t\tExponent: 3,\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = nutanix.NewObjectStoreV2(ctx, \"example\", &nutanix.ObjectStoreV2Args{\n\t\t\tName:                   pulumi.String(\"tf-example-os\"),\n\t\t\tDescription:            pulumi.String(\"terraform create object store example\"),\n\t\t\tDeploymentVersion:      pulumi.String(\"5.1.1\"),\n\t\t\tDomain:                 pulumi.String(\"msp.pc-idbc.nutanix.com\"),\n\t\t\tNumWorkerNodes:         pulumi.Int(1),\n\t\t\tClusterExtId:           pulumi.String(\"ba250e3e-1db1-4950-917f-a9e2ea35b8e3\"),\n\t\t\tTotalCapacityGib:       pulumi.Int(20 * pulumi.Float64(invokePow.Result)),\n\t\t\tPublicNetworkReference: pulumi.String(\"57c4caf1-67e3-457e-8265-6d872f2a3135\"),\n\t\t\tPublicNetworkIps: nutanix.ObjectStoreV2PublicNetworkIpArray{\n\t\t\t\t&nutanix.ObjectStoreV2PublicNetworkIpArgs{\n\t\t\t\t\tIpv4: &nutanix.ObjectStoreV2PublicNetworkIpIpv4Args{\n\t\t\t\t\t\tValue: pulumi.String(\"10.44.77.123\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t\tStorageNetworkReference: pulumi.String(\"57c4caf1-67e3-457e-8265-6d872f2a3135\"),\n\t\t\tStorageNetworkDnsIp: &nutanix.ObjectStoreV2StorageNetworkDnsIpArgs{\n\t\t\t\tIpv4: &nutanix.ObjectStoreV2StorageNetworkDnsIpIpv4Args{\n\t\t\t\t\tValue: pulumi.String(\"10.44.77.124\"),\n\t\t\t\t},\n\t\t\t},\n\t\t\tStorageNetworkVip: &nutanix.ObjectStoreV2StorageNetworkVipArgs{\n\t\t\t\tIpv4: &nutanix.ObjectStoreV2StorageNetworkVipIpv4Args{\n\t\t\t\t\tValue: pulumi.String(\"10.44.77.125\"),\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tinvokePow1, err := std.Pow(ctx, &std.PowArgs{\n\t\t\tBase:     1024,\n\t\t\tExponent: 3,\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t// Deploying Object Store in draft state\n\t\t_, err = nutanix.NewObjectStoreV2(ctx, \"example-draft\", &nutanix.ObjectStoreV2Args{\n\t\t\tName:                   pulumi.String(\"tf-draft-os\"),\n\t\t\tDescription:            pulumi.String(\"terraform deploy object store draft example\"),\n\t\t\tDeploymentVersion:      pulumi.String(\"5.1.1\"),\n\t\t\tDomain:                 pulumi.String(\"msp.pc-idbc.nutanix.com\"),\n\t\t\tNumWorkerNodes:         pulumi.Int(1),\n\t\t\tClusterExtId:           pulumi.String(\"ba250e3e-1db1-4950-917f-a9e2ea35b8e3\"),\n\t\t\tTotalCapacityGib:       pulumi.Int(20 * pulumi.Float64(invokePow1.Result)),\n\t\t\tPublicNetworkReference: pulumi.String(\"57c4caf1-67e3-457e-8265-6d872f2a3135\"),\n\t\t\tState:                  pulumi.String(\"UNDEPLOYED_OBJECT_STORE\"),\n\t\t\tPublicNetworkIps: nutanix.ObjectStoreV2PublicNetworkIpArray{\n\t\t\t\t&nutanix.ObjectStoreV2PublicNetworkIpArgs{\n\t\t\t\t\tIpv4: &nutanix.ObjectStoreV2PublicNetworkIpIpv4Args{\n\t\t\t\t\t\tValue: pulumi.String(\"10.44.77.126\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t\tStorageNetworkReference: pulumi.String(\"57c4caf1-67e3-457e-8265-6d872f2a3135\"),\n\t\t\tStorageNetworkDnsIp: &nutanix.ObjectStoreV2StorageNetworkDnsIpArgs{\n\t\t\t\tIpv4: &nutanix.ObjectStoreV2StorageNetworkDnsIpIpv4Args{\n\t\t\t\t\tValue: pulumi.String(\"10.44.77.127\"),\n\t\t\t\t},\n\t\t\t},\n\t\t\tStorageNetworkVip: &nutanix.ObjectStoreV2StorageNetworkVipArgs{\n\t\t\t\tIpv4: &nutanix.ObjectStoreV2StorageNetworkVipIpv4Args{\n\t\t\t\t\tValue: pulumi.String(\"10.44.77.128\"),\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.nutanix.ObjectStoreV2;\nimport com.pulumi.nutanix.ObjectStoreV2Args;\nimport com.pulumi.nutanix.inputs.ObjectStoreV2PublicNetworkIpArgs;\nimport com.pulumi.nutanix.inputs.ObjectStoreV2PublicNetworkIpIpv4Args;\nimport com.pulumi.nutanix.inputs.ObjectStoreV2StorageNetworkDnsIpArgs;\nimport com.pulumi.nutanix.inputs.ObjectStoreV2StorageNetworkDnsIpIpv4Args;\nimport com.pulumi.nutanix.inputs.ObjectStoreV2StorageNetworkVipArgs;\nimport com.pulumi.nutanix.inputs.ObjectStoreV2StorageNetworkVipIpv4Args;\nimport com.pulumi.std.StdFunctions;\nimport com.pulumi.std.inputs.PowArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var example = new ObjectStoreV2(\"example\", ObjectStoreV2Args.builder()\n            .name(\"tf-example-os\")\n            .description(\"terraform create object store example\")\n            .deploymentVersion(\"5.1.1\")\n            .domain(\"msp.pc-idbc.nutanix.com\")\n            .numWorkerNodes(1)\n            .clusterExtId(\"ba250e3e-1db1-4950-917f-a9e2ea35b8e3\")\n            .totalCapacityGib(20 * StdFunctions.pow(PowArgs.builder()\n                .base(1024)\n                .exponent(3)\n                .build()).result())\n            .publicNetworkReference(\"57c4caf1-67e3-457e-8265-6d872f2a3135\")\n            .publicNetworkIps(ObjectStoreV2PublicNetworkIpArgs.builder()\n                .ipv4(ObjectStoreV2PublicNetworkIpIpv4Args.builder()\n                    .value(\"10.44.77.123\")\n                    .build())\n                .build())\n            .storageNetworkReference(\"57c4caf1-67e3-457e-8265-6d872f2a3135\")\n            .storageNetworkDnsIp(ObjectStoreV2StorageNetworkDnsIpArgs.builder()\n                .ipv4(ObjectStoreV2StorageNetworkDnsIpIpv4Args.builder()\n                    .value(\"10.44.77.124\")\n                    .build())\n                .build())\n            .storageNetworkVip(ObjectStoreV2StorageNetworkVipArgs.builder()\n                .ipv4(ObjectStoreV2StorageNetworkVipIpv4Args.builder()\n                    .value(\"10.44.77.125\")\n                    .build())\n                .build())\n            .build());\n\n        // Deploying Object Store in draft state\n        var example_draft = new ObjectStoreV2(\"example-draft\", ObjectStoreV2Args.builder()\n            .name(\"tf-draft-os\")\n            .description(\"terraform deploy object store draft example\")\n            .deploymentVersion(\"5.1.1\")\n            .domain(\"msp.pc-idbc.nutanix.com\")\n            .numWorkerNodes(1)\n            .clusterExtId(\"ba250e3e-1db1-4950-917f-a9e2ea35b8e3\")\n            .totalCapacityGib(20 * StdFunctions.pow(PowArgs.builder()\n                .base(1024)\n                .exponent(3)\n                .build()).result())\n            .publicNetworkReference(\"57c4caf1-67e3-457e-8265-6d872f2a3135\")\n            .state(\"UNDEPLOYED_OBJECT_STORE\")\n            .publicNetworkIps(ObjectStoreV2PublicNetworkIpArgs.builder()\n                .ipv4(ObjectStoreV2PublicNetworkIpIpv4Args.builder()\n                    .value(\"10.44.77.126\")\n                    .build())\n                .build())\n            .storageNetworkReference(\"57c4caf1-67e3-457e-8265-6d872f2a3135\")\n            .storageNetworkDnsIp(ObjectStoreV2StorageNetworkDnsIpArgs.builder()\n                .ipv4(ObjectStoreV2StorageNetworkDnsIpIpv4Args.builder()\n                    .value(\"10.44.77.127\")\n                    .build())\n                .build())\n            .storageNetworkVip(ObjectStoreV2StorageNetworkVipArgs.builder()\n                .ipv4(ObjectStoreV2StorageNetworkVipIpv4Args.builder()\n                    .value(\"10.44.77.128\")\n                    .build())\n                .build())\n            .build());\n\n    }\n}\n```\n<!--End PulumiCodeChooser -->\n",
      "properties": {
        "certificateExtIds": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "- A list of the UUIDs of the certificates of an Object store.\n"
        },
        "clusterExtId": {
          "type": "string",
          "description": "-(Optional) UUID of the AHV or ESXi cluster.\n"
        },
        "creationTime": {
          "type": "string",
          "description": "- The time when the Object store was created.\n"
        },
        "deploymentVersion": {
          "type": "string",
          "description": "-(Optional) The deployment version of the Object store.\n"
        },
        "description": {
          "type": "string",
          "description": "-(Optional) A brief description of the Object store.\n"
        },
        "domain": {
          "type": "string",
          "description": "-(Optional) The DNS domain/subdomain the Object store belongs to. All the Object stores under one Prism Central must have the same domain name. The domain name must consist of at least 2 parts separated by a '.'. Each part can contain upper and lower case letters, digits, hyphens, or underscores. Each part can be up to 63 characters long. The domain must begin and end with an alphanumeric character. For example - 'objects-0.pc_nutanix.com'.\n"
        },
        "extId": {
          "type": "string",
          "description": "- A globally unique identifier of an instance that is suitable for external consumption.\n"
        },
        "lastUpdateTime": {
          "type": "string",
          "description": "- The time when the Object store was last updated.\n"
        },
        "links": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FObjectStoreV2Link:ObjectStoreV2Link"
          },
          "description": "- A HATEOAS style link for the response. Each link contains a user-friendly name identifying the link and an address for retrieving the particular resource.\n"
        },
        "metadatas": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FObjectStoreV2Metadata:ObjectStoreV2Metadata"
          },
          "description": "-(Optional) Metadata associated with this resource.\n"
        },
        "name": {
          "type": "string",
          "description": "-(Required) The name of the Object store.\n"
        },
        "numWorkerNodes": {
          "type": "integer",
          "description": "-(Optional) The number of worker nodes (VMs) to be created for the Object store. Each worker node requires 10 vCPUs and 32 GiB of memory.\n"
        },
        "publicNetworkIps": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FObjectStoreV2PublicNetworkIp:ObjectStoreV2PublicNetworkIp"
          },
          "description": "-(Optional) A list of static IP addresses used as public IPs to access the Object store.\n"
        },
        "publicNetworkReference": {
          "type": "string",
          "description": "-(Optional) Public network reference of the Object store. This is the subnet UUID for an AHV cluster or the IPAM name for an ESXi cluster.\n"
        },
        "region": {
          "type": "string",
          "description": "-(Optional) The region in which the Object store is deployed.\n"
        },
        "state": {
          "type": "string",
          "description": "-(Optional) Enum for the state of the Object store.\n| Enum                                   | Description                                                     |\n|----------------------------------------|-----------------------------------------------------------------|\n| `DEPLOYING_OBJECT_STORE`             | The Object store is being deployed.                             |\n| `OBJECT_STORE_DEPLOYMENT_FAILED`     | The Object store deployment has failed.                         |\n| `DELETING_OBJECT_STORE`              | A deployed Object store is being deleted.                       |\n| `OBJECT_STORE_OPERATION_FAILED`      | There was an error while performing an operation on the Object store. |\n| `UNDEPLOYED_OBJECT_STORE`            | The Object store is not deployed.                               |\n| `OBJECT_STORE_OPERATION_PENDING`     | There is an ongoing operation on the Object store.              |\n| `OBJECT_STORE_AVAILABLE`            | There are no ongoing operations on the deployed Object store.   |\n| `OBJECT_STORE_CERT_CREATION_FAILED`  | Creating the Object store certificate has failed.               |\n| `CREATING_OBJECT_STORE_CERT`         | A certificate is being created for the Object store.            |\n| `OBJECT_STORE_DELETION_FAILED`       | There was an error deleting the Object store.                   |\n"
        },
        "storageNetworkDnsIp": {
          "$ref": "#/types/nutanix:index%2FObjectStoreV2StorageNetworkDnsIp:ObjectStoreV2StorageNetworkDnsIp",
          "description": "-(Optional) An unique address that identifies a device on the internet or a local network in IPv4 or IPv6 format.\n"
        },
        "storageNetworkReference": {
          "type": "string",
          "description": "-(Optional) Reference to the Storage Network of the Object store. This is the subnet UUID for an AHV cluster or the IPAM name for an ESXi cluster.\n"
        },
        "storageNetworkVip": {
          "$ref": "#/types/nutanix:index%2FObjectStoreV2StorageNetworkVip:ObjectStoreV2StorageNetworkVip",
          "description": "-(Optional) An unique address that identifies a device on the internet or a local network in IPv4 or IPv6 format.\n"
        },
        "tenantId": {
          "type": "string",
          "description": "- A globally unique identifier that represents the tenant that owns this entity. The system automatically assigns it, and it and is immutable from an API consumer perspective (some use cases may cause this Id to change - For instance, a use case may require the transfer of ownership of the entity, but these cases are handled automatically on the server).\n"
        },
        "totalCapacityGib": {
          "type": "integer",
          "description": "-(Optional) Size of the Object store in GiB.\n"
        }
      },
      "type": "object",
      "required": [
        "certificateExtIds",
        "clusterExtId",
        "creationTime",
        "deploymentVersion",
        "description",
        "domain",
        "extId",
        "lastUpdateTime",
        "links",
        "metadatas",
        "name",
        "numWorkerNodes",
        "publicNetworkIps",
        "publicNetworkReference",
        "region",
        "state",
        "storageNetworkDnsIp",
        "storageNetworkReference",
        "storageNetworkVip",
        "tenantId",
        "totalCapacityGib"
      ],
      "inputProperties": {
        "certificateExtIds": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "- A list of the UUIDs of the certificates of an Object store.\n"
        },
        "clusterExtId": {
          "type": "string",
          "description": "-(Optional) UUID of the AHV or ESXi cluster.\n"
        },
        "deploymentVersion": {
          "type": "string",
          "description": "-(Optional) The deployment version of the Object store.\n"
        },
        "description": {
          "type": "string",
          "description": "-(Optional) A brief description of the Object store.\n"
        },
        "domain": {
          "type": "string",
          "description": "-(Optional) The DNS domain/subdomain the Object store belongs to. All the Object stores under one Prism Central must have the same domain name. The domain name must consist of at least 2 parts separated by a '.'. Each part can contain upper and lower case letters, digits, hyphens, or underscores. Each part can be up to 63 characters long. The domain must begin and end with an alphanumeric character. For example - 'objects-0.pc_nutanix.com'.\n"
        },
        "metadatas": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FObjectStoreV2Metadata:ObjectStoreV2Metadata"
          },
          "description": "-(Optional) Metadata associated with this resource.\n"
        },
        "name": {
          "type": "string",
          "description": "-(Required) The name of the Object store.\n"
        },
        "numWorkerNodes": {
          "type": "integer",
          "description": "-(Optional) The number of worker nodes (VMs) to be created for the Object store. Each worker node requires 10 vCPUs and 32 GiB of memory.\n"
        },
        "publicNetworkIps": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FObjectStoreV2PublicNetworkIp:ObjectStoreV2PublicNetworkIp"
          },
          "description": "-(Optional) A list of static IP addresses used as public IPs to access the Object store.\n"
        },
        "publicNetworkReference": {
          "type": "string",
          "description": "-(Optional) Public network reference of the Object store. This is the subnet UUID for an AHV cluster or the IPAM name for an ESXi cluster.\n"
        },
        "region": {
          "type": "string",
          "description": "-(Optional) The region in which the Object store is deployed.\n"
        },
        "state": {
          "type": "string",
          "description": "-(Optional) Enum for the state of the Object store.\n| Enum                                   | Description                                                     |\n|----------------------------------------|-----------------------------------------------------------------|\n| `DEPLOYING_OBJECT_STORE`             | The Object store is being deployed.                             |\n| `OBJECT_STORE_DEPLOYMENT_FAILED`     | The Object store deployment has failed.                         |\n| `DELETING_OBJECT_STORE`              | A deployed Object store is being deleted.                       |\n| `OBJECT_STORE_OPERATION_FAILED`      | There was an error while performing an operation on the Object store. |\n| `UNDEPLOYED_OBJECT_STORE`            | The Object store is not deployed.                               |\n| `OBJECT_STORE_OPERATION_PENDING`     | There is an ongoing operation on the Object store.              |\n| `OBJECT_STORE_AVAILABLE`            | There are no ongoing operations on the deployed Object store.   |\n| `OBJECT_STORE_CERT_CREATION_FAILED`  | Creating the Object store certificate has failed.               |\n| `CREATING_OBJECT_STORE_CERT`         | A certificate is being created for the Object store.            |\n| `OBJECT_STORE_DELETION_FAILED`       | There was an error deleting the Object store.                   |\n"
        },
        "storageNetworkDnsIp": {
          "$ref": "#/types/nutanix:index%2FObjectStoreV2StorageNetworkDnsIp:ObjectStoreV2StorageNetworkDnsIp",
          "description": "-(Optional) An unique address that identifies a device on the internet or a local network in IPv4 or IPv6 format.\n"
        },
        "storageNetworkReference": {
          "type": "string",
          "description": "-(Optional) Reference to the Storage Network of the Object store. This is the subnet UUID for an AHV cluster or the IPAM name for an ESXi cluster.\n"
        },
        "storageNetworkVip": {
          "$ref": "#/types/nutanix:index%2FObjectStoreV2StorageNetworkVip:ObjectStoreV2StorageNetworkVip",
          "description": "-(Optional) An unique address that identifies a device on the internet or a local network in IPv4 or IPv6 format.\n"
        },
        "totalCapacityGib": {
          "type": "integer",
          "description": "-(Optional) Size of the Object store in GiB.\n"
        }
      },
      "stateInputs": {
        "description": "Input properties used for looking up and filtering ObjectStoreV2 resources.\n",
        "properties": {
          "certificateExtIds": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "description": "- A list of the UUIDs of the certificates of an Object store.\n"
          },
          "clusterExtId": {
            "type": "string",
            "description": "-(Optional) UUID of the AHV or ESXi cluster.\n"
          },
          "creationTime": {
            "type": "string",
            "description": "- The time when the Object store was created.\n"
          },
          "deploymentVersion": {
            "type": "string",
            "description": "-(Optional) The deployment version of the Object store.\n"
          },
          "description": {
            "type": "string",
            "description": "-(Optional) A brief description of the Object store.\n"
          },
          "domain": {
            "type": "string",
            "description": "-(Optional) The DNS domain/subdomain the Object store belongs to. All the Object stores under one Prism Central must have the same domain name. The domain name must consist of at least 2 parts separated by a '.'. Each part can contain upper and lower case letters, digits, hyphens, or underscores. Each part can be up to 63 characters long. The domain must begin and end with an alphanumeric character. For example - 'objects-0.pc_nutanix.com'.\n"
          },
          "extId": {
            "type": "string",
            "description": "- A globally unique identifier of an instance that is suitable for external consumption.\n"
          },
          "lastUpdateTime": {
            "type": "string",
            "description": "- The time when the Object store was last updated.\n"
          },
          "links": {
            "type": "array",
            "items": {
              "$ref": "#/types/nutanix:index%2FObjectStoreV2Link:ObjectStoreV2Link"
            },
            "description": "- A HATEOAS style link for the response. Each link contains a user-friendly name identifying the link and an address for retrieving the particular resource.\n"
          },
          "metadatas": {
            "type": "array",
            "items": {
              "$ref": "#/types/nutanix:index%2FObjectStoreV2Metadata:ObjectStoreV2Metadata"
            },
            "description": "-(Optional) Metadata associated with this resource.\n"
          },
          "name": {
            "type": "string",
            "description": "-(Required) The name of the Object store.\n"
          },
          "numWorkerNodes": {
            "type": "integer",
            "description": "-(Optional) The number of worker nodes (VMs) to be created for the Object store. Each worker node requires 10 vCPUs and 32 GiB of memory.\n"
          },
          "publicNetworkIps": {
            "type": "array",
            "items": {
              "$ref": "#/types/nutanix:index%2FObjectStoreV2PublicNetworkIp:ObjectStoreV2PublicNetworkIp"
            },
            "description": "-(Optional) A list of static IP addresses used as public IPs to access the Object store.\n"
          },
          "publicNetworkReference": {
            "type": "string",
            "description": "-(Optional) Public network reference of the Object store. This is the subnet UUID for an AHV cluster or the IPAM name for an ESXi cluster.\n"
          },
          "region": {
            "type": "string",
            "description": "-(Optional) The region in which the Object store is deployed.\n"
          },
          "state": {
            "type": "string",
            "description": "-(Optional) Enum for the state of the Object store.\n| Enum                                   | Description                                                     |\n|----------------------------------------|-----------------------------------------------------------------|\n| `DEPLOYING_OBJECT_STORE`             | The Object store is being deployed.                             |\n| `OBJECT_STORE_DEPLOYMENT_FAILED`     | The Object store deployment has failed.                         |\n| `DELETING_OBJECT_STORE`              | A deployed Object store is being deleted.                       |\n| `OBJECT_STORE_OPERATION_FAILED`      | There was an error while performing an operation on the Object store. |\n| `UNDEPLOYED_OBJECT_STORE`            | The Object store is not deployed.                               |\n| `OBJECT_STORE_OPERATION_PENDING`     | There is an ongoing operation on the Object store.              |\n| `OBJECT_STORE_AVAILABLE`            | There are no ongoing operations on the deployed Object store.   |\n| `OBJECT_STORE_CERT_CREATION_FAILED`  | Creating the Object store certificate has failed.               |\n| `CREATING_OBJECT_STORE_CERT`         | A certificate is being created for the Object store.            |\n| `OBJECT_STORE_DELETION_FAILED`       | There was an error deleting the Object store.                   |\n"
          },
          "storageNetworkDnsIp": {
            "$ref": "#/types/nutanix:index%2FObjectStoreV2StorageNetworkDnsIp:ObjectStoreV2StorageNetworkDnsIp",
            "description": "-(Optional) An unique address that identifies a device on the internet or a local network in IPv4 or IPv6 format.\n"
          },
          "storageNetworkReference": {
            "type": "string",
            "description": "-(Optional) Reference to the Storage Network of the Object store. This is the subnet UUID for an AHV cluster or the IPAM name for an ESXi cluster.\n"
          },
          "storageNetworkVip": {
            "$ref": "#/types/nutanix:index%2FObjectStoreV2StorageNetworkVip:ObjectStoreV2StorageNetworkVip",
            "description": "-(Optional) An unique address that identifies a device on the internet or a local network in IPv4 or IPv6 format.\n"
          },
          "tenantId": {
            "type": "string",
            "description": "- A globally unique identifier that represents the tenant that owns this entity. The system automatically assigns it, and it and is immutable from an API consumer perspective (some use cases may cause this Id to change - For instance, a use case may require the transfer of ownership of the entity, but these cases are handled automatically on the server).\n"
          },
          "totalCapacityGib": {
            "type": "integer",
            "description": "-(Optional) Size of the Object store in GiB.\n"
          }
        },
        "type": "object"
      }
    },
    "nutanix:index/pbr:Pbr": {
      "description": "Provides Nutanix resource to create Policy Based Routing inside VPCs.\n\n## Example Usage\n\n### pbr creation with vpc name with any source or destination or protocol with permit action\n\n<!--Start PulumiCodeChooser -->\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as nutanix from \"@pierskarsenbarg/nutanix\";\n\nconst pbr = new nutanix.Pbr(\"pbr\", {\n    name: \"test-policy-1\",\n    priority: 123,\n    protocolType: \"ALL\",\n    action: \"PERMIT\",\n    vpcName: \"test123\",\n    source: {\n        addressType: \"ALL\",\n    },\n    destination: {\n        addressType: \"ALL\",\n    },\n});\n```\n```python\nimport pulumi\nimport pulumi_nutanix as nutanix\n\npbr = nutanix.Pbr(\"pbr\",\n    name=\"test-policy-1\",\n    priority=123,\n    protocol_type=\"ALL\",\n    action=\"PERMIT\",\n    vpc_name=\"test123\",\n    source={\n        \"address_type\": \"ALL\",\n    },\n    destination={\n        \"address_type\": \"ALL\",\n    })\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Nutanix = PiersKarsenbarg.Nutanix;\n\nreturn await Deployment.RunAsync(() => \n{\n    var pbr = new Nutanix.Pbr(\"pbr\", new()\n    {\n        Name = \"test-policy-1\",\n        Priority = 123,\n        ProtocolType = \"ALL\",\n        Action = \"PERMIT\",\n        VpcName = \"test123\",\n        Source = new Nutanix.Inputs.PbrSourceArgs\n        {\n            AddressType = \"ALL\",\n        },\n        Destination = new Nutanix.Inputs.PbrDestinationArgs\n        {\n            AddressType = \"ALL\",\n        },\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pierskarsenbarg/pulumi-nutanix/sdk/go/nutanix\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := nutanix.NewPbr(ctx, \"pbr\", &nutanix.PbrArgs{\n\t\t\tName:         pulumi.String(\"test-policy-1\"),\n\t\t\tPriority:     pulumi.Int(123),\n\t\t\tProtocolType: pulumi.String(\"ALL\"),\n\t\t\tAction:       pulumi.String(\"PERMIT\"),\n\t\t\tVpcName:      pulumi.String(\"test123\"),\n\t\t\tSource: &nutanix.PbrSourceArgs{\n\t\t\t\tAddressType: pulumi.String(\"ALL\"),\n\t\t\t},\n\t\t\tDestination: &nutanix.PbrDestinationArgs{\n\t\t\t\tAddressType: pulumi.String(\"ALL\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.nutanix.Pbr;\nimport com.pulumi.nutanix.PbrArgs;\nimport com.pulumi.nutanix.inputs.PbrSourceArgs;\nimport com.pulumi.nutanix.inputs.PbrDestinationArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var pbr = new Pbr(\"pbr\", PbrArgs.builder()\n            .name(\"test-policy-1\")\n            .priority(123)\n            .protocolType(\"ALL\")\n            .action(\"PERMIT\")\n            .vpcName(\"test123\")\n            .source(PbrSourceArgs.builder()\n                .addressType(\"ALL\")\n                .build())\n            .destination(PbrDestinationArgs.builder()\n                .addressType(\"ALL\")\n                .build())\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  pbr:\n    type: nutanix:Pbr\n    properties:\n      name: test-policy-1\n      priority: 123\n      protocolType: ALL\n      action: PERMIT\n      vpcName: test123\n      source:\n        addressType: ALL\n      destination:\n        addressType: ALL\n```\n<!--End PulumiCodeChooser -->\n\n",
      "properties": {
        "action": {
          "type": "string",
          "description": "Routing policy action. Must be one of {DENY, PERMIT, REROUTE} .\n"
        },
        "apiVersion": {
          "type": "string",
          "description": "The version of the API.\n"
        },
        "destination": {
          "$ref": "#/types/nutanix:index%2FPbrDestination:PbrDestination"
        },
        "isBidirectional": {
          "type": "boolean",
          "description": "Additionally create Policy in reverse direction. Should be used with {TCP, UDP with start and end port ranges and ICMP with icmp code and type}. Supported with 2022.x.\n"
        },
        "metadata": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          },
          "description": "The routing policies kind metadata.\n"
        },
        "name": {
          "type": "string",
          "description": "name of policy\n"
        },
        "priority": {
          "type": "integer",
          "description": "priority of policy\n"
        },
        "protocolParameters": {
          "$ref": "#/types/nutanix:index%2FPbrProtocolParameters:PbrProtocolParameters"
        },
        "protocolType": {
          "type": "string",
          "description": "Protocol type of policy based routing. Must be one of {TCP, UDP, ICMP, PROTOCOL_NUMBER, ALL} .\n"
        },
        "serviceIpLists": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "IP addresses of network services. This field is valid only when action is REROUTE.\n"
        },
        "source": {
          "$ref": "#/types/nutanix:index%2FPbrSource:PbrSource"
        },
        "vpcName": {
          "type": "string",
          "description": "The reference to a vpc. Should not be used with {vpc_reference_uuid}\n"
        },
        "vpcReferenceUuid": {
          "type": "string",
          "description": "The reference to a vpc . Should not be used with {vpc_name} .\n"
        }
      },
      "type": "object",
      "required": [
        "action",
        "apiVersion",
        "destination",
        "isBidirectional",
        "metadata",
        "name",
        "priority",
        "protocolType",
        "serviceIpLists",
        "source",
        "vpcName",
        "vpcReferenceUuid"
      ],
      "inputProperties": {
        "action": {
          "type": "string",
          "description": "Routing policy action. Must be one of {DENY, PERMIT, REROUTE} .\n",
          "willReplaceOnChanges": true
        },
        "apiVersion": {
          "type": "string",
          "description": "The version of the API.\n"
        },
        "destination": {
          "$ref": "#/types/nutanix:index%2FPbrDestination:PbrDestination"
        },
        "isBidirectional": {
          "type": "boolean",
          "description": "Additionally create Policy in reverse direction. Should be used with {TCP, UDP with start and end port ranges and ICMP with icmp code and type}. Supported with 2022.x.\n"
        },
        "name": {
          "type": "string",
          "description": "name of policy\n"
        },
        "priority": {
          "type": "integer",
          "description": "priority of policy\n"
        },
        "protocolParameters": {
          "$ref": "#/types/nutanix:index%2FPbrProtocolParameters:PbrProtocolParameters"
        },
        "protocolType": {
          "type": "string",
          "description": "Protocol type of policy based routing. Must be one of {TCP, UDP, ICMP, PROTOCOL_NUMBER, ALL} .\n"
        },
        "serviceIpLists": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "IP addresses of network services. This field is valid only when action is REROUTE.\n"
        },
        "source": {
          "$ref": "#/types/nutanix:index%2FPbrSource:PbrSource"
        },
        "vpcName": {
          "type": "string",
          "description": "The reference to a vpc. Should not be used with {vpc_reference_uuid}\n",
          "willReplaceOnChanges": true
        },
        "vpcReferenceUuid": {
          "type": "string",
          "description": "The reference to a vpc . Should not be used with {vpc_name} .\n",
          "willReplaceOnChanges": true
        }
      },
      "requiredInputs": [
        "action",
        "destination",
        "priority",
        "protocolType",
        "source"
      ],
      "stateInputs": {
        "description": "Input properties used for looking up and filtering Pbr resources.\n",
        "properties": {
          "action": {
            "type": "string",
            "description": "Routing policy action. Must be one of {DENY, PERMIT, REROUTE} .\n",
            "willReplaceOnChanges": true
          },
          "apiVersion": {
            "type": "string",
            "description": "The version of the API.\n"
          },
          "destination": {
            "$ref": "#/types/nutanix:index%2FPbrDestination:PbrDestination"
          },
          "isBidirectional": {
            "type": "boolean",
            "description": "Additionally create Policy in reverse direction. Should be used with {TCP, UDP with start and end port ranges and ICMP with icmp code and type}. Supported with 2022.x.\n"
          },
          "metadata": {
            "type": "object",
            "additionalProperties": {
              "type": "string"
            },
            "description": "The routing policies kind metadata.\n"
          },
          "name": {
            "type": "string",
            "description": "name of policy\n"
          },
          "priority": {
            "type": "integer",
            "description": "priority of policy\n"
          },
          "protocolParameters": {
            "$ref": "#/types/nutanix:index%2FPbrProtocolParameters:PbrProtocolParameters"
          },
          "protocolType": {
            "type": "string",
            "description": "Protocol type of policy based routing. Must be one of {TCP, UDP, ICMP, PROTOCOL_NUMBER, ALL} .\n"
          },
          "serviceIpLists": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "description": "IP addresses of network services. This field is valid only when action is REROUTE.\n"
          },
          "source": {
            "$ref": "#/types/nutanix:index%2FPbrSource:PbrSource"
          },
          "vpcName": {
            "type": "string",
            "description": "The reference to a vpc. Should not be used with {vpc_reference_uuid}\n",
            "willReplaceOnChanges": true
          },
          "vpcReferenceUuid": {
            "type": "string",
            "description": "The reference to a vpc . Should not be used with {vpc_name} .\n",
            "willReplaceOnChanges": true
          }
        },
        "type": "object"
      }
    },
    "nutanix:index/pbrV2:PbrV2": {
      "properties": {
        "description": {
          "type": "string"
        },
        "extId": {
          "type": "string"
        },
        "links": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FPbrV2Link:PbrV2Link"
          }
        },
        "metadatas": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FPbrV2Metadata:PbrV2Metadata"
          }
        },
        "name": {
          "type": "string"
        },
        "policies": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FPbrV2Policy:PbrV2Policy"
          }
        },
        "priority": {
          "type": "integer"
        },
        "tenantId": {
          "type": "string"
        },
        "vpcExtId": {
          "type": "string"
        },
        "vpcs": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FPbrV2Vpc:PbrV2Vpc"
          }
        }
      },
      "type": "object",
      "required": [
        "description",
        "extId",
        "links",
        "metadatas",
        "name",
        "policies",
        "priority",
        "tenantId",
        "vpcExtId",
        "vpcs"
      ],
      "inputProperties": {
        "description": {
          "type": "string"
        },
        "extId": {
          "type": "string"
        },
        "name": {
          "type": "string"
        },
        "policies": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FPbrV2Policy:PbrV2Policy"
          }
        },
        "priority": {
          "type": "integer"
        },
        "vpcExtId": {
          "type": "string"
        }
      },
      "requiredInputs": [
        "policies",
        "priority",
        "vpcExtId"
      ],
      "stateInputs": {
        "description": "Input properties used for looking up and filtering PbrV2 resources.\n",
        "properties": {
          "description": {
            "type": "string"
          },
          "extId": {
            "type": "string"
          },
          "links": {
            "type": "array",
            "items": {
              "$ref": "#/types/nutanix:index%2FPbrV2Link:PbrV2Link"
            }
          },
          "metadatas": {
            "type": "array",
            "items": {
              "$ref": "#/types/nutanix:index%2FPbrV2Metadata:PbrV2Metadata"
            }
          },
          "name": {
            "type": "string"
          },
          "policies": {
            "type": "array",
            "items": {
              "$ref": "#/types/nutanix:index%2FPbrV2Policy:PbrV2Policy"
            }
          },
          "priority": {
            "type": "integer"
          },
          "tenantId": {
            "type": "string"
          },
          "vpcExtId": {
            "type": "string"
          },
          "vpcs": {
            "type": "array",
            "items": {
              "$ref": "#/types/nutanix:index%2FPbrV2Vpc:PbrV2Vpc"
            }
          }
        },
        "type": "object"
      }
    },
    "nutanix:index/pcBackupTargetV2:PcBackupTargetV2": {
      "description": "Create a cluster or object store as the backup target. For a given Prism Central, there can be up to 3 clusters as backup targets and 1 object store as backup target. If any cluster or object store is not eligible for backup or lacks appropriate permissions, the API request will fail. For object store backup targets, specifying backup policy is mandatory along with the location of the object store.\n\n## Example Usage\n\n### Cluster Location\n\n<!--Start PulumiCodeChooser -->\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as nutanix from \"@pierskarsenbarg/nutanix\";\n\nconst cluster_location = new nutanix.PcBackupTargetV2(\"cluster-location\", {\n    domainManagerExtId: \"75dde184-3a0e-4f59-a185-03ca1efead17\",\n    location: {\n        clusterLocations: [{\n            configs: [{\n                extId: \"323860ca-bd10-411e-9fe0-1430b62eaf45\",\n            }],\n        }],\n    },\n});\n```\n```python\nimport pulumi\nimport pulumi_nutanix as nutanix\n\ncluster_location = nutanix.PcBackupTargetV2(\"cluster-location\",\n    domain_manager_ext_id=\"75dde184-3a0e-4f59-a185-03ca1efead17\",\n    location={\n        \"cluster_locations\": [{\n            \"configs\": [{\n                \"ext_id\": \"323860ca-bd10-411e-9fe0-1430b62eaf45\",\n            }],\n        }],\n    })\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Nutanix = PiersKarsenbarg.Nutanix;\n\nreturn await Deployment.RunAsync(() => \n{\n    var cluster_location = new Nutanix.PcBackupTargetV2(\"cluster-location\", new()\n    {\n        DomainManagerExtId = \"75dde184-3a0e-4f59-a185-03ca1efead17\",\n        Location = new Nutanix.Inputs.PcBackupTargetV2LocationArgs\n        {\n            ClusterLocations = new[]\n            {\n                new Nutanix.Inputs.PcBackupTargetV2LocationClusterLocationArgs\n                {\n                    Configs = new[]\n                    {\n                        new Nutanix.Inputs.PcBackupTargetV2LocationClusterLocationConfigArgs\n                        {\n                            ExtId = \"323860ca-bd10-411e-9fe0-1430b62eaf45\",\n                        },\n                    },\n                },\n            },\n        },\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pierskarsenbarg/pulumi-nutanix/sdk/go/nutanix\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := nutanix.NewPcBackupTargetV2(ctx, \"cluster-location\", &nutanix.PcBackupTargetV2Args{\n\t\t\tDomainManagerExtId: pulumi.String(\"75dde184-3a0e-4f59-a185-03ca1efead17\"),\n\t\t\tLocation: &nutanix.PcBackupTargetV2LocationArgs{\n\t\t\t\tClusterLocations: nutanix.PcBackupTargetV2LocationClusterLocationArray{\n\t\t\t\t\t&nutanix.PcBackupTargetV2LocationClusterLocationArgs{\n\t\t\t\t\t\tConfigs: nutanix.PcBackupTargetV2LocationClusterLocationConfigArray{\n\t\t\t\t\t\t\t&nutanix.PcBackupTargetV2LocationClusterLocationConfigArgs{\n\t\t\t\t\t\t\t\tExtId: pulumi.String(\"323860ca-bd10-411e-9fe0-1430b62eaf45\"),\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.nutanix.PcBackupTargetV2;\nimport com.pulumi.nutanix.PcBackupTargetV2Args;\nimport com.pulumi.nutanix.inputs.PcBackupTargetV2LocationArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var cluster_location = new PcBackupTargetV2(\"cluster-location\", PcBackupTargetV2Args.builder()\n            .domainManagerExtId(\"75dde184-3a0e-4f59-a185-03ca1efead17\")\n            .location(PcBackupTargetV2LocationArgs.builder()\n                .clusterLocations(PcBackupTargetV2LocationClusterLocationArgs.builder()\n                    .configs(PcBackupTargetV2LocationClusterLocationConfigArgs.builder()\n                        .extId(\"323860ca-bd10-411e-9fe0-1430b62eaf45\")\n                        .build())\n                    .build())\n                .build())\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  cluster-location:\n    type: nutanix:PcBackupTargetV2\n    properties:\n      domainManagerExtId: 75dde184-3a0e-4f59-a185-03ca1efead17\n      location:\n        clusterLocations:\n          - configs:\n              - extId: 323860ca-bd10-411e-9fe0-1430b62eaf45\n```\n<!--End PulumiCodeChooser -->\n\n### Object Store Location\n\n<!--Start PulumiCodeChooser -->\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as nutanix from \"@pierskarsenbarg/nutanix\";\n\n//using object store location\nconst object_store_location = new nutanix.PcBackupTargetV2(\"object-store-location\", {\n    domainManagerExtId: \"75dde184-3a0e-4f59-a185-03ca1efead17\",\n    location: {\n        objectStoreLocations: [{\n            providerConfigs: [{\n                bucketName: \"nutanix-terraform-bucket\",\n                region: \"us-west-1\",\n                credentials: {\n                    accessKeyId: \"IHSAJHDHADFWYTKJHFGCJKHASGJHKDSA\",\n                    secretAccessKey: \"JGSDHJYHGFHGHDS+JKBASDF/HSDAFHJ+SjkfbdsASDfdJFdSDFJfk\",\n                },\n            }],\n            backupPolicies: [{\n                rpoInMinutes: 120,\n            }],\n        }],\n    },\n});\n```\n```python\nimport pulumi\nimport pulumi_nutanix as nutanix\n\n#using object store location\nobject_store_location = nutanix.PcBackupTargetV2(\"object-store-location\",\n    domain_manager_ext_id=\"75dde184-3a0e-4f59-a185-03ca1efead17\",\n    location={\n        \"object_store_locations\": [{\n            \"provider_configs\": [{\n                \"bucket_name\": \"nutanix-terraform-bucket\",\n                \"region\": \"us-west-1\",\n                \"credentials\": {\n                    \"access_key_id\": \"IHSAJHDHADFWYTKJHFGCJKHASGJHKDSA\",\n                    \"secret_access_key\": \"JGSDHJYHGFHGHDS+JKBASDF/HSDAFHJ+SjkfbdsASDfdJFdSDFJfk\",\n                },\n            }],\n            \"backup_policies\": [{\n                \"rpo_in_minutes\": 120,\n            }],\n        }],\n    })\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Nutanix = PiersKarsenbarg.Nutanix;\n\nreturn await Deployment.RunAsync(() => \n{\n    //using object store location\n    var object_store_location = new Nutanix.PcBackupTargetV2(\"object-store-location\", new()\n    {\n        DomainManagerExtId = \"75dde184-3a0e-4f59-a185-03ca1efead17\",\n        Location = new Nutanix.Inputs.PcBackupTargetV2LocationArgs\n        {\n            ObjectStoreLocations = new[]\n            {\n                new Nutanix.Inputs.PcBackupTargetV2LocationObjectStoreLocationArgs\n                {\n                    ProviderConfigs = new[]\n                    {\n                        new Nutanix.Inputs.PcBackupTargetV2LocationObjectStoreLocationProviderConfigArgs\n                        {\n                            BucketName = \"nutanix-terraform-bucket\",\n                            Region = \"us-west-1\",\n                            Credentials = new Nutanix.Inputs.PcBackupTargetV2LocationObjectStoreLocationProviderConfigCredentialsArgs\n                            {\n                                AccessKeyId = \"IHSAJHDHADFWYTKJHFGCJKHASGJHKDSA\",\n                                SecretAccessKey = \"JGSDHJYHGFHGHDS+JKBASDF/HSDAFHJ+SjkfbdsASDfdJFdSDFJfk\",\n                            },\n                        },\n                    },\n                    BackupPolicies = new[]\n                    {\n                        new Nutanix.Inputs.PcBackupTargetV2LocationObjectStoreLocationBackupPolicyArgs\n                        {\n                            RpoInMinutes = 120,\n                        },\n                    },\n                },\n            },\n        },\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pierskarsenbarg/pulumi-nutanix/sdk/go/nutanix\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t// using object store location\n\t\t_, err := nutanix.NewPcBackupTargetV2(ctx, \"object-store-location\", &nutanix.PcBackupTargetV2Args{\n\t\t\tDomainManagerExtId: pulumi.String(\"75dde184-3a0e-4f59-a185-03ca1efead17\"),\n\t\t\tLocation: &nutanix.PcBackupTargetV2LocationArgs{\n\t\t\t\tObjectStoreLocations: nutanix.PcBackupTargetV2LocationObjectStoreLocationArray{\n\t\t\t\t\t&nutanix.PcBackupTargetV2LocationObjectStoreLocationArgs{\n\t\t\t\t\t\tProviderConfigs: nutanix.PcBackupTargetV2LocationObjectStoreLocationProviderConfigArray{\n\t\t\t\t\t\t\t&nutanix.PcBackupTargetV2LocationObjectStoreLocationProviderConfigArgs{\n\t\t\t\t\t\t\t\tBucketName: pulumi.String(\"nutanix-terraform-bucket\"),\n\t\t\t\t\t\t\t\tRegion:     pulumi.String(\"us-west-1\"),\n\t\t\t\t\t\t\t\tCredentials: &nutanix.PcBackupTargetV2LocationObjectStoreLocationProviderConfigCredentialsArgs{\n\t\t\t\t\t\t\t\t\tAccessKeyId:     pulumi.String(\"IHSAJHDHADFWYTKJHFGCJKHASGJHKDSA\"),\n\t\t\t\t\t\t\t\t\tSecretAccessKey: pulumi.String(\"JGSDHJYHGFHGHDS+JKBASDF/HSDAFHJ+SjkfbdsASDfdJFdSDFJfk\"),\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t},\n\t\t\t\t\t\tBackupPolicies: nutanix.PcBackupTargetV2LocationObjectStoreLocationBackupPolicyArray{\n\t\t\t\t\t\t\t&nutanix.PcBackupTargetV2LocationObjectStoreLocationBackupPolicyArgs{\n\t\t\t\t\t\t\t\tRpoInMinutes: pulumi.Int(120),\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.nutanix.PcBackupTargetV2;\nimport com.pulumi.nutanix.PcBackupTargetV2Args;\nimport com.pulumi.nutanix.inputs.PcBackupTargetV2LocationArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        //using object store location\n        var object_store_location = new PcBackupTargetV2(\"object-store-location\", PcBackupTargetV2Args.builder()\n            .domainManagerExtId(\"75dde184-3a0e-4f59-a185-03ca1efead17\")\n            .location(PcBackupTargetV2LocationArgs.builder()\n                .objectStoreLocations(PcBackupTargetV2LocationObjectStoreLocationArgs.builder()\n                    .providerConfigs(PcBackupTargetV2LocationObjectStoreLocationProviderConfigArgs.builder()\n                        .bucketName(\"nutanix-terraform-bucket\")\n                        .region(\"us-west-1\")\n                        .credentials(PcBackupTargetV2LocationObjectStoreLocationProviderConfigCredentialsArgs.builder()\n                            .accessKeyId(\"IHSAJHDHADFWYTKJHFGCJKHASGJHKDSA\")\n                            .secretAccessKey(\"JGSDHJYHGFHGHDS+JKBASDF/HSDAFHJ+SjkfbdsASDfdJFdSDFJfk\")\n                            .build())\n                        .build())\n                    .backupPolicies(PcBackupTargetV2LocationObjectStoreLocationBackupPolicyArgs.builder()\n                        .rpoInMinutes(120)\n                        .build())\n                    .build())\n                .build())\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  # using object store location\n  object-store-location:\n    type: nutanix:PcBackupTargetV2\n    properties:\n      domainManagerExtId: 75dde184-3a0e-4f59-a185-03ca1efead17\n      location:\n        objectStoreLocations:\n          - providerConfigs:\n              - bucketName: nutanix-terraform-bucket\n                region: us-west-1\n                credentials:\n                  accessKeyId: IHSAJHDHADFWYTKJHFGCJKHASGJHKDSA\n                  secretAccessKey: JGSDHJYHGFHGHDS+JKBASDF/HSDAFHJ+SjkfbdsASDfdJFdSDFJfk\n            backupPolicies:\n              - rpoInMinutes: 120\n```\n<!--End PulumiCodeChooser -->\n",
      "properties": {
        "backupPauseReason": {
          "type": "string"
        },
        "domainManagerExtId": {
          "type": "string",
          "description": "-(Required) A unique identifier for the domain manager.\n"
        },
        "extId": {
          "type": "string"
        },
        "isBackupPaused": {
          "type": "boolean"
        },
        "lastSyncTime": {
          "type": "string"
        },
        "links": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FPcBackupTargetV2Link:PcBackupTargetV2Link"
          }
        },
        "location": {
          "$ref": "#/types/nutanix:index%2FPcBackupTargetV2Location:PcBackupTargetV2Location",
          "description": "-(Required) Location of the backup target. For example, a cluster or an object store endpoint, such as AWS s3.\n"
        },
        "tenantId": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "backupPauseReason",
        "domainManagerExtId",
        "extId",
        "isBackupPaused",
        "lastSyncTime",
        "links",
        "location",
        "tenantId"
      ],
      "inputProperties": {
        "domainManagerExtId": {
          "type": "string",
          "description": "-(Required) A unique identifier for the domain manager.\n"
        },
        "location": {
          "$ref": "#/types/nutanix:index%2FPcBackupTargetV2Location:PcBackupTargetV2Location",
          "description": "-(Required) Location of the backup target. For example, a cluster or an object store endpoint, such as AWS s3.\n"
        }
      },
      "requiredInputs": [
        "domainManagerExtId",
        "location"
      ],
      "stateInputs": {
        "description": "Input properties used for looking up and filtering PcBackupTargetV2 resources.\n",
        "properties": {
          "backupPauseReason": {
            "type": "string"
          },
          "domainManagerExtId": {
            "type": "string",
            "description": "-(Required) A unique identifier for the domain manager.\n"
          },
          "extId": {
            "type": "string"
          },
          "isBackupPaused": {
            "type": "boolean"
          },
          "lastSyncTime": {
            "type": "string"
          },
          "links": {
            "type": "array",
            "items": {
              "$ref": "#/types/nutanix:index%2FPcBackupTargetV2Link:PcBackupTargetV2Link"
            }
          },
          "location": {
            "$ref": "#/types/nutanix:index%2FPcBackupTargetV2Location:PcBackupTargetV2Location",
            "description": "-(Required) Location of the backup target. For example, a cluster or an object store endpoint, such as AWS s3.\n"
          },
          "tenantId": {
            "type": "string"
          }
        },
        "type": "object"
      }
    },
    "nutanix:index/pcDeployV2:PcDeployV2": {
      "description": "> - The Pc Deploy V2 resource is an action-only resource that supports creating actions. The update and delete operations have no effect. To run it again, destroy and reapply the resource.\n> - We need to increase the timeout for deploying the PC resource because the deployment takes longer than the default timeout allows for the operation to complete.\n\nDeploys a Prism Central using the provided details. Prism Central Size, Network Config are mandatory fields to deploy Prism Central. The response from this endpoint contains the URL in the task object location header that can be used to track the request status.\n\n## Example Usage\n\n<!--Start PulumiCodeChooser -->\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as nutanix from \"@pierskarsenbarg/nutanix\";\n\nconst example = new nutanix.PcDeployV2(\"example\", {\n    config: {\n        buildInfo: {\n            version: \"pc.2024.3\",\n        },\n        size: \"STARTER\",\n        name: \"PC_EXAMPLE\",\n    },\n    network: {\n        externalNetworks: [{\n            networkExtId: \"ba416f8d-00f2-499d-bc4c-19da8d104af9\",\n            defaultGateway: {\n                ipv4s: [{\n                    value: \"10.97.64.1\",\n                }],\n            },\n            subnetMask: {\n                ipv4s: [{\n                    value: \"255.255.252.0\",\n                }],\n            },\n            ipRanges: [{\n                begin: {\n                    ipv4s: [{\n                        value: \"10.97.64.91\",\n                    }],\n                },\n                end: {\n                    ipv4s: [{\n                        value: \"10.97.64.91\",\n                    }],\n                },\n            }],\n        }],\n        nameServers: [\n            {\n                ipv4s: [{\n                    value: \"10.40.64.16\",\n                }],\n            },\n            {\n                ipv4s: [{\n                    value: \"10.40.64.15\",\n                }],\n            },\n        ],\n        ntpServers: [\n            {\n                fqdns: [{\n                    value: \"2.centos.pool.ntp.org\",\n                }],\n            },\n            {\n                fqdns: [{\n                    value: \"3.centos.pool.ntp.org\",\n                }],\n            },\n        ],\n    },\n});\n```\n```python\nimport pulumi\nimport pulumi_nutanix as nutanix\n\nexample = nutanix.PcDeployV2(\"example\",\n    config={\n        \"build_info\": {\n            \"version\": \"pc.2024.3\",\n        },\n        \"size\": \"STARTER\",\n        \"name\": \"PC_EXAMPLE\",\n    },\n    network={\n        \"external_networks\": [{\n            \"network_ext_id\": \"ba416f8d-00f2-499d-bc4c-19da8d104af9\",\n            \"default_gateway\": {\n                \"ipv4s\": [{\n                    \"value\": \"10.97.64.1\",\n                }],\n            },\n            \"subnet_mask\": {\n                \"ipv4s\": [{\n                    \"value\": \"255.255.252.0\",\n                }],\n            },\n            \"ip_ranges\": [{\n                \"begin\": {\n                    \"ipv4s\": [{\n                        \"value\": \"10.97.64.91\",\n                    }],\n                },\n                \"end\": {\n                    \"ipv4s\": [{\n                        \"value\": \"10.97.64.91\",\n                    }],\n                },\n            }],\n        }],\n        \"name_servers\": [\n            {\n                \"ipv4s\": [{\n                    \"value\": \"10.40.64.16\",\n                }],\n            },\n            {\n                \"ipv4s\": [{\n                    \"value\": \"10.40.64.15\",\n                }],\n            },\n        ],\n        \"ntp_servers\": [\n            {\n                \"fqdns\": [{\n                    \"value\": \"2.centos.pool.ntp.org\",\n                }],\n            },\n            {\n                \"fqdns\": [{\n                    \"value\": \"3.centos.pool.ntp.org\",\n                }],\n            },\n        ],\n    })\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Nutanix = PiersKarsenbarg.Nutanix;\n\nreturn await Deployment.RunAsync(() => \n{\n    var example = new Nutanix.PcDeployV2(\"example\", new()\n    {\n        Config = new Nutanix.Inputs.PcDeployV2ConfigArgs\n        {\n            BuildInfo = new Nutanix.Inputs.PcDeployV2ConfigBuildInfoArgs\n            {\n                Version = \"pc.2024.3\",\n            },\n            Size = \"STARTER\",\n            Name = \"PC_EXAMPLE\",\n        },\n        Network = new Nutanix.Inputs.PcDeployV2NetworkArgs\n        {\n            ExternalNetworks = new[]\n            {\n                new Nutanix.Inputs.PcDeployV2NetworkExternalNetworkArgs\n                {\n                    NetworkExtId = \"ba416f8d-00f2-499d-bc4c-19da8d104af9\",\n                    DefaultGateway = new Nutanix.Inputs.PcDeployV2NetworkExternalNetworkDefaultGatewayArgs\n                    {\n                        Ipv4s = new[]\n                        {\n                            new Nutanix.Inputs.PcDeployV2NetworkExternalNetworkDefaultGatewayIpv4Args\n                            {\n                                Value = \"10.97.64.1\",\n                            },\n                        },\n                    },\n                    SubnetMask = new Nutanix.Inputs.PcDeployV2NetworkExternalNetworkSubnetMaskArgs\n                    {\n                        Ipv4s = new[]\n                        {\n                            new Nutanix.Inputs.PcDeployV2NetworkExternalNetworkSubnetMaskIpv4Args\n                            {\n                                Value = \"255.255.252.0\",\n                            },\n                        },\n                    },\n                    IpRanges = new[]\n                    {\n                        new Nutanix.Inputs.PcDeployV2NetworkExternalNetworkIpRangeArgs\n                        {\n                            Begin = new Nutanix.Inputs.PcDeployV2NetworkExternalNetworkIpRangeBeginArgs\n                            {\n                                Ipv4s = new[]\n                                {\n                                    new Nutanix.Inputs.PcDeployV2NetworkExternalNetworkIpRangeBeginIpv4Args\n                                    {\n                                        Value = \"10.97.64.91\",\n                                    },\n                                },\n                            },\n                            End = new Nutanix.Inputs.PcDeployV2NetworkExternalNetworkIpRangeEndArgs\n                            {\n                                Ipv4s = new[]\n                                {\n                                    new Nutanix.Inputs.PcDeployV2NetworkExternalNetworkIpRangeEndIpv4Args\n                                    {\n                                        Value = \"10.97.64.91\",\n                                    },\n                                },\n                            },\n                        },\n                    },\n                },\n            },\n            NameServers = new[]\n            {\n                new Nutanix.Inputs.PcDeployV2NetworkNameServerArgs\n                {\n                    Ipv4s = new[]\n                    {\n                        new Nutanix.Inputs.PcDeployV2NetworkNameServerIpv4Args\n                        {\n                            Value = \"10.40.64.16\",\n                        },\n                    },\n                },\n                new Nutanix.Inputs.PcDeployV2NetworkNameServerArgs\n                {\n                    Ipv4s = new[]\n                    {\n                        new Nutanix.Inputs.PcDeployV2NetworkNameServerIpv4Args\n                        {\n                            Value = \"10.40.64.15\",\n                        },\n                    },\n                },\n            },\n            NtpServers = new[]\n            {\n                new Nutanix.Inputs.PcDeployV2NetworkNtpServerArgs\n                {\n                    Fqdns = new[]\n                    {\n                        new Nutanix.Inputs.PcDeployV2NetworkNtpServerFqdnArgs\n                        {\n                            Value = \"2.centos.pool.ntp.org\",\n                        },\n                    },\n                },\n                new Nutanix.Inputs.PcDeployV2NetworkNtpServerArgs\n                {\n                    Fqdns = new[]\n                    {\n                        new Nutanix.Inputs.PcDeployV2NetworkNtpServerFqdnArgs\n                        {\n                            Value = \"3.centos.pool.ntp.org\",\n                        },\n                    },\n                },\n            },\n        },\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pierskarsenbarg/pulumi-nutanix/sdk/go/nutanix\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := nutanix.NewPcDeployV2(ctx, \"example\", &nutanix.PcDeployV2Args{\n\t\t\tConfig: &nutanix.PcDeployV2ConfigArgs{\n\t\t\t\tBuildInfo: &nutanix.PcDeployV2ConfigBuildInfoArgs{\n\t\t\t\t\tVersion: pulumi.String(\"pc.2024.3\"),\n\t\t\t\t},\n\t\t\t\tSize: pulumi.String(\"STARTER\"),\n\t\t\t\tName: pulumi.String(\"PC_EXAMPLE\"),\n\t\t\t},\n\t\t\tNetwork: &nutanix.PcDeployV2NetworkArgs{\n\t\t\t\tExternalNetworks: nutanix.PcDeployV2NetworkExternalNetworkArray{\n\t\t\t\t\t&nutanix.PcDeployV2NetworkExternalNetworkArgs{\n\t\t\t\t\t\tNetworkExtId: pulumi.String(\"ba416f8d-00f2-499d-bc4c-19da8d104af9\"),\n\t\t\t\t\t\tDefaultGateway: &nutanix.PcDeployV2NetworkExternalNetworkDefaultGatewayArgs{\n\t\t\t\t\t\t\tIpv4s: nutanix.PcDeployV2NetworkExternalNetworkDefaultGatewayIpv4Array{\n\t\t\t\t\t\t\t\t&nutanix.PcDeployV2NetworkExternalNetworkDefaultGatewayIpv4Args{\n\t\t\t\t\t\t\t\t\tValue: pulumi.String(\"10.97.64.1\"),\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t},\n\t\t\t\t\t\tSubnetMask: &nutanix.PcDeployV2NetworkExternalNetworkSubnetMaskArgs{\n\t\t\t\t\t\t\tIpv4s: nutanix.PcDeployV2NetworkExternalNetworkSubnetMaskIpv4Array{\n\t\t\t\t\t\t\t\t&nutanix.PcDeployV2NetworkExternalNetworkSubnetMaskIpv4Args{\n\t\t\t\t\t\t\t\t\tValue: pulumi.String(\"255.255.252.0\"),\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t},\n\t\t\t\t\t\tIpRanges: nutanix.PcDeployV2NetworkExternalNetworkIpRangeArray{\n\t\t\t\t\t\t\t&nutanix.PcDeployV2NetworkExternalNetworkIpRangeArgs{\n\t\t\t\t\t\t\t\tBegin: &nutanix.PcDeployV2NetworkExternalNetworkIpRangeBeginArgs{\n\t\t\t\t\t\t\t\t\tIpv4s: nutanix.PcDeployV2NetworkExternalNetworkIpRangeBeginIpv4Array{\n\t\t\t\t\t\t\t\t\t\t&nutanix.PcDeployV2NetworkExternalNetworkIpRangeBeginIpv4Args{\n\t\t\t\t\t\t\t\t\t\t\tValue: pulumi.String(\"10.97.64.91\"),\n\t\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\tEnd: &nutanix.PcDeployV2NetworkExternalNetworkIpRangeEndArgs{\n\t\t\t\t\t\t\t\t\tIpv4s: nutanix.PcDeployV2NetworkExternalNetworkIpRangeEndIpv4Array{\n\t\t\t\t\t\t\t\t\t\t&nutanix.PcDeployV2NetworkExternalNetworkIpRangeEndIpv4Args{\n\t\t\t\t\t\t\t\t\t\t\tValue: pulumi.String(\"10.97.64.91\"),\n\t\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\tNameServers: nutanix.PcDeployV2NetworkNameServerArray{\n\t\t\t\t\t&nutanix.PcDeployV2NetworkNameServerArgs{\n\t\t\t\t\t\tIpv4s: nutanix.PcDeployV2NetworkNameServerIpv4Array{\n\t\t\t\t\t\t\t&nutanix.PcDeployV2NetworkNameServerIpv4Args{\n\t\t\t\t\t\t\t\tValue: pulumi.String(\"10.40.64.16\"),\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t\t&nutanix.PcDeployV2NetworkNameServerArgs{\n\t\t\t\t\t\tIpv4s: nutanix.PcDeployV2NetworkNameServerIpv4Array{\n\t\t\t\t\t\t\t&nutanix.PcDeployV2NetworkNameServerIpv4Args{\n\t\t\t\t\t\t\t\tValue: pulumi.String(\"10.40.64.15\"),\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\tNtpServers: nutanix.PcDeployV2NetworkNtpServerArray{\n\t\t\t\t\t&nutanix.PcDeployV2NetworkNtpServerArgs{\n\t\t\t\t\t\tFqdns: nutanix.PcDeployV2NetworkNtpServerFqdnArray{\n\t\t\t\t\t\t\t&nutanix.PcDeployV2NetworkNtpServerFqdnArgs{\n\t\t\t\t\t\t\t\tValue: pulumi.String(\"2.centos.pool.ntp.org\"),\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t\t&nutanix.PcDeployV2NetworkNtpServerArgs{\n\t\t\t\t\t\tFqdns: nutanix.PcDeployV2NetworkNtpServerFqdnArray{\n\t\t\t\t\t\t\t&nutanix.PcDeployV2NetworkNtpServerFqdnArgs{\n\t\t\t\t\t\t\t\tValue: pulumi.String(\"3.centos.pool.ntp.org\"),\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.nutanix.PcDeployV2;\nimport com.pulumi.nutanix.PcDeployV2Args;\nimport com.pulumi.nutanix.inputs.PcDeployV2ConfigArgs;\nimport com.pulumi.nutanix.inputs.PcDeployV2ConfigBuildInfoArgs;\nimport com.pulumi.nutanix.inputs.PcDeployV2NetworkArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var example = new PcDeployV2(\"example\", PcDeployV2Args.builder()\n            .config(PcDeployV2ConfigArgs.builder()\n                .buildInfo(PcDeployV2ConfigBuildInfoArgs.builder()\n                    .version(\"pc.2024.3\")\n                    .build())\n                .size(\"STARTER\")\n                .name(\"PC_EXAMPLE\")\n                .build())\n            .network(PcDeployV2NetworkArgs.builder()\n                .externalNetworks(PcDeployV2NetworkExternalNetworkArgs.builder()\n                    .networkExtId(\"ba416f8d-00f2-499d-bc4c-19da8d104af9\")\n                    .defaultGateway(PcDeployV2NetworkExternalNetworkDefaultGatewayArgs.builder()\n                        .ipv4s(PcDeployV2NetworkExternalNetworkDefaultGatewayIpv4Args.builder()\n                            .value(\"10.97.64.1\")\n                            .build())\n                        .build())\n                    .subnetMask(PcDeployV2NetworkExternalNetworkSubnetMaskArgs.builder()\n                        .ipv4s(PcDeployV2NetworkExternalNetworkSubnetMaskIpv4Args.builder()\n                            .value(\"255.255.252.0\")\n                            .build())\n                        .build())\n                    .ipRanges(PcDeployV2NetworkExternalNetworkIpRangeArgs.builder()\n                        .begin(PcDeployV2NetworkExternalNetworkIpRangeBeginArgs.builder()\n                            .ipv4s(PcDeployV2NetworkExternalNetworkIpRangeBeginIpv4Args.builder()\n                                .value(\"10.97.64.91\")\n                                .build())\n                            .build())\n                        .end(PcDeployV2NetworkExternalNetworkIpRangeEndArgs.builder()\n                            .ipv4s(PcDeployV2NetworkExternalNetworkIpRangeEndIpv4Args.builder()\n                                .value(\"10.97.64.91\")\n                                .build())\n                            .build())\n                        .build())\n                    .build())\n                .nameServers(                \n                    PcDeployV2NetworkNameServerArgs.builder()\n                        .ipv4s(PcDeployV2NetworkNameServerIpv4Args.builder()\n                            .value(\"10.40.64.16\")\n                            .build())\n                        .build(),\n                    PcDeployV2NetworkNameServerArgs.builder()\n                        .ipv4s(PcDeployV2NetworkNameServerIpv4Args.builder()\n                            .value(\"10.40.64.15\")\n                            .build())\n                        .build())\n                .ntpServers(                \n                    PcDeployV2NetworkNtpServerArgs.builder()\n                        .fqdns(PcDeployV2NetworkNtpServerFqdnArgs.builder()\n                            .value(\"2.centos.pool.ntp.org\")\n                            .build())\n                        .build(),\n                    PcDeployV2NetworkNtpServerArgs.builder()\n                        .fqdns(PcDeployV2NetworkNtpServerFqdnArgs.builder()\n                            .value(\"3.centos.pool.ntp.org\")\n                            .build())\n                        .build())\n                .build())\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  example:\n    type: nutanix:PcDeployV2\n    properties:\n      config:\n        buildInfo:\n          version: pc.2024.3\n        size: STARTER\n        name: PC_EXAMPLE\n      network:\n        externalNetworks:\n          - networkExtId: ba416f8d-00f2-499d-bc4c-19da8d104af9\n            defaultGateway:\n              ipv4s:\n                - value: 10.97.64.1\n            subnetMask:\n              ipv4s:\n                - value: 255.255.252.0\n            ipRanges:\n              - begin:\n                  ipv4s:\n                    - value: 10.97.64.91\n                end:\n                  ipv4s:\n                    - value: 10.97.64.91\n        nameServers:\n          - ipv4s:\n              - value: 10.40.64.16\n          - ipv4s:\n              - value: 10.40.64.15\n        ntpServers:\n          - fqdns:\n              - value: 2.centos.pool.ntp.org\n          - fqdns:\n              - value: 3.centos.pool.ntp.org\n```\n<!--End PulumiCodeChooser -->\n",
      "properties": {
        "config": {
          "$ref": "#/types/nutanix:index%2FPcDeployV2Config:PcDeployV2Config",
          "description": "-(Required) Domain manager (Prism Central) cluster configuration details.\n"
        },
        "network": {
          "$ref": "#/types/nutanix:index%2FPcDeployV2Network:PcDeployV2Network",
          "description": "-(Required) Domain manager (Prism Central) network configuration details.\n"
        },
        "shouldEnableHighAvailability": {
          "type": "boolean",
          "description": "-(Optional) This configuration enables Prism Central to be deployed in scale-out mode. Default is <span pulumi-lang-nodejs=\"`false`\" pulumi-lang-dotnet=\"`False`\" pulumi-lang-go=\"`false`\" pulumi-lang-python=\"`false`\" pulumi-lang-yaml=\"`false`\" pulumi-lang-java=\"`false`\">`false`</span>.\n"
        }
      },
      "type": "object",
      "required": [
        "config",
        "network"
      ],
      "inputProperties": {
        "config": {
          "$ref": "#/types/nutanix:index%2FPcDeployV2Config:PcDeployV2Config",
          "description": "-(Required) Domain manager (Prism Central) cluster configuration details.\n"
        },
        "network": {
          "$ref": "#/types/nutanix:index%2FPcDeployV2Network:PcDeployV2Network",
          "description": "-(Required) Domain manager (Prism Central) network configuration details.\n"
        },
        "shouldEnableHighAvailability": {
          "type": "boolean",
          "description": "-(Optional) This configuration enables Prism Central to be deployed in scale-out mode. Default is <span pulumi-lang-nodejs=\"`false`\" pulumi-lang-dotnet=\"`False`\" pulumi-lang-go=\"`false`\" pulumi-lang-python=\"`false`\" pulumi-lang-yaml=\"`false`\" pulumi-lang-java=\"`false`\">`false`</span>.\n"
        }
      },
      "requiredInputs": [
        "config",
        "network"
      ],
      "stateInputs": {
        "description": "Input properties used for looking up and filtering PcDeployV2 resources.\n",
        "properties": {
          "config": {
            "$ref": "#/types/nutanix:index%2FPcDeployV2Config:PcDeployV2Config",
            "description": "-(Required) Domain manager (Prism Central) cluster configuration details.\n"
          },
          "network": {
            "$ref": "#/types/nutanix:index%2FPcDeployV2Network:PcDeployV2Network",
            "description": "-(Required) Domain manager (Prism Central) network configuration details.\n"
          },
          "shouldEnableHighAvailability": {
            "type": "boolean",
            "description": "-(Optional) This configuration enables Prism Central to be deployed in scale-out mode. Default is <span pulumi-lang-nodejs=\"`false`\" pulumi-lang-dotnet=\"`False`\" pulumi-lang-go=\"`false`\" pulumi-lang-python=\"`false`\" pulumi-lang-yaml=\"`false`\" pulumi-lang-java=\"`false`\">`false`</span>.\n"
          }
        },
        "type": "object"
      }
    },
    "nutanix:index/pcRegistrationV2:PcRegistrationV2": {
      "description": "Provides a resource to Registers a domain manager (Prism Central) instance to other entities like PE and PC. This process is asynchronous, creating a registration task and returning its UUID.\n\n\n",
      "properties": {
        "configs": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FPcRegistrationV2Config:PcRegistrationV2Config"
          }
        },
        "extId": {
          "type": "string"
        },
        "hostingClusterExtId": {
          "type": "string"
        },
        "isRegisteredWithHostingCluster": {
          "type": "boolean"
        },
        "links": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FPcRegistrationV2Link:PcRegistrationV2Link"
          }
        },
        "networks": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FPcRegistrationV2Network:PcRegistrationV2Network"
          }
        },
        "nodeExtIds": {
          "type": "array",
          "items": {
            "type": "string"
          }
        },
        "pcExtId": {
          "type": "string",
          "description": "-(Required) The display name for the Role.\n"
        },
        "remoteCluster": {
          "$ref": "#/types/nutanix:index%2FPcRegistrationV2RemoteCluster:PcRegistrationV2RemoteCluster",
          "description": "-(Required)  The registration request consists of the remote cluster details. Credentials must be of domain manager (Prism Central) role.\nThe remote cluster details are different based on the object type. The object type is used to determine the type of remote cluster. The object type can be one of the following:\n* `prism.v4.management.DomainManagerRemoteClusterSpec`\n* `prism.v4.management.AOSRemoteClusterSpec`\n* `prism.v4.management.ClusterReference`\n"
        },
        "shouldEnableHighAvailability": {
          "type": "boolean"
        },
        "tenantId": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "configs",
        "extId",
        "hostingClusterExtId",
        "isRegisteredWithHostingCluster",
        "links",
        "networks",
        "nodeExtIds",
        "pcExtId",
        "remoteCluster",
        "shouldEnableHighAvailability",
        "tenantId"
      ],
      "inputProperties": {
        "pcExtId": {
          "type": "string",
          "description": "-(Required) The display name for the Role.\n"
        },
        "remoteCluster": {
          "$ref": "#/types/nutanix:index%2FPcRegistrationV2RemoteCluster:PcRegistrationV2RemoteCluster",
          "description": "-(Required)  The registration request consists of the remote cluster details. Credentials must be of domain manager (Prism Central) role.\nThe remote cluster details are different based on the object type. The object type is used to determine the type of remote cluster. The object type can be one of the following:\n* `prism.v4.management.DomainManagerRemoteClusterSpec`\n* `prism.v4.management.AOSRemoteClusterSpec`\n* `prism.v4.management.ClusterReference`\n"
        }
      },
      "requiredInputs": [
        "pcExtId",
        "remoteCluster"
      ],
      "stateInputs": {
        "description": "Input properties used for looking up and filtering PcRegistrationV2 resources.\n",
        "properties": {
          "configs": {
            "type": "array",
            "items": {
              "$ref": "#/types/nutanix:index%2FPcRegistrationV2Config:PcRegistrationV2Config"
            }
          },
          "extId": {
            "type": "string"
          },
          "hostingClusterExtId": {
            "type": "string"
          },
          "isRegisteredWithHostingCluster": {
            "type": "boolean"
          },
          "links": {
            "type": "array",
            "items": {
              "$ref": "#/types/nutanix:index%2FPcRegistrationV2Link:PcRegistrationV2Link"
            }
          },
          "networks": {
            "type": "array",
            "items": {
              "$ref": "#/types/nutanix:index%2FPcRegistrationV2Network:PcRegistrationV2Network"
            }
          },
          "nodeExtIds": {
            "type": "array",
            "items": {
              "type": "string"
            }
          },
          "pcExtId": {
            "type": "string",
            "description": "-(Required) The display name for the Role.\n"
          },
          "remoteCluster": {
            "$ref": "#/types/nutanix:index%2FPcRegistrationV2RemoteCluster:PcRegistrationV2RemoteCluster",
            "description": "-(Required)  The registration request consists of the remote cluster details. Credentials must be of domain manager (Prism Central) role.\nThe remote cluster details are different based on the object type. The object type is used to determine the type of remote cluster. The object type can be one of the following:\n* `prism.v4.management.DomainManagerRemoteClusterSpec`\n* `prism.v4.management.AOSRemoteClusterSpec`\n* `prism.v4.management.ClusterReference`\n"
          },
          "shouldEnableHighAvailability": {
            "type": "boolean"
          },
          "tenantId": {
            "type": "string"
          }
        },
        "type": "object"
      }
    },
    "nutanix:index/pcRestoreSourceV2:PcRestoreSourceV2": {
      "description": "> The restore source is auto-deleted after sometime,<span pulumi-lang-nodejs=\" nutanix.PcRestoreSourceV2 \" pulumi-lang-dotnet=\" nutanix.PcRestoreSourceV2 \" pulumi-lang-go=\" PcRestoreSourceV2 \" pulumi-lang-python=\" PcRestoreSourceV2 \" pulumi-lang-yaml=\" nutanix.PcRestoreSourceV2 \" pulumi-lang-java=\" nutanix.PcRestoreSourceV2 \"> nutanix.PcRestoreSourceV2 </span>resource is auto-create new restore source if it was deleted, so notice that the id of the restore source resource will be different after recreation. and for update restore source, it will create a new restore source with the new configuration\n\nCreate a restore source pointing to a cluster or object store to restore the domain manager. The created restore source is intended to be deleted after use. If the restore source is not deleted using the deleteRestoreSource API, then it is auto-deleted after sometime. Also note that a restore source will not contain a backup policy. It is only used to access the backup data at the location from where the Prism Central may be restored. Credentials used to access the restore source are not validated at the time of creation of the restore source. They are validated when the restore source is used to fetch data.\n\n\n## Example Usage\n\n### Cluster Location\n\n<!--Start PulumiCodeChooser -->\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as nutanix from \"@pierskarsenbarg/nutanix\";\n\n// restore source is auto-deleted after sometime, nutanix_pc_restore_source_v2 resource is auto-create\n// new restore source if it was deleted, so notice that the id of the restore source will be different\n// after recreation\nconst cluster_location = new nutanix.PcRestoreSourceV2(\"cluster-location\", {location: {\n    clusterLocations: [{\n        configs: [{\n            extId: \"323860ca-bd10-411e-9fe0-1430b62eaf45\",\n        }],\n    }],\n}});\n```\n```python\nimport pulumi\nimport pulumi_nutanix as nutanix\n\n# restore source is auto-deleted after sometime, nutanix_pc_restore_source_v2 resource is auto-create\n# new restore source if it was deleted, so notice that the id of the restore source will be different\n# after recreation\ncluster_location = nutanix.PcRestoreSourceV2(\"cluster-location\", location={\n    \"cluster_locations\": [{\n        \"configs\": [{\n            \"ext_id\": \"323860ca-bd10-411e-9fe0-1430b62eaf45\",\n        }],\n    }],\n})\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Nutanix = PiersKarsenbarg.Nutanix;\n\nreturn await Deployment.RunAsync(() => \n{\n    // restore source is auto-deleted after sometime, nutanix_pc_restore_source_v2 resource is auto-create\n    // new restore source if it was deleted, so notice that the id of the restore source will be different\n    // after recreation\n    var cluster_location = new Nutanix.PcRestoreSourceV2(\"cluster-location\", new()\n    {\n        Location = new Nutanix.Inputs.PcRestoreSourceV2LocationArgs\n        {\n            ClusterLocations = new[]\n            {\n                new Nutanix.Inputs.PcRestoreSourceV2LocationClusterLocationArgs\n                {\n                    Configs = new[]\n                    {\n                        new Nutanix.Inputs.PcRestoreSourceV2LocationClusterLocationConfigArgs\n                        {\n                            ExtId = \"323860ca-bd10-411e-9fe0-1430b62eaf45\",\n                        },\n                    },\n                },\n            },\n        },\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pierskarsenbarg/pulumi-nutanix/sdk/go/nutanix\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t// restore source is auto-deleted after sometime, nutanix_pc_restore_source_v2 resource is auto-create\n\t\t// new restore source if it was deleted, so notice that the id of the restore source will be different\n\t\t// after recreation\n\t\t_, err := nutanix.NewPcRestoreSourceV2(ctx, \"cluster-location\", &nutanix.PcRestoreSourceV2Args{\n\t\t\tLocation: &nutanix.PcRestoreSourceV2LocationArgs{\n\t\t\t\tClusterLocations: nutanix.PcRestoreSourceV2LocationClusterLocationArray{\n\t\t\t\t\t&nutanix.PcRestoreSourceV2LocationClusterLocationArgs{\n\t\t\t\t\t\tConfigs: nutanix.PcRestoreSourceV2LocationClusterLocationConfigArray{\n\t\t\t\t\t\t\t&nutanix.PcRestoreSourceV2LocationClusterLocationConfigArgs{\n\t\t\t\t\t\t\t\tExtId: pulumi.String(\"323860ca-bd10-411e-9fe0-1430b62eaf45\"),\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.nutanix.PcRestoreSourceV2;\nimport com.pulumi.nutanix.PcRestoreSourceV2Args;\nimport com.pulumi.nutanix.inputs.PcRestoreSourceV2LocationArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        // restore source is auto-deleted after sometime, nutanix_pc_restore_source_v2 resource is auto-create\n        // new restore source if it was deleted, so notice that the id of the restore source will be different\n        // after recreation\n        var cluster_location = new PcRestoreSourceV2(\"cluster-location\", PcRestoreSourceV2Args.builder()\n            .location(PcRestoreSourceV2LocationArgs.builder()\n                .clusterLocations(PcRestoreSourceV2LocationClusterLocationArgs.builder()\n                    .configs(PcRestoreSourceV2LocationClusterLocationConfigArgs.builder()\n                        .extId(\"323860ca-bd10-411e-9fe0-1430b62eaf45\")\n                        .build())\n                    .build())\n                .build())\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  # restore source is auto-deleted after sometime, nutanix_pc_restore_source_v2 resource is auto-create\n  # new restore source if it was deleted, so notice that the id of the restore source will be different\n  # after recreation\n  cluster-location:\n    type: nutanix:PcRestoreSourceV2\n    properties:\n      location:\n        clusterLocations:\n          - configs:\n              - extId: 323860ca-bd10-411e-9fe0-1430b62eaf45\n```\n<!--End PulumiCodeChooser -->\n\n### Object Store Location\n\n<!--Start PulumiCodeChooser -->\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as nutanix from \"@pierskarsenbarg/nutanix\";\n\n// using object store location\nconst object_store_location = new nutanix.PcRestoreSourceV2(\"object-store-location\", {location: {\n    objectStoreLocations: [{\n        providerConfigs: [{\n            bucketName: \"nutanix-terraform-bucket\",\n            region: \"us-west-1\",\n            credentials: {\n                accessKeyId: \"IHSAJHDHADFWYTKJHFGCJKHASGJHKDSA\",\n                secretAccessKey: \"JGSDHJYHGFHGHDS+JKBASDF/HSDAFHJ+SjkfbdsASDfdJFdSDFJfk\",\n            },\n        }],\n        backupPolicies: [{\n            rpoInMinutes: 120,\n        }],\n    }],\n}});\n```\n```python\nimport pulumi\nimport pulumi_nutanix as nutanix\n\n# using object store location\nobject_store_location = nutanix.PcRestoreSourceV2(\"object-store-location\", location={\n    \"object_store_locations\": [{\n        \"provider_configs\": [{\n            \"bucket_name\": \"nutanix-terraform-bucket\",\n            \"region\": \"us-west-1\",\n            \"credentials\": {\n                \"access_key_id\": \"IHSAJHDHADFWYTKJHFGCJKHASGJHKDSA\",\n                \"secret_access_key\": \"JGSDHJYHGFHGHDS+JKBASDF/HSDAFHJ+SjkfbdsASDfdJFdSDFJfk\",\n            },\n        }],\n        \"backup_policies\": [{\n            \"rpo_in_minutes\": 120,\n        }],\n    }],\n})\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Nutanix = PiersKarsenbarg.Nutanix;\n\nreturn await Deployment.RunAsync(() => \n{\n    // using object store location\n    var object_store_location = new Nutanix.PcRestoreSourceV2(\"object-store-location\", new()\n    {\n        Location = new Nutanix.Inputs.PcRestoreSourceV2LocationArgs\n        {\n            ObjectStoreLocations = new[]\n            {\n                new Nutanix.Inputs.PcRestoreSourceV2LocationObjectStoreLocationArgs\n                {\n                    ProviderConfigs = new[]\n                    {\n                        new Nutanix.Inputs.PcRestoreSourceV2LocationObjectStoreLocationProviderConfigArgs\n                        {\n                            BucketName = \"nutanix-terraform-bucket\",\n                            Region = \"us-west-1\",\n                            Credentials = new Nutanix.Inputs.PcRestoreSourceV2LocationObjectStoreLocationProviderConfigCredentialsArgs\n                            {\n                                AccessKeyId = \"IHSAJHDHADFWYTKJHFGCJKHASGJHKDSA\",\n                                SecretAccessKey = \"JGSDHJYHGFHGHDS+JKBASDF/HSDAFHJ+SjkfbdsASDfdJFdSDFJfk\",\n                            },\n                        },\n                    },\n                    BackupPolicies = new[]\n                    {\n                        new Nutanix.Inputs.PcRestoreSourceV2LocationObjectStoreLocationBackupPolicyArgs\n                        {\n                            RpoInMinutes = 120,\n                        },\n                    },\n                },\n            },\n        },\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pierskarsenbarg/pulumi-nutanix/sdk/go/nutanix\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t// using object store location\n\t\t_, err := nutanix.NewPcRestoreSourceV2(ctx, \"object-store-location\", &nutanix.PcRestoreSourceV2Args{\n\t\t\tLocation: &nutanix.PcRestoreSourceV2LocationArgs{\n\t\t\t\tObjectStoreLocations: nutanix.PcRestoreSourceV2LocationObjectStoreLocationArray{\n\t\t\t\t\t&nutanix.PcRestoreSourceV2LocationObjectStoreLocationArgs{\n\t\t\t\t\t\tProviderConfigs: nutanix.PcRestoreSourceV2LocationObjectStoreLocationProviderConfigArray{\n\t\t\t\t\t\t\t&nutanix.PcRestoreSourceV2LocationObjectStoreLocationProviderConfigArgs{\n\t\t\t\t\t\t\t\tBucketName: pulumi.String(\"nutanix-terraform-bucket\"),\n\t\t\t\t\t\t\t\tRegion:     pulumi.String(\"us-west-1\"),\n\t\t\t\t\t\t\t\tCredentials: &nutanix.PcRestoreSourceV2LocationObjectStoreLocationProviderConfigCredentialsArgs{\n\t\t\t\t\t\t\t\t\tAccessKeyId:     pulumi.String(\"IHSAJHDHADFWYTKJHFGCJKHASGJHKDSA\"),\n\t\t\t\t\t\t\t\t\tSecretAccessKey: pulumi.String(\"JGSDHJYHGFHGHDS+JKBASDF/HSDAFHJ+SjkfbdsASDfdJFdSDFJfk\"),\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t},\n\t\t\t\t\t\tBackupPolicies: nutanix.PcRestoreSourceV2LocationObjectStoreLocationBackupPolicyArray{\n\t\t\t\t\t\t\t&nutanix.PcRestoreSourceV2LocationObjectStoreLocationBackupPolicyArgs{\n\t\t\t\t\t\t\t\tRpoInMinutes: pulumi.Int(120),\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.nutanix.PcRestoreSourceV2;\nimport com.pulumi.nutanix.PcRestoreSourceV2Args;\nimport com.pulumi.nutanix.inputs.PcRestoreSourceV2LocationArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        // using object store location\n        var object_store_location = new PcRestoreSourceV2(\"object-store-location\", PcRestoreSourceV2Args.builder()\n            .location(PcRestoreSourceV2LocationArgs.builder()\n                .objectStoreLocations(PcRestoreSourceV2LocationObjectStoreLocationArgs.builder()\n                    .providerConfigs(PcRestoreSourceV2LocationObjectStoreLocationProviderConfigArgs.builder()\n                        .bucketName(\"nutanix-terraform-bucket\")\n                        .region(\"us-west-1\")\n                        .credentials(PcRestoreSourceV2LocationObjectStoreLocationProviderConfigCredentialsArgs.builder()\n                            .accessKeyId(\"IHSAJHDHADFWYTKJHFGCJKHASGJHKDSA\")\n                            .secretAccessKey(\"JGSDHJYHGFHGHDS+JKBASDF/HSDAFHJ+SjkfbdsASDfdJFdSDFJfk\")\n                            .build())\n                        .build())\n                    .backupPolicies(PcRestoreSourceV2LocationObjectStoreLocationBackupPolicyArgs.builder()\n                        .rpoInMinutes(120)\n                        .build())\n                    .build())\n                .build())\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  # using object store location\n  object-store-location:\n    type: nutanix:PcRestoreSourceV2\n    properties:\n      location:\n        objectStoreLocations:\n          - providerConfigs:\n              - bucketName: nutanix-terraform-bucket\n                region: us-west-1\n                credentials:\n                  accessKeyId: IHSAJHDHADFWYTKJHFGCJKHASGJHKDSA\n                  secretAccessKey: JGSDHJYHGFHGHDS+JKBASDF/HSDAFHJ+SjkfbdsASDfdJFdSDFJfk\n            backupPolicies:\n              - rpoInMinutes: 120\n```\n<!--End PulumiCodeChooser -->\n",
      "properties": {
        "backupPauseReason": {
          "type": "string"
        },
        "extId": {
          "type": "string"
        },
        "isBackupPaused": {
          "type": "boolean"
        },
        "lastSyncTime": {
          "type": "string"
        },
        "links": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FPcRestoreSourceV2Link:PcRestoreSourceV2Link"
          }
        },
        "location": {
          "$ref": "#/types/nutanix:index%2FPcRestoreSourceV2Location:PcRestoreSourceV2Location",
          "description": "-(Required) Location of the backup target. For example, a cluster or an object store endpoint, such as AWS s3.\n"
        },
        "tenantId": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "backupPauseReason",
        "extId",
        "isBackupPaused",
        "lastSyncTime",
        "links",
        "location",
        "tenantId"
      ],
      "inputProperties": {
        "location": {
          "$ref": "#/types/nutanix:index%2FPcRestoreSourceV2Location:PcRestoreSourceV2Location",
          "description": "-(Required) Location of the backup target. For example, a cluster or an object store endpoint, such as AWS s3.\n"
        }
      },
      "requiredInputs": [
        "location"
      ],
      "stateInputs": {
        "description": "Input properties used for looking up and filtering PcRestoreSourceV2 resources.\n",
        "properties": {
          "backupPauseReason": {
            "type": "string"
          },
          "extId": {
            "type": "string"
          },
          "isBackupPaused": {
            "type": "boolean"
          },
          "lastSyncTime": {
            "type": "string"
          },
          "links": {
            "type": "array",
            "items": {
              "$ref": "#/types/nutanix:index%2FPcRestoreSourceV2Link:PcRestoreSourceV2Link"
            }
          },
          "location": {
            "$ref": "#/types/nutanix:index%2FPcRestoreSourceV2Location:PcRestoreSourceV2Location",
            "description": "-(Required) Location of the backup target. For example, a cluster or an object store endpoint, such as AWS s3.\n"
          },
          "tenantId": {
            "type": "string"
          }
        },
        "type": "object"
      }
    },
    "nutanix:index/pcRestoreV2:PcRestoreV2": {
      "description": "> - The Pc Restore V2 resource is an action-only resource that supports creating actions. The update and delete operations have no effect. To run it again, destroy and reapply the resource.\n> -  We need to increase the timeout for restoring the PC, because the restore pc takes longer than the default timeout allows for the operation to complete.\n\n\nThe restore domain manager is a task-driven operation to restore a domain manager from a cluster or object store backup location based on the selected restore point.\n\n## Example Usage\n\n<!--Start PulumiCodeChooser -->\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as command from \"@pulumi/command\";\nimport * as nutanix from \"@pierskarsenbarg/nutanix\";\n\n// Fetch Cluster Ext ID from PC\nconst clusters = nutanix.getClustersV2({});\nconst domainManagerExtId = cls.clusterEntities[0].extId;\nconst clusterExtId = clusters.then(clusters => .filter(cluster => cluster.config[0].clusterFunction[0] != \"PRISM_CENTRAL\").map(cluster => (cluster.extId))[0]);\n// Create a restore source, before make sure to get the cluster ext_id from PC and create backup target\n// wait until backup target is synced, you can check the last_sync_time from the backup target data source\nconst cluster_location = new nutanix.PcRestoreSourceV2(\"cluster-location\", {location: {\n    clusterLocations: [{\n        configs: [{\n            extId: clusterExtId,\n        }],\n    }],\n}});\nconst restorable_pcs = nutanix.getRestorablePcsV2Output({\n    restoreSourceExtId: cluster_location.extId,\n});\nconst restorablePcExtId = restorable_pcs.apply(restorable_pcs => restorable_pcs.restorablePcs?.[0]?.extId);\nconst restore_points = pulumi.all([restorablePcExtId, cluster_location.id]).apply(([restorablePcExtId, id]) => nutanix.getPcRestorePointsV2Output({\n    restorableDomainManagerExtId: restorablePcExtId,\n    restoreSourceExtId: id,\n}));\nconst restore_point = pulumi.all([cluster_location.id, restorablePcExtId, restore_points]).apply(([id, restorablePcExtId, restore_points]) => nutanix.getPcRestorePointV2Output({\n    restoreSourceExtId: id,\n    restorableDomainManagerExtId: restorablePcExtId,\n    extId: restore_points.restorePoints?.[0]?.extId,\n}));\nconst restorePoint = restore_point;\n// define the restore pc resource\n// you can get these values from the data source nutanix_pc_v2, this data source is on PC provider\nconst test = new nutanix.PcRestoreV2(\"test\", {\n    extId: restorePoint.apply(restorePoint => restorePoint.extId),\n    restoreSourceExtId: cluster_location.id,\n    restorableDomainManagerExtId: restorablePcExtId,\n    domainManager: {\n        networks: [{\n            nameServers: .map(entry => ({\n                ipv4s: [{\n                    value: entry.value.ipv4[0].value,\n                }],\n            })),\n            ntpServers: .map(entry => ({\n                fqdns: [{\n                    value: entry.value.fqdn[0].value,\n                }],\n            })),\n            externalAddress: {\n                ipv4s: [{\n                    value: restorePoint.domainManager[0].network[0].externalAddress[0].ipv4[0].value,\n                }],\n            },\n            externalNetworks: [{\n                networkExtId: restorePoint.domainManager[0].network[0].externalNetworks[0].networkExtId,\n                defaultGateway: {\n                    ipv4s: [{\n                        value: restorePoint.domainManager[0].network[0].externalNetworks[0].defaultGateway[0].ipv4[0].value,\n                    }],\n                },\n                subnetMask: {\n                    ipv4s: [{\n                        value: restorePoint.domainManager[0].network[0].externalNetworks[0].subnetMask[0].ipv4[0].value,\n                    }],\n                },\n                ipRanges: [{\n                    begin: {\n                        ipv4s: [{\n                            value: restorePoint.domainManager[0].network[0].externalNetworks[0].ipRanges[0].begin[0].ipv4[0].value,\n                        }],\n                    },\n                    end: {\n                        ipv4s: [{\n                            value: restorePoint.domainManager[0].network[0].externalNetworks[0].ipRanges[0].end[0].ipv4[0].value,\n                        }],\n                    },\n                }],\n            }],\n        }],\n        configs: [{\n            shouldEnableLockdownMode: restorePoint.domainManager[0].config[0].shouldEnableLockdownMode,\n            buildInfo: {\n                version: restorePoint.domainManager[0].config[0].buildInfo[0].version,\n            },\n            name: restorePoint.domainManager[0].config[0].name,\n            size: restorePoint.domainManager[0].config[0].size,\n            resourceConfigs: [{\n                containerExtIds: restorePoint.domainManager[0].config[0].resourceConfig[0].containerExtIds,\n                dataDiskSizeBytes: restorePoint.domainManager[0].config[0].resourceConfig[0].dataDiskSizeBytes,\n                memorySizeBytes: restorePoint.domainManager[0].config[0].resourceConfig[0].memorySizeBytes,\n                numVcpus: restorePoint.domainManager[0].config[0].resourceConfig[0].numVcpus,\n            }],\n        }],\n    },\n});\nconst testProvisioner0 = new command.local.Command(\"testProvisioner0\", {create: \"sshpass -p 'nutanix/4u' ssh -o StrictHostKeyChecking=no -o UserKnownHostsFile=/dev/null nutanix@10.44.76.16 '/home/nutanix/prism/cli/ncli user reset-password user-name=admin password=o.P.5.#.s.U.Z.f ; /home/nutanix/prism/cli/ncli user reset-password user-name=admin password=n.L.9.@.P.Y ; /home/nutanix/prism/cli/ncli user reset-password user-name=admin password=g.B.1.$.U.$.2.@ ; /home/nutanix/prism/cli/ncli user reset-password user-name=admin password=r.B.7.$.V.9.W ; /home/nutanix/prism/cli/ncli user reset-password user-name=admin password=l.H.2.$.2.a.a.P ; /home/nutanix/prism/cli/ncli user reset-password user-name=admin password=q.F.4.#.u.t ; /home/nutanix/prism/cli/ncli user reset-password user-name=admin password=n.T.0.#.r ; /home/nutanix/prism/cli/ncli user reset-password user-name=admin password=s.K.0.$.w ; /home/nutanix/prism/cli/ncli user reset-password user-name=admin password=o.K.7.@.j ; /home/nutanix/prism/cli/ncli user reset-password user-name=admin password=Nutanix.123'\"}, {\n    dependsOn: [test],\n});\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Command = Pulumi.Command;\nusing Nutanix = PiersKarsenbarg.Nutanix;\nusing Nutanix = Pulumi.Nutanix;\n\nreturn await Deployment.RunAsync(() => \n{\n    // Fetch Cluster Ext ID from PC\n    var clusters = Nutanix.GetClustersV2.Invoke();\n\n    var domainManagerExtId = cls.ClusterEntities[0].ExtId;\n\n    var clusterExtId = .Where(cluster => cluster.Config[0].ClusterFunction[0] != \"PRISM_CENTRAL\").Select(cluster => \n    {\n        return cluster.ExtId;\n    }).ToList()[0];\n\n    // Create a restore source, before make sure to get the cluster ext_id from PC and create backup target\n    // wait until backup target is synced, you can check the last_sync_time from the backup target data source\n    var cluster_location = new Nutanix.PcRestoreSourceV2(\"cluster-location\", new()\n    {\n        Location = new Nutanix.Inputs.PcRestoreSourceV2LocationArgs\n        {\n            ClusterLocations = new[]\n            {\n                new Nutanix.Inputs.PcRestoreSourceV2LocationClusterLocationArgs\n                {\n                    Configs = new[]\n                    {\n                        new Nutanix.Inputs.PcRestoreSourceV2LocationClusterLocationConfigArgs\n                        {\n                            ExtId = clusterExtId,\n                        },\n                    },\n                },\n            },\n        },\n    });\n\n    var restorable_pcs = Nutanix.GetRestorablePcsV2.Invoke(new()\n    {\n        RestoreSourceExtId = cluster_location.ExtId,\n    });\n\n    var restorablePcExtId = restorable_pcs.Apply(restorable_pcs => restorable_pcs.Apply(getRestorablePcsV2Result => getRestorablePcsV2Result.RestorablePcs[0]?.ExtId));\n\n    var restore_points = Nutanix.GetPcRestorePointsV2.Invoke(new()\n    {\n        RestorableDomainManagerExtId = restorablePcExtId,\n        RestoreSourceExtId = cluster_location.Id,\n    });\n\n    var restore_point = Nutanix.GetPcRestorePointV2.Invoke(new()\n    {\n        RestoreSourceExtId = cluster_location.Id,\n        RestorableDomainManagerExtId = restorablePcExtId,\n        ExtId = restore_points.Apply(getPcRestorePointsV2Result => getPcRestorePointsV2Result.RestorePoints[0]?.ExtId),\n    });\n\n    var restorePoint = restore_point;\n\n    // define the restore pc resource\n    // you can get these values from the data source nutanix_pc_v2, this data source is on PC provider\n    var test = new Nutanix.PcRestoreV2(\"test\", new()\n    {\n        ExtId = restorePoint.Apply(restorePoint => restorePoint.ExtId),\n        RestoreSourceExtId = cluster_location.Id,\n        RestorableDomainManagerExtId = restorablePcExtId,\n        DomainManager = new Nutanix.Inputs.PcRestoreV2DomainManagerArgs\n        {\n            Networks = new[]\n            {\n                new Nutanix.Inputs.PcRestoreV2DomainManagerNetworkArgs\n                {\n                    NameServers = ,\n                    NtpServers = ,\n                    ExternalAddress = new Nutanix.Inputs.PcRestoreV2DomainManagerNetworkExternalAddressArgs\n                    {\n                        Ipv4s = new[]\n                        {\n                            new Nutanix.Inputs.PcRestoreV2DomainManagerNetworkExternalAddressIpv4Args\n                            {\n                                Value = restorePoint.Apply(restorePoint => restorePoint.DomainManager[0].Network[0].ExternalAddress[0].Ipv4[0].Value),\n                            },\n                        },\n                    },\n                    ExternalNetworks = new[]\n                    {\n                        new Nutanix.Inputs.PcRestoreV2DomainManagerNetworkExternalNetworkArgs\n                        {\n                            NetworkExtId = restorePoint.Apply(restorePoint => restorePoint.DomainManager[0].Network[0].ExternalNetworks[0].NetworkExtId),\n                            DefaultGateway = new Nutanix.Inputs.PcRestoreV2DomainManagerNetworkExternalNetworkDefaultGatewayArgs\n                            {\n                                Ipv4s = new[]\n                                {\n                                    new Nutanix.Inputs.PcRestoreV2DomainManagerNetworkExternalNetworkDefaultGatewayIpv4Args\n                                    {\n                                        Value = restorePoint.Apply(restorePoint => restorePoint.DomainManager[0].Network[0].ExternalNetworks[0].DefaultGateway[0].Ipv4[0].Value),\n                                    },\n                                },\n                            },\n                            SubnetMask = new Nutanix.Inputs.PcRestoreV2DomainManagerNetworkExternalNetworkSubnetMaskArgs\n                            {\n                                Ipv4s = new[]\n                                {\n                                    new Nutanix.Inputs.PcRestoreV2DomainManagerNetworkExternalNetworkSubnetMaskIpv4Args\n                                    {\n                                        Value = restorePoint.Apply(restorePoint => restorePoint.DomainManager[0].Network[0].ExternalNetworks[0].SubnetMask[0].Ipv4[0].Value),\n                                    },\n                                },\n                            },\n                            IpRanges = new[]\n                            {\n                                new Nutanix.Inputs.PcRestoreV2DomainManagerNetworkExternalNetworkIpRangeArgs\n                                {\n                                    Begin = new Nutanix.Inputs.PcRestoreV2DomainManagerNetworkExternalNetworkIpRangeBeginArgs\n                                    {\n                                        Ipv4s = new[]\n                                        {\n                                            new Nutanix.Inputs.PcRestoreV2DomainManagerNetworkExternalNetworkIpRangeBeginIpv4Args\n                                            {\n                                                Value = restorePoint.Apply(restorePoint => restorePoint.DomainManager[0].Network[0].ExternalNetworks[0].IpRanges[0].Begin[0].Ipv4[0].Value),\n                                            },\n                                        },\n                                    },\n                                    End = new Nutanix.Inputs.PcRestoreV2DomainManagerNetworkExternalNetworkIpRangeEndArgs\n                                    {\n                                        Ipv4s = new[]\n                                        {\n                                            new Nutanix.Inputs.PcRestoreV2DomainManagerNetworkExternalNetworkIpRangeEndIpv4Args\n                                            {\n                                                Value = restorePoint.Apply(restorePoint => restorePoint.DomainManager[0].Network[0].ExternalNetworks[0].IpRanges[0].End[0].Ipv4[0].Value),\n                                            },\n                                        },\n                                    },\n                                },\n                            },\n                        },\n                    },\n                },\n            },\n            Configs = new[]\n            {\n                new Nutanix.Inputs.PcRestoreV2DomainManagerConfigArgs\n                {\n                    ShouldEnableLockdownMode = restorePoint.Apply(restorePoint => restorePoint.DomainManager[0].Config[0].ShouldEnableLockdownMode),\n                    BuildInfo = new Nutanix.Inputs.PcRestoreV2DomainManagerConfigBuildInfoArgs\n                    {\n                        Version = restorePoint.Apply(restorePoint => restorePoint.DomainManager[0].Config[0].BuildInfo[0].Version),\n                    },\n                    Name = restorePoint.Apply(restorePoint => restorePoint.DomainManager[0].Config[0].Name),\n                    Size = restorePoint.Apply(restorePoint => restorePoint.DomainManager[0].Config[0].Size),\n                    ResourceConfigs = new[]\n                    {\n                        new Nutanix.Inputs.PcRestoreV2DomainManagerConfigResourceConfigArgs\n                        {\n                            ContainerExtIds = restorePoint.Apply(restorePoint => restorePoint.DomainManager[0].Config[0].ResourceConfig[0].ContainerExtIds),\n                            DataDiskSizeBytes = restorePoint.Apply(restorePoint => restorePoint.DomainManager[0].Config[0].ResourceConfig[0].DataDiskSizeBytes),\n                            MemorySizeBytes = restorePoint.Apply(restorePoint => restorePoint.DomainManager[0].Config[0].ResourceConfig[0].MemorySizeBytes),\n                            NumVcpus = restorePoint.Apply(restorePoint => restorePoint.DomainManager[0].Config[0].ResourceConfig[0].NumVcpus),\n                        },\n                    },\n                },\n            },\n        },\n    });\n\n    var testProvisioner0 = new Command.Local.Command(\"testProvisioner0\", new()\n    {\n        Create = \"sshpass -p 'nutanix/4u' ssh -o StrictHostKeyChecking=no -o UserKnownHostsFile=/dev/null nutanix@10.44.76.16 '/home/nutanix/prism/cli/ncli user reset-password user-name=admin password=o.P.5.#.s.U.Z.f ; /home/nutanix/prism/cli/ncli user reset-password user-name=admin password=n.L.9.@.P.Y ; /home/nutanix/prism/cli/ncli user reset-password user-name=admin password=g.B.1.$.U.$.2.@ ; /home/nutanix/prism/cli/ncli user reset-password user-name=admin password=r.B.7.$.V.9.W ; /home/nutanix/prism/cli/ncli user reset-password user-name=admin password=l.H.2.$.2.a.a.P ; /home/nutanix/prism/cli/ncli user reset-password user-name=admin password=q.F.4.#.u.t ; /home/nutanix/prism/cli/ncli user reset-password user-name=admin password=n.T.0.#.r ; /home/nutanix/prism/cli/ncli user reset-password user-name=admin password=s.K.0.$.w ; /home/nutanix/prism/cli/ncli user reset-password user-name=admin password=o.K.7.@.j ; /home/nutanix/prism/cli/ncli user reset-password user-name=admin password=Nutanix.123'\",\n    }, new CustomResourceOptions\n    {\n        DependsOn =\n        {\n            test,\n        },\n    });\n\n});\n```\n<!--End PulumiCodeChooser -->\n",
      "properties": {
        "domainManager": {
          "$ref": "#/types/nutanix:index%2FPcRestoreV2DomainManager:PcRestoreV2DomainManager",
          "description": "-(Required) Domain manager (Prism Central) details.\n"
        },
        "extId": {
          "type": "string",
          "description": "-(Required) Restore point ID for the backup created in cluster/object store.\n"
        },
        "restorableDomainManagerExtId": {
          "type": "string",
          "description": "-(Required) A unique identifier for the domain manager.\n"
        },
        "restoreSourceExtId": {
          "type": "string",
          "description": "-(Required) A unique identifier obtained from the restore source API that corresponds to the details provided for the restore source.\n"
        }
      },
      "type": "object",
      "required": [
        "domainManager",
        "extId",
        "restorableDomainManagerExtId",
        "restoreSourceExtId"
      ],
      "inputProperties": {
        "domainManager": {
          "$ref": "#/types/nutanix:index%2FPcRestoreV2DomainManager:PcRestoreV2DomainManager",
          "description": "-(Required) Domain manager (Prism Central) details.\n"
        },
        "extId": {
          "type": "string",
          "description": "-(Required) Restore point ID for the backup created in cluster/object store.\n"
        },
        "restorableDomainManagerExtId": {
          "type": "string",
          "description": "-(Required) A unique identifier for the domain manager.\n"
        },
        "restoreSourceExtId": {
          "type": "string",
          "description": "-(Required) A unique identifier obtained from the restore source API that corresponds to the details provided for the restore source.\n"
        }
      },
      "requiredInputs": [
        "domainManager",
        "extId",
        "restorableDomainManagerExtId",
        "restoreSourceExtId"
      ],
      "stateInputs": {
        "description": "Input properties used for looking up and filtering PcRestoreV2 resources.\n",
        "properties": {
          "domainManager": {
            "$ref": "#/types/nutanix:index%2FPcRestoreV2DomainManager:PcRestoreV2DomainManager",
            "description": "-(Required) Domain manager (Prism Central) details.\n"
          },
          "extId": {
            "type": "string",
            "description": "-(Required) Restore point ID for the backup created in cluster/object store.\n"
          },
          "restorableDomainManagerExtId": {
            "type": "string",
            "description": "-(Required) A unique identifier for the domain manager.\n"
          },
          "restoreSourceExtId": {
            "type": "string",
            "description": "-(Required) A unique identifier obtained from the restore source API that corresponds to the details provided for the restore source.\n"
          }
        },
        "type": "object"
      }
    },
    "nutanix:index/pcUnregistrationV2:PcUnregistrationV2": {
      "description": "Unregister a registered remote cluster from the local cluster. This process is asynchronous, creating an un-registration task and returning its UUID.\n\n",
      "properties": {
        "extId": {
          "type": "string",
          "description": "-(Required) Cluster UUID of a remote cluster.\n\nSee detailed information in [Nutanix PC Unregistration V4](https://developers.nutanix.com/api-reference?namespace=prism&version=v4.0#tag/DomainManager/operation/unregister).\n"
        },
        "pcExtId": {
          "type": "string",
          "description": "-(Required) The external identifier of the domain manager (Prism Central) resource\n"
        }
      },
      "type": "object",
      "required": [
        "extId",
        "pcExtId"
      ],
      "inputProperties": {
        "extId": {
          "type": "string",
          "description": "-(Required) Cluster UUID of a remote cluster.\n\nSee detailed information in [Nutanix PC Unregistration V4](https://developers.nutanix.com/api-reference?namespace=prism&version=v4.0#tag/DomainManager/operation/unregister).\n"
        },
        "pcExtId": {
          "type": "string",
          "description": "-(Required) The external identifier of the domain manager (Prism Central) resource\n"
        }
      },
      "requiredInputs": [
        "extId",
        "pcExtId"
      ],
      "stateInputs": {
        "description": "Input properties used for looking up and filtering PcUnregistrationV2 resources.\n",
        "properties": {
          "extId": {
            "type": "string",
            "description": "-(Required) Cluster UUID of a remote cluster.\n\nSee detailed information in [Nutanix PC Unregistration V4](https://developers.nutanix.com/api-reference?namespace=prism&version=v4.0#tag/DomainManager/operation/unregister).\n"
          },
          "pcExtId": {
            "type": "string",
            "description": "-(Required) The external identifier of the domain manager (Prism Central) resource\n"
          }
        },
        "type": "object"
      }
    },
    "nutanix:index/project:Project": {
      "description": "Provides a Nutanix Project resource to Create a Project.\n\n",
      "properties": {
        "accountReferenceLists": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FProjectAccountReferenceList:ProjectAccountReferenceList"
          }
        },
        "acps": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FProjectAcp:ProjectAcp"
          }
        },
        "apiVersion": {
          "type": "string"
        },
        "categories": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FProjectCategory:ProjectCategory"
          },
          "description": "- (Optional) The category values represented as a dictionary of key > list of values.\n"
        },
        "clusterReferenceLists": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FProjectClusterReferenceList:ProjectClusterReferenceList"
          }
        },
        "clusterUuid": {
          "type": "string",
          "description": "The UUID of cluster. (Required when using<span pulumi-lang-nodejs=\" projectInternal \" pulumi-lang-dotnet=\" ProjectInternal \" pulumi-lang-go=\" projectInternal \" pulumi-lang-python=\" project_internal \" pulumi-lang-yaml=\" projectInternal \" pulumi-lang-java=\" projectInternal \"> project_internal </span>flag).\n"
        },
        "defaultEnvironmentReference": {
          "$ref": "#/types/nutanix:index%2FProjectDefaultEnvironmentReference:ProjectDefaultEnvironmentReference"
        },
        "defaultSubnetReference": {
          "$ref": "#/types/nutanix:index%2FProjectDefaultSubnetReference:ProjectDefaultSubnetReference"
        },
        "description": {
          "type": "string",
          "description": "A description for project.\n"
        },
        "enableCollab": {
          "type": "boolean",
          "description": "flag to allow collaboration of projects. (Use with<span pulumi-lang-nodejs=\" projectInternal \" pulumi-lang-dotnet=\" ProjectInternal \" pulumi-lang-go=\" projectInternal \" pulumi-lang-python=\" project_internal \" pulumi-lang-yaml=\" projectInternal \" pulumi-lang-java=\" projectInternal \"> project_internal </span>flag)\n"
        },
        "environmentReferenceLists": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FProjectEnvironmentReferenceList:ProjectEnvironmentReferenceList"
          }
        },
        "externalNetworkLists": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FProjectExternalNetworkList:ProjectExternalNetworkList"
          }
        },
        "externalUserGroupReferenceLists": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FProjectExternalUserGroupReferenceList:ProjectExternalUserGroupReferenceList"
          }
        },
        "isDefault": {
          "type": "boolean"
        },
        "metadata": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          }
        },
        "name": {
          "type": "string",
          "description": "The name for the project.\n"
        },
        "ownerReference": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          }
        },
        "projectReference": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          }
        },
        "resourceDomain": {
          "$ref": "#/types/nutanix:index%2FProjectResourceDomain:ProjectResourceDomain"
        },
        "state": {
          "type": "string"
        },
        "subnetReferenceLists": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FProjectSubnetReferenceList:ProjectSubnetReferenceList"
          }
        },
        "tunnelReferenceLists": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FProjectTunnelReferenceList:ProjectTunnelReferenceList"
          }
        },
        "useProjectInternal": {
          "type": "boolean",
          "description": "flag to use project internal for user role mapping\n"
        },
        "userGroupLists": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FProjectUserGroupList:ProjectUserGroupList"
          }
        },
        "userLists": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FProjectUserList:ProjectUserList"
          }
        },
        "userReferenceLists": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FProjectUserReferenceList:ProjectUserReferenceList"
          },
          "description": "List of Reference of users.\n"
        },
        "vpcReferenceLists": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FProjectVpcReferenceList:ProjectVpcReferenceList"
          }
        }
      },
      "type": "object",
      "required": [
        "accountReferenceLists",
        "apiVersion",
        "categories",
        "clusterReferenceLists",
        "defaultEnvironmentReference",
        "defaultSubnetReference",
        "description",
        "environmentReferenceLists",
        "externalNetworkLists",
        "externalUserGroupReferenceLists",
        "isDefault",
        "metadata",
        "name",
        "ownerReference",
        "projectReference",
        "state",
        "subnetReferenceLists",
        "tunnelReferenceLists",
        "userReferenceLists",
        "vpcReferenceLists"
      ],
      "inputProperties": {
        "accountReferenceLists": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FProjectAccountReferenceList:ProjectAccountReferenceList"
          }
        },
        "acps": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FProjectAcp:ProjectAcp"
          }
        },
        "apiVersion": {
          "type": "string"
        },
        "categories": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FProjectCategory:ProjectCategory"
          },
          "description": "- (Optional) The category values represented as a dictionary of key > list of values.\n"
        },
        "clusterReferenceLists": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FProjectClusterReferenceList:ProjectClusterReferenceList"
          }
        },
        "clusterUuid": {
          "type": "string",
          "description": "The UUID of cluster. (Required when using<span pulumi-lang-nodejs=\" projectInternal \" pulumi-lang-dotnet=\" ProjectInternal \" pulumi-lang-go=\" projectInternal \" pulumi-lang-python=\" project_internal \" pulumi-lang-yaml=\" projectInternal \" pulumi-lang-java=\" projectInternal \"> project_internal </span>flag).\n"
        },
        "defaultEnvironmentReference": {
          "$ref": "#/types/nutanix:index%2FProjectDefaultEnvironmentReference:ProjectDefaultEnvironmentReference"
        },
        "defaultSubnetReference": {
          "$ref": "#/types/nutanix:index%2FProjectDefaultSubnetReference:ProjectDefaultSubnetReference"
        },
        "description": {
          "type": "string",
          "description": "A description for project.\n"
        },
        "enableCollab": {
          "type": "boolean",
          "description": "flag to allow collaboration of projects. (Use with<span pulumi-lang-nodejs=\" projectInternal \" pulumi-lang-dotnet=\" ProjectInternal \" pulumi-lang-go=\" projectInternal \" pulumi-lang-python=\" project_internal \" pulumi-lang-yaml=\" projectInternal \" pulumi-lang-java=\" projectInternal \"> project_internal </span>flag)\n"
        },
        "environmentReferenceLists": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FProjectEnvironmentReferenceList:ProjectEnvironmentReferenceList"
          }
        },
        "externalNetworkLists": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FProjectExternalNetworkList:ProjectExternalNetworkList"
          }
        },
        "externalUserGroupReferenceLists": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FProjectExternalUserGroupReferenceList:ProjectExternalUserGroupReferenceList"
          }
        },
        "name": {
          "type": "string",
          "description": "The name for the project.\n"
        },
        "ownerReference": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          }
        },
        "projectReference": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          }
        },
        "resourceDomain": {
          "$ref": "#/types/nutanix:index%2FProjectResourceDomain:ProjectResourceDomain"
        },
        "subnetReferenceLists": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FProjectSubnetReferenceList:ProjectSubnetReferenceList"
          }
        },
        "tunnelReferenceLists": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FProjectTunnelReferenceList:ProjectTunnelReferenceList"
          }
        },
        "useProjectInternal": {
          "type": "boolean",
          "description": "flag to use project internal for user role mapping\n"
        },
        "userGroupLists": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FProjectUserGroupList:ProjectUserGroupList"
          }
        },
        "userLists": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FProjectUserList:ProjectUserList"
          }
        },
        "userReferenceLists": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FProjectUserReferenceList:ProjectUserReferenceList"
          },
          "description": "List of Reference of users.\n"
        },
        "vpcReferenceLists": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FProjectVpcReferenceList:ProjectVpcReferenceList"
          }
        }
      },
      "requiredInputs": [
        "defaultSubnetReference",
        "description"
      ],
      "stateInputs": {
        "description": "Input properties used for looking up and filtering Project resources.\n",
        "properties": {
          "accountReferenceLists": {
            "type": "array",
            "items": {
              "$ref": "#/types/nutanix:index%2FProjectAccountReferenceList:ProjectAccountReferenceList"
            }
          },
          "acps": {
            "type": "array",
            "items": {
              "$ref": "#/types/nutanix:index%2FProjectAcp:ProjectAcp"
            }
          },
          "apiVersion": {
            "type": "string"
          },
          "categories": {
            "type": "array",
            "items": {
              "$ref": "#/types/nutanix:index%2FProjectCategory:ProjectCategory"
            },
            "description": "- (Optional) The category values represented as a dictionary of key > list of values.\n"
          },
          "clusterReferenceLists": {
            "type": "array",
            "items": {
              "$ref": "#/types/nutanix:index%2FProjectClusterReferenceList:ProjectClusterReferenceList"
            }
          },
          "clusterUuid": {
            "type": "string",
            "description": "The UUID of cluster. (Required when using<span pulumi-lang-nodejs=\" projectInternal \" pulumi-lang-dotnet=\" ProjectInternal \" pulumi-lang-go=\" projectInternal \" pulumi-lang-python=\" project_internal \" pulumi-lang-yaml=\" projectInternal \" pulumi-lang-java=\" projectInternal \"> project_internal </span>flag).\n"
          },
          "defaultEnvironmentReference": {
            "$ref": "#/types/nutanix:index%2FProjectDefaultEnvironmentReference:ProjectDefaultEnvironmentReference"
          },
          "defaultSubnetReference": {
            "$ref": "#/types/nutanix:index%2FProjectDefaultSubnetReference:ProjectDefaultSubnetReference"
          },
          "description": {
            "type": "string",
            "description": "A description for project.\n"
          },
          "enableCollab": {
            "type": "boolean",
            "description": "flag to allow collaboration of projects. (Use with<span pulumi-lang-nodejs=\" projectInternal \" pulumi-lang-dotnet=\" ProjectInternal \" pulumi-lang-go=\" projectInternal \" pulumi-lang-python=\" project_internal \" pulumi-lang-yaml=\" projectInternal \" pulumi-lang-java=\" projectInternal \"> project_internal </span>flag)\n"
          },
          "environmentReferenceLists": {
            "type": "array",
            "items": {
              "$ref": "#/types/nutanix:index%2FProjectEnvironmentReferenceList:ProjectEnvironmentReferenceList"
            }
          },
          "externalNetworkLists": {
            "type": "array",
            "items": {
              "$ref": "#/types/nutanix:index%2FProjectExternalNetworkList:ProjectExternalNetworkList"
            }
          },
          "externalUserGroupReferenceLists": {
            "type": "array",
            "items": {
              "$ref": "#/types/nutanix:index%2FProjectExternalUserGroupReferenceList:ProjectExternalUserGroupReferenceList"
            }
          },
          "isDefault": {
            "type": "boolean"
          },
          "metadata": {
            "type": "object",
            "additionalProperties": {
              "type": "string"
            }
          },
          "name": {
            "type": "string",
            "description": "The name for the project.\n"
          },
          "ownerReference": {
            "type": "object",
            "additionalProperties": {
              "type": "string"
            }
          },
          "projectReference": {
            "type": "object",
            "additionalProperties": {
              "type": "string"
            }
          },
          "resourceDomain": {
            "$ref": "#/types/nutanix:index%2FProjectResourceDomain:ProjectResourceDomain"
          },
          "state": {
            "type": "string"
          },
          "subnetReferenceLists": {
            "type": "array",
            "items": {
              "$ref": "#/types/nutanix:index%2FProjectSubnetReferenceList:ProjectSubnetReferenceList"
            }
          },
          "tunnelReferenceLists": {
            "type": "array",
            "items": {
              "$ref": "#/types/nutanix:index%2FProjectTunnelReferenceList:ProjectTunnelReferenceList"
            }
          },
          "useProjectInternal": {
            "type": "boolean",
            "description": "flag to use project internal for user role mapping\n"
          },
          "userGroupLists": {
            "type": "array",
            "items": {
              "$ref": "#/types/nutanix:index%2FProjectUserGroupList:ProjectUserGroupList"
            }
          },
          "userLists": {
            "type": "array",
            "items": {
              "$ref": "#/types/nutanix:index%2FProjectUserList:ProjectUserList"
            }
          },
          "userReferenceLists": {
            "type": "array",
            "items": {
              "$ref": "#/types/nutanix:index%2FProjectUserReferenceList:ProjectUserReferenceList"
            },
            "description": "List of Reference of users.\n"
          },
          "vpcReferenceLists": {
            "type": "array",
            "items": {
              "$ref": "#/types/nutanix:index%2FProjectVpcReferenceList:ProjectVpcReferenceList"
            }
          }
        },
        "type": "object"
      }
    },
    "nutanix:index/promoteProtectedResourceV2:PromoteProtectedResourceV2": {
      "description": "Promotes the specified synced entity at the target site. This is only relevant if the synced entity is protected in a synchronous schedule.\n\n\n## Example:\n\n<!--Start PulumiCodeChooser -->\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as nutanix from \"@pierskarsenbarg/nutanix\";\n\n// create a category and a protection policy on the local site\n// promote the protected virtual machine on the remote site\nconst promote_example = new nutanix.PromoteProtectedResourceV2(\"promote-example\", {extId: \"d22529bb-f02d-4710-894b-d1de772d7832\"});\n```\n```python\nimport pulumi\nimport pulumi_nutanix as nutanix\n\n# create a category and a protection policy on the local site\n# promote the protected virtual machine on the remote site\npromote_example = nutanix.PromoteProtectedResourceV2(\"promote-example\", ext_id=\"d22529bb-f02d-4710-894b-d1de772d7832\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Nutanix = PiersKarsenbarg.Nutanix;\n\nreturn await Deployment.RunAsync(() => \n{\n    // create a category and a protection policy on the local site\n    // promote the protected virtual machine on the remote site\n    var promote_example = new Nutanix.PromoteProtectedResourceV2(\"promote-example\", new()\n    {\n        ExtId = \"d22529bb-f02d-4710-894b-d1de772d7832\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pierskarsenbarg/pulumi-nutanix/sdk/go/nutanix\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t// create a category and a protection policy on the local site\n\t\t// promote the protected virtual machine on the remote site\n\t\t_, err := nutanix.NewPromoteProtectedResourceV2(ctx, \"promote-example\", &nutanix.PromoteProtectedResourceV2Args{\n\t\t\tExtId: pulumi.String(\"d22529bb-f02d-4710-894b-d1de772d7832\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.nutanix.PromoteProtectedResourceV2;\nimport com.pulumi.nutanix.PromoteProtectedResourceV2Args;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        // create a category and a protection policy on the local site\n        // promote the protected virtual machine on the remote site\n        var promote_example = new PromoteProtectedResourceV2(\"promote-example\", PromoteProtectedResourceV2Args.builder()\n            .extId(\"d22529bb-f02d-4710-894b-d1de772d7832\")\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  # create a category and a protection policy on the local site\n\n  # promote the protected virtual machine on the remote site\n  promote-example:\n    type: nutanix:PromoteProtectedResourceV2\n    properties:\n      extId: d22529bb-f02d-4710-894b-d1de772d7832\n```\n<!--End PulumiCodeChooser -->\n",
      "properties": {
        "extId": {
          "type": "string",
          "description": "-(Required) The external identifier of a protected VM or volume group that can be used to retrieve the protected resource.\n\n\nSee detailed information in [Nutanix Promote Protected Resource v4](https://developers.nutanix.com/api-reference?namespace=dataprotection&version=v4.0#tag/ProtectedResources/operation/promoteProtectedResource).\n"
        }
      },
      "type": "object",
      "required": [
        "extId"
      ],
      "inputProperties": {
        "extId": {
          "type": "string",
          "description": "-(Required) The external identifier of a protected VM or volume group that can be used to retrieve the protected resource.\n\n\nSee detailed information in [Nutanix Promote Protected Resource v4](https://developers.nutanix.com/api-reference?namespace=dataprotection&version=v4.0#tag/ProtectedResources/operation/promoteProtectedResource).\n"
        }
      },
      "requiredInputs": [
        "extId"
      ],
      "stateInputs": {
        "description": "Input properties used for looking up and filtering PromoteProtectedResourceV2 resources.\n",
        "properties": {
          "extId": {
            "type": "string",
            "description": "-(Required) The external identifier of a protected VM or volume group that can be used to retrieve the protected resource.\n\n\nSee detailed information in [Nutanix Promote Protected Resource v4](https://developers.nutanix.com/api-reference?namespace=dataprotection&version=v4.0#tag/ProtectedResources/operation/promoteProtectedResource).\n"
          }
        },
        "type": "object"
      }
    },
    "nutanix:index/protectionPolicyV2:ProtectionPolicyV2": {
      "description": "Creates a protection policy to automate the recovery point creation and replication process.\n\n\n\n## Example—Synchronous Protection Policy\n\n<!--Start PulumiCodeChooser -->\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as nutanix from \"@pierskarsenbarg/nutanix\";\n\nconst synchronous_protection_policy = new nutanix.ProtectionPolicyV2(\"synchronous-protection-policy\", {\n    name: \"synchronous_protection_policy\",\n    replicationConfigurations: [\n        {\n            sourceLocationLabel: \"source\",\n            remoteLocationLabel: \"target\",\n            schedule: {\n                recoveryPointObjectiveTimeSeconds: 0,\n                recoveryPointType: \"CRASH_CONSISTENT\",\n                syncReplicationAutoSuspendTimeoutSeconds: 10,\n            },\n        },\n        {\n            sourceLocationLabel: \"target\",\n            remoteLocationLabel: \"source\",\n            schedule: {\n                recoveryPointObjectiveTimeSeconds: 0,\n                recoveryPointType: \"CRASH_CONSISTENT\",\n                syncReplicationAutoSuspendTimeoutSeconds: 10,\n            },\n        },\n    ],\n    replicationLocations: [\n        {\n            domainManagerExtId: \"6a44b05e-cb9b-4e7e-8d75-b1b4715369c4\",\n            label: \"source\",\n            isPrimary: true,\n        },\n        {\n            domainManagerExtId: \"75dde184-3a0e-4f59-a185-03ca1efead17\",\n            label: \"target\",\n            isPrimary: false,\n        },\n    ],\n    categoryIds: [\"b08ed184-6b0c-42c1-8179-7b9026fe2676\"],\n});\n```\n```python\nimport pulumi\nimport pulumi_nutanix as nutanix\n\nsynchronous_protection_policy = nutanix.ProtectionPolicyV2(\"synchronous-protection-policy\",\n    name=\"synchronous_protection_policy\",\n    replication_configurations=[\n        {\n            \"source_location_label\": \"source\",\n            \"remote_location_label\": \"target\",\n            \"schedule\": {\n                \"recovery_point_objective_time_seconds\": 0,\n                \"recovery_point_type\": \"CRASH_CONSISTENT\",\n                \"sync_replication_auto_suspend_timeout_seconds\": 10,\n            },\n        },\n        {\n            \"source_location_label\": \"target\",\n            \"remote_location_label\": \"source\",\n            \"schedule\": {\n                \"recovery_point_objective_time_seconds\": 0,\n                \"recovery_point_type\": \"CRASH_CONSISTENT\",\n                \"sync_replication_auto_suspend_timeout_seconds\": 10,\n            },\n        },\n    ],\n    replication_locations=[\n        {\n            \"domain_manager_ext_id\": \"6a44b05e-cb9b-4e7e-8d75-b1b4715369c4\",\n            \"label\": \"source\",\n            \"is_primary\": True,\n        },\n        {\n            \"domain_manager_ext_id\": \"75dde184-3a0e-4f59-a185-03ca1efead17\",\n            \"label\": \"target\",\n            \"is_primary\": False,\n        },\n    ],\n    category_ids=[\"b08ed184-6b0c-42c1-8179-7b9026fe2676\"])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Nutanix = PiersKarsenbarg.Nutanix;\n\nreturn await Deployment.RunAsync(() => \n{\n    var synchronous_protection_policy = new Nutanix.ProtectionPolicyV2(\"synchronous-protection-policy\", new()\n    {\n        Name = \"synchronous_protection_policy\",\n        ReplicationConfigurations = new[]\n        {\n            new Nutanix.Inputs.ProtectionPolicyV2ReplicationConfigurationArgs\n            {\n                SourceLocationLabel = \"source\",\n                RemoteLocationLabel = \"target\",\n                Schedule = new Nutanix.Inputs.ProtectionPolicyV2ReplicationConfigurationScheduleArgs\n                {\n                    RecoveryPointObjectiveTimeSeconds = 0,\n                    RecoveryPointType = \"CRASH_CONSISTENT\",\n                    SyncReplicationAutoSuspendTimeoutSeconds = 10,\n                },\n            },\n            new Nutanix.Inputs.ProtectionPolicyV2ReplicationConfigurationArgs\n            {\n                SourceLocationLabel = \"target\",\n                RemoteLocationLabel = \"source\",\n                Schedule = new Nutanix.Inputs.ProtectionPolicyV2ReplicationConfigurationScheduleArgs\n                {\n                    RecoveryPointObjectiveTimeSeconds = 0,\n                    RecoveryPointType = \"CRASH_CONSISTENT\",\n                    SyncReplicationAutoSuspendTimeoutSeconds = 10,\n                },\n            },\n        },\n        ReplicationLocations = new[]\n        {\n            new Nutanix.Inputs.ProtectionPolicyV2ReplicationLocationArgs\n            {\n                DomainManagerExtId = \"6a44b05e-cb9b-4e7e-8d75-b1b4715369c4\",\n                Label = \"source\",\n                IsPrimary = true,\n            },\n            new Nutanix.Inputs.ProtectionPolicyV2ReplicationLocationArgs\n            {\n                DomainManagerExtId = \"75dde184-3a0e-4f59-a185-03ca1efead17\",\n                Label = \"target\",\n                IsPrimary = false,\n            },\n        },\n        CategoryIds = new[]\n        {\n            \"b08ed184-6b0c-42c1-8179-7b9026fe2676\",\n        },\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pierskarsenbarg/pulumi-nutanix/sdk/go/nutanix\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := nutanix.NewProtectionPolicyV2(ctx, \"synchronous-protection-policy\", &nutanix.ProtectionPolicyV2Args{\n\t\t\tName: pulumi.String(\"synchronous_protection_policy\"),\n\t\t\tReplicationConfigurations: nutanix.ProtectionPolicyV2ReplicationConfigurationArray{\n\t\t\t\t&nutanix.ProtectionPolicyV2ReplicationConfigurationArgs{\n\t\t\t\t\tSourceLocationLabel: pulumi.String(\"source\"),\n\t\t\t\t\tRemoteLocationLabel: pulumi.String(\"target\"),\n\t\t\t\t\tSchedule: &nutanix.ProtectionPolicyV2ReplicationConfigurationScheduleArgs{\n\t\t\t\t\t\tRecoveryPointObjectiveTimeSeconds:        pulumi.Int(0),\n\t\t\t\t\t\tRecoveryPointType:                        pulumi.String(\"CRASH_CONSISTENT\"),\n\t\t\t\t\t\tSyncReplicationAutoSuspendTimeoutSeconds: pulumi.Int(10),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\t&nutanix.ProtectionPolicyV2ReplicationConfigurationArgs{\n\t\t\t\t\tSourceLocationLabel: pulumi.String(\"target\"),\n\t\t\t\t\tRemoteLocationLabel: pulumi.String(\"source\"),\n\t\t\t\t\tSchedule: &nutanix.ProtectionPolicyV2ReplicationConfigurationScheduleArgs{\n\t\t\t\t\t\tRecoveryPointObjectiveTimeSeconds:        pulumi.Int(0),\n\t\t\t\t\t\tRecoveryPointType:                        pulumi.String(\"CRASH_CONSISTENT\"),\n\t\t\t\t\t\tSyncReplicationAutoSuspendTimeoutSeconds: pulumi.Int(10),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t\tReplicationLocations: nutanix.ProtectionPolicyV2ReplicationLocationArray{\n\t\t\t\t&nutanix.ProtectionPolicyV2ReplicationLocationArgs{\n\t\t\t\t\tDomainManagerExtId: pulumi.String(\"6a44b05e-cb9b-4e7e-8d75-b1b4715369c4\"),\n\t\t\t\t\tLabel:              pulumi.String(\"source\"),\n\t\t\t\t\tIsPrimary:          pulumi.Bool(true),\n\t\t\t\t},\n\t\t\t\t&nutanix.ProtectionPolicyV2ReplicationLocationArgs{\n\t\t\t\t\tDomainManagerExtId: pulumi.String(\"75dde184-3a0e-4f59-a185-03ca1efead17\"),\n\t\t\t\t\tLabel:              pulumi.String(\"target\"),\n\t\t\t\t\tIsPrimary:          pulumi.Bool(false),\n\t\t\t\t},\n\t\t\t},\n\t\t\tCategoryIds: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"b08ed184-6b0c-42c1-8179-7b9026fe2676\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.nutanix.ProtectionPolicyV2;\nimport com.pulumi.nutanix.ProtectionPolicyV2Args;\nimport com.pulumi.nutanix.inputs.ProtectionPolicyV2ReplicationConfigurationArgs;\nimport com.pulumi.nutanix.inputs.ProtectionPolicyV2ReplicationConfigurationScheduleArgs;\nimport com.pulumi.nutanix.inputs.ProtectionPolicyV2ReplicationLocationArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var synchronous_protection_policy = new ProtectionPolicyV2(\"synchronous-protection-policy\", ProtectionPolicyV2Args.builder()\n            .name(\"synchronous_protection_policy\")\n            .replicationConfigurations(            \n                ProtectionPolicyV2ReplicationConfigurationArgs.builder()\n                    .sourceLocationLabel(\"source\")\n                    .remoteLocationLabel(\"target\")\n                    .schedule(ProtectionPolicyV2ReplicationConfigurationScheduleArgs.builder()\n                        .recoveryPointObjectiveTimeSeconds(0)\n                        .recoveryPointType(\"CRASH_CONSISTENT\")\n                        .syncReplicationAutoSuspendTimeoutSeconds(10)\n                        .build())\n                    .build(),\n                ProtectionPolicyV2ReplicationConfigurationArgs.builder()\n                    .sourceLocationLabel(\"target\")\n                    .remoteLocationLabel(\"source\")\n                    .schedule(ProtectionPolicyV2ReplicationConfigurationScheduleArgs.builder()\n                        .recoveryPointObjectiveTimeSeconds(0)\n                        .recoveryPointType(\"CRASH_CONSISTENT\")\n                        .syncReplicationAutoSuspendTimeoutSeconds(10)\n                        .build())\n                    .build())\n            .replicationLocations(            \n                ProtectionPolicyV2ReplicationLocationArgs.builder()\n                    .domainManagerExtId(\"6a44b05e-cb9b-4e7e-8d75-b1b4715369c4\")\n                    .label(\"source\")\n                    .isPrimary(true)\n                    .build(),\n                ProtectionPolicyV2ReplicationLocationArgs.builder()\n                    .domainManagerExtId(\"75dde184-3a0e-4f59-a185-03ca1efead17\")\n                    .label(\"target\")\n                    .isPrimary(false)\n                    .build())\n            .categoryIds(\"b08ed184-6b0c-42c1-8179-7b9026fe2676\")\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  synchronous-protection-policy:\n    type: nutanix:ProtectionPolicyV2\n    properties:\n      name: synchronous_protection_policy\n      replicationConfigurations:\n        - sourceLocationLabel: source\n          remoteLocationLabel: target\n          schedule:\n            recoveryPointObjectiveTimeSeconds: 0\n            recoveryPointType: CRASH_CONSISTENT\n            syncReplicationAutoSuspendTimeoutSeconds: 10\n        - sourceLocationLabel: target\n          remoteLocationLabel: source\n          schedule:\n            recoveryPointObjectiveTimeSeconds: 0\n            recoveryPointType: CRASH_CONSISTENT\n            syncReplicationAutoSuspendTimeoutSeconds: 10\n      replicationLocations:\n        - domainManagerExtId: 6a44b05e-cb9b-4e7e-8d75-b1b4715369c4\n          label: source\n          isPrimary: true\n        - domainManagerExtId: 75dde184-3a0e-4f59-a185-03ca1efead17\n          label: target\n          isPrimary: false\n      categoryIds:\n        - b08ed184-6b0c-42c1-8179-7b9026fe2676\n```\n<!--End PulumiCodeChooser -->\n\n## Example—Linear Retention Protection Policy\n\n<!--Start PulumiCodeChooser -->\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as nutanix from \"@pierskarsenbarg/nutanix\";\n\nconst linear_retention_protection_policy = new nutanix.ProtectionPolicyV2(\"linear-retention-protection-policy\", {\n    name: \"linear-retention-protection-policy\",\n    replicationConfigurations: [\n        {\n            sourceLocationLabel: \"source\",\n            remoteLocationLabel: \"target\",\n            schedule: {\n                recoveryPointObjectiveTimeSeconds: 7200,\n                recoveryPointType: \"CRASH_CONSISTENT\",\n                retention: {\n                    linearRetention: {\n                        local: 1,\n                        remote: 1,\n                    },\n                },\n            },\n        },\n        {\n            sourceLocationLabel: \"target\",\n            remoteLocationLabel: \"source\",\n            schedule: {\n                recoveryPointObjectiveTimeSeconds: 7200,\n                recoveryPointType: \"CRASH_CONSISTENT\",\n                retention: {\n                    linearRetention: {\n                        local: 1,\n                        remote: 1,\n                    },\n                },\n            },\n        },\n    ],\n    replicationLocations: [\n        {\n            domainManagerExtId: \"6a44b05e-cb9b-4e7e-8d75-b1b4715369c4\",\n            label: \"source\",\n            isPrimary: true,\n            replicationSubLocation: {\n                clusterExtIds: {\n                    clusterExtIds: [clusterExtId],\n                },\n            },\n        },\n        {\n            domainManagerExtId: \"75dde184-3a0e-4f59-a185-03ca1efead17\",\n            label: \"target\",\n            isPrimary: false,\n        },\n    ],\n    categoryIds: [\"b08ed184-6b0c-42c1-8179-7b9026fe2676\"],\n});\n```\n```python\nimport pulumi\nimport pulumi_nutanix as nutanix\n\nlinear_retention_protection_policy = nutanix.ProtectionPolicyV2(\"linear-retention-protection-policy\",\n    name=\"linear-retention-protection-policy\",\n    replication_configurations=[\n        {\n            \"source_location_label\": \"source\",\n            \"remote_location_label\": \"target\",\n            \"schedule\": {\n                \"recovery_point_objective_time_seconds\": 7200,\n                \"recovery_point_type\": \"CRASH_CONSISTENT\",\n                \"retention\": {\n                    \"linear_retention\": {\n                        \"local\": 1,\n                        \"remote\": 1,\n                    },\n                },\n            },\n        },\n        {\n            \"source_location_label\": \"target\",\n            \"remote_location_label\": \"source\",\n            \"schedule\": {\n                \"recovery_point_objective_time_seconds\": 7200,\n                \"recovery_point_type\": \"CRASH_CONSISTENT\",\n                \"retention\": {\n                    \"linear_retention\": {\n                        \"local\": 1,\n                        \"remote\": 1,\n                    },\n                },\n            },\n        },\n    ],\n    replication_locations=[\n        {\n            \"domain_manager_ext_id\": \"6a44b05e-cb9b-4e7e-8d75-b1b4715369c4\",\n            \"label\": \"source\",\n            \"is_primary\": True,\n            \"replication_sub_location\": {\n                \"cluster_ext_ids\": {\n                    \"cluster_ext_ids\": [cluster_ext_id],\n                },\n            },\n        },\n        {\n            \"domain_manager_ext_id\": \"75dde184-3a0e-4f59-a185-03ca1efead17\",\n            \"label\": \"target\",\n            \"is_primary\": False,\n        },\n    ],\n    category_ids=[\"b08ed184-6b0c-42c1-8179-7b9026fe2676\"])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Nutanix = PiersKarsenbarg.Nutanix;\n\nreturn await Deployment.RunAsync(() => \n{\n    var linear_retention_protection_policy = new Nutanix.ProtectionPolicyV2(\"linear-retention-protection-policy\", new()\n    {\n        Name = \"linear-retention-protection-policy\",\n        ReplicationConfigurations = new[]\n        {\n            new Nutanix.Inputs.ProtectionPolicyV2ReplicationConfigurationArgs\n            {\n                SourceLocationLabel = \"source\",\n                RemoteLocationLabel = \"target\",\n                Schedule = new Nutanix.Inputs.ProtectionPolicyV2ReplicationConfigurationScheduleArgs\n                {\n                    RecoveryPointObjectiveTimeSeconds = 7200,\n                    RecoveryPointType = \"CRASH_CONSISTENT\",\n                    Retention = new Nutanix.Inputs.ProtectionPolicyV2ReplicationConfigurationScheduleRetentionArgs\n                    {\n                        LinearRetention = new Nutanix.Inputs.ProtectionPolicyV2ReplicationConfigurationScheduleRetentionLinearRetentionArgs\n                        {\n                            Local = 1,\n                            Remote = 1,\n                        },\n                    },\n                },\n            },\n            new Nutanix.Inputs.ProtectionPolicyV2ReplicationConfigurationArgs\n            {\n                SourceLocationLabel = \"target\",\n                RemoteLocationLabel = \"source\",\n                Schedule = new Nutanix.Inputs.ProtectionPolicyV2ReplicationConfigurationScheduleArgs\n                {\n                    RecoveryPointObjectiveTimeSeconds = 7200,\n                    RecoveryPointType = \"CRASH_CONSISTENT\",\n                    Retention = new Nutanix.Inputs.ProtectionPolicyV2ReplicationConfigurationScheduleRetentionArgs\n                    {\n                        LinearRetention = new Nutanix.Inputs.ProtectionPolicyV2ReplicationConfigurationScheduleRetentionLinearRetentionArgs\n                        {\n                            Local = 1,\n                            Remote = 1,\n                        },\n                    },\n                },\n            },\n        },\n        ReplicationLocations = new[]\n        {\n            new Nutanix.Inputs.ProtectionPolicyV2ReplicationLocationArgs\n            {\n                DomainManagerExtId = \"6a44b05e-cb9b-4e7e-8d75-b1b4715369c4\",\n                Label = \"source\",\n                IsPrimary = true,\n                ReplicationSubLocation = new Nutanix.Inputs.ProtectionPolicyV2ReplicationLocationReplicationSubLocationArgs\n                {\n                    ClusterExtIds = new Nutanix.Inputs.ProtectionPolicyV2ReplicationLocationReplicationSubLocationClusterExtIdsArgs\n                    {\n                        ClusterExtIds = new[]\n                        {\n                            clusterExtId,\n                        },\n                    },\n                },\n            },\n            new Nutanix.Inputs.ProtectionPolicyV2ReplicationLocationArgs\n            {\n                DomainManagerExtId = \"75dde184-3a0e-4f59-a185-03ca1efead17\",\n                Label = \"target\",\n                IsPrimary = false,\n            },\n        },\n        CategoryIds = new[]\n        {\n            \"b08ed184-6b0c-42c1-8179-7b9026fe2676\",\n        },\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pierskarsenbarg/pulumi-nutanix/sdk/go/nutanix\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := nutanix.NewProtectionPolicyV2(ctx, \"linear-retention-protection-policy\", &nutanix.ProtectionPolicyV2Args{\n\t\t\tName: pulumi.String(\"linear-retention-protection-policy\"),\n\t\t\tReplicationConfigurations: nutanix.ProtectionPolicyV2ReplicationConfigurationArray{\n\t\t\t\t&nutanix.ProtectionPolicyV2ReplicationConfigurationArgs{\n\t\t\t\t\tSourceLocationLabel: pulumi.String(\"source\"),\n\t\t\t\t\tRemoteLocationLabel: pulumi.String(\"target\"),\n\t\t\t\t\tSchedule: &nutanix.ProtectionPolicyV2ReplicationConfigurationScheduleArgs{\n\t\t\t\t\t\tRecoveryPointObjectiveTimeSeconds: pulumi.Int(7200),\n\t\t\t\t\t\tRecoveryPointType:                 pulumi.String(\"CRASH_CONSISTENT\"),\n\t\t\t\t\t\tRetention: &nutanix.ProtectionPolicyV2ReplicationConfigurationScheduleRetentionArgs{\n\t\t\t\t\t\t\tLinearRetention: &nutanix.ProtectionPolicyV2ReplicationConfigurationScheduleRetentionLinearRetentionArgs{\n\t\t\t\t\t\t\t\tLocal:  pulumi.Int(1),\n\t\t\t\t\t\t\t\tRemote: pulumi.Int(1),\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\t&nutanix.ProtectionPolicyV2ReplicationConfigurationArgs{\n\t\t\t\t\tSourceLocationLabel: pulumi.String(\"target\"),\n\t\t\t\t\tRemoteLocationLabel: pulumi.String(\"source\"),\n\t\t\t\t\tSchedule: &nutanix.ProtectionPolicyV2ReplicationConfigurationScheduleArgs{\n\t\t\t\t\t\tRecoveryPointObjectiveTimeSeconds: pulumi.Int(7200),\n\t\t\t\t\t\tRecoveryPointType:                 pulumi.String(\"CRASH_CONSISTENT\"),\n\t\t\t\t\t\tRetention: &nutanix.ProtectionPolicyV2ReplicationConfigurationScheduleRetentionArgs{\n\t\t\t\t\t\t\tLinearRetention: &nutanix.ProtectionPolicyV2ReplicationConfigurationScheduleRetentionLinearRetentionArgs{\n\t\t\t\t\t\t\t\tLocal:  pulumi.Int(1),\n\t\t\t\t\t\t\t\tRemote: pulumi.Int(1),\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t\tReplicationLocations: nutanix.ProtectionPolicyV2ReplicationLocationArray{\n\t\t\t\t&nutanix.ProtectionPolicyV2ReplicationLocationArgs{\n\t\t\t\t\tDomainManagerExtId: pulumi.String(\"6a44b05e-cb9b-4e7e-8d75-b1b4715369c4\"),\n\t\t\t\t\tLabel:              pulumi.String(\"source\"),\n\t\t\t\t\tIsPrimary:          pulumi.Bool(true),\n\t\t\t\t\tReplicationSubLocation: &nutanix.ProtectionPolicyV2ReplicationLocationReplicationSubLocationArgs{\n\t\t\t\t\t\tClusterExtIds: &nutanix.ProtectionPolicyV2ReplicationLocationReplicationSubLocationClusterExtIdsArgs{\n\t\t\t\t\t\t\tClusterExtIds: pulumi.StringArray{\n\t\t\t\t\t\t\t\tclusterExtId,\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\t&nutanix.ProtectionPolicyV2ReplicationLocationArgs{\n\t\t\t\t\tDomainManagerExtId: pulumi.String(\"75dde184-3a0e-4f59-a185-03ca1efead17\"),\n\t\t\t\t\tLabel:              pulumi.String(\"target\"),\n\t\t\t\t\tIsPrimary:          pulumi.Bool(false),\n\t\t\t\t},\n\t\t\t},\n\t\t\tCategoryIds: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"b08ed184-6b0c-42c1-8179-7b9026fe2676\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.nutanix.ProtectionPolicyV2;\nimport com.pulumi.nutanix.ProtectionPolicyV2Args;\nimport com.pulumi.nutanix.inputs.ProtectionPolicyV2ReplicationConfigurationArgs;\nimport com.pulumi.nutanix.inputs.ProtectionPolicyV2ReplicationConfigurationScheduleArgs;\nimport com.pulumi.nutanix.inputs.ProtectionPolicyV2ReplicationConfigurationScheduleRetentionArgs;\nimport com.pulumi.nutanix.inputs.ProtectionPolicyV2ReplicationConfigurationScheduleRetentionLinearRetentionArgs;\nimport com.pulumi.nutanix.inputs.ProtectionPolicyV2ReplicationLocationArgs;\nimport com.pulumi.nutanix.inputs.ProtectionPolicyV2ReplicationLocationReplicationSubLocationArgs;\nimport com.pulumi.nutanix.inputs.ProtectionPolicyV2ReplicationLocationReplicationSubLocationClusterExtIdsArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var linear_retention_protection_policy = new ProtectionPolicyV2(\"linear-retention-protection-policy\", ProtectionPolicyV2Args.builder()\n            .name(\"linear-retention-protection-policy\")\n            .replicationConfigurations(            \n                ProtectionPolicyV2ReplicationConfigurationArgs.builder()\n                    .sourceLocationLabel(\"source\")\n                    .remoteLocationLabel(\"target\")\n                    .schedule(ProtectionPolicyV2ReplicationConfigurationScheduleArgs.builder()\n                        .recoveryPointObjectiveTimeSeconds(7200)\n                        .recoveryPointType(\"CRASH_CONSISTENT\")\n                        .retention(ProtectionPolicyV2ReplicationConfigurationScheduleRetentionArgs.builder()\n                            .linearRetention(ProtectionPolicyV2ReplicationConfigurationScheduleRetentionLinearRetentionArgs.builder()\n                                .local(1)\n                                .remote(1)\n                                .build())\n                            .build())\n                        .build())\n                    .build(),\n                ProtectionPolicyV2ReplicationConfigurationArgs.builder()\n                    .sourceLocationLabel(\"target\")\n                    .remoteLocationLabel(\"source\")\n                    .schedule(ProtectionPolicyV2ReplicationConfigurationScheduleArgs.builder()\n                        .recoveryPointObjectiveTimeSeconds(7200)\n                        .recoveryPointType(\"CRASH_CONSISTENT\")\n                        .retention(ProtectionPolicyV2ReplicationConfigurationScheduleRetentionArgs.builder()\n                            .linearRetention(ProtectionPolicyV2ReplicationConfigurationScheduleRetentionLinearRetentionArgs.builder()\n                                .local(1)\n                                .remote(1)\n                                .build())\n                            .build())\n                        .build())\n                    .build())\n            .replicationLocations(            \n                ProtectionPolicyV2ReplicationLocationArgs.builder()\n                    .domainManagerExtId(\"6a44b05e-cb9b-4e7e-8d75-b1b4715369c4\")\n                    .label(\"source\")\n                    .isPrimary(true)\n                    .replicationSubLocation(ProtectionPolicyV2ReplicationLocationReplicationSubLocationArgs.builder()\n                        .clusterExtIds(ProtectionPolicyV2ReplicationLocationReplicationSubLocationClusterExtIdsArgs.builder()\n                            .clusterExtIds(clusterExtId)\n                            .build())\n                        .build())\n                    .build(),\n                ProtectionPolicyV2ReplicationLocationArgs.builder()\n                    .domainManagerExtId(\"75dde184-3a0e-4f59-a185-03ca1efead17\")\n                    .label(\"target\")\n                    .isPrimary(false)\n                    .build())\n            .categoryIds(\"b08ed184-6b0c-42c1-8179-7b9026fe2676\")\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  linear-retention-protection-policy:\n    type: nutanix:ProtectionPolicyV2\n    properties:\n      name: linear-retention-protection-policy\n      replicationConfigurations:\n        - sourceLocationLabel: source\n          remoteLocationLabel: target\n          schedule:\n            recoveryPointObjectiveTimeSeconds: 7200\n            recoveryPointType: CRASH_CONSISTENT\n            retention:\n              linearRetention:\n                local: 1\n                remote: 1\n        - sourceLocationLabel: target\n          remoteLocationLabel: source\n          schedule:\n            recoveryPointObjectiveTimeSeconds: 7200\n            recoveryPointType: CRASH_CONSISTENT\n            retention:\n              linearRetention:\n                local: 1\n                remote: 1\n      replicationLocations:\n        - domainManagerExtId: 6a44b05e-cb9b-4e7e-8d75-b1b4715369c4\n          label: source\n          isPrimary: true\n          replicationSubLocation:\n            clusterExtIds:\n              clusterExtIds:\n                - ${clusterExtId}\n        - domainManagerExtId: 75dde184-3a0e-4f59-a185-03ca1efead17\n          label: target\n          isPrimary: false\n      categoryIds:\n        - b08ed184-6b0c-42c1-8179-7b9026fe2676\n```\n<!--End PulumiCodeChooser -->\n\n## Example—Auto Rollup Retention Protection Policy\n\n<!--Start PulumiCodeChooser -->\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as nutanix from \"@pierskarsenbarg/nutanix\";\n\n// Create Auto Rollup Retention Protection Policy\nconst auto_rollup_retention_protection_policy = new nutanix.ProtectionPolicyV2(\"auto-rollup-retention-protection-policy\", {\n    name: \"auto_rollup_retention_protection_policy\",\n    replicationConfigurations: [\n        {\n            sourceLocationLabel: \"source\",\n            remoteLocationLabel: \"target\",\n            schedule: {\n                recoveryPointObjectiveTimeSeconds: 60,\n                recoveryPointType: \"CRASH_CONSISTENT\",\n                syncReplicationAutoSuspendTimeoutSeconds: 20,\n                startTime: \"18h:10m\",\n                retention: {\n                    autoRollupRetention: {\n                        local: {\n                            snapshotIntervalType: \"WEEKLY\",\n                            frequency: 2,\n                        },\n                        remote: {\n                            snapshotIntervalType: \"DAILY\",\n                            frequency: 1,\n                        },\n                    },\n                },\n            },\n        },\n        {\n            sourceLocationLabel: \"target\",\n            remoteLocationLabel: \"source\",\n            schedule: {\n                recoveryPointObjectiveTimeSeconds: 60,\n                recoveryPointType: \"CRASH_CONSISTENT\",\n                syncReplicationAutoSuspendTimeoutSeconds: 30,\n                startTime: \"18h:10m\",\n                retention: {\n                    autoRollupRetention: {\n                        local: {\n                            snapshotIntervalType: \"DAILY\",\n                            frequency: 1,\n                        },\n                        remote: {\n                            snapshotIntervalType: \"WEEKLY\",\n                            frequency: 2,\n                        },\n                    },\n                },\n            },\n        },\n    ],\n    replicationLocations: [\n        {\n            domainManagerExtId: \"6a44b05e-cb9b-4e7e-8d75-b1b4715369c4\",\n            label: \"source\",\n            isPrimary: true,\n        },\n        {\n            domainManagerExtId: \"75dde184-3a0e-4f59-a185-03ca1efead17\",\n            label: \"target\",\n            isPrimary: false,\n        },\n    ],\n    categoryIds: [\"b08ed184-6b0c-42c1-8179-7b9026fe2676\"],\n});\n```\n```python\nimport pulumi\nimport pulumi_nutanix as nutanix\n\n# Create Auto Rollup Retention Protection Policy\nauto_rollup_retention_protection_policy = nutanix.ProtectionPolicyV2(\"auto-rollup-retention-protection-policy\",\n    name=\"auto_rollup_retention_protection_policy\",\n    replication_configurations=[\n        {\n            \"source_location_label\": \"source\",\n            \"remote_location_label\": \"target\",\n            \"schedule\": {\n                \"recovery_point_objective_time_seconds\": 60,\n                \"recovery_point_type\": \"CRASH_CONSISTENT\",\n                \"sync_replication_auto_suspend_timeout_seconds\": 20,\n                \"start_time\": \"18h:10m\",\n                \"retention\": {\n                    \"auto_rollup_retention\": {\n                        \"local\": {\n                            \"snapshot_interval_type\": \"WEEKLY\",\n                            \"frequency\": 2,\n                        },\n                        \"remote\": {\n                            \"snapshot_interval_type\": \"DAILY\",\n                            \"frequency\": 1,\n                        },\n                    },\n                },\n            },\n        },\n        {\n            \"source_location_label\": \"target\",\n            \"remote_location_label\": \"source\",\n            \"schedule\": {\n                \"recovery_point_objective_time_seconds\": 60,\n                \"recovery_point_type\": \"CRASH_CONSISTENT\",\n                \"sync_replication_auto_suspend_timeout_seconds\": 30,\n                \"start_time\": \"18h:10m\",\n                \"retention\": {\n                    \"auto_rollup_retention\": {\n                        \"local\": {\n                            \"snapshot_interval_type\": \"DAILY\",\n                            \"frequency\": 1,\n                        },\n                        \"remote\": {\n                            \"snapshot_interval_type\": \"WEEKLY\",\n                            \"frequency\": 2,\n                        },\n                    },\n                },\n            },\n        },\n    ],\n    replication_locations=[\n        {\n            \"domain_manager_ext_id\": \"6a44b05e-cb9b-4e7e-8d75-b1b4715369c4\",\n            \"label\": \"source\",\n            \"is_primary\": True,\n        },\n        {\n            \"domain_manager_ext_id\": \"75dde184-3a0e-4f59-a185-03ca1efead17\",\n            \"label\": \"target\",\n            \"is_primary\": False,\n        },\n    ],\n    category_ids=[\"b08ed184-6b0c-42c1-8179-7b9026fe2676\"])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Nutanix = PiersKarsenbarg.Nutanix;\n\nreturn await Deployment.RunAsync(() => \n{\n    // Create Auto Rollup Retention Protection Policy\n    var auto_rollup_retention_protection_policy = new Nutanix.ProtectionPolicyV2(\"auto-rollup-retention-protection-policy\", new()\n    {\n        Name = \"auto_rollup_retention_protection_policy\",\n        ReplicationConfigurations = new[]\n        {\n            new Nutanix.Inputs.ProtectionPolicyV2ReplicationConfigurationArgs\n            {\n                SourceLocationLabel = \"source\",\n                RemoteLocationLabel = \"target\",\n                Schedule = new Nutanix.Inputs.ProtectionPolicyV2ReplicationConfigurationScheduleArgs\n                {\n                    RecoveryPointObjectiveTimeSeconds = 60,\n                    RecoveryPointType = \"CRASH_CONSISTENT\",\n                    SyncReplicationAutoSuspendTimeoutSeconds = 20,\n                    StartTime = \"18h:10m\",\n                    Retention = new Nutanix.Inputs.ProtectionPolicyV2ReplicationConfigurationScheduleRetentionArgs\n                    {\n                        AutoRollupRetention = new Nutanix.Inputs.ProtectionPolicyV2ReplicationConfigurationScheduleRetentionAutoRollupRetentionArgs\n                        {\n                            Local = new Nutanix.Inputs.ProtectionPolicyV2ReplicationConfigurationScheduleRetentionAutoRollupRetentionLocalArgs\n                            {\n                                SnapshotIntervalType = \"WEEKLY\",\n                                Frequency = 2,\n                            },\n                            Remote = new Nutanix.Inputs.ProtectionPolicyV2ReplicationConfigurationScheduleRetentionAutoRollupRetentionRemoteArgs\n                            {\n                                SnapshotIntervalType = \"DAILY\",\n                                Frequency = 1,\n                            },\n                        },\n                    },\n                },\n            },\n            new Nutanix.Inputs.ProtectionPolicyV2ReplicationConfigurationArgs\n            {\n                SourceLocationLabel = \"target\",\n                RemoteLocationLabel = \"source\",\n                Schedule = new Nutanix.Inputs.ProtectionPolicyV2ReplicationConfigurationScheduleArgs\n                {\n                    RecoveryPointObjectiveTimeSeconds = 60,\n                    RecoveryPointType = \"CRASH_CONSISTENT\",\n                    SyncReplicationAutoSuspendTimeoutSeconds = 30,\n                    StartTime = \"18h:10m\",\n                    Retention = new Nutanix.Inputs.ProtectionPolicyV2ReplicationConfigurationScheduleRetentionArgs\n                    {\n                        AutoRollupRetention = new Nutanix.Inputs.ProtectionPolicyV2ReplicationConfigurationScheduleRetentionAutoRollupRetentionArgs\n                        {\n                            Local = new Nutanix.Inputs.ProtectionPolicyV2ReplicationConfigurationScheduleRetentionAutoRollupRetentionLocalArgs\n                            {\n                                SnapshotIntervalType = \"DAILY\",\n                                Frequency = 1,\n                            },\n                            Remote = new Nutanix.Inputs.ProtectionPolicyV2ReplicationConfigurationScheduleRetentionAutoRollupRetentionRemoteArgs\n                            {\n                                SnapshotIntervalType = \"WEEKLY\",\n                                Frequency = 2,\n                            },\n                        },\n                    },\n                },\n            },\n        },\n        ReplicationLocations = new[]\n        {\n            new Nutanix.Inputs.ProtectionPolicyV2ReplicationLocationArgs\n            {\n                DomainManagerExtId = \"6a44b05e-cb9b-4e7e-8d75-b1b4715369c4\",\n                Label = \"source\",\n                IsPrimary = true,\n            },\n            new Nutanix.Inputs.ProtectionPolicyV2ReplicationLocationArgs\n            {\n                DomainManagerExtId = \"75dde184-3a0e-4f59-a185-03ca1efead17\",\n                Label = \"target\",\n                IsPrimary = false,\n            },\n        },\n        CategoryIds = new[]\n        {\n            \"b08ed184-6b0c-42c1-8179-7b9026fe2676\",\n        },\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pierskarsenbarg/pulumi-nutanix/sdk/go/nutanix\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t// Create Auto Rollup Retention Protection Policy\n\t\t_, err := nutanix.NewProtectionPolicyV2(ctx, \"auto-rollup-retention-protection-policy\", &nutanix.ProtectionPolicyV2Args{\n\t\t\tName: pulumi.String(\"auto_rollup_retention_protection_policy\"),\n\t\t\tReplicationConfigurations: nutanix.ProtectionPolicyV2ReplicationConfigurationArray{\n\t\t\t\t&nutanix.ProtectionPolicyV2ReplicationConfigurationArgs{\n\t\t\t\t\tSourceLocationLabel: pulumi.String(\"source\"),\n\t\t\t\t\tRemoteLocationLabel: pulumi.String(\"target\"),\n\t\t\t\t\tSchedule: &nutanix.ProtectionPolicyV2ReplicationConfigurationScheduleArgs{\n\t\t\t\t\t\tRecoveryPointObjectiveTimeSeconds:        pulumi.Int(60),\n\t\t\t\t\t\tRecoveryPointType:                        pulumi.String(\"CRASH_CONSISTENT\"),\n\t\t\t\t\t\tSyncReplicationAutoSuspendTimeoutSeconds: pulumi.Int(20),\n\t\t\t\t\t\tStartTime:                                pulumi.String(\"18h:10m\"),\n\t\t\t\t\t\tRetention: &nutanix.ProtectionPolicyV2ReplicationConfigurationScheduleRetentionArgs{\n\t\t\t\t\t\t\tAutoRollupRetention: &nutanix.ProtectionPolicyV2ReplicationConfigurationScheduleRetentionAutoRollupRetentionArgs{\n\t\t\t\t\t\t\t\tLocal: &nutanix.ProtectionPolicyV2ReplicationConfigurationScheduleRetentionAutoRollupRetentionLocalArgs{\n\t\t\t\t\t\t\t\t\tSnapshotIntervalType: pulumi.String(\"WEEKLY\"),\n\t\t\t\t\t\t\t\t\tFrequency:            pulumi.Int(2),\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\tRemote: &nutanix.ProtectionPolicyV2ReplicationConfigurationScheduleRetentionAutoRollupRetentionRemoteArgs{\n\t\t\t\t\t\t\t\t\tSnapshotIntervalType: pulumi.String(\"DAILY\"),\n\t\t\t\t\t\t\t\t\tFrequency:            pulumi.Int(1),\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\t&nutanix.ProtectionPolicyV2ReplicationConfigurationArgs{\n\t\t\t\t\tSourceLocationLabel: pulumi.String(\"target\"),\n\t\t\t\t\tRemoteLocationLabel: pulumi.String(\"source\"),\n\t\t\t\t\tSchedule: &nutanix.ProtectionPolicyV2ReplicationConfigurationScheduleArgs{\n\t\t\t\t\t\tRecoveryPointObjectiveTimeSeconds:        pulumi.Int(60),\n\t\t\t\t\t\tRecoveryPointType:                        pulumi.String(\"CRASH_CONSISTENT\"),\n\t\t\t\t\t\tSyncReplicationAutoSuspendTimeoutSeconds: pulumi.Int(30),\n\t\t\t\t\t\tStartTime:                                pulumi.String(\"18h:10m\"),\n\t\t\t\t\t\tRetention: &nutanix.ProtectionPolicyV2ReplicationConfigurationScheduleRetentionArgs{\n\t\t\t\t\t\t\tAutoRollupRetention: &nutanix.ProtectionPolicyV2ReplicationConfigurationScheduleRetentionAutoRollupRetentionArgs{\n\t\t\t\t\t\t\t\tLocal: &nutanix.ProtectionPolicyV2ReplicationConfigurationScheduleRetentionAutoRollupRetentionLocalArgs{\n\t\t\t\t\t\t\t\t\tSnapshotIntervalType: pulumi.String(\"DAILY\"),\n\t\t\t\t\t\t\t\t\tFrequency:            pulumi.Int(1),\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\tRemote: &nutanix.ProtectionPolicyV2ReplicationConfigurationScheduleRetentionAutoRollupRetentionRemoteArgs{\n\t\t\t\t\t\t\t\t\tSnapshotIntervalType: pulumi.String(\"WEEKLY\"),\n\t\t\t\t\t\t\t\t\tFrequency:            pulumi.Int(2),\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t\tReplicationLocations: nutanix.ProtectionPolicyV2ReplicationLocationArray{\n\t\t\t\t&nutanix.ProtectionPolicyV2ReplicationLocationArgs{\n\t\t\t\t\tDomainManagerExtId: pulumi.String(\"6a44b05e-cb9b-4e7e-8d75-b1b4715369c4\"),\n\t\t\t\t\tLabel:              pulumi.String(\"source\"),\n\t\t\t\t\tIsPrimary:          pulumi.Bool(true),\n\t\t\t\t},\n\t\t\t\t&nutanix.ProtectionPolicyV2ReplicationLocationArgs{\n\t\t\t\t\tDomainManagerExtId: pulumi.String(\"75dde184-3a0e-4f59-a185-03ca1efead17\"),\n\t\t\t\t\tLabel:              pulumi.String(\"target\"),\n\t\t\t\t\tIsPrimary:          pulumi.Bool(false),\n\t\t\t\t},\n\t\t\t},\n\t\t\tCategoryIds: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"b08ed184-6b0c-42c1-8179-7b9026fe2676\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.nutanix.ProtectionPolicyV2;\nimport com.pulumi.nutanix.ProtectionPolicyV2Args;\nimport com.pulumi.nutanix.inputs.ProtectionPolicyV2ReplicationConfigurationArgs;\nimport com.pulumi.nutanix.inputs.ProtectionPolicyV2ReplicationConfigurationScheduleArgs;\nimport com.pulumi.nutanix.inputs.ProtectionPolicyV2ReplicationConfigurationScheduleRetentionArgs;\nimport com.pulumi.nutanix.inputs.ProtectionPolicyV2ReplicationConfigurationScheduleRetentionAutoRollupRetentionArgs;\nimport com.pulumi.nutanix.inputs.ProtectionPolicyV2ReplicationConfigurationScheduleRetentionAutoRollupRetentionLocalArgs;\nimport com.pulumi.nutanix.inputs.ProtectionPolicyV2ReplicationConfigurationScheduleRetentionAutoRollupRetentionRemoteArgs;\nimport com.pulumi.nutanix.inputs.ProtectionPolicyV2ReplicationLocationArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        // Create Auto Rollup Retention Protection Policy\n        var auto_rollup_retention_protection_policy = new ProtectionPolicyV2(\"auto-rollup-retention-protection-policy\", ProtectionPolicyV2Args.builder()\n            .name(\"auto_rollup_retention_protection_policy\")\n            .replicationConfigurations(            \n                ProtectionPolicyV2ReplicationConfigurationArgs.builder()\n                    .sourceLocationLabel(\"source\")\n                    .remoteLocationLabel(\"target\")\n                    .schedule(ProtectionPolicyV2ReplicationConfigurationScheduleArgs.builder()\n                        .recoveryPointObjectiveTimeSeconds(60)\n                        .recoveryPointType(\"CRASH_CONSISTENT\")\n                        .syncReplicationAutoSuspendTimeoutSeconds(20)\n                        .startTime(\"18h:10m\")\n                        .retention(ProtectionPolicyV2ReplicationConfigurationScheduleRetentionArgs.builder()\n                            .autoRollupRetention(ProtectionPolicyV2ReplicationConfigurationScheduleRetentionAutoRollupRetentionArgs.builder()\n                                .local(ProtectionPolicyV2ReplicationConfigurationScheduleRetentionAutoRollupRetentionLocalArgs.builder()\n                                    .snapshotIntervalType(\"WEEKLY\")\n                                    .frequency(2)\n                                    .build())\n                                .remote(ProtectionPolicyV2ReplicationConfigurationScheduleRetentionAutoRollupRetentionRemoteArgs.builder()\n                                    .snapshotIntervalType(\"DAILY\")\n                                    .frequency(1)\n                                    .build())\n                                .build())\n                            .build())\n                        .build())\n                    .build(),\n                ProtectionPolicyV2ReplicationConfigurationArgs.builder()\n                    .sourceLocationLabel(\"target\")\n                    .remoteLocationLabel(\"source\")\n                    .schedule(ProtectionPolicyV2ReplicationConfigurationScheduleArgs.builder()\n                        .recoveryPointObjectiveTimeSeconds(60)\n                        .recoveryPointType(\"CRASH_CONSISTENT\")\n                        .syncReplicationAutoSuspendTimeoutSeconds(30)\n                        .startTime(\"18h:10m\")\n                        .retention(ProtectionPolicyV2ReplicationConfigurationScheduleRetentionArgs.builder()\n                            .autoRollupRetention(ProtectionPolicyV2ReplicationConfigurationScheduleRetentionAutoRollupRetentionArgs.builder()\n                                .local(ProtectionPolicyV2ReplicationConfigurationScheduleRetentionAutoRollupRetentionLocalArgs.builder()\n                                    .snapshotIntervalType(\"DAILY\")\n                                    .frequency(1)\n                                    .build())\n                                .remote(ProtectionPolicyV2ReplicationConfigurationScheduleRetentionAutoRollupRetentionRemoteArgs.builder()\n                                    .snapshotIntervalType(\"WEEKLY\")\n                                    .frequency(2)\n                                    .build())\n                                .build())\n                            .build())\n                        .build())\n                    .build())\n            .replicationLocations(            \n                ProtectionPolicyV2ReplicationLocationArgs.builder()\n                    .domainManagerExtId(\"6a44b05e-cb9b-4e7e-8d75-b1b4715369c4\")\n                    .label(\"source\")\n                    .isPrimary(true)\n                    .build(),\n                ProtectionPolicyV2ReplicationLocationArgs.builder()\n                    .domainManagerExtId(\"75dde184-3a0e-4f59-a185-03ca1efead17\")\n                    .label(\"target\")\n                    .isPrimary(false)\n                    .build())\n            .categoryIds(\"b08ed184-6b0c-42c1-8179-7b9026fe2676\")\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  # Create Auto Rollup Retention Protection Policy\n  auto-rollup-retention-protection-policy:\n    type: nutanix:ProtectionPolicyV2\n    properties:\n      name: auto_rollup_retention_protection_policy\n      replicationConfigurations:\n        - sourceLocationLabel: source\n          remoteLocationLabel: target\n          schedule:\n            recoveryPointObjectiveTimeSeconds: 60\n            recoveryPointType: CRASH_CONSISTENT\n            syncReplicationAutoSuspendTimeoutSeconds: 20\n            startTime: 18h:10m\n            retention:\n              autoRollupRetention:\n                local:\n                  snapshotIntervalType: WEEKLY\n                  frequency: 2\n                remote:\n                  snapshotIntervalType: DAILY\n                  frequency: 1\n        - sourceLocationLabel: target\n          remoteLocationLabel: source\n          schedule:\n            recoveryPointObjectiveTimeSeconds: 60\n            recoveryPointType: CRASH_CONSISTENT\n            syncReplicationAutoSuspendTimeoutSeconds: 30\n            startTime: 18h:10m\n            retention:\n              autoRollupRetention:\n                local:\n                  snapshotIntervalType: DAILY\n                  frequency: 1\n                remote:\n                  snapshotIntervalType: WEEKLY\n                  frequency: 2\n      replicationLocations:\n        - domainManagerExtId: 6a44b05e-cb9b-4e7e-8d75-b1b4715369c4\n          label: source\n          isPrimary: true\n        - domainManagerExtId: 75dde184-3a0e-4f59-a185-03ca1efead17\n          label: target\n          isPrimary: false\n      categoryIds:\n        - b08ed184-6b0c-42c1-8179-7b9026fe2676\n```\n<!--End PulumiCodeChooser -->\n",
      "properties": {
        "categoryIds": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "-(Optional) Host entity with its attributes.\n"
        },
        "description": {
          "type": "string",
          "description": "-(Optional) Description of the protection policy.\n"
        },
        "extId": {
          "type": "string"
        },
        "isApprovalPolicyNeeded": {
          "type": "boolean"
        },
        "links": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FProtectionPolicyV2Link:ProtectionPolicyV2Link"
          }
        },
        "name": {
          "type": "string",
          "description": "-(Required) Name of the protection policy.\n"
        },
        "ownerExtId": {
          "type": "string"
        },
        "replicationConfigurations": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FProtectionPolicyV2ReplicationConfiguration:ProtectionPolicyV2ReplicationConfiguration"
          },
          "description": "-(Required) Cluster reference for an entity.\n"
        },
        "replicationLocations": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FProtectionPolicyV2ReplicationLocation:ProtectionPolicyV2ReplicationLocation"
          },
          "description": "-(Required) Hypervisor details.\n"
        },
        "tenantId": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "categoryIds",
        "description",
        "extId",
        "isApprovalPolicyNeeded",
        "links",
        "name",
        "ownerExtId",
        "replicationConfigurations",
        "replicationLocations",
        "tenantId"
      ],
      "inputProperties": {
        "categoryIds": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "-(Optional) Host entity with its attributes.\n"
        },
        "description": {
          "type": "string",
          "description": "-(Optional) Description of the protection policy.\n"
        },
        "name": {
          "type": "string",
          "description": "-(Required) Name of the protection policy.\n"
        },
        "replicationConfigurations": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FProtectionPolicyV2ReplicationConfiguration:ProtectionPolicyV2ReplicationConfiguration"
          },
          "description": "-(Required) Cluster reference for an entity.\n"
        },
        "replicationLocations": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FProtectionPolicyV2ReplicationLocation:ProtectionPolicyV2ReplicationLocation"
          },
          "description": "-(Required) Hypervisor details.\n"
        }
      },
      "requiredInputs": [
        "categoryIds",
        "replicationConfigurations",
        "replicationLocations"
      ],
      "stateInputs": {
        "description": "Input properties used for looking up and filtering ProtectionPolicyV2 resources.\n",
        "properties": {
          "categoryIds": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "description": "-(Optional) Host entity with its attributes.\n"
          },
          "description": {
            "type": "string",
            "description": "-(Optional) Description of the protection policy.\n"
          },
          "extId": {
            "type": "string"
          },
          "isApprovalPolicyNeeded": {
            "type": "boolean"
          },
          "links": {
            "type": "array",
            "items": {
              "$ref": "#/types/nutanix:index%2FProtectionPolicyV2Link:ProtectionPolicyV2Link"
            }
          },
          "name": {
            "type": "string",
            "description": "-(Required) Name of the protection policy.\n"
          },
          "ownerExtId": {
            "type": "string"
          },
          "replicationConfigurations": {
            "type": "array",
            "items": {
              "$ref": "#/types/nutanix:index%2FProtectionPolicyV2ReplicationConfiguration:ProtectionPolicyV2ReplicationConfiguration"
            },
            "description": "-(Required) Cluster reference for an entity.\n"
          },
          "replicationLocations": {
            "type": "array",
            "items": {
              "$ref": "#/types/nutanix:index%2FProtectionPolicyV2ReplicationLocation:ProtectionPolicyV2ReplicationLocation"
            },
            "description": "-(Required) Hypervisor details.\n"
          },
          "tenantId": {
            "type": "string"
          }
        },
        "type": "object"
      }
    },
    "nutanix:index/protectionRule:ProtectionRule": {
      "description": "Provides a Nutanix Protection Rule resource to Create a Protection Rule.\n\n## Example Usage\n\n<!--Start PulumiCodeChooser -->\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as nutanix from \"@pierskarsenbarg/nutanix\";\n\nconst protectionRuleTest = new nutanix.ProtectionRule(\"protection_rule_test\", {\n    name: \"test\",\n    description: \"test\",\n    orderedAvailabilityZoneLists: [{\n        availabilityZoneUrl: \"ab788130-0820-4d07-a1b5-b0ba4d3a42asd\",\n    }],\n    availabilityZoneConnectivityLists: [{\n        snapshotScheduleLists: [{\n            recoveryPointObjectiveSecs: 3600,\n            snapshotType: \"CRASH_CONSISTENT\",\n            localSnapshotRetentionPolicy: {\n                numSnapshots: 1,\n            },\n        }],\n    }],\n    categoryFilter: {\n        params: [{\n            name: \"Environment\",\n            values: [\"Dev\"],\n        }],\n    },\n});\n```\n```python\nimport pulumi\nimport pulumi_nutanix as nutanix\n\nprotection_rule_test = nutanix.ProtectionRule(\"protection_rule_test\",\n    name=\"test\",\n    description=\"test\",\n    ordered_availability_zone_lists=[{\n        \"availability_zone_url\": \"ab788130-0820-4d07-a1b5-b0ba4d3a42asd\",\n    }],\n    availability_zone_connectivity_lists=[{\n        \"snapshot_schedule_lists\": [{\n            \"recovery_point_objective_secs\": 3600,\n            \"snapshot_type\": \"CRASH_CONSISTENT\",\n            \"local_snapshot_retention_policy\": {\n                \"num_snapshots\": 1,\n            },\n        }],\n    }],\n    category_filter={\n        \"params\": [{\n            \"name\": \"Environment\",\n            \"values\": [\"Dev\"],\n        }],\n    })\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Nutanix = PiersKarsenbarg.Nutanix;\n\nreturn await Deployment.RunAsync(() => \n{\n    var protectionRuleTest = new Nutanix.ProtectionRule(\"protection_rule_test\", new()\n    {\n        Name = \"test\",\n        Description = \"test\",\n        OrderedAvailabilityZoneLists = new[]\n        {\n            new Nutanix.Inputs.ProtectionRuleOrderedAvailabilityZoneListArgs\n            {\n                AvailabilityZoneUrl = \"ab788130-0820-4d07-a1b5-b0ba4d3a42asd\",\n            },\n        },\n        AvailabilityZoneConnectivityLists = new[]\n        {\n            new Nutanix.Inputs.ProtectionRuleAvailabilityZoneConnectivityListArgs\n            {\n                SnapshotScheduleLists = new[]\n                {\n                    new Nutanix.Inputs.ProtectionRuleAvailabilityZoneConnectivityListSnapshotScheduleListArgs\n                    {\n                        RecoveryPointObjectiveSecs = 3600,\n                        SnapshotType = \"CRASH_CONSISTENT\",\n                        LocalSnapshotRetentionPolicy = new Nutanix.Inputs.ProtectionRuleAvailabilityZoneConnectivityListSnapshotScheduleListLocalSnapshotRetentionPolicyArgs\n                        {\n                            NumSnapshots = 1,\n                        },\n                    },\n                },\n            },\n        },\n        CategoryFilter = new Nutanix.Inputs.ProtectionRuleCategoryFilterArgs\n        {\n            Params = new[]\n            {\n                new Nutanix.Inputs.ProtectionRuleCategoryFilterParamArgs\n                {\n                    Name = \"Environment\",\n                    Values = new[]\n                    {\n                        \"Dev\",\n                    },\n                },\n            },\n        },\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pierskarsenbarg/pulumi-nutanix/sdk/go/nutanix\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := nutanix.NewProtectionRule(ctx, \"protection_rule_test\", &nutanix.ProtectionRuleArgs{\n\t\t\tName:        pulumi.String(\"test\"),\n\t\t\tDescription: pulumi.String(\"test\"),\n\t\t\tOrderedAvailabilityZoneLists: nutanix.ProtectionRuleOrderedAvailabilityZoneListArray{\n\t\t\t\t&nutanix.ProtectionRuleOrderedAvailabilityZoneListArgs{\n\t\t\t\t\tAvailabilityZoneUrl: pulumi.String(\"ab788130-0820-4d07-a1b5-b0ba4d3a42asd\"),\n\t\t\t\t},\n\t\t\t},\n\t\t\tAvailabilityZoneConnectivityLists: nutanix.ProtectionRuleAvailabilityZoneConnectivityListArray{\n\t\t\t\t&nutanix.ProtectionRuleAvailabilityZoneConnectivityListArgs{\n\t\t\t\t\tSnapshotScheduleLists: nutanix.ProtectionRuleAvailabilityZoneConnectivityListSnapshotScheduleListArray{\n\t\t\t\t\t\t&nutanix.ProtectionRuleAvailabilityZoneConnectivityListSnapshotScheduleListArgs{\n\t\t\t\t\t\t\tRecoveryPointObjectiveSecs: pulumi.Int(3600),\n\t\t\t\t\t\t\tSnapshotType:               pulumi.String(\"CRASH_CONSISTENT\"),\n\t\t\t\t\t\t\tLocalSnapshotRetentionPolicy: &nutanix.ProtectionRuleAvailabilityZoneConnectivityListSnapshotScheduleListLocalSnapshotRetentionPolicyArgs{\n\t\t\t\t\t\t\t\tNumSnapshots: pulumi.Int(1),\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t\tCategoryFilter: &nutanix.ProtectionRuleCategoryFilterArgs{\n\t\t\t\tParams: nutanix.ProtectionRuleCategoryFilterParamArray{\n\t\t\t\t\t&nutanix.ProtectionRuleCategoryFilterParamArgs{\n\t\t\t\t\t\tName: pulumi.String(\"Environment\"),\n\t\t\t\t\t\tValues: pulumi.StringArray{\n\t\t\t\t\t\t\tpulumi.String(\"Dev\"),\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.nutanix.ProtectionRule;\nimport com.pulumi.nutanix.ProtectionRuleArgs;\nimport com.pulumi.nutanix.inputs.ProtectionRuleOrderedAvailabilityZoneListArgs;\nimport com.pulumi.nutanix.inputs.ProtectionRuleAvailabilityZoneConnectivityListArgs;\nimport com.pulumi.nutanix.inputs.ProtectionRuleCategoryFilterArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var protectionRuleTest = new ProtectionRule(\"protectionRuleTest\", ProtectionRuleArgs.builder()\n            .name(\"test\")\n            .description(\"test\")\n            .orderedAvailabilityZoneLists(ProtectionRuleOrderedAvailabilityZoneListArgs.builder()\n                .availabilityZoneUrl(\"ab788130-0820-4d07-a1b5-b0ba4d3a42asd\")\n                .build())\n            .availabilityZoneConnectivityLists(ProtectionRuleAvailabilityZoneConnectivityListArgs.builder()\n                .snapshotScheduleLists(ProtectionRuleAvailabilityZoneConnectivityListSnapshotScheduleListArgs.builder()\n                    .recoveryPointObjectiveSecs(3600)\n                    .snapshotType(\"CRASH_CONSISTENT\")\n                    .localSnapshotRetentionPolicy(ProtectionRuleAvailabilityZoneConnectivityListSnapshotScheduleListLocalSnapshotRetentionPolicyArgs.builder()\n                        .numSnapshots(1)\n                        .build())\n                    .build())\n                .build())\n            .categoryFilter(ProtectionRuleCategoryFilterArgs.builder()\n                .params(ProtectionRuleCategoryFilterParamArgs.builder()\n                    .name(\"Environment\")\n                    .values(\"Dev\")\n                    .build())\n                .build())\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  protectionRuleTest:\n    type: nutanix:ProtectionRule\n    name: protection_rule_test\n    properties:\n      name: test\n      description: test\n      orderedAvailabilityZoneLists:\n        - availabilityZoneUrl: ab788130-0820-4d07-a1b5-b0ba4d3a42asd\n      availabilityZoneConnectivityLists:\n        - snapshotScheduleLists:\n            - recoveryPointObjectiveSecs: 3600\n              snapshotType: CRASH_CONSISTENT\n              localSnapshotRetentionPolicy:\n                numSnapshots: 1\n      categoryFilter:\n        params:\n          - name: Environment\n            values:\n              - Dev\n```\n<!--End PulumiCodeChooser -->\n",
      "properties": {
        "apiVersion": {
          "type": "string"
        },
        "availabilityZoneConnectivityLists": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FProtectionRuleAvailabilityZoneConnectivityList:ProtectionRuleAvailabilityZoneConnectivityList"
          }
        },
        "categories": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FProtectionRuleCategory:ProtectionRuleCategory"
          }
        },
        "categoryFilter": {
          "$ref": "#/types/nutanix:index%2FProtectionRuleCategoryFilter:ProtectionRuleCategoryFilter"
        },
        "description": {
          "type": "string",
          "description": "A description for protection rule.\n"
        },
        "metadata": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          }
        },
        "name": {
          "type": "string",
          "description": "The name for the protection rule.\n"
        },
        "orderedAvailabilityZoneLists": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FProtectionRuleOrderedAvailabilityZoneList:ProtectionRuleOrderedAvailabilityZoneList"
          }
        },
        "ownerReference": {
          "$ref": "#/types/nutanix:index%2FProtectionRuleOwnerReference:ProtectionRuleOwnerReference"
        },
        "projectReference": {
          "$ref": "#/types/nutanix:index%2FProtectionRuleProjectReference:ProtectionRuleProjectReference"
        },
        "startTime": {
          "type": "string"
        },
        "state": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "apiVersion",
        "availabilityZoneConnectivityLists",
        "categories",
        "categoryFilter",
        "description",
        "metadata",
        "name",
        "orderedAvailabilityZoneLists",
        "ownerReference",
        "projectReference",
        "startTime",
        "state"
      ],
      "inputProperties": {
        "availabilityZoneConnectivityLists": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FProtectionRuleAvailabilityZoneConnectivityList:ProtectionRuleAvailabilityZoneConnectivityList"
          }
        },
        "categories": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FProtectionRuleCategory:ProtectionRuleCategory"
          }
        },
        "categoryFilter": {
          "$ref": "#/types/nutanix:index%2FProtectionRuleCategoryFilter:ProtectionRuleCategoryFilter"
        },
        "description": {
          "type": "string",
          "description": "A description for protection rule.\n"
        },
        "name": {
          "type": "string",
          "description": "The name for the protection rule.\n"
        },
        "orderedAvailabilityZoneLists": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FProtectionRuleOrderedAvailabilityZoneList:ProtectionRuleOrderedAvailabilityZoneList"
          }
        },
        "ownerReference": {
          "$ref": "#/types/nutanix:index%2FProtectionRuleOwnerReference:ProtectionRuleOwnerReference"
        },
        "projectReference": {
          "$ref": "#/types/nutanix:index%2FProtectionRuleProjectReference:ProtectionRuleProjectReference"
        },
        "startTime": {
          "type": "string"
        }
      },
      "requiredInputs": [
        "availabilityZoneConnectivityLists",
        "orderedAvailabilityZoneLists"
      ],
      "stateInputs": {
        "description": "Input properties used for looking up and filtering ProtectionRule resources.\n",
        "properties": {
          "apiVersion": {
            "type": "string"
          },
          "availabilityZoneConnectivityLists": {
            "type": "array",
            "items": {
              "$ref": "#/types/nutanix:index%2FProtectionRuleAvailabilityZoneConnectivityList:ProtectionRuleAvailabilityZoneConnectivityList"
            }
          },
          "categories": {
            "type": "array",
            "items": {
              "$ref": "#/types/nutanix:index%2FProtectionRuleCategory:ProtectionRuleCategory"
            }
          },
          "categoryFilter": {
            "$ref": "#/types/nutanix:index%2FProtectionRuleCategoryFilter:ProtectionRuleCategoryFilter"
          },
          "description": {
            "type": "string",
            "description": "A description for protection rule.\n"
          },
          "metadata": {
            "type": "object",
            "additionalProperties": {
              "type": "string"
            }
          },
          "name": {
            "type": "string",
            "description": "The name for the protection rule.\n"
          },
          "orderedAvailabilityZoneLists": {
            "type": "array",
            "items": {
              "$ref": "#/types/nutanix:index%2FProtectionRuleOrderedAvailabilityZoneList:ProtectionRuleOrderedAvailabilityZoneList"
            }
          },
          "ownerReference": {
            "$ref": "#/types/nutanix:index%2FProtectionRuleOwnerReference:ProtectionRuleOwnerReference"
          },
          "projectReference": {
            "$ref": "#/types/nutanix:index%2FProtectionRuleProjectReference:ProtectionRuleProjectReference"
          },
          "startTime": {
            "type": "string"
          },
          "state": {
            "type": "string"
          }
        },
        "type": "object"
      }
    },
    "nutanix:index/recoveryPlan:RecoveryPlan": {
      "description": "Provides a Nutanix Recovery Plan resource to Create a Recovery Plan.\n\n## Example Usage\n\n<!--Start PulumiCodeChooser -->\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as nutanix from \"@pierskarsenbarg/nutanix\";\n\nconst recoveryPlanTest = new nutanix.RecoveryPlan(\"recovery_plan_test\", {\n    name: \"%s\",\n    description: \"%s\",\n    stageLists: [{\n        stageWork: {\n            recoverEntities: {\n                entityInfoLists: [{\n                    categories: [{\n                        name: \"Environment\",\n                        value: \"Dev\",\n                    }],\n                }],\n            },\n        },\n        stageUuid: \"ab788130-0820-4d07-a1b5-b0ba4d3a42asd\",\n        delayTimeSecs: 0,\n    }],\n    parameters: {},\n});\n```\n```python\nimport pulumi\nimport pulumi_nutanix as nutanix\n\nrecovery_plan_test = nutanix.RecoveryPlan(\"recovery_plan_test\",\n    name=\"%s\",\n    description=\"%s\",\n    stage_lists=[{\n        \"stage_work\": {\n            \"recover_entities\": {\n                \"entity_info_lists\": [{\n                    \"categories\": [{\n                        \"name\": \"Environment\",\n                        \"value\": \"Dev\",\n                    }],\n                }],\n            },\n        },\n        \"stage_uuid\": \"ab788130-0820-4d07-a1b5-b0ba4d3a42asd\",\n        \"delay_time_secs\": 0,\n    }],\n    parameters={})\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Nutanix = PiersKarsenbarg.Nutanix;\n\nreturn await Deployment.RunAsync(() => \n{\n    var recoveryPlanTest = new Nutanix.RecoveryPlan(\"recovery_plan_test\", new()\n    {\n        Name = \"%s\",\n        Description = \"%s\",\n        StageLists = new[]\n        {\n            new Nutanix.Inputs.RecoveryPlanStageListArgs\n            {\n                StageWork = new Nutanix.Inputs.RecoveryPlanStageListStageWorkArgs\n                {\n                    RecoverEntities = new Nutanix.Inputs.RecoveryPlanStageListStageWorkRecoverEntitiesArgs\n                    {\n                        EntityInfoLists = new[]\n                        {\n                            new Nutanix.Inputs.RecoveryPlanStageListStageWorkRecoverEntitiesEntityInfoListArgs\n                            {\n                                Categories = new[]\n                                {\n                                    new Nutanix.Inputs.RecoveryPlanStageListStageWorkRecoverEntitiesEntityInfoListCategoryArgs\n                                    {\n                                        Name = \"Environment\",\n                                        Value = \"Dev\",\n                                    },\n                                },\n                            },\n                        },\n                    },\n                },\n                StageUuid = \"ab788130-0820-4d07-a1b5-b0ba4d3a42asd\",\n                DelayTimeSecs = 0,\n            },\n        },\n        Parameters = null,\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pierskarsenbarg/pulumi-nutanix/sdk/go/nutanix\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := nutanix.NewRecoveryPlan(ctx, \"recovery_plan_test\", &nutanix.RecoveryPlanArgs{\n\t\t\tName:        pulumi.String(\"%s\"),\n\t\t\tDescription: pulumi.String(\"%s\"),\n\t\t\tStageLists: nutanix.RecoveryPlanStageListArray{\n\t\t\t\t&nutanix.RecoveryPlanStageListArgs{\n\t\t\t\t\tStageWork: &nutanix.RecoveryPlanStageListStageWorkArgs{\n\t\t\t\t\t\tRecoverEntities: &nutanix.RecoveryPlanStageListStageWorkRecoverEntitiesArgs{\n\t\t\t\t\t\t\tEntityInfoLists: nutanix.RecoveryPlanStageListStageWorkRecoverEntitiesEntityInfoListArray{\n\t\t\t\t\t\t\t\t&nutanix.RecoveryPlanStageListStageWorkRecoverEntitiesEntityInfoListArgs{\n\t\t\t\t\t\t\t\t\tCategories: nutanix.RecoveryPlanStageListStageWorkRecoverEntitiesEntityInfoListCategoryArray{\n\t\t\t\t\t\t\t\t\t\t&nutanix.RecoveryPlanStageListStageWorkRecoverEntitiesEntityInfoListCategoryArgs{\n\t\t\t\t\t\t\t\t\t\t\tName:  pulumi.String(\"Environment\"),\n\t\t\t\t\t\t\t\t\t\t\tValue: pulumi.String(\"Dev\"),\n\t\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t\tStageUuid:     pulumi.String(\"ab788130-0820-4d07-a1b5-b0ba4d3a42asd\"),\n\t\t\t\t\tDelayTimeSecs: pulumi.Int(0),\n\t\t\t\t},\n\t\t\t},\n\t\t\tParameters: &nutanix.RecoveryPlanParametersArgs{},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.nutanix.RecoveryPlan;\nimport com.pulumi.nutanix.RecoveryPlanArgs;\nimport com.pulumi.nutanix.inputs.RecoveryPlanStageListArgs;\nimport com.pulumi.nutanix.inputs.RecoveryPlanStageListStageWorkArgs;\nimport com.pulumi.nutanix.inputs.RecoveryPlanStageListStageWorkRecoverEntitiesArgs;\nimport com.pulumi.nutanix.inputs.RecoveryPlanParametersArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var recoveryPlanTest = new RecoveryPlan(\"recoveryPlanTest\", RecoveryPlanArgs.builder()\n            .name(\"%s\")\n            .description(\"%s\")\n            .stageLists(RecoveryPlanStageListArgs.builder()\n                .stageWork(RecoveryPlanStageListStageWorkArgs.builder()\n                    .recoverEntities(RecoveryPlanStageListStageWorkRecoverEntitiesArgs.builder()\n                        .entityInfoLists(RecoveryPlanStageListStageWorkRecoverEntitiesEntityInfoListArgs.builder()\n                            .categories(RecoveryPlanStageListStageWorkRecoverEntitiesEntityInfoListCategoryArgs.builder()\n                                .name(\"Environment\")\n                                .value(\"Dev\")\n                                .build())\n                            .build())\n                        .build())\n                    .build())\n                .stageUuid(\"ab788130-0820-4d07-a1b5-b0ba4d3a42asd\")\n                .delayTimeSecs(0)\n                .build())\n            .parameters(RecoveryPlanParametersArgs.builder()\n                .build())\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  recoveryPlanTest:\n    type: nutanix:RecoveryPlan\n    name: recovery_plan_test\n    properties:\n      name: '%s'\n      description: '%s'\n      stageLists:\n        - stageWork:\n            recoverEntities:\n              entityInfoLists:\n                - categories:\n                    - name: Environment\n                      value: Dev\n          stageUuid: ab788130-0820-4d07-a1b5-b0ba4d3a42asd\n          delayTimeSecs: 0\n      parameters: {}\n```\n<!--End PulumiCodeChooser -->\n",
      "properties": {
        "apiVersion": {
          "type": "string"
        },
        "categories": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FRecoveryPlanCategory:RecoveryPlanCategory"
          }
        },
        "description": {
          "type": "string",
          "description": "A description for Recovery Plan.\n"
        },
        "metadata": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          }
        },
        "name": {
          "type": "string",
          "description": "The name for the Recovery Plan.\n"
        },
        "ownerReference": {
          "$ref": "#/types/nutanix:index%2FRecoveryPlanOwnerReference:RecoveryPlanOwnerReference"
        },
        "parameters": {
          "$ref": "#/types/nutanix:index%2FRecoveryPlanParameters:RecoveryPlanParameters"
        },
        "projectReference": {
          "$ref": "#/types/nutanix:index%2FRecoveryPlanProjectReference:RecoveryPlanProjectReference"
        },
        "stageLists": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FRecoveryPlanStageList:RecoveryPlanStageList"
          }
        },
        "state": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "apiVersion",
        "categories",
        "description",
        "metadata",
        "name",
        "ownerReference",
        "parameters",
        "projectReference",
        "stageLists",
        "state"
      ],
      "inputProperties": {
        "categories": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FRecoveryPlanCategory:RecoveryPlanCategory"
          }
        },
        "description": {
          "type": "string",
          "description": "A description for Recovery Plan.\n"
        },
        "name": {
          "type": "string",
          "description": "The name for the Recovery Plan.\n"
        },
        "ownerReference": {
          "$ref": "#/types/nutanix:index%2FRecoveryPlanOwnerReference:RecoveryPlanOwnerReference"
        },
        "parameters": {
          "$ref": "#/types/nutanix:index%2FRecoveryPlanParameters:RecoveryPlanParameters"
        },
        "projectReference": {
          "$ref": "#/types/nutanix:index%2FRecoveryPlanProjectReference:RecoveryPlanProjectReference"
        },
        "stageLists": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FRecoveryPlanStageList:RecoveryPlanStageList"
          }
        }
      },
      "requiredInputs": [
        "parameters",
        "stageLists"
      ],
      "stateInputs": {
        "description": "Input properties used for looking up and filtering RecoveryPlan resources.\n",
        "properties": {
          "apiVersion": {
            "type": "string"
          },
          "categories": {
            "type": "array",
            "items": {
              "$ref": "#/types/nutanix:index%2FRecoveryPlanCategory:RecoveryPlanCategory"
            }
          },
          "description": {
            "type": "string",
            "description": "A description for Recovery Plan.\n"
          },
          "metadata": {
            "type": "object",
            "additionalProperties": {
              "type": "string"
            }
          },
          "name": {
            "type": "string",
            "description": "The name for the Recovery Plan.\n"
          },
          "ownerReference": {
            "$ref": "#/types/nutanix:index%2FRecoveryPlanOwnerReference:RecoveryPlanOwnerReference"
          },
          "parameters": {
            "$ref": "#/types/nutanix:index%2FRecoveryPlanParameters:RecoveryPlanParameters"
          },
          "projectReference": {
            "$ref": "#/types/nutanix:index%2FRecoveryPlanProjectReference:RecoveryPlanProjectReference"
          },
          "stageLists": {
            "type": "array",
            "items": {
              "$ref": "#/types/nutanix:index%2FRecoveryPlanStageList:RecoveryPlanStageList"
            }
          },
          "state": {
            "type": "string"
          }
        },
        "type": "object"
      }
    },
    "nutanix:index/recoveryPointReplicateV2:RecoveryPointReplicateV2": {
      "description": "External identifier of the replicated recovery point can be found in the task completion details under the key\n\n## Example Usage\n\n<!--Start PulumiCodeChooser -->\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as nutanix from \"@pierskarsenbarg/nutanix\";\n\n// replicate RP\nconst rp_replicate = new nutanix.RecoveryPointReplicateV2(\"rp-replicate\", {\n    extId: \"150a7ed0-9d05-4f35-a060-16dac4c835d0\",\n    clusterExtId: \"1cefd0f5-6d38-4c9b-a07c-bdd2db004224\",\n    pcExtId: \"8a938cc5-282b-48c4-81be-de22de145d07\",\n});\n```\n```python\nimport pulumi\nimport pulumi_nutanix as nutanix\n\n# replicate RP\nrp_replicate = nutanix.RecoveryPointReplicateV2(\"rp-replicate\",\n    ext_id=\"150a7ed0-9d05-4f35-a060-16dac4c835d0\",\n    cluster_ext_id=\"1cefd0f5-6d38-4c9b-a07c-bdd2db004224\",\n    pc_ext_id=\"8a938cc5-282b-48c4-81be-de22de145d07\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Nutanix = PiersKarsenbarg.Nutanix;\n\nreturn await Deployment.RunAsync(() => \n{\n    // replicate RP\n    var rp_replicate = new Nutanix.RecoveryPointReplicateV2(\"rp-replicate\", new()\n    {\n        ExtId = \"150a7ed0-9d05-4f35-a060-16dac4c835d0\",\n        ClusterExtId = \"1cefd0f5-6d38-4c9b-a07c-bdd2db004224\",\n        PcExtId = \"8a938cc5-282b-48c4-81be-de22de145d07\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pierskarsenbarg/pulumi-nutanix/sdk/go/nutanix\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t// replicate RP\n\t\t_, err := nutanix.NewRecoveryPointReplicateV2(ctx, \"rp-replicate\", &nutanix.RecoveryPointReplicateV2Args{\n\t\t\tExtId:        pulumi.String(\"150a7ed0-9d05-4f35-a060-16dac4c835d0\"),\n\t\t\tClusterExtId: pulumi.String(\"1cefd0f5-6d38-4c9b-a07c-bdd2db004224\"),\n\t\t\tPcExtId:      pulumi.String(\"8a938cc5-282b-48c4-81be-de22de145d07\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.nutanix.RecoveryPointReplicateV2;\nimport com.pulumi.nutanix.RecoveryPointReplicateV2Args;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        // replicate RP\n        var rp_replicate = new RecoveryPointReplicateV2(\"rp-replicate\", RecoveryPointReplicateV2Args.builder()\n            .extId(\"150a7ed0-9d05-4f35-a060-16dac4c835d0\")\n            .clusterExtId(\"1cefd0f5-6d38-4c9b-a07c-bdd2db004224\")\n            .pcExtId(\"8a938cc5-282b-48c4-81be-de22de145d07\")\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  # replicate RP\n  rp-replicate:\n    type: nutanix:RecoveryPointReplicateV2\n    properties:\n      extId: 150a7ed0-9d05-4f35-a060-16dac4c835d0\n      clusterExtId: 1cefd0f5-6d38-4c9b-a07c-bdd2db004224\n      pcExtId: 8a938cc5-282b-48c4-81be-de22de145d07\n```\n<!--End PulumiCodeChooser -->\n",
      "properties": {
        "clusterExtId": {
          "type": "string",
          "description": "-(Required) External identifier of the cluster.\n"
        },
        "extId": {
          "type": "string",
          "description": "-(Required) The external identifier that can be used to retrieve the recovery point using its URL.\n"
        },
        "pcExtId": {
          "type": "string",
          "description": "-(Required) External identifier of the Prism Central.\n"
        },
        "replicatedRpExtId": {
          "type": "string",
          "description": "- External identifier of replicated recovery point.\n"
        }
      },
      "type": "object",
      "required": [
        "extId",
        "pcExtId",
        "replicatedRpExtId"
      ],
      "inputProperties": {
        "clusterExtId": {
          "type": "string",
          "description": "-(Required) External identifier of the cluster.\n"
        },
        "extId": {
          "type": "string",
          "description": "-(Required) The external identifier that can be used to retrieve the recovery point using its URL.\n"
        },
        "pcExtId": {
          "type": "string",
          "description": "-(Required) External identifier of the Prism Central.\n"
        }
      },
      "requiredInputs": [
        "extId",
        "pcExtId"
      ],
      "stateInputs": {
        "description": "Input properties used for looking up and filtering RecoveryPointReplicateV2 resources.\n",
        "properties": {
          "clusterExtId": {
            "type": "string",
            "description": "-(Required) External identifier of the cluster.\n"
          },
          "extId": {
            "type": "string",
            "description": "-(Required) The external identifier that can be used to retrieve the recovery point using its URL.\n"
          },
          "pcExtId": {
            "type": "string",
            "description": "-(Required) External identifier of the Prism Central.\n"
          },
          "replicatedRpExtId": {
            "type": "string",
            "description": "- External identifier of replicated recovery point.\n"
          }
        },
        "type": "object"
      }
    },
    "nutanix:index/recoveryPointRestoreV2:RecoveryPointRestoreV2": {
      "description": "This operation Restore a recovery point identified by {extId}.\nA comma separated list of the created VM and volume group external identifiers can be found in the task completion details under the keys <span pulumi-lang-nodejs=\"`vmExtIds`\" pulumi-lang-dotnet=\"`VmExtIds`\" pulumi-lang-go=\"`vmExtIds`\" pulumi-lang-python=\"`vm_ext_ids`\" pulumi-lang-yaml=\"`vmExtIds`\" pulumi-lang-java=\"`vmExtIds`\">`vm_ext_ids`</span> and <span pulumi-lang-nodejs=\"`volumeGroupExtIds`\" pulumi-lang-dotnet=\"`VolumeGroupExtIds`\" pulumi-lang-go=\"`volumeGroupExtIds`\" pulumi-lang-python=\"`volume_group_ext_ids`\" pulumi-lang-yaml=\"`volumeGroupExtIds`\" pulumi-lang-java=\"`volumeGroupExtIds`\">`volume_group_ext_ids`</span> respectively.\n\n## Example Usage\n\n<!--Start PulumiCodeChooser -->\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as nutanix from \"@pierskarsenbarg/nutanix\";\n\n// restore RP\nconst rp_restore = new nutanix.RecoveryPointRestoreV2(\"rp-restore\", {\n    extId: \"150a7ed0-9d05-4f35-a060-16dac4c835d0\",\n    clusterExtId: \"1cefd0f5-6d38-4c9b-a07c-bdd2db004224\",\n    vmRecoveryPointRestoreOverrides: [{\n        vmRecoveryPointExtId: \"1cefd0f5-6d38-4c9b-a07c-bdd2db004224\",\n    }],\n    volumeGroupRecoveryPointRestoreOverrides: [{\n        volumeGroupRecoveryPointExtId: \"8a938cc5-282b-48c4-81be-de22de145d07\",\n        volumeGroupOverrideSpecs: [{\n            name: \"vg_restored\",\n        }],\n    }],\n});\n```\n```python\nimport pulumi\nimport pulumi_nutanix as nutanix\n\n# restore RP\nrp_restore = nutanix.RecoveryPointRestoreV2(\"rp-restore\",\n    ext_id=\"150a7ed0-9d05-4f35-a060-16dac4c835d0\",\n    cluster_ext_id=\"1cefd0f5-6d38-4c9b-a07c-bdd2db004224\",\n    vm_recovery_point_restore_overrides=[{\n        \"vm_recovery_point_ext_id\": \"1cefd0f5-6d38-4c9b-a07c-bdd2db004224\",\n    }],\n    volume_group_recovery_point_restore_overrides=[{\n        \"volume_group_recovery_point_ext_id\": \"8a938cc5-282b-48c4-81be-de22de145d07\",\n        \"volume_group_override_specs\": [{\n            \"name\": \"vg_restored\",\n        }],\n    }])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Nutanix = PiersKarsenbarg.Nutanix;\n\nreturn await Deployment.RunAsync(() => \n{\n    // restore RP\n    var rp_restore = new Nutanix.RecoveryPointRestoreV2(\"rp-restore\", new()\n    {\n        ExtId = \"150a7ed0-9d05-4f35-a060-16dac4c835d0\",\n        ClusterExtId = \"1cefd0f5-6d38-4c9b-a07c-bdd2db004224\",\n        VmRecoveryPointRestoreOverrides = new[]\n        {\n            new Nutanix.Inputs.RecoveryPointRestoreV2VmRecoveryPointRestoreOverrideArgs\n            {\n                VmRecoveryPointExtId = \"1cefd0f5-6d38-4c9b-a07c-bdd2db004224\",\n            },\n        },\n        VolumeGroupRecoveryPointRestoreOverrides = new[]\n        {\n            new Nutanix.Inputs.RecoveryPointRestoreV2VolumeGroupRecoveryPointRestoreOverrideArgs\n            {\n                VolumeGroupRecoveryPointExtId = \"8a938cc5-282b-48c4-81be-de22de145d07\",\n                VolumeGroupOverrideSpecs = new[]\n                {\n                    new Nutanix.Inputs.RecoveryPointRestoreV2VolumeGroupRecoveryPointRestoreOverrideVolumeGroupOverrideSpecArgs\n                    {\n                        Name = \"vg_restored\",\n                    },\n                },\n            },\n        },\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pierskarsenbarg/pulumi-nutanix/sdk/go/nutanix\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t// restore RP\n\t\t_, err := nutanix.NewRecoveryPointRestoreV2(ctx, \"rp-restore\", &nutanix.RecoveryPointRestoreV2Args{\n\t\t\tExtId:        pulumi.String(\"150a7ed0-9d05-4f35-a060-16dac4c835d0\"),\n\t\t\tClusterExtId: pulumi.String(\"1cefd0f5-6d38-4c9b-a07c-bdd2db004224\"),\n\t\t\tVmRecoveryPointRestoreOverrides: nutanix.RecoveryPointRestoreV2VmRecoveryPointRestoreOverrideArray{\n\t\t\t\t&nutanix.RecoveryPointRestoreV2VmRecoveryPointRestoreOverrideArgs{\n\t\t\t\t\tVmRecoveryPointExtId: pulumi.String(\"1cefd0f5-6d38-4c9b-a07c-bdd2db004224\"),\n\t\t\t\t},\n\t\t\t},\n\t\t\tVolumeGroupRecoveryPointRestoreOverrides: nutanix.RecoveryPointRestoreV2VolumeGroupRecoveryPointRestoreOverrideArray{\n\t\t\t\t&nutanix.RecoveryPointRestoreV2VolumeGroupRecoveryPointRestoreOverrideArgs{\n\t\t\t\t\tVolumeGroupRecoveryPointExtId: pulumi.String(\"8a938cc5-282b-48c4-81be-de22de145d07\"),\n\t\t\t\t\tVolumeGroupOverrideSpecs: nutanix.RecoveryPointRestoreV2VolumeGroupRecoveryPointRestoreOverrideVolumeGroupOverrideSpecArray{\n\t\t\t\t\t\t&nutanix.RecoveryPointRestoreV2VolumeGroupRecoveryPointRestoreOverrideVolumeGroupOverrideSpecArgs{\n\t\t\t\t\t\t\tName: pulumi.String(\"vg_restored\"),\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.nutanix.RecoveryPointRestoreV2;\nimport com.pulumi.nutanix.RecoveryPointRestoreV2Args;\nimport com.pulumi.nutanix.inputs.RecoveryPointRestoreV2VmRecoveryPointRestoreOverrideArgs;\nimport com.pulumi.nutanix.inputs.RecoveryPointRestoreV2VolumeGroupRecoveryPointRestoreOverrideArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        // restore RP\n        var rp_restore = new RecoveryPointRestoreV2(\"rp-restore\", RecoveryPointRestoreV2Args.builder()\n            .extId(\"150a7ed0-9d05-4f35-a060-16dac4c835d0\")\n            .clusterExtId(\"1cefd0f5-6d38-4c9b-a07c-bdd2db004224\")\n            .vmRecoveryPointRestoreOverrides(RecoveryPointRestoreV2VmRecoveryPointRestoreOverrideArgs.builder()\n                .vmRecoveryPointExtId(\"1cefd0f5-6d38-4c9b-a07c-bdd2db004224\")\n                .build())\n            .volumeGroupRecoveryPointRestoreOverrides(RecoveryPointRestoreV2VolumeGroupRecoveryPointRestoreOverrideArgs.builder()\n                .volumeGroupRecoveryPointExtId(\"8a938cc5-282b-48c4-81be-de22de145d07\")\n                .volumeGroupOverrideSpecs(RecoveryPointRestoreV2VolumeGroupRecoveryPointRestoreOverrideVolumeGroupOverrideSpecArgs.builder()\n                    .name(\"vg_restored\")\n                    .build())\n                .build())\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  # restore RP\n  rp-restore:\n    type: nutanix:RecoveryPointRestoreV2\n    properties:\n      extId: 150a7ed0-9d05-4f35-a060-16dac4c835d0\n      clusterExtId: 1cefd0f5-6d38-4c9b-a07c-bdd2db004224\n      vmRecoveryPointRestoreOverrides:\n        - vmRecoveryPointExtId: 1cefd0f5-6d38-4c9b-a07c-bdd2db004224\n      volumeGroupRecoveryPointRestoreOverrides:\n        - volumeGroupRecoveryPointExtId: 8a938cc5-282b-48c4-81be-de22de145d07\n          volumeGroupOverrideSpecs:\n            - name: vg_restored\n```\n<!--End PulumiCodeChooser -->\n",
      "properties": {
        "clusterExtId": {
          "type": "string",
          "description": "-(Required) External identifier of the cluster.\n"
        },
        "extId": {
          "type": "string",
          "description": "-(Required) The external identifier that can be used to retrieve the recovery point using its URL.\n"
        },
        "vmExtIds": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "- List of external identifiers of the created(restored) VMs.\n"
        },
        "vmRecoveryPointRestoreOverrides": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FRecoveryPointRestoreV2VmRecoveryPointRestoreOverride:RecoveryPointRestoreV2VmRecoveryPointRestoreOverride"
          },
          "description": "-(Optional) List of specifications to restore a specific VM recovery point(s) that are a part of the top-level recovery point. A specific VM recovery point can be selected for restore by specifying its external identifier along with override specification (if any).\n"
        },
        "volumeGroupExtIds": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "- List of external identifiers of the created(restored) volume groups.\n"
        },
        "volumeGroupRecoveryPointRestoreOverrides": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FRecoveryPointRestoreV2VolumeGroupRecoveryPointRestoreOverride:RecoveryPointRestoreV2VolumeGroupRecoveryPointRestoreOverride"
          },
          "description": "-(Optional) List of specifications to restore a specific volume group recovery point(s) that are a part of the top-level recovery point. A specific volume group recovery point can be selected for restore by specifying its external identifier along with override specification (if any).\n"
        }
      },
      "type": "object",
      "required": [
        "clusterExtId",
        "extId",
        "vmExtIds",
        "volumeGroupExtIds"
      ],
      "inputProperties": {
        "clusterExtId": {
          "type": "string",
          "description": "-(Required) External identifier of the cluster.\n"
        },
        "extId": {
          "type": "string",
          "description": "-(Required) The external identifier that can be used to retrieve the recovery point using its URL.\n"
        },
        "vmRecoveryPointRestoreOverrides": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FRecoveryPointRestoreV2VmRecoveryPointRestoreOverride:RecoveryPointRestoreV2VmRecoveryPointRestoreOverride"
          },
          "description": "-(Optional) List of specifications to restore a specific VM recovery point(s) that are a part of the top-level recovery point. A specific VM recovery point can be selected for restore by specifying its external identifier along with override specification (if any).\n"
        },
        "volumeGroupRecoveryPointRestoreOverrides": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FRecoveryPointRestoreV2VolumeGroupRecoveryPointRestoreOverride:RecoveryPointRestoreV2VolumeGroupRecoveryPointRestoreOverride"
          },
          "description": "-(Optional) List of specifications to restore a specific volume group recovery point(s) that are a part of the top-level recovery point. A specific volume group recovery point can be selected for restore by specifying its external identifier along with override specification (if any).\n"
        }
      },
      "requiredInputs": [
        "clusterExtId",
        "extId"
      ],
      "stateInputs": {
        "description": "Input properties used for looking up and filtering RecoveryPointRestoreV2 resources.\n",
        "properties": {
          "clusterExtId": {
            "type": "string",
            "description": "-(Required) External identifier of the cluster.\n"
          },
          "extId": {
            "type": "string",
            "description": "-(Required) The external identifier that can be used to retrieve the recovery point using its URL.\n"
          },
          "vmExtIds": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "description": "- List of external identifiers of the created(restored) VMs.\n"
          },
          "vmRecoveryPointRestoreOverrides": {
            "type": "array",
            "items": {
              "$ref": "#/types/nutanix:index%2FRecoveryPointRestoreV2VmRecoveryPointRestoreOverride:RecoveryPointRestoreV2VmRecoveryPointRestoreOverride"
            },
            "description": "-(Optional) List of specifications to restore a specific VM recovery point(s) that are a part of the top-level recovery point. A specific VM recovery point can be selected for restore by specifying its external identifier along with override specification (if any).\n"
          },
          "volumeGroupExtIds": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "description": "- List of external identifiers of the created(restored) volume groups.\n"
          },
          "volumeGroupRecoveryPointRestoreOverrides": {
            "type": "array",
            "items": {
              "$ref": "#/types/nutanix:index%2FRecoveryPointRestoreV2VolumeGroupRecoveryPointRestoreOverride:RecoveryPointRestoreV2VolumeGroupRecoveryPointRestoreOverride"
            },
            "description": "-(Optional) List of specifications to restore a specific volume group recovery point(s) that are a part of the top-level recovery point. A specific volume group recovery point can be selected for restore by specifying its external identifier along with override specification (if any).\n"
          }
        },
        "type": "object"
      }
    },
    "nutanix:index/recoveryPointsV2:RecoveryPointsV2": {
      "description": "Create a new recovery point.\n\n## Example Usage\n\n<!--Start PulumiCodeChooser -->\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as nutanix from \"@pierskarsenbarg/nutanix\";\n\n// create RP with Vm Rp\nconst rp_example = new nutanix.RecoveryPointsV2(\"rp-example\", {\n    name: \"terraform-test-recovery-point\",\n    expirationTime: \"2024-09-17T09:20:42Z\",\n    status: \"COMPLETE\",\n    recoveryPointType: \"APPLICATION_CONSISTENT\",\n    vmRecoveryPoints: [{\n        vmExtId: \"ab520e1d-4950-1db1-917f-a9e2ea35b8e3\",\n    }],\n});\n```\n```python\nimport pulumi\nimport pulumi_nutanix as nutanix\n\n# create RP with Vm Rp\nrp_example = nutanix.RecoveryPointsV2(\"rp-example\",\n    name=\"terraform-test-recovery-point\",\n    expiration_time=\"2024-09-17T09:20:42Z\",\n    status=\"COMPLETE\",\n    recovery_point_type=\"APPLICATION_CONSISTENT\",\n    vm_recovery_points=[{\n        \"vm_ext_id\": \"ab520e1d-4950-1db1-917f-a9e2ea35b8e3\",\n    }])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Nutanix = PiersKarsenbarg.Nutanix;\n\nreturn await Deployment.RunAsync(() => \n{\n    // create RP with Vm Rp\n    var rp_example = new Nutanix.RecoveryPointsV2(\"rp-example\", new()\n    {\n        Name = \"terraform-test-recovery-point\",\n        ExpirationTime = \"2024-09-17T09:20:42Z\",\n        Status = \"COMPLETE\",\n        RecoveryPointType = \"APPLICATION_CONSISTENT\",\n        VmRecoveryPoints = new[]\n        {\n            new Nutanix.Inputs.RecoveryPointsV2VmRecoveryPointArgs\n            {\n                VmExtId = \"ab520e1d-4950-1db1-917f-a9e2ea35b8e3\",\n            },\n        },\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pierskarsenbarg/pulumi-nutanix/sdk/go/nutanix\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t// create RP with Vm Rp\n\t\t_, err := nutanix.NewRecoveryPointsV2(ctx, \"rp-example\", &nutanix.RecoveryPointsV2Args{\n\t\t\tName:              pulumi.String(\"terraform-test-recovery-point\"),\n\t\t\tExpirationTime:    pulumi.String(\"2024-09-17T09:20:42Z\"),\n\t\t\tStatus:            pulumi.String(\"COMPLETE\"),\n\t\t\tRecoveryPointType: pulumi.String(\"APPLICATION_CONSISTENT\"),\n\t\t\tVmRecoveryPoints: nutanix.RecoveryPointsV2VmRecoveryPointArray{\n\t\t\t\t&nutanix.RecoveryPointsV2VmRecoveryPointArgs{\n\t\t\t\t\tVmExtId: pulumi.String(\"ab520e1d-4950-1db1-917f-a9e2ea35b8e3\"),\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.nutanix.RecoveryPointsV2;\nimport com.pulumi.nutanix.RecoveryPointsV2Args;\nimport com.pulumi.nutanix.inputs.RecoveryPointsV2VmRecoveryPointArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        // create RP with Vm Rp\n        var rp_example = new RecoveryPointsV2(\"rp-example\", RecoveryPointsV2Args.builder()\n            .name(\"terraform-test-recovery-point\")\n            .expirationTime(\"2024-09-17T09:20:42Z\")\n            .status(\"COMPLETE\")\n            .recoveryPointType(\"APPLICATION_CONSISTENT\")\n            .vmRecoveryPoints(RecoveryPointsV2VmRecoveryPointArgs.builder()\n                .vmExtId(\"ab520e1d-4950-1db1-917f-a9e2ea35b8e3\")\n                .build())\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  # create RP with Vm Rp\n  rp-example:\n    type: nutanix:RecoveryPointsV2\n    properties:\n      name: terraform-test-recovery-point\n      expirationTime: 2024-09-17T09:20:42Z\n      status: COMPLETE\n      recoveryPointType: APPLICATION_CONSISTENT\n      vmRecoveryPoints:\n        - vmExtId: ab520e1d-4950-1db1-917f-a9e2ea35b8e3\n```\n<!--End PulumiCodeChooser -->\n",
      "properties": {
        "creationTime": {
          "type": "string",
          "description": "The UTC date and time in ISO-8601 format when the Recovery point is created.\n"
        },
        "expirationTime": {
          "type": "string",
          "description": "-(Optional) The UTC date and time in ISO-8601 format when the current Recovery point expires and will be garbage collected.\n"
        },
        "extId": {
          "type": "string",
          "description": "recovery point UUID\n"
        },
        "links": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FRecoveryPointsV2Link:RecoveryPointsV2Link"
          },
          "description": "A HATEOAS style link for the response. Each link contains a user-friendly name identifying the link and an address for retrieving the particular resource.\n"
        },
        "locationAgnosticId": {
          "type": "string",
          "description": "Location agnostic identifier of the recovery point. This identifier is used to identify the same instances of a recovery point across different sites.\n"
        },
        "locationReferences": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FRecoveryPointsV2LocationReference:RecoveryPointsV2LocationReference"
          },
          "description": "List of location references where the VM or volume group recovery point are a part of the specified recovery point.\n"
        },
        "name": {
          "type": "string",
          "description": "-(Optional) The name of the Recovery point.\n"
        },
        "ownerExtId": {
          "type": "string",
          "description": "A read only field inserted into recovery point at the time of recovery point creation, indicating the external identifier of the user who created this recovery point.\n"
        },
        "recoveryPointType": {
          "type": "string",
          "description": "-(Optional) Type of the Recovery point.\n* supported values:\n* `CRASH_CONSISTENT`: -  capture all the VM and application level details.\n* `APPLICATION_CONSISTENT`: -  stored in the memory and also the in-progress transaction details.\n"
        },
        "status": {
          "type": "string",
          "description": "-(Optional) The status of the Recovery point, which indicates whether this Recovery point is fit to be consumed.\n* supported values:\n* `COMPLETE`: -  The Recovery point is in a complete state and ready to be consumed.\n"
        },
        "tenantId": {
          "type": "string",
          "description": "A globally unique identifier that represents the tenant that owns this entity\n"
        },
        "vmRecoveryPoints": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FRecoveryPointsV2VmRecoveryPoint:RecoveryPointsV2VmRecoveryPoint"
          },
          "description": "-(Optional) List of VM recovery point that are a part of the specified top-level recovery point. Note that a recovery point can contain a maximum number of 30 entities. These entities can be a combination of VM(s) and volume group(s).\n"
        },
        "volumeGroupRecoveryPoints": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FRecoveryPointsV2VolumeGroupRecoveryPoint:RecoveryPointsV2VolumeGroupRecoveryPoint"
          },
          "description": "-(Optional) List of volume group recovery point that are a part of the specified top-level recovery point. Note that a recovery point can contain a maximum number of 30 entities. These entities can be a combination of VM(s) and volume group(s).\n"
        }
      },
      "type": "object",
      "required": [
        "creationTime",
        "expirationTime",
        "extId",
        "links",
        "locationAgnosticId",
        "locationReferences",
        "name",
        "ownerExtId",
        "recoveryPointType",
        "status",
        "tenantId",
        "volumeGroupRecoveryPoints"
      ],
      "inputProperties": {
        "expirationTime": {
          "type": "string",
          "description": "-(Optional) The UTC date and time in ISO-8601 format when the current Recovery point expires and will be garbage collected.\n"
        },
        "name": {
          "type": "string",
          "description": "-(Optional) The name of the Recovery point.\n"
        },
        "recoveryPointType": {
          "type": "string",
          "description": "-(Optional) Type of the Recovery point.\n* supported values:\n* `CRASH_CONSISTENT`: -  capture all the VM and application level details.\n* `APPLICATION_CONSISTENT`: -  stored in the memory and also the in-progress transaction details.\n"
        },
        "status": {
          "type": "string",
          "description": "-(Optional) The status of the Recovery point, which indicates whether this Recovery point is fit to be consumed.\n* supported values:\n* `COMPLETE`: -  The Recovery point is in a complete state and ready to be consumed.\n"
        },
        "vmRecoveryPoints": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FRecoveryPointsV2VmRecoveryPoint:RecoveryPointsV2VmRecoveryPoint"
          },
          "description": "-(Optional) List of VM recovery point that are a part of the specified top-level recovery point. Note that a recovery point can contain a maximum number of 30 entities. These entities can be a combination of VM(s) and volume group(s).\n"
        },
        "volumeGroupRecoveryPoints": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FRecoveryPointsV2VolumeGroupRecoveryPoint:RecoveryPointsV2VolumeGroupRecoveryPoint"
          },
          "description": "-(Optional) List of volume group recovery point that are a part of the specified top-level recovery point. Note that a recovery point can contain a maximum number of 30 entities. These entities can be a combination of VM(s) and volume group(s).\n"
        }
      },
      "stateInputs": {
        "description": "Input properties used for looking up and filtering RecoveryPointsV2 resources.\n",
        "properties": {
          "creationTime": {
            "type": "string",
            "description": "The UTC date and time in ISO-8601 format when the Recovery point is created.\n"
          },
          "expirationTime": {
            "type": "string",
            "description": "-(Optional) The UTC date and time in ISO-8601 format when the current Recovery point expires and will be garbage collected.\n"
          },
          "extId": {
            "type": "string",
            "description": "recovery point UUID\n"
          },
          "links": {
            "type": "array",
            "items": {
              "$ref": "#/types/nutanix:index%2FRecoveryPointsV2Link:RecoveryPointsV2Link"
            },
            "description": "A HATEOAS style link for the response. Each link contains a user-friendly name identifying the link and an address for retrieving the particular resource.\n"
          },
          "locationAgnosticId": {
            "type": "string",
            "description": "Location agnostic identifier of the recovery point. This identifier is used to identify the same instances of a recovery point across different sites.\n"
          },
          "locationReferences": {
            "type": "array",
            "items": {
              "$ref": "#/types/nutanix:index%2FRecoveryPointsV2LocationReference:RecoveryPointsV2LocationReference"
            },
            "description": "List of location references where the VM or volume group recovery point are a part of the specified recovery point.\n"
          },
          "name": {
            "type": "string",
            "description": "-(Optional) The name of the Recovery point.\n"
          },
          "ownerExtId": {
            "type": "string",
            "description": "A read only field inserted into recovery point at the time of recovery point creation, indicating the external identifier of the user who created this recovery point.\n"
          },
          "recoveryPointType": {
            "type": "string",
            "description": "-(Optional) Type of the Recovery point.\n* supported values:\n* `CRASH_CONSISTENT`: -  capture all the VM and application level details.\n* `APPLICATION_CONSISTENT`: -  stored in the memory and also the in-progress transaction details.\n"
          },
          "status": {
            "type": "string",
            "description": "-(Optional) The status of the Recovery point, which indicates whether this Recovery point is fit to be consumed.\n* supported values:\n* `COMPLETE`: -  The Recovery point is in a complete state and ready to be consumed.\n"
          },
          "tenantId": {
            "type": "string",
            "description": "A globally unique identifier that represents the tenant that owns this entity\n"
          },
          "vmRecoveryPoints": {
            "type": "array",
            "items": {
              "$ref": "#/types/nutanix:index%2FRecoveryPointsV2VmRecoveryPoint:RecoveryPointsV2VmRecoveryPoint"
            },
            "description": "-(Optional) List of VM recovery point that are a part of the specified top-level recovery point. Note that a recovery point can contain a maximum number of 30 entities. These entities can be a combination of VM(s) and volume group(s).\n"
          },
          "volumeGroupRecoveryPoints": {
            "type": "array",
            "items": {
              "$ref": "#/types/nutanix:index%2FRecoveryPointsV2VolumeGroupRecoveryPoint:RecoveryPointsV2VolumeGroupRecoveryPoint"
            },
            "description": "-(Optional) List of volume group recovery point that are a part of the specified top-level recovery point. Note that a recovery point can contain a maximum number of 30 entities. These entities can be a combination of VM(s) and volume group(s).\n"
          }
        },
        "type": "object"
      }
    },
    "nutanix:index/restoreProtectedResourceV2:RestoreProtectedResourceV2": {
      "description": "Restore the specified protected resource from its state at the given timestamp on the given cluster. This is only relevant if the entity is protected in a minutely schedule at the given timestamp.\n\n\n## Example 1: Restore Virtual Machine\n\n<!--Start PulumiCodeChooser -->\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as nutanix from \"@pierskarsenbarg/nutanix\";\n\n// create a category and a protection policy on the local site\n// restore the protected virtual machine on the remote site\nconst rp_vm = new nutanix.RestoreProtectedResourceV2(\"rp-vm\", {\n    extId: \"d22529bb-f02d-4710-894b-d1de772d7832\",\n    clusterExtId: \"0005b6b1-1b16-4983-b5ff-204840f85e07\",\n});\n```\n```python\nimport pulumi\nimport pulumi_nutanix as nutanix\n\n# create a category and a protection policy on the local site\n# restore the protected virtual machine on the remote site\nrp_vm = nutanix.RestoreProtectedResourceV2(\"rp-vm\",\n    ext_id=\"d22529bb-f02d-4710-894b-d1de772d7832\",\n    cluster_ext_id=\"0005b6b1-1b16-4983-b5ff-204840f85e07\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Nutanix = PiersKarsenbarg.Nutanix;\n\nreturn await Deployment.RunAsync(() => \n{\n    // create a category and a protection policy on the local site\n    // restore the protected virtual machine on the remote site\n    var rp_vm = new Nutanix.RestoreProtectedResourceV2(\"rp-vm\", new()\n    {\n        ExtId = \"d22529bb-f02d-4710-894b-d1de772d7832\",\n        ClusterExtId = \"0005b6b1-1b16-4983-b5ff-204840f85e07\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pierskarsenbarg/pulumi-nutanix/sdk/go/nutanix\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t// create a category and a protection policy on the local site\n\t\t// restore the protected virtual machine on the remote site\n\t\t_, err := nutanix.NewRestoreProtectedResourceV2(ctx, \"rp-vm\", &nutanix.RestoreProtectedResourceV2Args{\n\t\t\tExtId:        pulumi.String(\"d22529bb-f02d-4710-894b-d1de772d7832\"),\n\t\t\tClusterExtId: pulumi.String(\"0005b6b1-1b16-4983-b5ff-204840f85e07\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.nutanix.RestoreProtectedResourceV2;\nimport com.pulumi.nutanix.RestoreProtectedResourceV2Args;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        // create a category and a protection policy on the local site\n        // restore the protected virtual machine on the remote site\n        var rp_vm = new RestoreProtectedResourceV2(\"rp-vm\", RestoreProtectedResourceV2Args.builder()\n            .extId(\"d22529bb-f02d-4710-894b-d1de772d7832\")\n            .clusterExtId(\"0005b6b1-1b16-4983-b5ff-204840f85e07\")\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  # create a category and a protection policy on the local site\n\n  # restore the protected virtual machine on the remote site\n  rp-vm:\n    type: nutanix:RestoreProtectedResourceV2\n    properties:\n      extId: d22529bb-f02d-4710-894b-d1de772d7832\n      clusterExtId: 0005b6b1-1b16-4983-b5ff-204840f85e07\n```\n<!--End PulumiCodeChooser -->\n\n## Example 2: Restore Volume Group\n\n<!--Start PulumiCodeChooser -->\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as nutanix from \"@pierskarsenbarg/nutanix\";\n\n// create a category , a protection policy and VG on the local site\n// restore the protected volume group on the remote site\nconst rp_vg = new nutanix.RestoreProtectedResourceV2(\"rp-vg\", {\n    extId: \"246c651a-1b16-4983-b5ff-204840f85e07\",\n    clusterExtId: \"0005b6b1-1b16-4983-b5ff-204840f85e07\",\n});\n```\n```python\nimport pulumi\nimport pulumi_nutanix as nutanix\n\n# create a category , a protection policy and VG on the local site\n# restore the protected volume group on the remote site\nrp_vg = nutanix.RestoreProtectedResourceV2(\"rp-vg\",\n    ext_id=\"246c651a-1b16-4983-b5ff-204840f85e07\",\n    cluster_ext_id=\"0005b6b1-1b16-4983-b5ff-204840f85e07\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Nutanix = PiersKarsenbarg.Nutanix;\n\nreturn await Deployment.RunAsync(() => \n{\n    // create a category , a protection policy and VG on the local site\n    // restore the protected volume group on the remote site\n    var rp_vg = new Nutanix.RestoreProtectedResourceV2(\"rp-vg\", new()\n    {\n        ExtId = \"246c651a-1b16-4983-b5ff-204840f85e07\",\n        ClusterExtId = \"0005b6b1-1b16-4983-b5ff-204840f85e07\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pierskarsenbarg/pulumi-nutanix/sdk/go/nutanix\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t// create a category , a protection policy and VG on the local site\n\t\t// restore the protected volume group on the remote site\n\t\t_, err := nutanix.NewRestoreProtectedResourceV2(ctx, \"rp-vg\", &nutanix.RestoreProtectedResourceV2Args{\n\t\t\tExtId:        pulumi.String(\"246c651a-1b16-4983-b5ff-204840f85e07\"),\n\t\t\tClusterExtId: pulumi.String(\"0005b6b1-1b16-4983-b5ff-204840f85e07\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.nutanix.RestoreProtectedResourceV2;\nimport com.pulumi.nutanix.RestoreProtectedResourceV2Args;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        // create a category , a protection policy and VG on the local site\n        // restore the protected volume group on the remote site\n        var rp_vg = new RestoreProtectedResourceV2(\"rp-vg\", RestoreProtectedResourceV2Args.builder()\n            .extId(\"246c651a-1b16-4983-b5ff-204840f85e07\")\n            .clusterExtId(\"0005b6b1-1b16-4983-b5ff-204840f85e07\")\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  # create a category , a protection policy and VG on the local site\n\n  # restore the protected volume group on the remote site\n  rp-vg:\n    type: nutanix:RestoreProtectedResourceV2\n    properties:\n      extId: 246c651a-1b16-4983-b5ff-204840f85e07\n      clusterExtId: 0005b6b1-1b16-4983-b5ff-204840f85e07\n```\n<!--End PulumiCodeChooser -->\n",
      "properties": {
        "clusterExtId": {
          "type": "string",
          "description": "-(Required) The external identifier of the cluster on which the entity has valid restorable time ranges. The restored entity will be created on the same cluster.\n"
        },
        "extId": {
          "type": "string",
          "description": "-(Required) The external identifier of a protected VM or volume group that can be used to retrieve the protected resource.\n"
        },
        "restoreTime": {
          "type": "string",
          "description": "-(Optional) UTC date and time in ISO 8601 format representing the time from when the state of the entity should be restored. This needs to be a valid time within the restorable time range(s) for the protected resource.\n\n\nSee detailed information in [Nutanix Restore Protected Resource v4](https://developers.nutanix.com/api-reference?namespace=dataprotection&version=v4.0#tag/ProtectedResources/operation/restoreProtectedResourcen).\n"
        }
      },
      "type": "object",
      "required": [
        "clusterExtId",
        "extId"
      ],
      "inputProperties": {
        "clusterExtId": {
          "type": "string",
          "description": "-(Required) The external identifier of the cluster on which the entity has valid restorable time ranges. The restored entity will be created on the same cluster.\n"
        },
        "extId": {
          "type": "string",
          "description": "-(Required) The external identifier of a protected VM or volume group that can be used to retrieve the protected resource.\n"
        },
        "restoreTime": {
          "type": "string",
          "description": "-(Optional) UTC date and time in ISO 8601 format representing the time from when the state of the entity should be restored. This needs to be a valid time within the restorable time range(s) for the protected resource.\n\n\nSee detailed information in [Nutanix Restore Protected Resource v4](https://developers.nutanix.com/api-reference?namespace=dataprotection&version=v4.0#tag/ProtectedResources/operation/restoreProtectedResourcen).\n"
        }
      },
      "requiredInputs": [
        "clusterExtId",
        "extId"
      ],
      "stateInputs": {
        "description": "Input properties used for looking up and filtering RestoreProtectedResourceV2 resources.\n",
        "properties": {
          "clusterExtId": {
            "type": "string",
            "description": "-(Required) The external identifier of the cluster on which the entity has valid restorable time ranges. The restored entity will be created on the same cluster.\n"
          },
          "extId": {
            "type": "string",
            "description": "-(Required) The external identifier of a protected VM or volume group that can be used to retrieve the protected resource.\n"
          },
          "restoreTime": {
            "type": "string",
            "description": "-(Optional) UTC date and time in ISO 8601 format representing the time from when the state of the entity should be restored. This needs to be a valid time within the restorable time range(s) for the protected resource.\n\n\nSee detailed information in [Nutanix Restore Protected Resource v4](https://developers.nutanix.com/api-reference?namespace=dataprotection&version=v4.0#tag/ProtectedResources/operation/restoreProtectedResourcen).\n"
          }
        },
        "type": "object"
      }
    },
    "nutanix:index/role:Role": {
      "description": "Provides a resource to create a role based on the input parameters.\n\n## Example Usage\n\n<!--Start PulumiCodeChooser -->\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as nutanix from \"@pierskarsenbarg/nutanix\";\n\nconst test = new nutanix.Role(\"test\", {\n    name: \"NAME\",\n    description: \"DESCRIPTION\",\n    permissionReferenceLists: [\n        {\n            kind: \"permission\",\n            uuid: \"ID OF PERMISSION\",\n        },\n        {\n            kind: \"permission\",\n            uuid: \"ID OF PERMISSION\",\n        },\n        {\n            kind: \"permission\",\n            uuid: \"ID OF PERMISSION\",\n        },\n    ],\n});\n```\n```python\nimport pulumi\nimport pulumi_nutanix as nutanix\n\ntest = nutanix.Role(\"test\",\n    name=\"NAME\",\n    description=\"DESCRIPTION\",\n    permission_reference_lists=[\n        {\n            \"kind\": \"permission\",\n            \"uuid\": \"ID OF PERMISSION\",\n        },\n        {\n            \"kind\": \"permission\",\n            \"uuid\": \"ID OF PERMISSION\",\n        },\n        {\n            \"kind\": \"permission\",\n            \"uuid\": \"ID OF PERMISSION\",\n        },\n    ])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Nutanix = PiersKarsenbarg.Nutanix;\n\nreturn await Deployment.RunAsync(() => \n{\n    var test = new Nutanix.Role(\"test\", new()\n    {\n        Name = \"NAME\",\n        Description = \"DESCRIPTION\",\n        PermissionReferenceLists = new[]\n        {\n            new Nutanix.Inputs.RolePermissionReferenceListArgs\n            {\n                Kind = \"permission\",\n                Uuid = \"ID OF PERMISSION\",\n            },\n            new Nutanix.Inputs.RolePermissionReferenceListArgs\n            {\n                Kind = \"permission\",\n                Uuid = \"ID OF PERMISSION\",\n            },\n            new Nutanix.Inputs.RolePermissionReferenceListArgs\n            {\n                Kind = \"permission\",\n                Uuid = \"ID OF PERMISSION\",\n            },\n        },\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pierskarsenbarg/pulumi-nutanix/sdk/go/nutanix\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := nutanix.NewRole(ctx, \"test\", &nutanix.RoleArgs{\n\t\t\tName:        pulumi.String(\"NAME\"),\n\t\t\tDescription: pulumi.String(\"DESCRIPTION\"),\n\t\t\tPermissionReferenceLists: nutanix.RolePermissionReferenceListArray{\n\t\t\t\t&nutanix.RolePermissionReferenceListArgs{\n\t\t\t\t\tKind: pulumi.String(\"permission\"),\n\t\t\t\t\tUuid: pulumi.String(\"ID OF PERMISSION\"),\n\t\t\t\t},\n\t\t\t\t&nutanix.RolePermissionReferenceListArgs{\n\t\t\t\t\tKind: pulumi.String(\"permission\"),\n\t\t\t\t\tUuid: pulumi.String(\"ID OF PERMISSION\"),\n\t\t\t\t},\n\t\t\t\t&nutanix.RolePermissionReferenceListArgs{\n\t\t\t\t\tKind: pulumi.String(\"permission\"),\n\t\t\t\t\tUuid: pulumi.String(\"ID OF PERMISSION\"),\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.nutanix.Role;\nimport com.pulumi.nutanix.RoleArgs;\nimport com.pulumi.nutanix.inputs.RolePermissionReferenceListArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var test = new Role(\"test\", RoleArgs.builder()\n            .name(\"NAME\")\n            .description(\"DESCRIPTION\")\n            .permissionReferenceLists(            \n                RolePermissionReferenceListArgs.builder()\n                    .kind(\"permission\")\n                    .uuid(\"ID OF PERMISSION\")\n                    .build(),\n                RolePermissionReferenceListArgs.builder()\n                    .kind(\"permission\")\n                    .uuid(\"ID OF PERMISSION\")\n                    .build(),\n                RolePermissionReferenceListArgs.builder()\n                    .kind(\"permission\")\n                    .uuid(\"ID OF PERMISSION\")\n                    .build())\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  test:\n    type: nutanix:Role\n    properties:\n      name: NAME\n      description: DESCRIPTION\n      permissionReferenceLists:\n        - kind: permission\n          uuid: ID OF PERMISSION\n        - kind: permission\n          uuid: ID OF PERMISSION\n        - kind: permission\n          uuid: ID OF PERMISSION\n```\n<!--End PulumiCodeChooser -->\n",
      "properties": {
        "apiVersion": {
          "type": "string",
          "description": "The version of the API.\n"
        },
        "categories": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FRoleCategory:RoleCategory"
          },
          "description": "- (Optional) Categories for the role.\n"
        },
        "description": {
          "type": "string",
          "description": "- (Optional) The description of the role.\n"
        },
        "metadata": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          },
          "description": "- The role kind metadata.\n"
        },
        "name": {
          "type": "string",
          "description": "- (Optional) Name of the role.\n"
        },
        "ownerReference": {
          "$ref": "#/types/nutanix:index%2FRoleOwnerReference:RoleOwnerReference",
          "description": "- (Optional) The reference to a user.\n"
        },
        "permissionReferenceLists": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FRolePermissionReferenceList:RolePermissionReferenceList"
          },
          "description": "- (Required) List of permission references.\n"
        },
        "projectReference": {
          "$ref": "#/types/nutanix:index%2FRoleProjectReference:RoleProjectReference",
          "description": "- (Optional) The reference to a project.\n"
        },
        "state": {
          "type": "string",
          "description": "- The state of the role.\n"
        }
      },
      "type": "object",
      "required": [
        "apiVersion",
        "categories",
        "description",
        "metadata",
        "name",
        "ownerReference",
        "permissionReferenceLists",
        "projectReference",
        "state"
      ],
      "inputProperties": {
        "categories": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FRoleCategory:RoleCategory"
          },
          "description": "- (Optional) Categories for the role.\n"
        },
        "description": {
          "type": "string",
          "description": "- (Optional) The description of the role.\n"
        },
        "name": {
          "type": "string",
          "description": "- (Optional) Name of the role.\n"
        },
        "ownerReference": {
          "$ref": "#/types/nutanix:index%2FRoleOwnerReference:RoleOwnerReference",
          "description": "- (Optional) The reference to a user.\n"
        },
        "permissionReferenceLists": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FRolePermissionReferenceList:RolePermissionReferenceList"
          },
          "description": "- (Required) List of permission references.\n"
        },
        "projectReference": {
          "$ref": "#/types/nutanix:index%2FRoleProjectReference:RoleProjectReference",
          "description": "- (Optional) The reference to a project.\n"
        }
      },
      "requiredInputs": [
        "permissionReferenceLists"
      ],
      "stateInputs": {
        "description": "Input properties used for looking up and filtering Role resources.\n",
        "properties": {
          "apiVersion": {
            "type": "string",
            "description": "The version of the API.\n"
          },
          "categories": {
            "type": "array",
            "items": {
              "$ref": "#/types/nutanix:index%2FRoleCategory:RoleCategory"
            },
            "description": "- (Optional) Categories for the role.\n"
          },
          "description": {
            "type": "string",
            "description": "- (Optional) The description of the role.\n"
          },
          "metadata": {
            "type": "object",
            "additionalProperties": {
              "type": "string"
            },
            "description": "- The role kind metadata.\n"
          },
          "name": {
            "type": "string",
            "description": "- (Optional) Name of the role.\n"
          },
          "ownerReference": {
            "$ref": "#/types/nutanix:index%2FRoleOwnerReference:RoleOwnerReference",
            "description": "- (Optional) The reference to a user.\n"
          },
          "permissionReferenceLists": {
            "type": "array",
            "items": {
              "$ref": "#/types/nutanix:index%2FRolePermissionReferenceList:RolePermissionReferenceList"
            },
            "description": "- (Required) List of permission references.\n"
          },
          "projectReference": {
            "$ref": "#/types/nutanix:index%2FRoleProjectReference:RoleProjectReference",
            "description": "- (Optional) The reference to a project.\n"
          },
          "state": {
            "type": "string",
            "description": "- The state of the role.\n"
          }
        },
        "type": "object"
      }
    },
    "nutanix:index/rolesV2:RolesV2": {
      "description": "Provides a resource to add a Role.\n\n## Example Usage\n\n<!--Start PulumiCodeChooser -->\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as nutanix from \"@pierskarsenbarg/nutanix\";\n\n// filtered list operation\nconst operations_filtered_list = nutanix.getOperationsV2({\n    filter: \"startswith(displayName, 'Create_')\",\n});\n// Create role\nconst example_role = new nutanix.RolesV2(\"example-role\", {\n    displayName: \"example_role\",\n    description: \"create example role\",\n    operations: [\n        operations_filtered_list.then(operations_filtered_list => operations_filtered_list.operations?.[0]?.extId),\n        operations_filtered_list.then(operations_filtered_list => operations_filtered_list.operations?.[1]?.extId),\n        operations_filtered_list.then(operations_filtered_list => operations_filtered_list.operations?.[2]?.extId),\n        operations_filtered_list.then(operations_filtered_list => operations_filtered_list.operations?.[3]?.extId),\n    ],\n});\n```\n```python\nimport pulumi\nimport pulumi_nutanix as nutanix\n\n# filtered list operation\noperations_filtered_list = nutanix.get_operations_v2(filter=\"startswith(displayName, 'Create_')\")\n# Create role\nexample_role = nutanix.RolesV2(\"example-role\",\n    display_name=\"example_role\",\n    description=\"create example role\",\n    operations=[\n        operations_filtered_list.operations[0].ext_id,\n        operations_filtered_list.operations[1].ext_id,\n        operations_filtered_list.operations[2].ext_id,\n        operations_filtered_list.operations[3].ext_id,\n    ])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Nutanix = PiersKarsenbarg.Nutanix;\nusing Nutanix = Pulumi.Nutanix;\n\nreturn await Deployment.RunAsync(() => \n{\n    // filtered list operation\n    var operations_filtered_list = Nutanix.GetOperationsV2.Invoke(new()\n    {\n        Filter = \"startswith(displayName, 'Create_')\",\n    });\n\n    // Create role\n    var example_role = new Nutanix.RolesV2(\"example-role\", new()\n    {\n        DisplayName = \"example_role\",\n        Description = \"create example role\",\n        Operations = new[]\n        {\n            operations_filtered_list.Apply(operations_filtered_list => operations_filtered_list.Apply(getOperationsV2Result => getOperationsV2Result.Operations[0]?.ExtId)),\n            operations_filtered_list.Apply(operations_filtered_list => operations_filtered_list.Apply(getOperationsV2Result => getOperationsV2Result.Operations[1]?.ExtId)),\n            operations_filtered_list.Apply(operations_filtered_list => operations_filtered_list.Apply(getOperationsV2Result => getOperationsV2Result.Operations[2]?.ExtId)),\n            operations_filtered_list.Apply(operations_filtered_list => operations_filtered_list.Apply(getOperationsV2Result => getOperationsV2Result.Operations[3]?.ExtId)),\n        },\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pierskarsenbarg/pulumi-nutanix/sdk/go/nutanix\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t// filtered list operation\n\t\toperations_filtered_list, err := nutanix.GetOperationsV2(ctx, &nutanix.GetOperationsV2Args{\n\t\t\tFilter: pulumi.StringRef(\"startswith(displayName, 'Create_')\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t// Create role\n\t\t_, err = nutanix.NewRolesV2(ctx, \"example-role\", &nutanix.RolesV2Args{\n\t\t\tDisplayName: pulumi.String(\"example_role\"),\n\t\t\tDescription: pulumi.String(\"create example role\"),\n\t\t\tOperations: pulumi.StringArray{\n\t\t\t\tpulumi.String(operations_filtered_list.Operations[0].ExtId),\n\t\t\t\tpulumi.String(operations_filtered_list.Operations[1].ExtId),\n\t\t\t\tpulumi.String(operations_filtered_list.Operations[2].ExtId),\n\t\t\t\tpulumi.String(operations_filtered_list.Operations[3].ExtId),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.nutanix.NutanixFunctions;\nimport com.pulumi.nutanix.inputs.GetOperationsV2Args;\nimport com.pulumi.nutanix.RolesV2;\nimport com.pulumi.nutanix.RolesV2Args;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        // filtered list operation\n        final var operations-filtered-list = NutanixFunctions.getOperationsV2(GetOperationsV2Args.builder()\n            .filter(\"startswith(displayName, 'Create_')\")\n            .build());\n\n        // Create role\n        var example_role = new RolesV2(\"example-role\", RolesV2Args.builder()\n            .displayName(\"example_role\")\n            .description(\"create example role\")\n            .operations(            \n                operations_filtered_list.operations()[0].extId(),\n                operations_filtered_list.operations()[1].extId(),\n                operations_filtered_list.operations()[2].extId(),\n                operations_filtered_list.operations()[3].extId())\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  # Create role\n  example-role:\n    type: nutanix:RolesV2\n    properties:\n      displayName: example_role\n      description: create example role\n      operations:\n        - ${[\"operations-filtered-list\"].operations[0].extId}\n        - ${[\"operations-filtered-list\"].operations[1].extId}\n        - ${[\"operations-filtered-list\"].operations[2].extId}\n        - ${[\"operations-filtered-list\"].operations[3].extId}\nvariables:\n  # filtered list operation\n  operations-filtered-list:\n    fn::invoke:\n      function: nutanix:getOperationsV2\n      arguments:\n        filter: startswith(displayName, 'Create_')\n```\n<!--End PulumiCodeChooser -->\n",
      "properties": {
        "accessibleClients": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "- List of Accessible Clients for the Role.\n"
        },
        "accessibleEntityTypes": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "- List of Accessible Entity Types for the Role.\n"
        },
        "assignedUsersCount": {
          "type": "integer",
          "description": "- Number of Users assigned to given Role.\n"
        },
        "assignedUsersGroupsCount": {
          "type": "integer",
          "description": "- Number of User Groups assigned to given Role.\n"
        },
        "clientName": {
          "type": "string",
          "description": "- Client that created the entity.\n"
        },
        "createdBy": {
          "type": "string",
          "description": "- User or Service Name that created the Role.\n"
        },
        "createdTime": {
          "type": "string",
          "description": "- The creation time of the Role.\n"
        },
        "description": {
          "type": "string",
          "description": "- Description of the Role.\n"
        },
        "displayName": {
          "type": "string",
          "description": "-(Required) The display name for the Role.\n"
        },
        "extId": {
          "type": "string",
          "description": "- A globally unique identifier of an instance that is suitable for external consumption.\n"
        },
        "isSystemDefined": {
          "type": "boolean",
          "description": "- Flag identifying if the Role is system defined or not.\n"
        },
        "lastUpdatedTime": {
          "type": "string",
          "description": "- The time when the Role was last updated.\n"
        },
        "links": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FRolesV2Link:RolesV2Link"
          },
          "description": "- A HATEOAS style link for the response. Each link contains a user-friendly name identifying the link and an address for retrieving the particular resource.\n"
        },
        "operations": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "-(Required) List of operations for the role.\n"
        },
        "tenantId": {
          "type": "string",
          "description": "- A globally unique identifier that represents the tenant that owns this entity. The system automatically assigns it, and it and is immutable from an API consumer perspective (some use cases may cause this Id to change - For instance, a use case may require the transfer of ownership of the entity, but these cases are handled automatically on the server).\n"
        }
      },
      "type": "object",
      "required": [
        "accessibleClients",
        "accessibleEntityTypes",
        "assignedUsersCount",
        "assignedUsersGroupsCount",
        "clientName",
        "createdBy",
        "createdTime",
        "displayName",
        "extId",
        "isSystemDefined",
        "lastUpdatedTime",
        "links",
        "operations",
        "tenantId"
      ],
      "inputProperties": {
        "clientName": {
          "type": "string",
          "description": "- Client that created the entity.\n"
        },
        "description": {
          "type": "string",
          "description": "- Description of the Role.\n"
        },
        "displayName": {
          "type": "string",
          "description": "-(Required) The display name for the Role.\n"
        },
        "extId": {
          "type": "string",
          "description": "- A globally unique identifier of an instance that is suitable for external consumption.\n"
        },
        "operations": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "-(Required) List of operations for the role.\n"
        }
      },
      "requiredInputs": [
        "displayName",
        "operations"
      ],
      "stateInputs": {
        "description": "Input properties used for looking up and filtering RolesV2 resources.\n",
        "properties": {
          "accessibleClients": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "description": "- List of Accessible Clients for the Role.\n"
          },
          "accessibleEntityTypes": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "description": "- List of Accessible Entity Types for the Role.\n"
          },
          "assignedUsersCount": {
            "type": "integer",
            "description": "- Number of Users assigned to given Role.\n"
          },
          "assignedUsersGroupsCount": {
            "type": "integer",
            "description": "- Number of User Groups assigned to given Role.\n"
          },
          "clientName": {
            "type": "string",
            "description": "- Client that created the entity.\n"
          },
          "createdBy": {
            "type": "string",
            "description": "- User or Service Name that created the Role.\n"
          },
          "createdTime": {
            "type": "string",
            "description": "- The creation time of the Role.\n"
          },
          "description": {
            "type": "string",
            "description": "- Description of the Role.\n"
          },
          "displayName": {
            "type": "string",
            "description": "-(Required) The display name for the Role.\n"
          },
          "extId": {
            "type": "string",
            "description": "- A globally unique identifier of an instance that is suitable for external consumption.\n"
          },
          "isSystemDefined": {
            "type": "boolean",
            "description": "- Flag identifying if the Role is system defined or not.\n"
          },
          "lastUpdatedTime": {
            "type": "string",
            "description": "- The time when the Role was last updated.\n"
          },
          "links": {
            "type": "array",
            "items": {
              "$ref": "#/types/nutanix:index%2FRolesV2Link:RolesV2Link"
            },
            "description": "- A HATEOAS style link for the response. Each link contains a user-friendly name identifying the link and an address for retrieving the particular resource.\n"
          },
          "operations": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "description": "-(Required) List of operations for the role.\n"
          },
          "tenantId": {
            "type": "string",
            "description": "- A globally unique identifier that represents the tenant that owns this entity. The system automatically assigns it, and it and is immutable from an API consumer perspective (some use cases may cause this Id to change - For instance, a use case may require the transfer of ownership of the entity, but these cases are handled automatically on the server).\n"
          }
        },
        "type": "object"
      }
    },
    "nutanix:index/routesV2:RoutesV2": {
      "description": "Provides Nutanix resource to Create Route.\n\n## Example\n\n<!--Start PulumiCodeChooser -->\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as nutanix from \"@pierskarsenbarg/nutanix\";\n\n// create a route\nconst route = new nutanix.RoutesV2(\"route\", {\n    name: \"terraform_example_route\",\n    description: \"terraform example route to example create route\",\n    vpcReference: \"8a938cc5-282b-48c4-81be-de22de145d07\",\n    routeTableExtId: \"c2c249b0-98a0-43fa-9ff6-dcde578d3936\",\n    destination: {\n        ipv4: {\n            ip: {\n                value: \"10.0.0.2\",\n            },\n            prefixLength: 32,\n        },\n    },\n    nextHop: {\n        nextHopType: \"EXTERNAL_SUBNET\",\n        nextHopReference: \"ba250e3e-1db1-4950-917f-a9e2ea35b8e3\",\n    },\n    metadata: {\n        ownerReferenceId: \"a8fe48c4-f0d3-49c7-a017-efc30dd8fb2b\",\n        projectReferenceId: \"ab520e1d-4950-1db1-917f-a9e2ea35b8e3\",\n    },\n    routeType: \"STATIC\",\n});\n```\n```python\nimport pulumi\nimport pulumi_nutanix as nutanix\n\n# create a route\nroute = nutanix.RoutesV2(\"route\",\n    name=\"terraform_example_route\",\n    description=\"terraform example route to example create route\",\n    vpc_reference=\"8a938cc5-282b-48c4-81be-de22de145d07\",\n    route_table_ext_id=\"c2c249b0-98a0-43fa-9ff6-dcde578d3936\",\n    destination={\n        \"ipv4\": {\n            \"ip\": {\n                \"value\": \"10.0.0.2\",\n            },\n            \"prefix_length\": 32,\n        },\n    },\n    next_hop={\n        \"next_hop_type\": \"EXTERNAL_SUBNET\",\n        \"next_hop_reference\": \"ba250e3e-1db1-4950-917f-a9e2ea35b8e3\",\n    },\n    metadata={\n        \"owner_reference_id\": \"a8fe48c4-f0d3-49c7-a017-efc30dd8fb2b\",\n        \"project_reference_id\": \"ab520e1d-4950-1db1-917f-a9e2ea35b8e3\",\n    },\n    route_type=\"STATIC\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Nutanix = PiersKarsenbarg.Nutanix;\n\nreturn await Deployment.RunAsync(() => \n{\n    // create a route\n    var route = new Nutanix.RoutesV2(\"route\", new()\n    {\n        Name = \"terraform_example_route\",\n        Description = \"terraform example route to example create route\",\n        VpcReference = \"8a938cc5-282b-48c4-81be-de22de145d07\",\n        RouteTableExtId = \"c2c249b0-98a0-43fa-9ff6-dcde578d3936\",\n        Destination = new Nutanix.Inputs.RoutesV2DestinationArgs\n        {\n            Ipv4 = new Nutanix.Inputs.RoutesV2DestinationIpv4Args\n            {\n                Ip = new Nutanix.Inputs.RoutesV2DestinationIpv4IpArgs\n                {\n                    Value = \"10.0.0.2\",\n                },\n                PrefixLength = 32,\n            },\n        },\n        NextHop = new Nutanix.Inputs.RoutesV2NextHopArgs\n        {\n            NextHopType = \"EXTERNAL_SUBNET\",\n            NextHopReference = \"ba250e3e-1db1-4950-917f-a9e2ea35b8e3\",\n        },\n        Metadata = new Nutanix.Inputs.RoutesV2MetadataArgs\n        {\n            OwnerReferenceId = \"a8fe48c4-f0d3-49c7-a017-efc30dd8fb2b\",\n            ProjectReferenceId = \"ab520e1d-4950-1db1-917f-a9e2ea35b8e3\",\n        },\n        RouteType = \"STATIC\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pierskarsenbarg/pulumi-nutanix/sdk/go/nutanix\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t// create a route\n\t\t_, err := nutanix.NewRoutesV2(ctx, \"route\", &nutanix.RoutesV2Args{\n\t\t\tName:            pulumi.String(\"terraform_example_route\"),\n\t\t\tDescription:     pulumi.String(\"terraform example route to example create route\"),\n\t\t\tVpcReference:    pulumi.String(\"8a938cc5-282b-48c4-81be-de22de145d07\"),\n\t\t\tRouteTableExtId: pulumi.String(\"c2c249b0-98a0-43fa-9ff6-dcde578d3936\"),\n\t\t\tDestination: &nutanix.RoutesV2DestinationArgs{\n\t\t\t\tIpv4: &nutanix.RoutesV2DestinationIpv4Args{\n\t\t\t\t\tIp: &nutanix.RoutesV2DestinationIpv4IpArgs{\n\t\t\t\t\t\tValue: pulumi.String(\"10.0.0.2\"),\n\t\t\t\t\t},\n\t\t\t\t\tPrefixLength: pulumi.Int(32),\n\t\t\t\t},\n\t\t\t},\n\t\t\tNextHop: &nutanix.RoutesV2NextHopArgs{\n\t\t\t\tNextHopType:      pulumi.String(\"EXTERNAL_SUBNET\"),\n\t\t\t\tNextHopReference: pulumi.String(\"ba250e3e-1db1-4950-917f-a9e2ea35b8e3\"),\n\t\t\t},\n\t\t\tMetadata: &nutanix.RoutesV2MetadataArgs{\n\t\t\t\tOwnerReferenceId:   pulumi.String(\"a8fe48c4-f0d3-49c7-a017-efc30dd8fb2b\"),\n\t\t\t\tProjectReferenceId: pulumi.String(\"ab520e1d-4950-1db1-917f-a9e2ea35b8e3\"),\n\t\t\t},\n\t\t\tRouteType: pulumi.String(\"STATIC\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.nutanix.RoutesV2;\nimport com.pulumi.nutanix.RoutesV2Args;\nimport com.pulumi.nutanix.inputs.RoutesV2DestinationArgs;\nimport com.pulumi.nutanix.inputs.RoutesV2DestinationIpv4Args;\nimport com.pulumi.nutanix.inputs.RoutesV2DestinationIpv4IpArgs;\nimport com.pulumi.nutanix.inputs.RoutesV2NextHopArgs;\nimport com.pulumi.nutanix.inputs.RoutesV2MetadataArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        // create a route\n        var route = new RoutesV2(\"route\", RoutesV2Args.builder()\n            .name(\"terraform_example_route\")\n            .description(\"terraform example route to example create route\")\n            .vpcReference(\"8a938cc5-282b-48c4-81be-de22de145d07\")\n            .routeTableExtId(\"c2c249b0-98a0-43fa-9ff6-dcde578d3936\")\n            .destination(RoutesV2DestinationArgs.builder()\n                .ipv4(RoutesV2DestinationIpv4Args.builder()\n                    .ip(RoutesV2DestinationIpv4IpArgs.builder()\n                        .value(\"10.0.0.2\")\n                        .build())\n                    .prefixLength(32)\n                    .build())\n                .build())\n            .nextHop(RoutesV2NextHopArgs.builder()\n                .nextHopType(\"EXTERNAL_SUBNET\")\n                .nextHopReference(\"ba250e3e-1db1-4950-917f-a9e2ea35b8e3\")\n                .build())\n            .metadata(RoutesV2MetadataArgs.builder()\n                .ownerReferenceId(\"a8fe48c4-f0d3-49c7-a017-efc30dd8fb2b\")\n                .projectReferenceId(\"ab520e1d-4950-1db1-917f-a9e2ea35b8e3\")\n                .build())\n            .routeType(\"STATIC\")\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  # create a route\n  route:\n    type: nutanix:RoutesV2\n    properties:\n      name: terraform_example_route\n      description: terraform example route to example create route\n      vpcReference: 8a938cc5-282b-48c4-81be-de22de145d07\n      routeTableExtId: c2c249b0-98a0-43fa-9ff6-dcde578d3936\n      destination:\n        ipv4:\n          ip:\n            value: 10.0.0.2\n          prefixLength: 32\n      nextHop:\n        nextHopType: EXTERNAL_SUBNET\n        nextHopReference: ba250e3e-1db1-4950-917f-a9e2ea35b8e3\n      metadata:\n        ownerReferenceId: a8fe48c4-f0d3-49c7-a017-efc30dd8fb2b\n        projectReferenceId: ab520e1d-4950-1db1-917f-a9e2ea35b8e3\n      routeType: STATIC\n```\n<!--End PulumiCodeChooser -->\n",
      "properties": {
        "description": {
          "type": "string",
          "description": "BGP session description.\n"
        },
        "destination": {
          "$ref": "#/types/nutanix:index%2FRoutesV2Destination:RoutesV2Destination",
          "description": "Destination IP Subnet Configuration.\n"
        },
        "extId": {
          "type": "string",
          "description": "Route UUID\n"
        },
        "externalRoutingDomainReference": {
          "type": "string",
          "description": "External routing domain associated with this route table.\n"
        },
        "isActive": {
          "type": "boolean",
          "description": "Indicates whether the route is active in the forwarding plane.\n"
        },
        "links": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FRoutesV2Link:RoutesV2Link"
          },
          "description": "A HATEOAS style link for the response. Each link contains a user-friendly name identifying the link and an address for retrieving the particular resource.\n"
        },
        "metadata": {
          "$ref": "#/types/nutanix:index%2FRoutesV2Metadata:RoutesV2Metadata",
          "description": "Metadata associated with this resource.\n"
        },
        "name": {
          "type": "string",
          "description": "Route name.\n"
        },
        "nextHop": {
          "$ref": "#/types/nutanix:index%2FRoutesV2NextHop:RoutesV2NextHop",
          "description": "Route nexthop.\n"
        },
        "priority": {
          "type": "integer",
          "description": "Route priority. A higher value implies greater preference is assigned to the route.\n"
        },
        "routeTableExtId": {
          "type": "string",
          "description": "Route table UUID\n"
        },
        "routeTableReference": {
          "type": "string",
          "description": "Route table reference.\n"
        },
        "routeType": {
          "type": "string",
          "description": "Route type. Acceptable values are \"STATIC\", \"LOCAL\", \"DYNAMIC\"\n"
        },
        "tenantId": {
          "type": "string",
          "description": "A globally unique identifier that represents the tenant that owns this entity\n"
        },
        "vpcReference": {
          "type": "string",
          "description": "VPC reference.\n"
        }
      },
      "type": "object",
      "required": [
        "description",
        "destination",
        "extId",
        "externalRoutingDomainReference",
        "isActive",
        "links",
        "metadata",
        "name",
        "nextHop",
        "priority",
        "routeTableExtId",
        "routeTableReference",
        "routeType",
        "tenantId",
        "vpcReference"
      ],
      "inputProperties": {
        "description": {
          "type": "string",
          "description": "BGP session description.\n"
        },
        "destination": {
          "$ref": "#/types/nutanix:index%2FRoutesV2Destination:RoutesV2Destination",
          "description": "Destination IP Subnet Configuration.\n"
        },
        "externalRoutingDomainReference": {
          "type": "string",
          "description": "External routing domain associated with this route table.\n"
        },
        "metadata": {
          "$ref": "#/types/nutanix:index%2FRoutesV2Metadata:RoutesV2Metadata",
          "description": "Metadata associated with this resource.\n"
        },
        "name": {
          "type": "string",
          "description": "Route name.\n"
        },
        "nextHop": {
          "$ref": "#/types/nutanix:index%2FRoutesV2NextHop:RoutesV2NextHop",
          "description": "Route nexthop.\n"
        },
        "routeTableExtId": {
          "type": "string",
          "description": "Route table UUID\n"
        },
        "routeTableReference": {
          "type": "string",
          "description": "Route table reference.\n"
        },
        "routeType": {
          "type": "string",
          "description": "Route type. Acceptable values are \"STATIC\", \"LOCAL\", \"DYNAMIC\"\n"
        },
        "vpcReference": {
          "type": "string",
          "description": "VPC reference.\n"
        }
      },
      "requiredInputs": [
        "routeTableExtId",
        "routeType"
      ],
      "stateInputs": {
        "description": "Input properties used for looking up and filtering RoutesV2 resources.\n",
        "properties": {
          "description": {
            "type": "string",
            "description": "BGP session description.\n"
          },
          "destination": {
            "$ref": "#/types/nutanix:index%2FRoutesV2Destination:RoutesV2Destination",
            "description": "Destination IP Subnet Configuration.\n"
          },
          "extId": {
            "type": "string",
            "description": "Route UUID\n"
          },
          "externalRoutingDomainReference": {
            "type": "string",
            "description": "External routing domain associated with this route table.\n"
          },
          "isActive": {
            "type": "boolean",
            "description": "Indicates whether the route is active in the forwarding plane.\n"
          },
          "links": {
            "type": "array",
            "items": {
              "$ref": "#/types/nutanix:index%2FRoutesV2Link:RoutesV2Link"
            },
            "description": "A HATEOAS style link for the response. Each link contains a user-friendly name identifying the link and an address for retrieving the particular resource.\n"
          },
          "metadata": {
            "$ref": "#/types/nutanix:index%2FRoutesV2Metadata:RoutesV2Metadata",
            "description": "Metadata associated with this resource.\n"
          },
          "name": {
            "type": "string",
            "description": "Route name.\n"
          },
          "nextHop": {
            "$ref": "#/types/nutanix:index%2FRoutesV2NextHop:RoutesV2NextHop",
            "description": "Route nexthop.\n"
          },
          "priority": {
            "type": "integer",
            "description": "Route priority. A higher value implies greater preference is assigned to the route.\n"
          },
          "routeTableExtId": {
            "type": "string",
            "description": "Route table UUID\n"
          },
          "routeTableReference": {
            "type": "string",
            "description": "Route table reference.\n"
          },
          "routeType": {
            "type": "string",
            "description": "Route type. Acceptable values are \"STATIC\", \"LOCAL\", \"DYNAMIC\"\n"
          },
          "tenantId": {
            "type": "string",
            "description": "A globally unique identifier that represents the tenant that owns this entity\n"
          },
          "vpcReference": {
            "type": "string",
            "description": "VPC reference.\n"
          }
        },
        "type": "object"
      }
    },
    "nutanix:index/samlIdentityProvidersV2:SamlIdentityProvidersV2": {
      "properties": {
        "createdBy": {
          "type": "string"
        },
        "createdTime": {
          "type": "string"
        },
        "customAttributes": {
          "type": "array",
          "items": {
            "type": "string"
          }
        },
        "emailAttribute": {
          "type": "string"
        },
        "entityIssuer": {
          "type": "string"
        },
        "extId": {
          "type": "string"
        },
        "groupsAttribute": {
          "type": "string"
        },
        "groupsDelim": {
          "type": "string"
        },
        "idpMetadataUrl": {
          "type": "string"
        },
        "idpMetadataXml": {
          "type": "string"
        },
        "idpMetadatas": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FSamlIdentityProvidersV2IdpMetadata:SamlIdentityProvidersV2IdpMetadata"
          }
        },
        "isSignedAuthnReqEnabled": {
          "type": "boolean"
        },
        "lastUpdatedTime": {
          "type": "string"
        },
        "name": {
          "type": "string"
        },
        "usernameAttribute": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "createdBy",
        "createdTime",
        "customAttributes",
        "extId",
        "idpMetadataUrl",
        "idpMetadataXml",
        "idpMetadatas",
        "lastUpdatedTime",
        "name"
      ],
      "inputProperties": {
        "customAttributes": {
          "type": "array",
          "items": {
            "type": "string"
          }
        },
        "emailAttribute": {
          "type": "string"
        },
        "entityIssuer": {
          "type": "string"
        },
        "extId": {
          "type": "string"
        },
        "groupsAttribute": {
          "type": "string"
        },
        "groupsDelim": {
          "type": "string"
        },
        "idpMetadataUrl": {
          "type": "string"
        },
        "idpMetadataXml": {
          "type": "string"
        },
        "idpMetadatas": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FSamlIdentityProvidersV2IdpMetadata:SamlIdentityProvidersV2IdpMetadata"
          }
        },
        "isSignedAuthnReqEnabled": {
          "type": "boolean"
        },
        "name": {
          "type": "string"
        },
        "usernameAttribute": {
          "type": "string"
        }
      },
      "stateInputs": {
        "description": "Input properties used for looking up and filtering SamlIdentityProvidersV2 resources.\n",
        "properties": {
          "createdBy": {
            "type": "string"
          },
          "createdTime": {
            "type": "string"
          },
          "customAttributes": {
            "type": "array",
            "items": {
              "type": "string"
            }
          },
          "emailAttribute": {
            "type": "string"
          },
          "entityIssuer": {
            "type": "string"
          },
          "extId": {
            "type": "string"
          },
          "groupsAttribute": {
            "type": "string"
          },
          "groupsDelim": {
            "type": "string"
          },
          "idpMetadataUrl": {
            "type": "string"
          },
          "idpMetadataXml": {
            "type": "string"
          },
          "idpMetadatas": {
            "type": "array",
            "items": {
              "$ref": "#/types/nutanix:index%2FSamlIdentityProvidersV2IdpMetadata:SamlIdentityProvidersV2IdpMetadata"
            }
          },
          "isSignedAuthnReqEnabled": {
            "type": "boolean"
          },
          "lastUpdatedTime": {
            "type": "string"
          },
          "name": {
            "type": "string"
          },
          "usernameAttribute": {
            "type": "string"
          }
        },
        "type": "object"
      }
    },
    "nutanix:index/selfServiceAppCustomAction:SelfServiceAppCustomAction": {
      "description": "Triggers custom action execution using it's name in Self Service Application.\n\n## Example Usage\n\n### \n\n<!--Start PulumiCodeChooser -->\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as nutanix from \"@pierskarsenbarg/nutanix\";\n\nconst test = new nutanix.SelfServiceAppProvision(\"test\", {\n    bpName: \"NAME OF BLUEPRINT\",\n    appName: \"NAME OF APPLICATION\",\n    appDescription: \"DESCRIPTION OF APPLICATION\",\n});\nconst testSelfServiceAppCustomAction = new nutanix.SelfServiceAppCustomAction(\"test\", {\n    appName: test.appName,\n    actionName: \"NAME OF ACTION\",\n});\n```\n```python\nimport pulumi\nimport pulumi_nutanix as nutanix\n\ntest = nutanix.SelfServiceAppProvision(\"test\",\n    bp_name=\"NAME OF BLUEPRINT\",\n    app_name=\"NAME OF APPLICATION\",\n    app_description=\"DESCRIPTION OF APPLICATION\")\ntest_self_service_app_custom_action = nutanix.SelfServiceAppCustomAction(\"test\",\n    app_name=test.app_name,\n    action_name=\"NAME OF ACTION\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Nutanix = PiersKarsenbarg.Nutanix;\n\nreturn await Deployment.RunAsync(() => \n{\n    var test = new Nutanix.SelfServiceAppProvision(\"test\", new()\n    {\n        BpName = \"NAME OF BLUEPRINT\",\n        AppName = \"NAME OF APPLICATION\",\n        AppDescription = \"DESCRIPTION OF APPLICATION\",\n    });\n\n    var testSelfServiceAppCustomAction = new Nutanix.SelfServiceAppCustomAction(\"test\", new()\n    {\n        AppName = test.AppName,\n        ActionName = \"NAME OF ACTION\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pierskarsenbarg/pulumi-nutanix/sdk/go/nutanix\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\ttest, err := nutanix.NewSelfServiceAppProvision(ctx, \"test\", &nutanix.SelfServiceAppProvisionArgs{\n\t\t\tBpName:         pulumi.String(\"NAME OF BLUEPRINT\"),\n\t\t\tAppName:        pulumi.String(\"NAME OF APPLICATION\"),\n\t\t\tAppDescription: pulumi.String(\"DESCRIPTION OF APPLICATION\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = nutanix.NewSelfServiceAppCustomAction(ctx, \"test\", &nutanix.SelfServiceAppCustomActionArgs{\n\t\t\tAppName:    test.AppName,\n\t\t\tActionName: pulumi.String(\"NAME OF ACTION\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.nutanix.SelfServiceAppProvision;\nimport com.pulumi.nutanix.SelfServiceAppProvisionArgs;\nimport com.pulumi.nutanix.SelfServiceAppCustomAction;\nimport com.pulumi.nutanix.SelfServiceAppCustomActionArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var test = new SelfServiceAppProvision(\"test\", SelfServiceAppProvisionArgs.builder()\n            .bpName(\"NAME OF BLUEPRINT\")\n            .appName(\"NAME OF APPLICATION\")\n            .appDescription(\"DESCRIPTION OF APPLICATION\")\n            .build());\n\n        var testSelfServiceAppCustomAction = new SelfServiceAppCustomAction(\"testSelfServiceAppCustomAction\", SelfServiceAppCustomActionArgs.builder()\n            .appName(test.appName())\n            .actionName(\"NAME OF ACTION\")\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  test:\n    type: nutanix:SelfServiceAppProvision\n    properties:\n      bpName: NAME OF BLUEPRINT\n      appName: NAME OF APPLICATION\n      appDescription: DESCRIPTION OF APPLICATION\n  testSelfServiceAppCustomAction:\n    type: nutanix:SelfServiceAppCustomAction\n    name: test\n    properties:\n      appName: ${test.appName}\n      actionName: NAME OF ACTION\n```\n<!--End PulumiCodeChooser -->\n",
      "properties": {
        "actionName": {
          "type": "string",
          "description": "- (Required) The name of the action to run.\n\nBoth (<span pulumi-lang-nodejs=\"`appName`\" pulumi-lang-dotnet=\"`AppName`\" pulumi-lang-go=\"`appName`\" pulumi-lang-python=\"`app_name`\" pulumi-lang-yaml=\"`appName`\" pulumi-lang-java=\"`appName`\">`app_name`</span> and <span pulumi-lang-nodejs=\"`appUuid`\" pulumi-lang-dotnet=\"`AppUuid`\" pulumi-lang-go=\"`appUuid`\" pulumi-lang-python=\"`app_uuid`\" pulumi-lang-yaml=\"`appUuid`\" pulumi-lang-java=\"`appUuid`\">`app_uuid`</span>) are optional. You can provide either of them. But atleast one of them is required to make this resource work.\n"
        },
        "appName": {
          "type": "string",
          "description": "- (Optional) The name of the application.\n"
        },
        "appUuid": {
          "type": "string",
          "description": "- (Optional) The UUID of the application.\n"
        },
        "runlogUuid": {
          "type": "string",
          "description": "- (Computed) The UUID of the runlog associated with the execution of the custom action. This can be used to track the progress or status of the action execution.\n"
        }
      },
      "type": "object",
      "required": [
        "actionName",
        "runlogUuid"
      ],
      "inputProperties": {
        "actionName": {
          "type": "string",
          "description": "- (Required) The name of the action to run.\n\nBoth (<span pulumi-lang-nodejs=\"`appName`\" pulumi-lang-dotnet=\"`AppName`\" pulumi-lang-go=\"`appName`\" pulumi-lang-python=\"`app_name`\" pulumi-lang-yaml=\"`appName`\" pulumi-lang-java=\"`appName`\">`app_name`</span> and <span pulumi-lang-nodejs=\"`appUuid`\" pulumi-lang-dotnet=\"`AppUuid`\" pulumi-lang-go=\"`appUuid`\" pulumi-lang-python=\"`app_uuid`\" pulumi-lang-yaml=\"`appUuid`\" pulumi-lang-java=\"`appUuid`\">`app_uuid`</span>) are optional. You can provide either of them. But atleast one of them is required to make this resource work.\n"
        },
        "appName": {
          "type": "string",
          "description": "- (Optional) The name of the application.\n"
        },
        "appUuid": {
          "type": "string",
          "description": "- (Optional) The UUID of the application.\n"
        },
        "runlogUuid": {
          "type": "string",
          "description": "- (Computed) The UUID of the runlog associated with the execution of the custom action. This can be used to track the progress or status of the action execution.\n"
        }
      },
      "requiredInputs": [
        "actionName"
      ],
      "stateInputs": {
        "description": "Input properties used for looking up and filtering SelfServiceAppCustomAction resources.\n",
        "properties": {
          "actionName": {
            "type": "string",
            "description": "- (Required) The name of the action to run.\n\nBoth (<span pulumi-lang-nodejs=\"`appName`\" pulumi-lang-dotnet=\"`AppName`\" pulumi-lang-go=\"`appName`\" pulumi-lang-python=\"`app_name`\" pulumi-lang-yaml=\"`appName`\" pulumi-lang-java=\"`appName`\">`app_name`</span> and <span pulumi-lang-nodejs=\"`appUuid`\" pulumi-lang-dotnet=\"`AppUuid`\" pulumi-lang-go=\"`appUuid`\" pulumi-lang-python=\"`app_uuid`\" pulumi-lang-yaml=\"`appUuid`\" pulumi-lang-java=\"`appUuid`\">`app_uuid`</span>) are optional. You can provide either of them. But atleast one of them is required to make this resource work.\n"
          },
          "appName": {
            "type": "string",
            "description": "- (Optional) The name of the application.\n"
          },
          "appUuid": {
            "type": "string",
            "description": "- (Optional) The UUID of the application.\n"
          },
          "runlogUuid": {
            "type": "string",
            "description": "- (Computed) The UUID of the runlog associated with the execution of the custom action. This can be used to track the progress or status of the action execution.\n"
          }
        },
        "type": "object"
      }
    },
    "nutanix:index/selfServiceAppPatch:SelfServiceAppPatch": {
      "description": "Run the specified patch on the application by running patch action to update vm configuration, add nics, add disks, add/delete categories.\n\n## Example 1: Update VM Configuration\n\nThis will run set patch config action in application.\n\n<!--Start PulumiCodeChooser -->\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as nutanix from \"@pierskarsenbarg/nutanix\";\n\n// Provision Application\nconst test = new nutanix.SelfServiceAppProvision(\"test\", {\n    bpName: \"NAME OF BLUEPRINT\",\n    appName: \"NAME OF APPLICATION\",\n    appDescription: \"DESCRIPTION OF APPLICATION\",\n});\n// Run patch config (update config)\nconst testSelfServiceAppPatch = new nutanix.SelfServiceAppPatch(\"test\", {\n    appUuid: test.id,\n    patchName: \"NAME OF PATCH ACTION\",\n    configName: \"NAME OF PATCH CONFIG\",\n});\n```\n```python\nimport pulumi\nimport pulumi_nutanix as nutanix\n\n# Provision Application\ntest = nutanix.SelfServiceAppProvision(\"test\",\n    bp_name=\"NAME OF BLUEPRINT\",\n    app_name=\"NAME OF APPLICATION\",\n    app_description=\"DESCRIPTION OF APPLICATION\")\n# Run patch config (update config)\ntest_self_service_app_patch = nutanix.SelfServiceAppPatch(\"test\",\n    app_uuid=test.id,\n    patch_name=\"NAME OF PATCH ACTION\",\n    config_name=\"NAME OF PATCH CONFIG\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Nutanix = PiersKarsenbarg.Nutanix;\n\nreturn await Deployment.RunAsync(() => \n{\n    // Provision Application\n    var test = new Nutanix.SelfServiceAppProvision(\"test\", new()\n    {\n        BpName = \"NAME OF BLUEPRINT\",\n        AppName = \"NAME OF APPLICATION\",\n        AppDescription = \"DESCRIPTION OF APPLICATION\",\n    });\n\n    // Run patch config (update config)\n    var testSelfServiceAppPatch = new Nutanix.SelfServiceAppPatch(\"test\", new()\n    {\n        AppUuid = test.Id,\n        PatchName = \"NAME OF PATCH ACTION\",\n        ConfigName = \"NAME OF PATCH CONFIG\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pierskarsenbarg/pulumi-nutanix/sdk/go/nutanix\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t// Provision Application\n\t\ttest, err := nutanix.NewSelfServiceAppProvision(ctx, \"test\", &nutanix.SelfServiceAppProvisionArgs{\n\t\t\tBpName:         pulumi.String(\"NAME OF BLUEPRINT\"),\n\t\t\tAppName:        pulumi.String(\"NAME OF APPLICATION\"),\n\t\t\tAppDescription: pulumi.String(\"DESCRIPTION OF APPLICATION\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t// Run patch config (update config)\n\t\t_, err = nutanix.NewSelfServiceAppPatch(ctx, \"test\", &nutanix.SelfServiceAppPatchArgs{\n\t\t\tAppUuid:    test.ID(),\n\t\t\tPatchName:  pulumi.String(\"NAME OF PATCH ACTION\"),\n\t\t\tConfigName: pulumi.String(\"NAME OF PATCH CONFIG\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.nutanix.SelfServiceAppProvision;\nimport com.pulumi.nutanix.SelfServiceAppProvisionArgs;\nimport com.pulumi.nutanix.SelfServiceAppPatch;\nimport com.pulumi.nutanix.SelfServiceAppPatchArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        // Provision Application\n        var test = new SelfServiceAppProvision(\"test\", SelfServiceAppProvisionArgs.builder()\n            .bpName(\"NAME OF BLUEPRINT\")\n            .appName(\"NAME OF APPLICATION\")\n            .appDescription(\"DESCRIPTION OF APPLICATION\")\n            .build());\n\n        // Run patch config (update config)\n        var testSelfServiceAppPatch = new SelfServiceAppPatch(\"testSelfServiceAppPatch\", SelfServiceAppPatchArgs.builder()\n            .appUuid(test.id())\n            .patchName(\"NAME OF PATCH ACTION\")\n            .configName(\"NAME OF PATCH CONFIG\")\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  # Provision Application\n  test:\n    type: nutanix:SelfServiceAppProvision\n    properties:\n      bpName: NAME OF BLUEPRINT\n      appName: NAME OF APPLICATION\n      appDescription: DESCRIPTION OF APPLICATION\n  # Run patch config (update config)\n  testSelfServiceAppPatch:\n    type: nutanix:SelfServiceAppPatch\n    name: test\n    properties:\n      appUuid: ${test.id}\n      patchName: NAME OF PATCH ACTION\n      configName: NAME OF PATCH CONFIG\n```\n<!--End PulumiCodeChooser -->\n\n## Example 2: Update VM Configuration with runtime editable\n\n<!--Start PulumiCodeChooser -->\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as nutanix from \"@pierskarsenbarg/nutanix\";\n\n// Provision Application\nconst test = new nutanix.SelfServiceAppProvision(\"test\", {\n    bpName: \"NAME OF BLUEPRINT\",\n    appName: \"NAME OF APPLICATION\",\n    appDescription: \"DESCRIPTION OF APPLICATION\",\n});\n// Run patch config (update config)\nconst testSelfServiceAppPatch = new nutanix.SelfServiceAppPatch(\"test\", {\n    appUuid: test.id,\n    patchName: \"NAME OF PATCH ACTION\",\n    configName: \"NAME OF PATCH CONFIG\",\n    vmConfigs: [{\n        memorySizeMib: \"SIZE IN MiB\",\n        numSockets: \"vCPU count\",\n        numVcpusPerSocket: \"NUMBER OF CORES VCPU\",\n    }],\n});\n```\n```python\nimport pulumi\nimport pulumi_nutanix as nutanix\n\n# Provision Application\ntest = nutanix.SelfServiceAppProvision(\"test\",\n    bp_name=\"NAME OF BLUEPRINT\",\n    app_name=\"NAME OF APPLICATION\",\n    app_description=\"DESCRIPTION OF APPLICATION\")\n# Run patch config (update config)\ntest_self_service_app_patch = nutanix.SelfServiceAppPatch(\"test\",\n    app_uuid=test.id,\n    patch_name=\"NAME OF PATCH ACTION\",\n    config_name=\"NAME OF PATCH CONFIG\",\n    vm_configs=[{\n        \"memory_size_mib\": \"SIZE IN MiB\",\n        \"num_sockets\": \"vCPU count\",\n        \"num_vcpus_per_socket\": \"NUMBER OF CORES VCPU\",\n    }])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Nutanix = PiersKarsenbarg.Nutanix;\n\nreturn await Deployment.RunAsync(() => \n{\n    // Provision Application\n    var test = new Nutanix.SelfServiceAppProvision(\"test\", new()\n    {\n        BpName = \"NAME OF BLUEPRINT\",\n        AppName = \"NAME OF APPLICATION\",\n        AppDescription = \"DESCRIPTION OF APPLICATION\",\n    });\n\n    // Run patch config (update config)\n    var testSelfServiceAppPatch = new Nutanix.SelfServiceAppPatch(\"test\", new()\n    {\n        AppUuid = test.Id,\n        PatchName = \"NAME OF PATCH ACTION\",\n        ConfigName = \"NAME OF PATCH CONFIG\",\n        VmConfigs = new[]\n        {\n            new Nutanix.Inputs.SelfServiceAppPatchVmConfigArgs\n            {\n                MemorySizeMib = \"SIZE IN MiB\",\n                NumSockets = \"vCPU count\",\n                NumVcpusPerSocket = \"NUMBER OF CORES VCPU\",\n            },\n        },\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pierskarsenbarg/pulumi-nutanix/sdk/go/nutanix\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t// Provision Application\n\t\ttest, err := nutanix.NewSelfServiceAppProvision(ctx, \"test\", &nutanix.SelfServiceAppProvisionArgs{\n\t\t\tBpName:         pulumi.String(\"NAME OF BLUEPRINT\"),\n\t\t\tAppName:        pulumi.String(\"NAME OF APPLICATION\"),\n\t\t\tAppDescription: pulumi.String(\"DESCRIPTION OF APPLICATION\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t// Run patch config (update config)\n\t\t_, err = nutanix.NewSelfServiceAppPatch(ctx, \"test\", &nutanix.SelfServiceAppPatchArgs{\n\t\t\tAppUuid:    test.ID(),\n\t\t\tPatchName:  pulumi.String(\"NAME OF PATCH ACTION\"),\n\t\t\tConfigName: pulumi.String(\"NAME OF PATCH CONFIG\"),\n\t\t\tVmConfigs: nutanix.SelfServiceAppPatchVmConfigArray{\n\t\t\t\t&nutanix.SelfServiceAppPatchVmConfigArgs{\n\t\t\t\t\tMemorySizeMib:     pulumi.Int(\"SIZE IN MiB\"),\n\t\t\t\t\tNumSockets:        pulumi.Int(\"vCPU count\"),\n\t\t\t\t\tNumVcpusPerSocket: pulumi.Int(\"NUMBER OF CORES VCPU\"),\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.nutanix.SelfServiceAppProvision;\nimport com.pulumi.nutanix.SelfServiceAppProvisionArgs;\nimport com.pulumi.nutanix.SelfServiceAppPatch;\nimport com.pulumi.nutanix.SelfServiceAppPatchArgs;\nimport com.pulumi.nutanix.inputs.SelfServiceAppPatchVmConfigArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        // Provision Application\n        var test = new SelfServiceAppProvision(\"test\", SelfServiceAppProvisionArgs.builder()\n            .bpName(\"NAME OF BLUEPRINT\")\n            .appName(\"NAME OF APPLICATION\")\n            .appDescription(\"DESCRIPTION OF APPLICATION\")\n            .build());\n\n        // Run patch config (update config)\n        var testSelfServiceAppPatch = new SelfServiceAppPatch(\"testSelfServiceAppPatch\", SelfServiceAppPatchArgs.builder()\n            .appUuid(test.id())\n            .patchName(\"NAME OF PATCH ACTION\")\n            .configName(\"NAME OF PATCH CONFIG\")\n            .vmConfigs(SelfServiceAppPatchVmConfigArgs.builder()\n                .memorySizeMib(\"SIZE IN MiB\")\n                .numSockets(\"vCPU count\")\n                .numVcpusPerSocket(\"NUMBER OF CORES VCPU\")\n                .build())\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  # Provision Application\n  test:\n    type: nutanix:SelfServiceAppProvision\n    properties:\n      bpName: NAME OF BLUEPRINT\n      appName: NAME OF APPLICATION\n      appDescription: DESCRIPTION OF APPLICATION\n  # Run patch config (update config)\n  testSelfServiceAppPatch:\n    type: nutanix:SelfServiceAppPatch\n    name: test\n    properties:\n      appUuid: ${test.id}\n      patchName: NAME OF PATCH ACTION\n      configName: NAME OF PATCH CONFIG\n      vmConfigs:\n        - memorySizeMib: SIZE IN MiB\n          numSockets: vCPU count\n          numVcpusPerSocket: NUMBER OF CORES VCPU\n```\n<!--End PulumiCodeChooser -->\n\n## Example 3: Add Category\n\n<!--Start PulumiCodeChooser -->\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as nutanix from \"@pierskarsenbarg/nutanix\";\n\n// Provision Application\nconst test = new nutanix.SelfServiceAppProvision(\"test\", {\n    bpName: \"NAME OF BLUEPRINT\",\n    appName: \"NAME OF APPLICATION\",\n    appDescription: \"DESCRIPTION OF APPLICATION\",\n});\n// Run patch config (update config)\nconst testSelfServiceAppPatch = new nutanix.SelfServiceAppPatch(\"test\", {\n    appUuid: test.id,\n    patchName: \"NAME OF PATCH ACTION\",\n    configName: \"NAME OF PATCH CONFIG\",\n    categories: [{\n        value: \"CATEGORY TO BE ADDED (KEY:VALUE PAIR)\",\n        operation: \"add\",\n    }],\n});\n```\n```python\nimport pulumi\nimport pulumi_nutanix as nutanix\n\n# Provision Application\ntest = nutanix.SelfServiceAppProvision(\"test\",\n    bp_name=\"NAME OF BLUEPRINT\",\n    app_name=\"NAME OF APPLICATION\",\n    app_description=\"DESCRIPTION OF APPLICATION\")\n# Run patch config (update config)\ntest_self_service_app_patch = nutanix.SelfServiceAppPatch(\"test\",\n    app_uuid=test.id,\n    patch_name=\"NAME OF PATCH ACTION\",\n    config_name=\"NAME OF PATCH CONFIG\",\n    categories=[{\n        \"value\": \"CATEGORY TO BE ADDED (KEY:VALUE PAIR)\",\n        \"operation\": \"add\",\n    }])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Nutanix = PiersKarsenbarg.Nutanix;\n\nreturn await Deployment.RunAsync(() => \n{\n    // Provision Application\n    var test = new Nutanix.SelfServiceAppProvision(\"test\", new()\n    {\n        BpName = \"NAME OF BLUEPRINT\",\n        AppName = \"NAME OF APPLICATION\",\n        AppDescription = \"DESCRIPTION OF APPLICATION\",\n    });\n\n    // Run patch config (update config)\n    var testSelfServiceAppPatch = new Nutanix.SelfServiceAppPatch(\"test\", new()\n    {\n        AppUuid = test.Id,\n        PatchName = \"NAME OF PATCH ACTION\",\n        ConfigName = \"NAME OF PATCH CONFIG\",\n        Categories = new[]\n        {\n            new Nutanix.Inputs.SelfServiceAppPatchCategoryArgs\n            {\n                Value = \"CATEGORY TO BE ADDED (KEY:VALUE PAIR)\",\n                Operation = \"add\",\n            },\n        },\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pierskarsenbarg/pulumi-nutanix/sdk/go/nutanix\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t// Provision Application\n\t\ttest, err := nutanix.NewSelfServiceAppProvision(ctx, \"test\", &nutanix.SelfServiceAppProvisionArgs{\n\t\t\tBpName:         pulumi.String(\"NAME OF BLUEPRINT\"),\n\t\t\tAppName:        pulumi.String(\"NAME OF APPLICATION\"),\n\t\t\tAppDescription: pulumi.String(\"DESCRIPTION OF APPLICATION\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t// Run patch config (update config)\n\t\t_, err = nutanix.NewSelfServiceAppPatch(ctx, \"test\", &nutanix.SelfServiceAppPatchArgs{\n\t\t\tAppUuid:    test.ID(),\n\t\t\tPatchName:  pulumi.String(\"NAME OF PATCH ACTION\"),\n\t\t\tConfigName: pulumi.String(\"NAME OF PATCH CONFIG\"),\n\t\t\tCategories: nutanix.SelfServiceAppPatchCategoryArray{\n\t\t\t\t&nutanix.SelfServiceAppPatchCategoryArgs{\n\t\t\t\t\tValue:     pulumi.String(\"CATEGORY TO BE ADDED (KEY:VALUE PAIR)\"),\n\t\t\t\t\tOperation: pulumi.String(\"add\"),\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.nutanix.SelfServiceAppProvision;\nimport com.pulumi.nutanix.SelfServiceAppProvisionArgs;\nimport com.pulumi.nutanix.SelfServiceAppPatch;\nimport com.pulumi.nutanix.SelfServiceAppPatchArgs;\nimport com.pulumi.nutanix.inputs.SelfServiceAppPatchCategoryArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        // Provision Application\n        var test = new SelfServiceAppProvision(\"test\", SelfServiceAppProvisionArgs.builder()\n            .bpName(\"NAME OF BLUEPRINT\")\n            .appName(\"NAME OF APPLICATION\")\n            .appDescription(\"DESCRIPTION OF APPLICATION\")\n            .build());\n\n        // Run patch config (update config)\n        var testSelfServiceAppPatch = new SelfServiceAppPatch(\"testSelfServiceAppPatch\", SelfServiceAppPatchArgs.builder()\n            .appUuid(test.id())\n            .patchName(\"NAME OF PATCH ACTION\")\n            .configName(\"NAME OF PATCH CONFIG\")\n            .categories(SelfServiceAppPatchCategoryArgs.builder()\n                .value(\"CATEGORY TO BE ADDED (KEY:VALUE PAIR)\")\n                .operation(\"add\")\n                .build())\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  # Provision Application\n  test:\n    type: nutanix:SelfServiceAppProvision\n    properties:\n      bpName: NAME OF BLUEPRINT\n      appName: NAME OF APPLICATION\n      appDescription: DESCRIPTION OF APPLICATION\n  # Run patch config (update config)\n  testSelfServiceAppPatch:\n    type: nutanix:SelfServiceAppPatch\n    name: test\n    properties:\n      appUuid: ${test.id}\n      patchName: NAME OF PATCH ACTION\n      configName: NAME OF PATCH CONFIG\n      categories:\n        - value: CATEGORY TO BE ADDED (KEY:VALUE PAIR)\n          operation: add\n```\n<!--End PulumiCodeChooser -->\n\n## Example 4: Delete Category\n\n<!--Start PulumiCodeChooser -->\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as nutanix from \"@pierskarsenbarg/nutanix\";\n\n// Provision Application\nconst test = new nutanix.SelfServiceAppProvision(\"test\", {\n    bpName: \"NAME OF BLUEPRINT\",\n    appName: \"NAME OF APPLICATION\",\n    appDescription: \"DESCRIPTION OF APPLICATION\",\n});\n// Run patch config (update config)\nconst testSelfServiceAppPatch = new nutanix.SelfServiceAppPatch(\"test\", {\n    appUuid: test.id,\n    patchName: \"NAME OF PATCH ACTION\",\n    configName: \"NAME OF PATCH CONFIG\",\n    categories: [{\n        value: \"CATEGORY TO BE ADDED (KEY:VALUE PAIR)\",\n        operation: \"delete\",\n    }],\n});\n```\n```python\nimport pulumi\nimport pulumi_nutanix as nutanix\n\n# Provision Application\ntest = nutanix.SelfServiceAppProvision(\"test\",\n    bp_name=\"NAME OF BLUEPRINT\",\n    app_name=\"NAME OF APPLICATION\",\n    app_description=\"DESCRIPTION OF APPLICATION\")\n# Run patch config (update config)\ntest_self_service_app_patch = nutanix.SelfServiceAppPatch(\"test\",\n    app_uuid=test.id,\n    patch_name=\"NAME OF PATCH ACTION\",\n    config_name=\"NAME OF PATCH CONFIG\",\n    categories=[{\n        \"value\": \"CATEGORY TO BE ADDED (KEY:VALUE PAIR)\",\n        \"operation\": \"delete\",\n    }])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Nutanix = PiersKarsenbarg.Nutanix;\n\nreturn await Deployment.RunAsync(() => \n{\n    // Provision Application\n    var test = new Nutanix.SelfServiceAppProvision(\"test\", new()\n    {\n        BpName = \"NAME OF BLUEPRINT\",\n        AppName = \"NAME OF APPLICATION\",\n        AppDescription = \"DESCRIPTION OF APPLICATION\",\n    });\n\n    // Run patch config (update config)\n    var testSelfServiceAppPatch = new Nutanix.SelfServiceAppPatch(\"test\", new()\n    {\n        AppUuid = test.Id,\n        PatchName = \"NAME OF PATCH ACTION\",\n        ConfigName = \"NAME OF PATCH CONFIG\",\n        Categories = new[]\n        {\n            new Nutanix.Inputs.SelfServiceAppPatchCategoryArgs\n            {\n                Value = \"CATEGORY TO BE ADDED (KEY:VALUE PAIR)\",\n                Operation = \"delete\",\n            },\n        },\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pierskarsenbarg/pulumi-nutanix/sdk/go/nutanix\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t// Provision Application\n\t\ttest, err := nutanix.NewSelfServiceAppProvision(ctx, \"test\", &nutanix.SelfServiceAppProvisionArgs{\n\t\t\tBpName:         pulumi.String(\"NAME OF BLUEPRINT\"),\n\t\t\tAppName:        pulumi.String(\"NAME OF APPLICATION\"),\n\t\t\tAppDescription: pulumi.String(\"DESCRIPTION OF APPLICATION\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t// Run patch config (update config)\n\t\t_, err = nutanix.NewSelfServiceAppPatch(ctx, \"test\", &nutanix.SelfServiceAppPatchArgs{\n\t\t\tAppUuid:    test.ID(),\n\t\t\tPatchName:  pulumi.String(\"NAME OF PATCH ACTION\"),\n\t\t\tConfigName: pulumi.String(\"NAME OF PATCH CONFIG\"),\n\t\t\tCategories: nutanix.SelfServiceAppPatchCategoryArray{\n\t\t\t\t&nutanix.SelfServiceAppPatchCategoryArgs{\n\t\t\t\t\tValue:     pulumi.String(\"CATEGORY TO BE ADDED (KEY:VALUE PAIR)\"),\n\t\t\t\t\tOperation: pulumi.String(\"delete\"),\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.nutanix.SelfServiceAppProvision;\nimport com.pulumi.nutanix.SelfServiceAppProvisionArgs;\nimport com.pulumi.nutanix.SelfServiceAppPatch;\nimport com.pulumi.nutanix.SelfServiceAppPatchArgs;\nimport com.pulumi.nutanix.inputs.SelfServiceAppPatchCategoryArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        // Provision Application\n        var test = new SelfServiceAppProvision(\"test\", SelfServiceAppProvisionArgs.builder()\n            .bpName(\"NAME OF BLUEPRINT\")\n            .appName(\"NAME OF APPLICATION\")\n            .appDescription(\"DESCRIPTION OF APPLICATION\")\n            .build());\n\n        // Run patch config (update config)\n        var testSelfServiceAppPatch = new SelfServiceAppPatch(\"testSelfServiceAppPatch\", SelfServiceAppPatchArgs.builder()\n            .appUuid(test.id())\n            .patchName(\"NAME OF PATCH ACTION\")\n            .configName(\"NAME OF PATCH CONFIG\")\n            .categories(SelfServiceAppPatchCategoryArgs.builder()\n                .value(\"CATEGORY TO BE ADDED (KEY:VALUE PAIR)\")\n                .operation(\"delete\")\n                .build())\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  # Provision Application\n  test:\n    type: nutanix:SelfServiceAppProvision\n    properties:\n      bpName: NAME OF BLUEPRINT\n      appName: NAME OF APPLICATION\n      appDescription: DESCRIPTION OF APPLICATION\n  # Run patch config (update config)\n  testSelfServiceAppPatch:\n    type: nutanix:SelfServiceAppPatch\n    name: test\n    properties:\n      appUuid: ${test.id}\n      patchName: NAME OF PATCH ACTION\n      configName: NAME OF PATCH CONFIG\n      categories:\n        - value: CATEGORY TO BE ADDED (KEY:VALUE PAIR)\n          operation: delete\n```\n<!--End PulumiCodeChooser -->\n\n## Example 5: Add Disk\n\n<!--Start PulumiCodeChooser -->\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as nutanix from \"@pierskarsenbarg/nutanix\";\n\n// Provision Application\nconst test = new nutanix.SelfServiceAppProvision(\"test\", {\n    bpName: \"NAME OF BLUEPRINT\",\n    appName: \"NAME OF APPLICATION\",\n    appDescription: \"DESCRIPTION OF APPLICATION\",\n});\n// Run patch config (update config)\nconst testSelfServiceAppPatch = new nutanix.SelfServiceAppPatch(\"test\", {\n    appUuid: test.id,\n    patchName: \"NAME OF PATCH ACTION\",\n    configName: \"NAME OF PATCH CONFIG\",\n    disks: [{\n        diskSizeMib: \"SIZE OF DISK IN MiB\",\n        operation: \"add\",\n    }],\n});\n```\n```python\nimport pulumi\nimport pulumi_nutanix as nutanix\n\n# Provision Application\ntest = nutanix.SelfServiceAppProvision(\"test\",\n    bp_name=\"NAME OF BLUEPRINT\",\n    app_name=\"NAME OF APPLICATION\",\n    app_description=\"DESCRIPTION OF APPLICATION\")\n# Run patch config (update config)\ntest_self_service_app_patch = nutanix.SelfServiceAppPatch(\"test\",\n    app_uuid=test.id,\n    patch_name=\"NAME OF PATCH ACTION\",\n    config_name=\"NAME OF PATCH CONFIG\",\n    disks=[{\n        \"disk_size_mib\": \"SIZE OF DISK IN MiB\",\n        \"operation\": \"add\",\n    }])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Nutanix = PiersKarsenbarg.Nutanix;\n\nreturn await Deployment.RunAsync(() => \n{\n    // Provision Application\n    var test = new Nutanix.SelfServiceAppProvision(\"test\", new()\n    {\n        BpName = \"NAME OF BLUEPRINT\",\n        AppName = \"NAME OF APPLICATION\",\n        AppDescription = \"DESCRIPTION OF APPLICATION\",\n    });\n\n    // Run patch config (update config)\n    var testSelfServiceAppPatch = new Nutanix.SelfServiceAppPatch(\"test\", new()\n    {\n        AppUuid = test.Id,\n        PatchName = \"NAME OF PATCH ACTION\",\n        ConfigName = \"NAME OF PATCH CONFIG\",\n        Disks = new[]\n        {\n            new Nutanix.Inputs.SelfServiceAppPatchDiskArgs\n            {\n                DiskSizeMib = \"SIZE OF DISK IN MiB\",\n                Operation = \"add\",\n            },\n        },\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pierskarsenbarg/pulumi-nutanix/sdk/go/nutanix\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t// Provision Application\n\t\ttest, err := nutanix.NewSelfServiceAppProvision(ctx, \"test\", &nutanix.SelfServiceAppProvisionArgs{\n\t\t\tBpName:         pulumi.String(\"NAME OF BLUEPRINT\"),\n\t\t\tAppName:        pulumi.String(\"NAME OF APPLICATION\"),\n\t\t\tAppDescription: pulumi.String(\"DESCRIPTION OF APPLICATION\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t// Run patch config (update config)\n\t\t_, err = nutanix.NewSelfServiceAppPatch(ctx, \"test\", &nutanix.SelfServiceAppPatchArgs{\n\t\t\tAppUuid:    test.ID(),\n\t\t\tPatchName:  pulumi.String(\"NAME OF PATCH ACTION\"),\n\t\t\tConfigName: pulumi.String(\"NAME OF PATCH CONFIG\"),\n\t\t\tDisks: nutanix.SelfServiceAppPatchDiskArray{\n\t\t\t\t&nutanix.SelfServiceAppPatchDiskArgs{\n\t\t\t\t\tDiskSizeMib: pulumi.Int(\"SIZE OF DISK IN MiB\"),\n\t\t\t\t\tOperation:   pulumi.String(\"add\"),\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.nutanix.SelfServiceAppProvision;\nimport com.pulumi.nutanix.SelfServiceAppProvisionArgs;\nimport com.pulumi.nutanix.SelfServiceAppPatch;\nimport com.pulumi.nutanix.SelfServiceAppPatchArgs;\nimport com.pulumi.nutanix.inputs.SelfServiceAppPatchDiskArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        // Provision Application\n        var test = new SelfServiceAppProvision(\"test\", SelfServiceAppProvisionArgs.builder()\n            .bpName(\"NAME OF BLUEPRINT\")\n            .appName(\"NAME OF APPLICATION\")\n            .appDescription(\"DESCRIPTION OF APPLICATION\")\n            .build());\n\n        // Run patch config (update config)\n        var testSelfServiceAppPatch = new SelfServiceAppPatch(\"testSelfServiceAppPatch\", SelfServiceAppPatchArgs.builder()\n            .appUuid(test.id())\n            .patchName(\"NAME OF PATCH ACTION\")\n            .configName(\"NAME OF PATCH CONFIG\")\n            .disks(SelfServiceAppPatchDiskArgs.builder()\n                .diskSizeMib(\"SIZE OF DISK IN MiB\")\n                .operation(\"add\")\n                .build())\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  # Provision Application\n  test:\n    type: nutanix:SelfServiceAppProvision\n    properties:\n      bpName: NAME OF BLUEPRINT\n      appName: NAME OF APPLICATION\n      appDescription: DESCRIPTION OF APPLICATION\n  # Run patch config (update config)\n  testSelfServiceAppPatch:\n    type: nutanix:SelfServiceAppPatch\n    name: test\n    properties:\n      appUuid: ${test.id}\n      patchName: NAME OF PATCH ACTION\n      configName: NAME OF PATCH CONFIG\n      disks:\n        - diskSizeMib: SIZE OF DISK IN MiB\n          operation: add\n```\n<!--End PulumiCodeChooser -->\n\n## Example 6: Add Nic\n\n<!--Start PulumiCodeChooser -->\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as nutanix from \"@pierskarsenbarg/nutanix\";\n\n// Provision Application\nconst test = new nutanix.SelfServiceAppProvision(\"test\", {\n    bpName: \"NAME OF BLUEPRINT\",\n    appName: \"NAME OF APPLICATION\",\n    appDescription: \"DESCRIPTION OF APPLICATION\",\n});\n// Run patch config (update config)\nconst testSelfServiceAppPatch = new nutanix.SelfServiceAppPatch(\"test\", {\n    appUuid: test.id,\n    patchName: \"NAME OF PATCH ACTION\",\n    configName: \"NAME OF PATCH CONFIG\",\n    nics: [{\n        index: \"DUMMY INDEX VALUE\",\n        operation: \"add\",\n        subnetUuid: \"VALID SUBNET UUID IN PROJECT ATTACHED TO APP\",\n    }],\n});\n```\n```python\nimport pulumi\nimport pulumi_nutanix as nutanix\n\n# Provision Application\ntest = nutanix.SelfServiceAppProvision(\"test\",\n    bp_name=\"NAME OF BLUEPRINT\",\n    app_name=\"NAME OF APPLICATION\",\n    app_description=\"DESCRIPTION OF APPLICATION\")\n# Run patch config (update config)\ntest_self_service_app_patch = nutanix.SelfServiceAppPatch(\"test\",\n    app_uuid=test.id,\n    patch_name=\"NAME OF PATCH ACTION\",\n    config_name=\"NAME OF PATCH CONFIG\",\n    nics=[{\n        \"index\": \"DUMMY INDEX VALUE\",\n        \"operation\": \"add\",\n        \"subnet_uuid\": \"VALID SUBNET UUID IN PROJECT ATTACHED TO APP\",\n    }])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Nutanix = PiersKarsenbarg.Nutanix;\n\nreturn await Deployment.RunAsync(() => \n{\n    // Provision Application\n    var test = new Nutanix.SelfServiceAppProvision(\"test\", new()\n    {\n        BpName = \"NAME OF BLUEPRINT\",\n        AppName = \"NAME OF APPLICATION\",\n        AppDescription = \"DESCRIPTION OF APPLICATION\",\n    });\n\n    // Run patch config (update config)\n    var testSelfServiceAppPatch = new Nutanix.SelfServiceAppPatch(\"test\", new()\n    {\n        AppUuid = test.Id,\n        PatchName = \"NAME OF PATCH ACTION\",\n        ConfigName = \"NAME OF PATCH CONFIG\",\n        Nics = new[]\n        {\n            new Nutanix.Inputs.SelfServiceAppPatchNicArgs\n            {\n                Index = \"DUMMY INDEX VALUE\",\n                Operation = \"add\",\n                SubnetUuid = \"VALID SUBNET UUID IN PROJECT ATTACHED TO APP\",\n            },\n        },\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pierskarsenbarg/pulumi-nutanix/sdk/go/nutanix\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t// Provision Application\n\t\ttest, err := nutanix.NewSelfServiceAppProvision(ctx, \"test\", &nutanix.SelfServiceAppProvisionArgs{\n\t\t\tBpName:         pulumi.String(\"NAME OF BLUEPRINT\"),\n\t\t\tAppName:        pulumi.String(\"NAME OF APPLICATION\"),\n\t\t\tAppDescription: pulumi.String(\"DESCRIPTION OF APPLICATION\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t// Run patch config (update config)\n\t\t_, err = nutanix.NewSelfServiceAppPatch(ctx, \"test\", &nutanix.SelfServiceAppPatchArgs{\n\t\t\tAppUuid:    test.ID(),\n\t\t\tPatchName:  pulumi.String(\"NAME OF PATCH ACTION\"),\n\t\t\tConfigName: pulumi.String(\"NAME OF PATCH CONFIG\"),\n\t\t\tNics: nutanix.SelfServiceAppPatchNicArray{\n\t\t\t\t&nutanix.SelfServiceAppPatchNicArgs{\n\t\t\t\t\tIndex:      pulumi.Int(\"DUMMY INDEX VALUE\"),\n\t\t\t\t\tOperation:  pulumi.String(\"add\"),\n\t\t\t\t\tSubnetUuid: pulumi.String(\"VALID SUBNET UUID IN PROJECT ATTACHED TO APP\"),\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.nutanix.SelfServiceAppProvision;\nimport com.pulumi.nutanix.SelfServiceAppProvisionArgs;\nimport com.pulumi.nutanix.SelfServiceAppPatch;\nimport com.pulumi.nutanix.SelfServiceAppPatchArgs;\nimport com.pulumi.nutanix.inputs.SelfServiceAppPatchNicArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        // Provision Application\n        var test = new SelfServiceAppProvision(\"test\", SelfServiceAppProvisionArgs.builder()\n            .bpName(\"NAME OF BLUEPRINT\")\n            .appName(\"NAME OF APPLICATION\")\n            .appDescription(\"DESCRIPTION OF APPLICATION\")\n            .build());\n\n        // Run patch config (update config)\n        var testSelfServiceAppPatch = new SelfServiceAppPatch(\"testSelfServiceAppPatch\", SelfServiceAppPatchArgs.builder()\n            .appUuid(test.id())\n            .patchName(\"NAME OF PATCH ACTION\")\n            .configName(\"NAME OF PATCH CONFIG\")\n            .nics(SelfServiceAppPatchNicArgs.builder()\n                .index(\"DUMMY INDEX VALUE\")\n                .operation(\"add\")\n                .subnetUuid(\"VALID SUBNET UUID IN PROJECT ATTACHED TO APP\")\n                .build())\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  # Provision Application\n  test:\n    type: nutanix:SelfServiceAppProvision\n    properties:\n      bpName: NAME OF BLUEPRINT\n      appName: NAME OF APPLICATION\n      appDescription: DESCRIPTION OF APPLICATION\n  # Run patch config (update config)\n  testSelfServiceAppPatch:\n    type: nutanix:SelfServiceAppPatch\n    name: test\n    properties:\n      appUuid: ${test.id}\n      patchName: NAME OF PATCH ACTION\n      configName: NAME OF PATCH CONFIG\n      nics:\n        - index: DUMMY INDEX VALUE\n          operation: add\n          subnetUuid: VALID SUBNET UUID IN PROJECT ATTACHED TO APP\n```\n<!--End PulumiCodeChooser -->\n",
      "properties": {
        "appUuid": {
          "type": "string",
          "description": "- (Required) The UUID of the application.\n"
        },
        "categories": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FSelfServiceAppPatchCategory:SelfServiceAppPatchCategory"
          }
        },
        "configName": {
          "type": "string",
          "description": "- (Required) The name of the patch configuration. (<b>Same as<span pulumi-lang-nodejs=\" patchName \" pulumi-lang-dotnet=\" PatchName \" pulumi-lang-go=\" patchName \" pulumi-lang-python=\" patch_name \" pulumi-lang-yaml=\" patchName \" pulumi-lang-java=\" patchName \"> patch_name </span>for SINGLE VM)</b>\n"
        },
        "disks": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FSelfServiceAppPatchDisk:SelfServiceAppPatchDisk"
          }
        },
        "nics": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FSelfServiceAppPatchNic:SelfServiceAppPatchNic"
          }
        },
        "patchName": {
          "type": "string",
          "description": "- (Required) The name of the patch to be applied. This is used to identify the action name which needs to be executed to update an application.\n"
        },
        "runlogUuid": {
          "type": "string",
          "description": "- (Computed) The UUID of the runlog that records the patch operation's execution details.\n"
        },
        "vmConfigs": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FSelfServiceAppPatchVmConfig:SelfServiceAppPatchVmConfig"
          }
        }
      },
      "type": "object",
      "required": [
        "appUuid",
        "configName",
        "patchName",
        "runlogUuid"
      ],
      "inputProperties": {
        "appUuid": {
          "type": "string",
          "description": "- (Required) The UUID of the application.\n"
        },
        "categories": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FSelfServiceAppPatchCategory:SelfServiceAppPatchCategory"
          }
        },
        "configName": {
          "type": "string",
          "description": "- (Required) The name of the patch configuration. (<b>Same as<span pulumi-lang-nodejs=\" patchName \" pulumi-lang-dotnet=\" PatchName \" pulumi-lang-go=\" patchName \" pulumi-lang-python=\" patch_name \" pulumi-lang-yaml=\" patchName \" pulumi-lang-java=\" patchName \"> patch_name </span>for SINGLE VM)</b>\n"
        },
        "disks": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FSelfServiceAppPatchDisk:SelfServiceAppPatchDisk"
          }
        },
        "nics": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FSelfServiceAppPatchNic:SelfServiceAppPatchNic"
          }
        },
        "patchName": {
          "type": "string",
          "description": "- (Required) The name of the patch to be applied. This is used to identify the action name which needs to be executed to update an application.\n"
        },
        "runlogUuid": {
          "type": "string",
          "description": "- (Computed) The UUID of the runlog that records the patch operation's execution details.\n"
        },
        "vmConfigs": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FSelfServiceAppPatchVmConfig:SelfServiceAppPatchVmConfig"
          }
        }
      },
      "requiredInputs": [
        "appUuid",
        "configName",
        "patchName"
      ],
      "stateInputs": {
        "description": "Input properties used for looking up and filtering SelfServiceAppPatch resources.\n",
        "properties": {
          "appUuid": {
            "type": "string",
            "description": "- (Required) The UUID of the application.\n"
          },
          "categories": {
            "type": "array",
            "items": {
              "$ref": "#/types/nutanix:index%2FSelfServiceAppPatchCategory:SelfServiceAppPatchCategory"
            }
          },
          "configName": {
            "type": "string",
            "description": "- (Required) The name of the patch configuration. (<b>Same as<span pulumi-lang-nodejs=\" patchName \" pulumi-lang-dotnet=\" PatchName \" pulumi-lang-go=\" patchName \" pulumi-lang-python=\" patch_name \" pulumi-lang-yaml=\" patchName \" pulumi-lang-java=\" patchName \"> patch_name </span>for SINGLE VM)</b>\n"
          },
          "disks": {
            "type": "array",
            "items": {
              "$ref": "#/types/nutanix:index%2FSelfServiceAppPatchDisk:SelfServiceAppPatchDisk"
            }
          },
          "nics": {
            "type": "array",
            "items": {
              "$ref": "#/types/nutanix:index%2FSelfServiceAppPatchNic:SelfServiceAppPatchNic"
            }
          },
          "patchName": {
            "type": "string",
            "description": "- (Required) The name of the patch to be applied. This is used to identify the action name which needs to be executed to update an application.\n"
          },
          "runlogUuid": {
            "type": "string",
            "description": "- (Computed) The UUID of the runlog that records the patch operation's execution details.\n"
          },
          "vmConfigs": {
            "type": "array",
            "items": {
              "$ref": "#/types/nutanix:index%2FSelfServiceAppPatchVmConfig:SelfServiceAppPatchVmConfig"
            }
          }
        },
        "type": "object"
      }
    },
    "nutanix:index/selfServiceAppProvision:SelfServiceAppProvision": {
      "properties": {
        "action": {
          "type": "string",
          "description": "- (Optional) System action to trigger after provisioning. Valid values: [\"start\", \"stop\", \"restart\"]\n"
        },
        "actions": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FSelfServiceAppProvisionAction:SelfServiceAppProvisionAction"
          }
        },
        "apiVersion": {
          "type": "string",
          "description": "- (Computed) API version used.\n"
        },
        "appDescription": {
          "type": "string",
          "description": "- (Optional) The description of application.\n\nBoth are <span pulumi-lang-nodejs=\"`bpName`\" pulumi-lang-dotnet=\"`BpName`\" pulumi-lang-go=\"`bpName`\" pulumi-lang-python=\"`bp_name`\" pulumi-lang-yaml=\"`bpName`\" pulumi-lang-java=\"`bpName`\">`bp_name`</span> and <span pulumi-lang-nodejs=\"`bpUuid`\" pulumi-lang-dotnet=\"`BpUuid`\" pulumi-lang-go=\"`bpUuid`\" pulumi-lang-python=\"`bp_uuid`\" pulumi-lang-yaml=\"`bpUuid`\" pulumi-lang-java=\"`bpUuid`\">`bp_uuid`</span> are optional but atleast one of them to be provided for this resource to work.\n"
        },
        "appName": {
          "type": "string",
          "description": "- (Required) The name of the application you want to set.\n"
        },
        "appSummaries": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FSelfServiceAppProvisionAppSummary:SelfServiceAppProvisionAppSummary"
          }
        },
        "bpName": {
          "type": "string",
          "description": "- (Optional) The name of the blueprint to launch.\n"
        },
        "bpUuid": {
          "type": "string",
          "description": "- (Optional) The UUID of the blueprint to launch.\n"
        },
        "runtimeEditables": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FSelfServiceAppProvisionRuntimeEditable:SelfServiceAppProvisionRuntimeEditable"
          }
        },
        "softDelete": {
          "type": "boolean",
          "description": "- (Optional, Default: false) If true, the application is soft-deleted when the resource is destroyed.\n"
        },
        "spec": {
          "type": "string",
          "description": "- (Computed) Application specification (JSON string).\n"
        },
        "state": {
          "type": "string",
          "description": "- (Computed) state of the application (e.g. running, stopped)\n"
        },
        "status": {
          "type": "string",
          "description": "- (Computed) Application status coming as response from server.\n"
        },
        "vms": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FSelfServiceAppProvisionVm:SelfServiceAppProvisionVm"
          }
        }
      },
      "type": "object",
      "required": [
        "actions",
        "apiVersion",
        "appName",
        "appSummaries",
        "spec",
        "state",
        "status",
        "vms"
      ],
      "inputProperties": {
        "action": {
          "type": "string",
          "description": "- (Optional) System action to trigger after provisioning. Valid values: [\"start\", \"stop\", \"restart\"]\n"
        },
        "appDescription": {
          "type": "string",
          "description": "- (Optional) The description of application.\n\nBoth are <span pulumi-lang-nodejs=\"`bpName`\" pulumi-lang-dotnet=\"`BpName`\" pulumi-lang-go=\"`bpName`\" pulumi-lang-python=\"`bp_name`\" pulumi-lang-yaml=\"`bpName`\" pulumi-lang-java=\"`bpName`\">`bp_name`</span> and <span pulumi-lang-nodejs=\"`bpUuid`\" pulumi-lang-dotnet=\"`BpUuid`\" pulumi-lang-go=\"`bpUuid`\" pulumi-lang-python=\"`bp_uuid`\" pulumi-lang-yaml=\"`bpUuid`\" pulumi-lang-java=\"`bpUuid`\">`bp_uuid`</span> are optional but atleast one of them to be provided for this resource to work.\n"
        },
        "appName": {
          "type": "string",
          "description": "- (Required) The name of the application you want to set.\n"
        },
        "bpName": {
          "type": "string",
          "description": "- (Optional) The name of the blueprint to launch.\n"
        },
        "bpUuid": {
          "type": "string",
          "description": "- (Optional) The UUID of the blueprint to launch.\n"
        },
        "runtimeEditables": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FSelfServiceAppProvisionRuntimeEditable:SelfServiceAppProvisionRuntimeEditable"
          }
        },
        "softDelete": {
          "type": "boolean",
          "description": "- (Optional, Default: false) If true, the application is soft-deleted when the resource is destroyed.\n"
        }
      },
      "requiredInputs": [
        "appName"
      ],
      "stateInputs": {
        "description": "Input properties used for looking up and filtering SelfServiceAppProvision resources.\n",
        "properties": {
          "action": {
            "type": "string",
            "description": "- (Optional) System action to trigger after provisioning. Valid values: [\"start\", \"stop\", \"restart\"]\n"
          },
          "actions": {
            "type": "array",
            "items": {
              "$ref": "#/types/nutanix:index%2FSelfServiceAppProvisionAction:SelfServiceAppProvisionAction"
            }
          },
          "apiVersion": {
            "type": "string",
            "description": "- (Computed) API version used.\n"
          },
          "appDescription": {
            "type": "string",
            "description": "- (Optional) The description of application.\n\nBoth are <span pulumi-lang-nodejs=\"`bpName`\" pulumi-lang-dotnet=\"`BpName`\" pulumi-lang-go=\"`bpName`\" pulumi-lang-python=\"`bp_name`\" pulumi-lang-yaml=\"`bpName`\" pulumi-lang-java=\"`bpName`\">`bp_name`</span> and <span pulumi-lang-nodejs=\"`bpUuid`\" pulumi-lang-dotnet=\"`BpUuid`\" pulumi-lang-go=\"`bpUuid`\" pulumi-lang-python=\"`bp_uuid`\" pulumi-lang-yaml=\"`bpUuid`\" pulumi-lang-java=\"`bpUuid`\">`bp_uuid`</span> are optional but atleast one of them to be provided for this resource to work.\n"
          },
          "appName": {
            "type": "string",
            "description": "- (Required) The name of the application you want to set.\n"
          },
          "appSummaries": {
            "type": "array",
            "items": {
              "$ref": "#/types/nutanix:index%2FSelfServiceAppProvisionAppSummary:SelfServiceAppProvisionAppSummary"
            }
          },
          "bpName": {
            "type": "string",
            "description": "- (Optional) The name of the blueprint to launch.\n"
          },
          "bpUuid": {
            "type": "string",
            "description": "- (Optional) The UUID of the blueprint to launch.\n"
          },
          "runtimeEditables": {
            "type": "array",
            "items": {
              "$ref": "#/types/nutanix:index%2FSelfServiceAppProvisionRuntimeEditable:SelfServiceAppProvisionRuntimeEditable"
            }
          },
          "softDelete": {
            "type": "boolean",
            "description": "- (Optional, Default: false) If true, the application is soft-deleted when the resource is destroyed.\n"
          },
          "spec": {
            "type": "string",
            "description": "- (Computed) Application specification (JSON string).\n"
          },
          "state": {
            "type": "string",
            "description": "- (Computed) state of the application (e.g. running, stopped)\n"
          },
          "status": {
            "type": "string",
            "description": "- (Computed) Application status coming as response from server.\n"
          },
          "vms": {
            "type": "array",
            "items": {
              "$ref": "#/types/nutanix:index%2FSelfServiceAppProvisionVm:SelfServiceAppProvisionVm"
            }
          }
        },
        "type": "object"
      }
    },
    "nutanix:index/selfServiceAppRecoveryPoint:SelfServiceAppRecoveryPoint": {
      "description": "Run snapshot action in application to create recovery point.\n\n## Example Usage\n\n<!--Start PulumiCodeChooser -->\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as nutanix from \"@pierskarsenbarg/nutanix\";\n\nconst test = new nutanix.SelfServiceAppRecoveryPoint(\"test\", {\n    appName: \"NAME OF APPLICATION\",\n    actionName: \"SNAPSHOT ACTION NAME\",\n    recoveryPointName: \"RECOVERY POINT NAME\",\n});\n```\n```python\nimport pulumi\nimport pulumi_nutanix as nutanix\n\ntest = nutanix.SelfServiceAppRecoveryPoint(\"test\",\n    app_name=\"NAME OF APPLICATION\",\n    action_name=\"SNAPSHOT ACTION NAME\",\n    recovery_point_name=\"RECOVERY POINT NAME\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Nutanix = PiersKarsenbarg.Nutanix;\n\nreturn await Deployment.RunAsync(() => \n{\n    var test = new Nutanix.SelfServiceAppRecoveryPoint(\"test\", new()\n    {\n        AppName = \"NAME OF APPLICATION\",\n        ActionName = \"SNAPSHOT ACTION NAME\",\n        RecoveryPointName = \"RECOVERY POINT NAME\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pierskarsenbarg/pulumi-nutanix/sdk/go/nutanix\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := nutanix.NewSelfServiceAppRecoveryPoint(ctx, \"test\", &nutanix.SelfServiceAppRecoveryPointArgs{\n\t\t\tAppName:           pulumi.String(\"NAME OF APPLICATION\"),\n\t\t\tActionName:        pulumi.String(\"SNAPSHOT ACTION NAME\"),\n\t\t\tRecoveryPointName: pulumi.String(\"RECOVERY POINT NAME\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.nutanix.SelfServiceAppRecoveryPoint;\nimport com.pulumi.nutanix.SelfServiceAppRecoveryPointArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var test = new SelfServiceAppRecoveryPoint(\"test\", SelfServiceAppRecoveryPointArgs.builder()\n            .appName(\"NAME OF APPLICATION\")\n            .actionName(\"SNAPSHOT ACTION NAME\")\n            .recoveryPointName(\"RECOVERY POINT NAME\")\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  test:\n    type: nutanix:SelfServiceAppRecoveryPoint\n    properties:\n      appName: NAME OF APPLICATION\n      actionName: SNAPSHOT ACTION NAME\n      recoveryPointName: RECOVERY POINT NAME\n```\n<!--End PulumiCodeChooser -->\n",
      "properties": {
        "actionName": {
          "type": "string",
          "description": "- (Required) The name of the snapshot action to trigger.\n"
        },
        "appName": {
          "type": "string",
          "description": "- (Optional) The name of the application\n"
        },
        "appUuid": {
          "type": "string",
          "description": "- (Required) The UUID of the application.\n\nBoth (<span pulumi-lang-nodejs=\"`appName`\" pulumi-lang-dotnet=\"`AppName`\" pulumi-lang-go=\"`appName`\" pulumi-lang-python=\"`app_name`\" pulumi-lang-yaml=\"`appName`\" pulumi-lang-java=\"`appName`\">`app_name`</span> and <span pulumi-lang-nodejs=\"`appUuid`\" pulumi-lang-dotnet=\"`AppUuid`\" pulumi-lang-go=\"`appUuid`\" pulumi-lang-python=\"`app_uuid`\" pulumi-lang-yaml=\"`appUuid`\" pulumi-lang-java=\"`appUuid`\">`app_uuid`</span>) are optional but atleast one of them should be provided for resource to work.\n"
        },
        "recoveryPointName": {
          "type": "string",
          "description": "- (Required) The name of recovery point.\n"
        }
      },
      "type": "object",
      "required": [
        "actionName"
      ],
      "inputProperties": {
        "actionName": {
          "type": "string",
          "description": "- (Required) The name of the snapshot action to trigger.\n"
        },
        "appName": {
          "type": "string",
          "description": "- (Optional) The name of the application\n"
        },
        "appUuid": {
          "type": "string",
          "description": "- (Required) The UUID of the application.\n\nBoth (<span pulumi-lang-nodejs=\"`appName`\" pulumi-lang-dotnet=\"`AppName`\" pulumi-lang-go=\"`appName`\" pulumi-lang-python=\"`app_name`\" pulumi-lang-yaml=\"`appName`\" pulumi-lang-java=\"`appName`\">`app_name`</span> and <span pulumi-lang-nodejs=\"`appUuid`\" pulumi-lang-dotnet=\"`AppUuid`\" pulumi-lang-go=\"`appUuid`\" pulumi-lang-python=\"`app_uuid`\" pulumi-lang-yaml=\"`appUuid`\" pulumi-lang-java=\"`appUuid`\">`app_uuid`</span>) are optional but atleast one of them should be provided for resource to work.\n"
        },
        "recoveryPointName": {
          "type": "string",
          "description": "- (Required) The name of recovery point.\n"
        }
      },
      "requiredInputs": [
        "actionName"
      ],
      "stateInputs": {
        "description": "Input properties used for looking up and filtering SelfServiceAppRecoveryPoint resources.\n",
        "properties": {
          "actionName": {
            "type": "string",
            "description": "- (Required) The name of the snapshot action to trigger.\n"
          },
          "appName": {
            "type": "string",
            "description": "- (Optional) The name of the application\n"
          },
          "appUuid": {
            "type": "string",
            "description": "- (Required) The UUID of the application.\n\nBoth (<span pulumi-lang-nodejs=\"`appName`\" pulumi-lang-dotnet=\"`AppName`\" pulumi-lang-go=\"`appName`\" pulumi-lang-python=\"`app_name`\" pulumi-lang-yaml=\"`appName`\" pulumi-lang-java=\"`appName`\">`app_name`</span> and <span pulumi-lang-nodejs=\"`appUuid`\" pulumi-lang-dotnet=\"`AppUuid`\" pulumi-lang-go=\"`appUuid`\" pulumi-lang-python=\"`app_uuid`\" pulumi-lang-yaml=\"`appUuid`\" pulumi-lang-java=\"`appUuid`\">`app_uuid`</span>) are optional but atleast one of them should be provided for resource to work.\n"
          },
          "recoveryPointName": {
            "type": "string",
            "description": "- (Required) The name of recovery point.\n"
          }
        },
        "type": "object"
      }
    },
    "nutanix:index/selfServiceAppRestore:SelfServiceAppRestore": {
      "description": "Run restore action in application to restore from recovery point.\n\n## Example Usage\n\n<!--Start PulumiCodeChooser -->\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as nutanix from \"@pierskarsenbarg/nutanix\";\n\nconst test = new nutanix.SelfServiceAppRecoveryPoint(\"test\", {\n    appName: \"NAME OF APPLICATION\",\n    actionName: \"SNAPSHOT ACTION NAME\",\n    recoveryPointName: \"RECOVERY POINT NAME\",\n});\n// Read available recovery points in app\nconst snapshots = nutanix.getSelfServiceAppSnapshots({\n    appName: \"NAME OF APPLICATION\",\n    length: 250,\n    offset: 0,\n});\nconst snapshotUuid = snapshots.then(snapshots => .filter(snapshot => snapshot.name == \"SNAPSHOT ACTION NAME\").map(snapshot => (snapshot.uuid))[0]);\n// Restore from recovery point\nconst testSelfServiceAppRestore = new nutanix.SelfServiceAppRestore(\"test\", {\n    restoreActionName: \"RESTORE ACTION NAME\",\n    appName: \"NAME OF APPLICATION\",\n    snapshotUuid: snapshotUuid,\n});\n```\n```python\nimport pulumi\nimport pulumi_nutanix as nutanix\n\ntest = nutanix.SelfServiceAppRecoveryPoint(\"test\",\n    app_name=\"NAME OF APPLICATION\",\n    action_name=\"SNAPSHOT ACTION NAME\",\n    recovery_point_name=\"RECOVERY POINT NAME\")\n# Read available recovery points in app\nsnapshots = nutanix.get_self_service_app_snapshots(app_name=\"NAME OF APPLICATION\",\n    length=250,\n    offset=0)\nsnapshot_uuid = [snapshot.uuid for snapshot in snapshots.entities if snapshot.name == \"SNAPSHOT ACTION NAME\"][0]\n# Restore from recovery point\ntest_self_service_app_restore = nutanix.SelfServiceAppRestore(\"test\",\n    restore_action_name=\"RESTORE ACTION NAME\",\n    app_name=\"NAME OF APPLICATION\",\n    snapshot_uuid=snapshot_uuid)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Nutanix = PiersKarsenbarg.Nutanix;\nusing Nutanix = Pulumi.Nutanix;\n\nreturn await Deployment.RunAsync(() => \n{\n    var test = new Nutanix.SelfServiceAppRecoveryPoint(\"test\", new()\n    {\n        AppName = \"NAME OF APPLICATION\",\n        ActionName = \"SNAPSHOT ACTION NAME\",\n        RecoveryPointName = \"RECOVERY POINT NAME\",\n    });\n\n    // Read available recovery points in app\n    var snapshots = Nutanix.GetSelfServiceAppSnapshots.Invoke(new()\n    {\n        AppName = \"NAME OF APPLICATION\",\n        Length = 250,\n        Offset = 0,\n    });\n\n    var snapshotUuid = .Where(snapshot => snapshot.Name == \"SNAPSHOT ACTION NAME\").Select(snapshot => \n    {\n        return snapshot.Uuid;\n    }).ToList()[0];\n\n    // Restore from recovery point\n    var testSelfServiceAppRestore = new Nutanix.SelfServiceAppRestore(\"test\", new()\n    {\n        RestoreActionName = \"RESTORE ACTION NAME\",\n        AppName = \"NAME OF APPLICATION\",\n        SnapshotUuid = snapshotUuid,\n    });\n\n});\n```\n<!--End PulumiCodeChooser -->\n",
      "properties": {
        "appName": {
          "type": "string",
          "description": "- (Optional) The name of the application\n"
        },
        "appUuid": {
          "type": "string",
          "description": "- (Optional) The UUID of the application.\n"
        },
        "restoreActionName": {
          "type": "string",
          "description": "- (Required) The name of the restore action to be performed.\n"
        },
        "snapshotUuid": {
          "type": "string",
          "description": "- (Required) The UUID of the snapshot to which the application will be restored.\n\nBoth (<span pulumi-lang-nodejs=\"`appName`\" pulumi-lang-dotnet=\"`AppName`\" pulumi-lang-go=\"`appName`\" pulumi-lang-python=\"`app_name`\" pulumi-lang-yaml=\"`appName`\" pulumi-lang-java=\"`appName`\">`app_name`</span> and <span pulumi-lang-nodejs=\"`appUuid`\" pulumi-lang-dotnet=\"`AppUuid`\" pulumi-lang-go=\"`appUuid`\" pulumi-lang-python=\"`app_uuid`\" pulumi-lang-yaml=\"`appUuid`\" pulumi-lang-java=\"`appUuid`\">`app_uuid`</span>) are optional but atleast one of them should be provided for resource to work.\n"
        },
        "state": {
          "type": "string",
          "description": "- (Computed) This will be set after the restore action has been processed.\n"
        }
      },
      "type": "object",
      "required": [
        "restoreActionName",
        "snapshotUuid",
        "state"
      ],
      "inputProperties": {
        "appName": {
          "type": "string",
          "description": "- (Optional) The name of the application\n"
        },
        "appUuid": {
          "type": "string",
          "description": "- (Optional) The UUID of the application.\n"
        },
        "restoreActionName": {
          "type": "string",
          "description": "- (Required) The name of the restore action to be performed.\n"
        },
        "snapshotUuid": {
          "type": "string",
          "description": "- (Required) The UUID of the snapshot to which the application will be restored.\n\nBoth (<span pulumi-lang-nodejs=\"`appName`\" pulumi-lang-dotnet=\"`AppName`\" pulumi-lang-go=\"`appName`\" pulumi-lang-python=\"`app_name`\" pulumi-lang-yaml=\"`appName`\" pulumi-lang-java=\"`appName`\">`app_name`</span> and <span pulumi-lang-nodejs=\"`appUuid`\" pulumi-lang-dotnet=\"`AppUuid`\" pulumi-lang-go=\"`appUuid`\" pulumi-lang-python=\"`app_uuid`\" pulumi-lang-yaml=\"`appUuid`\" pulumi-lang-java=\"`appUuid`\">`app_uuid`</span>) are optional but atleast one of them should be provided for resource to work.\n"
        }
      },
      "requiredInputs": [
        "restoreActionName",
        "snapshotUuid"
      ],
      "stateInputs": {
        "description": "Input properties used for looking up and filtering SelfServiceAppRestore resources.\n",
        "properties": {
          "appName": {
            "type": "string",
            "description": "- (Optional) The name of the application\n"
          },
          "appUuid": {
            "type": "string",
            "description": "- (Optional) The UUID of the application.\n"
          },
          "restoreActionName": {
            "type": "string",
            "description": "- (Required) The name of the restore action to be performed.\n"
          },
          "snapshotUuid": {
            "type": "string",
            "description": "- (Required) The UUID of the snapshot to which the application will be restored.\n\nBoth (<span pulumi-lang-nodejs=\"`appName`\" pulumi-lang-dotnet=\"`AppName`\" pulumi-lang-go=\"`appName`\" pulumi-lang-python=\"`app_name`\" pulumi-lang-yaml=\"`appName`\" pulumi-lang-java=\"`appName`\">`app_name`</span> and <span pulumi-lang-nodejs=\"`appUuid`\" pulumi-lang-dotnet=\"`AppUuid`\" pulumi-lang-go=\"`appUuid`\" pulumi-lang-python=\"`app_uuid`\" pulumi-lang-yaml=\"`appUuid`\" pulumi-lang-java=\"`appUuid`\">`app_uuid`</span>) are optional but atleast one of them should be provided for resource to work.\n"
          },
          "state": {
            "type": "string",
            "description": "- (Computed) This will be set after the restore action has been processed.\n"
          }
        },
        "type": "object"
      }
    },
    "nutanix:index/serviceGroup:ServiceGroup": {
      "description": "Provides a resource to create a service group based on the input parameters.\n\n## Example Usage\n\n<!--Start PulumiCodeChooser -->\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as nutanix from \"@pierskarsenbarg/nutanix\";\n\nconst test = new nutanix.ServiceGroup(\"test\", {\n    name: \"test_service_gp\",\n    description: \"this is service group\",\n    serviceLists: [{\n        protocol: \"TCP\",\n        tcpPortRangeLists: [\n            {\n                startPort: 22,\n                endPort: 22,\n            },\n            {\n                startPort: 2222,\n                endPort: 2222,\n            },\n        ],\n    }],\n});\n```\n```python\nimport pulumi\nimport pulumi_nutanix as nutanix\n\ntest = nutanix.ServiceGroup(\"test\",\n    name=\"test_service_gp\",\n    description=\"this is service group\",\n    service_lists=[{\n        \"protocol\": \"TCP\",\n        \"tcp_port_range_lists\": [\n            {\n                \"start_port\": 22,\n                \"end_port\": 22,\n            },\n            {\n                \"start_port\": 2222,\n                \"end_port\": 2222,\n            },\n        ],\n    }])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Nutanix = PiersKarsenbarg.Nutanix;\n\nreturn await Deployment.RunAsync(() => \n{\n    var test = new Nutanix.ServiceGroup(\"test\", new()\n    {\n        Name = \"test_service_gp\",\n        Description = \"this is service group\",\n        ServiceLists = new[]\n        {\n            new Nutanix.Inputs.ServiceGroupServiceListArgs\n            {\n                Protocol = \"TCP\",\n                TcpPortRangeLists = new[]\n                {\n                    new Nutanix.Inputs.ServiceGroupServiceListTcpPortRangeListArgs\n                    {\n                        StartPort = 22,\n                        EndPort = 22,\n                    },\n                    new Nutanix.Inputs.ServiceGroupServiceListTcpPortRangeListArgs\n                    {\n                        StartPort = 2222,\n                        EndPort = 2222,\n                    },\n                },\n            },\n        },\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pierskarsenbarg/pulumi-nutanix/sdk/go/nutanix\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := nutanix.NewServiceGroup(ctx, \"test\", &nutanix.ServiceGroupArgs{\n\t\t\tName:        pulumi.String(\"test_service_gp\"),\n\t\t\tDescription: pulumi.String(\"this is service group\"),\n\t\t\tServiceLists: nutanix.ServiceGroupServiceListArray{\n\t\t\t\t&nutanix.ServiceGroupServiceListArgs{\n\t\t\t\t\tProtocol: pulumi.String(\"TCP\"),\n\t\t\t\t\tTcpPortRangeLists: nutanix.ServiceGroupServiceListTcpPortRangeListArray{\n\t\t\t\t\t\t&nutanix.ServiceGroupServiceListTcpPortRangeListArgs{\n\t\t\t\t\t\t\tStartPort: pulumi.Int(22),\n\t\t\t\t\t\t\tEndPort:   pulumi.Int(22),\n\t\t\t\t\t\t},\n\t\t\t\t\t\t&nutanix.ServiceGroupServiceListTcpPortRangeListArgs{\n\t\t\t\t\t\t\tStartPort: pulumi.Int(2222),\n\t\t\t\t\t\t\tEndPort:   pulumi.Int(2222),\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.nutanix.ServiceGroup;\nimport com.pulumi.nutanix.ServiceGroupArgs;\nimport com.pulumi.nutanix.inputs.ServiceGroupServiceListArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var test = new ServiceGroup(\"test\", ServiceGroupArgs.builder()\n            .name(\"test_service_gp\")\n            .description(\"this is service group\")\n            .serviceLists(ServiceGroupServiceListArgs.builder()\n                .protocol(\"TCP\")\n                .tcpPortRangeLists(                \n                    ServiceGroupServiceListTcpPortRangeListArgs.builder()\n                        .startPort(22)\n                        .endPort(22)\n                        .build(),\n                    ServiceGroupServiceListTcpPortRangeListArgs.builder()\n                        .startPort(2222)\n                        .endPort(2222)\n                        .build())\n                .build())\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  test:\n    type: nutanix:ServiceGroup\n    properties:\n      name: test_service_gp\n      description: this is service group\n      serviceLists:\n        - protocol: TCP\n          tcpPortRangeLists:\n            - startPort: 22\n              endPort: 22\n            - startPort: 2222\n              endPort: 2222\n```\n<!--End PulumiCodeChooser -->\n",
      "properties": {
        "description": {
          "type": "string",
          "description": "- (Optional) Description of the service group\n"
        },
        "name": {
          "type": "string",
          "description": "- (Required) Name of the service group\n"
        },
        "serviceLists": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FServiceGroupServiceList:ServiceGroupServiceList"
          },
          "description": "- (Required) list of services which have protocol (TCP / UDP / ICMP) along with port details\n"
        },
        "systemDefined": {
          "type": "boolean",
          "description": "- (ReadOnly) boolean value to denote if the service group is system defined\n"
        }
      },
      "type": "object",
      "required": [
        "name",
        "serviceLists",
        "systemDefined"
      ],
      "inputProperties": {
        "description": {
          "type": "string",
          "description": "- (Optional) Description of the service group\n"
        },
        "name": {
          "type": "string",
          "description": "- (Required) Name of the service group\n"
        },
        "serviceLists": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FServiceGroupServiceList:ServiceGroupServiceList"
          },
          "description": "- (Required) list of services which have protocol (TCP / UDP / ICMP) along with port details\n"
        }
      },
      "requiredInputs": [
        "serviceLists"
      ],
      "stateInputs": {
        "description": "Input properties used for looking up and filtering ServiceGroup resources.\n",
        "properties": {
          "description": {
            "type": "string",
            "description": "- (Optional) Description of the service group\n"
          },
          "name": {
            "type": "string",
            "description": "- (Required) Name of the service group\n"
          },
          "serviceLists": {
            "type": "array",
            "items": {
              "$ref": "#/types/nutanix:index%2FServiceGroupServiceList:ServiceGroupServiceList"
            },
            "description": "- (Required) list of services which have protocol (TCP / UDP / ICMP) along with port details\n"
          },
          "systemDefined": {
            "type": "boolean",
            "description": "- (ReadOnly) boolean value to denote if the service group is system defined\n"
          }
        },
        "type": "object"
      }
    },
    "nutanix:index/serviceGroupsV2:ServiceGroupsV2": {
      "description": "Create an service Group\n\n## Example Usage\n\n<!--Start PulumiCodeChooser -->\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as nutanix from \"@pierskarsenbarg/nutanix\";\n\n// Add Service  group. with TCP and UDP\nconst tcp_udp_service = new nutanix.ServiceGroupsV2(\"tcp-udp-service\", {\n    name: \"service_group_tcp_udp\",\n    description: \"service group description\",\n    tcpServices: [{\n        startPort: 232,\n        endPort: 232,\n    }],\n    udpServices: [{\n        startPort: 232,\n        endPort: 232,\n    }],\n});\n// service group with ICMP\nconst icmp_service = new nutanix.ServiceGroupsV2(\"icmp-service\", {\n    name: \"service_group_icmp\",\n    description: \"service group description\",\n    icmpServices: [{\n        type: 8,\n        code: 0,\n    }],\n});\n// service group with All TCP, UDP and ICMP\nconst all_service = new nutanix.ServiceGroupsV2(\"all-service\", {\n    name: \"service_group_udp_tcp_icmp\",\n    description: \"service group description\",\n    tcpServices: [{\n        startPort: 232,\n        endPort: 232,\n    }],\n    udpServices: [{\n        startPort: 232,\n        endPort: 232,\n    }],\n    icmpServices: [{\n        type: 8,\n        code: 0,\n    }],\n});\n```\n```python\nimport pulumi\nimport pulumi_nutanix as nutanix\n\n# Add Service  group. with TCP and UDP\ntcp_udp_service = nutanix.ServiceGroupsV2(\"tcp-udp-service\",\n    name=\"service_group_tcp_udp\",\n    description=\"service group description\",\n    tcp_services=[{\n        \"start_port\": 232,\n        \"end_port\": 232,\n    }],\n    udp_services=[{\n        \"start_port\": 232,\n        \"end_port\": 232,\n    }])\n# service group with ICMP\nicmp_service = nutanix.ServiceGroupsV2(\"icmp-service\",\n    name=\"service_group_icmp\",\n    description=\"service group description\",\n    icmp_services=[{\n        \"type\": 8,\n        \"code\": 0,\n    }])\n# service group with All TCP, UDP and ICMP\nall_service = nutanix.ServiceGroupsV2(\"all-service\",\n    name=\"service_group_udp_tcp_icmp\",\n    description=\"service group description\",\n    tcp_services=[{\n        \"start_port\": 232,\n        \"end_port\": 232,\n    }],\n    udp_services=[{\n        \"start_port\": 232,\n        \"end_port\": 232,\n    }],\n    icmp_services=[{\n        \"type\": 8,\n        \"code\": 0,\n    }])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Nutanix = PiersKarsenbarg.Nutanix;\n\nreturn await Deployment.RunAsync(() => \n{\n    // Add Service  group. with TCP and UDP\n    var tcp_udp_service = new Nutanix.ServiceGroupsV2(\"tcp-udp-service\", new()\n    {\n        Name = \"service_group_tcp_udp\",\n        Description = \"service group description\",\n        TcpServices = new[]\n        {\n            new Nutanix.Inputs.ServiceGroupsV2TcpServiceArgs\n            {\n                StartPort = 232,\n                EndPort = 232,\n            },\n        },\n        UdpServices = new[]\n        {\n            new Nutanix.Inputs.ServiceGroupsV2UdpServiceArgs\n            {\n                StartPort = 232,\n                EndPort = 232,\n            },\n        },\n    });\n\n    // service group with ICMP\n    var icmp_service = new Nutanix.ServiceGroupsV2(\"icmp-service\", new()\n    {\n        Name = \"service_group_icmp\",\n        Description = \"service group description\",\n        IcmpServices = new[]\n        {\n            new Nutanix.Inputs.ServiceGroupsV2IcmpServiceArgs\n            {\n                Type = 8,\n                Code = 0,\n            },\n        },\n    });\n\n    // service group with All TCP, UDP and ICMP\n    var all_service = new Nutanix.ServiceGroupsV2(\"all-service\", new()\n    {\n        Name = \"service_group_udp_tcp_icmp\",\n        Description = \"service group description\",\n        TcpServices = new[]\n        {\n            new Nutanix.Inputs.ServiceGroupsV2TcpServiceArgs\n            {\n                StartPort = 232,\n                EndPort = 232,\n            },\n        },\n        UdpServices = new[]\n        {\n            new Nutanix.Inputs.ServiceGroupsV2UdpServiceArgs\n            {\n                StartPort = 232,\n                EndPort = 232,\n            },\n        },\n        IcmpServices = new[]\n        {\n            new Nutanix.Inputs.ServiceGroupsV2IcmpServiceArgs\n            {\n                Type = 8,\n                Code = 0,\n            },\n        },\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pierskarsenbarg/pulumi-nutanix/sdk/go/nutanix\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t// Add Service  group. with TCP and UDP\n\t\t_, err := nutanix.NewServiceGroupsV2(ctx, \"tcp-udp-service\", &nutanix.ServiceGroupsV2Args{\n\t\t\tName:        pulumi.String(\"service_group_tcp_udp\"),\n\t\t\tDescription: pulumi.String(\"service group description\"),\n\t\t\tTcpServices: nutanix.ServiceGroupsV2TcpServiceArray{\n\t\t\t\t&nutanix.ServiceGroupsV2TcpServiceArgs{\n\t\t\t\t\tStartPort: pulumi.Int(232),\n\t\t\t\t\tEndPort:   pulumi.Int(232),\n\t\t\t\t},\n\t\t\t},\n\t\t\tUdpServices: nutanix.ServiceGroupsV2UdpServiceArray{\n\t\t\t\t&nutanix.ServiceGroupsV2UdpServiceArgs{\n\t\t\t\t\tStartPort: pulumi.Int(232),\n\t\t\t\t\tEndPort:   pulumi.Int(232),\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t// service group with ICMP\n\t\t_, err = nutanix.NewServiceGroupsV2(ctx, \"icmp-service\", &nutanix.ServiceGroupsV2Args{\n\t\t\tName:        pulumi.String(\"service_group_icmp\"),\n\t\t\tDescription: pulumi.String(\"service group description\"),\n\t\t\tIcmpServices: nutanix.ServiceGroupsV2IcmpServiceArray{\n\t\t\t\t&nutanix.ServiceGroupsV2IcmpServiceArgs{\n\t\t\t\t\tType: pulumi.Int(8),\n\t\t\t\t\tCode: pulumi.Int(0),\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t// service group with All TCP, UDP and ICMP\n\t\t_, err = nutanix.NewServiceGroupsV2(ctx, \"all-service\", &nutanix.ServiceGroupsV2Args{\n\t\t\tName:        pulumi.String(\"service_group_udp_tcp_icmp\"),\n\t\t\tDescription: pulumi.String(\"service group description\"),\n\t\t\tTcpServices: nutanix.ServiceGroupsV2TcpServiceArray{\n\t\t\t\t&nutanix.ServiceGroupsV2TcpServiceArgs{\n\t\t\t\t\tStartPort: pulumi.Int(232),\n\t\t\t\t\tEndPort:   pulumi.Int(232),\n\t\t\t\t},\n\t\t\t},\n\t\t\tUdpServices: nutanix.ServiceGroupsV2UdpServiceArray{\n\t\t\t\t&nutanix.ServiceGroupsV2UdpServiceArgs{\n\t\t\t\t\tStartPort: pulumi.Int(232),\n\t\t\t\t\tEndPort:   pulumi.Int(232),\n\t\t\t\t},\n\t\t\t},\n\t\t\tIcmpServices: nutanix.ServiceGroupsV2IcmpServiceArray{\n\t\t\t\t&nutanix.ServiceGroupsV2IcmpServiceArgs{\n\t\t\t\t\tType: pulumi.Int(8),\n\t\t\t\t\tCode: pulumi.Int(0),\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.nutanix.ServiceGroupsV2;\nimport com.pulumi.nutanix.ServiceGroupsV2Args;\nimport com.pulumi.nutanix.inputs.ServiceGroupsV2TcpServiceArgs;\nimport com.pulumi.nutanix.inputs.ServiceGroupsV2UdpServiceArgs;\nimport com.pulumi.nutanix.inputs.ServiceGroupsV2IcmpServiceArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        // Add Service  group. with TCP and UDP\n        var tcp_udp_service = new ServiceGroupsV2(\"tcp-udp-service\", ServiceGroupsV2Args.builder()\n            .name(\"service_group_tcp_udp\")\n            .description(\"service group description\")\n            .tcpServices(ServiceGroupsV2TcpServiceArgs.builder()\n                .startPort(232)\n                .endPort(232)\n                .build())\n            .udpServices(ServiceGroupsV2UdpServiceArgs.builder()\n                .startPort(232)\n                .endPort(232)\n                .build())\n            .build());\n\n        // service group with ICMP\n        var icmp_service = new ServiceGroupsV2(\"icmp-service\", ServiceGroupsV2Args.builder()\n            .name(\"service_group_icmp\")\n            .description(\"service group description\")\n            .icmpServices(ServiceGroupsV2IcmpServiceArgs.builder()\n                .type(8)\n                .code(0)\n                .build())\n            .build());\n\n        // service group with All TCP, UDP and ICMP\n        var all_service = new ServiceGroupsV2(\"all-service\", ServiceGroupsV2Args.builder()\n            .name(\"service_group_udp_tcp_icmp\")\n            .description(\"service group description\")\n            .tcpServices(ServiceGroupsV2TcpServiceArgs.builder()\n                .startPort(232)\n                .endPort(232)\n                .build())\n            .udpServices(ServiceGroupsV2UdpServiceArgs.builder()\n                .startPort(232)\n                .endPort(232)\n                .build())\n            .icmpServices(ServiceGroupsV2IcmpServiceArgs.builder()\n                .type(8)\n                .code(0)\n                .build())\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  # Add Service  group. with TCP and UDP\n  tcp-udp-service:\n    type: nutanix:ServiceGroupsV2\n    properties:\n      name: service_group_tcp_udp\n      description: service group description\n      tcpServices:\n        - startPort: '232'\n          endPort: '232'\n      udpServices:\n        - startPort: '232'\n          endPort: '232'\n  # service group with ICMP\n  icmp-service:\n    type: nutanix:ServiceGroupsV2\n    properties:\n      name: service_group_icmp\n      description: service group description\n      icmpServices:\n        - type: 8\n          code: 0\n  # service group with All TCP, UDP and ICMP\n  all-service:\n    type: nutanix:ServiceGroupsV2\n    properties:\n      name: service_group_udp_tcp_icmp\n      description: service group description\n      tcpServices:\n        - startPort: '232'\n          endPort: '232'\n      udpServices:\n        - startPort: '232'\n          endPort: '232'\n      icmpServices:\n        - type: 8\n          code: 0\n```\n<!--End PulumiCodeChooser -->\n",
      "properties": {
        "createdBy": {
          "type": "string",
          "description": "created by.\n"
        },
        "description": {
          "type": "string",
          "description": "Description of the service group\n"
        },
        "extId": {
          "type": "string",
          "description": "address group uuid.\n"
        },
        "icmpServices": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FServiceGroupsV2IcmpService:ServiceGroupsV2IcmpService"
          },
          "description": "Icmp Type Code List.\n"
        },
        "isSystemDefined": {
          "type": "boolean",
          "description": "Service Group is system defined or not.\n"
        },
        "links": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FServiceGroupsV2Link:ServiceGroupsV2Link"
          },
          "description": "A HATEOAS style link for the response. Each link contains a user-friendly name identifying the link and an address for retrieving the particular resource.\n"
        },
        "name": {
          "type": "string",
          "description": "Name of the service group\n"
        },
        "policyReferences": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "Reference to policy associated with Address Group.\n"
        },
        "tcpServices": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FServiceGroupsV2TcpService:ServiceGroupsV2TcpService"
          },
          "description": "List of TCP ports in the service.\n"
        },
        "tenantId": {
          "type": "string",
          "description": "A globally unique identifier that represents the tenant that owns this entity.\n"
        },
        "udpServices": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FServiceGroupsV2UdpService:ServiceGroupsV2UdpService"
          },
          "description": "List of UDP ports in the service.\n"
        }
      },
      "type": "object",
      "required": [
        "createdBy",
        "description",
        "extId",
        "isSystemDefined",
        "links",
        "name",
        "policyReferences",
        "tenantId"
      ],
      "inputProperties": {
        "description": {
          "type": "string",
          "description": "Description of the service group\n"
        },
        "icmpServices": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FServiceGroupsV2IcmpService:ServiceGroupsV2IcmpService"
          },
          "description": "Icmp Type Code List.\n"
        },
        "name": {
          "type": "string",
          "description": "Name of the service group\n"
        },
        "tcpServices": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FServiceGroupsV2TcpService:ServiceGroupsV2TcpService"
          },
          "description": "List of TCP ports in the service.\n"
        },
        "udpServices": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FServiceGroupsV2UdpService:ServiceGroupsV2UdpService"
          },
          "description": "List of UDP ports in the service.\n"
        }
      },
      "stateInputs": {
        "description": "Input properties used for looking up and filtering ServiceGroupsV2 resources.\n",
        "properties": {
          "createdBy": {
            "type": "string",
            "description": "created by.\n"
          },
          "description": {
            "type": "string",
            "description": "Description of the service group\n"
          },
          "extId": {
            "type": "string",
            "description": "address group uuid.\n"
          },
          "icmpServices": {
            "type": "array",
            "items": {
              "$ref": "#/types/nutanix:index%2FServiceGroupsV2IcmpService:ServiceGroupsV2IcmpService"
            },
            "description": "Icmp Type Code List.\n"
          },
          "isSystemDefined": {
            "type": "boolean",
            "description": "Service Group is system defined or not.\n"
          },
          "links": {
            "type": "array",
            "items": {
              "$ref": "#/types/nutanix:index%2FServiceGroupsV2Link:ServiceGroupsV2Link"
            },
            "description": "A HATEOAS style link for the response. Each link contains a user-friendly name identifying the link and an address for retrieving the particular resource.\n"
          },
          "name": {
            "type": "string",
            "description": "Name of the service group\n"
          },
          "policyReferences": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "description": "Reference to policy associated with Address Group.\n"
          },
          "tcpServices": {
            "type": "array",
            "items": {
              "$ref": "#/types/nutanix:index%2FServiceGroupsV2TcpService:ServiceGroupsV2TcpService"
            },
            "description": "List of TCP ports in the service.\n"
          },
          "tenantId": {
            "type": "string",
            "description": "A globally unique identifier that represents the tenant that owns this entity.\n"
          },
          "udpServices": {
            "type": "array",
            "items": {
              "$ref": "#/types/nutanix:index%2FServiceGroupsV2UdpService:ServiceGroupsV2UdpService"
            },
            "description": "List of UDP ports in the service.\n"
          }
        },
        "type": "object"
      }
    },
    "nutanix:index/staticRoutes:StaticRoutes": {
      "description": "Provides Nutanix resource to create Static Routes within VPCs.\n\n## create one static route for vpc uuid with external subnet\n\n<!--Start PulumiCodeChooser -->\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as nutanix from \"@pierskarsenbarg/nutanix\";\n\nconst scn = new nutanix.StaticRoutes(\"scn\", {\n    vpcUuid: \"{{vpc_uuid}}\",\n    staticRoutesLists: [{\n        destination: \"10.x.x.x/x\",\n        externalSubnetReferenceUuid: \"{{ext_subnet_uuid}}\",\n    }],\n});\n```\n```python\nimport pulumi\nimport pulumi_nutanix as nutanix\n\nscn = nutanix.StaticRoutes(\"scn\",\n    vpc_uuid=\"{{vpc_uuid}}\",\n    static_routes_lists=[{\n        \"destination\": \"10.x.x.x/x\",\n        \"external_subnet_reference_uuid\": \"{{ext_subnet_uuid}}\",\n    }])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Nutanix = PiersKarsenbarg.Nutanix;\n\nreturn await Deployment.RunAsync(() => \n{\n    var scn = new Nutanix.StaticRoutes(\"scn\", new()\n    {\n        VpcUuid = \"{{vpc_uuid}}\",\n        StaticRoutesLists = new[]\n        {\n            new Nutanix.Inputs.StaticRoutesStaticRoutesListArgs\n            {\n                Destination = \"10.x.x.x/x\",\n                ExternalSubnetReferenceUuid = \"{{ext_subnet_uuid}}\",\n            },\n        },\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pierskarsenbarg/pulumi-nutanix/sdk/go/nutanix\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := nutanix.NewStaticRoutes(ctx, \"scn\", &nutanix.StaticRoutesArgs{\n\t\t\tVpcUuid: pulumi.String(\"{{vpc_uuid}}\"),\n\t\t\tStaticRoutesLists: nutanix.StaticRoutesStaticRoutesListArray{\n\t\t\t\t&nutanix.StaticRoutesStaticRoutesListArgs{\n\t\t\t\t\tDestination:                 pulumi.String(\"10.x.x.x/x\"),\n\t\t\t\t\tExternalSubnetReferenceUuid: pulumi.String(\"{{ext_subnet_uuid}}\"),\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.nutanix.StaticRoutes;\nimport com.pulumi.nutanix.StaticRoutesArgs;\nimport com.pulumi.nutanix.inputs.StaticRoutesStaticRoutesListArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var scn = new StaticRoutes(\"scn\", StaticRoutesArgs.builder()\n            .vpcUuid(\"{{vpc_uuid}}\")\n            .staticRoutesLists(StaticRoutesStaticRoutesListArgs.builder()\n                .destination(\"10.x.x.x/x\")\n                .externalSubnetReferenceUuid(\"{{ext_subnet_uuid}}\")\n                .build())\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  scn:\n    type: nutanix:StaticRoutes\n    properties:\n      vpcUuid: '{{vpc_uuid}}'\n      staticRoutesLists:\n        - destination: 10.x.x.x/x\n          externalSubnetReferenceUuid: '{{ext_subnet_uuid}}'\n```\n<!--End PulumiCodeChooser -->\n\n\n## create one static route with default route for vpc name with external subnet\n\n<!--Start PulumiCodeChooser -->\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as nutanix from \"@pierskarsenbarg/nutanix\";\n\nconst scn = new nutanix.StaticRoutes(\"scn\", {\n    vpcName: \"{{vpc_name}}\",\n    staticRoutesLists: [{\n        destination: \"10.x.x.x/x\",\n        externalSubnetReferenceUuid: \"{{ext_subnet_uuid}}\",\n    }],\n    defaultRouteNexthops: [{\n        externalSubnetReferenceUuid: \"{{ext_subnet_uuid}}\",\n    }],\n});\n```\n```python\nimport pulumi\nimport pulumi_nutanix as nutanix\n\nscn = nutanix.StaticRoutes(\"scn\",\n    vpc_name=\"{{vpc_name}}\",\n    static_routes_lists=[{\n        \"destination\": \"10.x.x.x/x\",\n        \"external_subnet_reference_uuid\": \"{{ext_subnet_uuid}}\",\n    }],\n    default_route_nexthops=[{\n        \"external_subnet_reference_uuid\": \"{{ext_subnet_uuid}}\",\n    }])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Nutanix = PiersKarsenbarg.Nutanix;\n\nreturn await Deployment.RunAsync(() => \n{\n    var scn = new Nutanix.StaticRoutes(\"scn\", new()\n    {\n        VpcName = \"{{vpc_name}}\",\n        StaticRoutesLists = new[]\n        {\n            new Nutanix.Inputs.StaticRoutesStaticRoutesListArgs\n            {\n                Destination = \"10.x.x.x/x\",\n                ExternalSubnetReferenceUuid = \"{{ext_subnet_uuid}}\",\n            },\n        },\n        DefaultRouteNexthops = new[]\n        {\n            new Nutanix.Inputs.StaticRoutesDefaultRouteNexthopArgs\n            {\n                ExternalSubnetReferenceUuid = \"{{ext_subnet_uuid}}\",\n            },\n        },\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pierskarsenbarg/pulumi-nutanix/sdk/go/nutanix\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := nutanix.NewStaticRoutes(ctx, \"scn\", &nutanix.StaticRoutesArgs{\n\t\t\tVpcName: pulumi.String(\"{{vpc_name}}\"),\n\t\t\tStaticRoutesLists: nutanix.StaticRoutesStaticRoutesListArray{\n\t\t\t\t&nutanix.StaticRoutesStaticRoutesListArgs{\n\t\t\t\t\tDestination:                 pulumi.String(\"10.x.x.x/x\"),\n\t\t\t\t\tExternalSubnetReferenceUuid: pulumi.String(\"{{ext_subnet_uuid}}\"),\n\t\t\t\t},\n\t\t\t},\n\t\t\tDefaultRouteNexthops: nutanix.StaticRoutesDefaultRouteNexthopArray{\n\t\t\t\t&nutanix.StaticRoutesDefaultRouteNexthopArgs{\n\t\t\t\t\tExternalSubnetReferenceUuid: pulumi.String(\"{{ext_subnet_uuid}}\"),\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.nutanix.StaticRoutes;\nimport com.pulumi.nutanix.StaticRoutesArgs;\nimport com.pulumi.nutanix.inputs.StaticRoutesStaticRoutesListArgs;\nimport com.pulumi.nutanix.inputs.StaticRoutesDefaultRouteNexthopArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var scn = new StaticRoutes(\"scn\", StaticRoutesArgs.builder()\n            .vpcName(\"{{vpc_name}}\")\n            .staticRoutesLists(StaticRoutesStaticRoutesListArgs.builder()\n                .destination(\"10.x.x.x/x\")\n                .externalSubnetReferenceUuid(\"{{ext_subnet_uuid}}\")\n                .build())\n            .defaultRouteNexthops(StaticRoutesDefaultRouteNexthopArgs.builder()\n                .externalSubnetReferenceUuid(\"{{ext_subnet_uuid}}\")\n                .build())\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  scn:\n    type: nutanix:StaticRoutes\n    properties:\n      vpcName: '{{vpc_name}}'\n      staticRoutesLists:\n        - destination: 10.x.x.x/x\n          externalSubnetReferenceUuid: '{{ext_subnet_uuid}}'\n      defaultRouteNexthops:\n        - externalSubnetReferenceUuid: '{{ext_subnet_uuid}}'\n```\n<!--End PulumiCodeChooser -->\n\n#### Note: destination with 0.0.0.0/0 will be default route.\n",
      "properties": {
        "apiVersion": {
          "type": "string",
          "description": "The version of the API.\n"
        },
        "defaultRouteNexthops": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FStaticRoutesDefaultRouteNexthop:StaticRoutesDefaultRouteNexthop"
          },
          "description": "Default Route\n"
        },
        "metadata": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          },
          "description": "The<span pulumi-lang-nodejs=\" vpcRouteTable \" pulumi-lang-dotnet=\" VpcRouteTable \" pulumi-lang-go=\" vpcRouteTable \" pulumi-lang-python=\" vpc_route_table \" pulumi-lang-yaml=\" vpcRouteTable \" pulumi-lang-java=\" vpcRouteTable \"> vpc_route_table </span>kind metadata.\n"
        },
        "staticRoutesLists": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FStaticRoutesStaticRoutesList:StaticRoutesStaticRoutesList"
          },
          "description": "Static Routes.\n"
        },
        "vpcName": {
          "type": "string",
          "description": "vpc Name. Should not be used with vpc_uuid.\n"
        },
        "vpcUuid": {
          "type": "string",
          "description": "Reference to a VPC UUID. Should not be used with vpc_name.\n"
        }
      },
      "type": "object",
      "required": [
        "apiVersion",
        "metadata",
        "vpcUuid"
      ],
      "inputProperties": {
        "apiVersion": {
          "type": "string",
          "description": "The version of the API.\n"
        },
        "defaultRouteNexthops": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FStaticRoutesDefaultRouteNexthop:StaticRoutesDefaultRouteNexthop"
          },
          "description": "Default Route\n"
        },
        "staticRoutesLists": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FStaticRoutesStaticRoutesList:StaticRoutesStaticRoutesList"
          },
          "description": "Static Routes.\n"
        },
        "vpcName": {
          "type": "string",
          "description": "vpc Name. Should not be used with vpc_uuid.\n"
        },
        "vpcUuid": {
          "type": "string",
          "description": "Reference to a VPC UUID. Should not be used with vpc_name.\n"
        }
      },
      "stateInputs": {
        "description": "Input properties used for looking up and filtering StaticRoutes resources.\n",
        "properties": {
          "apiVersion": {
            "type": "string",
            "description": "The version of the API.\n"
          },
          "defaultRouteNexthops": {
            "type": "array",
            "items": {
              "$ref": "#/types/nutanix:index%2FStaticRoutesDefaultRouteNexthop:StaticRoutesDefaultRouteNexthop"
            },
            "description": "Default Route\n"
          },
          "metadata": {
            "type": "object",
            "additionalProperties": {
              "type": "string"
            },
            "description": "The<span pulumi-lang-nodejs=\" vpcRouteTable \" pulumi-lang-dotnet=\" VpcRouteTable \" pulumi-lang-go=\" vpcRouteTable \" pulumi-lang-python=\" vpc_route_table \" pulumi-lang-yaml=\" vpcRouteTable \" pulumi-lang-java=\" vpcRouteTable \"> vpc_route_table </span>kind metadata.\n"
          },
          "staticRoutesLists": {
            "type": "array",
            "items": {
              "$ref": "#/types/nutanix:index%2FStaticRoutesStaticRoutesList:StaticRoutesStaticRoutesList"
            },
            "description": "Static Routes.\n"
          },
          "vpcName": {
            "type": "string",
            "description": "vpc Name. Should not be used with vpc_uuid.\n"
          },
          "vpcUuid": {
            "type": "string",
            "description": "Reference to a VPC UUID. Should not be used with vpc_name.\n"
          }
        },
        "type": "object"
      }
    },
    "nutanix:index/storageContainersV2:StorageContainersV2": {
      "description": "Provides Nutanix resource to create VPC.\n\n\n## Example\n\n<!--Start PulumiCodeChooser -->\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as nutanix from \"@pierskarsenbarg/nutanix\";\n\nconst storage_container = new nutanix.StorageContainersV2(\"storage-container\", {\n    name: \"example-storage-container\",\n    logicalAdvertisedCapacityBytes: 1073741824000,\n    logicalExplicitReservedCapacityBytes: 32,\n    replicationFactor: 1,\n    nfsWhitelistAddresses: [{\n        ipv4s: [{\n            value: \"192.168.15.0\",\n            prefixLength: 32,\n        }],\n    }],\n    erasureCode: \"OFF\",\n    isInlineEcEnabled: false,\n    hasHigherEcFaultDomainPreference: false,\n    cacheDeduplication: \"OFF\",\n    onDiskDedup: \"OFF\",\n    isCompressionEnabled: true,\n    isInternal: false,\n    isSoftwareEncryptionEnabled: false,\n});\n```\n```python\nimport pulumi\nimport pulumi_nutanix as nutanix\n\nstorage_container = nutanix.StorageContainersV2(\"storage-container\",\n    name=\"example-storage-container\",\n    logical_advertised_capacity_bytes=1073741824000,\n    logical_explicit_reserved_capacity_bytes=32,\n    replication_factor=1,\n    nfs_whitelist_addresses=[{\n        \"ipv4s\": [{\n            \"value\": \"192.168.15.0\",\n            \"prefix_length\": 32,\n        }],\n    }],\n    erasure_code=\"OFF\",\n    is_inline_ec_enabled=False,\n    has_higher_ec_fault_domain_preference=False,\n    cache_deduplication=\"OFF\",\n    on_disk_dedup=\"OFF\",\n    is_compression_enabled=True,\n    is_internal=False,\n    is_software_encryption_enabled=False)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Nutanix = PiersKarsenbarg.Nutanix;\n\nreturn await Deployment.RunAsync(() => \n{\n    var storage_container = new Nutanix.StorageContainersV2(\"storage-container\", new()\n    {\n        Name = \"example-storage-container\",\n        LogicalAdvertisedCapacityBytes = 1073741824000,\n        LogicalExplicitReservedCapacityBytes = 32,\n        ReplicationFactor = 1,\n        NfsWhitelistAddresses = new[]\n        {\n            new Nutanix.Inputs.StorageContainersV2NfsWhitelistAddressArgs\n            {\n                Ipv4s = new[]\n                {\n                    new Nutanix.Inputs.StorageContainersV2NfsWhitelistAddressIpv4Args\n                    {\n                        Value = \"192.168.15.0\",\n                        PrefixLength = 32,\n                    },\n                },\n            },\n        },\n        ErasureCode = \"OFF\",\n        IsInlineEcEnabled = false,\n        HasHigherEcFaultDomainPreference = false,\n        CacheDeduplication = \"OFF\",\n        OnDiskDedup = \"OFF\",\n        IsCompressionEnabled = true,\n        IsInternal = false,\n        IsSoftwareEncryptionEnabled = false,\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pierskarsenbarg/pulumi-nutanix/sdk/go/nutanix\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := nutanix.NewStorageContainersV2(ctx, \"storage-container\", &nutanix.StorageContainersV2Args{\n\t\t\tName:                                 pulumi.String(\"example-storage-container\"),\n\t\t\tLogicalAdvertisedCapacityBytes:       pulumi.Int(1073741824000),\n\t\t\tLogicalExplicitReservedCapacityBytes: pulumi.Int(32),\n\t\t\tReplicationFactor:                    pulumi.Int(1),\n\t\t\tNfsWhitelistAddresses: nutanix.StorageContainersV2NfsWhitelistAddressArray{\n\t\t\t\t&nutanix.StorageContainersV2NfsWhitelistAddressArgs{\n\t\t\t\t\tIpv4s: nutanix.StorageContainersV2NfsWhitelistAddressIpv4Array{\n\t\t\t\t\t\t&nutanix.StorageContainersV2NfsWhitelistAddressIpv4Args{\n\t\t\t\t\t\t\tValue:        pulumi.String(\"192.168.15.0\"),\n\t\t\t\t\t\t\tPrefixLength: pulumi.Int(32),\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t\tErasureCode:                      pulumi.String(\"OFF\"),\n\t\t\tIsInlineEcEnabled:                pulumi.Bool(false),\n\t\t\tHasHigherEcFaultDomainPreference: pulumi.Bool(false),\n\t\t\tCacheDeduplication:               pulumi.String(\"OFF\"),\n\t\t\tOnDiskDedup:                      pulumi.String(\"OFF\"),\n\t\t\tIsCompressionEnabled:             pulumi.Bool(true),\n\t\t\tIsInternal:                       pulumi.Bool(false),\n\t\t\tIsSoftwareEncryptionEnabled:      pulumi.Bool(false),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.nutanix.StorageContainersV2;\nimport com.pulumi.nutanix.StorageContainersV2Args;\nimport com.pulumi.nutanix.inputs.StorageContainersV2NfsWhitelistAddressArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var storage_container = new StorageContainersV2(\"storage-container\", StorageContainersV2Args.builder()\n            .name(\"example-storage-container\")\n            .logicalAdvertisedCapacityBytes(1073741824000)\n            .logicalExplicitReservedCapacityBytes(32)\n            .replicationFactor(1)\n            .nfsWhitelistAddresses(StorageContainersV2NfsWhitelistAddressArgs.builder()\n                .ipv4s(StorageContainersV2NfsWhitelistAddressIpv4Args.builder()\n                    .value(\"192.168.15.0\")\n                    .prefixLength(32)\n                    .build())\n                .build())\n            .erasureCode(\"OFF\")\n            .isInlineEcEnabled(false)\n            .hasHigherEcFaultDomainPreference(false)\n            .cacheDeduplication(\"OFF\")\n            .onDiskDedup(\"OFF\")\n            .isCompressionEnabled(true)\n            .isInternal(false)\n            .isSoftwareEncryptionEnabled(false)\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  storage-container:\n    type: nutanix:StorageContainersV2\n    properties:\n      name: example-storage-container\n      logicalAdvertisedCapacityBytes: 1.073741824e+12\n      logicalExplicitReservedCapacityBytes: 32\n      replicationFactor: 1\n      nfsWhitelistAddresses:\n        - ipv4s:\n            - value: 192.168.15.0\n              prefixLength: 32\n      erasureCode: OFF\n      isInlineEcEnabled: false\n      hasHigherEcFaultDomainPreference: false\n      cacheDeduplication: OFF\n      onDiskDedup: OFF\n      isCompressionEnabled: true\n      isInternal: false\n      isSoftwareEncryptionEnabled: false\n```\n<!--End PulumiCodeChooser -->\n",
      "properties": {
        "affinityHostExtId": {
          "type": "string",
          "description": "-(Optional) Affinity host extId for RF 1 Storage Container.\n"
        },
        "cacheDeduplication": {
          "type": "string",
          "description": "-(Optional) Indicates the current status of Cache Deduplication for the Container. available values:  `NONE`,    `OFF`,    `ON`\n"
        },
        "clusterExtId": {
          "type": "string",
          "description": "- ext id for the cluster owning the storage container.\n"
        },
        "clusterName": {
          "type": "string",
          "description": "- Corresponding name of the Cluster owning the Storage Container instance.\n"
        },
        "compressionDelaySecs": {
          "type": "integer",
          "description": "-(Optional) The compression delay in seconds.\n"
        },
        "containerExtId": {
          "type": "string",
          "description": "- the storage container ext id\n"
        },
        "erasureCode": {
          "type": "string",
          "description": "-(Optional) Indicates the current status value for Erasure Coding for the Container. available values:  `NONE`,    `OFF`,    `ON`\n"
        },
        "erasureCodeDelaySecs": {
          "type": "integer",
          "description": "-(Optional) Delay in performing ErasureCode for the current Container instance.\n"
        },
        "extId": {
          "type": "string",
          "description": "- the storage container uuid\n"
        },
        "hasHigherEcFaultDomainPreference": {
          "type": "boolean",
          "description": "-(Optional) Indicates whether to prefer a higher Erasure Code fault domain.\n"
        },
        "ignoreSmallFiles": {
          "type": "boolean"
        },
        "isCompressionEnabled": {
          "type": "boolean",
          "description": "-(Optional) Indicates whether the compression is enabled for the Container.\n"
        },
        "isEncrypted": {
          "type": "boolean",
          "description": "- Indicates whether the Container is encrypted or not.\n"
        },
        "isInlineEcEnabled": {
          "type": "boolean",
          "description": "-(Optional) Indicates whether data written to this container should be inline erasure coded or not. This field is only considered when ErasureCoding is enabled.\n"
        },
        "isInternal": {
          "type": "boolean",
          "description": "- Indicates whether the Container is internal and is managed by Nutanix.\n"
        },
        "isMarkedForRemoval": {
          "type": "boolean",
          "description": "- Indicates if the Storage Container is marked for removal. This field is set when the Storage Container is about to be destroyed.\n"
        },
        "isSoftwareEncryptionEnabled": {
          "type": "boolean",
          "description": "-(Optional) Indicates whether the Container instance has software encryption enabled.\n"
        },
        "links": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FStorageContainersV2Link:StorageContainersV2Link"
          },
          "description": "- A HATEOAS style link for the response. Each link contains a user-friendly name identifying the link and an address for retrieving the particular resource.\n"
        },
        "logicalAdvertisedCapacityBytes": {
          "type": "integer",
          "description": "-(Optional) Max capacity of the Container as defined by the user.\n"
        },
        "logicalExplicitReservedCapacityBytes": {
          "type": "integer",
          "description": "-(Optional) Total reserved size (in bytes) of the container (set by Admin). This also accounts for the container's replication factor. The actual reserved capacity of the container will be the maximum of explicitReservedCapacity and implicitReservedCapacity.\n"
        },
        "logicalImplicitReservedCapacityBytes": {
          "type": "integer",
          "description": "- This is the summation of reservations provisioned on all vdisks in the container. The actual reserved capacity of the container will be the maximum of explicitReservedCapacity and implicitReservedCapacity\n"
        },
        "maxCapacityBytes": {
          "type": "integer",
          "description": "- Maximum physical capacity of the Storage Container in bytes.\n"
        },
        "name": {
          "type": "string",
          "description": "-(Required) Name of the storage container.  Note that the name of Storage Container should be unique per cluster.\n"
        },
        "nfsWhitelistAddresses": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FStorageContainersV2NfsWhitelistAddress:StorageContainersV2NfsWhitelistAddress"
          },
          "description": "-(Optional) List of NFS addresses which need to be whitelisted.\n"
        },
        "onDiskDedup": {
          "type": "string",
          "description": "- Indicates the current status of Disk Deduplication for the Container. available values:  `NONE`,    `OFF`,    `POST_PROCESS`\n"
        },
        "ownerExtId": {
          "type": "string",
          "description": "-(Optional) owner ext id\n"
        },
        "replicationFactor": {
          "type": "integer",
          "description": "-(Optional) Replication factor of the Storage Container.\n"
        },
        "storagePoolExtId": {
          "type": "string",
          "description": "- extId of the Storage Pool owning the Storage Container instance.\n"
        },
        "tenantId": {
          "type": "string",
          "description": "- A globally unique identifier that represents the tenant that owns this entity.\n"
        }
      },
      "type": "object",
      "required": [
        "affinityHostExtId",
        "cacheDeduplication",
        "clusterExtId",
        "clusterName",
        "compressionDelaySecs",
        "containerExtId",
        "erasureCode",
        "erasureCodeDelaySecs",
        "extId",
        "hasHigherEcFaultDomainPreference",
        "ignoreSmallFiles",
        "isCompressionEnabled",
        "isEncrypted",
        "isInlineEcEnabled",
        "isInternal",
        "isMarkedForRemoval",
        "isSoftwareEncryptionEnabled",
        "links",
        "logicalAdvertisedCapacityBytes",
        "logicalExplicitReservedCapacityBytes",
        "logicalImplicitReservedCapacityBytes",
        "maxCapacityBytes",
        "name",
        "onDiskDedup",
        "ownerExtId",
        "replicationFactor",
        "storagePoolExtId",
        "tenantId"
      ],
      "inputProperties": {
        "affinityHostExtId": {
          "type": "string",
          "description": "-(Optional) Affinity host extId for RF 1 Storage Container.\n"
        },
        "cacheDeduplication": {
          "type": "string",
          "description": "-(Optional) Indicates the current status of Cache Deduplication for the Container. available values:  `NONE`,    `OFF`,    `ON`\n"
        },
        "clusterExtId": {
          "type": "string",
          "description": "- ext id for the cluster owning the storage container.\n"
        },
        "compressionDelaySecs": {
          "type": "integer",
          "description": "-(Optional) The compression delay in seconds.\n"
        },
        "containerExtId": {
          "type": "string",
          "description": "- the storage container ext id\n"
        },
        "erasureCode": {
          "type": "string",
          "description": "-(Optional) Indicates the current status value for Erasure Coding for the Container. available values:  `NONE`,    `OFF`,    `ON`\n"
        },
        "erasureCodeDelaySecs": {
          "type": "integer",
          "description": "-(Optional) Delay in performing ErasureCode for the current Container instance.\n"
        },
        "extId": {
          "type": "string",
          "description": "- the storage container uuid\n"
        },
        "hasHigherEcFaultDomainPreference": {
          "type": "boolean",
          "description": "-(Optional) Indicates whether to prefer a higher Erasure Code fault domain.\n"
        },
        "ignoreSmallFiles": {
          "type": "boolean"
        },
        "isCompressionEnabled": {
          "type": "boolean",
          "description": "-(Optional) Indicates whether the compression is enabled for the Container.\n"
        },
        "isInlineEcEnabled": {
          "type": "boolean",
          "description": "-(Optional) Indicates whether data written to this container should be inline erasure coded or not. This field is only considered when ErasureCoding is enabled.\n"
        },
        "isInternal": {
          "type": "boolean",
          "description": "- Indicates whether the Container is internal and is managed by Nutanix.\n"
        },
        "isSoftwareEncryptionEnabled": {
          "type": "boolean",
          "description": "-(Optional) Indicates whether the Container instance has software encryption enabled.\n"
        },
        "logicalAdvertisedCapacityBytes": {
          "type": "integer",
          "description": "-(Optional) Max capacity of the Container as defined by the user.\n"
        },
        "logicalExplicitReservedCapacityBytes": {
          "type": "integer",
          "description": "-(Optional) Total reserved size (in bytes) of the container (set by Admin). This also accounts for the container's replication factor. The actual reserved capacity of the container will be the maximum of explicitReservedCapacity and implicitReservedCapacity.\n"
        },
        "name": {
          "type": "string",
          "description": "-(Required) Name of the storage container.  Note that the name of Storage Container should be unique per cluster.\n"
        },
        "nfsWhitelistAddresses": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FStorageContainersV2NfsWhitelistAddress:StorageContainersV2NfsWhitelistAddress"
          },
          "description": "-(Optional) List of NFS addresses which need to be whitelisted.\n"
        },
        "onDiskDedup": {
          "type": "string",
          "description": "- Indicates the current status of Disk Deduplication for the Container. available values:  `NONE`,    `OFF`,    `POST_PROCESS`\n"
        },
        "ownerExtId": {
          "type": "string",
          "description": "-(Optional) owner ext id\n"
        },
        "replicationFactor": {
          "type": "integer",
          "description": "-(Optional) Replication factor of the Storage Container.\n"
        }
      },
      "requiredInputs": [
        "clusterExtId"
      ],
      "stateInputs": {
        "description": "Input properties used for looking up and filtering StorageContainersV2 resources.\n",
        "properties": {
          "affinityHostExtId": {
            "type": "string",
            "description": "-(Optional) Affinity host extId for RF 1 Storage Container.\n"
          },
          "cacheDeduplication": {
            "type": "string",
            "description": "-(Optional) Indicates the current status of Cache Deduplication for the Container. available values:  `NONE`,    `OFF`,    `ON`\n"
          },
          "clusterExtId": {
            "type": "string",
            "description": "- ext id for the cluster owning the storage container.\n"
          },
          "clusterName": {
            "type": "string",
            "description": "- Corresponding name of the Cluster owning the Storage Container instance.\n"
          },
          "compressionDelaySecs": {
            "type": "integer",
            "description": "-(Optional) The compression delay in seconds.\n"
          },
          "containerExtId": {
            "type": "string",
            "description": "- the storage container ext id\n"
          },
          "erasureCode": {
            "type": "string",
            "description": "-(Optional) Indicates the current status value for Erasure Coding for the Container. available values:  `NONE`,    `OFF`,    `ON`\n"
          },
          "erasureCodeDelaySecs": {
            "type": "integer",
            "description": "-(Optional) Delay in performing ErasureCode for the current Container instance.\n"
          },
          "extId": {
            "type": "string",
            "description": "- the storage container uuid\n"
          },
          "hasHigherEcFaultDomainPreference": {
            "type": "boolean",
            "description": "-(Optional) Indicates whether to prefer a higher Erasure Code fault domain.\n"
          },
          "ignoreSmallFiles": {
            "type": "boolean"
          },
          "isCompressionEnabled": {
            "type": "boolean",
            "description": "-(Optional) Indicates whether the compression is enabled for the Container.\n"
          },
          "isEncrypted": {
            "type": "boolean",
            "description": "- Indicates whether the Container is encrypted or not.\n"
          },
          "isInlineEcEnabled": {
            "type": "boolean",
            "description": "-(Optional) Indicates whether data written to this container should be inline erasure coded or not. This field is only considered when ErasureCoding is enabled.\n"
          },
          "isInternal": {
            "type": "boolean",
            "description": "- Indicates whether the Container is internal and is managed by Nutanix.\n"
          },
          "isMarkedForRemoval": {
            "type": "boolean",
            "description": "- Indicates if the Storage Container is marked for removal. This field is set when the Storage Container is about to be destroyed.\n"
          },
          "isSoftwareEncryptionEnabled": {
            "type": "boolean",
            "description": "-(Optional) Indicates whether the Container instance has software encryption enabled.\n"
          },
          "links": {
            "type": "array",
            "items": {
              "$ref": "#/types/nutanix:index%2FStorageContainersV2Link:StorageContainersV2Link"
            },
            "description": "- A HATEOAS style link for the response. Each link contains a user-friendly name identifying the link and an address for retrieving the particular resource.\n"
          },
          "logicalAdvertisedCapacityBytes": {
            "type": "integer",
            "description": "-(Optional) Max capacity of the Container as defined by the user.\n"
          },
          "logicalExplicitReservedCapacityBytes": {
            "type": "integer",
            "description": "-(Optional) Total reserved size (in bytes) of the container (set by Admin). This also accounts for the container's replication factor. The actual reserved capacity of the container will be the maximum of explicitReservedCapacity and implicitReservedCapacity.\n"
          },
          "logicalImplicitReservedCapacityBytes": {
            "type": "integer",
            "description": "- This is the summation of reservations provisioned on all vdisks in the container. The actual reserved capacity of the container will be the maximum of explicitReservedCapacity and implicitReservedCapacity\n"
          },
          "maxCapacityBytes": {
            "type": "integer",
            "description": "- Maximum physical capacity of the Storage Container in bytes.\n"
          },
          "name": {
            "type": "string",
            "description": "-(Required) Name of the storage container.  Note that the name of Storage Container should be unique per cluster.\n"
          },
          "nfsWhitelistAddresses": {
            "type": "array",
            "items": {
              "$ref": "#/types/nutanix:index%2FStorageContainersV2NfsWhitelistAddress:StorageContainersV2NfsWhitelistAddress"
            },
            "description": "-(Optional) List of NFS addresses which need to be whitelisted.\n"
          },
          "onDiskDedup": {
            "type": "string",
            "description": "- Indicates the current status of Disk Deduplication for the Container. available values:  `NONE`,    `OFF`,    `POST_PROCESS`\n"
          },
          "ownerExtId": {
            "type": "string",
            "description": "-(Optional) owner ext id\n"
          },
          "replicationFactor": {
            "type": "integer",
            "description": "-(Optional) Replication factor of the Storage Container.\n"
          },
          "storagePoolExtId": {
            "type": "string",
            "description": "- extId of the Storage Pool owning the Storage Container instance.\n"
          },
          "tenantId": {
            "type": "string",
            "description": "- A globally unique identifier that represents the tenant that owns this entity.\n"
          }
        },
        "type": "object"
      }
    },
    "nutanix:index/subnet:Subnet": {
      "description": "Provides a resource to create a subnet based on the input parameters. A subnet is a block of IP addresses.\n\n## Example Usage\n\n<!--Start PulumiCodeChooser -->\n```yaml\nresources:\n  next-iac-managed:\n    type: nutanix:Subnet\n    properties:\n      clusterUuid: ${clusters.entities[0].metadata.uuid}\n      name: next-iac-managed-example\n      vlanId: 101\n      subnetType: VLAN\n      prefixLength: 20\n      defaultGatewayIp: 10.5.80.1\n      subnetIp: 10.5.80.0\n      dhcpDomainNameServerLists:\n        - 8.8.8.8\n        - 4.2.2.2\n      dhcpDomainSearchLists:\n        - nutanix.com\n        - eng.nutanix.com\nvariables:\n  clusters:\n    fn::invoke:\n      function: nutanix:getClusters\n      arguments:\n        metadata:\n          length: 2\noutputs:\n  cluster: ${clusters.entities[0].metadata.uuid}\n```\n<!--End PulumiCodeChooser -->\n",
      "properties": {
        "apiVersion": {
          "type": "string",
          "description": "The version of the API.\n"
        },
        "availabilityZoneReference": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          },
          "description": "- (Optional) The reference to a availability_zone.\n"
        },
        "categories": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FSubnetCategory:SubnetCategory"
          },
          "description": "- (Optional) The categories of the resource.\n"
        },
        "clusterName": {
          "type": "string"
        },
        "clusterUuid": {
          "type": "string",
          "description": "- (Required) The UUID of the cluster.\n"
        },
        "defaultGatewayIp": {
          "type": "string",
          "description": "- (Optional) Default gateway IP address.\n"
        },
        "description": {
          "type": "string",
          "description": "- (Optional) A description for subnet.\n"
        },
        "dhcpDomainNameServerLists": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "- (Optional). List of Domain Name Server addresses .\n"
        },
        "dhcpDomainSearchLists": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "- (Optional).The DNS domain search list .\n"
        },
        "dhcpOptions": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          },
          "description": "- (Optional) Spec for defining DHCP options.\n"
        },
        "dhcpServerAddress": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          },
          "description": "- (Optional) Host address.\n"
        },
        "dhcpServerAddressPort": {
          "type": "integer",
          "description": "- (Optional) Port Number.\n"
        },
        "enableNat": {
          "type": "boolean",
          "description": "- (Optional) Whether NAT should be performed for VPCs attaching to the subnet. This field is supported only for external subnets. NAT is enabled by default on external subnets.\n"
        },
        "ipConfigPoolListRanges": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "-(Optional) Range of IPs.\n"
        },
        "isExternal": {
          "type": "boolean",
          "description": "- (Optional) Whether the subnet is external subnet or not.\n"
        },
        "metadata": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          },
          "description": "- (Required) The subnet kind metadata.\n"
        },
        "name": {
          "type": "string",
          "description": "- (Optional) Subnet name (Readonly).\n"
        },
        "networkFunctionChainReference": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          },
          "description": "- (Optional) The reference to a network_function_chain.\n"
        },
        "ownerReference": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          },
          "description": "- (Optional) The reference to a user.\n"
        },
        "prefixLength": {
          "type": "integer",
          "description": "- (Optional).\n"
        },
        "projectReference": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          },
          "description": "- (Optional) The reference to a project.\n"
        },
        "state": {
          "type": "string",
          "description": "- The state of the subnet.\n"
        },
        "subnetIp": {
          "type": "string",
          "description": "- (Optional) Subnet IP address.\n"
        },
        "subnetType": {
          "type": "string",
          "description": "- (Optional). Valid Types are [\"VLAN\", \"OVERLAY\"]\n"
        },
        "vlanId": {
          "type": "integer",
          "description": "- (Optional). For VLAN subnet.\n"
        },
        "vpcReferenceUuid": {
          "type": "string",
          "description": "VPC reference uuid\n"
        },
        "vswitchName": {
          "type": "string",
          "description": "- (Optional).\n"
        }
      },
      "type": "object",
      "required": [
        "apiVersion",
        "availabilityZoneReference",
        "categories",
        "clusterName",
        "defaultGatewayIp",
        "description",
        "dhcpDomainNameServerLists",
        "dhcpDomainSearchLists",
        "dhcpOptions",
        "dhcpServerAddress",
        "dhcpServerAddressPort",
        "enableNat",
        "ipConfigPoolListRanges",
        "isExternal",
        "metadata",
        "name",
        "networkFunctionChainReference",
        "ownerReference",
        "prefixLength",
        "projectReference",
        "state",
        "subnetIp",
        "subnetType",
        "vlanId",
        "vpcReferenceUuid",
        "vswitchName"
      ],
      "inputProperties": {
        "availabilityZoneReference": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          },
          "description": "- (Optional) The reference to a availability_zone.\n"
        },
        "categories": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FSubnetCategory:SubnetCategory"
          },
          "description": "- (Optional) The categories of the resource.\n"
        },
        "clusterUuid": {
          "type": "string",
          "description": "- (Required) The UUID of the cluster.\n"
        },
        "defaultGatewayIp": {
          "type": "string",
          "description": "- (Optional) Default gateway IP address.\n"
        },
        "description": {
          "type": "string",
          "description": "- (Optional) A description for subnet.\n"
        },
        "dhcpDomainNameServerLists": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "- (Optional). List of Domain Name Server addresses .\n"
        },
        "dhcpDomainSearchLists": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "- (Optional).The DNS domain search list .\n"
        },
        "dhcpOptions": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          },
          "description": "- (Optional) Spec for defining DHCP options.\n"
        },
        "dhcpServerAddress": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          },
          "description": "- (Optional) Host address.\n"
        },
        "dhcpServerAddressPort": {
          "type": "integer",
          "description": "- (Optional) Port Number.\n"
        },
        "enableNat": {
          "type": "boolean",
          "description": "- (Optional) Whether NAT should be performed for VPCs attaching to the subnet. This field is supported only for external subnets. NAT is enabled by default on external subnets.\n"
        },
        "ipConfigPoolListRanges": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "-(Optional) Range of IPs.\n"
        },
        "isExternal": {
          "type": "boolean",
          "description": "- (Optional) Whether the subnet is external subnet or not.\n",
          "willReplaceOnChanges": true
        },
        "name": {
          "type": "string",
          "description": "- (Optional) Subnet name (Readonly).\n"
        },
        "networkFunctionChainReference": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          },
          "description": "- (Optional) The reference to a network_function_chain.\n"
        },
        "ownerReference": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          },
          "description": "- (Optional) The reference to a user.\n"
        },
        "prefixLength": {
          "type": "integer",
          "description": "- (Optional).\n"
        },
        "projectReference": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          },
          "description": "- (Optional) The reference to a project.\n"
        },
        "subnetIp": {
          "type": "string",
          "description": "- (Optional) Subnet IP address.\n"
        },
        "subnetType": {
          "type": "string",
          "description": "- (Optional). Valid Types are [\"VLAN\", \"OVERLAY\"]\n"
        },
        "vlanId": {
          "type": "integer",
          "description": "- (Optional). For VLAN subnet.\n",
          "willReplaceOnChanges": true
        },
        "vpcReferenceUuid": {
          "type": "string",
          "description": "VPC reference uuid\n",
          "willReplaceOnChanges": true
        },
        "vswitchName": {
          "type": "string",
          "description": "- (Optional).\n"
        }
      },
      "requiredInputs": [
        "subnetType"
      ],
      "stateInputs": {
        "description": "Input properties used for looking up and filtering Subnet resources.\n",
        "properties": {
          "apiVersion": {
            "type": "string",
            "description": "The version of the API.\n"
          },
          "availabilityZoneReference": {
            "type": "object",
            "additionalProperties": {
              "type": "string"
            },
            "description": "- (Optional) The reference to a availability_zone.\n"
          },
          "categories": {
            "type": "array",
            "items": {
              "$ref": "#/types/nutanix:index%2FSubnetCategory:SubnetCategory"
            },
            "description": "- (Optional) The categories of the resource.\n"
          },
          "clusterName": {
            "type": "string"
          },
          "clusterUuid": {
            "type": "string",
            "description": "- (Required) The UUID of the cluster.\n"
          },
          "defaultGatewayIp": {
            "type": "string",
            "description": "- (Optional) Default gateway IP address.\n"
          },
          "description": {
            "type": "string",
            "description": "- (Optional) A description for subnet.\n"
          },
          "dhcpDomainNameServerLists": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "description": "- (Optional). List of Domain Name Server addresses .\n"
          },
          "dhcpDomainSearchLists": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "description": "- (Optional).The DNS domain search list .\n"
          },
          "dhcpOptions": {
            "type": "object",
            "additionalProperties": {
              "type": "string"
            },
            "description": "- (Optional) Spec for defining DHCP options.\n"
          },
          "dhcpServerAddress": {
            "type": "object",
            "additionalProperties": {
              "type": "string"
            },
            "description": "- (Optional) Host address.\n"
          },
          "dhcpServerAddressPort": {
            "type": "integer",
            "description": "- (Optional) Port Number.\n"
          },
          "enableNat": {
            "type": "boolean",
            "description": "- (Optional) Whether NAT should be performed for VPCs attaching to the subnet. This field is supported only for external subnets. NAT is enabled by default on external subnets.\n"
          },
          "ipConfigPoolListRanges": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "description": "-(Optional) Range of IPs.\n"
          },
          "isExternal": {
            "type": "boolean",
            "description": "- (Optional) Whether the subnet is external subnet or not.\n",
            "willReplaceOnChanges": true
          },
          "metadata": {
            "type": "object",
            "additionalProperties": {
              "type": "string"
            },
            "description": "- (Required) The subnet kind metadata.\n"
          },
          "name": {
            "type": "string",
            "description": "- (Optional) Subnet name (Readonly).\n"
          },
          "networkFunctionChainReference": {
            "type": "object",
            "additionalProperties": {
              "type": "string"
            },
            "description": "- (Optional) The reference to a network_function_chain.\n"
          },
          "ownerReference": {
            "type": "object",
            "additionalProperties": {
              "type": "string"
            },
            "description": "- (Optional) The reference to a user.\n"
          },
          "prefixLength": {
            "type": "integer",
            "description": "- (Optional).\n"
          },
          "projectReference": {
            "type": "object",
            "additionalProperties": {
              "type": "string"
            },
            "description": "- (Optional) The reference to a project.\n"
          },
          "state": {
            "type": "string",
            "description": "- The state of the subnet.\n"
          },
          "subnetIp": {
            "type": "string",
            "description": "- (Optional) Subnet IP address.\n"
          },
          "subnetType": {
            "type": "string",
            "description": "- (Optional). Valid Types are [\"VLAN\", \"OVERLAY\"]\n"
          },
          "vlanId": {
            "type": "integer",
            "description": "- (Optional). For VLAN subnet.\n",
            "willReplaceOnChanges": true
          },
          "vpcReferenceUuid": {
            "type": "string",
            "description": "VPC reference uuid\n",
            "willReplaceOnChanges": true
          },
          "vswitchName": {
            "type": "string",
            "description": "- (Optional).\n"
          }
        },
        "type": "object"
      }
    },
    "nutanix:index/subnetV2:SubnetV2": {
      "properties": {
        "bridgeName": {
          "type": "string"
        },
        "clusterName": {
          "type": "string"
        },
        "clusterReference": {
          "type": "string"
        },
        "description": {
          "type": "string"
        },
        "dhcpOptions": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FSubnetV2DhcpOption:SubnetV2DhcpOption"
          }
        },
        "dynamicIpAddresses": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FSubnetV2DynamicIpAddress:SubnetV2DynamicIpAddress"
          }
        },
        "extId": {
          "type": "string"
        },
        "hypervisorType": {
          "type": "string"
        },
        "ipConfigs": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FSubnetV2IpConfig:SubnetV2IpConfig"
          }
        },
        "ipPrefix": {
          "type": "string"
        },
        "ipUsages": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FSubnetV2IpUsage:SubnetV2IpUsage"
          }
        },
        "isAdvancedNetworking": {
          "type": "boolean"
        },
        "isExternal": {
          "type": "boolean"
        },
        "isNatEnabled": {
          "type": "boolean"
        },
        "links": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FSubnetV2Link:SubnetV2Link"
          }
        },
        "migrationState": {
          "type": "string"
        },
        "name": {
          "type": "string"
        },
        "networkFunctionChainReference": {
          "type": "string"
        },
        "networkId": {
          "type": "integer"
        },
        "reservedIpAddresses": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FSubnetV2ReservedIpAddress:SubnetV2ReservedIpAddress"
          }
        },
        "subnetType": {
          "type": "string"
        },
        "virtualSwitchReference": {
          "type": "string"
        },
        "virtualSwitches": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FSubnetV2VirtualSwitch:SubnetV2VirtualSwitch"
          }
        },
        "vpcReference": {
          "type": "string"
        },
        "vpcs": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FSubnetV2Vpc:SubnetV2Vpc"
          }
        }
      },
      "type": "object",
      "required": [
        "bridgeName",
        "clusterName",
        "clusterReference",
        "dhcpOptions",
        "dynamicIpAddresses",
        "extId",
        "hypervisorType",
        "ipConfigs",
        "ipPrefix",
        "ipUsages",
        "isAdvancedNetworking",
        "isExternal",
        "isNatEnabled",
        "links",
        "migrationState",
        "name",
        "networkFunctionChainReference",
        "reservedIpAddresses",
        "subnetType",
        "virtualSwitchReference",
        "virtualSwitches",
        "vpcReference",
        "vpcs"
      ],
      "inputProperties": {
        "bridgeName": {
          "type": "string"
        },
        "clusterName": {
          "type": "string"
        },
        "clusterReference": {
          "type": "string"
        },
        "description": {
          "type": "string"
        },
        "dhcpOptions": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FSubnetV2DhcpOption:SubnetV2DhcpOption"
          }
        },
        "dynamicIpAddresses": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FSubnetV2DynamicIpAddress:SubnetV2DynamicIpAddress"
          }
        },
        "extId": {
          "type": "string"
        },
        "hypervisorType": {
          "type": "string"
        },
        "ipConfigs": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FSubnetV2IpConfig:SubnetV2IpConfig"
          }
        },
        "ipPrefix": {
          "type": "string"
        },
        "ipUsages": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FSubnetV2IpUsage:SubnetV2IpUsage"
          }
        },
        "isAdvancedNetworking": {
          "type": "boolean"
        },
        "isExternal": {
          "type": "boolean"
        },
        "isNatEnabled": {
          "type": "boolean"
        },
        "name": {
          "type": "string"
        },
        "networkFunctionChainReference": {
          "type": "string"
        },
        "networkId": {
          "type": "integer"
        },
        "reservedIpAddresses": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FSubnetV2ReservedIpAddress:SubnetV2ReservedIpAddress"
          }
        },
        "subnetType": {
          "type": "string"
        },
        "virtualSwitchReference": {
          "type": "string"
        },
        "virtualSwitches": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FSubnetV2VirtualSwitch:SubnetV2VirtualSwitch"
          }
        },
        "vpcReference": {
          "type": "string"
        },
        "vpcs": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FSubnetV2Vpc:SubnetV2Vpc"
          }
        }
      },
      "requiredInputs": [
        "subnetType"
      ],
      "stateInputs": {
        "description": "Input properties used for looking up and filtering SubnetV2 resources.\n",
        "properties": {
          "bridgeName": {
            "type": "string"
          },
          "clusterName": {
            "type": "string"
          },
          "clusterReference": {
            "type": "string"
          },
          "description": {
            "type": "string"
          },
          "dhcpOptions": {
            "type": "array",
            "items": {
              "$ref": "#/types/nutanix:index%2FSubnetV2DhcpOption:SubnetV2DhcpOption"
            }
          },
          "dynamicIpAddresses": {
            "type": "array",
            "items": {
              "$ref": "#/types/nutanix:index%2FSubnetV2DynamicIpAddress:SubnetV2DynamicIpAddress"
            }
          },
          "extId": {
            "type": "string"
          },
          "hypervisorType": {
            "type": "string"
          },
          "ipConfigs": {
            "type": "array",
            "items": {
              "$ref": "#/types/nutanix:index%2FSubnetV2IpConfig:SubnetV2IpConfig"
            }
          },
          "ipPrefix": {
            "type": "string"
          },
          "ipUsages": {
            "type": "array",
            "items": {
              "$ref": "#/types/nutanix:index%2FSubnetV2IpUsage:SubnetV2IpUsage"
            }
          },
          "isAdvancedNetworking": {
            "type": "boolean"
          },
          "isExternal": {
            "type": "boolean"
          },
          "isNatEnabled": {
            "type": "boolean"
          },
          "links": {
            "type": "array",
            "items": {
              "$ref": "#/types/nutanix:index%2FSubnetV2Link:SubnetV2Link"
            }
          },
          "migrationState": {
            "type": "string"
          },
          "name": {
            "type": "string"
          },
          "networkFunctionChainReference": {
            "type": "string"
          },
          "networkId": {
            "type": "integer"
          },
          "reservedIpAddresses": {
            "type": "array",
            "items": {
              "$ref": "#/types/nutanix:index%2FSubnetV2ReservedIpAddress:SubnetV2ReservedIpAddress"
            }
          },
          "subnetType": {
            "type": "string"
          },
          "virtualSwitchReference": {
            "type": "string"
          },
          "virtualSwitches": {
            "type": "array",
            "items": {
              "$ref": "#/types/nutanix:index%2FSubnetV2VirtualSwitch:SubnetV2VirtualSwitch"
            }
          },
          "vpcReference": {
            "type": "string"
          },
          "vpcs": {
            "type": "array",
            "items": {
              "$ref": "#/types/nutanix:index%2FSubnetV2Vpc:SubnetV2Vpc"
            }
          }
        },
        "type": "object"
      }
    },
    "nutanix:index/templateGuestOsActionsV2:TemplateGuestOsActionsV2": {
      "description": "Performs Guest OS actions on given template. It Initiates, Completes and Cancels the Guest OS operation.\n\n## Example\n\n<!--Start PulumiCodeChooser -->\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as nutanix from \"@pierskarsenbarg/nutanix\";\n\nconst example_1 = new nutanix.TemplateGuestOsActionsV2(\"example-1\", {\n    extId: \"ab520e1d-4950-1db1-917f-a9e2ea35b8e3\",\n    action: \"initiate\",\n    versionId: \"c2c249b0-98a0-43fa-9ff6-dcde578d3936\",\n});\nconst example_2 = new nutanix.TemplateGuestOsActionsV2(\"example-2\", {\n    extId: \"8a938cc5-282b-48c4-81be-de22de145d07\",\n    action: \"complete\",\n    versionName: \"version_name\",\n    versionDescription: \"version desc\",\n    isActiveVersion: \"true\",\n});\nconst example_3 = new nutanix.TemplateGuestOsActionsV2(\"example-3\", {\n    extId: \"1cefd0f5-6d38-4c9b-a07c-bdd2db004224\",\n    action: \"cancel\",\n});\n```\n```python\nimport pulumi\nimport pulumi_nutanix as nutanix\n\nexample_1 = nutanix.TemplateGuestOsActionsV2(\"example-1\",\n    ext_id=\"ab520e1d-4950-1db1-917f-a9e2ea35b8e3\",\n    action=\"initiate\",\n    version_id=\"c2c249b0-98a0-43fa-9ff6-dcde578d3936\")\nexample_2 = nutanix.TemplateGuestOsActionsV2(\"example-2\",\n    ext_id=\"8a938cc5-282b-48c4-81be-de22de145d07\",\n    action=\"complete\",\n    version_name=\"version_name\",\n    version_description=\"version desc\",\n    is_active_version=\"true\")\nexample_3 = nutanix.TemplateGuestOsActionsV2(\"example-3\",\n    ext_id=\"1cefd0f5-6d38-4c9b-a07c-bdd2db004224\",\n    action=\"cancel\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Nutanix = PiersKarsenbarg.Nutanix;\n\nreturn await Deployment.RunAsync(() => \n{\n    var example_1 = new Nutanix.TemplateGuestOsActionsV2(\"example-1\", new()\n    {\n        ExtId = \"ab520e1d-4950-1db1-917f-a9e2ea35b8e3\",\n        Action = \"initiate\",\n        VersionId = \"c2c249b0-98a0-43fa-9ff6-dcde578d3936\",\n    });\n\n    var example_2 = new Nutanix.TemplateGuestOsActionsV2(\"example-2\", new()\n    {\n        ExtId = \"8a938cc5-282b-48c4-81be-de22de145d07\",\n        Action = \"complete\",\n        VersionName = \"version_name\",\n        VersionDescription = \"version desc\",\n        IsActiveVersion = \"true\",\n    });\n\n    var example_3 = new Nutanix.TemplateGuestOsActionsV2(\"example-3\", new()\n    {\n        ExtId = \"1cefd0f5-6d38-4c9b-a07c-bdd2db004224\",\n        Action = \"cancel\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pierskarsenbarg/pulumi-nutanix/sdk/go/nutanix\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := nutanix.NewTemplateGuestOsActionsV2(ctx, \"example-1\", &nutanix.TemplateGuestOsActionsV2Args{\n\t\t\tExtId:     pulumi.String(\"ab520e1d-4950-1db1-917f-a9e2ea35b8e3\"),\n\t\t\tAction:    pulumi.String(\"initiate\"),\n\t\t\tVersionId: pulumi.String(\"c2c249b0-98a0-43fa-9ff6-dcde578d3936\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = nutanix.NewTemplateGuestOsActionsV2(ctx, \"example-2\", &nutanix.TemplateGuestOsActionsV2Args{\n\t\t\tExtId:              pulumi.String(\"8a938cc5-282b-48c4-81be-de22de145d07\"),\n\t\t\tAction:             pulumi.String(\"complete\"),\n\t\t\tVersionName:        pulumi.String(\"version_name\"),\n\t\t\tVersionDescription: pulumi.String(\"version desc\"),\n\t\t\tIsActiveVersion:    pulumi.String(\"true\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = nutanix.NewTemplateGuestOsActionsV2(ctx, \"example-3\", &nutanix.TemplateGuestOsActionsV2Args{\n\t\t\tExtId:  pulumi.String(\"1cefd0f5-6d38-4c9b-a07c-bdd2db004224\"),\n\t\t\tAction: pulumi.String(\"cancel\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.nutanix.TemplateGuestOsActionsV2;\nimport com.pulumi.nutanix.TemplateGuestOsActionsV2Args;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var example_1 = new TemplateGuestOsActionsV2(\"example-1\", TemplateGuestOsActionsV2Args.builder()\n            .extId(\"ab520e1d-4950-1db1-917f-a9e2ea35b8e3\")\n            .action(\"initiate\")\n            .versionId(\"c2c249b0-98a0-43fa-9ff6-dcde578d3936\")\n            .build());\n\n        var example_2 = new TemplateGuestOsActionsV2(\"example-2\", TemplateGuestOsActionsV2Args.builder()\n            .extId(\"8a938cc5-282b-48c4-81be-de22de145d07\")\n            .action(\"complete\")\n            .versionName(\"version_name\")\n            .versionDescription(\"version desc\")\n            .isActiveVersion(\"true\")\n            .build());\n\n        var example_3 = new TemplateGuestOsActionsV2(\"example-3\", TemplateGuestOsActionsV2Args.builder()\n            .extId(\"1cefd0f5-6d38-4c9b-a07c-bdd2db004224\")\n            .action(\"cancel\")\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  example-1:\n    type: nutanix:TemplateGuestOsActionsV2\n    properties:\n      extId: ab520e1d-4950-1db1-917f-a9e2ea35b8e3\n      action: initiate\n      versionId: c2c249b0-98a0-43fa-9ff6-dcde578d3936\n  example-2:\n    type: nutanix:TemplateGuestOsActionsV2\n    properties:\n      extId: 8a938cc5-282b-48c4-81be-de22de145d07\n      action: complete\n      versionName: version_name\n      versionDescription: version desc\n      isActiveVersion: true\n  example-3:\n    type: nutanix:TemplateGuestOsActionsV2\n    properties:\n      extId: 1cefd0f5-6d38-4c9b-a07c-bdd2db004224\n      action: cancel\n```\n<!--End PulumiCodeChooser -->\n",
      "properties": {
        "action": {
          "type": "string",
          "description": "Actions to be performed. Acceptable values are \"initiate\", \"complete\", \"cancel\" .\n"
        },
        "extId": {
          "type": "string",
          "description": "The identifier of a Template.\n"
        },
        "isActiveVersion": {
          "type": "string",
          "description": "Specify whether to mark the Template Version as active or not. The newly created Version during Template Creation, Updating or Guest OS Updating is set to Active by default unless specified otherwise. Default is true. Only applicable with <span pulumi-lang-nodejs=\"`complete`\" pulumi-lang-dotnet=\"`Complete`\" pulumi-lang-go=\"`complete`\" pulumi-lang-python=\"`complete`\" pulumi-lang-yaml=\"`complete`\" pulumi-lang-java=\"`complete`\">`complete`</span> action.\n\n\nSee detailed information in [Nutanix Template Guest OS Action Initiate V4](https://developers.nutanix.com/api-reference?namespace=vmm&version=v4.0#tag/Templates/operation/initiateGuestUpdate).\nSee detailed information in [Nutanix Template Guest OS Action Complete V4](https://developers.nutanix.com/api-reference?namespace=vmm&version=v4.0#tag/Templates/operation/completeGuestUpdate).\nSee detailed information in [Nutanix Template Guest OS Action Cancel V4](https://developers.nutanix.com/api-reference?namespace=vmm&version=v4.0#tag/Templates/operation/cancelGuestUpdate).\n"
        },
        "versionDescription": {
          "type": "string",
          "description": "The user defined description of a Template Version. (Required) Only applicable with <span pulumi-lang-nodejs=\"`complete`\" pulumi-lang-dotnet=\"`Complete`\" pulumi-lang-go=\"`complete`\" pulumi-lang-python=\"`complete`\" pulumi-lang-yaml=\"`complete`\" pulumi-lang-java=\"`complete`\">`complete`</span> action.\n"
        },
        "versionId": {
          "type": "string",
          "description": "The identifier of a Template Version. Only applicable with `Initiate` action.\n"
        },
        "versionName": {
          "type": "string",
          "description": "The user defined name of a Template Version. Only applicable with <span pulumi-lang-nodejs=\"`complete`\" pulumi-lang-dotnet=\"`Complete`\" pulumi-lang-go=\"`complete`\" pulumi-lang-python=\"`complete`\" pulumi-lang-yaml=\"`complete`\" pulumi-lang-java=\"`complete`\">`complete`</span> action.\n"
        }
      },
      "type": "object",
      "required": [
        "action",
        "extId"
      ],
      "inputProperties": {
        "action": {
          "type": "string",
          "description": "Actions to be performed. Acceptable values are \"initiate\", \"complete\", \"cancel\" .\n"
        },
        "extId": {
          "type": "string",
          "description": "The identifier of a Template.\n"
        },
        "isActiveVersion": {
          "type": "string",
          "description": "Specify whether to mark the Template Version as active or not. The newly created Version during Template Creation, Updating or Guest OS Updating is set to Active by default unless specified otherwise. Default is true. Only applicable with <span pulumi-lang-nodejs=\"`complete`\" pulumi-lang-dotnet=\"`Complete`\" pulumi-lang-go=\"`complete`\" pulumi-lang-python=\"`complete`\" pulumi-lang-yaml=\"`complete`\" pulumi-lang-java=\"`complete`\">`complete`</span> action.\n\n\nSee detailed information in [Nutanix Template Guest OS Action Initiate V4](https://developers.nutanix.com/api-reference?namespace=vmm&version=v4.0#tag/Templates/operation/initiateGuestUpdate).\nSee detailed information in [Nutanix Template Guest OS Action Complete V4](https://developers.nutanix.com/api-reference?namespace=vmm&version=v4.0#tag/Templates/operation/completeGuestUpdate).\nSee detailed information in [Nutanix Template Guest OS Action Cancel V4](https://developers.nutanix.com/api-reference?namespace=vmm&version=v4.0#tag/Templates/operation/cancelGuestUpdate).\n"
        },
        "versionDescription": {
          "type": "string",
          "description": "The user defined description of a Template Version. (Required) Only applicable with <span pulumi-lang-nodejs=\"`complete`\" pulumi-lang-dotnet=\"`Complete`\" pulumi-lang-go=\"`complete`\" pulumi-lang-python=\"`complete`\" pulumi-lang-yaml=\"`complete`\" pulumi-lang-java=\"`complete`\">`complete`</span> action.\n"
        },
        "versionId": {
          "type": "string",
          "description": "The identifier of a Template Version. Only applicable with `Initiate` action.\n"
        },
        "versionName": {
          "type": "string",
          "description": "The user defined name of a Template Version. Only applicable with <span pulumi-lang-nodejs=\"`complete`\" pulumi-lang-dotnet=\"`Complete`\" pulumi-lang-go=\"`complete`\" pulumi-lang-python=\"`complete`\" pulumi-lang-yaml=\"`complete`\" pulumi-lang-java=\"`complete`\">`complete`</span> action.\n"
        }
      },
      "requiredInputs": [
        "action",
        "extId"
      ],
      "stateInputs": {
        "description": "Input properties used for looking up and filtering TemplateGuestOsActionsV2 resources.\n",
        "properties": {
          "action": {
            "type": "string",
            "description": "Actions to be performed. Acceptable values are \"initiate\", \"complete\", \"cancel\" .\n"
          },
          "extId": {
            "type": "string",
            "description": "The identifier of a Template.\n"
          },
          "isActiveVersion": {
            "type": "string",
            "description": "Specify whether to mark the Template Version as active or not. The newly created Version during Template Creation, Updating or Guest OS Updating is set to Active by default unless specified otherwise. Default is true. Only applicable with <span pulumi-lang-nodejs=\"`complete`\" pulumi-lang-dotnet=\"`Complete`\" pulumi-lang-go=\"`complete`\" pulumi-lang-python=\"`complete`\" pulumi-lang-yaml=\"`complete`\" pulumi-lang-java=\"`complete`\">`complete`</span> action.\n\n\nSee detailed information in [Nutanix Template Guest OS Action Initiate V4](https://developers.nutanix.com/api-reference?namespace=vmm&version=v4.0#tag/Templates/operation/initiateGuestUpdate).\nSee detailed information in [Nutanix Template Guest OS Action Complete V4](https://developers.nutanix.com/api-reference?namespace=vmm&version=v4.0#tag/Templates/operation/completeGuestUpdate).\nSee detailed information in [Nutanix Template Guest OS Action Cancel V4](https://developers.nutanix.com/api-reference?namespace=vmm&version=v4.0#tag/Templates/operation/cancelGuestUpdate).\n"
          },
          "versionDescription": {
            "type": "string",
            "description": "The user defined description of a Template Version. (Required) Only applicable with <span pulumi-lang-nodejs=\"`complete`\" pulumi-lang-dotnet=\"`Complete`\" pulumi-lang-go=\"`complete`\" pulumi-lang-python=\"`complete`\" pulumi-lang-yaml=\"`complete`\" pulumi-lang-java=\"`complete`\">`complete`</span> action.\n"
          },
          "versionId": {
            "type": "string",
            "description": "The identifier of a Template Version. Only applicable with `Initiate` action.\n"
          },
          "versionName": {
            "type": "string",
            "description": "The user defined name of a Template Version. Only applicable with <span pulumi-lang-nodejs=\"`complete`\" pulumi-lang-dotnet=\"`Complete`\" pulumi-lang-go=\"`complete`\" pulumi-lang-python=\"`complete`\" pulumi-lang-yaml=\"`complete`\" pulumi-lang-java=\"`complete`\">`complete`</span> action.\n"
          }
        },
        "type": "object"
      }
    },
    "nutanix:index/templateV2:TemplateV2": {
      "properties": {
        "createTime": {
          "type": "string"
        },
        "createdBies": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FTemplateV2CreatedBy:TemplateV2CreatedBy"
          }
        },
        "extId": {
          "type": "string"
        },
        "guestUpdateStatuses": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FTemplateV2GuestUpdateStatus:TemplateV2GuestUpdateStatus"
          }
        },
        "links": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FTemplateV2Link:TemplateV2Link"
          }
        },
        "templateDescription": {
          "type": "string"
        },
        "templateName": {
          "type": "string"
        },
        "templateVersionSpec": {
          "$ref": "#/types/nutanix:index%2FTemplateV2TemplateVersionSpec:TemplateV2TemplateVersionSpec"
        },
        "tenantId": {
          "type": "string"
        },
        "updateTime": {
          "type": "string"
        },
        "updatedBies": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FTemplateV2UpdatedBy:TemplateV2UpdatedBy"
          }
        }
      },
      "type": "object",
      "required": [
        "createTime",
        "createdBies",
        "extId",
        "guestUpdateStatuses",
        "links",
        "templateDescription",
        "templateName",
        "templateVersionSpec",
        "tenantId",
        "updateTime",
        "updatedBies"
      ],
      "inputProperties": {
        "createdBies": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FTemplateV2CreatedBy:TemplateV2CreatedBy"
          }
        },
        "guestUpdateStatuses": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FTemplateV2GuestUpdateStatus:TemplateV2GuestUpdateStatus"
          }
        },
        "templateDescription": {
          "type": "string"
        },
        "templateName": {
          "type": "string"
        },
        "templateVersionSpec": {
          "$ref": "#/types/nutanix:index%2FTemplateV2TemplateVersionSpec:TemplateV2TemplateVersionSpec"
        },
        "updatedBies": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FTemplateV2UpdatedBy:TemplateV2UpdatedBy"
          }
        }
      },
      "requiredInputs": [
        "templateName",
        "templateVersionSpec"
      ],
      "stateInputs": {
        "description": "Input properties used for looking up and filtering TemplateV2 resources.\n",
        "properties": {
          "createTime": {
            "type": "string"
          },
          "createdBies": {
            "type": "array",
            "items": {
              "$ref": "#/types/nutanix:index%2FTemplateV2CreatedBy:TemplateV2CreatedBy"
            }
          },
          "extId": {
            "type": "string"
          },
          "guestUpdateStatuses": {
            "type": "array",
            "items": {
              "$ref": "#/types/nutanix:index%2FTemplateV2GuestUpdateStatus:TemplateV2GuestUpdateStatus"
            }
          },
          "links": {
            "type": "array",
            "items": {
              "$ref": "#/types/nutanix:index%2FTemplateV2Link:TemplateV2Link"
            }
          },
          "templateDescription": {
            "type": "string"
          },
          "templateName": {
            "type": "string"
          },
          "templateVersionSpec": {
            "$ref": "#/types/nutanix:index%2FTemplateV2TemplateVersionSpec:TemplateV2TemplateVersionSpec"
          },
          "tenantId": {
            "type": "string"
          },
          "updateTime": {
            "type": "string"
          },
          "updatedBies": {
            "type": "array",
            "items": {
              "$ref": "#/types/nutanix:index%2FTemplateV2UpdatedBy:TemplateV2UpdatedBy"
            }
          }
        },
        "type": "object"
      }
    },
    "nutanix:index/user:User": {
      "description": "Provides a resource to create a user based on the input parameters.\n\n## Example Usage\n\n<!--Start PulumiCodeChooser -->\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as nutanix from \"@pierskarsenbarg/nutanix\";\n\nconst user = new nutanix.User(\"user\", {directoryServiceUser: {\n    userPrincipalName: \"test-user@ntnxlab.local\",\n    directoryServiceReference: {\n        uuid: \"<directory-service-uuid>\",\n    },\n}});\n```\n```python\nimport pulumi\nimport pulumi_nutanix as nutanix\n\nuser = nutanix.User(\"user\", directory_service_user={\n    \"user_principal_name\": \"test-user@ntnxlab.local\",\n    \"directory_service_reference\": {\n        \"uuid\": \"<directory-service-uuid>\",\n    },\n})\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Nutanix = PiersKarsenbarg.Nutanix;\n\nreturn await Deployment.RunAsync(() => \n{\n    var user = new Nutanix.User(\"user\", new()\n    {\n        DirectoryServiceUser = new Nutanix.Inputs.UserDirectoryServiceUserArgs\n        {\n            UserPrincipalName = \"test-user@ntnxlab.local\",\n            DirectoryServiceReference = new Nutanix.Inputs.UserDirectoryServiceUserDirectoryServiceReferenceArgs\n            {\n                Uuid = \"<directory-service-uuid>\",\n            },\n        },\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pierskarsenbarg/pulumi-nutanix/sdk/go/nutanix\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := nutanix.NewUser(ctx, \"user\", &nutanix.UserArgs{\n\t\t\tDirectoryServiceUser: &nutanix.UserDirectoryServiceUserArgs{\n\t\t\t\tUserPrincipalName: pulumi.String(\"test-user@ntnxlab.local\"),\n\t\t\t\tDirectoryServiceReference: &nutanix.UserDirectoryServiceUserDirectoryServiceReferenceArgs{\n\t\t\t\t\tUuid: pulumi.String(\"<directory-service-uuid>\"),\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.nutanix.User;\nimport com.pulumi.nutanix.UserArgs;\nimport com.pulumi.nutanix.inputs.UserDirectoryServiceUserArgs;\nimport com.pulumi.nutanix.inputs.UserDirectoryServiceUserDirectoryServiceReferenceArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var user = new User(\"user\", UserArgs.builder()\n            .directoryServiceUser(UserDirectoryServiceUserArgs.builder()\n                .userPrincipalName(\"test-user@ntnxlab.local\")\n                .directoryServiceReference(UserDirectoryServiceUserDirectoryServiceReferenceArgs.builder()\n                    .uuid(\"<directory-service-uuid>\")\n                    .build())\n                .build())\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  user:\n    type: nutanix:User\n    properties:\n      directoryServiceUser:\n        userPrincipalName: test-user@ntnxlab.local\n        directoryServiceReference:\n          uuid: <directory-service-uuid>\n```\n<!--End PulumiCodeChooser -->\n\n\n<!--Start PulumiCodeChooser -->\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as nutanix from \"@pierskarsenbarg/nutanix\";\n\nconst user = new nutanix.User(\"user\", {identityProviderUser: {\n    username: \"username\",\n    identityProviderReference: {\n        uuid: \"<identity-provider-uuid>\",\n    },\n}});\n```\n```python\nimport pulumi\nimport pulumi_nutanix as nutanix\n\nuser = nutanix.User(\"user\", identity_provider_user={\n    \"username\": \"username\",\n    \"identity_provider_reference\": {\n        \"uuid\": \"<identity-provider-uuid>\",\n    },\n})\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Nutanix = PiersKarsenbarg.Nutanix;\n\nreturn await Deployment.RunAsync(() => \n{\n    var user = new Nutanix.User(\"user\", new()\n    {\n        IdentityProviderUser = new Nutanix.Inputs.UserIdentityProviderUserArgs\n        {\n            Username = \"username\",\n            IdentityProviderReference = new Nutanix.Inputs.UserIdentityProviderUserIdentityProviderReferenceArgs\n            {\n                Uuid = \"<identity-provider-uuid>\",\n            },\n        },\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pierskarsenbarg/pulumi-nutanix/sdk/go/nutanix\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := nutanix.NewUser(ctx, \"user\", &nutanix.UserArgs{\n\t\t\tIdentityProviderUser: &nutanix.UserIdentityProviderUserArgs{\n\t\t\t\tUsername: pulumi.String(\"username\"),\n\t\t\t\tIdentityProviderReference: &nutanix.UserIdentityProviderUserIdentityProviderReferenceArgs{\n\t\t\t\t\tUuid: pulumi.String(\"<identity-provider-uuid>\"),\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.nutanix.User;\nimport com.pulumi.nutanix.UserArgs;\nimport com.pulumi.nutanix.inputs.UserIdentityProviderUserArgs;\nimport com.pulumi.nutanix.inputs.UserIdentityProviderUserIdentityProviderReferenceArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var user = new User(\"user\", UserArgs.builder()\n            .identityProviderUser(UserIdentityProviderUserArgs.builder()\n                .username(\"username\")\n                .identityProviderReference(UserIdentityProviderUserIdentityProviderReferenceArgs.builder()\n                    .uuid(\"<identity-provider-uuid>\")\n                    .build())\n                .build())\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  user:\n    type: nutanix:User\n    properties:\n      identityProviderUser:\n        username: username\n        identityProviderReference:\n          uuid: <identity-provider-uuid>\n```\n<!--End PulumiCodeChooser -->\n",
      "properties": {
        "accessControlPolicyReferenceLists": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FUserAccessControlPolicyReferenceList:UserAccessControlPolicyReferenceList"
          },
          "description": "- List of ACP references. See #reference for more details.\n"
        },
        "apiVersion": {
          "type": "string",
          "description": "The version of the API.\n"
        },
        "categories": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FUserCategory:UserCategory"
          },
          "description": "- (Optional) Categories for the Access Control Policy.\n"
        },
        "directoryServiceUser": {
          "$ref": "#/types/nutanix:index%2FUserDirectoryServiceUser:UserDirectoryServiceUser",
          "description": "- (Optional) The directory service user configuration. See below for more information.\n"
        },
        "displayName": {
          "type": "string",
          "description": "- The display name of the user (common name) provided by the directory service.\n"
        },
        "identityProviderUser": {
          "$ref": "#/types/nutanix:index%2FUserIdentityProviderUser:UserIdentityProviderUser",
          "description": "- (Optional) (Optional) The identity provider user configuration. See below for more information.\n"
        },
        "metadata": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          },
          "description": "- The vm kind metadata.\n"
        },
        "name": {
          "type": "string",
          "description": "- the name(Optional).\n"
        },
        "ownerReference": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          },
          "description": "- (Optional) The reference to a user.\n"
        },
        "projectReference": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          },
          "description": "- (Optional) The reference to a project.\n"
        },
        "projectReferenceLists": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FUserProjectReferenceList:UserProjectReferenceList"
          },
          "description": "- A list of projects the user is part of. See #reference for more details.\n"
        },
        "state": {
          "type": "string",
          "description": "- The state of the entity.\n"
        },
        "userType": {
          "type": "string",
          "description": "- The name of the user.\n"
        }
      },
      "type": "object",
      "required": [
        "accessControlPolicyReferenceLists",
        "apiVersion",
        "categories",
        "directoryServiceUser",
        "displayName",
        "identityProviderUser",
        "metadata",
        "name",
        "ownerReference",
        "projectReferenceLists",
        "state",
        "userType"
      ],
      "inputProperties": {
        "categories": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FUserCategory:UserCategory"
          },
          "description": "- (Optional) Categories for the Access Control Policy.\n"
        },
        "directoryServiceUser": {
          "$ref": "#/types/nutanix:index%2FUserDirectoryServiceUser:UserDirectoryServiceUser",
          "description": "- (Optional) The directory service user configuration. See below for more information.\n"
        },
        "identityProviderUser": {
          "$ref": "#/types/nutanix:index%2FUserIdentityProviderUser:UserIdentityProviderUser",
          "description": "- (Optional) (Optional) The identity provider user configuration. See below for more information.\n"
        },
        "ownerReference": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          },
          "description": "- (Optional) The reference to a user.\n"
        },
        "projectReference": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          },
          "description": "- (Optional) The reference to a project.\n"
        }
      },
      "stateInputs": {
        "description": "Input properties used for looking up and filtering User resources.\n",
        "properties": {
          "accessControlPolicyReferenceLists": {
            "type": "array",
            "items": {
              "$ref": "#/types/nutanix:index%2FUserAccessControlPolicyReferenceList:UserAccessControlPolicyReferenceList"
            },
            "description": "- List of ACP references. See #reference for more details.\n"
          },
          "apiVersion": {
            "type": "string",
            "description": "The version of the API.\n"
          },
          "categories": {
            "type": "array",
            "items": {
              "$ref": "#/types/nutanix:index%2FUserCategory:UserCategory"
            },
            "description": "- (Optional) Categories for the Access Control Policy.\n"
          },
          "directoryServiceUser": {
            "$ref": "#/types/nutanix:index%2FUserDirectoryServiceUser:UserDirectoryServiceUser",
            "description": "- (Optional) The directory service user configuration. See below for more information.\n"
          },
          "displayName": {
            "type": "string",
            "description": "- The display name of the user (common name) provided by the directory service.\n"
          },
          "identityProviderUser": {
            "$ref": "#/types/nutanix:index%2FUserIdentityProviderUser:UserIdentityProviderUser",
            "description": "- (Optional) (Optional) The identity provider user configuration. See below for more information.\n"
          },
          "metadata": {
            "type": "object",
            "additionalProperties": {
              "type": "string"
            },
            "description": "- The vm kind metadata.\n"
          },
          "name": {
            "type": "string",
            "description": "- the name(Optional).\n"
          },
          "ownerReference": {
            "type": "object",
            "additionalProperties": {
              "type": "string"
            },
            "description": "- (Optional) The reference to a user.\n"
          },
          "projectReference": {
            "type": "object",
            "additionalProperties": {
              "type": "string"
            },
            "description": "- (Optional) The reference to a project.\n"
          },
          "projectReferenceLists": {
            "type": "array",
            "items": {
              "$ref": "#/types/nutanix:index%2FUserProjectReferenceList:UserProjectReferenceList"
            },
            "description": "- A list of projects the user is part of. See #reference for more details.\n"
          },
          "state": {
            "type": "string",
            "description": "- The state of the entity.\n"
          },
          "userType": {
            "type": "string",
            "description": "- The name of the user.\n"
          }
        },
        "type": "object"
      }
    },
    "nutanix:index/userGroups:UserGroups": {
      "description": "Provides a resource to add a User group to the system..\n\n## Example Usage\n\n<!--Start PulumiCodeChooser -->\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as nutanix from \"@pierskarsenbarg/nutanix\";\n\nconst userGrp = new nutanix.UserGroups(\"user_grp\", {directoryServiceUserGroups: [{\n    distinguishedName: \"<distinguished name for the user group>\",\n}]});\n```\n```python\nimport pulumi\nimport pulumi_nutanix as nutanix\n\nuser_grp = nutanix.UserGroups(\"user_grp\", directory_service_user_groups=[{\n    \"distinguished_name\": \"<distinguished name for the user group>\",\n}])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Nutanix = PiersKarsenbarg.Nutanix;\n\nreturn await Deployment.RunAsync(() => \n{\n    var userGrp = new Nutanix.UserGroups(\"user_grp\", new()\n    {\n        DirectoryServiceUserGroups = new[]\n        {\n            new Nutanix.Inputs.UserGroupsDirectoryServiceUserGroupArgs\n            {\n                DistinguishedName = \"<distinguished name for the user group>\",\n            },\n        },\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pierskarsenbarg/pulumi-nutanix/sdk/go/nutanix\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := nutanix.NewUserGroups(ctx, \"user_grp\", &nutanix.UserGroupsArgs{\n\t\t\tDirectoryServiceUserGroups: nutanix.UserGroupsDirectoryServiceUserGroupArray{\n\t\t\t\t&nutanix.UserGroupsDirectoryServiceUserGroupArgs{\n\t\t\t\t\tDistinguishedName: pulumi.String(\"<distinguished name for the user group>\"),\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.nutanix.UserGroups;\nimport com.pulumi.nutanix.UserGroupsArgs;\nimport com.pulumi.nutanix.inputs.UserGroupsDirectoryServiceUserGroupArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var userGrp = new UserGroups(\"userGrp\", UserGroupsArgs.builder()\n            .directoryServiceUserGroups(UserGroupsDirectoryServiceUserGroupArgs.builder()\n                .distinguishedName(\"<distinguished name for the user group>\")\n                .build())\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  userGrp:\n    type: nutanix:UserGroups\n    name: user_grp\n    properties:\n      directoryServiceUserGroups:\n        - distinguishedName: <distinguished name for the user group>\n```\n<!--End PulumiCodeChooser -->\n\n\n<!--Start PulumiCodeChooser -->\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as nutanix from \"@pierskarsenbarg/nutanix\";\n\nconst userGrp = new nutanix.UserGroups(\"user_grp\", {samlUserGroups: [{\n    name: \"<name of saml group>\",\n    idpUuid: \"<idp uuid of the group>\",\n}]});\n```\n```python\nimport pulumi\nimport pulumi_nutanix as nutanix\n\nuser_grp = nutanix.UserGroups(\"user_grp\", saml_user_groups=[{\n    \"name\": \"<name of saml group>\",\n    \"idp_uuid\": \"<idp uuid of the group>\",\n}])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Nutanix = PiersKarsenbarg.Nutanix;\n\nreturn await Deployment.RunAsync(() => \n{\n    var userGrp = new Nutanix.UserGroups(\"user_grp\", new()\n    {\n        SamlUserGroups = new[]\n        {\n            new Nutanix.Inputs.UserGroupsSamlUserGroupArgs\n            {\n                Name = \"<name of saml group>\",\n                IdpUuid = \"<idp uuid of the group>\",\n            },\n        },\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pierskarsenbarg/pulumi-nutanix/sdk/go/nutanix\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := nutanix.NewUserGroups(ctx, \"user_grp\", &nutanix.UserGroupsArgs{\n\t\t\tSamlUserGroups: nutanix.UserGroupsSamlUserGroupArray{\n\t\t\t\t&nutanix.UserGroupsSamlUserGroupArgs{\n\t\t\t\t\tName:    pulumi.String(\"<name of saml group>\"),\n\t\t\t\t\tIdpUuid: pulumi.String(\"<idp uuid of the group>\"),\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.nutanix.UserGroups;\nimport com.pulumi.nutanix.UserGroupsArgs;\nimport com.pulumi.nutanix.inputs.UserGroupsSamlUserGroupArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var userGrp = new UserGroups(\"userGrp\", UserGroupsArgs.builder()\n            .samlUserGroups(UserGroupsSamlUserGroupArgs.builder()\n                .name(\"<name of saml group>\")\n                .idpUuid(\"<idp uuid of the group>\")\n                .build())\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  userGrp:\n    type: nutanix:UserGroups\n    name: user_grp\n    properties:\n      samlUserGroups:\n        - name: <name of saml group>\n          idpUuid: <idp uuid of the group>\n```\n<!--End PulumiCodeChooser -->\n",
      "properties": {
        "categories": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FUserGroupsCategory:UserGroupsCategory"
          }
        },
        "directoryServiceOus": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FUserGroupsDirectoryServiceOus:UserGroupsDirectoryServiceOus"
          },
          "description": "- (Optional) A Directory Service organizational unit.\n"
        },
        "directoryServiceUserGroups": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FUserGroupsDirectoryServiceUserGroup:UserGroupsDirectoryServiceUserGroup"
          },
          "description": "- (Optional) A Directory Service user group.\n"
        },
        "metadata": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          },
          "description": "The<span pulumi-lang-nodejs=\" userGroup \" pulumi-lang-dotnet=\" UserGroup \" pulumi-lang-go=\" userGroup \" pulumi-lang-python=\" user_group \" pulumi-lang-yaml=\" userGroup \" pulumi-lang-java=\" userGroup \"> user_group </span>kind metadata.\n"
        },
        "ownerReference": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          }
        },
        "projectReference": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          }
        },
        "samlUserGroups": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FUserGroupsSamlUserGroup:UserGroupsSamlUserGroup"
          },
          "description": "- (Optional) A SAML Service user group.\n"
        }
      },
      "type": "object",
      "required": [
        "categories",
        "metadata",
        "ownerReference"
      ],
      "inputProperties": {
        "categories": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FUserGroupsCategory:UserGroupsCategory"
          }
        },
        "directoryServiceOus": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FUserGroupsDirectoryServiceOus:UserGroupsDirectoryServiceOus"
          },
          "description": "- (Optional) A Directory Service organizational unit.\n"
        },
        "directoryServiceUserGroups": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FUserGroupsDirectoryServiceUserGroup:UserGroupsDirectoryServiceUserGroup"
          },
          "description": "- (Optional) A Directory Service user group.\n"
        },
        "ownerReference": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          }
        },
        "projectReference": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          }
        },
        "samlUserGroups": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FUserGroupsSamlUserGroup:UserGroupsSamlUserGroup"
          },
          "description": "- (Optional) A SAML Service user group.\n"
        }
      },
      "stateInputs": {
        "description": "Input properties used for looking up and filtering UserGroups resources.\n",
        "properties": {
          "categories": {
            "type": "array",
            "items": {
              "$ref": "#/types/nutanix:index%2FUserGroupsCategory:UserGroupsCategory"
            }
          },
          "directoryServiceOus": {
            "type": "array",
            "items": {
              "$ref": "#/types/nutanix:index%2FUserGroupsDirectoryServiceOus:UserGroupsDirectoryServiceOus"
            },
            "description": "- (Optional) A Directory Service organizational unit.\n"
          },
          "directoryServiceUserGroups": {
            "type": "array",
            "items": {
              "$ref": "#/types/nutanix:index%2FUserGroupsDirectoryServiceUserGroup:UserGroupsDirectoryServiceUserGroup"
            },
            "description": "- (Optional) A Directory Service user group.\n"
          },
          "metadata": {
            "type": "object",
            "additionalProperties": {
              "type": "string"
            },
            "description": "The<span pulumi-lang-nodejs=\" userGroup \" pulumi-lang-dotnet=\" UserGroup \" pulumi-lang-go=\" userGroup \" pulumi-lang-python=\" user_group \" pulumi-lang-yaml=\" userGroup \" pulumi-lang-java=\" userGroup \"> user_group </span>kind metadata.\n"
          },
          "ownerReference": {
            "type": "object",
            "additionalProperties": {
              "type": "string"
            }
          },
          "projectReference": {
            "type": "object",
            "additionalProperties": {
              "type": "string"
            }
          },
          "samlUserGroups": {
            "type": "array",
            "items": {
              "$ref": "#/types/nutanix:index%2FUserGroupsSamlUserGroup:UserGroupsSamlUserGroup"
            },
            "description": "- (Optional) A SAML Service user group.\n"
          }
        },
        "type": "object"
      }
    },
    "nutanix:index/userGroupsV2:UserGroupsV2": {
      "description": "Provides a resource to add a User group to the system..\n\n## Example Usage\n\n<!--Start PulumiCodeChooser -->\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as nutanix from \"@pierskarsenbarg/nutanix\";\n\nconst usrGroup = new nutanix.UserGroupsV2(\"usr_group\", {\n    groupType: \"LDAP\",\n    idpId: \"ba250e3e-1db1-4950-917f-a9e2ea35b8e3\",\n    name: \"group_0664229e\",\n    distinguishedName: \"cn=group_0664229e,ou=group,dc=devtest,dc=local\",\n});\n// Saml User group\nconst saml_ug = new nutanix.UserGroupsV2(\"saml-ug\", {\n    groupType: \"SAML\",\n    idpId: \"a8fe48c4-f0d3-49c7-a017-efc30dd8fb2b\",\n    name: \"adfs19admingroup\",\n});\n```\n```python\nimport pulumi\nimport pulumi_nutanix as nutanix\n\nusr_group = nutanix.UserGroupsV2(\"usr_group\",\n    group_type=\"LDAP\",\n    idp_id=\"ba250e3e-1db1-4950-917f-a9e2ea35b8e3\",\n    name=\"group_0664229e\",\n    distinguished_name=\"cn=group_0664229e,ou=group,dc=devtest,dc=local\")\n# Saml User group\nsaml_ug = nutanix.UserGroupsV2(\"saml-ug\",\n    group_type=\"SAML\",\n    idp_id=\"a8fe48c4-f0d3-49c7-a017-efc30dd8fb2b\",\n    name=\"adfs19admingroup\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Nutanix = PiersKarsenbarg.Nutanix;\n\nreturn await Deployment.RunAsync(() => \n{\n    var usrGroup = new Nutanix.UserGroupsV2(\"usr_group\", new()\n    {\n        GroupType = \"LDAP\",\n        IdpId = \"ba250e3e-1db1-4950-917f-a9e2ea35b8e3\",\n        Name = \"group_0664229e\",\n        DistinguishedName = \"cn=group_0664229e,ou=group,dc=devtest,dc=local\",\n    });\n\n    // Saml User group\n    var saml_ug = new Nutanix.UserGroupsV2(\"saml-ug\", new()\n    {\n        GroupType = \"SAML\",\n        IdpId = \"a8fe48c4-f0d3-49c7-a017-efc30dd8fb2b\",\n        Name = \"adfs19admingroup\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pierskarsenbarg/pulumi-nutanix/sdk/go/nutanix\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := nutanix.NewUserGroupsV2(ctx, \"usr_group\", &nutanix.UserGroupsV2Args{\n\t\t\tGroupType:         pulumi.String(\"LDAP\"),\n\t\t\tIdpId:             pulumi.String(\"ba250e3e-1db1-4950-917f-a9e2ea35b8e3\"),\n\t\t\tName:              pulumi.String(\"group_0664229e\"),\n\t\t\tDistinguishedName: pulumi.String(\"cn=group_0664229e,ou=group,dc=devtest,dc=local\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t// Saml User group\n\t\t_, err = nutanix.NewUserGroupsV2(ctx, \"saml-ug\", &nutanix.UserGroupsV2Args{\n\t\t\tGroupType: pulumi.String(\"SAML\"),\n\t\t\tIdpId:     pulumi.String(\"a8fe48c4-f0d3-49c7-a017-efc30dd8fb2b\"),\n\t\t\tName:      pulumi.String(\"adfs19admingroup\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.nutanix.UserGroupsV2;\nimport com.pulumi.nutanix.UserGroupsV2Args;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var usrGroup = new UserGroupsV2(\"usrGroup\", UserGroupsV2Args.builder()\n            .groupType(\"LDAP\")\n            .idpId(\"ba250e3e-1db1-4950-917f-a9e2ea35b8e3\")\n            .name(\"group_0664229e\")\n            .distinguishedName(\"cn=group_0664229e,ou=group,dc=devtest,dc=local\")\n            .build());\n\n        // Saml User group\n        var saml_ug = new UserGroupsV2(\"saml-ug\", UserGroupsV2Args.builder()\n            .groupType(\"SAML\")\n            .idpId(\"a8fe48c4-f0d3-49c7-a017-efc30dd8fb2b\")\n            .name(\"adfs19admingroup\")\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  usrGroup:\n    type: nutanix:UserGroupsV2\n    name: usr_group\n    properties:\n      groupType: LDAP\n      idpId: ba250e3e-1db1-4950-917f-a9e2ea35b8e3\n      name: group_0664229e\n      distinguishedName: cn=group_0664229e,ou=group,dc=devtest,dc=local\n  # Saml User group\n  saml-ug:\n    type: nutanix:UserGroupsV2\n    properties:\n      groupType: SAML\n      idpId: a8fe48c4-f0d3-49c7-a017-efc30dd8fb2b\n      name: adfs19admingroup\n```\n<!--End PulumiCodeChooser -->\n",
      "properties": {
        "createdBy": {
          "type": "string",
          "description": "- User or Service who created the User Group.\n"
        },
        "createdTime": {
          "type": "string",
          "description": "- Creation time of the User Group.\n"
        },
        "distinguishedName": {
          "type": "string",
          "description": "-(Optional) Identifier for the User Group in the form of a distinguished name.\n"
        },
        "extId": {
          "type": "string",
          "description": "The External Identifier of the User Group.\n"
        },
        "groupType": {
          "type": "string",
          "description": "-(Required) Type of the User Group. LDAP (User Group belonging to a Directory Service (Open LDAP/AD)), SAML (User Group belonging to a SAML IDP.)\n"
        },
        "idpId": {
          "type": "string",
          "description": "-(Required) Identifier of the IDP for the User Group.\n"
        },
        "lastUpdatedTime": {
          "type": "string",
          "description": "- Last updated time of the User Group.\n"
        },
        "name": {
          "type": "string",
          "description": "-(Optional) Common Name of the User Group.\n"
        }
      },
      "type": "object",
      "required": [
        "createdBy",
        "createdTime",
        "extId",
        "groupType",
        "idpId",
        "lastUpdatedTime",
        "name"
      ],
      "inputProperties": {
        "distinguishedName": {
          "type": "string",
          "description": "-(Optional) Identifier for the User Group in the form of a distinguished name.\n"
        },
        "extId": {
          "type": "string",
          "description": "The External Identifier of the User Group.\n"
        },
        "groupType": {
          "type": "string",
          "description": "-(Required) Type of the User Group. LDAP (User Group belonging to a Directory Service (Open LDAP/AD)), SAML (User Group belonging to a SAML IDP.)\n"
        },
        "idpId": {
          "type": "string",
          "description": "-(Required) Identifier of the IDP for the User Group.\n"
        },
        "name": {
          "type": "string",
          "description": "-(Optional) Common Name of the User Group.\n"
        }
      },
      "requiredInputs": [
        "groupType",
        "idpId"
      ],
      "stateInputs": {
        "description": "Input properties used for looking up and filtering UserGroupsV2 resources.\n",
        "properties": {
          "createdBy": {
            "type": "string",
            "description": "- User or Service who created the User Group.\n"
          },
          "createdTime": {
            "type": "string",
            "description": "- Creation time of the User Group.\n"
          },
          "distinguishedName": {
            "type": "string",
            "description": "-(Optional) Identifier for the User Group in the form of a distinguished name.\n"
          },
          "extId": {
            "type": "string",
            "description": "The External Identifier of the User Group.\n"
          },
          "groupType": {
            "type": "string",
            "description": "-(Required) Type of the User Group. LDAP (User Group belonging to a Directory Service (Open LDAP/AD)), SAML (User Group belonging to a SAML IDP.)\n"
          },
          "idpId": {
            "type": "string",
            "description": "-(Required) Identifier of the IDP for the User Group.\n"
          },
          "lastUpdatedTime": {
            "type": "string",
            "description": "- Last updated time of the User Group.\n"
          },
          "name": {
            "type": "string",
            "description": "-(Optional) Common Name of the User Group.\n"
          }
        },
        "type": "object"
      }
    },
    "nutanix:index/userKeyRevokeV2:UserKeyRevokeV2": {
      "description": "Provides Nutanix resource to Revoke the requested key for a user.\n\n## Example Usage\n\n<!--Start PulumiCodeChooser -->\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as nutanix from \"@pierskarsenbarg/nutanix\";\n\n// revoke key\nconst revoke_key = new nutanix.UserKeyRevokeV2(\"revoke-key\", {\n    userExtId: \"<SERVICE_ACCOUNT_UUID>\",\n    extId: \"<USER_KEY_UUID>\",\n});\n```\n```python\nimport pulumi\nimport pulumi_nutanix as nutanix\n\n# revoke key\nrevoke_key = nutanix.UserKeyRevokeV2(\"revoke-key\",\n    user_ext_id=\"<SERVICE_ACCOUNT_UUID>\",\n    ext_id=\"<USER_KEY_UUID>\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Nutanix = PiersKarsenbarg.Nutanix;\n\nreturn await Deployment.RunAsync(() => \n{\n    // revoke key\n    var revoke_key = new Nutanix.UserKeyRevokeV2(\"revoke-key\", new()\n    {\n        UserExtId = \"<SERVICE_ACCOUNT_UUID>\",\n        ExtId = \"<USER_KEY_UUID>\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pierskarsenbarg/pulumi-nutanix/sdk/go/nutanix\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t// revoke key\n\t\t_, err := nutanix.NewUserKeyRevokeV2(ctx, \"revoke-key\", &nutanix.UserKeyRevokeV2Args{\n\t\t\tUserExtId: pulumi.String(\"<SERVICE_ACCOUNT_UUID>\"),\n\t\t\tExtId:     pulumi.String(\"<USER_KEY_UUID>\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.nutanix.UserKeyRevokeV2;\nimport com.pulumi.nutanix.UserKeyRevokeV2Args;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        // revoke key\n        var revoke_key = new UserKeyRevokeV2(\"revoke-key\", UserKeyRevokeV2Args.builder()\n            .userExtId(\"<SERVICE_ACCOUNT_UUID>\")\n            .extId(\"<USER_KEY_UUID>\")\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  # revoke key\n  revoke-key:\n    type: nutanix:UserKeyRevokeV2\n    properties:\n      userExtId: <SERVICE_ACCOUNT_UUID>\n      extId: <USER_KEY_UUID>\n```\n<!--End PulumiCodeChooser -->\n\n##  Argument Reference\n\nThe following arguments are supported:\n\n* <span pulumi-lang-nodejs=\"`userExtId`\" pulumi-lang-dotnet=\"`UserExtId`\" pulumi-lang-go=\"`userExtId`\" pulumi-lang-python=\"`user_ext_id`\" pulumi-lang-yaml=\"`userExtId`\" pulumi-lang-java=\"`userExtId`\">`user_ext_id`</span>: - ( Required ) External Identifier of the User.\n* <span pulumi-lang-nodejs=\"`extId`\" pulumi-lang-dotnet=\"`ExtId`\" pulumi-lang-go=\"`extId`\" pulumi-lang-python=\"`ext_id`\" pulumi-lang-yaml=\"`extId`\" pulumi-lang-java=\"`extId`\">`ext_id`</span>: - ( Required ) External identifier of the key.\n",
      "properties": {
        "argumentsMaps": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FUserKeyRevokeV2ArgumentsMap:UserKeyRevokeV2ArgumentsMap"
          },
          "description": "- The map of argument name to value.\n"
        },
        "code": {
          "type": "string",
          "description": "- The code associated with this message.This string is typically prefixed by the namespace the endpoint belongs to. For example: VMM-40000.\n"
        },
        "errorGroup": {
          "type": "string",
          "description": "- The error group associated with this message of severity ERROR.\n"
        },
        "extId": {
          "type": "string"
        },
        "locale": {
          "type": "string",
          "description": "- Locale for this message. The default locale would be 'en-US'.\n"
        },
        "message": {
          "type": "string",
          "description": "- The message string.\n"
        },
        "severity": {
          "type": "string",
          "description": "- The message severity.\n"
        },
        "userExtId": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "argumentsMaps",
        "code",
        "errorGroup",
        "extId",
        "locale",
        "message",
        "severity",
        "userExtId"
      ],
      "inputProperties": {
        "extId": {
          "type": "string"
        },
        "userExtId": {
          "type": "string"
        }
      },
      "requiredInputs": [
        "extId",
        "userExtId"
      ],
      "stateInputs": {
        "description": "Input properties used for looking up and filtering UserKeyRevokeV2 resources.\n",
        "properties": {
          "argumentsMaps": {
            "type": "array",
            "items": {
              "$ref": "#/types/nutanix:index%2FUserKeyRevokeV2ArgumentsMap:UserKeyRevokeV2ArgumentsMap"
            },
            "description": "- The map of argument name to value.\n"
          },
          "code": {
            "type": "string",
            "description": "- The code associated with this message.This string is typically prefixed by the namespace the endpoint belongs to. For example: VMM-40000.\n"
          },
          "errorGroup": {
            "type": "string",
            "description": "- The error group associated with this message of severity ERROR.\n"
          },
          "extId": {
            "type": "string"
          },
          "locale": {
            "type": "string",
            "description": "- Locale for this message. The default locale would be 'en-US'.\n"
          },
          "message": {
            "type": "string",
            "description": "- The message string.\n"
          },
          "severity": {
            "type": "string",
            "description": "- The message severity.\n"
          },
          "userExtId": {
            "type": "string"
          }
        },
        "type": "object"
      }
    },
    "nutanix:index/userKeyV2:UserKeyV2": {
      "description": "Provides Nutanix resource to Create key of a requested type for a user.\n\n## Example Usage\n\n<!--Start PulumiCodeChooser -->\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as nutanix from \"@pierskarsenbarg/nutanix\";\n\n// Create key under service account, never expires\nconst createKey = new nutanix.UserKeyV2(\"create_key\", {\n    userExtId: \"<SERVICE_ACCOUNT_UUID>\",\n    name: \"api_key_developers\",\n    keyType: \"API_KEY\",\n    expiryTime: \"2125-01-01T00:00:00Z\",\n    assignedTo: \"developer_user_1\",\n});\n```\n```python\nimport pulumi\nimport pulumi_nutanix as nutanix\n\n# Create key under service account, never expires\ncreate_key = nutanix.UserKeyV2(\"create_key\",\n    user_ext_id=\"<SERVICE_ACCOUNT_UUID>\",\n    name=\"api_key_developers\",\n    key_type=\"API_KEY\",\n    expiry_time=\"2125-01-01T00:00:00Z\",\n    assigned_to=\"developer_user_1\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Nutanix = PiersKarsenbarg.Nutanix;\n\nreturn await Deployment.RunAsync(() => \n{\n    // Create key under service account, never expires\n    var createKey = new Nutanix.UserKeyV2(\"create_key\", new()\n    {\n        UserExtId = \"<SERVICE_ACCOUNT_UUID>\",\n        Name = \"api_key_developers\",\n        KeyType = \"API_KEY\",\n        ExpiryTime = \"2125-01-01T00:00:00Z\",\n        AssignedTo = \"developer_user_1\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pierskarsenbarg/pulumi-nutanix/sdk/go/nutanix\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t// Create key under service account, never expires\n\t\t_, err := nutanix.NewUserKeyV2(ctx, \"create_key\", &nutanix.UserKeyV2Args{\n\t\t\tUserExtId:  pulumi.String(\"<SERVICE_ACCOUNT_UUID>\"),\n\t\t\tName:       pulumi.String(\"api_key_developers\"),\n\t\t\tKeyType:    pulumi.String(\"API_KEY\"),\n\t\t\tExpiryTime: pulumi.String(\"2125-01-01T00:00:00Z\"),\n\t\t\tAssignedTo: pulumi.String(\"developer_user_1\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.nutanix.UserKeyV2;\nimport com.pulumi.nutanix.UserKeyV2Args;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        // Create key under service account, never expires\n        var createKey = new UserKeyV2(\"createKey\", UserKeyV2Args.builder()\n            .userExtId(\"<SERVICE_ACCOUNT_UUID>\")\n            .name(\"api_key_developers\")\n            .keyType(\"API_KEY\")\n            .expiryTime(\"2125-01-01T00:00:00Z\")\n            .assignedTo(\"developer_user_1\")\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  # Create key under service account, never expires\n  createKey:\n    type: nutanix:UserKeyV2\n    name: create_key\n    properties:\n      userExtId: <SERVICE_ACCOUNT_UUID>\n      name: api_key_developers\n      keyType: API_KEY\n      expiryTime: 2125-01-01T00:00:00Z\n      assignedTo: developer_user_1\n```\n<!--End PulumiCodeChooser -->\n##  Argument Reference\n\nThe following arguments are supported:\n\n* <span pulumi-lang-nodejs=\"`userExtId`\" pulumi-lang-dotnet=\"`UserExtId`\" pulumi-lang-go=\"`userExtId`\" pulumi-lang-python=\"`user_ext_id`\" pulumi-lang-yaml=\"`userExtId`\" pulumi-lang-java=\"`userExtId`\">`user_ext_id`</span>: - ( Required ) External Identifier of the User.\n* <span pulumi-lang-nodejs=\"`name`\" pulumi-lang-dotnet=\"`Name`\" pulumi-lang-go=\"`name`\" pulumi-lang-python=\"`name`\" pulumi-lang-yaml=\"`name`\" pulumi-lang-java=\"`name`\">`name`</span>: - ( Required ) Identifier for the key in the form of a name.\n* <span pulumi-lang-nodejs=\"`description`\" pulumi-lang-dotnet=\"`Description`\" pulumi-lang-go=\"`description`\" pulumi-lang-python=\"`description`\" pulumi-lang-yaml=\"`description`\" pulumi-lang-java=\"`description`\">`description`</span>: - ( Optional ) Brief description of the key.\n* <span pulumi-lang-nodejs=\"`keyType`\" pulumi-lang-dotnet=\"`KeyType`\" pulumi-lang-go=\"`keyType`\" pulumi-lang-python=\"`key_type`\" pulumi-lang-yaml=\"`keyType`\" pulumi-lang-java=\"`keyType`\">`key_type`</span>: - ( Required ) The type of key. Enum Values:\n      * \"API_KEY\":\tA key type that is used to identify a service.\n      * \"OBJECT_KEY\":\tA combination of access key and secret key to sign an API request.\n* <span pulumi-lang-nodejs=\"`creationType`\" pulumi-lang-dotnet=\"`CreationType`\" pulumi-lang-go=\"`creationType`\" pulumi-lang-python=\"`creation_type`\" pulumi-lang-yaml=\"`creationType`\" pulumi-lang-java=\"`creationType`\">`creation_type`</span>: - ( Optional ) The creation mechanism of this entity. Enum Values:\n      * \"PREDEFINED\":\tPredefined creator workflow type is for entity created by the system.\n      * \"SERVICEDEFINED\":\tServicedefined creator workflow type is for entity created by the service.\n      * \"USERDEFINED\":\tUserdefined creator workflow type is for entity created by the users.\n* <span pulumi-lang-nodejs=\"`expiryTime`\" pulumi-lang-dotnet=\"`ExpiryTime`\" pulumi-lang-go=\"`expiryTime`\" pulumi-lang-python=\"`expiry_time`\" pulumi-lang-yaml=\"`expiryTime`\" pulumi-lang-java=\"`expiryTime`\">`expiry_time`</span>: - ( Optional ) The time when the key will expire.\n* <span pulumi-lang-nodejs=\"`status`\" pulumi-lang-dotnet=\"`Status`\" pulumi-lang-go=\"`status`\" pulumi-lang-python=\"`status`\" pulumi-lang-yaml=\"`status`\" pulumi-lang-java=\"`status`\">`status`</span>: - ( Optional ) The status of the key. Enum Values:\n      * \"REVOKED\":\tKey is revoked.\n      * \"VALID\":\tKey is valid.\n      * \"EXPIRED\":\tKey is expired.\n* <span pulumi-lang-nodejs=\"`assignedTo`\" pulumi-lang-dotnet=\"`AssignedTo`\" pulumi-lang-go=\"`assignedTo`\" pulumi-lang-python=\"`assigned_to`\" pulumi-lang-yaml=\"`assignedTo`\" pulumi-lang-java=\"`assignedTo`\">`assigned_to`</span>: - ( Optional ) External client to whom the given key is allocated.\n",
      "properties": {
        "assignedTo": {
          "type": "string",
          "description": "- External client to whom the given key is allocated.\n"
        },
        "createdBy": {
          "type": "string",
          "description": "- User or service who created the key.\n"
        },
        "createdTime": {
          "type": "string",
          "description": "- The creation time of the key.\n"
        },
        "creationType": {
          "type": "string",
          "description": "- The creation mechanism of this entity.\n"
        },
        "description": {
          "type": "string",
          "description": "- Brief description of the key.\n"
        },
        "expiryTime": {
          "type": "string",
          "description": "- The time when the key will expire.\n"
        },
        "extId": {
          "type": "string",
          "description": "- The External Identifier of the User Group.\n"
        },
        "keyDetails": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FUserKeyV2KeyDetail:UserKeyV2KeyDetail"
          },
          "description": "- Details specific to type of the key.\n"
        },
        "keyType": {
          "type": "string",
          "description": "- The type of key.\n"
        },
        "lastUpdatedBy": {
          "type": "string",
          "description": "- User who updated the key.\n"
        },
        "lastUpdatedTime": {
          "type": "string",
          "description": "- The time when the key was updated.\n"
        },
        "lastUsedTime": {
          "type": "string",
          "description": "- The time when the key was last used.\n"
        },
        "links": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FUserKeyV2Link:UserKeyV2Link"
          },
          "description": "- A HATEOAS style link for the response. Each link contains a user-friendly name identifying the link and an address for retrieving the particular resource.\n"
        },
        "name": {
          "type": "string",
          "description": "- Identifier for the key in the form of a name.\n"
        },
        "status": {
          "type": "string",
          "description": "- The status of the key.\n"
        },
        "tenantId": {
          "type": "string",
          "description": "- A globally unique identifier that represents the tenant that owns this entity. The system automatically assigns it, and it and is immutable from an API consumer perspective (some use cases may cause this Id to change - For instance, a use case may require the transfer of ownership of the entity, but these cases are handled automatically on the server).\n"
        },
        "userExtId": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "assignedTo",
        "createdBy",
        "createdTime",
        "creationType",
        "description",
        "expiryTime",
        "extId",
        "keyDetails",
        "keyType",
        "lastUpdatedBy",
        "lastUpdatedTime",
        "lastUsedTime",
        "links",
        "name",
        "status",
        "tenantId",
        "userExtId"
      ],
      "inputProperties": {
        "assignedTo": {
          "type": "string",
          "description": "- External client to whom the given key is allocated.\n"
        },
        "createdBy": {
          "type": "string",
          "description": "- User or service who created the key.\n"
        },
        "createdTime": {
          "type": "string",
          "description": "- The creation time of the key.\n"
        },
        "creationType": {
          "type": "string",
          "description": "- The creation mechanism of this entity.\n"
        },
        "description": {
          "type": "string",
          "description": "- Brief description of the key.\n"
        },
        "expiryTime": {
          "type": "string",
          "description": "- The time when the key will expire.\n"
        },
        "keyType": {
          "type": "string",
          "description": "- The type of key.\n"
        },
        "lastUpdatedBy": {
          "type": "string",
          "description": "- User who updated the key.\n"
        },
        "lastUpdatedTime": {
          "type": "string",
          "description": "- The time when the key was updated.\n"
        },
        "lastUsedTime": {
          "type": "string",
          "description": "- The time when the key was last used.\n"
        },
        "name": {
          "type": "string",
          "description": "- Identifier for the key in the form of a name.\n"
        },
        "status": {
          "type": "string",
          "description": "- The status of the key.\n"
        },
        "userExtId": {
          "type": "string"
        }
      },
      "requiredInputs": [
        "keyType",
        "userExtId"
      ],
      "stateInputs": {
        "description": "Input properties used for looking up and filtering UserKeyV2 resources.\n",
        "properties": {
          "assignedTo": {
            "type": "string",
            "description": "- External client to whom the given key is allocated.\n"
          },
          "createdBy": {
            "type": "string",
            "description": "- User or service who created the key.\n"
          },
          "createdTime": {
            "type": "string",
            "description": "- The creation time of the key.\n"
          },
          "creationType": {
            "type": "string",
            "description": "- The creation mechanism of this entity.\n"
          },
          "description": {
            "type": "string",
            "description": "- Brief description of the key.\n"
          },
          "expiryTime": {
            "type": "string",
            "description": "- The time when the key will expire.\n"
          },
          "extId": {
            "type": "string",
            "description": "- The External Identifier of the User Group.\n"
          },
          "keyDetails": {
            "type": "array",
            "items": {
              "$ref": "#/types/nutanix:index%2FUserKeyV2KeyDetail:UserKeyV2KeyDetail"
            },
            "description": "- Details specific to type of the key.\n"
          },
          "keyType": {
            "type": "string",
            "description": "- The type of key.\n"
          },
          "lastUpdatedBy": {
            "type": "string",
            "description": "- User who updated the key.\n"
          },
          "lastUpdatedTime": {
            "type": "string",
            "description": "- The time when the key was updated.\n"
          },
          "lastUsedTime": {
            "type": "string",
            "description": "- The time when the key was last used.\n"
          },
          "links": {
            "type": "array",
            "items": {
              "$ref": "#/types/nutanix:index%2FUserKeyV2Link:UserKeyV2Link"
            },
            "description": "- A HATEOAS style link for the response. Each link contains a user-friendly name identifying the link and an address for retrieving the particular resource.\n"
          },
          "name": {
            "type": "string",
            "description": "- Identifier for the key in the form of a name.\n"
          },
          "status": {
            "type": "string",
            "description": "- The status of the key.\n"
          },
          "tenantId": {
            "type": "string",
            "description": "- A globally unique identifier that represents the tenant that owns this entity. The system automatically assigns it, and it and is immutable from an API consumer perspective (some use cases may cause this Id to change - For instance, a use case may require the transfer of ownership of the entity, but these cases are handled automatically on the server).\n"
          },
          "userExtId": {
            "type": "string"
          }
        },
        "type": "object"
      }
    },
    "nutanix:index/usersV2:UsersV2": {
      "description": "Provides Nutanix resource to Create a User.\n\n## Import\n\nThis helps to manage existing entities which are not created through terraform. Users can be imported using the `UUID`.  eg,\n\nhcl\n\n// create its configuration in the root module. For example:\n\nresource \"nutanix_users_v2\" \"import_user\" {}\n\n// execute this command\n\n```sh\n$ pulumi import nutanix:index/usersV2:UsersV2 import_user <UUID>\n```\n\nSee detailed information in [Nutanix Users v4](https://developers.nutanix.com/api-reference?namespace=iam&version=v4.0#tag/Users/operation/createUser).\n\n",
      "properties": {
        "additionalAttributes": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FUsersV2AdditionalAttribute:UsersV2AdditionalAttribute"
          },
          "description": "-  Any additional attribute for the User.\n"
        },
        "bucketsAccessKeys": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FUsersV2BucketsAccessKey:UsersV2BucketsAccessKey"
          },
          "description": "- Bucket Access Keys for the User.\n"
        },
        "createdBy": {
          "type": "string",
          "description": "- User or Service who created the User.\n"
        },
        "createdTime": {
          "type": "string",
          "description": "- Creation time for the Bucket Access Key.\n"
        },
        "description": {
          "type": "string",
          "description": "- Description of the user.\n"
        },
        "displayName": {
          "type": "string",
          "description": "- Display name for the User.\n"
        },
        "emailId": {
          "type": "string",
          "description": "- Email Id for the User.\n"
        },
        "extId": {
          "type": "string",
          "description": "- A globally unique identifier of an instance that is suitable for external consumption.\n"
        },
        "firstName": {
          "type": "string",
          "description": "- First name for the User.\n"
        },
        "forceResetPassword": {
          "type": "boolean"
        },
        "idpId": {
          "type": "string",
          "description": "- Identifier of the IDP for the User.\n"
        },
        "lastLoginTime": {
          "type": "string",
          "description": "- Last successful logged in time for the User.\n"
        },
        "lastName": {
          "type": "string",
          "description": "- Last name for the User.\n"
        },
        "lastUpdatedTime": {
          "type": "string",
          "description": "- Last updated time of the User.\n"
        },
        "links": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FUsersV2Link:UsersV2Link"
          },
          "description": "- A HATEOAS style link for the response. Each link contains a user-friendly name identifying the link and an address for retrieving the particular resource.\n"
        },
        "locale": {
          "type": "string",
          "description": "- Default locale for the User.\n"
        },
        "middleInitial": {
          "type": "string",
          "description": "- Middle name for the User.\n"
        },
        "password": {
          "type": "string"
        },
        "region": {
          "type": "string",
          "description": "- Default Region for the User.\n"
        },
        "status": {
          "type": "string",
          "description": "- Status of the User. `ACTIVE`: Denotes that the local User is active. `INACTIVE`: Denotes that the local User is inactive and needs to be reactivated.\n"
        },
        "userType": {
          "type": "string",
          "description": "- Enum: `$UNKNOWN` `$REDACTED` `LOCAL` `SAML` `LDAP` `EXTERNAL`\nType of the User.\n"
        },
        "username": {
          "type": "string",
          "description": "- Identifier for the User in the form an email address.\n"
        }
      },
      "type": "object",
      "required": [
        "additionalAttributes",
        "bucketsAccessKeys",
        "createdBy",
        "createdTime",
        "description",
        "displayName",
        "emailId",
        "extId",
        "firstName",
        "forceResetPassword",
        "idpId",
        "lastLoginTime",
        "lastName",
        "lastUpdatedTime",
        "links",
        "locale",
        "middleInitial",
        "password",
        "region",
        "status",
        "userType",
        "username"
      ],
      "inputProperties": {
        "additionalAttributes": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FUsersV2AdditionalAttribute:UsersV2AdditionalAttribute"
          },
          "description": "-  Any additional attribute for the User.\n"
        },
        "description": {
          "type": "string",
          "description": "- Description of the user.\n"
        },
        "displayName": {
          "type": "string",
          "description": "- Display name for the User.\n"
        },
        "emailId": {
          "type": "string",
          "description": "- Email Id for the User.\n"
        },
        "firstName": {
          "type": "string",
          "description": "- First name for the User.\n"
        },
        "forceResetPassword": {
          "type": "boolean"
        },
        "idpId": {
          "type": "string",
          "description": "- Identifier of the IDP for the User.\n"
        },
        "lastName": {
          "type": "string",
          "description": "- Last name for the User.\n"
        },
        "locale": {
          "type": "string",
          "description": "- Default locale for the User.\n"
        },
        "middleInitial": {
          "type": "string",
          "description": "- Middle name for the User.\n"
        },
        "password": {
          "type": "string"
        },
        "region": {
          "type": "string",
          "description": "- Default Region for the User.\n"
        },
        "status": {
          "type": "string",
          "description": "- Status of the User. `ACTIVE`: Denotes that the local User is active. `INACTIVE`: Denotes that the local User is inactive and needs to be reactivated.\n"
        },
        "userType": {
          "type": "string",
          "description": "- Enum: `$UNKNOWN` `$REDACTED` `LOCAL` `SAML` `LDAP` `EXTERNAL`\nType of the User.\n"
        },
        "username": {
          "type": "string",
          "description": "- Identifier for the User in the form an email address.\n"
        }
      },
      "requiredInputs": [
        "userType",
        "username"
      ],
      "stateInputs": {
        "description": "Input properties used for looking up and filtering UsersV2 resources.\n",
        "properties": {
          "additionalAttributes": {
            "type": "array",
            "items": {
              "$ref": "#/types/nutanix:index%2FUsersV2AdditionalAttribute:UsersV2AdditionalAttribute"
            },
            "description": "-  Any additional attribute for the User.\n"
          },
          "bucketsAccessKeys": {
            "type": "array",
            "items": {
              "$ref": "#/types/nutanix:index%2FUsersV2BucketsAccessKey:UsersV2BucketsAccessKey"
            },
            "description": "- Bucket Access Keys for the User.\n"
          },
          "createdBy": {
            "type": "string",
            "description": "- User or Service who created the User.\n"
          },
          "createdTime": {
            "type": "string",
            "description": "- Creation time for the Bucket Access Key.\n"
          },
          "description": {
            "type": "string",
            "description": "- Description of the user.\n"
          },
          "displayName": {
            "type": "string",
            "description": "- Display name for the User.\n"
          },
          "emailId": {
            "type": "string",
            "description": "- Email Id for the User.\n"
          },
          "extId": {
            "type": "string",
            "description": "- A globally unique identifier of an instance that is suitable for external consumption.\n"
          },
          "firstName": {
            "type": "string",
            "description": "- First name for the User.\n"
          },
          "forceResetPassword": {
            "type": "boolean"
          },
          "idpId": {
            "type": "string",
            "description": "- Identifier of the IDP for the User.\n"
          },
          "lastLoginTime": {
            "type": "string",
            "description": "- Last successful logged in time for the User.\n"
          },
          "lastName": {
            "type": "string",
            "description": "- Last name for the User.\n"
          },
          "lastUpdatedTime": {
            "type": "string",
            "description": "- Last updated time of the User.\n"
          },
          "links": {
            "type": "array",
            "items": {
              "$ref": "#/types/nutanix:index%2FUsersV2Link:UsersV2Link"
            },
            "description": "- A HATEOAS style link for the response. Each link contains a user-friendly name identifying the link and an address for retrieving the particular resource.\n"
          },
          "locale": {
            "type": "string",
            "description": "- Default locale for the User.\n"
          },
          "middleInitial": {
            "type": "string",
            "description": "- Middle name for the User.\n"
          },
          "password": {
            "type": "string"
          },
          "region": {
            "type": "string",
            "description": "- Default Region for the User.\n"
          },
          "status": {
            "type": "string",
            "description": "- Status of the User. `ACTIVE`: Denotes that the local User is active. `INACTIVE`: Denotes that the local User is inactive and needs to be reactivated.\n"
          },
          "userType": {
            "type": "string",
            "description": "- Enum: `$UNKNOWN` `$REDACTED` `LOCAL` `SAML` `LDAP` `EXTERNAL`\nType of the User.\n"
          },
          "username": {
            "type": "string",
            "description": "- Identifier for the User in the form an email address.\n"
          }
        },
        "type": "object"
      }
    },
    "nutanix:index/virtualMachine:VirtualMachine": {
      "description": "Provides a Nutanix Virtual Machine resource to Create a virtual machine.\n\n## Example Usage\n\n<!--Start PulumiCodeChooser -->\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as nutanix from \"@pierskarsenbarg/nutanix\";\n\nconst clusters = nutanix.getClusters({});\nconst vm1 = new nutanix.VirtualMachine(\"vm1\", {\n    name: \"test-dou\",\n    clusterUuid: clusters.then(clusters => clusters.entities?.[0]?.metadata?.uuid),\n    categories: [{\n        name: \"Environment\",\n        value: \"Staging\",\n    }],\n    numVcpusPerSocket: 1,\n    numSockets: 1,\n    memorySizeMib: 2048,\n});\n```\n```python\nimport pulumi\nimport pulumi_nutanix as nutanix\n\nclusters = nutanix.get_clusters()\nvm1 = nutanix.VirtualMachine(\"vm1\",\n    name=\"test-dou\",\n    cluster_uuid=clusters.entities[0].metadata[\"uuid\"],\n    categories=[{\n        \"name\": \"Environment\",\n        \"value\": \"Staging\",\n    }],\n    num_vcpus_per_socket=1,\n    num_sockets=1,\n    memory_size_mib=2048)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Nutanix = PiersKarsenbarg.Nutanix;\nusing Nutanix = Pulumi.Nutanix;\n\nreturn await Deployment.RunAsync(() => \n{\n    var clusters = Nutanix.GetClusters.Invoke();\n\n    var vm1 = new Nutanix.VirtualMachine(\"vm1\", new()\n    {\n        Name = \"test-dou\",\n        ClusterUuid = clusters.Apply(getClustersResult => getClustersResult.Entities[0]?.Metadata?.Uuid),\n        Categories = new[]\n        {\n            new Nutanix.Inputs.VirtualMachineCategoryArgs\n            {\n                Name = \"Environment\",\n                Value = \"Staging\",\n            },\n        },\n        NumVcpusPerSocket = 1,\n        NumSockets = 1,\n        MemorySizeMib = 2048,\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pierskarsenbarg/pulumi-nutanix/sdk/go/nutanix\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tclusters, err := nutanix.GetClusters(ctx, map[string]interface{}{}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = nutanix.NewVirtualMachine(ctx, \"vm1\", &nutanix.VirtualMachineArgs{\n\t\t\tName:        pulumi.String(\"test-dou\"),\n\t\t\tClusterUuid: pulumi.String(clusters.Entities[0].Metadata.Uuid),\n\t\t\tCategories: nutanix.VirtualMachineCategoryArray{\n\t\t\t\t&nutanix.VirtualMachineCategoryArgs{\n\t\t\t\t\tName:  pulumi.String(\"Environment\"),\n\t\t\t\t\tValue: pulumi.String(\"Staging\"),\n\t\t\t\t},\n\t\t\t},\n\t\t\tNumVcpusPerSocket: pulumi.Int(1),\n\t\t\tNumSockets:        pulumi.Int(1),\n\t\t\tMemorySizeMib:     pulumi.Int(2048),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.nutanix.NutanixFunctions;\nimport com.pulumi.nutanix.VirtualMachine;\nimport com.pulumi.nutanix.VirtualMachineArgs;\nimport com.pulumi.nutanix.inputs.VirtualMachineCategoryArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var clusters = NutanixFunctions.getClusters(%!v(PANIC=Format method: runtime error: invalid memory address or nil pointer dereference);\n\n        var vm1 = new VirtualMachine(\"vm1\", VirtualMachineArgs.builder()\n            .name(\"test-dou\")\n            .clusterUuid(clusters.entities()[0].metadata().uuid())\n            .categories(VirtualMachineCategoryArgs.builder()\n                .name(\"Environment\")\n                .value(\"Staging\")\n                .build())\n            .numVcpusPerSocket(1)\n            .numSockets(1)\n            .memorySizeMib(2048)\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  vm1:\n    type: nutanix:VirtualMachine\n    properties:\n      name: test-dou\n      clusterUuid: ${clusters.entities[0].metadata.uuid}\n      categories:\n        - name: Environment\n          value: Staging\n      numVcpusPerSocket: 1\n      numSockets: 1\n      memorySizeMib: 2048\nvariables:\n  clusters:\n    fn::invoke:\n      function: nutanix:getClusters\n      arguments: {}\n```\n<!--End PulumiCodeChooser -->\n\n\n### With Storage Config\n<!--Start PulumiCodeChooser -->\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as nutanix from \"@pierskarsenbarg/nutanix\";\n\nconst clusters = nutanix.getClusters({});\nconst vm = new nutanix.VirtualMachine(\"vm\", {\n    name: \"myVm\",\n    clusterUuid: clusters.then(clusters => clusters.entities?.[0]?.metadata?.uuid),\n    numVcpusPerSocket: 1,\n    numSockets: 1,\n    memorySizeMib: 186,\n    diskLists: [{\n        diskSizeBytes: 68157440,\n        diskSizeMib: 65,\n        storageConfig: {\n            storageContainerReferences: [{\n                kind: \"storage_container\",\n                uuid: \"2bbe67bc-fd14-4637-8de1-6379257f4219\",\n            }],\n        },\n    }],\n});\n```\n```python\nimport pulumi\nimport pulumi_nutanix as nutanix\n\nclusters = nutanix.get_clusters()\nvm = nutanix.VirtualMachine(\"vm\",\n    name=\"myVm\",\n    cluster_uuid=clusters.entities[0].metadata[\"uuid\"],\n    num_vcpus_per_socket=1,\n    num_sockets=1,\n    memory_size_mib=186,\n    disk_lists=[{\n        \"disk_size_bytes\": 68157440,\n        \"disk_size_mib\": 65,\n        \"storage_config\": {\n            \"storage_container_references\": [{\n                \"kind\": \"storage_container\",\n                \"uuid\": \"2bbe67bc-fd14-4637-8de1-6379257f4219\",\n            }],\n        },\n    }])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Nutanix = PiersKarsenbarg.Nutanix;\nusing Nutanix = Pulumi.Nutanix;\n\nreturn await Deployment.RunAsync(() => \n{\n    var clusters = Nutanix.GetClusters.Invoke();\n\n    var vm = new Nutanix.VirtualMachine(\"vm\", new()\n    {\n        Name = \"myVm\",\n        ClusterUuid = clusters.Apply(getClustersResult => getClustersResult.Entities[0]?.Metadata?.Uuid),\n        NumVcpusPerSocket = 1,\n        NumSockets = 1,\n        MemorySizeMib = 186,\n        DiskLists = new[]\n        {\n            new Nutanix.Inputs.VirtualMachineDiskListArgs\n            {\n                DiskSizeBytes = 68157440,\n                DiskSizeMib = 65,\n                StorageConfig = new Nutanix.Inputs.VirtualMachineDiskListStorageConfigArgs\n                {\n                    StorageContainerReferences = new[]\n                    {\n                        new Nutanix.Inputs.VirtualMachineDiskListStorageConfigStorageContainerReferenceArgs\n                        {\n                            Kind = \"storage_container\",\n                            Uuid = \"2bbe67bc-fd14-4637-8de1-6379257f4219\",\n                        },\n                    },\n                },\n            },\n        },\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pierskarsenbarg/pulumi-nutanix/sdk/go/nutanix\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tclusters, err := nutanix.GetClusters(ctx, map[string]interface{}{}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = nutanix.NewVirtualMachine(ctx, \"vm\", &nutanix.VirtualMachineArgs{\n\t\t\tName:              pulumi.String(\"myVm\"),\n\t\t\tClusterUuid:       pulumi.String(clusters.Entities[0].Metadata.Uuid),\n\t\t\tNumVcpusPerSocket: pulumi.Int(1),\n\t\t\tNumSockets:        pulumi.Int(1),\n\t\t\tMemorySizeMib:     pulumi.Int(186),\n\t\t\tDiskLists: nutanix.VirtualMachineDiskListArray{\n\t\t\t\t&nutanix.VirtualMachineDiskListArgs{\n\t\t\t\t\tDiskSizeBytes: pulumi.Int(68157440),\n\t\t\t\t\tDiskSizeMib:   pulumi.Int(65),\n\t\t\t\t\tStorageConfig: &nutanix.VirtualMachineDiskListStorageConfigArgs{\n\t\t\t\t\t\tStorageContainerReferences: nutanix.VirtualMachineDiskListStorageConfigStorageContainerReferenceArray{\n\t\t\t\t\t\t\t&nutanix.VirtualMachineDiskListStorageConfigStorageContainerReferenceArgs{\n\t\t\t\t\t\t\t\tKind: pulumi.String(\"storage_container\"),\n\t\t\t\t\t\t\t\tUuid: pulumi.String(\"2bbe67bc-fd14-4637-8de1-6379257f4219\"),\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.nutanix.NutanixFunctions;\nimport com.pulumi.nutanix.VirtualMachine;\nimport com.pulumi.nutanix.VirtualMachineArgs;\nimport com.pulumi.nutanix.inputs.VirtualMachineDiskListArgs;\nimport com.pulumi.nutanix.inputs.VirtualMachineDiskListStorageConfigArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var clusters = NutanixFunctions.getClusters(%!v(PANIC=Format method: runtime error: invalid memory address or nil pointer dereference);\n\n        var vm = new VirtualMachine(\"vm\", VirtualMachineArgs.builder()\n            .name(\"myVm\")\n            .clusterUuid(clusters.entities()[0].metadata().uuid())\n            .numVcpusPerSocket(1)\n            .numSockets(1)\n            .memorySizeMib(186)\n            .diskLists(VirtualMachineDiskListArgs.builder()\n                .diskSizeBytes(68157440)\n                .diskSizeMib(65)\n                .storageConfig(VirtualMachineDiskListStorageConfigArgs.builder()\n                    .storageContainerReferences(VirtualMachineDiskListStorageConfigStorageContainerReferenceArgs.builder()\n                        .kind(\"storage_container\")\n                        .uuid(\"2bbe67bc-fd14-4637-8de1-6379257f4219\")\n                        .build())\n                    .build())\n                .build())\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  vm:\n    type: nutanix:VirtualMachine\n    properties:\n      name: myVm\n      clusterUuid: ${clusters.entities[0].metadata.uuid}\n      numVcpusPerSocket: 1\n      numSockets: 1\n      memorySizeMib: 186\n      diskLists:\n        - diskSizeBytes: 6.815744e+07\n          diskSizeMib: 65\n          storageConfig:\n            storageContainerReferences:\n              - kind: storage_container\n                uuid: 2bbe67bc-fd14-4637-8de1-6379257f4219\nvariables:\n  clusters:\n    fn::invoke:\n      function: nutanix:getClusters\n      arguments: {}\n```\n<!--End PulumiCodeChooser -->\n\n## Import\n\nNutanix Virtual machines can be imported using the `UUID` eg,\n\n`\n\n```sh\n$ pulumi import nutanix:index/virtualMachine:VirtualMachine vm01 0F75E6A7-55FB-44D9-A50D-14AD72E2CF7C\n```\n\n`\n\n",
      "properties": {
        "apiVersion": {
          "type": "string",
          "description": "The version of the API.\n"
        },
        "availabilityZoneReference": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          },
          "description": "- (Optional) The reference to a availability_zone.\n"
        },
        "bootDeviceDiskAddress": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          },
          "description": "- (Optional) Address of disk to boot from.\n"
        },
        "bootDeviceMacAddress": {
          "type": "string",
          "description": "- (Optional) MAC address of nic to boot from.\n"
        },
        "bootDeviceOrderLists": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "- (Optional) Indicates the order of device types in which VM should try to boot from. If boot device order is not provided the system will decide appropriate boot device order.\n"
        },
        "bootType": {
          "type": "string",
          "description": "- (Optional) Indicates whether the VM should use Secure boot, UEFI boot or Legacy boot.If UEFI or; Secure boot is enabled then other legacy boot options (like<span pulumi-lang-nodejs=\" bootDevice \" pulumi-lang-dotnet=\" BootDevice \" pulumi-lang-go=\" bootDevice \" pulumi-lang-python=\" boot_device \" pulumi-lang-yaml=\" bootDevice \" pulumi-lang-java=\" bootDevice \"> boot_device </span>and; boot_device_order_list) are ignored. Secure boot depends on UEFI boot, i.e. enabling; Secure boot means that UEFI boot is also enabled. The possible value are: UEFI\", \"LEGACY\", \"SECURE_BOOT\".\n"
        },
        "categories": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FVirtualMachineCategory:VirtualMachineCategory"
          },
          "description": "- (Optional) Categories for the vm.\n"
        },
        "cloudInitCdromUuid": {
          "type": "string"
        },
        "clusterName": {
          "type": "string",
          "description": "- The name of the cluster.\n"
        },
        "clusterUuid": {
          "type": "string",
          "description": "- (Required) The UUID of the cluster.\n"
        },
        "description": {
          "type": "string",
          "description": "- (Optional) A description for vm.\n"
        },
        "diskLists": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FVirtualMachineDiskList:VirtualMachineDiskList"
          },
          "description": "Disks attached to the VM.\n"
        },
        "enableCpuPassthrough": {
          "type": "boolean",
          "description": "- (Optional) Add true to enable CPU passthrough.\n"
        },
        "enableScriptExec": {
          "type": "boolean",
          "description": "- (Optional) Extra configs related to power state transition. Indicates whether to execute set script before ngt shutdown/reboot.\n"
        },
        "gpuLists": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FVirtualMachineGpuList:VirtualMachineGpuList"
          },
          "description": "- (Optional) GPUs attached to the VM.\n"
        },
        "guestCustomizationCloudInitCustomKeyValues": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          },
          "description": "- (Optional) Generic key value pair used for custom attributes in cloud init.\n"
        },
        "guestCustomizationCloudInitMetaData": {
          "type": "string",
          "description": "The contents of the<span pulumi-lang-nodejs=\" metaData \" pulumi-lang-dotnet=\" MetaData \" pulumi-lang-go=\" metaData \" pulumi-lang-python=\" meta_data \" pulumi-lang-yaml=\" metaData \" pulumi-lang-java=\" metaData \"> meta_data </span>configuration for cloud-init. This can be formatted as YAML or JSON. The value must be base64 encoded.\n"
        },
        "guestCustomizationCloudInitUserData": {
          "type": "string",
          "description": "- (Optional) The contents of the<span pulumi-lang-nodejs=\" userData \" pulumi-lang-dotnet=\" UserData \" pulumi-lang-go=\" userData \" pulumi-lang-python=\" user_data \" pulumi-lang-yaml=\" userData \" pulumi-lang-java=\" userData \"> user_data </span>configuration for cloud-init. This can be formatted as YAML, JSON, or could be a shell script. The value must be base64 encoded.\n"
        },
        "guestCustomizationIsOverridable": {
          "type": "boolean",
          "description": "- (Optional) Flag to allow override of customization by deployer.\n"
        },
        "guestCustomizationSysprep": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          },
          "description": "- (Optional) VM guests may be customized at boot time using one of several different methods. Currently, cloud-init w/ ConfigDriveV2 (for Linux VMs) and Sysprep (for Windows VMs) are supported. Only ONE OF sysprep or<span pulumi-lang-nodejs=\" cloudInit \" pulumi-lang-dotnet=\" CloudInit \" pulumi-lang-go=\" cloudInit \" pulumi-lang-python=\" cloud_init \" pulumi-lang-yaml=\" cloudInit \" pulumi-lang-java=\" cloudInit \"> cloud_init </span>should be provided. Note that guest customization can currently only be set during VM creation. Attempting to change it after creation will result in an error. Additional properties can be specified. For example - in the context of VM template creation if \\\"override_script\\\" is set to \\\"True\\\" then the deployer can upload their own custom script.\n"
        },
        "guestCustomizationSysprepCustomKeyValues": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          },
          "description": "- (Optional) Generic key value pair used for custom attributes in sysprep.\n"
        },
        "guestOsId": {
          "type": "string",
          "description": "- (Optional) Guest OS Identifier. For ESX, refer to VMware documentation [link](https://www.vmware.com/support/developer/converter-sdk/conv43_apireference/vim.vm.GuestOsDescriptor.GuestOsIdentifier.html) for the list of guest OS identifiers.\n"
        },
        "hardwareClockTimezone": {
          "type": "string",
          "description": "- (Optional) VM's hardware clock timezone in IANA TZDB format (America/Los_Angeles).\n"
        },
        "hostReference": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          },
          "description": "- Reference to a host.\n"
        },
        "hypervisorType": {
          "type": "string",
          "description": "- The hypervisor type for the hypervisor the VM is hosted on.\n"
        },
        "isVcpuHardPinned": {
          "type": "boolean",
          "description": "- (Optional) Add true to enable CPU pinning.\n"
        },
        "machineType": {
          "type": "string",
          "description": "- Machine type for the VM. Machine type Q35 is required for secure boot and does not support IDE disks.\n"
        },
        "memorySizeMib": {
          "type": "integer",
          "description": "- (Optional) Memory size in MiB. On updating memory to powered ON VMs should only be done in 1GB increments.\n"
        },
        "metadata": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          },
          "description": "- The vm kind metadata.\n"
        },
        "name": {
          "type": "string",
          "description": "- (Required) The name for the vm.\n"
        },
        "ngtCredentials": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          },
          "description": "- (Ooptional) Credentials to login server.\n"
        },
        "ngtEnabledCapabilityLists": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "Application names that are enabled.\n"
        },
        "nicListStatuses": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FVirtualMachineNicListStatus:VirtualMachineNicListStatus"
          },
          "description": "- Status NICs attached to the VM.\n"
        },
        "nicLists": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FVirtualMachineNicList:VirtualMachineNicList"
          },
          "description": "- (Optional) Spec NICs attached to the VM.\n"
        },
        "numSockets": {
          "type": "integer",
          "description": "- (Optional) Number of vCPU sockets.\n"
        },
        "numVcpusPerSocket": {
          "type": "integer",
          "description": "- (Optional) Number of vCPUs per socket.\n"
        },
        "numVnumaNodes": {
          "type": "integer",
          "description": "- (Optional) Number of vNUMA nodes. 0 means vNUMA is disabled.\n"
        },
        "nutanixGuestTools": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          },
          "description": "- (Optional) Information regarding Nutanix Guest Tools.\n"
        },
        "ownerReference": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          },
          "description": "- (Optional) The reference to a user.\n"
        },
        "parentReference": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          },
          "description": "- (Optional) Reference to an entity that the VM cloned from.\n"
        },
        "powerState": {
          "type": "string",
          "description": "- (Optional) The current or desired power state of the VM. (Options : ON , OFF)\n"
        },
        "powerStateMechanism": {
          "type": "string",
          "description": "- (Optional) Indicates the mechanism guiding the VM power state transition. Currently used for the transition to \\\"OFF\\\" state. Power state mechanism (ACPI/GUEST/HARD).\n"
        },
        "projectReference": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          },
          "description": "- (Optional) The reference to a project.\n"
        },
        "serialPortLists": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FVirtualMachineSerialPortList:VirtualMachineSerialPortList"
          },
          "description": "- (Optional) Serial Ports configured on the VM.\n"
        },
        "shouldFailOnScriptFailure": {
          "type": "boolean",
          "description": "- (Optional)  Extra configs related to power state transition. Indicates whether to abort ngt shutdown/reboot if script fails.\n"
        },
        "state": {
          "type": "string",
          "description": "- The state of the vm.\n"
        },
        "useHotAdd": {
          "type": "boolean",
          "description": "- (Optional) Use Hot Add when modifying VM resources. Passing value false will result in VM reboots. Default value is <span pulumi-lang-nodejs=\"`true`\" pulumi-lang-dotnet=\"`True`\" pulumi-lang-go=\"`true`\" pulumi-lang-python=\"`true`\" pulumi-lang-yaml=\"`true`\" pulumi-lang-java=\"`true`\">`true`</span>.\n"
        },
        "vgaConsoleEnabled": {
          "type": "boolean",
          "description": "- (Optional) Indicates whether VGA console should be enabled or not.\n"
        }
      },
      "type": "object",
      "required": [
        "apiVersion",
        "availabilityZoneReference",
        "bootDeviceDiskAddress",
        "bootDeviceMacAddress",
        "bootDeviceOrderLists",
        "bootType",
        "categories",
        "cloudInitCdromUuid",
        "clusterName",
        "clusterUuid",
        "description",
        "diskLists",
        "enableScriptExec",
        "gpuLists",
        "guestCustomizationCloudInitCustomKeyValues",
        "guestCustomizationCloudInitMetaData",
        "guestCustomizationCloudInitUserData",
        "guestCustomizationIsOverridable",
        "guestCustomizationSysprep",
        "guestCustomizationSysprepCustomKeyValues",
        "guestOsId",
        "hardwareClockTimezone",
        "hostReference",
        "hypervisorType",
        "machineType",
        "memorySizeMib",
        "metadata",
        "name",
        "ngtCredentials",
        "ngtEnabledCapabilityLists",
        "nicListStatuses",
        "nicLists",
        "numSockets",
        "numVcpusPerSocket",
        "numVnumaNodes",
        "nutanixGuestTools",
        "ownerReference",
        "parentReference",
        "powerState",
        "powerStateMechanism",
        "projectReference",
        "shouldFailOnScriptFailure",
        "state",
        "vgaConsoleEnabled"
      ],
      "inputProperties": {
        "availabilityZoneReference": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          },
          "description": "- (Optional) The reference to a availability_zone.\n"
        },
        "bootDeviceDiskAddress": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          },
          "description": "- (Optional) Address of disk to boot from.\n"
        },
        "bootDeviceMacAddress": {
          "type": "string",
          "description": "- (Optional) MAC address of nic to boot from.\n"
        },
        "bootDeviceOrderLists": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "- (Optional) Indicates the order of device types in which VM should try to boot from. If boot device order is not provided the system will decide appropriate boot device order.\n"
        },
        "bootType": {
          "type": "string",
          "description": "- (Optional) Indicates whether the VM should use Secure boot, UEFI boot or Legacy boot.If UEFI or; Secure boot is enabled then other legacy boot options (like<span pulumi-lang-nodejs=\" bootDevice \" pulumi-lang-dotnet=\" BootDevice \" pulumi-lang-go=\" bootDevice \" pulumi-lang-python=\" boot_device \" pulumi-lang-yaml=\" bootDevice \" pulumi-lang-java=\" bootDevice \"> boot_device </span>and; boot_device_order_list) are ignored. Secure boot depends on UEFI boot, i.e. enabling; Secure boot means that UEFI boot is also enabled. The possible value are: UEFI\", \"LEGACY\", \"SECURE_BOOT\".\n",
          "willReplaceOnChanges": true
        },
        "categories": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FVirtualMachineCategory:VirtualMachineCategory"
          },
          "description": "- (Optional) Categories for the vm.\n"
        },
        "cloudInitCdromUuid": {
          "type": "string"
        },
        "clusterUuid": {
          "type": "string",
          "description": "- (Required) The UUID of the cluster.\n"
        },
        "description": {
          "type": "string",
          "description": "- (Optional) A description for vm.\n"
        },
        "diskLists": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FVirtualMachineDiskList:VirtualMachineDiskList"
          },
          "description": "Disks attached to the VM.\n"
        },
        "enableCpuPassthrough": {
          "type": "boolean",
          "description": "- (Optional) Add true to enable CPU passthrough.\n"
        },
        "enableScriptExec": {
          "type": "boolean",
          "description": "- (Optional) Extra configs related to power state transition. Indicates whether to execute set script before ngt shutdown/reboot.\n"
        },
        "gpuLists": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FVirtualMachineGpuList:VirtualMachineGpuList"
          },
          "description": "- (Optional) GPUs attached to the VM.\n"
        },
        "guestCustomizationCloudInitCustomKeyValues": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          },
          "description": "- (Optional) Generic key value pair used for custom attributes in cloud init.\n"
        },
        "guestCustomizationCloudInitMetaData": {
          "type": "string",
          "description": "The contents of the<span pulumi-lang-nodejs=\" metaData \" pulumi-lang-dotnet=\" MetaData \" pulumi-lang-go=\" metaData \" pulumi-lang-python=\" meta_data \" pulumi-lang-yaml=\" metaData \" pulumi-lang-java=\" metaData \"> meta_data </span>configuration for cloud-init. This can be formatted as YAML or JSON. The value must be base64 encoded.\n",
          "willReplaceOnChanges": true
        },
        "guestCustomizationCloudInitUserData": {
          "type": "string",
          "description": "- (Optional) The contents of the<span pulumi-lang-nodejs=\" userData \" pulumi-lang-dotnet=\" UserData \" pulumi-lang-go=\" userData \" pulumi-lang-python=\" user_data \" pulumi-lang-yaml=\" userData \" pulumi-lang-java=\" userData \"> user_data </span>configuration for cloud-init. This can be formatted as YAML, JSON, or could be a shell script. The value must be base64 encoded.\n",
          "willReplaceOnChanges": true
        },
        "guestCustomizationIsOverridable": {
          "type": "boolean",
          "description": "- (Optional) Flag to allow override of customization by deployer.\n"
        },
        "guestCustomizationSysprep": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          },
          "description": "- (Optional) VM guests may be customized at boot time using one of several different methods. Currently, cloud-init w/ ConfigDriveV2 (for Linux VMs) and Sysprep (for Windows VMs) are supported. Only ONE OF sysprep or<span pulumi-lang-nodejs=\" cloudInit \" pulumi-lang-dotnet=\" CloudInit \" pulumi-lang-go=\" cloudInit \" pulumi-lang-python=\" cloud_init \" pulumi-lang-yaml=\" cloudInit \" pulumi-lang-java=\" cloudInit \"> cloud_init </span>should be provided. Note that guest customization can currently only be set during VM creation. Attempting to change it after creation will result in an error. Additional properties can be specified. For example - in the context of VM template creation if \\\"override_script\\\" is set to \\\"True\\\" then the deployer can upload their own custom script.\n",
          "willReplaceOnChanges": true
        },
        "guestCustomizationSysprepCustomKeyValues": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          },
          "description": "- (Optional) Generic key value pair used for custom attributes in sysprep.\n",
          "willReplaceOnChanges": true
        },
        "guestOsId": {
          "type": "string",
          "description": "- (Optional) Guest OS Identifier. For ESX, refer to VMware documentation [link](https://www.vmware.com/support/developer/converter-sdk/conv43_apireference/vim.vm.GuestOsDescriptor.GuestOsIdentifier.html) for the list of guest OS identifiers.\n"
        },
        "hardwareClockTimezone": {
          "type": "string",
          "description": "- (Optional) VM's hardware clock timezone in IANA TZDB format (America/Los_Angeles).\n"
        },
        "isVcpuHardPinned": {
          "type": "boolean",
          "description": "- (Optional) Add true to enable CPU pinning.\n"
        },
        "machineType": {
          "type": "string",
          "description": "- Machine type for the VM. Machine type Q35 is required for secure boot and does not support IDE disks.\n"
        },
        "memorySizeMib": {
          "type": "integer",
          "description": "- (Optional) Memory size in MiB. On updating memory to powered ON VMs should only be done in 1GB increments.\n"
        },
        "name": {
          "type": "string",
          "description": "- (Required) The name for the vm.\n"
        },
        "ngtCredentials": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          },
          "description": "- (Ooptional) Credentials to login server.\n"
        },
        "ngtEnabledCapabilityLists": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "Application names that are enabled.\n"
        },
        "nicLists": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FVirtualMachineNicList:VirtualMachineNicList"
          },
          "description": "- (Optional) Spec NICs attached to the VM.\n"
        },
        "numSockets": {
          "type": "integer",
          "description": "- (Optional) Number of vCPU sockets.\n"
        },
        "numVcpusPerSocket": {
          "type": "integer",
          "description": "- (Optional) Number of vCPUs per socket.\n"
        },
        "numVnumaNodes": {
          "type": "integer",
          "description": "- (Optional) Number of vNUMA nodes. 0 means vNUMA is disabled.\n"
        },
        "nutanixGuestTools": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          },
          "description": "- (Optional) Information regarding Nutanix Guest Tools.\n"
        },
        "ownerReference": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          },
          "description": "- (Optional) The reference to a user.\n"
        },
        "parentReference": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          },
          "description": "- (Optional) Reference to an entity that the VM cloned from.\n"
        },
        "powerState": {
          "type": "string",
          "description": "- (Optional) The current or desired power state of the VM. (Options : ON , OFF)\n"
        },
        "powerStateMechanism": {
          "type": "string",
          "description": "- (Optional) Indicates the mechanism guiding the VM power state transition. Currently used for the transition to \\\"OFF\\\" state. Power state mechanism (ACPI/GUEST/HARD).\n"
        },
        "projectReference": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          },
          "description": "- (Optional) The reference to a project.\n"
        },
        "serialPortLists": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FVirtualMachineSerialPortList:VirtualMachineSerialPortList"
          },
          "description": "- (Optional) Serial Ports configured on the VM.\n",
          "willReplaceOnChanges": true
        },
        "shouldFailOnScriptFailure": {
          "type": "boolean",
          "description": "- (Optional)  Extra configs related to power state transition. Indicates whether to abort ngt shutdown/reboot if script fails.\n"
        },
        "useHotAdd": {
          "type": "boolean",
          "description": "- (Optional) Use Hot Add when modifying VM resources. Passing value false will result in VM reboots. Default value is <span pulumi-lang-nodejs=\"`true`\" pulumi-lang-dotnet=\"`True`\" pulumi-lang-go=\"`true`\" pulumi-lang-python=\"`true`\" pulumi-lang-yaml=\"`true`\" pulumi-lang-java=\"`true`\">`true`</span>.\n"
        },
        "vgaConsoleEnabled": {
          "type": "boolean",
          "description": "- (Optional) Indicates whether VGA console should be enabled or not.\n"
        }
      },
      "requiredInputs": [
        "clusterUuid"
      ],
      "stateInputs": {
        "description": "Input properties used for looking up and filtering VirtualMachine resources.\n",
        "properties": {
          "apiVersion": {
            "type": "string",
            "description": "The version of the API.\n"
          },
          "availabilityZoneReference": {
            "type": "object",
            "additionalProperties": {
              "type": "string"
            },
            "description": "- (Optional) The reference to a availability_zone.\n"
          },
          "bootDeviceDiskAddress": {
            "type": "object",
            "additionalProperties": {
              "type": "string"
            },
            "description": "- (Optional) Address of disk to boot from.\n"
          },
          "bootDeviceMacAddress": {
            "type": "string",
            "description": "- (Optional) MAC address of nic to boot from.\n"
          },
          "bootDeviceOrderLists": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "description": "- (Optional) Indicates the order of device types in which VM should try to boot from. If boot device order is not provided the system will decide appropriate boot device order.\n"
          },
          "bootType": {
            "type": "string",
            "description": "- (Optional) Indicates whether the VM should use Secure boot, UEFI boot or Legacy boot.If UEFI or; Secure boot is enabled then other legacy boot options (like<span pulumi-lang-nodejs=\" bootDevice \" pulumi-lang-dotnet=\" BootDevice \" pulumi-lang-go=\" bootDevice \" pulumi-lang-python=\" boot_device \" pulumi-lang-yaml=\" bootDevice \" pulumi-lang-java=\" bootDevice \"> boot_device </span>and; boot_device_order_list) are ignored. Secure boot depends on UEFI boot, i.e. enabling; Secure boot means that UEFI boot is also enabled. The possible value are: UEFI\", \"LEGACY\", \"SECURE_BOOT\".\n",
            "willReplaceOnChanges": true
          },
          "categories": {
            "type": "array",
            "items": {
              "$ref": "#/types/nutanix:index%2FVirtualMachineCategory:VirtualMachineCategory"
            },
            "description": "- (Optional) Categories for the vm.\n"
          },
          "cloudInitCdromUuid": {
            "type": "string"
          },
          "clusterName": {
            "type": "string",
            "description": "- The name of the cluster.\n"
          },
          "clusterUuid": {
            "type": "string",
            "description": "- (Required) The UUID of the cluster.\n"
          },
          "description": {
            "type": "string",
            "description": "- (Optional) A description for vm.\n"
          },
          "diskLists": {
            "type": "array",
            "items": {
              "$ref": "#/types/nutanix:index%2FVirtualMachineDiskList:VirtualMachineDiskList"
            },
            "description": "Disks attached to the VM.\n"
          },
          "enableCpuPassthrough": {
            "type": "boolean",
            "description": "- (Optional) Add true to enable CPU passthrough.\n"
          },
          "enableScriptExec": {
            "type": "boolean",
            "description": "- (Optional) Extra configs related to power state transition. Indicates whether to execute set script before ngt shutdown/reboot.\n"
          },
          "gpuLists": {
            "type": "array",
            "items": {
              "$ref": "#/types/nutanix:index%2FVirtualMachineGpuList:VirtualMachineGpuList"
            },
            "description": "- (Optional) GPUs attached to the VM.\n"
          },
          "guestCustomizationCloudInitCustomKeyValues": {
            "type": "object",
            "additionalProperties": {
              "type": "string"
            },
            "description": "- (Optional) Generic key value pair used for custom attributes in cloud init.\n"
          },
          "guestCustomizationCloudInitMetaData": {
            "type": "string",
            "description": "The contents of the<span pulumi-lang-nodejs=\" metaData \" pulumi-lang-dotnet=\" MetaData \" pulumi-lang-go=\" metaData \" pulumi-lang-python=\" meta_data \" pulumi-lang-yaml=\" metaData \" pulumi-lang-java=\" metaData \"> meta_data </span>configuration for cloud-init. This can be formatted as YAML or JSON. The value must be base64 encoded.\n",
            "willReplaceOnChanges": true
          },
          "guestCustomizationCloudInitUserData": {
            "type": "string",
            "description": "- (Optional) The contents of the<span pulumi-lang-nodejs=\" userData \" pulumi-lang-dotnet=\" UserData \" pulumi-lang-go=\" userData \" pulumi-lang-python=\" user_data \" pulumi-lang-yaml=\" userData \" pulumi-lang-java=\" userData \"> user_data </span>configuration for cloud-init. This can be formatted as YAML, JSON, or could be a shell script. The value must be base64 encoded.\n",
            "willReplaceOnChanges": true
          },
          "guestCustomizationIsOverridable": {
            "type": "boolean",
            "description": "- (Optional) Flag to allow override of customization by deployer.\n"
          },
          "guestCustomizationSysprep": {
            "type": "object",
            "additionalProperties": {
              "type": "string"
            },
            "description": "- (Optional) VM guests may be customized at boot time using one of several different methods. Currently, cloud-init w/ ConfigDriveV2 (for Linux VMs) and Sysprep (for Windows VMs) are supported. Only ONE OF sysprep or<span pulumi-lang-nodejs=\" cloudInit \" pulumi-lang-dotnet=\" CloudInit \" pulumi-lang-go=\" cloudInit \" pulumi-lang-python=\" cloud_init \" pulumi-lang-yaml=\" cloudInit \" pulumi-lang-java=\" cloudInit \"> cloud_init </span>should be provided. Note that guest customization can currently only be set during VM creation. Attempting to change it after creation will result in an error. Additional properties can be specified. For example - in the context of VM template creation if \\\"override_script\\\" is set to \\\"True\\\" then the deployer can upload their own custom script.\n",
            "willReplaceOnChanges": true
          },
          "guestCustomizationSysprepCustomKeyValues": {
            "type": "object",
            "additionalProperties": {
              "type": "string"
            },
            "description": "- (Optional) Generic key value pair used for custom attributes in sysprep.\n",
            "willReplaceOnChanges": true
          },
          "guestOsId": {
            "type": "string",
            "description": "- (Optional) Guest OS Identifier. For ESX, refer to VMware documentation [link](https://www.vmware.com/support/developer/converter-sdk/conv43_apireference/vim.vm.GuestOsDescriptor.GuestOsIdentifier.html) for the list of guest OS identifiers.\n"
          },
          "hardwareClockTimezone": {
            "type": "string",
            "description": "- (Optional) VM's hardware clock timezone in IANA TZDB format (America/Los_Angeles).\n"
          },
          "hostReference": {
            "type": "object",
            "additionalProperties": {
              "type": "string"
            },
            "description": "- Reference to a host.\n"
          },
          "hypervisorType": {
            "type": "string",
            "description": "- The hypervisor type for the hypervisor the VM is hosted on.\n"
          },
          "isVcpuHardPinned": {
            "type": "boolean",
            "description": "- (Optional) Add true to enable CPU pinning.\n"
          },
          "machineType": {
            "type": "string",
            "description": "- Machine type for the VM. Machine type Q35 is required for secure boot and does not support IDE disks.\n"
          },
          "memorySizeMib": {
            "type": "integer",
            "description": "- (Optional) Memory size in MiB. On updating memory to powered ON VMs should only be done in 1GB increments.\n"
          },
          "metadata": {
            "type": "object",
            "additionalProperties": {
              "type": "string"
            },
            "description": "- The vm kind metadata.\n"
          },
          "name": {
            "type": "string",
            "description": "- (Required) The name for the vm.\n"
          },
          "ngtCredentials": {
            "type": "object",
            "additionalProperties": {
              "type": "string"
            },
            "description": "- (Ooptional) Credentials to login server.\n"
          },
          "ngtEnabledCapabilityLists": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "description": "Application names that are enabled.\n"
          },
          "nicListStatuses": {
            "type": "array",
            "items": {
              "$ref": "#/types/nutanix:index%2FVirtualMachineNicListStatus:VirtualMachineNicListStatus"
            },
            "description": "- Status NICs attached to the VM.\n"
          },
          "nicLists": {
            "type": "array",
            "items": {
              "$ref": "#/types/nutanix:index%2FVirtualMachineNicList:VirtualMachineNicList"
            },
            "description": "- (Optional) Spec NICs attached to the VM.\n"
          },
          "numSockets": {
            "type": "integer",
            "description": "- (Optional) Number of vCPU sockets.\n"
          },
          "numVcpusPerSocket": {
            "type": "integer",
            "description": "- (Optional) Number of vCPUs per socket.\n"
          },
          "numVnumaNodes": {
            "type": "integer",
            "description": "- (Optional) Number of vNUMA nodes. 0 means vNUMA is disabled.\n"
          },
          "nutanixGuestTools": {
            "type": "object",
            "additionalProperties": {
              "type": "string"
            },
            "description": "- (Optional) Information regarding Nutanix Guest Tools.\n"
          },
          "ownerReference": {
            "type": "object",
            "additionalProperties": {
              "type": "string"
            },
            "description": "- (Optional) The reference to a user.\n"
          },
          "parentReference": {
            "type": "object",
            "additionalProperties": {
              "type": "string"
            },
            "description": "- (Optional) Reference to an entity that the VM cloned from.\n"
          },
          "powerState": {
            "type": "string",
            "description": "- (Optional) The current or desired power state of the VM. (Options : ON , OFF)\n"
          },
          "powerStateMechanism": {
            "type": "string",
            "description": "- (Optional) Indicates the mechanism guiding the VM power state transition. Currently used for the transition to \\\"OFF\\\" state. Power state mechanism (ACPI/GUEST/HARD).\n"
          },
          "projectReference": {
            "type": "object",
            "additionalProperties": {
              "type": "string"
            },
            "description": "- (Optional) The reference to a project.\n"
          },
          "serialPortLists": {
            "type": "array",
            "items": {
              "$ref": "#/types/nutanix:index%2FVirtualMachineSerialPortList:VirtualMachineSerialPortList"
            },
            "description": "- (Optional) Serial Ports configured on the VM.\n",
            "willReplaceOnChanges": true
          },
          "shouldFailOnScriptFailure": {
            "type": "boolean",
            "description": "- (Optional)  Extra configs related to power state transition. Indicates whether to abort ngt shutdown/reboot if script fails.\n"
          },
          "state": {
            "type": "string",
            "description": "- The state of the vm.\n"
          },
          "useHotAdd": {
            "type": "boolean",
            "description": "- (Optional) Use Hot Add when modifying VM resources. Passing value false will result in VM reboots. Default value is <span pulumi-lang-nodejs=\"`true`\" pulumi-lang-dotnet=\"`True`\" pulumi-lang-go=\"`true`\" pulumi-lang-python=\"`true`\" pulumi-lang-yaml=\"`true`\" pulumi-lang-java=\"`true`\">`true`</span>.\n"
          },
          "vgaConsoleEnabled": {
            "type": "boolean",
            "description": "- (Optional) Indicates whether VGA console should be enabled or not.\n"
          }
        },
        "type": "object"
      }
    },
    "nutanix:index/virtualMachineV2:VirtualMachineV2": {
      "description": "Creates a Virtual Machine with the provided configuration.\n\n## Example\n\n<!--Start PulumiCodeChooser -->\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as nutanix from \"@pierskarsenbarg/nutanix\";\nimport * as std from \"@pulumi/std\";\n\nconst vm_1 = new nutanix.VirtualMachineV2(\"vm-1\", {\n    name: \"example-vm-1\",\n    description: \"vm desc\",\n    numCoresPerSocket: 1,\n    numSockets: 1,\n    clusters: [{\n        extId: \"1cefd0f5-6d38-4c9b-a07c-bdd2db004224\",\n    }],\n});\nconst vm_2 = new nutanix.VirtualMachineV2(\"vm-2\", {\n    name: \"example-vm-2\",\n    description: \"vm desc\",\n    numCoresPerSocket: 1,\n    numSockets: 1,\n    clusters: [{\n        extId: \"1cefd0f5-6d38-4c9b-a07c-bdd2db004224\",\n    }],\n    disks: [{\n        diskAddresses: [{\n            busType: \"SCSI\",\n            index: 0,\n        }],\n        backingInfos: [{\n            vmDisks: [{\n                diskSizeBytes: 1073741824,\n                storageContainers: [{\n                    extId: \"1cefd0f5-6d38-4c9b-a07c-bdd2db004224\",\n                }],\n            }],\n        }],\n    }],\n    bootConfigs: [{\n        uefiBoots: [{\n            bootOrders: [\n                \"NETWORK\",\n                \"DISK\",\n                \"CDROM\",\n            ],\n        }],\n    }],\n});\nconst vm_3 = new nutanix.VirtualMachineV2(\"vm-3\", {\n    name: \"terraform-example-vm-4-disks\",\n    numCoresPerSocket: 1,\n    numSockets: 1,\n    clusters: [{\n        extId: \"1cefd0f5-6d38-4c9b-a07c-bdd2db004224\",\n    }],\n    disks: [\n        {\n            diskAddresses: [{\n                busType: \"SCSI\",\n                index: 0,\n            }],\n            backingInfos: [{\n                vmDisks: [{\n                    dataSources: [{\n                        references: [{\n                            imageReferences: [{\n                                imageExtId: \"59ec786c-4311-4225-affe-68b65c5ebf10\",\n                            }],\n                        }],\n                    }],\n                    diskSizeBytes: std.pow({\n                        base: 1024,\n                        exponent: 3,\n                    }).then(invoke => 20 * invoke.result),\n                }],\n            }],\n        },\n        {\n            diskAddresses: [{\n                busType: \"SCSI\",\n                index: 1,\n            }],\n            backingInfos: [{\n                vmDisks: [{\n                    diskSizeBytes: std.pow({\n                        base: 1024,\n                        exponent: 3,\n                    }).then(invoke => 10 * invoke.result),\n                    storageContainers: [{\n                        extId: \"5d9b5941-fec3-4996-9d31-f31bed1c7735\",\n                    }],\n                }],\n            }],\n        },\n        {\n            diskAddresses: [{\n                busType: \"SCSI\",\n                index: 2,\n            }],\n            backingInfos: [{\n                vmDisks: [{\n                    diskSizeBytes: std.pow({\n                        base: 1024,\n                        exponent: 3,\n                    }).then(invoke => 15 * invoke.result),\n                    storageContainers: [{\n                        extId: \"5d9b5941-fec3-4996-9d31-f31bed1c7735\",\n                    }],\n                }],\n            }],\n        },\n        {\n            diskAddresses: [{\n                busType: \"SCSI\",\n                index: 3,\n            }],\n            backingInfos: [{\n                vmDisks: [{\n                    diskSizeBytes: std.pow({\n                        base: 1024,\n                        exponent: 3,\n                    }).then(invoke => 20 * invoke.result),\n                    storageContainers: [{\n                        extId: \"5d9b5941-fec3-4996-9d31-f31bed1c7735\",\n                    }],\n                }],\n            }],\n        },\n    ],\n    nics: [{\n        networkInfos: [{\n            nicType: \"NORMAL_NIC\",\n            subnets: [{\n                extId: \"7f66e20f-67f4-473f-96bb-c4fcfd487f16\",\n            }],\n            vlanMode: \"ACCESS\",\n        }],\n    }],\n    bootConfigs: [{\n        legacyBoots: [{\n            bootOrders: [\n                \"CDROM\",\n                \"DISK\",\n                \"NETWORK\",\n            ],\n        }],\n    }],\n    powerState: \"ON\",\n});\n```\n```python\nimport pulumi\nimport pulumi_nutanix as nutanix\nimport pulumi_std as std\n\nvm_1 = nutanix.VirtualMachineV2(\"vm-1\",\n    name=\"example-vm-1\",\n    description=\"vm desc\",\n    num_cores_per_socket=1,\n    num_sockets=1,\n    clusters=[{\n        \"ext_id\": \"1cefd0f5-6d38-4c9b-a07c-bdd2db004224\",\n    }])\nvm_2 = nutanix.VirtualMachineV2(\"vm-2\",\n    name=\"example-vm-2\",\n    description=\"vm desc\",\n    num_cores_per_socket=1,\n    num_sockets=1,\n    clusters=[{\n        \"ext_id\": \"1cefd0f5-6d38-4c9b-a07c-bdd2db004224\",\n    }],\n    disks=[{\n        \"disk_addresses\": [{\n            \"bus_type\": \"SCSI\",\n            \"index\": 0,\n        }],\n        \"backing_infos\": [{\n            \"vm_disks\": [{\n                \"disk_size_bytes\": 1073741824,\n                \"storage_containers\": [{\n                    \"ext_id\": \"1cefd0f5-6d38-4c9b-a07c-bdd2db004224\",\n                }],\n            }],\n        }],\n    }],\n    boot_configs=[{\n        \"uefi_boots\": [{\n            \"boot_orders\": [\n                \"NETWORK\",\n                \"DISK\",\n                \"CDROM\",\n            ],\n        }],\n    }])\nvm_3 = nutanix.VirtualMachineV2(\"vm-3\",\n    name=\"terraform-example-vm-4-disks\",\n    num_cores_per_socket=1,\n    num_sockets=1,\n    clusters=[{\n        \"ext_id\": \"1cefd0f5-6d38-4c9b-a07c-bdd2db004224\",\n    }],\n    disks=[\n        {\n            \"disk_addresses\": [{\n                \"bus_type\": \"SCSI\",\n                \"index\": 0,\n            }],\n            \"backing_infos\": [{\n                \"vm_disks\": [{\n                    \"data_sources\": [{\n                        \"references\": [{\n                            \"image_references\": [{\n                                \"image_ext_id\": \"59ec786c-4311-4225-affe-68b65c5ebf10\",\n                            }],\n                        }],\n                    }],\n                    \"disk_size_bytes\": 20 * std.pow(base=1024,\n                        exponent=3).result,\n                }],\n            }],\n        },\n        {\n            \"disk_addresses\": [{\n                \"bus_type\": \"SCSI\",\n                \"index\": 1,\n            }],\n            \"backing_infos\": [{\n                \"vm_disks\": [{\n                    \"disk_size_bytes\": 10 * std.pow(base=1024,\n                        exponent=3).result,\n                    \"storage_containers\": [{\n                        \"ext_id\": \"5d9b5941-fec3-4996-9d31-f31bed1c7735\",\n                    }],\n                }],\n            }],\n        },\n        {\n            \"disk_addresses\": [{\n                \"bus_type\": \"SCSI\",\n                \"index\": 2,\n            }],\n            \"backing_infos\": [{\n                \"vm_disks\": [{\n                    \"disk_size_bytes\": 15 * std.pow(base=1024,\n                        exponent=3).result,\n                    \"storage_containers\": [{\n                        \"ext_id\": \"5d9b5941-fec3-4996-9d31-f31bed1c7735\",\n                    }],\n                }],\n            }],\n        },\n        {\n            \"disk_addresses\": [{\n                \"bus_type\": \"SCSI\",\n                \"index\": 3,\n            }],\n            \"backing_infos\": [{\n                \"vm_disks\": [{\n                    \"disk_size_bytes\": 20 * std.pow(base=1024,\n                        exponent=3).result,\n                    \"storage_containers\": [{\n                        \"ext_id\": \"5d9b5941-fec3-4996-9d31-f31bed1c7735\",\n                    }],\n                }],\n            }],\n        },\n    ],\n    nics=[{\n        \"network_infos\": [{\n            \"nic_type\": \"NORMAL_NIC\",\n            \"subnets\": [{\n                \"ext_id\": \"7f66e20f-67f4-473f-96bb-c4fcfd487f16\",\n            }],\n            \"vlan_mode\": \"ACCESS\",\n        }],\n    }],\n    boot_configs=[{\n        \"legacy_boots\": [{\n            \"boot_orders\": [\n                \"CDROM\",\n                \"DISK\",\n                \"NETWORK\",\n            ],\n        }],\n    }],\n    power_state=\"ON\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Nutanix = PiersKarsenbarg.Nutanix;\nusing Std = Pulumi.Std;\n\nreturn await Deployment.RunAsync(() => \n{\n    var vm_1 = new Nutanix.VirtualMachineV2(\"vm-1\", new()\n    {\n        Name = \"example-vm-1\",\n        Description = \"vm desc\",\n        NumCoresPerSocket = 1,\n        NumSockets = 1,\n        Clusters = new[]\n        {\n            new Nutanix.Inputs.VirtualMachineV2ClusterArgs\n            {\n                ExtId = \"1cefd0f5-6d38-4c9b-a07c-bdd2db004224\",\n            },\n        },\n    });\n\n    var vm_2 = new Nutanix.VirtualMachineV2(\"vm-2\", new()\n    {\n        Name = \"example-vm-2\",\n        Description = \"vm desc\",\n        NumCoresPerSocket = 1,\n        NumSockets = 1,\n        Clusters = new[]\n        {\n            new Nutanix.Inputs.VirtualMachineV2ClusterArgs\n            {\n                ExtId = \"1cefd0f5-6d38-4c9b-a07c-bdd2db004224\",\n            },\n        },\n        Disks = new[]\n        {\n            new Nutanix.Inputs.VirtualMachineV2DiskArgs\n            {\n                DiskAddresses = new[]\n                {\n                    new Nutanix.Inputs.VirtualMachineV2DiskDiskAddressArgs\n                    {\n                        BusType = \"SCSI\",\n                        Index = 0,\n                    },\n                },\n                BackingInfos = new[]\n                {\n                    new Nutanix.Inputs.VirtualMachineV2DiskBackingInfoArgs\n                    {\n                        VmDisks = new[]\n                        {\n                            new Nutanix.Inputs.VirtualMachineV2DiskBackingInfoVmDiskArgs\n                            {\n                                DiskSizeBytes = 1073741824,\n                                StorageContainers = new[]\n                                {\n                                    new Nutanix.Inputs.VirtualMachineV2DiskBackingInfoVmDiskStorageContainerArgs\n                                    {\n                                        ExtId = \"1cefd0f5-6d38-4c9b-a07c-bdd2db004224\",\n                                    },\n                                },\n                            },\n                        },\n                    },\n                },\n            },\n        },\n        BootConfigs = new[]\n        {\n            new Nutanix.Inputs.VirtualMachineV2BootConfigArgs\n            {\n                UefiBoots = new[]\n                {\n                    new Nutanix.Inputs.VirtualMachineV2BootConfigUefiBootArgs\n                    {\n                        BootOrders = new[]\n                        {\n                            \"NETWORK\",\n                            \"DISK\",\n                            \"CDROM\",\n                        },\n                    },\n                },\n            },\n        },\n    });\n\n    var vm_3 = new Nutanix.VirtualMachineV2(\"vm-3\", new()\n    {\n        Name = \"terraform-example-vm-4-disks\",\n        NumCoresPerSocket = 1,\n        NumSockets = 1,\n        Clusters = new[]\n        {\n            new Nutanix.Inputs.VirtualMachineV2ClusterArgs\n            {\n                ExtId = \"1cefd0f5-6d38-4c9b-a07c-bdd2db004224\",\n            },\n        },\n        Disks = new[]\n        {\n            new Nutanix.Inputs.VirtualMachineV2DiskArgs\n            {\n                DiskAddresses = new[]\n                {\n                    new Nutanix.Inputs.VirtualMachineV2DiskDiskAddressArgs\n                    {\n                        BusType = \"SCSI\",\n                        Index = 0,\n                    },\n                },\n                BackingInfos = new[]\n                {\n                    new Nutanix.Inputs.VirtualMachineV2DiskBackingInfoArgs\n                    {\n                        VmDisks = new[]\n                        {\n                            new Nutanix.Inputs.VirtualMachineV2DiskBackingInfoVmDiskArgs\n                            {\n                                DataSources = new[]\n                                {\n                                    new Nutanix.Inputs.VirtualMachineV2DiskBackingInfoVmDiskDataSourceArgs\n                                    {\n                                        References = new[]\n                                        {\n                                            new Nutanix.Inputs.VirtualMachineV2DiskBackingInfoVmDiskDataSourceReferenceArgs\n                                            {\n                                                ImageReferences = new[]\n                                                {\n                                                    new Nutanix.Inputs.VirtualMachineV2DiskBackingInfoVmDiskDataSourceReferenceImageReferenceArgs\n                                                    {\n                                                        ImageExtId = \"59ec786c-4311-4225-affe-68b65c5ebf10\",\n                                                    },\n                                                },\n                                            },\n                                        },\n                                    },\n                                },\n                                DiskSizeBytes = Std.Pow.Invoke(new()\n                                {\n                                    Base = 1024,\n                                    Exponent = 3,\n                                }).Apply(invoke => 20 * invoke.Result),\n                            },\n                        },\n                    },\n                },\n            },\n            new Nutanix.Inputs.VirtualMachineV2DiskArgs\n            {\n                DiskAddresses = new[]\n                {\n                    new Nutanix.Inputs.VirtualMachineV2DiskDiskAddressArgs\n                    {\n                        BusType = \"SCSI\",\n                        Index = 1,\n                    },\n                },\n                BackingInfos = new[]\n                {\n                    new Nutanix.Inputs.VirtualMachineV2DiskBackingInfoArgs\n                    {\n                        VmDisks = new[]\n                        {\n                            new Nutanix.Inputs.VirtualMachineV2DiskBackingInfoVmDiskArgs\n                            {\n                                DiskSizeBytes = Std.Pow.Invoke(new()\n                                {\n                                    Base = 1024,\n                                    Exponent = 3,\n                                }).Apply(invoke => 10 * invoke.Result),\n                                StorageContainers = new[]\n                                {\n                                    new Nutanix.Inputs.VirtualMachineV2DiskBackingInfoVmDiskStorageContainerArgs\n                                    {\n                                        ExtId = \"5d9b5941-fec3-4996-9d31-f31bed1c7735\",\n                                    },\n                                },\n                            },\n                        },\n                    },\n                },\n            },\n            new Nutanix.Inputs.VirtualMachineV2DiskArgs\n            {\n                DiskAddresses = new[]\n                {\n                    new Nutanix.Inputs.VirtualMachineV2DiskDiskAddressArgs\n                    {\n                        BusType = \"SCSI\",\n                        Index = 2,\n                    },\n                },\n                BackingInfos = new[]\n                {\n                    new Nutanix.Inputs.VirtualMachineV2DiskBackingInfoArgs\n                    {\n                        VmDisks = new[]\n                        {\n                            new Nutanix.Inputs.VirtualMachineV2DiskBackingInfoVmDiskArgs\n                            {\n                                DiskSizeBytes = Std.Pow.Invoke(new()\n                                {\n                                    Base = 1024,\n                                    Exponent = 3,\n                                }).Apply(invoke => 15 * invoke.Result),\n                                StorageContainers = new[]\n                                {\n                                    new Nutanix.Inputs.VirtualMachineV2DiskBackingInfoVmDiskStorageContainerArgs\n                                    {\n                                        ExtId = \"5d9b5941-fec3-4996-9d31-f31bed1c7735\",\n                                    },\n                                },\n                            },\n                        },\n                    },\n                },\n            },\n            new Nutanix.Inputs.VirtualMachineV2DiskArgs\n            {\n                DiskAddresses = new[]\n                {\n                    new Nutanix.Inputs.VirtualMachineV2DiskDiskAddressArgs\n                    {\n                        BusType = \"SCSI\",\n                        Index = 3,\n                    },\n                },\n                BackingInfos = new[]\n                {\n                    new Nutanix.Inputs.VirtualMachineV2DiskBackingInfoArgs\n                    {\n                        VmDisks = new[]\n                        {\n                            new Nutanix.Inputs.VirtualMachineV2DiskBackingInfoVmDiskArgs\n                            {\n                                DiskSizeBytes = Std.Pow.Invoke(new()\n                                {\n                                    Base = 1024,\n                                    Exponent = 3,\n                                }).Apply(invoke => 20 * invoke.Result),\n                                StorageContainers = new[]\n                                {\n                                    new Nutanix.Inputs.VirtualMachineV2DiskBackingInfoVmDiskStorageContainerArgs\n                                    {\n                                        ExtId = \"5d9b5941-fec3-4996-9d31-f31bed1c7735\",\n                                    },\n                                },\n                            },\n                        },\n                    },\n                },\n            },\n        },\n        Nics = new[]\n        {\n            new Nutanix.Inputs.VirtualMachineV2NicArgs\n            {\n                NetworkInfos = new[]\n                {\n                    new Nutanix.Inputs.VirtualMachineV2NicNetworkInfoArgs\n                    {\n                        NicType = \"NORMAL_NIC\",\n                        Subnets = new[]\n                        {\n                            new Nutanix.Inputs.VirtualMachineV2NicNetworkInfoSubnetArgs\n                            {\n                                ExtId = \"7f66e20f-67f4-473f-96bb-c4fcfd487f16\",\n                            },\n                        },\n                        VlanMode = \"ACCESS\",\n                    },\n                },\n            },\n        },\n        BootConfigs = new[]\n        {\n            new Nutanix.Inputs.VirtualMachineV2BootConfigArgs\n            {\n                LegacyBoots = new[]\n                {\n                    new Nutanix.Inputs.VirtualMachineV2BootConfigLegacyBootArgs\n                    {\n                        BootOrders = new[]\n                        {\n                            \"CDROM\",\n                            \"DISK\",\n                            \"NETWORK\",\n                        },\n                    },\n                },\n            },\n        },\n        PowerState = \"ON\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pierskarsenbarg/pulumi-nutanix/sdk/go/nutanix\"\n\t\"github.com/pulumi/pulumi-std/sdk/go/std\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := nutanix.NewVirtualMachineV2(ctx, \"vm-1\", &nutanix.VirtualMachineV2Args{\n\t\t\tName:              pulumi.String(\"example-vm-1\"),\n\t\t\tDescription:       pulumi.String(\"vm desc\"),\n\t\t\tNumCoresPerSocket: pulumi.Int(1),\n\t\t\tNumSockets:        pulumi.Int(1),\n\t\t\tClusters: nutanix.VirtualMachineV2ClusterArray{\n\t\t\t\t&nutanix.VirtualMachineV2ClusterArgs{\n\t\t\t\t\tExtId: pulumi.String(\"1cefd0f5-6d38-4c9b-a07c-bdd2db004224\"),\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = nutanix.NewVirtualMachineV2(ctx, \"vm-2\", &nutanix.VirtualMachineV2Args{\n\t\t\tName:              pulumi.String(\"example-vm-2\"),\n\t\t\tDescription:       pulumi.String(\"vm desc\"),\n\t\t\tNumCoresPerSocket: pulumi.Int(1),\n\t\t\tNumSockets:        pulumi.Int(1),\n\t\t\tClusters: nutanix.VirtualMachineV2ClusterArray{\n\t\t\t\t&nutanix.VirtualMachineV2ClusterArgs{\n\t\t\t\t\tExtId: pulumi.String(\"1cefd0f5-6d38-4c9b-a07c-bdd2db004224\"),\n\t\t\t\t},\n\t\t\t},\n\t\t\tDisks: nutanix.VirtualMachineV2DiskArray{\n\t\t\t\t&nutanix.VirtualMachineV2DiskArgs{\n\t\t\t\t\tDiskAddresses: nutanix.VirtualMachineV2DiskDiskAddressArray{\n\t\t\t\t\t\t&nutanix.VirtualMachineV2DiskDiskAddressArgs{\n\t\t\t\t\t\t\tBusType: pulumi.String(\"SCSI\"),\n\t\t\t\t\t\t\tIndex:   pulumi.Int(0),\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t\tBackingInfos: nutanix.VirtualMachineV2DiskBackingInfoArray{\n\t\t\t\t\t\t&nutanix.VirtualMachineV2DiskBackingInfoArgs{\n\t\t\t\t\t\t\tVmDisks: nutanix.VirtualMachineV2DiskBackingInfoVmDiskArray{\n\t\t\t\t\t\t\t\t&nutanix.VirtualMachineV2DiskBackingInfoVmDiskArgs{\n\t\t\t\t\t\t\t\t\tDiskSizeBytes: pulumi.Int(1073741824),\n\t\t\t\t\t\t\t\t\tStorageContainers: nutanix.VirtualMachineV2DiskBackingInfoVmDiskStorageContainerArray{\n\t\t\t\t\t\t\t\t\t\t&nutanix.VirtualMachineV2DiskBackingInfoVmDiskStorageContainerArgs{\n\t\t\t\t\t\t\t\t\t\t\tExtId: pulumi.String(\"1cefd0f5-6d38-4c9b-a07c-bdd2db004224\"),\n\t\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t\tBootConfigs: nutanix.VirtualMachineV2BootConfigArray{\n\t\t\t\t&nutanix.VirtualMachineV2BootConfigArgs{\n\t\t\t\t\tUefiBoots: nutanix.VirtualMachineV2BootConfigUefiBootArray{\n\t\t\t\t\t\t&nutanix.VirtualMachineV2BootConfigUefiBootArgs{\n\t\t\t\t\t\t\tBootOrders: pulumi.StringArray{\n\t\t\t\t\t\t\t\tpulumi.String(\"NETWORK\"),\n\t\t\t\t\t\t\t\tpulumi.String(\"DISK\"),\n\t\t\t\t\t\t\t\tpulumi.String(\"CDROM\"),\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tinvokePow, err := std.Pow(ctx, &std.PowArgs{\n\t\t\tBase:     1024,\n\t\t\tExponent: 3,\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tinvokePow1, err := std.Pow(ctx, &std.PowArgs{\n\t\t\tBase:     1024,\n\t\t\tExponent: 3,\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tinvokePow2, err := std.Pow(ctx, &std.PowArgs{\n\t\t\tBase:     1024,\n\t\t\tExponent: 3,\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tinvokePow3, err := std.Pow(ctx, &std.PowArgs{\n\t\t\tBase:     1024,\n\t\t\tExponent: 3,\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = nutanix.NewVirtualMachineV2(ctx, \"vm-3\", &nutanix.VirtualMachineV2Args{\n\t\t\tName:              pulumi.String(\"terraform-example-vm-4-disks\"),\n\t\t\tNumCoresPerSocket: pulumi.Int(1),\n\t\t\tNumSockets:        pulumi.Int(1),\n\t\t\tClusters: nutanix.VirtualMachineV2ClusterArray{\n\t\t\t\t&nutanix.VirtualMachineV2ClusterArgs{\n\t\t\t\t\tExtId: pulumi.String(\"1cefd0f5-6d38-4c9b-a07c-bdd2db004224\"),\n\t\t\t\t},\n\t\t\t},\n\t\t\tDisks: nutanix.VirtualMachineV2DiskArray{\n\t\t\t\t&nutanix.VirtualMachineV2DiskArgs{\n\t\t\t\t\tDiskAddresses: nutanix.VirtualMachineV2DiskDiskAddressArray{\n\t\t\t\t\t\t&nutanix.VirtualMachineV2DiskDiskAddressArgs{\n\t\t\t\t\t\t\tBusType: pulumi.String(\"SCSI\"),\n\t\t\t\t\t\t\tIndex:   pulumi.Int(0),\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t\tBackingInfos: nutanix.VirtualMachineV2DiskBackingInfoArray{\n\t\t\t\t\t\t&nutanix.VirtualMachineV2DiskBackingInfoArgs{\n\t\t\t\t\t\t\tVmDisks: nutanix.VirtualMachineV2DiskBackingInfoVmDiskArray{\n\t\t\t\t\t\t\t\t&nutanix.VirtualMachineV2DiskBackingInfoVmDiskArgs{\n\t\t\t\t\t\t\t\t\tDataSources: nutanix.VirtualMachineV2DiskBackingInfoVmDiskDataSourceArray{\n\t\t\t\t\t\t\t\t\t\t&nutanix.VirtualMachineV2DiskBackingInfoVmDiskDataSourceArgs{\n\t\t\t\t\t\t\t\t\t\t\tReferences: nutanix.VirtualMachineV2DiskBackingInfoVmDiskDataSourceReferenceArray{\n\t\t\t\t\t\t\t\t\t\t\t\t&nutanix.VirtualMachineV2DiskBackingInfoVmDiskDataSourceReferenceArgs{\n\t\t\t\t\t\t\t\t\t\t\t\t\tImageReferences: nutanix.VirtualMachineV2DiskBackingInfoVmDiskDataSourceReferenceImageReferenceArray{\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t&nutanix.VirtualMachineV2DiskBackingInfoVmDiskDataSourceReferenceImageReferenceArgs{\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tImageExtId: pulumi.String(\"59ec786c-4311-4225-affe-68b65c5ebf10\"),\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\tDiskSizeBytes: pulumi.Int(20 * pulumi.Float64(invokePow.Result)),\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\t&nutanix.VirtualMachineV2DiskArgs{\n\t\t\t\t\tDiskAddresses: nutanix.VirtualMachineV2DiskDiskAddressArray{\n\t\t\t\t\t\t&nutanix.VirtualMachineV2DiskDiskAddressArgs{\n\t\t\t\t\t\t\tBusType: pulumi.String(\"SCSI\"),\n\t\t\t\t\t\t\tIndex:   pulumi.Int(1),\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t\tBackingInfos: nutanix.VirtualMachineV2DiskBackingInfoArray{\n\t\t\t\t\t\t&nutanix.VirtualMachineV2DiskBackingInfoArgs{\n\t\t\t\t\t\t\tVmDisks: nutanix.VirtualMachineV2DiskBackingInfoVmDiskArray{\n\t\t\t\t\t\t\t\t&nutanix.VirtualMachineV2DiskBackingInfoVmDiskArgs{\n\t\t\t\t\t\t\t\t\tDiskSizeBytes: pulumi.Int(10 * pulumi.Float64(invokePow1.Result)),\n\t\t\t\t\t\t\t\t\tStorageContainers: nutanix.VirtualMachineV2DiskBackingInfoVmDiskStorageContainerArray{\n\t\t\t\t\t\t\t\t\t\t&nutanix.VirtualMachineV2DiskBackingInfoVmDiskStorageContainerArgs{\n\t\t\t\t\t\t\t\t\t\t\tExtId: pulumi.String(\"5d9b5941-fec3-4996-9d31-f31bed1c7735\"),\n\t\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\t&nutanix.VirtualMachineV2DiskArgs{\n\t\t\t\t\tDiskAddresses: nutanix.VirtualMachineV2DiskDiskAddressArray{\n\t\t\t\t\t\t&nutanix.VirtualMachineV2DiskDiskAddressArgs{\n\t\t\t\t\t\t\tBusType: pulumi.String(\"SCSI\"),\n\t\t\t\t\t\t\tIndex:   pulumi.Int(2),\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t\tBackingInfos: nutanix.VirtualMachineV2DiskBackingInfoArray{\n\t\t\t\t\t\t&nutanix.VirtualMachineV2DiskBackingInfoArgs{\n\t\t\t\t\t\t\tVmDisks: nutanix.VirtualMachineV2DiskBackingInfoVmDiskArray{\n\t\t\t\t\t\t\t\t&nutanix.VirtualMachineV2DiskBackingInfoVmDiskArgs{\n\t\t\t\t\t\t\t\t\tDiskSizeBytes: pulumi.Int(15 * pulumi.Float64(invokePow2.Result)),\n\t\t\t\t\t\t\t\t\tStorageContainers: nutanix.VirtualMachineV2DiskBackingInfoVmDiskStorageContainerArray{\n\t\t\t\t\t\t\t\t\t\t&nutanix.VirtualMachineV2DiskBackingInfoVmDiskStorageContainerArgs{\n\t\t\t\t\t\t\t\t\t\t\tExtId: pulumi.String(\"5d9b5941-fec3-4996-9d31-f31bed1c7735\"),\n\t\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t\t&nutanix.VirtualMachineV2DiskArgs{\n\t\t\t\t\tDiskAddresses: nutanix.VirtualMachineV2DiskDiskAddressArray{\n\t\t\t\t\t\t&nutanix.VirtualMachineV2DiskDiskAddressArgs{\n\t\t\t\t\t\t\tBusType: pulumi.String(\"SCSI\"),\n\t\t\t\t\t\t\tIndex:   pulumi.Int(3),\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t\tBackingInfos: nutanix.VirtualMachineV2DiskBackingInfoArray{\n\t\t\t\t\t\t&nutanix.VirtualMachineV2DiskBackingInfoArgs{\n\t\t\t\t\t\t\tVmDisks: nutanix.VirtualMachineV2DiskBackingInfoVmDiskArray{\n\t\t\t\t\t\t\t\t&nutanix.VirtualMachineV2DiskBackingInfoVmDiskArgs{\n\t\t\t\t\t\t\t\t\tDiskSizeBytes: pulumi.Int(20 * pulumi.Float64(invokePow3.Result)),\n\t\t\t\t\t\t\t\t\tStorageContainers: nutanix.VirtualMachineV2DiskBackingInfoVmDiskStorageContainerArray{\n\t\t\t\t\t\t\t\t\t\t&nutanix.VirtualMachineV2DiskBackingInfoVmDiskStorageContainerArgs{\n\t\t\t\t\t\t\t\t\t\t\tExtId: pulumi.String(\"5d9b5941-fec3-4996-9d31-f31bed1c7735\"),\n\t\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t\tNics: nutanix.VirtualMachineV2NicArray{\n\t\t\t\t&nutanix.VirtualMachineV2NicArgs{\n\t\t\t\t\tNetworkInfos: nutanix.VirtualMachineV2NicNetworkInfoArray{\n\t\t\t\t\t\t&nutanix.VirtualMachineV2NicNetworkInfoArgs{\n\t\t\t\t\t\t\tNicType: pulumi.String(\"NORMAL_NIC\"),\n\t\t\t\t\t\t\tSubnets: nutanix.VirtualMachineV2NicNetworkInfoSubnetArray{\n\t\t\t\t\t\t\t\t&nutanix.VirtualMachineV2NicNetworkInfoSubnetArgs{\n\t\t\t\t\t\t\t\t\tExtId: pulumi.String(\"7f66e20f-67f4-473f-96bb-c4fcfd487f16\"),\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\tVlanMode: pulumi.String(\"ACCESS\"),\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t\tBootConfigs: nutanix.VirtualMachineV2BootConfigArray{\n\t\t\t\t&nutanix.VirtualMachineV2BootConfigArgs{\n\t\t\t\t\tLegacyBoots: nutanix.VirtualMachineV2BootConfigLegacyBootArray{\n\t\t\t\t\t\t&nutanix.VirtualMachineV2BootConfigLegacyBootArgs{\n\t\t\t\t\t\t\tBootOrders: pulumi.StringArray{\n\t\t\t\t\t\t\t\tpulumi.String(\"CDROM\"),\n\t\t\t\t\t\t\t\tpulumi.String(\"DISK\"),\n\t\t\t\t\t\t\t\tpulumi.String(\"NETWORK\"),\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t\tPowerState: pulumi.String(\"ON\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.nutanix.VirtualMachineV2;\nimport com.pulumi.nutanix.VirtualMachineV2Args;\nimport com.pulumi.nutanix.inputs.VirtualMachineV2ClusterArgs;\nimport com.pulumi.nutanix.inputs.VirtualMachineV2DiskArgs;\nimport com.pulumi.nutanix.inputs.VirtualMachineV2BootConfigArgs;\nimport com.pulumi.nutanix.inputs.VirtualMachineV2NicArgs;\nimport com.pulumi.std.StdFunctions;\nimport com.pulumi.std.inputs.PowArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var vm_1 = new VirtualMachineV2(\"vm-1\", VirtualMachineV2Args.builder()\n            .name(\"example-vm-1\")\n            .description(\"vm desc\")\n            .numCoresPerSocket(1)\n            .numSockets(1)\n            .clusters(VirtualMachineV2ClusterArgs.builder()\n                .extId(\"1cefd0f5-6d38-4c9b-a07c-bdd2db004224\")\n                .build())\n            .build());\n\n        var vm_2 = new VirtualMachineV2(\"vm-2\", VirtualMachineV2Args.builder()\n            .name(\"example-vm-2\")\n            .description(\"vm desc\")\n            .numCoresPerSocket(1)\n            .numSockets(1)\n            .clusters(VirtualMachineV2ClusterArgs.builder()\n                .extId(\"1cefd0f5-6d38-4c9b-a07c-bdd2db004224\")\n                .build())\n            .disks(VirtualMachineV2DiskArgs.builder()\n                .diskAddresses(VirtualMachineV2DiskDiskAddressArgs.builder()\n                    .busType(\"SCSI\")\n                    .index(0)\n                    .build())\n                .backingInfos(VirtualMachineV2DiskBackingInfoArgs.builder()\n                    .vmDisks(VirtualMachineV2DiskBackingInfoVmDiskArgs.builder()\n                        .diskSizeBytes(1073741824)\n                        .storageContainers(VirtualMachineV2DiskBackingInfoVmDiskStorageContainerArgs.builder()\n                            .extId(\"1cefd0f5-6d38-4c9b-a07c-bdd2db004224\")\n                            .build())\n                        .build())\n                    .build())\n                .build())\n            .bootConfigs(VirtualMachineV2BootConfigArgs.builder()\n                .uefiBoots(VirtualMachineV2BootConfigUefiBootArgs.builder()\n                    .bootOrders(                    \n                        \"NETWORK\",\n                        \"DISK\",\n                        \"CDROM\")\n                    .build())\n                .build())\n            .build());\n\n        var vm_3 = new VirtualMachineV2(\"vm-3\", VirtualMachineV2Args.builder()\n            .name(\"terraform-example-vm-4-disks\")\n            .numCoresPerSocket(1)\n            .numSockets(1)\n            .clusters(VirtualMachineV2ClusterArgs.builder()\n                .extId(\"1cefd0f5-6d38-4c9b-a07c-bdd2db004224\")\n                .build())\n            .disks(            \n                VirtualMachineV2DiskArgs.builder()\n                    .diskAddresses(VirtualMachineV2DiskDiskAddressArgs.builder()\n                        .busType(\"SCSI\")\n                        .index(0)\n                        .build())\n                    .backingInfos(VirtualMachineV2DiskBackingInfoArgs.builder()\n                        .vmDisks(VirtualMachineV2DiskBackingInfoVmDiskArgs.builder()\n                            .dataSources(VirtualMachineV2DiskBackingInfoVmDiskDataSourceArgs.builder()\n                                .references(VirtualMachineV2DiskBackingInfoVmDiskDataSourceReferenceArgs.builder()\n                                    .imageReferences(VirtualMachineV2DiskBackingInfoVmDiskDataSourceReferenceImageReferenceArgs.builder()\n                                        .imageExtId(\"59ec786c-4311-4225-affe-68b65c5ebf10\")\n                                        .build())\n                                    .build())\n                                .build())\n                            .diskSizeBytes(StdFunctions.pow(PowArgs.builder()\n                                .base(1024)\n                                .exponent(3)\n                                .build()).result().applyValue(___convert -> 20 * ___convert).applyValue(_n -> _n))\n                            .build())\n                        .build())\n                    .build(),\n                VirtualMachineV2DiskArgs.builder()\n                    .diskAddresses(VirtualMachineV2DiskDiskAddressArgs.builder()\n                        .busType(\"SCSI\")\n                        .index(1)\n                        .build())\n                    .backingInfos(VirtualMachineV2DiskBackingInfoArgs.builder()\n                        .vmDisks(VirtualMachineV2DiskBackingInfoVmDiskArgs.builder()\n                            .diskSizeBytes(StdFunctions.pow(PowArgs.builder()\n                                .base(1024)\n                                .exponent(3)\n                                .build()).result().applyValue(___convert -> 10 * ___convert).applyValue(_n -> _n))\n                            .storageContainers(VirtualMachineV2DiskBackingInfoVmDiskStorageContainerArgs.builder()\n                                .extId(\"5d9b5941-fec3-4996-9d31-f31bed1c7735\")\n                                .build())\n                            .build())\n                        .build())\n                    .build(),\n                VirtualMachineV2DiskArgs.builder()\n                    .diskAddresses(VirtualMachineV2DiskDiskAddressArgs.builder()\n                        .busType(\"SCSI\")\n                        .index(2)\n                        .build())\n                    .backingInfos(VirtualMachineV2DiskBackingInfoArgs.builder()\n                        .vmDisks(VirtualMachineV2DiskBackingInfoVmDiskArgs.builder()\n                            .diskSizeBytes(StdFunctions.pow(PowArgs.builder()\n                                .base(1024)\n                                .exponent(3)\n                                .build()).result().applyValue(___convert -> 15 * ___convert).applyValue(_n -> _n))\n                            .storageContainers(VirtualMachineV2DiskBackingInfoVmDiskStorageContainerArgs.builder()\n                                .extId(\"5d9b5941-fec3-4996-9d31-f31bed1c7735\")\n                                .build())\n                            .build())\n                        .build())\n                    .build(),\n                VirtualMachineV2DiskArgs.builder()\n                    .diskAddresses(VirtualMachineV2DiskDiskAddressArgs.builder()\n                        .busType(\"SCSI\")\n                        .index(3)\n                        .build())\n                    .backingInfos(VirtualMachineV2DiskBackingInfoArgs.builder()\n                        .vmDisks(VirtualMachineV2DiskBackingInfoVmDiskArgs.builder()\n                            .diskSizeBytes(StdFunctions.pow(PowArgs.builder()\n                                .base(1024)\n                                .exponent(3)\n                                .build()).result().applyValue(___convert -> 20 * ___convert).applyValue(_n -> _n))\n                            .storageContainers(VirtualMachineV2DiskBackingInfoVmDiskStorageContainerArgs.builder()\n                                .extId(\"5d9b5941-fec3-4996-9d31-f31bed1c7735\")\n                                .build())\n                            .build())\n                        .build())\n                    .build())\n            .nics(VirtualMachineV2NicArgs.builder()\n                .networkInfos(VirtualMachineV2NicNetworkInfoArgs.builder()\n                    .nicType(\"NORMAL_NIC\")\n                    .subnets(VirtualMachineV2NicNetworkInfoSubnetArgs.builder()\n                        .extId(\"7f66e20f-67f4-473f-96bb-c4fcfd487f16\")\n                        .build())\n                    .vlanMode(\"ACCESS\")\n                    .build())\n                .build())\n            .bootConfigs(VirtualMachineV2BootConfigArgs.builder()\n                .legacyBoots(VirtualMachineV2BootConfigLegacyBootArgs.builder()\n                    .bootOrders(                    \n                        \"CDROM\",\n                        \"DISK\",\n                        \"NETWORK\")\n                    .build())\n                .build())\n            .powerState(\"ON\")\n            .build());\n\n    }\n}\n```\n<!--End PulumiCodeChooser -->\n",
      "properties": {
        "apcConfigs": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FVirtualMachineV2ApcConfig:VirtualMachineV2ApcConfig"
          },
          "description": "Advanced Processor Compatibility configuration for the VM. Enabling this retains the CPU model for the VM across power cycles and migrations.\n"
        },
        "availabilityZones": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FVirtualMachineV2AvailabilityZone:VirtualMachineV2AvailabilityZone"
          }
        },
        "biosUuid": {
          "type": "string",
          "description": "BIOS UUID of the VM. It should be of type UUID.\n"
        },
        "bootConfigs": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FVirtualMachineV2BootConfig:VirtualMachineV2BootConfig"
          },
          "description": "Indicates the order of device types in which the VM should try to boot from. If the boot device order is not provided the system will decide an appropriate boot device order.\n"
        },
        "categories": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FVirtualMachineV2Category:VirtualMachineV2Category"
          },
          "description": "Categories for the VM.\n"
        },
        "cdRoms": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FVirtualMachineV2CdRom:VirtualMachineV2CdRom"
          },
          "description": "CD-ROMs attached to the VM.\n"
        },
        "clusters": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FVirtualMachineV2Cluster:VirtualMachineV2Cluster"
          },
          "description": "Reference to a cluster.\n"
        },
        "createTime": {
          "type": "string",
          "description": "VM creation time\n"
        },
        "description": {
          "type": "string",
          "description": "VM description\n"
        },
        "disks": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FVirtualMachineV2Disk:VirtualMachineV2Disk"
          },
          "description": "Disks attached to the VM.\n"
        },
        "enabledCpuFeatures": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "The list of additional CPU features to be enabled. HardwareVirtualization: Indicates whether hardware assisted virtualization should be enabled for the Guest OS or not. Once enabled, the Guest OS can deploy a nested hypervisor. Valid values are \"HARDWARE_VIRTUALIZATION\".\n"
        },
        "extId": {
          "type": "string",
          "description": "A globally unique identifier of an instance that is suitable for external consumption.\n"
        },
        "generationUuid": {
          "type": "string",
          "description": "Generation UUID of the VM. It should be of type UUID.\n"
        },
        "gpuses": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FVirtualMachineV2Gpus:VirtualMachineV2Gpus"
          },
          "description": "GPUs attached to the VM.\n"
        },
        "guestCustomizations": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FVirtualMachineV2GuestCustomization:VirtualMachineV2GuestCustomization"
          },
          "description": "Stage a Sysprep or cloud-init configuration file to be used by the guest for the next boot. Note that the Sysprep command must be used to generalize the Windows VMs before triggering this API call.\n"
        },
        "guestTools": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FVirtualMachineV2GuestTool:VirtualMachineV2GuestTool"
          },
          "description": "The details about Nutanix Guest Tools for a VM.\n"
        },
        "hardwareClockTimezone": {
          "type": "string",
          "description": "VM hardware clock timezone in IANA TZDB format (America/Los_Angeles).\n"
        },
        "hosts": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FVirtualMachineV2Host:VirtualMachineV2Host"
          },
          "description": "Reference to the host, the VM is running on.\n"
        },
        "isAgentVm": {
          "type": "boolean",
          "description": "Indicates whether the VM is an agent VM or not. When their host enters maintenance mode, once the normal VMs are evacuated, the agent VMs are powered off. When the host is restored, agent VMs are powered on before the normal VMs are restored. In other words, agent VMs cannot be HA-protected or live migrated.\n"
        },
        "isBrandingEnabled": {
          "type": "boolean",
          "description": "Indicates whether to remove AHV branding from VM firmware tables or not.\n"
        },
        "isCpuHotplugEnabled": {
          "type": "boolean",
          "description": "Indicates whether the VM CPU hotplug is enabled.\n"
        },
        "isCpuPassthroughEnabled": {
          "type": "boolean",
          "description": "Indicates whether to passthrough the host CPU features to the guest or not. Enabling this will make VM incapable of live migration.\n"
        },
        "isGpuConsoleEnabled": {
          "type": "boolean",
          "description": "Indicates whether the vGPU console is enabled or not.\n"
        },
        "isMemoryOvercommitEnabled": {
          "type": "boolean",
          "description": "Indicates whether the memory overcommit feature should be enabled for the VM or not. If enabled, parts of the VM memory may reside outside of the hypervisor physical memory. Once enabled, it should be expected that the VM may suffer performance degradation.\n"
        },
        "isScsiControllerEnabled": {
          "type": "boolean",
          "description": "Indicates whether the VM SCSI controller is enabled.\n"
        },
        "isVcpuHardPinningEnabled": {
          "type": "boolean",
          "description": "Indicates whether the vCPUs should be hard pinned to specific pCPUs or not.\n"
        },
        "isVgaConsoleEnabled": {
          "type": "boolean",
          "description": "Indicates whether the VGA console should be disabled or not.\n"
        },
        "machineType": {
          "type": "string",
          "description": "Machine type for the VM. Machine type Q35 is required for secure boot and does not support IDE disks. Valid values are \"PSERIES\", \"Q35\", \"PC\" .\n"
        },
        "memorySizeBytes": {
          "type": "integer",
          "description": "Memory size in bytes.\n"
        },
        "name": {
          "type": "string",
          "description": "VM name.\n"
        },
        "nics": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FVirtualMachineV2Nic:VirtualMachineV2Nic"
          },
          "description": "NICs attached to the VM.\n"
        },
        "numCoresPerSocket": {
          "type": "integer",
          "description": "Number of cores per socket. Value should be at least 1.\n"
        },
        "numNumaNodes": {
          "type": "integer",
          "description": "Number of NUMA nodes. 0 means NUMA is disabled.\n"
        },
        "numSockets": {
          "type": "integer",
          "description": "Number of vCPU sockets. Value should be at least 1.\n"
        },
        "numThreadsPerCore": {
          "type": "integer",
          "description": "Number of threads per core. Value should be at least 1.\n"
        },
        "ownershipInfos": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FVirtualMachineV2OwnershipInfo:VirtualMachineV2OwnershipInfo"
          },
          "description": "Ownership information for the VM.\n"
        },
        "powerState": {
          "type": "string"
        },
        "protectionPolicyStates": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FVirtualMachineV2ProtectionPolicyState:VirtualMachineV2ProtectionPolicyState"
          },
          "description": "Status of protection policy applied to this VM.\n"
        },
        "protectionType": {
          "type": "string",
          "description": "The type of protection applied on a VM. Valid values \"PD_PROTECTED\", \"UNPROTECTED\", \"RULE_PROTECTED\".\n"
        },
        "serialPorts": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FVirtualMachineV2SerialPort:VirtualMachineV2SerialPort"
          },
          "description": "Serial ports configured on the VM.\n"
        },
        "sources": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FVirtualMachineV2Source:VirtualMachineV2Source"
          },
          "description": "Reference to an entity that the VM should be cloned or created from. Valid values are \"VM\", \"VM_RECOVERY_POINT\".\n"
        },
        "storageConfigs": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FVirtualMachineV2StorageConfig:VirtualMachineV2StorageConfig"
          },
          "description": "Storage configuration for VM.\n"
        },
        "updateTime": {
          "type": "string",
          "description": "VM last updated time.\n"
        },
        "vtpmConfigs": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FVirtualMachineV2VtpmConfig:VirtualMachineV2VtpmConfig"
          },
          "description": "Indicates how the vTPM for the VM should be configured.\n"
        }
      },
      "type": "object",
      "required": [
        "apcConfigs",
        "availabilityZones",
        "biosUuid",
        "bootConfigs",
        "categories",
        "clusters",
        "createTime",
        "description",
        "enabledCpuFeatures",
        "extId",
        "generationUuid",
        "guestCustomizations",
        "hardwareClockTimezone",
        "hosts",
        "isAgentVm",
        "isBrandingEnabled",
        "isCpuHotplugEnabled",
        "isCpuPassthroughEnabled",
        "isGpuConsoleEnabled",
        "isMemoryOvercommitEnabled",
        "isScsiControllerEnabled",
        "isVcpuHardPinningEnabled",
        "isVgaConsoleEnabled",
        "machineType",
        "memorySizeBytes",
        "name",
        "numCoresPerSocket",
        "numNumaNodes",
        "numSockets",
        "numThreadsPerCore",
        "ownershipInfos",
        "protectionPolicyStates",
        "protectionType",
        "serialPorts",
        "sources",
        "storageConfigs",
        "updateTime",
        "vtpmConfigs"
      ],
      "inputProperties": {
        "apcConfigs": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FVirtualMachineV2ApcConfig:VirtualMachineV2ApcConfig"
          },
          "description": "Advanced Processor Compatibility configuration for the VM. Enabling this retains the CPU model for the VM across power cycles and migrations.\n"
        },
        "availabilityZones": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FVirtualMachineV2AvailabilityZone:VirtualMachineV2AvailabilityZone"
          }
        },
        "biosUuid": {
          "type": "string",
          "description": "BIOS UUID of the VM. It should be of type UUID.\n"
        },
        "bootConfigs": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FVirtualMachineV2BootConfig:VirtualMachineV2BootConfig"
          },
          "description": "Indicates the order of device types in which the VM should try to boot from. If the boot device order is not provided the system will decide an appropriate boot device order.\n"
        },
        "categories": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FVirtualMachineV2Category:VirtualMachineV2Category"
          },
          "description": "Categories for the VM.\n"
        },
        "cdRoms": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FVirtualMachineV2CdRom:VirtualMachineV2CdRom"
          },
          "description": "CD-ROMs attached to the VM.\n"
        },
        "clusters": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FVirtualMachineV2Cluster:VirtualMachineV2Cluster"
          },
          "description": "Reference to a cluster.\n"
        },
        "description": {
          "type": "string",
          "description": "VM description\n"
        },
        "disks": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FVirtualMachineV2Disk:VirtualMachineV2Disk"
          },
          "description": "Disks attached to the VM.\n"
        },
        "enabledCpuFeatures": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "The list of additional CPU features to be enabled. HardwareVirtualization: Indicates whether hardware assisted virtualization should be enabled for the Guest OS or not. Once enabled, the Guest OS can deploy a nested hypervisor. Valid values are \"HARDWARE_VIRTUALIZATION\".\n"
        },
        "generationUuid": {
          "type": "string",
          "description": "Generation UUID of the VM. It should be of type UUID.\n"
        },
        "gpuses": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FVirtualMachineV2Gpus:VirtualMachineV2Gpus"
          },
          "description": "GPUs attached to the VM.\n"
        },
        "guestCustomizations": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FVirtualMachineV2GuestCustomization:VirtualMachineV2GuestCustomization"
          },
          "description": "Stage a Sysprep or cloud-init configuration file to be used by the guest for the next boot. Note that the Sysprep command must be used to generalize the Windows VMs before triggering this API call.\n"
        },
        "guestTools": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FVirtualMachineV2GuestTool:VirtualMachineV2GuestTool"
          },
          "description": "The details about Nutanix Guest Tools for a VM.\n"
        },
        "hardwareClockTimezone": {
          "type": "string",
          "description": "VM hardware clock timezone in IANA TZDB format (America/Los_Angeles).\n"
        },
        "hosts": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FVirtualMachineV2Host:VirtualMachineV2Host"
          },
          "description": "Reference to the host, the VM is running on.\n"
        },
        "isAgentVm": {
          "type": "boolean",
          "description": "Indicates whether the VM is an agent VM or not. When their host enters maintenance mode, once the normal VMs are evacuated, the agent VMs are powered off. When the host is restored, agent VMs are powered on before the normal VMs are restored. In other words, agent VMs cannot be HA-protected or live migrated.\n"
        },
        "isBrandingEnabled": {
          "type": "boolean",
          "description": "Indicates whether to remove AHV branding from VM firmware tables or not.\n"
        },
        "isCpuHotplugEnabled": {
          "type": "boolean",
          "description": "Indicates whether the VM CPU hotplug is enabled.\n"
        },
        "isCpuPassthroughEnabled": {
          "type": "boolean",
          "description": "Indicates whether to passthrough the host CPU features to the guest or not. Enabling this will make VM incapable of live migration.\n"
        },
        "isGpuConsoleEnabled": {
          "type": "boolean",
          "description": "Indicates whether the vGPU console is enabled or not.\n"
        },
        "isMemoryOvercommitEnabled": {
          "type": "boolean",
          "description": "Indicates whether the memory overcommit feature should be enabled for the VM or not. If enabled, parts of the VM memory may reside outside of the hypervisor physical memory. Once enabled, it should be expected that the VM may suffer performance degradation.\n"
        },
        "isScsiControllerEnabled": {
          "type": "boolean",
          "description": "Indicates whether the VM SCSI controller is enabled.\n"
        },
        "isVcpuHardPinningEnabled": {
          "type": "boolean",
          "description": "Indicates whether the vCPUs should be hard pinned to specific pCPUs or not.\n"
        },
        "isVgaConsoleEnabled": {
          "type": "boolean",
          "description": "Indicates whether the VGA console should be disabled or not.\n"
        },
        "machineType": {
          "type": "string",
          "description": "Machine type for the VM. Machine type Q35 is required for secure boot and does not support IDE disks. Valid values are \"PSERIES\", \"Q35\", \"PC\" .\n"
        },
        "memorySizeBytes": {
          "type": "integer",
          "description": "Memory size in bytes.\n"
        },
        "name": {
          "type": "string",
          "description": "VM name.\n"
        },
        "nics": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FVirtualMachineV2Nic:VirtualMachineV2Nic"
          },
          "description": "NICs attached to the VM.\n"
        },
        "numCoresPerSocket": {
          "type": "integer",
          "description": "Number of cores per socket. Value should be at least 1.\n"
        },
        "numNumaNodes": {
          "type": "integer",
          "description": "Number of NUMA nodes. 0 means NUMA is disabled.\n"
        },
        "numSockets": {
          "type": "integer",
          "description": "Number of vCPU sockets. Value should be at least 1.\n"
        },
        "numThreadsPerCore": {
          "type": "integer",
          "description": "Number of threads per core. Value should be at least 1.\n"
        },
        "ownershipInfos": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FVirtualMachineV2OwnershipInfo:VirtualMachineV2OwnershipInfo"
          },
          "description": "Ownership information for the VM.\n"
        },
        "powerState": {
          "type": "string"
        },
        "protectionPolicyStates": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FVirtualMachineV2ProtectionPolicyState:VirtualMachineV2ProtectionPolicyState"
          },
          "description": "Status of protection policy applied to this VM.\n"
        },
        "protectionType": {
          "type": "string",
          "description": "The type of protection applied on a VM. Valid values \"PD_PROTECTED\", \"UNPROTECTED\", \"RULE_PROTECTED\".\n"
        },
        "serialPorts": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FVirtualMachineV2SerialPort:VirtualMachineV2SerialPort"
          },
          "description": "Serial ports configured on the VM.\n"
        },
        "sources": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FVirtualMachineV2Source:VirtualMachineV2Source"
          },
          "description": "Reference to an entity that the VM should be cloned or created from. Valid values are \"VM\", \"VM_RECOVERY_POINT\".\n"
        },
        "storageConfigs": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FVirtualMachineV2StorageConfig:VirtualMachineV2StorageConfig"
          },
          "description": "Storage configuration for VM.\n"
        },
        "vtpmConfigs": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FVirtualMachineV2VtpmConfig:VirtualMachineV2VtpmConfig"
          },
          "description": "Indicates how the vTPM for the VM should be configured.\n"
        }
      },
      "stateInputs": {
        "description": "Input properties used for looking up and filtering VirtualMachineV2 resources.\n",
        "properties": {
          "apcConfigs": {
            "type": "array",
            "items": {
              "$ref": "#/types/nutanix:index%2FVirtualMachineV2ApcConfig:VirtualMachineV2ApcConfig"
            },
            "description": "Advanced Processor Compatibility configuration for the VM. Enabling this retains the CPU model for the VM across power cycles and migrations.\n"
          },
          "availabilityZones": {
            "type": "array",
            "items": {
              "$ref": "#/types/nutanix:index%2FVirtualMachineV2AvailabilityZone:VirtualMachineV2AvailabilityZone"
            }
          },
          "biosUuid": {
            "type": "string",
            "description": "BIOS UUID of the VM. It should be of type UUID.\n"
          },
          "bootConfigs": {
            "type": "array",
            "items": {
              "$ref": "#/types/nutanix:index%2FVirtualMachineV2BootConfig:VirtualMachineV2BootConfig"
            },
            "description": "Indicates the order of device types in which the VM should try to boot from. If the boot device order is not provided the system will decide an appropriate boot device order.\n"
          },
          "categories": {
            "type": "array",
            "items": {
              "$ref": "#/types/nutanix:index%2FVirtualMachineV2Category:VirtualMachineV2Category"
            },
            "description": "Categories for the VM.\n"
          },
          "cdRoms": {
            "type": "array",
            "items": {
              "$ref": "#/types/nutanix:index%2FVirtualMachineV2CdRom:VirtualMachineV2CdRom"
            },
            "description": "CD-ROMs attached to the VM.\n"
          },
          "clusters": {
            "type": "array",
            "items": {
              "$ref": "#/types/nutanix:index%2FVirtualMachineV2Cluster:VirtualMachineV2Cluster"
            },
            "description": "Reference to a cluster.\n"
          },
          "createTime": {
            "type": "string",
            "description": "VM creation time\n"
          },
          "description": {
            "type": "string",
            "description": "VM description\n"
          },
          "disks": {
            "type": "array",
            "items": {
              "$ref": "#/types/nutanix:index%2FVirtualMachineV2Disk:VirtualMachineV2Disk"
            },
            "description": "Disks attached to the VM.\n"
          },
          "enabledCpuFeatures": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "description": "The list of additional CPU features to be enabled. HardwareVirtualization: Indicates whether hardware assisted virtualization should be enabled for the Guest OS or not. Once enabled, the Guest OS can deploy a nested hypervisor. Valid values are \"HARDWARE_VIRTUALIZATION\".\n"
          },
          "extId": {
            "type": "string",
            "description": "A globally unique identifier of an instance that is suitable for external consumption.\n"
          },
          "generationUuid": {
            "type": "string",
            "description": "Generation UUID of the VM. It should be of type UUID.\n"
          },
          "gpuses": {
            "type": "array",
            "items": {
              "$ref": "#/types/nutanix:index%2FVirtualMachineV2Gpus:VirtualMachineV2Gpus"
            },
            "description": "GPUs attached to the VM.\n"
          },
          "guestCustomizations": {
            "type": "array",
            "items": {
              "$ref": "#/types/nutanix:index%2FVirtualMachineV2GuestCustomization:VirtualMachineV2GuestCustomization"
            },
            "description": "Stage a Sysprep or cloud-init configuration file to be used by the guest for the next boot. Note that the Sysprep command must be used to generalize the Windows VMs before triggering this API call.\n"
          },
          "guestTools": {
            "type": "array",
            "items": {
              "$ref": "#/types/nutanix:index%2FVirtualMachineV2GuestTool:VirtualMachineV2GuestTool"
            },
            "description": "The details about Nutanix Guest Tools for a VM.\n"
          },
          "hardwareClockTimezone": {
            "type": "string",
            "description": "VM hardware clock timezone in IANA TZDB format (America/Los_Angeles).\n"
          },
          "hosts": {
            "type": "array",
            "items": {
              "$ref": "#/types/nutanix:index%2FVirtualMachineV2Host:VirtualMachineV2Host"
            },
            "description": "Reference to the host, the VM is running on.\n"
          },
          "isAgentVm": {
            "type": "boolean",
            "description": "Indicates whether the VM is an agent VM or not. When their host enters maintenance mode, once the normal VMs are evacuated, the agent VMs are powered off. When the host is restored, agent VMs are powered on before the normal VMs are restored. In other words, agent VMs cannot be HA-protected or live migrated.\n"
          },
          "isBrandingEnabled": {
            "type": "boolean",
            "description": "Indicates whether to remove AHV branding from VM firmware tables or not.\n"
          },
          "isCpuHotplugEnabled": {
            "type": "boolean",
            "description": "Indicates whether the VM CPU hotplug is enabled.\n"
          },
          "isCpuPassthroughEnabled": {
            "type": "boolean",
            "description": "Indicates whether to passthrough the host CPU features to the guest or not. Enabling this will make VM incapable of live migration.\n"
          },
          "isGpuConsoleEnabled": {
            "type": "boolean",
            "description": "Indicates whether the vGPU console is enabled or not.\n"
          },
          "isMemoryOvercommitEnabled": {
            "type": "boolean",
            "description": "Indicates whether the memory overcommit feature should be enabled for the VM or not. If enabled, parts of the VM memory may reside outside of the hypervisor physical memory. Once enabled, it should be expected that the VM may suffer performance degradation.\n"
          },
          "isScsiControllerEnabled": {
            "type": "boolean",
            "description": "Indicates whether the VM SCSI controller is enabled.\n"
          },
          "isVcpuHardPinningEnabled": {
            "type": "boolean",
            "description": "Indicates whether the vCPUs should be hard pinned to specific pCPUs or not.\n"
          },
          "isVgaConsoleEnabled": {
            "type": "boolean",
            "description": "Indicates whether the VGA console should be disabled or not.\n"
          },
          "machineType": {
            "type": "string",
            "description": "Machine type for the VM. Machine type Q35 is required for secure boot and does not support IDE disks. Valid values are \"PSERIES\", \"Q35\", \"PC\" .\n"
          },
          "memorySizeBytes": {
            "type": "integer",
            "description": "Memory size in bytes.\n"
          },
          "name": {
            "type": "string",
            "description": "VM name.\n"
          },
          "nics": {
            "type": "array",
            "items": {
              "$ref": "#/types/nutanix:index%2FVirtualMachineV2Nic:VirtualMachineV2Nic"
            },
            "description": "NICs attached to the VM.\n"
          },
          "numCoresPerSocket": {
            "type": "integer",
            "description": "Number of cores per socket. Value should be at least 1.\n"
          },
          "numNumaNodes": {
            "type": "integer",
            "description": "Number of NUMA nodes. 0 means NUMA is disabled.\n"
          },
          "numSockets": {
            "type": "integer",
            "description": "Number of vCPU sockets. Value should be at least 1.\n"
          },
          "numThreadsPerCore": {
            "type": "integer",
            "description": "Number of threads per core. Value should be at least 1.\n"
          },
          "ownershipInfos": {
            "type": "array",
            "items": {
              "$ref": "#/types/nutanix:index%2FVirtualMachineV2OwnershipInfo:VirtualMachineV2OwnershipInfo"
            },
            "description": "Ownership information for the VM.\n"
          },
          "powerState": {
            "type": "string"
          },
          "protectionPolicyStates": {
            "type": "array",
            "items": {
              "$ref": "#/types/nutanix:index%2FVirtualMachineV2ProtectionPolicyState:VirtualMachineV2ProtectionPolicyState"
            },
            "description": "Status of protection policy applied to this VM.\n"
          },
          "protectionType": {
            "type": "string",
            "description": "The type of protection applied on a VM. Valid values \"PD_PROTECTED\", \"UNPROTECTED\", \"RULE_PROTECTED\".\n"
          },
          "serialPorts": {
            "type": "array",
            "items": {
              "$ref": "#/types/nutanix:index%2FVirtualMachineV2SerialPort:VirtualMachineV2SerialPort"
            },
            "description": "Serial ports configured on the VM.\n"
          },
          "sources": {
            "type": "array",
            "items": {
              "$ref": "#/types/nutanix:index%2FVirtualMachineV2Source:VirtualMachineV2Source"
            },
            "description": "Reference to an entity that the VM should be cloned or created from. Valid values are \"VM\", \"VM_RECOVERY_POINT\".\n"
          },
          "storageConfigs": {
            "type": "array",
            "items": {
              "$ref": "#/types/nutanix:index%2FVirtualMachineV2StorageConfig:VirtualMachineV2StorageConfig"
            },
            "description": "Storage configuration for VM.\n"
          },
          "updateTime": {
            "type": "string",
            "description": "VM last updated time.\n"
          },
          "vtpmConfigs": {
            "type": "array",
            "items": {
              "$ref": "#/types/nutanix:index%2FVirtualMachineV2VtpmConfig:VirtualMachineV2VtpmConfig"
            },
            "description": "Indicates how the vTPM for the VM should be configured.\n"
          }
        },
        "type": "object"
      }
    },
    "nutanix:index/vmCdromInsertEjectV2:VmCdromInsertEjectV2": {
      "properties": {
        "backingInfos": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FVmCdromInsertEjectV2BackingInfo:VmCdromInsertEjectV2BackingInfo"
          }
        },
        "extId": {
          "type": "string"
        },
        "vmExtId": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "extId",
        "vmExtId"
      ],
      "inputProperties": {
        "backingInfos": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FVmCdromInsertEjectV2BackingInfo:VmCdromInsertEjectV2BackingInfo"
          }
        },
        "extId": {
          "type": "string"
        },
        "vmExtId": {
          "type": "string"
        }
      },
      "requiredInputs": [
        "extId",
        "vmExtId"
      ],
      "stateInputs": {
        "description": "Input properties used for looking up and filtering VmCdromInsertEjectV2 resources.\n",
        "properties": {
          "backingInfos": {
            "type": "array",
            "items": {
              "$ref": "#/types/nutanix:index%2FVmCdromInsertEjectV2BackingInfo:VmCdromInsertEjectV2BackingInfo"
            }
          },
          "extId": {
            "type": "string"
          },
          "vmExtId": {
            "type": "string"
          }
        },
        "type": "object"
      }
    },
    "nutanix:index/vmCloneV2:VmCloneV2": {
      "properties": {
        "apcConfigs": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FVmCloneV2ApcConfig:VmCloneV2ApcConfig"
          }
        },
        "biosUuid": {
          "type": "string"
        },
        "bootConfigs": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FVmCloneV2BootConfig:VmCloneV2BootConfig"
          }
        },
        "categories": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FVmCloneV2Category:VmCloneV2Category"
          }
        },
        "cdRoms": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FVmCloneV2CdRom:VmCloneV2CdRom"
          }
        },
        "clusters": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FVmCloneV2Cluster:VmCloneV2Cluster"
          }
        },
        "createTime": {
          "type": "string"
        },
        "description": {
          "type": "string"
        },
        "disks": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FVmCloneV2Disk:VmCloneV2Disk"
          }
        },
        "enabledCpuFeatures": {
          "type": "array",
          "items": {
            "type": "string"
          }
        },
        "extId": {
          "type": "string"
        },
        "generationUuid": {
          "type": "string"
        },
        "gpuses": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FVmCloneV2Gpus:VmCloneV2Gpus"
          }
        },
        "guestCustomizations": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FVmCloneV2GuestCustomization:VmCloneV2GuestCustomization"
          }
        },
        "guestTools": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FVmCloneV2GuestTool:VmCloneV2GuestTool"
          }
        },
        "hardwareClockTimezone": {
          "type": "string"
        },
        "hosts": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FVmCloneV2Host:VmCloneV2Host"
          }
        },
        "isAgentVm": {
          "type": "boolean"
        },
        "isBrandingEnabled": {
          "type": "boolean"
        },
        "isCpuHotplugEnabled": {
          "type": "boolean"
        },
        "isCpuPassthroughEnabled": {
          "type": "boolean"
        },
        "isGpuConsoleEnabled": {
          "type": "boolean"
        },
        "isMemoryOvercommitEnabled": {
          "type": "boolean"
        },
        "isScsiControllerEnabled": {
          "type": "boolean"
        },
        "isVcpuHardPinningEnabled": {
          "type": "boolean"
        },
        "isVgaConsoleEnabled": {
          "type": "boolean"
        },
        "links": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FVmCloneV2Link:VmCloneV2Link"
          }
        },
        "machineType": {
          "type": "string"
        },
        "memorySizeBytes": {
          "type": "integer"
        },
        "name": {
          "type": "string"
        },
        "nics": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FVmCloneV2Nic:VmCloneV2Nic"
          }
        },
        "numCoresPerSocket": {
          "type": "integer"
        },
        "numNumaNodes": {
          "type": "integer"
        },
        "numSockets": {
          "type": "integer"
        },
        "numThreadsPerCore": {
          "type": "integer"
        },
        "ownershipInfos": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FVmCloneV2OwnershipInfo:VmCloneV2OwnershipInfo"
          }
        },
        "powerState": {
          "type": "string"
        },
        "protectionPolicyStates": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FVmCloneV2ProtectionPolicyState:VmCloneV2ProtectionPolicyState"
          }
        },
        "protectionType": {
          "type": "string"
        },
        "serialPorts": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FVmCloneV2SerialPort:VmCloneV2SerialPort"
          }
        },
        "sources": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FVmCloneV2Source:VmCloneV2Source"
          }
        },
        "storageConfigs": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FVmCloneV2StorageConfig:VmCloneV2StorageConfig"
          }
        },
        "tenantId": {
          "type": "string"
        },
        "updateTime": {
          "type": "string"
        },
        "vmExtId": {
          "type": "string"
        },
        "vtpmConfigs": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FVmCloneV2VtpmConfig:VmCloneV2VtpmConfig"
          }
        }
      },
      "type": "object",
      "required": [
        "apcConfigs",
        "biosUuid",
        "bootConfigs",
        "categories",
        "cdRoms",
        "clusters",
        "createTime",
        "description",
        "disks",
        "enabledCpuFeatures",
        "extId",
        "generationUuid",
        "gpuses",
        "guestCustomizations",
        "guestTools",
        "hardwareClockTimezone",
        "hosts",
        "isAgentVm",
        "isBrandingEnabled",
        "isCpuHotplugEnabled",
        "isCpuPassthroughEnabled",
        "isGpuConsoleEnabled",
        "isMemoryOvercommitEnabled",
        "isScsiControllerEnabled",
        "isVcpuHardPinningEnabled",
        "isVgaConsoleEnabled",
        "links",
        "machineType",
        "memorySizeBytes",
        "name",
        "nics",
        "numCoresPerSocket",
        "numNumaNodes",
        "numSockets",
        "numThreadsPerCore",
        "ownershipInfos",
        "powerState",
        "protectionPolicyStates",
        "protectionType",
        "serialPorts",
        "sources",
        "storageConfigs",
        "tenantId",
        "updateTime",
        "vmExtId",
        "vtpmConfigs"
      ],
      "inputProperties": {
        "bootConfigs": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FVmCloneV2BootConfig:VmCloneV2BootConfig"
          }
        },
        "guestCustomizations": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FVmCloneV2GuestCustomization:VmCloneV2GuestCustomization"
          }
        },
        "memorySizeBytes": {
          "type": "integer"
        },
        "name": {
          "type": "string"
        },
        "nics": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FVmCloneV2Nic:VmCloneV2Nic"
          }
        },
        "numCoresPerSocket": {
          "type": "integer"
        },
        "numSockets": {
          "type": "integer"
        },
        "numThreadsPerCore": {
          "type": "integer"
        },
        "vmExtId": {
          "type": "string"
        }
      },
      "requiredInputs": [
        "vmExtId"
      ],
      "stateInputs": {
        "description": "Input properties used for looking up and filtering VmCloneV2 resources.\n",
        "properties": {
          "apcConfigs": {
            "type": "array",
            "items": {
              "$ref": "#/types/nutanix:index%2FVmCloneV2ApcConfig:VmCloneV2ApcConfig"
            }
          },
          "biosUuid": {
            "type": "string"
          },
          "bootConfigs": {
            "type": "array",
            "items": {
              "$ref": "#/types/nutanix:index%2FVmCloneV2BootConfig:VmCloneV2BootConfig"
            }
          },
          "categories": {
            "type": "array",
            "items": {
              "$ref": "#/types/nutanix:index%2FVmCloneV2Category:VmCloneV2Category"
            }
          },
          "cdRoms": {
            "type": "array",
            "items": {
              "$ref": "#/types/nutanix:index%2FVmCloneV2CdRom:VmCloneV2CdRom"
            }
          },
          "clusters": {
            "type": "array",
            "items": {
              "$ref": "#/types/nutanix:index%2FVmCloneV2Cluster:VmCloneV2Cluster"
            }
          },
          "createTime": {
            "type": "string"
          },
          "description": {
            "type": "string"
          },
          "disks": {
            "type": "array",
            "items": {
              "$ref": "#/types/nutanix:index%2FVmCloneV2Disk:VmCloneV2Disk"
            }
          },
          "enabledCpuFeatures": {
            "type": "array",
            "items": {
              "type": "string"
            }
          },
          "extId": {
            "type": "string"
          },
          "generationUuid": {
            "type": "string"
          },
          "gpuses": {
            "type": "array",
            "items": {
              "$ref": "#/types/nutanix:index%2FVmCloneV2Gpus:VmCloneV2Gpus"
            }
          },
          "guestCustomizations": {
            "type": "array",
            "items": {
              "$ref": "#/types/nutanix:index%2FVmCloneV2GuestCustomization:VmCloneV2GuestCustomization"
            }
          },
          "guestTools": {
            "type": "array",
            "items": {
              "$ref": "#/types/nutanix:index%2FVmCloneV2GuestTool:VmCloneV2GuestTool"
            }
          },
          "hardwareClockTimezone": {
            "type": "string"
          },
          "hosts": {
            "type": "array",
            "items": {
              "$ref": "#/types/nutanix:index%2FVmCloneV2Host:VmCloneV2Host"
            }
          },
          "isAgentVm": {
            "type": "boolean"
          },
          "isBrandingEnabled": {
            "type": "boolean"
          },
          "isCpuHotplugEnabled": {
            "type": "boolean"
          },
          "isCpuPassthroughEnabled": {
            "type": "boolean"
          },
          "isGpuConsoleEnabled": {
            "type": "boolean"
          },
          "isMemoryOvercommitEnabled": {
            "type": "boolean"
          },
          "isScsiControllerEnabled": {
            "type": "boolean"
          },
          "isVcpuHardPinningEnabled": {
            "type": "boolean"
          },
          "isVgaConsoleEnabled": {
            "type": "boolean"
          },
          "links": {
            "type": "array",
            "items": {
              "$ref": "#/types/nutanix:index%2FVmCloneV2Link:VmCloneV2Link"
            }
          },
          "machineType": {
            "type": "string"
          },
          "memorySizeBytes": {
            "type": "integer"
          },
          "name": {
            "type": "string"
          },
          "nics": {
            "type": "array",
            "items": {
              "$ref": "#/types/nutanix:index%2FVmCloneV2Nic:VmCloneV2Nic"
            }
          },
          "numCoresPerSocket": {
            "type": "integer"
          },
          "numNumaNodes": {
            "type": "integer"
          },
          "numSockets": {
            "type": "integer"
          },
          "numThreadsPerCore": {
            "type": "integer"
          },
          "ownershipInfos": {
            "type": "array",
            "items": {
              "$ref": "#/types/nutanix:index%2FVmCloneV2OwnershipInfo:VmCloneV2OwnershipInfo"
            }
          },
          "powerState": {
            "type": "string"
          },
          "protectionPolicyStates": {
            "type": "array",
            "items": {
              "$ref": "#/types/nutanix:index%2FVmCloneV2ProtectionPolicyState:VmCloneV2ProtectionPolicyState"
            }
          },
          "protectionType": {
            "type": "string"
          },
          "serialPorts": {
            "type": "array",
            "items": {
              "$ref": "#/types/nutanix:index%2FVmCloneV2SerialPort:VmCloneV2SerialPort"
            }
          },
          "sources": {
            "type": "array",
            "items": {
              "$ref": "#/types/nutanix:index%2FVmCloneV2Source:VmCloneV2Source"
            }
          },
          "storageConfigs": {
            "type": "array",
            "items": {
              "$ref": "#/types/nutanix:index%2FVmCloneV2StorageConfig:VmCloneV2StorageConfig"
            }
          },
          "tenantId": {
            "type": "string"
          },
          "updateTime": {
            "type": "string"
          },
          "vmExtId": {
            "type": "string"
          },
          "vtpmConfigs": {
            "type": "array",
            "items": {
              "$ref": "#/types/nutanix:index%2FVmCloneV2VtpmConfig:VmCloneV2VtpmConfig"
            }
          }
        },
        "type": "object"
      }
    },
    "nutanix:index/vmGcUpdateV2:VmGcUpdateV2": {
      "properties": {
        "configs": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FVmGcUpdateV2Config:VmGcUpdateV2Config"
          }
        },
        "extId": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "configs",
        "extId"
      ],
      "inputProperties": {
        "configs": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FVmGcUpdateV2Config:VmGcUpdateV2Config"
          }
        },
        "extId": {
          "type": "string"
        }
      },
      "requiredInputs": [
        "extId"
      ],
      "stateInputs": {
        "description": "Input properties used for looking up and filtering VmGcUpdateV2 resources.\n",
        "properties": {
          "configs": {
            "type": "array",
            "items": {
              "$ref": "#/types/nutanix:index%2FVmGcUpdateV2Config:VmGcUpdateV2Config"
            }
          },
          "extId": {
            "type": "string"
          }
        },
        "type": "object"
      }
    },
    "nutanix:index/vmNetworkDeviceAssignIpV2:VmNetworkDeviceAssignIpV2": {
      "properties": {
        "extId": {
          "type": "string"
        },
        "ipAddresses": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FVmNetworkDeviceAssignIpV2IpAddress:VmNetworkDeviceAssignIpV2IpAddress"
          }
        },
        "vmExtId": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "extId",
        "ipAddresses",
        "vmExtId"
      ],
      "inputProperties": {
        "extId": {
          "type": "string"
        },
        "ipAddresses": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FVmNetworkDeviceAssignIpV2IpAddress:VmNetworkDeviceAssignIpV2IpAddress"
          }
        },
        "vmExtId": {
          "type": "string"
        }
      },
      "requiredInputs": [
        "extId",
        "vmExtId"
      ],
      "stateInputs": {
        "description": "Input properties used for looking up and filtering VmNetworkDeviceAssignIpV2 resources.\n",
        "properties": {
          "extId": {
            "type": "string"
          },
          "ipAddresses": {
            "type": "array",
            "items": {
              "$ref": "#/types/nutanix:index%2FVmNetworkDeviceAssignIpV2IpAddress:VmNetworkDeviceAssignIpV2IpAddress"
            }
          },
          "vmExtId": {
            "type": "string"
          }
        },
        "type": "object"
      }
    },
    "nutanix:index/vmNetworkDeviceMigrateV2:VmNetworkDeviceMigrateV2": {
      "properties": {
        "extId": {
          "type": "string"
        },
        "ipAddresses": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FVmNetworkDeviceMigrateV2IpAddress:VmNetworkDeviceMigrateV2IpAddress"
          }
        },
        "migrateType": {
          "type": "string"
        },
        "subnets": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FVmNetworkDeviceMigrateV2Subnet:VmNetworkDeviceMigrateV2Subnet"
          }
        },
        "vmExtId": {
          "type": "string"
        }
      },
      "type": "object",
      "required": [
        "extId",
        "ipAddresses",
        "migrateType",
        "subnets",
        "vmExtId"
      ],
      "inputProperties": {
        "extId": {
          "type": "string"
        },
        "ipAddresses": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FVmNetworkDeviceMigrateV2IpAddress:VmNetworkDeviceMigrateV2IpAddress"
          }
        },
        "migrateType": {
          "type": "string"
        },
        "subnets": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FVmNetworkDeviceMigrateV2Subnet:VmNetworkDeviceMigrateV2Subnet"
          }
        },
        "vmExtId": {
          "type": "string"
        }
      },
      "requiredInputs": [
        "extId",
        "migrateType",
        "subnets",
        "vmExtId"
      ],
      "stateInputs": {
        "description": "Input properties used for looking up and filtering VmNetworkDeviceMigrateV2 resources.\n",
        "properties": {
          "extId": {
            "type": "string"
          },
          "ipAddresses": {
            "type": "array",
            "items": {
              "$ref": "#/types/nutanix:index%2FVmNetworkDeviceMigrateV2IpAddress:VmNetworkDeviceMigrateV2IpAddress"
            }
          },
          "migrateType": {
            "type": "string"
          },
          "subnets": {
            "type": "array",
            "items": {
              "$ref": "#/types/nutanix:index%2FVmNetworkDeviceMigrateV2Subnet:VmNetworkDeviceMigrateV2Subnet"
            }
          },
          "vmExtId": {
            "type": "string"
          }
        },
        "type": "object"
      }
    },
    "nutanix:index/vmRevertV2:VmRevertV2": {
      "description": "This operation Revert VM identified by {extId}. This does an in-place VM restore from a specified VM Recovery Point.\n\n## Example Usage\n\n<!--Start PulumiCodeChooser -->\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as nutanix from \"@pierskarsenbarg/nutanix\";\n\n// revert Vm\nconst example = new nutanix.VmRevertV2(\"example\", {\n    extId: \"8a938cc5-282b-48c4-81be-de22de145d07\",\n    vmRecoveryPointExtId: \"c2c249b0-98a0-43fa-9ff6-dcde578d3936\",\n});\n```\n```python\nimport pulumi\nimport pulumi_nutanix as nutanix\n\n# revert Vm\nexample = nutanix.VmRevertV2(\"example\",\n    ext_id=\"8a938cc5-282b-48c4-81be-de22de145d07\",\n    vm_recovery_point_ext_id=\"c2c249b0-98a0-43fa-9ff6-dcde578d3936\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Nutanix = PiersKarsenbarg.Nutanix;\n\nreturn await Deployment.RunAsync(() => \n{\n    // revert Vm\n    var example = new Nutanix.VmRevertV2(\"example\", new()\n    {\n        ExtId = \"8a938cc5-282b-48c4-81be-de22de145d07\",\n        VmRecoveryPointExtId = \"c2c249b0-98a0-43fa-9ff6-dcde578d3936\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pierskarsenbarg/pulumi-nutanix/sdk/go/nutanix\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t// revert Vm\n\t\t_, err := nutanix.NewVmRevertV2(ctx, \"example\", &nutanix.VmRevertV2Args{\n\t\t\tExtId:                pulumi.String(\"8a938cc5-282b-48c4-81be-de22de145d07\"),\n\t\t\tVmRecoveryPointExtId: pulumi.String(\"c2c249b0-98a0-43fa-9ff6-dcde578d3936\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.nutanix.VmRevertV2;\nimport com.pulumi.nutanix.VmRevertV2Args;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        // revert Vm\n        var example = new VmRevertV2(\"example\", VmRevertV2Args.builder()\n            .extId(\"8a938cc5-282b-48c4-81be-de22de145d07\")\n            .vmRecoveryPointExtId(\"c2c249b0-98a0-43fa-9ff6-dcde578d3936\")\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  # revert Vm\n  example:\n    type: nutanix:VmRevertV2\n    properties:\n      extId: 8a938cc5-282b-48c4-81be-de22de145d07\n      vmRecoveryPointExtId: c2c249b0-98a0-43fa-9ff6-dcde578d3936\n```\n<!--End PulumiCodeChooser -->\n",
      "properties": {
        "extId": {
          "type": "string",
          "description": "-(Required) The globally unique identifier of a VM. It should be of type UUID.\n"
        },
        "status": {
          "type": "string",
          "description": "- The status of the Revert operation.\n"
        },
        "vmRecoveryPointExtId": {
          "type": "string",
          "description": "-(Required) The external identifier of the VM Recovery Point.\n"
        }
      },
      "type": "object",
      "required": [
        "extId",
        "status",
        "vmRecoveryPointExtId"
      ],
      "inputProperties": {
        "extId": {
          "type": "string",
          "description": "-(Required) The globally unique identifier of a VM. It should be of type UUID.\n"
        },
        "vmRecoveryPointExtId": {
          "type": "string",
          "description": "-(Required) The external identifier of the VM Recovery Point.\n"
        }
      },
      "requiredInputs": [
        "extId",
        "vmRecoveryPointExtId"
      ],
      "stateInputs": {
        "description": "Input properties used for looking up and filtering VmRevertV2 resources.\n",
        "properties": {
          "extId": {
            "type": "string",
            "description": "-(Required) The globally unique identifier of a VM. It should be of type UUID.\n"
          },
          "status": {
            "type": "string",
            "description": "- The status of the Revert operation.\n"
          },
          "vmRecoveryPointExtId": {
            "type": "string",
            "description": "-(Required) The external identifier of the VM Recovery Point.\n"
          }
        },
        "type": "object"
      }
    },
    "nutanix:index/vmShutdownActionV2:VmShutdownActionV2": {
      "description": "Collaborative reboot or shutdown of a Virtual Machine through the ACPI support in the operating system. Also, Collaborative reboot or shutdown of a Virtual Machine, requesting Nutanix Guest Tools to trigger a reboot or shutdown from within the VM.\n\n",
      "properties": {
        "action": {
          "type": "string",
          "description": "It supports \"shutdown\", <span pulumi-lang-nodejs=\"\"guestShutdown\"\" pulumi-lang-dotnet=\"\"GuestShutdown\"\" pulumi-lang-go=\"\"guestShutdown\"\" pulumi-lang-python=\"\"guest_shutdown\"\" pulumi-lang-yaml=\"\"guestShutdown\"\" pulumi-lang-java=\"\"guestShutdown\"\">\"guest_shutdown\"</span>, \"reboot\", <span pulumi-lang-nodejs=\"\"guestReboot\"\" pulumi-lang-dotnet=\"\"GuestReboot\"\" pulumi-lang-go=\"\"guestReboot\"\" pulumi-lang-python=\"\"guest_reboot\"\" pulumi-lang-yaml=\"\"guestReboot\"\" pulumi-lang-java=\"\"guestReboot\"\">\"guest_reboot\"</span>.\n"
        },
        "extId": {
          "type": "string",
          "description": "The globally unique identifier of a VM. It should be of type UUID.\n"
        },
        "guestPowerStateTransitionConfigs": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FVmShutdownActionV2GuestPowerStateTransitionConfig:VmShutdownActionV2GuestPowerStateTransitionConfig"
          },
          "description": "Additional configuration for Nutanix Gust Tools power state transition. It should be only used with <span pulumi-lang-nodejs=\"`guestShutdown`\" pulumi-lang-dotnet=\"`GuestShutdown`\" pulumi-lang-go=\"`guestShutdown`\" pulumi-lang-python=\"`guest_shutdown`\" pulumi-lang-yaml=\"`guestShutdown`\" pulumi-lang-java=\"`guestShutdown`\">`guest_shutdown`</span> or <span pulumi-lang-nodejs=\"`guestReboot`\" pulumi-lang-dotnet=\"`GuestReboot`\" pulumi-lang-go=\"`guestReboot`\" pulumi-lang-python=\"`guest_reboot`\" pulumi-lang-yaml=\"`guestReboot`\" pulumi-lang-java=\"`guestReboot`\">`guest_reboot`</span>.\n"
        }
      },
      "type": "object",
      "required": [
        "action",
        "extId"
      ],
      "inputProperties": {
        "action": {
          "type": "string",
          "description": "It supports \"shutdown\", <span pulumi-lang-nodejs=\"\"guestShutdown\"\" pulumi-lang-dotnet=\"\"GuestShutdown\"\" pulumi-lang-go=\"\"guestShutdown\"\" pulumi-lang-python=\"\"guest_shutdown\"\" pulumi-lang-yaml=\"\"guestShutdown\"\" pulumi-lang-java=\"\"guestShutdown\"\">\"guest_shutdown\"</span>, \"reboot\", <span pulumi-lang-nodejs=\"\"guestReboot\"\" pulumi-lang-dotnet=\"\"GuestReboot\"\" pulumi-lang-go=\"\"guestReboot\"\" pulumi-lang-python=\"\"guest_reboot\"\" pulumi-lang-yaml=\"\"guestReboot\"\" pulumi-lang-java=\"\"guestReboot\"\">\"guest_reboot\"</span>.\n"
        },
        "extId": {
          "type": "string",
          "description": "The globally unique identifier of a VM. It should be of type UUID.\n"
        },
        "guestPowerStateTransitionConfigs": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FVmShutdownActionV2GuestPowerStateTransitionConfig:VmShutdownActionV2GuestPowerStateTransitionConfig"
          },
          "description": "Additional configuration for Nutanix Gust Tools power state transition. It should be only used with <span pulumi-lang-nodejs=\"`guestShutdown`\" pulumi-lang-dotnet=\"`GuestShutdown`\" pulumi-lang-go=\"`guestShutdown`\" pulumi-lang-python=\"`guest_shutdown`\" pulumi-lang-yaml=\"`guestShutdown`\" pulumi-lang-java=\"`guestShutdown`\">`guest_shutdown`</span> or <span pulumi-lang-nodejs=\"`guestReboot`\" pulumi-lang-dotnet=\"`GuestReboot`\" pulumi-lang-go=\"`guestReboot`\" pulumi-lang-python=\"`guest_reboot`\" pulumi-lang-yaml=\"`guestReboot`\" pulumi-lang-java=\"`guestReboot`\">`guest_reboot`</span>.\n"
        }
      },
      "requiredInputs": [
        "action",
        "extId"
      ],
      "stateInputs": {
        "description": "Input properties used for looking up and filtering VmShutdownActionV2 resources.\n",
        "properties": {
          "action": {
            "type": "string",
            "description": "It supports \"shutdown\", <span pulumi-lang-nodejs=\"\"guestShutdown\"\" pulumi-lang-dotnet=\"\"GuestShutdown\"\" pulumi-lang-go=\"\"guestShutdown\"\" pulumi-lang-python=\"\"guest_shutdown\"\" pulumi-lang-yaml=\"\"guestShutdown\"\" pulumi-lang-java=\"\"guestShutdown\"\">\"guest_shutdown\"</span>, \"reboot\", <span pulumi-lang-nodejs=\"\"guestReboot\"\" pulumi-lang-dotnet=\"\"GuestReboot\"\" pulumi-lang-go=\"\"guestReboot\"\" pulumi-lang-python=\"\"guest_reboot\"\" pulumi-lang-yaml=\"\"guestReboot\"\" pulumi-lang-java=\"\"guestReboot\"\">\"guest_reboot\"</span>.\n"
          },
          "extId": {
            "type": "string",
            "description": "The globally unique identifier of a VM. It should be of type UUID.\n"
          },
          "guestPowerStateTransitionConfigs": {
            "type": "array",
            "items": {
              "$ref": "#/types/nutanix:index%2FVmShutdownActionV2GuestPowerStateTransitionConfig:VmShutdownActionV2GuestPowerStateTransitionConfig"
            },
            "description": "Additional configuration for Nutanix Gust Tools power state transition. It should be only used with <span pulumi-lang-nodejs=\"`guestShutdown`\" pulumi-lang-dotnet=\"`GuestShutdown`\" pulumi-lang-go=\"`guestShutdown`\" pulumi-lang-python=\"`guest_shutdown`\" pulumi-lang-yaml=\"`guestShutdown`\" pulumi-lang-java=\"`guestShutdown`\">`guest_shutdown`</span> or <span pulumi-lang-nodejs=\"`guestReboot`\" pulumi-lang-dotnet=\"`GuestReboot`\" pulumi-lang-go=\"`guestReboot`\" pulumi-lang-python=\"`guest_reboot`\" pulumi-lang-yaml=\"`guestReboot`\" pulumi-lang-java=\"`guestReboot`\">`guest_reboot`</span>.\n"
          }
        },
        "type": "object"
      }
    },
    "nutanix:index/volumeGroupDiskV2:VolumeGroupDiskV2": {
      "description": "Provides a resource to Creates a new Volume Disk.\n\n## Example Usage\n\n<!--Start PulumiCodeChooser -->\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as nutanix from \"@pierskarsenbarg/nutanix\";\n\n// create new volume group disk  and attached it to the previous volume group\nconst example = new nutanix.VolumeGroupDiskV2(\"example\", {\n    volumeGroupExtId: \"cf7de8b9-88ed-477d-a602-c34ab7174c01\",\n    index: 1,\n    description: \"create volume disk example\",\n    diskSizeBytes: 5368709120,\n    diskDataSourceReferences: [{\n        name: \"disk1\",\n        extId: \"1d92110d-26b5-46c0-8c93-20b8171373e0\",\n        entityType: \"STORAGE_CONTAINER\",\n        uris: [\n            \"uri1\",\n            \"uri2\",\n        ],\n    }],\n    diskStorageFeatures: [{\n        flashModes: [{\n            isEnabled: false,\n        }],\n    }],\n});\n```\n```python\nimport pulumi\nimport pulumi_nutanix as nutanix\n\n# create new volume group disk  and attached it to the previous volume group\nexample = nutanix.VolumeGroupDiskV2(\"example\",\n    volume_group_ext_id=\"cf7de8b9-88ed-477d-a602-c34ab7174c01\",\n    index=1,\n    description=\"create volume disk example\",\n    disk_size_bytes=5368709120,\n    disk_data_source_references=[{\n        \"name\": \"disk1\",\n        \"ext_id\": \"1d92110d-26b5-46c0-8c93-20b8171373e0\",\n        \"entity_type\": \"STORAGE_CONTAINER\",\n        \"uris\": [\n            \"uri1\",\n            \"uri2\",\n        ],\n    }],\n    disk_storage_features=[{\n        \"flash_modes\": [{\n            \"is_enabled\": False,\n        }],\n    }])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Nutanix = PiersKarsenbarg.Nutanix;\n\nreturn await Deployment.RunAsync(() => \n{\n    // create new volume group disk  and attached it to the previous volume group\n    var example = new Nutanix.VolumeGroupDiskV2(\"example\", new()\n    {\n        VolumeGroupExtId = \"cf7de8b9-88ed-477d-a602-c34ab7174c01\",\n        Index = 1,\n        Description = \"create volume disk example\",\n        DiskSizeBytes = 5368709120,\n        DiskDataSourceReferences = new[]\n        {\n            new Nutanix.Inputs.VolumeGroupDiskV2DiskDataSourceReferenceArgs\n            {\n                Name = \"disk1\",\n                ExtId = \"1d92110d-26b5-46c0-8c93-20b8171373e0\",\n                EntityType = \"STORAGE_CONTAINER\",\n                Uris = new[]\n                {\n                    \"uri1\",\n                    \"uri2\",\n                },\n            },\n        },\n        DiskStorageFeatures = new[]\n        {\n            new Nutanix.Inputs.VolumeGroupDiskV2DiskStorageFeatureArgs\n            {\n                FlashModes = new[]\n                {\n                    new Nutanix.Inputs.VolumeGroupDiskV2DiskStorageFeatureFlashModeArgs\n                    {\n                        IsEnabled = false,\n                    },\n                },\n            },\n        },\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pierskarsenbarg/pulumi-nutanix/sdk/go/nutanix\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t// create new volume group disk  and attached it to the previous volume group\n\t\t_, err := nutanix.NewVolumeGroupDiskV2(ctx, \"example\", &nutanix.VolumeGroupDiskV2Args{\n\t\t\tVolumeGroupExtId: pulumi.String(\"cf7de8b9-88ed-477d-a602-c34ab7174c01\"),\n\t\t\tIndex:            pulumi.Int(1),\n\t\t\tDescription:      pulumi.String(\"create volume disk example\"),\n\t\t\tDiskSizeBytes:    pulumi.Int(5368709120),\n\t\t\tDiskDataSourceReferences: nutanix.VolumeGroupDiskV2DiskDataSourceReferenceArray{\n\t\t\t\t&nutanix.VolumeGroupDiskV2DiskDataSourceReferenceArgs{\n\t\t\t\t\tName:       pulumi.String(\"disk1\"),\n\t\t\t\t\tExtId:      pulumi.String(\"1d92110d-26b5-46c0-8c93-20b8171373e0\"),\n\t\t\t\t\tEntityType: pulumi.String(\"STORAGE_CONTAINER\"),\n\t\t\t\t\tUris: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"uri1\"),\n\t\t\t\t\t\tpulumi.String(\"uri2\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t\tDiskStorageFeatures: nutanix.VolumeGroupDiskV2DiskStorageFeatureArray{\n\t\t\t\t&nutanix.VolumeGroupDiskV2DiskStorageFeatureArgs{\n\t\t\t\t\tFlashModes: nutanix.VolumeGroupDiskV2DiskStorageFeatureFlashModeArray{\n\t\t\t\t\t\t&nutanix.VolumeGroupDiskV2DiskStorageFeatureFlashModeArgs{\n\t\t\t\t\t\t\tIsEnabled: pulumi.Bool(false),\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.nutanix.VolumeGroupDiskV2;\nimport com.pulumi.nutanix.VolumeGroupDiskV2Args;\nimport com.pulumi.nutanix.inputs.VolumeGroupDiskV2DiskDataSourceReferenceArgs;\nimport com.pulumi.nutanix.inputs.VolumeGroupDiskV2DiskStorageFeatureArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        // create new volume group disk  and attached it to the previous volume group\n        var example = new VolumeGroupDiskV2(\"example\", VolumeGroupDiskV2Args.builder()\n            .volumeGroupExtId(\"cf7de8b9-88ed-477d-a602-c34ab7174c01\")\n            .index(1)\n            .description(\"create volume disk example\")\n            .diskSizeBytes(5368709120)\n            .diskDataSourceReferences(VolumeGroupDiskV2DiskDataSourceReferenceArgs.builder()\n                .name(\"disk1\")\n                .extId(\"1d92110d-26b5-46c0-8c93-20b8171373e0\")\n                .entityType(\"STORAGE_CONTAINER\")\n                .uris(                \n                    \"uri1\",\n                    \"uri2\")\n                .build())\n            .diskStorageFeatures(VolumeGroupDiskV2DiskStorageFeatureArgs.builder()\n                .flashModes(VolumeGroupDiskV2DiskStorageFeatureFlashModeArgs.builder()\n                    .isEnabled(false)\n                    .build())\n                .build())\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  # create new volume group disk  and attached it to the previous volume group\n  example:\n    type: nutanix:VolumeGroupDiskV2\n    properties:\n      volumeGroupExtId: cf7de8b9-88ed-477d-a602-c34ab7174c01\n      index: 1\n      description: create volume disk example\n      diskSizeBytes: 5.36870912e+09\n      diskDataSourceReferences:\n        - name: disk1\n          extId: 1d92110d-26b5-46c0-8c93-20b8171373e0\n          entityType: STORAGE_CONTAINER\n          uris:\n            - uri1\n            - uri2\n      diskStorageFeatures:\n        - flashModes:\n            - isEnabled: false\n```\n<!--End PulumiCodeChooser -->\n",
      "properties": {
        "description": {
          "type": "string",
          "description": "- Volume Disk description.\n"
        },
        "diskDataSourceReferences": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FVolumeGroupDiskV2DiskDataSourceReference:VolumeGroupDiskV2DiskDataSourceReference"
          },
          "description": "-(Required) Disk Data Source Reference.\n"
        },
        "diskSizeBytes": {
          "type": "integer",
          "description": "- ize of the disk in bytes. This field is mandatory during Volume Group creation if a new disk is being created on the storage container.\n"
        },
        "diskStorageFeatures": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FVolumeGroupDiskV2DiskStorageFeature:VolumeGroupDiskV2DiskStorageFeature"
          },
          "description": "- Storage optimization features which must be enabled on the Volume Disks. This is an optional field. If omitted, the disks will honor the Volume Group specific storage features setting.\n"
        },
        "extId": {
          "type": "string",
          "description": "- A globally unique identifier of an instance that is suitable for external consumption.\n"
        },
        "index": {
          "type": "integer",
          "description": "- Index of the disk in a Volume Group. This field is optional and immutable.\n"
        },
        "volumeGroupExtId": {
          "type": "string",
          "description": "The external identifier of the volume group."
        }
      },
      "type": "object",
      "required": [
        "diskDataSourceReferences",
        "diskSizeBytes",
        "extId",
        "index",
        "volumeGroupExtId"
      ],
      "inputProperties": {
        "description": {
          "type": "string",
          "description": "- Volume Disk description.\n"
        },
        "diskDataSourceReferences": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FVolumeGroupDiskV2DiskDataSourceReference:VolumeGroupDiskV2DiskDataSourceReference"
          },
          "description": "-(Required) Disk Data Source Reference.\n"
        },
        "diskSizeBytes": {
          "type": "integer",
          "description": "- ize of the disk in bytes. This field is mandatory during Volume Group creation if a new disk is being created on the storage container.\n"
        },
        "diskStorageFeatures": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FVolumeGroupDiskV2DiskStorageFeature:VolumeGroupDiskV2DiskStorageFeature"
          },
          "description": "- Storage optimization features which must be enabled on the Volume Disks. This is an optional field. If omitted, the disks will honor the Volume Group specific storage features setting.\n"
        },
        "index": {
          "type": "integer",
          "description": "- Index of the disk in a Volume Group. This field is optional and immutable.\n"
        },
        "volumeGroupExtId": {
          "type": "string",
          "description": "The external identifier of the volume group."
        }
      },
      "requiredInputs": [
        "diskDataSourceReferences",
        "diskSizeBytes",
        "volumeGroupExtId"
      ],
      "stateInputs": {
        "description": "Input properties used for looking up and filtering VolumeGroupDiskV2 resources.\n",
        "properties": {
          "description": {
            "type": "string",
            "description": "- Volume Disk description.\n"
          },
          "diskDataSourceReferences": {
            "type": "array",
            "items": {
              "$ref": "#/types/nutanix:index%2FVolumeGroupDiskV2DiskDataSourceReference:VolumeGroupDiskV2DiskDataSourceReference"
            },
            "description": "-(Required) Disk Data Source Reference.\n"
          },
          "diskSizeBytes": {
            "type": "integer",
            "description": "- ize of the disk in bytes. This field is mandatory during Volume Group creation if a new disk is being created on the storage container.\n"
          },
          "diskStorageFeatures": {
            "type": "array",
            "items": {
              "$ref": "#/types/nutanix:index%2FVolumeGroupDiskV2DiskStorageFeature:VolumeGroupDiskV2DiskStorageFeature"
            },
            "description": "- Storage optimization features which must be enabled on the Volume Disks. This is an optional field. If omitted, the disks will honor the Volume Group specific storage features setting.\n"
          },
          "extId": {
            "type": "string",
            "description": "- A globally unique identifier of an instance that is suitable for external consumption.\n"
          },
          "index": {
            "type": "integer",
            "description": "- Index of the disk in a Volume Group. This field is optional and immutable.\n"
          },
          "volumeGroupExtId": {
            "type": "string",
            "description": "The external identifier of the volume group."
          }
        },
        "type": "object"
      }
    },
    "nutanix:index/volumeGroupIscsiClientV2:VolumeGroupIscsiClientV2": {
      "description": "Attaches iSCSI initiator to a Volume Group identified by {extId}.\n\n## Example Usage\n\n<!--Start PulumiCodeChooser -->\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as nutanix from \"@pierskarsenbarg/nutanix\";\n\n//list iscsi clients\nconst list_iscsi_clients = nutanix.getVolumeIscsiClientsV2({});\n// attach iscsi client to the volume group\nconst vgIscsiExample = new nutanix.index.VolumeGroupIscsiClientsV2(\"vg_iscsi_example\", {\n    vgExtId: \"1cdb5b48-fb2c-41b6-b751-b504117ee3e2\",\n    extId: list_iscsi_clients.iscsiClients?.[0]?.extId,\n    iscsiInitiatorName: list_iscsi_clients.iscsiClients?.[0]?.iscsiInitiatorName,\n});\n```\n```python\nimport pulumi\nimport pulumi_nutanix as nutanix\n\n#list iscsi clients\nlist_iscsi_clients = nutanix.get_volume_iscsi_clients_v2()\n# attach iscsi client to the volume group\nvg_iscsi_example = nutanix.index.VolumeGroupIscsiClientsV2(\"vg_iscsi_example\",\n    vg_ext_id=1cdb5b48-fb2c-41b6-b751-b504117ee3e2,\n    ext_id=list_iscsi_clients.iscsi_clients[0].ext_id,\n    iscsi_initiator_name=list_iscsi_clients.iscsi_clients[0].iscsi_initiator_name)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Nutanix = Pulumi.Nutanix;\n\nreturn await Deployment.RunAsync(() => \n{\n    //list iscsi clients\n    var list_iscsi_clients = Nutanix.GetVolumeIscsiClientsV2.Invoke();\n\n    // attach iscsi client to the volume group\n    var vgIscsiExample = new Nutanix.Index.VolumeGroupIscsiClientsV2(\"vg_iscsi_example\", new()\n    {\n        VgExtId = \"1cdb5b48-fb2c-41b6-b751-b504117ee3e2\",\n        ExtId = list_iscsi_clients.Apply(getVolumeIscsiClientsV2Result => getVolumeIscsiClientsV2Result.IscsiClients[0]?.ExtId),\n        IscsiInitiatorName = list_iscsi_clients.Apply(getVolumeIscsiClientsV2Result => getVolumeIscsiClientsV2Result.IscsiClients[0]?.IscsiInitiatorName),\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pierskarsenbarg/pulumi-nutanix/sdk/go/nutanix\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t// list iscsi clients\n\t\tlist_iscsi_clients, err := nutanix.GetVolumeIscsiClientsV2(ctx, &nutanix.GetVolumeIscsiClientsV2Args{}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t// attach iscsi client to the volume group\n\t\t_, err = nutanix.NewVolumeGroupIscsiClientsV2(ctx, \"vg_iscsi_example\", &nutanix.VolumeGroupIscsiClientsV2Args{\n\t\t\tVgExtId:            \"1cdb5b48-fb2c-41b6-b751-b504117ee3e2\",\n\t\t\tExtId:              list_iscsi_clients.IscsiClients[0].ExtId,\n\t\t\tIscsiInitiatorName: list_iscsi_clients.IscsiClients[0].IscsiInitiatorName,\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.nutanix.NutanixFunctions;\nimport com.pulumi.nutanix.inputs.GetVolumeIscsiClientsV2Args;\nimport com.pulumi.nutanix.volumeGroupIscsiClientsV2;\nimport com.pulumi.nutanix.volumeGroupIscsiClientsV2Args;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        //list iscsi clients\n        final var list-iscsi-clients = NutanixFunctions.getVolumeIscsiClientsV2(GetVolumeIscsiClientsV2Args.builder()\n            .build());\n\n        // attach iscsi client to the volume group\n        var vgIscsiExample = new VolumeGroupIscsiClientsV2(\"vgIscsiExample\", VolumeGroupIscsiClientsV2Args.builder()\n            .vgExtId(\"1cdb5b48-fb2c-41b6-b751-b504117ee3e2\")\n            .extId(list_iscsi_clients.iscsiClients()[0].extId())\n            .iscsiInitiatorName(list_iscsi_clients.iscsiClients()[0].iscsiInitiatorName())\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  # attach iscsi client to the volume group\n  vgIscsiExample:\n    type: nutanix:volumeGroupIscsiClientsV2\n    name: vg_iscsi_example\n    properties:\n      vgExtId: 1cdb5b48-fb2c-41b6-b751-b504117ee3e2\n      extId: ${[\"list-iscsi-clients\"].iscsiClients[0].extId}\n      iscsiInitiatorName: ${[\"list-iscsi-clients\"].iscsiClients[0].iscsiInitiatorName}\nvariables:\n  #list iscsi clients\n  list-iscsi-clients:\n    fn::invoke:\n      function: nutanix:getVolumeIscsiClientsV2\n      arguments: {}\n```\n<!--End PulumiCodeChooser -->\n",
      "properties": {
        "attachmentSite": {
          "type": "string",
          "description": "-(Optional) The site where the Volume Group attach operation should be processed. This is an optional field. This field may only be set if Metro DR has been configured for this Volume Group. Valid values are SECONDARY, PRIMARY.\n"
        },
        "clientSecret": {
          "type": "string",
          "description": "-(Optional) iSCSI initiator client secret in case of CHAP authentication. This field should not be provided in case the authentication type is not set to CHAP.\n"
        },
        "enabledAuthentications": {
          "type": "string",
          "description": "-(Optional) (Optional) The authentication type enabled for the Volume Group. This is an optional field. If omitted, authentication is not configured for the Volume Group. If this is set to CHAP, the target/client secret must be provided. Valid values are CHAP, NONE\n"
        },
        "extId": {
          "type": "string",
          "description": "-(Required) A globally unique identifier of an instance that is suitable for external consumption.\n"
        },
        "iscsiInitiatorName": {
          "type": "string",
          "description": "-iSCSI initiator name. During the attach operation, exactly one of iscsiInitiatorName and iscsiInitiatorNetworkId must be specified. This field is immutable.\n"
        },
        "iscsiInitiatorNetworkIds": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FVolumeGroupIscsiClientV2IscsiInitiatorNetworkId:VolumeGroupIscsiClientV2IscsiInitiatorNetworkId"
          },
          "description": "- An unique address that identifies a device on the internet or a local network in IPv4/IPv6 format or a Fully Qualified Domain Name.\n"
        },
        "numVirtualTargets": {
          "type": "integer",
          "description": "-(Optional) Number of virtual targets generated for the iSCSI target. This field is immutable.\n"
        },
        "vgExtId": {
          "type": "string",
          "description": "-(Required) The external identifier of the volume group.\n"
        }
      },
      "type": "object",
      "required": [
        "extId",
        "vgExtId"
      ],
      "inputProperties": {
        "attachmentSite": {
          "type": "string",
          "description": "-(Optional) The site where the Volume Group attach operation should be processed. This is an optional field. This field may only be set if Metro DR has been configured for this Volume Group. Valid values are SECONDARY, PRIMARY.\n"
        },
        "clientSecret": {
          "type": "string",
          "description": "-(Optional) iSCSI initiator client secret in case of CHAP authentication. This field should not be provided in case the authentication type is not set to CHAP.\n"
        },
        "enabledAuthentications": {
          "type": "string",
          "description": "-(Optional) (Optional) The authentication type enabled for the Volume Group. This is an optional field. If omitted, authentication is not configured for the Volume Group. If this is set to CHAP, the target/client secret must be provided. Valid values are CHAP, NONE\n"
        },
        "extId": {
          "type": "string",
          "description": "-(Required) A globally unique identifier of an instance that is suitable for external consumption.\n"
        },
        "iscsiInitiatorName": {
          "type": "string",
          "description": "-iSCSI initiator name. During the attach operation, exactly one of iscsiInitiatorName and iscsiInitiatorNetworkId must be specified. This field is immutable.\n"
        },
        "iscsiInitiatorNetworkIds": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FVolumeGroupIscsiClientV2IscsiInitiatorNetworkId:VolumeGroupIscsiClientV2IscsiInitiatorNetworkId"
          },
          "description": "- An unique address that identifies a device on the internet or a local network in IPv4/IPv6 format or a Fully Qualified Domain Name.\n"
        },
        "numVirtualTargets": {
          "type": "integer",
          "description": "-(Optional) Number of virtual targets generated for the iSCSI target. This field is immutable.\n"
        },
        "vgExtId": {
          "type": "string",
          "description": "-(Required) The external identifier of the volume group.\n"
        }
      },
      "requiredInputs": [
        "vgExtId"
      ],
      "stateInputs": {
        "description": "Input properties used for looking up and filtering VolumeGroupIscsiClientV2 resources.\n",
        "properties": {
          "attachmentSite": {
            "type": "string",
            "description": "-(Optional) The site where the Volume Group attach operation should be processed. This is an optional field. This field may only be set if Metro DR has been configured for this Volume Group. Valid values are SECONDARY, PRIMARY.\n"
          },
          "clientSecret": {
            "type": "string",
            "description": "-(Optional) iSCSI initiator client secret in case of CHAP authentication. This field should not be provided in case the authentication type is not set to CHAP.\n"
          },
          "enabledAuthentications": {
            "type": "string",
            "description": "-(Optional) (Optional) The authentication type enabled for the Volume Group. This is an optional field. If omitted, authentication is not configured for the Volume Group. If this is set to CHAP, the target/client secret must be provided. Valid values are CHAP, NONE\n"
          },
          "extId": {
            "type": "string",
            "description": "-(Required) A globally unique identifier of an instance that is suitable for external consumption.\n"
          },
          "iscsiInitiatorName": {
            "type": "string",
            "description": "-iSCSI initiator name. During the attach operation, exactly one of iscsiInitiatorName and iscsiInitiatorNetworkId must be specified. This field is immutable.\n"
          },
          "iscsiInitiatorNetworkIds": {
            "type": "array",
            "items": {
              "$ref": "#/types/nutanix:index%2FVolumeGroupIscsiClientV2IscsiInitiatorNetworkId:VolumeGroupIscsiClientV2IscsiInitiatorNetworkId"
            },
            "description": "- An unique address that identifies a device on the internet or a local network in IPv4/IPv6 format or a Fully Qualified Domain Name.\n"
          },
          "numVirtualTargets": {
            "type": "integer",
            "description": "-(Optional) Number of virtual targets generated for the iSCSI target. This field is immutable.\n"
          },
          "vgExtId": {
            "type": "string",
            "description": "-(Required) The external identifier of the volume group.\n"
          }
        },
        "type": "object"
      }
    },
    "nutanix:index/volumeGroupV2:VolumeGroupV2": {
      "description": "Provides a resource to Create a new Volume Group.\n\n## Example Usage\n\n<!--Start PulumiCodeChooser -->\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as nutanix from \"@pierskarsenbarg/nutanix\";\n\nconst volumeGroupExample = new nutanix.VolumeGroupV2(\"volume_group_example\", {\n    name: \"volume_group_test\",\n    description: \"Test Create Volume group with spec\",\n    shouldLoadBalanceVmAttachments: false,\n    sharingStatus: \"SHARED\",\n    targetName: \"volumegroup-test-001234\",\n    createdBy: \"example\",\n    clusterReference: \"ab520e1d-4950-1db1-917f-a9e2ea35b8e3\",\n    iscsiFeatures: [{\n        enabledAuthentications: \"CHAP\",\n        targetSecret: \"123456789abc\",\n    }],\n    storageFeatures: [{\n        flashModes: [{\n            isEnabled: true,\n        }],\n    }],\n    usageType: \"USER\",\n    isHidden: false,\n});\n```\n```python\nimport pulumi\nimport pulumi_nutanix as nutanix\n\nvolume_group_example = nutanix.VolumeGroupV2(\"volume_group_example\",\n    name=\"volume_group_test\",\n    description=\"Test Create Volume group with spec\",\n    should_load_balance_vm_attachments=False,\n    sharing_status=\"SHARED\",\n    target_name=\"volumegroup-test-001234\",\n    created_by=\"example\",\n    cluster_reference=\"ab520e1d-4950-1db1-917f-a9e2ea35b8e3\",\n    iscsi_features=[{\n        \"enabled_authentications\": \"CHAP\",\n        \"target_secret\": \"123456789abc\",\n    }],\n    storage_features=[{\n        \"flash_modes\": [{\n            \"is_enabled\": True,\n        }],\n    }],\n    usage_type=\"USER\",\n    is_hidden=False)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Nutanix = PiersKarsenbarg.Nutanix;\n\nreturn await Deployment.RunAsync(() => \n{\n    var volumeGroupExample = new Nutanix.VolumeGroupV2(\"volume_group_example\", new()\n    {\n        Name = \"volume_group_test\",\n        Description = \"Test Create Volume group with spec\",\n        ShouldLoadBalanceVmAttachments = false,\n        SharingStatus = \"SHARED\",\n        TargetName = \"volumegroup-test-001234\",\n        CreatedBy = \"example\",\n        ClusterReference = \"ab520e1d-4950-1db1-917f-a9e2ea35b8e3\",\n        IscsiFeatures = new[]\n        {\n            new Nutanix.Inputs.VolumeGroupV2IscsiFeatureArgs\n            {\n                EnabledAuthentications = \"CHAP\",\n                TargetSecret = \"123456789abc\",\n            },\n        },\n        StorageFeatures = new[]\n        {\n            new Nutanix.Inputs.VolumeGroupV2StorageFeatureArgs\n            {\n                FlashModes = new[]\n                {\n                    new Nutanix.Inputs.VolumeGroupV2StorageFeatureFlashModeArgs\n                    {\n                        IsEnabled = true,\n                    },\n                },\n            },\n        },\n        UsageType = \"USER\",\n        IsHidden = false,\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pierskarsenbarg/pulumi-nutanix/sdk/go/nutanix\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := nutanix.NewVolumeGroupV2(ctx, \"volume_group_example\", &nutanix.VolumeGroupV2Args{\n\t\t\tName:                           pulumi.String(\"volume_group_test\"),\n\t\t\tDescription:                    pulumi.String(\"Test Create Volume group with spec\"),\n\t\t\tShouldLoadBalanceVmAttachments: pulumi.Bool(false),\n\t\t\tSharingStatus:                  pulumi.String(\"SHARED\"),\n\t\t\tTargetName:                     pulumi.String(\"volumegroup-test-001234\"),\n\t\t\tCreatedBy:                      pulumi.String(\"example\"),\n\t\t\tClusterReference:               pulumi.String(\"ab520e1d-4950-1db1-917f-a9e2ea35b8e3\"),\n\t\t\tIscsiFeatures: nutanix.VolumeGroupV2IscsiFeatureArray{\n\t\t\t\t&nutanix.VolumeGroupV2IscsiFeatureArgs{\n\t\t\t\t\tEnabledAuthentications: pulumi.String(\"CHAP\"),\n\t\t\t\t\tTargetSecret:           pulumi.String(\"123456789abc\"),\n\t\t\t\t},\n\t\t\t},\n\t\t\tStorageFeatures: nutanix.VolumeGroupV2StorageFeatureArray{\n\t\t\t\t&nutanix.VolumeGroupV2StorageFeatureArgs{\n\t\t\t\t\tFlashModes: nutanix.VolumeGroupV2StorageFeatureFlashModeArray{\n\t\t\t\t\t\t&nutanix.VolumeGroupV2StorageFeatureFlashModeArgs{\n\t\t\t\t\t\t\tIsEnabled: pulumi.Bool(true),\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t\tUsageType: pulumi.String(\"USER\"),\n\t\t\tIsHidden:  pulumi.Bool(false),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.nutanix.VolumeGroupV2;\nimport com.pulumi.nutanix.VolumeGroupV2Args;\nimport com.pulumi.nutanix.inputs.VolumeGroupV2IscsiFeatureArgs;\nimport com.pulumi.nutanix.inputs.VolumeGroupV2StorageFeatureArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var volumeGroupExample = new VolumeGroupV2(\"volumeGroupExample\", VolumeGroupV2Args.builder()\n            .name(\"volume_group_test\")\n            .description(\"Test Create Volume group with spec\")\n            .shouldLoadBalanceVmAttachments(false)\n            .sharingStatus(\"SHARED\")\n            .targetName(\"volumegroup-test-001234\")\n            .createdBy(\"example\")\n            .clusterReference(\"ab520e1d-4950-1db1-917f-a9e2ea35b8e3\")\n            .iscsiFeatures(VolumeGroupV2IscsiFeatureArgs.builder()\n                .enabledAuthentications(\"CHAP\")\n                .targetSecret(\"123456789abc\")\n                .build())\n            .storageFeatures(VolumeGroupV2StorageFeatureArgs.builder()\n                .flashModes(VolumeGroupV2StorageFeatureFlashModeArgs.builder()\n                    .isEnabled(true)\n                    .build())\n                .build())\n            .usageType(\"USER\")\n            .isHidden(false)\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  volumeGroupExample:\n    type: nutanix:VolumeGroupV2\n    name: volume_group_example\n    properties:\n      name: volume_group_test\n      description: Test Create Volume group with spec\n      shouldLoadBalanceVmAttachments: false\n      sharingStatus: SHARED\n      targetName: volumegroup-test-001234\n      createdBy: example\n      clusterReference: ab520e1d-4950-1db1-917f-a9e2ea35b8e3\n      iscsiFeatures:\n        - enabledAuthentications: CHAP\n          targetSecret: 123456789abc\n      storageFeatures:\n        - flashModes:\n            - isEnabled: true\n      usageType: USER\n      isHidden: false # ignore changes to target_secret, target secret will not be returned in pulumi preview output\n```\n<!--End PulumiCodeChooser -->\n",
      "properties": {
        "attachmentType": {
          "type": "string",
          "description": "-(Optional) The field indicates whether a VG has a VM or an external attachment associated with it. Valid values are :\n- EXTERNAL : Volume Group has an external iSCSI or NVMf attachment.\n- NONE : Volume Group has no attachment.\n- DIRECT : Volume Group has a VM attachment.\n"
        },
        "clusterReference": {
          "type": "string",
          "description": "-(Required) The UUID of the cluster that will host the Volume Group.\n"
        },
        "createdBy": {
          "type": "string",
          "description": "-(Optional) Service/user who created this Volume Group.\n"
        },
        "description": {
          "type": "string",
          "description": "-(Optional) Volume Group description. This is an optional field.\n"
        },
        "disks": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FVolumeGroupV2Disk:VolumeGroupV2Disk"
          },
          "description": "-(Optional) A list of Volume Disks to be attached to the Volume Group.\n"
        },
        "enabledAuthentications": {
          "type": "string",
          "description": "-(Optional) The authentication type enabled for the Volume Group. Valid values are CHAP, NONE\n"
        },
        "extId": {
          "type": "string",
          "description": "-(Optional) A globally unique identifier of an instance that is suitable for external consumption.\n"
        },
        "isHidden": {
          "type": "boolean",
          "description": "-(Optional) Indicates whether the Volume Group is meant to be hidden or not.\n"
        },
        "iscsiFeatures": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FVolumeGroupV2IscsiFeature:VolumeGroupV2IscsiFeature"
          },
          "description": "-(Optional) iSCSI specific settings for the Volume Group.\n"
        },
        "name": {
          "type": "string",
          "description": "-(Required) Volume Group name. This is an optional field.\n"
        },
        "protocol": {
          "type": "string",
          "description": "-(Optional) Type of protocol to be used for Volume Group. Valid values are :\n- NOT_ASSIGNED :  Volume Group does not use any protocol.\n- ISCSI : Volume Group uses iSCSI protocol.\n- NVMF : Volume Group uses NVMf protocol.\n"
        },
        "sharingStatus": {
          "type": "string",
          "description": "-(Optional) Indicates whether the Volume Group can be shared across multiple iSCSI initiators. The mode cannot be changed from SHARED to NOT_SHARED on a Volume Group with multiple attachments. Similarly, a Volume Group cannot be associated with more than one attachment as long as it is in exclusive mode. This is an optional field. Valid values are SHARED, NOT_SHARED\n"
        },
        "shouldLoadBalanceVmAttachments": {
          "type": "boolean",
          "description": "-(Optional) Indicates whether to enable Volume Group load balancing for VM attachments. This cannot be enabled if there are iSCSI client attachments already associated with the Volume Group, and vice-versa. This is an optional field.\n"
        },
        "storageFeatures": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FVolumeGroupV2StorageFeature:VolumeGroupV2StorageFeature"
          },
          "description": "-(Optional) Storage optimization features which must be enabled on the Volume Group.\n"
        },
        "targetName": {
          "type": "string",
          "description": "-(Optional) Name of the external client target that will be visible and accessible to the client.\n"
        },
        "targetPrefix": {
          "type": "string",
          "description": "The specifications contain the target prefix for external clients as the value. This is an optional field."
        },
        "usageType": {
          "type": "string",
          "description": "-(Optional) Expected usage type for the Volume Group. This is an indicative hint on how the caller will consume the Volume Group.  Valid values are BACKUP_TARGET, INTERNAL, TEMPORARY, USER\n"
        }
      },
      "type": "object",
      "required": [
        "clusterReference",
        "extId",
        "iscsiFeatures",
        "name",
        "targetName"
      ],
      "inputProperties": {
        "attachmentType": {
          "type": "string",
          "description": "-(Optional) The field indicates whether a VG has a VM or an external attachment associated with it. Valid values are :\n- EXTERNAL : Volume Group has an external iSCSI or NVMf attachment.\n- NONE : Volume Group has no attachment.\n- DIRECT : Volume Group has a VM attachment.\n"
        },
        "clusterReference": {
          "type": "string",
          "description": "-(Required) The UUID of the cluster that will host the Volume Group.\n"
        },
        "createdBy": {
          "type": "string",
          "description": "-(Optional) Service/user who created this Volume Group.\n"
        },
        "description": {
          "type": "string",
          "description": "-(Optional) Volume Group description. This is an optional field.\n"
        },
        "disks": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FVolumeGroupV2Disk:VolumeGroupV2Disk"
          },
          "description": "-(Optional) A list of Volume Disks to be attached to the Volume Group.\n"
        },
        "enabledAuthentications": {
          "type": "string",
          "description": "-(Optional) The authentication type enabled for the Volume Group. Valid values are CHAP, NONE\n"
        },
        "isHidden": {
          "type": "boolean",
          "description": "-(Optional) Indicates whether the Volume Group is meant to be hidden or not.\n"
        },
        "iscsiFeatures": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FVolumeGroupV2IscsiFeature:VolumeGroupV2IscsiFeature"
          },
          "description": "-(Optional) iSCSI specific settings for the Volume Group.\n"
        },
        "name": {
          "type": "string",
          "description": "-(Required) Volume Group name. This is an optional field.\n"
        },
        "protocol": {
          "type": "string",
          "description": "-(Optional) Type of protocol to be used for Volume Group. Valid values are :\n- NOT_ASSIGNED :  Volume Group does not use any protocol.\n- ISCSI : Volume Group uses iSCSI protocol.\n- NVMF : Volume Group uses NVMf protocol.\n"
        },
        "sharingStatus": {
          "type": "string",
          "description": "-(Optional) Indicates whether the Volume Group can be shared across multiple iSCSI initiators. The mode cannot be changed from SHARED to NOT_SHARED on a Volume Group with multiple attachments. Similarly, a Volume Group cannot be associated with more than one attachment as long as it is in exclusive mode. This is an optional field. Valid values are SHARED, NOT_SHARED\n"
        },
        "shouldLoadBalanceVmAttachments": {
          "type": "boolean",
          "description": "-(Optional) Indicates whether to enable Volume Group load balancing for VM attachments. This cannot be enabled if there are iSCSI client attachments already associated with the Volume Group, and vice-versa. This is an optional field.\n"
        },
        "storageFeatures": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FVolumeGroupV2StorageFeature:VolumeGroupV2StorageFeature"
          },
          "description": "-(Optional) Storage optimization features which must be enabled on the Volume Group.\n"
        },
        "targetName": {
          "type": "string",
          "description": "-(Optional) Name of the external client target that will be visible and accessible to the client.\n"
        },
        "targetPrefix": {
          "type": "string",
          "description": "The specifications contain the target prefix for external clients as the value. This is an optional field."
        },
        "usageType": {
          "type": "string",
          "description": "-(Optional) Expected usage type for the Volume Group. This is an indicative hint on how the caller will consume the Volume Group.  Valid values are BACKUP_TARGET, INTERNAL, TEMPORARY, USER\n"
        }
      },
      "requiredInputs": [
        "clusterReference"
      ],
      "stateInputs": {
        "description": "Input properties used for looking up and filtering VolumeGroupV2 resources.\n",
        "properties": {
          "attachmentType": {
            "type": "string",
            "description": "-(Optional) The field indicates whether a VG has a VM or an external attachment associated with it. Valid values are :\n- EXTERNAL : Volume Group has an external iSCSI or NVMf attachment.\n- NONE : Volume Group has no attachment.\n- DIRECT : Volume Group has a VM attachment.\n"
          },
          "clusterReference": {
            "type": "string",
            "description": "-(Required) The UUID of the cluster that will host the Volume Group.\n"
          },
          "createdBy": {
            "type": "string",
            "description": "-(Optional) Service/user who created this Volume Group.\n"
          },
          "description": {
            "type": "string",
            "description": "-(Optional) Volume Group description. This is an optional field.\n"
          },
          "disks": {
            "type": "array",
            "items": {
              "$ref": "#/types/nutanix:index%2FVolumeGroupV2Disk:VolumeGroupV2Disk"
            },
            "description": "-(Optional) A list of Volume Disks to be attached to the Volume Group.\n"
          },
          "enabledAuthentications": {
            "type": "string",
            "description": "-(Optional) The authentication type enabled for the Volume Group. Valid values are CHAP, NONE\n"
          },
          "extId": {
            "type": "string",
            "description": "-(Optional) A globally unique identifier of an instance that is suitable for external consumption.\n"
          },
          "isHidden": {
            "type": "boolean",
            "description": "-(Optional) Indicates whether the Volume Group is meant to be hidden or not.\n"
          },
          "iscsiFeatures": {
            "type": "array",
            "items": {
              "$ref": "#/types/nutanix:index%2FVolumeGroupV2IscsiFeature:VolumeGroupV2IscsiFeature"
            },
            "description": "-(Optional) iSCSI specific settings for the Volume Group.\n"
          },
          "name": {
            "type": "string",
            "description": "-(Required) Volume Group name. This is an optional field.\n"
          },
          "protocol": {
            "type": "string",
            "description": "-(Optional) Type of protocol to be used for Volume Group. Valid values are :\n- NOT_ASSIGNED :  Volume Group does not use any protocol.\n- ISCSI : Volume Group uses iSCSI protocol.\n- NVMF : Volume Group uses NVMf protocol.\n"
          },
          "sharingStatus": {
            "type": "string",
            "description": "-(Optional) Indicates whether the Volume Group can be shared across multiple iSCSI initiators. The mode cannot be changed from SHARED to NOT_SHARED on a Volume Group with multiple attachments. Similarly, a Volume Group cannot be associated with more than one attachment as long as it is in exclusive mode. This is an optional field. Valid values are SHARED, NOT_SHARED\n"
          },
          "shouldLoadBalanceVmAttachments": {
            "type": "boolean",
            "description": "-(Optional) Indicates whether to enable Volume Group load balancing for VM attachments. This cannot be enabled if there are iSCSI client attachments already associated with the Volume Group, and vice-versa. This is an optional field.\n"
          },
          "storageFeatures": {
            "type": "array",
            "items": {
              "$ref": "#/types/nutanix:index%2FVolumeGroupV2StorageFeature:VolumeGroupV2StorageFeature"
            },
            "description": "-(Optional) Storage optimization features which must be enabled on the Volume Group.\n"
          },
          "targetName": {
            "type": "string",
            "description": "-(Optional) Name of the external client target that will be visible and accessible to the client.\n"
          },
          "targetPrefix": {
            "type": "string",
            "description": "The specifications contain the target prefix for external clients as the value. This is an optional field."
          },
          "usageType": {
            "type": "string",
            "description": "-(Optional) Expected usage type for the Volume Group. This is an indicative hint on how the caller will consume the Volume Group.  Valid values are BACKUP_TARGET, INTERNAL, TEMPORARY, USER\n"
          }
        },
        "type": "object"
      }
    },
    "nutanix:index/volumeGroupVmV2:VolumeGroupVmV2": {
      "description": "Provides a resource to Create a new Volume Group.\n\n## Example Usage\n\n<!--Start PulumiCodeChooser -->\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as nutanix from \"@pierskarsenbarg/nutanix\";\n\nconst vgVmExample = new nutanix.VolumeGroupVmV2(\"vg_vm_example\", {\n    volumeGroupExtId: \"1cdb5b48-fb2c-41b6-b751-b504117ee3e2\",\n    vmExtId: \"8a938cc5-282b-48c4-81be-de22de145d07\",\n});\n```\n```python\nimport pulumi\nimport pulumi_nutanix as nutanix\n\nvg_vm_example = nutanix.VolumeGroupVmV2(\"vg_vm_example\",\n    volume_group_ext_id=\"1cdb5b48-fb2c-41b6-b751-b504117ee3e2\",\n    vm_ext_id=\"8a938cc5-282b-48c4-81be-de22de145d07\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Nutanix = PiersKarsenbarg.Nutanix;\n\nreturn await Deployment.RunAsync(() => \n{\n    var vgVmExample = new Nutanix.VolumeGroupVmV2(\"vg_vm_example\", new()\n    {\n        VolumeGroupExtId = \"1cdb5b48-fb2c-41b6-b751-b504117ee3e2\",\n        VmExtId = \"8a938cc5-282b-48c4-81be-de22de145d07\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pierskarsenbarg/pulumi-nutanix/sdk/go/nutanix\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := nutanix.NewVolumeGroupVmV2(ctx, \"vg_vm_example\", &nutanix.VolumeGroupVmV2Args{\n\t\t\tVolumeGroupExtId: pulumi.String(\"1cdb5b48-fb2c-41b6-b751-b504117ee3e2\"),\n\t\t\tVmExtId:          pulumi.String(\"8a938cc5-282b-48c4-81be-de22de145d07\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.nutanix.VolumeGroupVmV2;\nimport com.pulumi.nutanix.VolumeGroupVmV2Args;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var vgVmExample = new VolumeGroupVmV2(\"vgVmExample\", VolumeGroupVmV2Args.builder()\n            .volumeGroupExtId(\"1cdb5b48-fb2c-41b6-b751-b504117ee3e2\")\n            .vmExtId(\"8a938cc5-282b-48c4-81be-de22de145d07\")\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  vgVmExample:\n    type: nutanix:VolumeGroupVmV2\n    name: vg_vm_example\n    properties:\n      volumeGroupExtId: 1cdb5b48-fb2c-41b6-b751-b504117ee3e2\n      vmExtId: 8a938cc5-282b-48c4-81be-de22de145d07\n```\n<!--End PulumiCodeChooser -->\n",
      "properties": {
        "extId": {
          "type": "string",
          "description": "A globally unique identifier of a task."
        },
        "index": {
          "type": "integer",
          "description": "-(Optional) The index on the SCSI bus to attach the VM to the Volume Group.\n\n\nSee detailed information in [Nutanix Attach VM to Volume Group V4](https://developers.nutanix.com/api-reference?namespace=volumes&version=v4.0#tag/VolumeGroups/operation/attachVm).\n"
        },
        "vmExtId": {
          "type": "string",
          "description": "-(Required) A globally unique identifier of an instance that is suitable for external consumption.\n"
        },
        "volumeGroupExtId": {
          "type": "string",
          "description": "-(Required) The external identifier of the volume group.\n"
        }
      },
      "type": "object",
      "required": [
        "extId",
        "vmExtId",
        "volumeGroupExtId"
      ],
      "inputProperties": {
        "index": {
          "type": "integer",
          "description": "-(Optional) The index on the SCSI bus to attach the VM to the Volume Group.\n\n\nSee detailed information in [Nutanix Attach VM to Volume Group V4](https://developers.nutanix.com/api-reference?namespace=volumes&version=v4.0#tag/VolumeGroups/operation/attachVm).\n"
        },
        "vmExtId": {
          "type": "string",
          "description": "-(Required) A globally unique identifier of an instance that is suitable for external consumption.\n"
        },
        "volumeGroupExtId": {
          "type": "string",
          "description": "-(Required) The external identifier of the volume group.\n"
        }
      },
      "requiredInputs": [
        "vmExtId",
        "volumeGroupExtId"
      ],
      "stateInputs": {
        "description": "Input properties used for looking up and filtering VolumeGroupVmV2 resources.\n",
        "properties": {
          "extId": {
            "type": "string",
            "description": "A globally unique identifier of a task."
          },
          "index": {
            "type": "integer",
            "description": "-(Optional) The index on the SCSI bus to attach the VM to the Volume Group.\n\n\nSee detailed information in [Nutanix Attach VM to Volume Group V4](https://developers.nutanix.com/api-reference?namespace=volumes&version=v4.0#tag/VolumeGroups/operation/attachVm).\n"
          },
          "vmExtId": {
            "type": "string",
            "description": "-(Required) A globally unique identifier of an instance that is suitable for external consumption.\n"
          },
          "volumeGroupExtId": {
            "type": "string",
            "description": "-(Required) The external identifier of the volume group.\n"
          }
        },
        "type": "object"
      }
    },
    "nutanix:index/vpc:Vpc": {
      "description": "Provides Nutanix resource to create VPC.\n\n## Example Usage\n\n### vpc creation with external subnet name\n\n<!--Start PulumiCodeChooser -->\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as nutanix from \"@pierskarsenbarg/nutanix\";\n\nconst vpc = new nutanix.Vpc(\"vpc\", {\n    name: \"testtNew-1\",\n    externalSubnetReferenceNames: [\n        \"test-Ext1\",\n        \"test-ext2\",\n    ],\n    commonDomainNameServerIpLists: [\n        {\n            ip: \"8.8.8.8\",\n        },\n        {\n            ip: \"8.8.8.9\",\n        },\n    ],\n    externallyRoutablePrefixLists: [{\n        ip: \"192.43.0.0\",\n        prefixLength: 16,\n    }],\n});\n```\n```python\nimport pulumi\nimport pulumi_nutanix as nutanix\n\nvpc = nutanix.Vpc(\"vpc\",\n    name=\"testtNew-1\",\n    external_subnet_reference_names=[\n        \"test-Ext1\",\n        \"test-ext2\",\n    ],\n    common_domain_name_server_ip_lists=[\n        {\n            \"ip\": \"8.8.8.8\",\n        },\n        {\n            \"ip\": \"8.8.8.9\",\n        },\n    ],\n    externally_routable_prefix_lists=[{\n        \"ip\": \"192.43.0.0\",\n        \"prefix_length\": 16,\n    }])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Nutanix = PiersKarsenbarg.Nutanix;\n\nreturn await Deployment.RunAsync(() => \n{\n    var vpc = new Nutanix.Vpc(\"vpc\", new()\n    {\n        Name = \"testtNew-1\",\n        ExternalSubnetReferenceNames = new[]\n        {\n            \"test-Ext1\",\n            \"test-ext2\",\n        },\n        CommonDomainNameServerIpLists = new[]\n        {\n            new Nutanix.Inputs.VpcCommonDomainNameServerIpListArgs\n            {\n                Ip = \"8.8.8.8\",\n            },\n            new Nutanix.Inputs.VpcCommonDomainNameServerIpListArgs\n            {\n                Ip = \"8.8.8.9\",\n            },\n        },\n        ExternallyRoutablePrefixLists = new[]\n        {\n            new Nutanix.Inputs.VpcExternallyRoutablePrefixListArgs\n            {\n                Ip = \"192.43.0.0\",\n                PrefixLength = 16,\n            },\n        },\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pierskarsenbarg/pulumi-nutanix/sdk/go/nutanix\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := nutanix.NewVpc(ctx, \"vpc\", &nutanix.VpcArgs{\n\t\t\tName: pulumi.String(\"testtNew-1\"),\n\t\t\tExternalSubnetReferenceNames: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"test-Ext1\"),\n\t\t\t\tpulumi.String(\"test-ext2\"),\n\t\t\t},\n\t\t\tCommonDomainNameServerIpLists: nutanix.VpcCommonDomainNameServerIpListArray{\n\t\t\t\t&nutanix.VpcCommonDomainNameServerIpListArgs{\n\t\t\t\t\tIp: pulumi.String(\"8.8.8.8\"),\n\t\t\t\t},\n\t\t\t\t&nutanix.VpcCommonDomainNameServerIpListArgs{\n\t\t\t\t\tIp: pulumi.String(\"8.8.8.9\"),\n\t\t\t\t},\n\t\t\t},\n\t\t\tExternallyRoutablePrefixLists: nutanix.VpcExternallyRoutablePrefixListArray{\n\t\t\t\t&nutanix.VpcExternallyRoutablePrefixListArgs{\n\t\t\t\t\tIp:           pulumi.String(\"192.43.0.0\"),\n\t\t\t\t\tPrefixLength: pulumi.Int(16),\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.nutanix.Vpc;\nimport com.pulumi.nutanix.VpcArgs;\nimport com.pulumi.nutanix.inputs.VpcCommonDomainNameServerIpListArgs;\nimport com.pulumi.nutanix.inputs.VpcExternallyRoutablePrefixListArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var vpc = new Vpc(\"vpc\", VpcArgs.builder()\n            .name(\"testtNew-1\")\n            .externalSubnetReferenceNames(            \n                \"test-Ext1\",\n                \"test-ext2\")\n            .commonDomainNameServerIpLists(            \n                VpcCommonDomainNameServerIpListArgs.builder()\n                    .ip(\"8.8.8.8\")\n                    .build(),\n                VpcCommonDomainNameServerIpListArgs.builder()\n                    .ip(\"8.8.8.9\")\n                    .build())\n            .externallyRoutablePrefixLists(VpcExternallyRoutablePrefixListArgs.builder()\n                .ip(\"192.43.0.0\")\n                .prefixLength(16)\n                .build())\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  vpc:\n    type: nutanix:Vpc\n    properties:\n      name: testtNew-1\n      externalSubnetReferenceNames:\n        - test-Ext1\n        - test-ext2\n      commonDomainNameServerIpLists:\n        - ip: 8.8.8.8\n        - ip: 8.8.8.9\n      externallyRoutablePrefixLists:\n        - ip: 192.43.0.0\n          prefixLength: 16\n```\n<!--End PulumiCodeChooser -->\n\n### vpc creation with external subnet uuid\n\n<!--Start PulumiCodeChooser -->\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as nutanix from \"@pierskarsenbarg/nutanix\";\n\nconst vpc = new nutanix.Vpc(\"vpc\", {\n    name: \"testtNew-1\",\n    externalSubnetReferenceUuids: [\"<subnet_uuid>\"],\n    commonDomainNameServerIpLists: [{\n        ip: \"8.8.8.8\",\n    }],\n    externallyRoutablePrefixLists: [\n        {\n            ip: \"192.43.0.0\",\n            prefixLength: 16,\n        },\n        {\n            ip: \"192.42.0.0\",\n            prefixLength: 16,\n        },\n    ],\n});\n```\n```python\nimport pulumi\nimport pulumi_nutanix as nutanix\n\nvpc = nutanix.Vpc(\"vpc\",\n    name=\"testtNew-1\",\n    external_subnet_reference_uuids=[\"<subnet_uuid>\"],\n    common_domain_name_server_ip_lists=[{\n        \"ip\": \"8.8.8.8\",\n    }],\n    externally_routable_prefix_lists=[\n        {\n            \"ip\": \"192.43.0.0\",\n            \"prefix_length\": 16,\n        },\n        {\n            \"ip\": \"192.42.0.0\",\n            \"prefix_length\": 16,\n        },\n    ])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Nutanix = PiersKarsenbarg.Nutanix;\n\nreturn await Deployment.RunAsync(() => \n{\n    var vpc = new Nutanix.Vpc(\"vpc\", new()\n    {\n        Name = \"testtNew-1\",\n        ExternalSubnetReferenceUuids = new[]\n        {\n            \"<subnet_uuid>\",\n        },\n        CommonDomainNameServerIpLists = new[]\n        {\n            new Nutanix.Inputs.VpcCommonDomainNameServerIpListArgs\n            {\n                Ip = \"8.8.8.8\",\n            },\n        },\n        ExternallyRoutablePrefixLists = new[]\n        {\n            new Nutanix.Inputs.VpcExternallyRoutablePrefixListArgs\n            {\n                Ip = \"192.43.0.0\",\n                PrefixLength = 16,\n            },\n            new Nutanix.Inputs.VpcExternallyRoutablePrefixListArgs\n            {\n                Ip = \"192.42.0.0\",\n                PrefixLength = 16,\n            },\n        },\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pierskarsenbarg/pulumi-nutanix/sdk/go/nutanix\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := nutanix.NewVpc(ctx, \"vpc\", &nutanix.VpcArgs{\n\t\t\tName: pulumi.String(\"testtNew-1\"),\n\t\t\tExternalSubnetReferenceUuids: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"<subnet_uuid>\"),\n\t\t\t},\n\t\t\tCommonDomainNameServerIpLists: nutanix.VpcCommonDomainNameServerIpListArray{\n\t\t\t\t&nutanix.VpcCommonDomainNameServerIpListArgs{\n\t\t\t\t\tIp: pulumi.String(\"8.8.8.8\"),\n\t\t\t\t},\n\t\t\t},\n\t\t\tExternallyRoutablePrefixLists: nutanix.VpcExternallyRoutablePrefixListArray{\n\t\t\t\t&nutanix.VpcExternallyRoutablePrefixListArgs{\n\t\t\t\t\tIp:           pulumi.String(\"192.43.0.0\"),\n\t\t\t\t\tPrefixLength: pulumi.Int(16),\n\t\t\t\t},\n\t\t\t\t&nutanix.VpcExternallyRoutablePrefixListArgs{\n\t\t\t\t\tIp:           pulumi.String(\"192.42.0.0\"),\n\t\t\t\t\tPrefixLength: pulumi.Int(16),\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.nutanix.Vpc;\nimport com.pulumi.nutanix.VpcArgs;\nimport com.pulumi.nutanix.inputs.VpcCommonDomainNameServerIpListArgs;\nimport com.pulumi.nutanix.inputs.VpcExternallyRoutablePrefixListArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var vpc = new Vpc(\"vpc\", VpcArgs.builder()\n            .name(\"testtNew-1\")\n            .externalSubnetReferenceUuids(\"<subnet_uuid>\")\n            .commonDomainNameServerIpLists(VpcCommonDomainNameServerIpListArgs.builder()\n                .ip(\"8.8.8.8\")\n                .build())\n            .externallyRoutablePrefixLists(            \n                VpcExternallyRoutablePrefixListArgs.builder()\n                    .ip(\"192.43.0.0\")\n                    .prefixLength(16)\n                    .build(),\n                VpcExternallyRoutablePrefixListArgs.builder()\n                    .ip(\"192.42.0.0\")\n                    .prefixLength(16)\n                    .build())\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  vpc:\n    type: nutanix:Vpc\n    properties:\n      name: testtNew-1\n      externalSubnetReferenceUuids:\n        - <subnet_uuid>\n      commonDomainNameServerIpLists:\n        - ip: 8.8.8.8\n      externallyRoutablePrefixLists:\n        - ip: 192.43.0.0\n          prefixLength: 16\n        - ip: 192.42.0.0\n          prefixLength: 16\n```\n<!--End PulumiCodeChooser -->\n",
      "properties": {
        "apiVersion": {
          "type": "string",
          "description": "The version of the API.\n"
        },
        "commonDomainNameServerIpLists": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FVpcCommonDomainNameServerIpList:VpcCommonDomainNameServerIpList"
          },
          "description": "List of domain name server IPs.\n"
        },
        "externalSubnetListStatuses": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FVpcExternalSubnetListStatus:VpcExternalSubnetListStatus"
          },
          "description": "Status of List of external subnets attached to this VPC\n"
        },
        "externalSubnetReferenceNames": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "List of external subnets name attached to this VPC. Should not be used with external_subnet_reference_uuid.\n"
        },
        "externalSubnetReferenceUuids": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "List of external subnets uuid attached to this VPC. Should not be used with external_subnet_reference_name.\n"
        },
        "externallyRoutablePrefixLists": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FVpcExternallyRoutablePrefixList:VpcExternallyRoutablePrefixList"
          },
          "description": "List Externally Routable IP Addresses. Required when external subnet with NoNAT is used.\n"
        },
        "metadata": {
          "type": "object",
          "additionalProperties": {
            "type": "string"
          },
          "description": "The vpc kind metadata.\n"
        },
        "name": {
          "type": "string",
          "description": "The name for the VPC.\n"
        }
      },
      "type": "object",
      "required": [
        "apiVersion",
        "commonDomainNameServerIpLists",
        "externalSubnetListStatuses",
        "externalSubnetReferenceUuids",
        "externallyRoutablePrefixLists",
        "metadata",
        "name"
      ],
      "inputProperties": {
        "apiVersion": {
          "type": "string",
          "description": "The version of the API.\n"
        },
        "commonDomainNameServerIpLists": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FVpcCommonDomainNameServerIpList:VpcCommonDomainNameServerIpList"
          },
          "description": "List of domain name server IPs.\n"
        },
        "externalSubnetReferenceNames": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "List of external subnets name attached to this VPC. Should not be used with external_subnet_reference_uuid.\n"
        },
        "externalSubnetReferenceUuids": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "description": "List of external subnets uuid attached to this VPC. Should not be used with external_subnet_reference_name.\n"
        },
        "externallyRoutablePrefixLists": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FVpcExternallyRoutablePrefixList:VpcExternallyRoutablePrefixList"
          },
          "description": "List Externally Routable IP Addresses. Required when external subnet with NoNAT is used.\n"
        },
        "name": {
          "type": "string",
          "description": "The name for the VPC.\n"
        }
      },
      "stateInputs": {
        "description": "Input properties used for looking up and filtering Vpc resources.\n",
        "properties": {
          "apiVersion": {
            "type": "string",
            "description": "The version of the API.\n"
          },
          "commonDomainNameServerIpLists": {
            "type": "array",
            "items": {
              "$ref": "#/types/nutanix:index%2FVpcCommonDomainNameServerIpList:VpcCommonDomainNameServerIpList"
            },
            "description": "List of domain name server IPs.\n"
          },
          "externalSubnetListStatuses": {
            "type": "array",
            "items": {
              "$ref": "#/types/nutanix:index%2FVpcExternalSubnetListStatus:VpcExternalSubnetListStatus"
            },
            "description": "Status of List of external subnets attached to this VPC\n"
          },
          "externalSubnetReferenceNames": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "description": "List of external subnets name attached to this VPC. Should not be used with external_subnet_reference_uuid.\n"
          },
          "externalSubnetReferenceUuids": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "description": "List of external subnets uuid attached to this VPC. Should not be used with external_subnet_reference_name.\n"
          },
          "externallyRoutablePrefixLists": {
            "type": "array",
            "items": {
              "$ref": "#/types/nutanix:index%2FVpcExternallyRoutablePrefixList:VpcExternallyRoutablePrefixList"
            },
            "description": "List Externally Routable IP Addresses. Required when external subnet with NoNAT is used.\n"
          },
          "metadata": {
            "type": "object",
            "additionalProperties": {
              "type": "string"
            },
            "description": "The vpc kind metadata.\n"
          },
          "name": {
            "type": "string",
            "description": "The name for the VPC.\n"
          }
        },
        "type": "object"
      }
    },
    "nutanix:index/vpcV2:VpcV2": {
      "description": "Provides Nutanix resource to create VPC.\n\n## Example\n\n<!--Start PulumiCodeChooser -->\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as nutanix from \"@pierskarsenbarg/nutanix\";\n\nconst vpc = new nutanix.VpcV2(\"vpc\", {\n    name: \"vpc-example\",\n    description: \"VPC for example\",\n    externalSubnets: [{\n        subnetReference: \"a8fe48c4-f0d3-49c7-a017-efc30dd8fb2b\",\n    }],\n});\n// creating VPC with external routable prefixes\nconst external_vpc_routable_vpc = new nutanix.VpcV2(\"external-vpc-routable-vpc\", {\n    name: \"tf-vpc-example\",\n    description: \"VPC \",\n    externalSubnets: [{\n        subnetReference: \"a8fe48c4-f0d3-49c7-a017-efc30dd8fb2b\",\n        externalIps: [\n            {\n                ipv4s: [{\n                    value: \"192.168.0.24\",\n                    prefixLength: 32,\n                }],\n            },\n            {\n                ipv4s: [{\n                    value: \"192.168.0.25\",\n                    prefixLength: 32,\n                }],\n            },\n        ],\n    }],\n    externallyRoutablePrefixes: [{\n        ipv4s: [{\n            ips: [{\n                value: \"172.30.0.0\",\n                prefixLength: 32,\n            }],\n            prefixLength: 16,\n        }],\n    }],\n});\n// creating VPC with transit type\nconst transit_vpc = new nutanix.VpcV2(\"transit-vpc\", {\n    name: \"vpc-transit\",\n    description: \"VPC for transit type\",\n    externalSubnets: [{\n        subnetReference: \"a8fe48c4-f0d3-49c7-a017-efc30dd8fb2b\",\n    }],\n    vpcType: \"TRANSIT\",\n});\n```\n```python\nimport pulumi\nimport pulumi_nutanix as nutanix\n\nvpc = nutanix.VpcV2(\"vpc\",\n    name=\"vpc-example\",\n    description=\"VPC for example\",\n    external_subnets=[{\n        \"subnet_reference\": \"a8fe48c4-f0d3-49c7-a017-efc30dd8fb2b\",\n    }])\n# creating VPC with external routable prefixes\nexternal_vpc_routable_vpc = nutanix.VpcV2(\"external-vpc-routable-vpc\",\n    name=\"tf-vpc-example\",\n    description=\"VPC \",\n    external_subnets=[{\n        \"subnet_reference\": \"a8fe48c4-f0d3-49c7-a017-efc30dd8fb2b\",\n        \"external_ips\": [\n            {\n                \"ipv4s\": [{\n                    \"value\": \"192.168.0.24\",\n                    \"prefix_length\": 32,\n                }],\n            },\n            {\n                \"ipv4s\": [{\n                    \"value\": \"192.168.0.25\",\n                    \"prefix_length\": 32,\n                }],\n            },\n        ],\n    }],\n    externally_routable_prefixes=[{\n        \"ipv4s\": [{\n            \"ips\": [{\n                \"value\": \"172.30.0.0\",\n                \"prefix_length\": 32,\n            }],\n            \"prefix_length\": 16,\n        }],\n    }])\n# creating VPC with transit type\ntransit_vpc = nutanix.VpcV2(\"transit-vpc\",\n    name=\"vpc-transit\",\n    description=\"VPC for transit type\",\n    external_subnets=[{\n        \"subnet_reference\": \"a8fe48c4-f0d3-49c7-a017-efc30dd8fb2b\",\n    }],\n    vpc_type=\"TRANSIT\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Nutanix = PiersKarsenbarg.Nutanix;\n\nreturn await Deployment.RunAsync(() => \n{\n    var vpc = new Nutanix.VpcV2(\"vpc\", new()\n    {\n        Name = \"vpc-example\",\n        Description = \"VPC for example\",\n        ExternalSubnets = new[]\n        {\n            new Nutanix.Inputs.VpcV2ExternalSubnetArgs\n            {\n                SubnetReference = \"a8fe48c4-f0d3-49c7-a017-efc30dd8fb2b\",\n            },\n        },\n    });\n\n    // creating VPC with external routable prefixes\n    var external_vpc_routable_vpc = new Nutanix.VpcV2(\"external-vpc-routable-vpc\", new()\n    {\n        Name = \"tf-vpc-example\",\n        Description = \"VPC \",\n        ExternalSubnets = new[]\n        {\n            new Nutanix.Inputs.VpcV2ExternalSubnetArgs\n            {\n                SubnetReference = \"a8fe48c4-f0d3-49c7-a017-efc30dd8fb2b\",\n                ExternalIps = new[]\n                {\n                    new Nutanix.Inputs.VpcV2ExternalSubnetExternalIpArgs\n                    {\n                        Ipv4s = new[]\n                        {\n                            new Nutanix.Inputs.VpcV2ExternalSubnetExternalIpIpv4Args\n                            {\n                                Value = \"192.168.0.24\",\n                                PrefixLength = 32,\n                            },\n                        },\n                    },\n                    new Nutanix.Inputs.VpcV2ExternalSubnetExternalIpArgs\n                    {\n                        Ipv4s = new[]\n                        {\n                            new Nutanix.Inputs.VpcV2ExternalSubnetExternalIpIpv4Args\n                            {\n                                Value = \"192.168.0.25\",\n                                PrefixLength = 32,\n                            },\n                        },\n                    },\n                },\n            },\n        },\n        ExternallyRoutablePrefixes = new[]\n        {\n            new Nutanix.Inputs.VpcV2ExternallyRoutablePrefixArgs\n            {\n                Ipv4s = new[]\n                {\n                    new Nutanix.Inputs.VpcV2ExternallyRoutablePrefixIpv4Args\n                    {\n                        Ips = new[]\n                        {\n                            new Nutanix.Inputs.VpcV2ExternallyRoutablePrefixIpv4IpArgs\n                            {\n                                Value = \"172.30.0.0\",\n                                PrefixLength = 32,\n                            },\n                        },\n                        PrefixLength = 16,\n                    },\n                },\n            },\n        },\n    });\n\n    // creating VPC with transit type\n    var transit_vpc = new Nutanix.VpcV2(\"transit-vpc\", new()\n    {\n        Name = \"vpc-transit\",\n        Description = \"VPC for transit type\",\n        ExternalSubnets = new[]\n        {\n            new Nutanix.Inputs.VpcV2ExternalSubnetArgs\n            {\n                SubnetReference = \"a8fe48c4-f0d3-49c7-a017-efc30dd8fb2b\",\n            },\n        },\n        VpcType = \"TRANSIT\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pierskarsenbarg/pulumi-nutanix/sdk/go/nutanix\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := nutanix.NewVpcV2(ctx, \"vpc\", &nutanix.VpcV2Args{\n\t\t\tName:        pulumi.String(\"vpc-example\"),\n\t\t\tDescription: pulumi.String(\"VPC for example\"),\n\t\t\tExternalSubnets: nutanix.VpcV2ExternalSubnetArray{\n\t\t\t\t&nutanix.VpcV2ExternalSubnetArgs{\n\t\t\t\t\tSubnetReference: pulumi.String(\"a8fe48c4-f0d3-49c7-a017-efc30dd8fb2b\"),\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t// creating VPC with external routable prefixes\n\t\t_, err = nutanix.NewVpcV2(ctx, \"external-vpc-routable-vpc\", &nutanix.VpcV2Args{\n\t\t\tName:        pulumi.String(\"tf-vpc-example\"),\n\t\t\tDescription: pulumi.String(\"VPC \"),\n\t\t\tExternalSubnets: nutanix.VpcV2ExternalSubnetArray{\n\t\t\t\t&nutanix.VpcV2ExternalSubnetArgs{\n\t\t\t\t\tSubnetReference: pulumi.String(\"a8fe48c4-f0d3-49c7-a017-efc30dd8fb2b\"),\n\t\t\t\t\tExternalIps: nutanix.VpcV2ExternalSubnetExternalIpArray{\n\t\t\t\t\t\t&nutanix.VpcV2ExternalSubnetExternalIpArgs{\n\t\t\t\t\t\t\tIpv4s: nutanix.VpcV2ExternalSubnetExternalIpIpv4Array{\n\t\t\t\t\t\t\t\t&nutanix.VpcV2ExternalSubnetExternalIpIpv4Args{\n\t\t\t\t\t\t\t\t\tValue:        pulumi.String(\"192.168.0.24\"),\n\t\t\t\t\t\t\t\t\tPrefixLength: pulumi.Int(32),\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t},\n\t\t\t\t\t\t&nutanix.VpcV2ExternalSubnetExternalIpArgs{\n\t\t\t\t\t\t\tIpv4s: nutanix.VpcV2ExternalSubnetExternalIpIpv4Array{\n\t\t\t\t\t\t\t\t&nutanix.VpcV2ExternalSubnetExternalIpIpv4Args{\n\t\t\t\t\t\t\t\t\tValue:        pulumi.String(\"192.168.0.25\"),\n\t\t\t\t\t\t\t\t\tPrefixLength: pulumi.Int(32),\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t\tExternallyRoutablePrefixes: nutanix.VpcV2ExternallyRoutablePrefixArray{\n\t\t\t\t&nutanix.VpcV2ExternallyRoutablePrefixArgs{\n\t\t\t\t\tIpv4s: nutanix.VpcV2ExternallyRoutablePrefixIpv4Array{\n\t\t\t\t\t\t&nutanix.VpcV2ExternallyRoutablePrefixIpv4Args{\n\t\t\t\t\t\t\tIps: nutanix.VpcV2ExternallyRoutablePrefixIpv4IpArray{\n\t\t\t\t\t\t\t\t&nutanix.VpcV2ExternallyRoutablePrefixIpv4IpArgs{\n\t\t\t\t\t\t\t\t\tValue:        pulumi.String(\"172.30.0.0\"),\n\t\t\t\t\t\t\t\t\tPrefixLength: pulumi.Int(32),\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\tPrefixLength: pulumi.Int(16),\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t// creating VPC with transit type\n\t\t_, err = nutanix.NewVpcV2(ctx, \"transit-vpc\", &nutanix.VpcV2Args{\n\t\t\tName:        pulumi.String(\"vpc-transit\"),\n\t\t\tDescription: pulumi.String(\"VPC for transit type\"),\n\t\t\tExternalSubnets: nutanix.VpcV2ExternalSubnetArray{\n\t\t\t\t&nutanix.VpcV2ExternalSubnetArgs{\n\t\t\t\t\tSubnetReference: pulumi.String(\"a8fe48c4-f0d3-49c7-a017-efc30dd8fb2b\"),\n\t\t\t\t},\n\t\t\t},\n\t\t\tVpcType: pulumi.String(\"TRANSIT\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.nutanix.VpcV2;\nimport com.pulumi.nutanix.VpcV2Args;\nimport com.pulumi.nutanix.inputs.VpcV2ExternalSubnetArgs;\nimport com.pulumi.nutanix.inputs.VpcV2ExternallyRoutablePrefixArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var vpc = new VpcV2(\"vpc\", VpcV2Args.builder()\n            .name(\"vpc-example\")\n            .description(\"VPC for example\")\n            .externalSubnets(VpcV2ExternalSubnetArgs.builder()\n                .subnetReference(\"a8fe48c4-f0d3-49c7-a017-efc30dd8fb2b\")\n                .build())\n            .build());\n\n        // creating VPC with external routable prefixes\n        var external_vpc_routable_vpc = new VpcV2(\"external-vpc-routable-vpc\", VpcV2Args.builder()\n            .name(\"tf-vpc-example\")\n            .description(\"VPC \")\n            .externalSubnets(VpcV2ExternalSubnetArgs.builder()\n                .subnetReference(\"a8fe48c4-f0d3-49c7-a017-efc30dd8fb2b\")\n                .externalIps(                \n                    VpcV2ExternalSubnetExternalIpArgs.builder()\n                        .ipv4s(VpcV2ExternalSubnetExternalIpIpv4Args.builder()\n                            .value(\"192.168.0.24\")\n                            .prefixLength(32)\n                            .build())\n                        .build(),\n                    VpcV2ExternalSubnetExternalIpArgs.builder()\n                        .ipv4s(VpcV2ExternalSubnetExternalIpIpv4Args.builder()\n                            .value(\"192.168.0.25\")\n                            .prefixLength(32)\n                            .build())\n                        .build())\n                .build())\n            .externallyRoutablePrefixes(VpcV2ExternallyRoutablePrefixArgs.builder()\n                .ipv4s(VpcV2ExternallyRoutablePrefixIpv4Args.builder()\n                    .ips(VpcV2ExternallyRoutablePrefixIpv4IpArgs.builder()\n                        .value(\"172.30.0.0\")\n                        .prefixLength(32)\n                        .build())\n                    .prefixLength(16)\n                    .build())\n                .build())\n            .build());\n\n        // creating VPC with transit type\n        var transit_vpc = new VpcV2(\"transit-vpc\", VpcV2Args.builder()\n            .name(\"vpc-transit\")\n            .description(\"VPC for transit type\")\n            .externalSubnets(VpcV2ExternalSubnetArgs.builder()\n                .subnetReference(\"a8fe48c4-f0d3-49c7-a017-efc30dd8fb2b\")\n                .build())\n            .vpcType(\"TRANSIT\")\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  vpc:\n    type: nutanix:VpcV2\n    properties:\n      name: vpc-example\n      description: VPC for example\n      externalSubnets:\n        - subnetReference: a8fe48c4-f0d3-49c7-a017-efc30dd8fb2b\n  # creating VPC with external routable prefixes\n  external-vpc-routable-vpc:\n    type: nutanix:VpcV2\n    properties:\n      name: tf-vpc-example\n      description: 'VPC '\n      externalSubnets:\n        - subnetReference: a8fe48c4-f0d3-49c7-a017-efc30dd8fb2b\n          externalIps:\n            - ipv4s:\n                - value: 192.168.0.24\n                  prefixLength: 32\n            - ipv4s:\n                - value: 192.168.0.25\n                  prefixLength: 32\n      externallyRoutablePrefixes:\n        - ipv4s:\n            - ips:\n                - value: 172.30.0.0\n                  prefixLength: 32\n              prefixLength: 16\n  # creating VPC with transit type\n  transit-vpc:\n    type: nutanix:VpcV2\n    properties:\n      name: vpc-transit\n      description: VPC for transit type\n      externalSubnets:\n        - subnetReference: a8fe48c4-f0d3-49c7-a017-efc30dd8fb2b\n      vpcType: TRANSIT\n```\n<!--End PulumiCodeChooser -->\n",
      "properties": {
        "commonDhcpOptions": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FVpcV2CommonDhcpOption:VpcV2CommonDhcpOption"
          },
          "description": "List of DHCP options to be configured.\n"
        },
        "description": {
          "type": "string",
          "description": "Description of the VPC.\n"
        },
        "extId": {
          "type": "string",
          "description": "the vpc uuid.\n"
        },
        "externalRoutingDomainReference": {
          "type": "string",
          "description": "External routing domain associated with this route table\n"
        },
        "externalSubnets": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FVpcV2ExternalSubnet:VpcV2ExternalSubnet"
          },
          "description": "List of external subnets that the VPC is attached to.\n"
        },
        "externallyRoutablePrefixes": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FVpcV2ExternallyRoutablePrefix:VpcV2ExternallyRoutablePrefix"
          },
          "description": "CIDR blocks from the VPC which can talk externally without performing NAT. This is applicable when connecting to external subnets which have disabled NAT.\n"
        },
        "links": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FVpcV2Link:VpcV2Link"
          },
          "description": "A HATEOAS style link for the response. Each link contains a user-friendly name identifying the link and an address for retrieving the particular resource.\n"
        },
        "metadatas": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FVpcV2Metadata:VpcV2Metadata"
          },
          "description": "The vpc kind metadata.\n"
        },
        "name": {
          "type": "string",
          "description": "Name of the VPC.\n"
        },
        "snatIps": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FVpcV2SnatIp:VpcV2SnatIp"
          }
        },
        "tenantId": {
          "type": "string",
          "description": "A globally unique identifier that represents the tenant that owns this entity.\n"
        },
        "vpcType": {
          "type": "string",
          "description": "Type of VPC. Acceptable values are \"REGULAR\" , \"TRANSIT\".\n"
        }
      },
      "type": "object",
      "required": [
        "commonDhcpOptions",
        "extId",
        "externalRoutingDomainReference",
        "externalSubnets",
        "externallyRoutablePrefixes",
        "links",
        "metadatas",
        "name",
        "snatIps",
        "tenantId"
      ],
      "inputProperties": {
        "commonDhcpOptions": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FVpcV2CommonDhcpOption:VpcV2CommonDhcpOption"
          },
          "description": "List of DHCP options to be configured.\n"
        },
        "description": {
          "type": "string",
          "description": "Description of the VPC.\n"
        },
        "externalRoutingDomainReference": {
          "type": "string",
          "description": "External routing domain associated with this route table\n"
        },
        "externalSubnets": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FVpcV2ExternalSubnet:VpcV2ExternalSubnet"
          },
          "description": "List of external subnets that the VPC is attached to.\n"
        },
        "externallyRoutablePrefixes": {
          "type": "array",
          "items": {
            "$ref": "#/types/nutanix:index%2FVpcV2ExternallyRoutablePrefix:VpcV2ExternallyRoutablePrefix"
          },
          "description": "CIDR blocks from the VPC which can talk externally without performing NAT. This is applicable when connecting to external subnets which have disabled NAT.\n"
        },
        "name": {
          "type": "string",
          "description": "Name of the VPC.\n"
        },
        "vpcType": {
          "type": "string",
          "description": "Type of VPC. Acceptable values are \"REGULAR\" , \"TRANSIT\".\n"
        }
      },
      "stateInputs": {
        "description": "Input properties used for looking up and filtering VpcV2 resources.\n",
        "properties": {
          "commonDhcpOptions": {
            "type": "array",
            "items": {
              "$ref": "#/types/nutanix:index%2FVpcV2CommonDhcpOption:VpcV2CommonDhcpOption"
            },
            "description": "List of DHCP options to be configured.\n"
          },
          "description": {
            "type": "string",
            "description": "Description of the VPC.\n"
          },
          "extId": {
            "type": "string",
            "description": "the vpc uuid.\n"
          },
          "externalRoutingDomainReference": {
            "type": "string",
            "description": "External routing domain associated with this route table\n"
          },
          "externalSubnets": {
            "type": "array",
            "items": {
              "$ref": "#/types/nutanix:index%2FVpcV2ExternalSubnet:VpcV2ExternalSubnet"
            },
            "description": "List of external subnets that the VPC is attached to.\n"
          },
          "externallyRoutablePrefixes": {
            "type": "array",
            "items": {
              "$ref": "#/types/nutanix:index%2FVpcV2ExternallyRoutablePrefix:VpcV2ExternallyRoutablePrefix"
            },
            "description": "CIDR blocks from the VPC which can talk externally without performing NAT. This is applicable when connecting to external subnets which have disabled NAT.\n"
          },
          "links": {
            "type": "array",
            "items": {
              "$ref": "#/types/nutanix:index%2FVpcV2Link:VpcV2Link"
            },
            "description": "A HATEOAS style link for the response. Each link contains a user-friendly name identifying the link and an address for retrieving the particular resource.\n"
          },
          "metadatas": {
            "type": "array",
            "items": {
              "$ref": "#/types/nutanix:index%2FVpcV2Metadata:VpcV2Metadata"
            },
            "description": "The vpc kind metadata.\n"
          },
          "name": {
            "type": "string",
            "description": "Name of the VPC.\n"
          },
          "snatIps": {
            "type": "array",
            "items": {
              "$ref": "#/types/nutanix:index%2FVpcV2SnatIp:VpcV2SnatIp"
            }
          },
          "tenantId": {
            "type": "string",
            "description": "A globally unique identifier that represents the tenant that owns this entity.\n"
          },
          "vpcType": {
            "type": "string",
            "description": "Type of VPC. Acceptable values are \"REGULAR\" , \"TRANSIT\".\n"
          }
        },
        "type": "object"
      }
    }
  },
  "functions": {
    "nutanix:index/getAccessControlPolicies:getAccessControlPolicies": {
      "description": "Describes a list of access control policies.\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as nutanix from \"@pierskarsenbarg/nutanix\";\n\nconst test = nutanix.getAccessControlPolicies({});\n```\n```python\nimport pulumi\nimport pulumi_nutanix as nutanix\n\ntest = nutanix.get_access_control_policies()\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Nutanix = Pulumi.Nutanix;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var test = Nutanix.GetAccessControlPolicies.Invoke();\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pierskarsenbarg/pulumi-nutanix/sdk/go/nutanix\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := nutanix.GetAccessControlPolicies(ctx, \u0026nutanix.GetAccessControlPoliciesArgs{}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.nutanix.NutanixFunctions;\nimport com.pulumi.nutanix.inputs.GetAccessControlPoliciesArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var test = NutanixFunctions.getAccessControlPolicies(GetAccessControlPoliciesArgs.builder()\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  test:\n    fn::invoke:\n      function: nutanix:getAccessControlPolicies\n      arguments: {}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
      "inputs": {
        "description": "A collection of arguments for invoking getAccessControlPolicies.\n",
        "properties": {
          "metadatas": {
            "type": "array",
            "items": {
              "$ref": "#/types/nutanix:index%2FgetAccessControlPoliciesMetadata:getAccessControlPoliciesMetadata"
            },
            "description": "- The Access Control Policy kind metadata.\n"
          }
        },
        "type": "object"
      },
      "outputs": {
        "description": "A collection of values returned by getAccessControlPolicies.\n",
        "properties": {
          "apiVersion": {
            "description": "The version of the API.\n",
            "type": "string"
          },
          "entities": {
            "description": "List of Access Control Policies\n",
            "items": {
              "$ref": "#/types/nutanix:index%2FgetAccessControlPoliciesEntity:getAccessControlPoliciesEntity"
            },
            "type": "array"
          },
          "id": {
            "description": "The provider-assigned unique ID for this managed resource.",
            "type": "string"
          },
          "metadatas": {
            "description": "- The Access Control Policy kind metadata.\n",
            "items": {
              "$ref": "#/types/nutanix:index%2FgetAccessControlPoliciesMetadata:getAccessControlPoliciesMetadata"
            },
            "type": "array"
          }
        },
        "required": [
          "apiVersion",
          "entities",
          "id",
          "metadatas"
        ],
        "type": "object"
      }
    },
    "nutanix:index/getAccessControlPolicy:getAccessControlPolicy": {
      "description": "Describes an Access Control Policy.\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as nutanix from \"@pierskarsenbarg/nutanix\";\n\nconst testAccessControlPolicy = new nutanix.AccessControlPolicy(\"test\", {\n    name: \"NAME OF ACCESS CONTROL POLICY\",\n    description: \"DESCRIPTION OF THE ACCESS CONTROL POLICY\",\n    roleReference: {\n        kind: \"role\",\n        uuid: \"UUID of role\",\n    },\n});\nconst test = nutanix.getAccessControlPolicyOutput({\n    accessControlPolicyId: testAccessControlPolicy.id,\n});\n```\n```python\nimport pulumi\nimport pulumi_nutanix as nutanix\n\ntest_access_control_policy = nutanix.AccessControlPolicy(\"test\",\n    name=\"NAME OF ACCESS CONTROL POLICY\",\n    description=\"DESCRIPTION OF THE ACCESS CONTROL POLICY\",\n    role_reference={\n        \"kind\": \"role\",\n        \"uuid\": \"UUID of role\",\n    })\ntest = nutanix.get_access_control_policy_output(access_control_policy_id=test_access_control_policy.id)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Nutanix = PiersKarsenbarg.Nutanix;\nusing Nutanix = Pulumi.Nutanix;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var testAccessControlPolicy = new Nutanix.AccessControlPolicy(\"test\", new()\n    {\n        Name = \"NAME OF ACCESS CONTROL POLICY\",\n        Description = \"DESCRIPTION OF THE ACCESS CONTROL POLICY\",\n        RoleReference = new Nutanix.Inputs.AccessControlPolicyRoleReferenceArgs\n        {\n            Kind = \"role\",\n            Uuid = \"UUID of role\",\n        },\n    });\n\n    var test = Nutanix.GetAccessControlPolicy.Invoke(new()\n    {\n        AccessControlPolicyId = testAccessControlPolicy.Id,\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pierskarsenbarg/pulumi-nutanix/sdk/go/nutanix\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\ttestAccessControlPolicy, err := nutanix.NewAccessControlPolicy(ctx, \"test\", \u0026nutanix.AccessControlPolicyArgs{\n\t\t\tName:        pulumi.String(\"NAME OF ACCESS CONTROL POLICY\"),\n\t\t\tDescription: pulumi.String(\"DESCRIPTION OF THE ACCESS CONTROL POLICY\"),\n\t\t\tRoleReference: \u0026nutanix.AccessControlPolicyRoleReferenceArgs{\n\t\t\t\tKind: pulumi.String(\"role\"),\n\t\t\t\tUuid: pulumi.String(\"UUID of role\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_ = nutanix.LookupAccessControlPolicyOutput(ctx, nutanix.GetAccessControlPolicyOutputArgs{\n\t\t\tAccessControlPolicyId: testAccessControlPolicy.ID(),\n\t\t}, nil)\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.nutanix.AccessControlPolicy;\nimport com.pulumi.nutanix.AccessControlPolicyArgs;\nimport com.pulumi.nutanix.inputs.AccessControlPolicyRoleReferenceArgs;\nimport com.pulumi.nutanix.NutanixFunctions;\nimport com.pulumi.nutanix.inputs.GetAccessControlPolicyArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var testAccessControlPolicy = new AccessControlPolicy(\"testAccessControlPolicy\", AccessControlPolicyArgs.builder()\n            .name(\"NAME OF ACCESS CONTROL POLICY\")\n            .description(\"DESCRIPTION OF THE ACCESS CONTROL POLICY\")\n            .roleReference(AccessControlPolicyRoleReferenceArgs.builder()\n                .kind(\"role\")\n                .uuid(\"UUID of role\")\n                .build())\n            .build());\n\n        final var test = NutanixFunctions.getAccessControlPolicy(GetAccessControlPolicyArgs.builder()\n            .accessControlPolicyId(testAccessControlPolicy.id())\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  testAccessControlPolicy:\n    type: nutanix:AccessControlPolicy\n    name: test\n    properties:\n      name: NAME OF ACCESS CONTROL POLICY\n      description: DESCRIPTION OF THE ACCESS CONTROL POLICY\n      roleReference:\n        kind: role\n        uuid: UUID of role\nvariables:\n  test:\n    fn::invoke:\n      function: nutanix:getAccessControlPolicy\n      arguments:\n        accessControlPolicyId: ${testAccessControlPolicy.id}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
      "inputs": {
        "description": "A collection of arguments for invoking getAccessControlPolicy.\n",
        "properties": {
          "accessControlPolicyId": {
            "type": "string",
            "description": "- (Required) The UUID of an access control policy.\n"
          },
          "accessControlPolicyName": {
            "type": "string"
          },
          "categories": {
            "type": "array",
            "items": {
              "$ref": "#/types/nutanix:index%2FgetAccessControlPolicyCategory:getAccessControlPolicyCategory"
            },
            "description": "- The category values represented as a dictionary of key \u003e list of values.\n"
          }
        },
        "type": "object"
      },
      "outputs": {
        "description": "A collection of values returned by getAccessControlPolicy.\n",
        "properties": {
          "accessControlPolicyId": {
            "type": "string"
          },
          "accessControlPolicyName": {
            "type": "string"
          },
          "apiVersion": {
            "description": "The version of the API.\n",
            "type": "string"
          },
          "categories": {
            "description": "- The category values represented as a dictionary of key \u003e list of values.\n",
            "items": {
              "$ref": "#/types/nutanix:index%2FgetAccessControlPolicyCategory:getAccessControlPolicyCategory"
            },
            "type": "array"
          },
          "contextFilterLists": {
            "items": {
              "$ref": "#/types/nutanix:index%2FgetAccessControlPolicyContextFilterList:getAccessControlPolicyContextFilterList"
            },
            "type": "array"
          },
          "description": {
            "description": "- The description of the Access Control Policy.\n",
            "type": "string"
          },
          "id": {
            "description": "The provider-assigned unique ID for this managed resource.",
            "type": "string"
          },
          "metadata": {
            "additionalProperties": {
              "type": "string"
            },
            "description": "- The Access Control Policy kind metadata.\n",
            "type": "object"
          },
          "name": {
            "description": "- the name(Optional).\n",
            "type": "string"
          },
          "ownerReference": {
            "additionalProperties": {
              "type": "string"
            },
            "description": "- The reference to a user.\n",
            "type": "object"
          },
          "projectReference": {
            "additionalProperties": {
              "type": "string"
            },
            "description": "- The reference to a project.\n",
            "type": "object"
          },
          "roleReferences": {
            "description": "- The reference to a role.\n",
            "items": {
              "$ref": "#/types/nutanix:index%2FgetAccessControlPolicyRoleReference:getAccessControlPolicyRoleReference"
            },
            "type": "array"
          },
          "state": {
            "description": "- The state of the Access Control Policy.\n",
            "type": "string"
          },
          "userGroupReferenceLists": {
            "description": "- The User group(s) being assigned a given role.\n",
            "items": {
              "$ref": "#/types/nutanix:index%2FgetAccessControlPolicyUserGroupReferenceList:getAccessControlPolicyUserGroupReferenceList"
            },
            "type": "array"
          },
          "userReferenceLists": {
            "description": "- The User(s) being assigned a given role.\n",
            "items": {
              "$ref": "#/types/nutanix:index%2FgetAccessControlPolicyUserReferenceList:getAccessControlPolicyUserReferenceList"
            },
            "type": "array"
          }
        },
        "required": [
          "apiVersion",
          "categories",
          "contextFilterLists",
          "description",
          "id",
          "metadata",
          "name",
          "ownerReference",
          "projectReference",
          "roleReferences",
          "state",
          "userGroupReferenceLists",
          "userReferenceLists"
        ],
        "type": "object"
      }
    },
    "nutanix:index/getAddressGroup:getAddressGroup": {
      "description": "Provides a datasource to retrieve a address group.\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as nutanix from \"@pierskarsenbarg/nutanix\";\n\nconst testAddress = new nutanix.AddressGroup(\"test_address\", {\n    name: \"test\",\n    description: \"test address groups resource\",\n    ipAddressBlockLists: [{\n        ip: \"10.0.0.0\",\n        prefixLength: 24,\n    }],\n});\nconst addrGroup = nutanix.getAddressGroupOutput({\n    uuid: testAddress.id,\n});\n```\n```python\nimport pulumi\nimport pulumi_nutanix as nutanix\n\ntest_address = nutanix.AddressGroup(\"test_address\",\n    name=\"test\",\n    description=\"test address groups resource\",\n    ip_address_block_lists=[{\n        \"ip\": \"10.0.0.0\",\n        \"prefix_length\": 24,\n    }])\naddr_group = nutanix.get_address_group_output(uuid=test_address.id)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Nutanix = PiersKarsenbarg.Nutanix;\nusing Nutanix = Pulumi.Nutanix;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var testAddress = new Nutanix.AddressGroup(\"test_address\", new()\n    {\n        Name = \"test\",\n        Description = \"test address groups resource\",\n        IpAddressBlockLists = new[]\n        {\n            new Nutanix.Inputs.AddressGroupIpAddressBlockListArgs\n            {\n                Ip = \"10.0.0.0\",\n                PrefixLength = 24,\n            },\n        },\n    });\n\n    var addrGroup = Nutanix.GetAddressGroup.Invoke(new()\n    {\n        Uuid = testAddress.Id,\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pierskarsenbarg/pulumi-nutanix/sdk/go/nutanix\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\ttestAddress, err := nutanix.NewAddressGroup(ctx, \"test_address\", \u0026nutanix.AddressGroupArgs{\n\t\t\tName:        pulumi.String(\"test\"),\n\t\t\tDescription: pulumi.String(\"test address groups resource\"),\n\t\t\tIpAddressBlockLists: nutanix.AddressGroupIpAddressBlockListArray{\n\t\t\t\t\u0026nutanix.AddressGroupIpAddressBlockListArgs{\n\t\t\t\t\tIp:           pulumi.String(\"10.0.0.0\"),\n\t\t\t\t\tPrefixLength: pulumi.Int(24),\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_ = nutanix.LookupAddressGroupOutput(ctx, nutanix.GetAddressGroupOutputArgs{\n\t\t\tUuid: testAddress.ID(),\n\t\t}, nil)\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.nutanix.AddressGroup;\nimport com.pulumi.nutanix.AddressGroupArgs;\nimport com.pulumi.nutanix.inputs.AddressGroupIpAddressBlockListArgs;\nimport com.pulumi.nutanix.NutanixFunctions;\nimport com.pulumi.nutanix.inputs.GetAddressGroupArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var testAddress = new AddressGroup(\"testAddress\", AddressGroupArgs.builder()\n            .name(\"test\")\n            .description(\"test address groups resource\")\n            .ipAddressBlockLists(AddressGroupIpAddressBlockListArgs.builder()\n                .ip(\"10.0.0.0\")\n                .prefixLength(24)\n                .build())\n            .build());\n\n        final var addrGroup = NutanixFunctions.getAddressGroup(GetAddressGroupArgs.builder()\n            .uuid(testAddress.id())\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  testAddress:\n    type: nutanix:AddressGroup\n    name: test_address\n    properties:\n      name: test\n      description: test address groups resource\n      ipAddressBlockLists:\n        - ip: 10.0.0.0\n          prefixLength: 24\nvariables:\n  addrGroup:\n    fn::invoke:\n      function: nutanix:getAddressGroup\n      arguments:\n        uuid: ${testAddress.id}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
      "inputs": {
        "description": "A collection of arguments for invoking getAddressGroup.\n",
        "properties": {
          "uuid": {
            "type": "string",
            "description": "- (Required) UUID of the address group\n"
          }
        },
        "type": "object",
        "required": [
          "uuid"
        ]
      },
      "outputs": {
        "description": "A collection of values returned by getAddressGroup.\n",
        "properties": {
          "addressGroupString": {
            "description": "- (ReadOnly) Address Group string\n",
            "type": "string"
          },
          "description": {
            "description": "- (ReadOnly) Description of the address group\n",
            "type": "string"
          },
          "id": {
            "description": "The provider-assigned unique ID for this managed resource.",
            "type": "string"
          },
          "ipAddressBlockLists": {
            "description": "- (ReadOnly) list of IP address blocks with their prefix length\n",
            "items": {
              "$ref": "#/types/nutanix:index%2FgetAddressGroupIpAddressBlockList:getAddressGroupIpAddressBlockList"
            },
            "type": "array"
          },
          "name": {
            "description": "- (ReadOnly) Name of the address group\n",
            "type": "string"
          },
          "uuid": {
            "description": "- (Required) UUID of the address group\n",
            "type": "string"
          }
        },
        "required": [
          "addressGroupString",
          "description",
          "id",
          "ipAddressBlockLists",
          "name",
          "uuid"
        ],
        "type": "object"
      }
    },
    "nutanix:index/getAddressGroupV2:getAddressGroupV2": {
      "description": "Get an Address Group by ExtID\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as nutanix from \"@pierskarsenbarg/nutanix\";\n\nconst get_addr_group = nutanix.getAddressGroupV2({\n    extId: \"0005b3b0-0b3b-4b3b-8b3b-0b3b3b3b3b3b\",\n});\n```\n```python\nimport pulumi\nimport pulumi_nutanix as nutanix\n\nget_addr_group = nutanix.get_address_group_v2(ext_id=\"0005b3b0-0b3b-4b3b-8b3b-0b3b3b3b3b3b\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Nutanix = Pulumi.Nutanix;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var get_addr_group = Nutanix.GetAddressGroupV2.Invoke(new()\n    {\n        ExtId = \"0005b3b0-0b3b-4b3b-8b3b-0b3b3b3b3b3b\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pierskarsenbarg/pulumi-nutanix/sdk/go/nutanix\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := nutanix.GetAddressGroupV2(ctx, \u0026nutanix.GetAddressGroupV2Args{\n\t\t\tExtId: \"0005b3b0-0b3b-4b3b-8b3b-0b3b3b3b3b3b\",\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.nutanix.NutanixFunctions;\nimport com.pulumi.nutanix.inputs.GetAddressGroupV2Args;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var get-addr-group = NutanixFunctions.getAddressGroupV2(GetAddressGroupV2Args.builder()\n            .extId(\"0005b3b0-0b3b-4b3b-8b3b-0b3b3b3b3b3b\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  get-addr-group:\n    fn::invoke:\n      function: nutanix:getAddressGroupV2\n      arguments:\n        extId: 0005b3b0-0b3b-4b3b-8b3b-0b3b3b3b3b3b\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
      "inputs": {
        "description": "A collection of arguments for invoking getAddressGroupV2.\n",
        "properties": {
          "extId": {
            "type": "string",
            "description": "Address group UUID.\n"
          },
          "ipv4Addresses": {
            "type": "array",
            "items": {
              "$ref": "#/types/nutanix:index%2FgetAddressGroupV2Ipv4Address:getAddressGroupV2Ipv4Address"
            },
            "description": "List of CIDR blocks in the Address Group.\n"
          }
        },
        "type": "object",
        "required": [
          "extId"
        ]
      },
      "outputs": {
        "description": "A collection of values returned by getAddressGroupV2.\n",
        "properties": {
          "createdBy": {
            "description": "created by.\n",
            "type": "string"
          },
          "description": {
            "description": "A user defined annotation for an Address Group.\n",
            "type": "string"
          },
          "extId": {
            "type": "string"
          },
          "id": {
            "description": "The provider-assigned unique ID for this managed resource.",
            "type": "string"
          },
          "ipRanges": {
            "description": "List of IP range containing start and end IP\n",
            "items": {
              "$ref": "#/types/nutanix:index%2FgetAddressGroupV2IpRange:getAddressGroupV2IpRange"
            },
            "type": "array"
          },
          "ipv4Addresses": {
            "description": "List of CIDR blocks in the Address Group.\n",
            "items": {
              "$ref": "#/types/nutanix:index%2FgetAddressGroupV2Ipv4Address:getAddressGroupV2Ipv4Address"
            },
            "type": "array"
          },
          "links": {
            "description": "A HATEOAS style link for the response. Each link contains a user-friendly name identifying the link and an address for retrieving the particular resource.\n",
            "items": {
              "$ref": "#/types/nutanix:index%2FgetAddressGroupV2Link:getAddressGroupV2Link"
            },
            "type": "array"
          },
          "name": {
            "description": "A short identifier for an Address Group.\n",
            "type": "string"
          },
          "policyReferences": {
            "description": "Reference to policy associated with Address Group.\n",
            "items": {
              "type": "string"
            },
            "type": "array"
          },
          "tenantId": {
            "description": "A globally unique identifier that represents the tenant that owns this entity.\n",
            "type": "string"
          }
        },
        "required": [
          "createdBy",
          "description",
          "extId",
          "id",
          "ipRanges",
          "ipv4Addresses",
          "links",
          "name",
          "policyReferences",
          "tenantId"
        ],
        "type": "object"
      }
    },
    "nutanix:index/getAddressGroups:getAddressGroups": {
      "description": "Provides a datasource to retrieve list of address groups.\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as nutanix from \"@pierskarsenbarg/nutanix\";\n\nconst addrGroups = nutanix.getAddressGroups({});\n```\n```python\nimport pulumi\nimport pulumi_nutanix as nutanix\n\naddr_groups = nutanix.get_address_groups()\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Nutanix = Pulumi.Nutanix;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var addrGroups = Nutanix.GetAddressGroups.Invoke();\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pierskarsenbarg/pulumi-nutanix/sdk/go/nutanix\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := nutanix.GetAddressGroups(ctx, \u0026nutanix.GetAddressGroupsArgs{}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.nutanix.NutanixFunctions;\nimport com.pulumi.nutanix.inputs.GetAddressGroupsArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var addrGroups = NutanixFunctions.getAddressGroups(GetAddressGroupsArgs.builder()\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  addrGroups:\n    fn::invoke:\n      function: nutanix:getAddressGroups\n      arguments: {}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
      "inputs": {
        "description": "A collection of arguments for invoking getAddressGroups.\n",
        "properties": {
          "metadatas": {
            "type": "array",
            "items": {
              "$ref": "#/types/nutanix:index%2FgetAddressGroupsMetadata:getAddressGroupsMetadata"
            },
            "description": "- (Optional) Use metadata to specify filters\n"
          }
        },
        "type": "object"
      },
      "outputs": {
        "description": "A collection of values returned by getAddressGroups.\n",
        "properties": {
          "entities": {
            "description": "- (ReadOnly) List of address groups\n",
            "items": {
              "$ref": "#/types/nutanix:index%2FgetAddressGroupsEntity:getAddressGroupsEntity"
            },
            "type": "array"
          },
          "id": {
            "description": "The provider-assigned unique ID for this managed resource.",
            "type": "string"
          },
          "metadatas": {
            "description": "- (Optional) Use metadata to specify filters\n",
            "items": {
              "$ref": "#/types/nutanix:index%2FgetAddressGroupsMetadata:getAddressGroupsMetadata"
            },
            "type": "array"
          }
        },
        "required": [
          "entities",
          "id",
          "metadatas"
        ],
        "type": "object"
      }
    },
    "nutanix:index/getAddressGroupsV2:getAddressGroupsV2": {
      "description": "List all the Address Groups.\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as nutanix from \"@pierskarsenbarg/nutanix\";\n\n// list all address groups\nconst list_addr_groups = nutanix.getAddressGroupsV2({});\n// filtered the address groups\nconst list_addr_group_filtered = nutanix.getAddressGroupsV2({\n    filter: \"name eq 'td-addr-group'\",\n});\n// filtered and limit the number of address groups\nconst list_addr_groups_filter_limit = nutanix.getAddressGroupsV2({\n    filter: \"name eq 'td-addr-group'\",\n    limit: 1,\n});\n```\n```python\nimport pulumi\nimport pulumi_nutanix as nutanix\n\n# list all address groups\nlist_addr_groups = nutanix.get_address_groups_v2()\n# filtered the address groups\nlist_addr_group_filtered = nutanix.get_address_groups_v2(filter=\"name eq 'td-addr-group'\")\n# filtered and limit the number of address groups\nlist_addr_groups_filter_limit = nutanix.get_address_groups_v2(filter=\"name eq 'td-addr-group'\",\n    limit=1)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Nutanix = Pulumi.Nutanix;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    // list all address groups\n    var list_addr_groups = Nutanix.GetAddressGroupsV2.Invoke();\n\n    // filtered the address groups\n    var list_addr_group_filtered = Nutanix.GetAddressGroupsV2.Invoke(new()\n    {\n        Filter = \"name eq 'td-addr-group'\",\n    });\n\n    // filtered and limit the number of address groups\n    var list_addr_groups_filter_limit = Nutanix.GetAddressGroupsV2.Invoke(new()\n    {\n        Filter = \"name eq 'td-addr-group'\",\n        Limit = 1,\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pierskarsenbarg/pulumi-nutanix/sdk/go/nutanix\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t// list all address groups\n\t\t_, err := nutanix.LookupAddressGroupsV2(ctx, \u0026nutanix.LookupAddressGroupsV2Args{}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t// filtered the address groups\n\t\t_, err = nutanix.LookupAddressGroupsV2(ctx, \u0026nutanix.LookupAddressGroupsV2Args{\n\t\t\tFilter: pulumi.StringRef(\"name eq 'td-addr-group'\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t// filtered and limit the number of address groups\n\t\t_, err = nutanix.LookupAddressGroupsV2(ctx, \u0026nutanix.LookupAddressGroupsV2Args{\n\t\t\tFilter: pulumi.StringRef(\"name eq 'td-addr-group'\"),\n\t\t\tLimit:  pulumi.IntRef(1),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.nutanix.NutanixFunctions;\nimport com.pulumi.nutanix.inputs.GetAddressGroupsV2Args;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        // list all address groups\n        final var list-addr-groups = NutanixFunctions.getAddressGroupsV2(GetAddressGroupsV2Args.builder()\n            .build());\n\n        // filtered the address groups\n        final var list-addr-group-filtered = NutanixFunctions.getAddressGroupsV2(GetAddressGroupsV2Args.builder()\n            .filter(\"name eq 'td-addr-group'\")\n            .build());\n\n        // filtered and limit the number of address groups\n        final var list-addr-groups-filter-limit = NutanixFunctions.getAddressGroupsV2(GetAddressGroupsV2Args.builder()\n            .filter(\"name eq 'td-addr-group'\")\n            .limit(1)\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  # list all address groups\n  list-addr-groups:\n    fn::invoke:\n      function: nutanix:getAddressGroupsV2\n      arguments: {}\n  # filtered the address groups\n  list-addr-group-filtered:\n    fn::invoke:\n      function: nutanix:getAddressGroupsV2\n      arguments:\n        filter: name eq 'td-addr-group'\n  # filtered and limit the number of address groups\n  list-addr-groups-filter-limit:\n    fn::invoke:\n      function: nutanix:getAddressGroupsV2\n      arguments:\n        filter: name eq 'td-addr-group'\n        limit: 1\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
      "inputs": {
        "description": "A collection of arguments for invoking getAddressGroupsV2.\n",
        "properties": {
          "filter": {
            "type": "string",
            "description": "A URL query parameter that allows clients to filter a collection of resources. The filter can be applied to the following fields:\n- createdBy\n- description\n- extId\n- name\n"
          },
          "limit": {
            "type": "integer",
            "description": "A URL query parameter that specifies the total number of records returned in the result set. Must be a positive integer between 1 and 100. Any number out of this range will lead to a validation error. If the limit is not provided, a default value of 50 records will be returned in the result set.\n"
          },
          "orderBy": {
            "type": "string",
            "description": "A URL query parameter that allows clients to specify the sort criteria for the returned list of objects. Resources can be sorted in ascending order using asc or descending order using desc. If asc or desc are not specified, the resources will be sorted in ascending order by default. The orderby can be applied to the following fields:\n- description\n- extId\n- name\n"
          },
          "page": {
            "type": "integer",
            "description": "A URL query parameter that specifies the page number of the result set. It must be a positive integer between 0 and the maximum number of pages that are available for that resource. Any number out of this range might lead to no results.\n"
          },
          "select": {
            "type": "string",
            "description": "A URL query parameter that allows clients to request a specific set of properties for each entity or complex type. Expression specified with the $select must conform to the OData V4.01 URL conventions. expression consists of a single select item that is an asterisk (i.e., *), then all properties on the matching resource will be returned. The select can be applied to the following fields:\n- createdBy\n- description\n- extId\n- ipRanges\n- links\n- name\n- policyReferences\n- tenantId\n"
          }
        },
        "type": "object"
      },
      "outputs": {
        "description": "A collection of values returned by getAddressGroupsV2.\n",
        "properties": {
          "addressGroups": {
            "description": "List of address groups\n",
            "items": {
              "$ref": "#/types/nutanix:index%2FgetAddressGroupsV2AddressGroup:getAddressGroupsV2AddressGroup"
            },
            "type": "array"
          },
          "filter": {
            "type": "string"
          },
          "id": {
            "description": "The provider-assigned unique ID for this managed resource.",
            "type": "string"
          },
          "limit": {
            "type": "integer"
          },
          "orderBy": {
            "type": "string"
          },
          "page": {
            "type": "integer"
          },
          "select": {
            "type": "string"
          }
        },
        "required": [
          "addressGroups",
          "id"
        ],
        "type": "object"
      }
    },
    "nutanix:index/getAssertHelper:getAssertHelper": {
      "inputs": {
        "description": "A collection of arguments for invoking getAssertHelper.\n",
        "properties": {
          "checks": {
            "type": "array",
            "items": {
              "$ref": "#/types/nutanix:index%2FgetAssertHelperCheck:getAssertHelperCheck"
            }
          }
        },
        "type": "object"
      },
      "outputs": {
        "description": "A collection of values returned by getAssertHelper.\n",
        "properties": {
          "checks": {
            "items": {
              "$ref": "#/types/nutanix:index%2FgetAssertHelperCheck:getAssertHelperCheck"
            },
            "type": "array"
          },
          "id": {
            "description": "The provider-assigned unique ID for this managed resource.",
            "type": "string"
          }
        },
        "required": [
          "id"
        ],
        "type": "object"
      }
    },
    "nutanix:index/getAuthorizationPoliciesV2:getAuthorizationPoliciesV2": {
      "inputs": {
        "description": "A collection of arguments for invoking getAuthorizationPoliciesV2.\n",
        "properties": {
          "expand": {
            "type": "string"
          },
          "filter": {
            "type": "string"
          },
          "limit": {
            "type": "integer"
          },
          "orderBy": {
            "type": "string"
          },
          "page": {
            "type": "integer"
          },
          "select": {
            "type": "string"
          }
        },
        "type": "object"
      },
      "outputs": {
        "description": "A collection of values returned by getAuthorizationPoliciesV2.\n",
        "properties": {
          "authPolicies": {
            "items": {
              "$ref": "#/types/nutanix:index%2FgetAuthorizationPoliciesV2AuthPolicy:getAuthorizationPoliciesV2AuthPolicy"
            },
            "type": "array"
          },
          "expand": {
            "type": "string"
          },
          "filter": {
            "type": "string"
          },
          "id": {
            "description": "The provider-assigned unique ID for this managed resource.",
            "type": "string"
          },
          "limit": {
            "type": "integer"
          },
          "orderBy": {
            "type": "string"
          },
          "page": {
            "type": "integer"
          },
          "select": {
            "type": "string"
          }
        },
        "required": [
          "authPolicies",
          "id"
        ],
        "type": "object"
      }
    },
    "nutanix:index/getAuthorizationPolicyV2:getAuthorizationPolicyV2": {
      "inputs": {
        "description": "A collection of arguments for invoking getAuthorizationPolicyV2.\n",
        "properties": {
          "extId": {
            "type": "string"
          }
        },
        "type": "object",
        "required": [
          "extId"
        ]
      },
      "outputs": {
        "description": "A collection of values returned by getAuthorizationPolicyV2.\n",
        "properties": {
          "authorizationPolicyType": {
            "type": "string"
          },
          "clientName": {
            "type": "string"
          },
          "createdBy": {
            "type": "string"
          },
          "createdTime": {
            "type": "string"
          },
          "description": {
            "type": "string"
          },
          "displayName": {
            "type": "string"
          },
          "entities": {
            "items": {
              "$ref": "#/types/nutanix:index%2FgetAuthorizationPolicyV2Entity:getAuthorizationPolicyV2Entity"
            },
            "type": "array"
          },
          "extId": {
            "type": "string"
          },
          "id": {
            "description": "The provider-assigned unique ID for this managed resource.",
            "type": "string"
          },
          "identities": {
            "items": {
              "$ref": "#/types/nutanix:index%2FgetAuthorizationPolicyV2Identity:getAuthorizationPolicyV2Identity"
            },
            "type": "array"
          },
          "isSystemDefined": {
            "type": "boolean"
          },
          "lastUpdatedTime": {
            "type": "string"
          },
          "role": {
            "type": "string"
          }
        },
        "required": [
          "authorizationPolicyType",
          "clientName",
          "createdBy",
          "createdTime",
          "description",
          "displayName",
          "entities",
          "extId",
          "id",
          "identities",
          "isSystemDefined",
          "lastUpdatedTime",
          "role"
        ],
        "type": "object"
      }
    },
    "nutanix:index/getBlueprintRuntimeEditables:getBlueprintRuntimeEditables": {
      "description": "Describes runtime editables that are present in a blueprint.\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as local from \"@pulumi/local\";\nimport * as nutanix from \"@pierskarsenbarg/nutanix\";\n\nconst example = nutanix.getBlueprintRuntimeEditables({\n    bpName: \"NAME OF BLUEPRINT\",\n});\n// dumps read value into a readable json file\nconst dumpRuntimeValue = new local.File(\"dump_runtime_value\", {\n    content: JSON.stringify(example.then(example =\u003e example.runtimeEditables)),\n    filename: \"runtime_value.json\",\n});\n```\n```python\nimport pulumi\nimport json\nimport pulumi_local as local\nimport pulumi_nutanix as nutanix\n\nexample = nutanix.get_blueprint_runtime_editables(bp_name=\"NAME OF BLUEPRINT\")\n# dumps read value into a readable json file\ndump_runtime_value = local.File(\"dump_runtime_value\",\n    content=json.dumps(example.runtime_editables),\n    filename=\"runtime_value.json\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing System.Text.Json;\nusing Pulumi;\nusing Local = Pulumi.Local;\nusing Nutanix = Pulumi.Nutanix;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var example = Nutanix.GetBlueprintRuntimeEditables.Invoke(new()\n    {\n        BpName = \"NAME OF BLUEPRINT\",\n    });\n\n    // dumps read value into a readable json file\n    var dumpRuntimeValue = new Local.File(\"dump_runtime_value\", new()\n    {\n        Content = JsonSerializer.Serialize(example.Apply(getBlueprintRuntimeEditablesResult =\u003e getBlueprintRuntimeEditablesResult.RuntimeEditables)),\n        Filename = \"runtime_value.json\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"encoding/json\"\n\n\t\"github.com/pierskarsenbarg/pulumi-nutanix/sdk/go/nutanix\"\n\t\"github.com/pulumi/pulumi-local/sdk/go/local\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\texample, err := nutanix.GetBlueprintRuntimeEditables(ctx, \u0026nutanix.GetBlueprintRuntimeEditablesArgs{\n\t\t\tBpName: pulumi.StringRef(\"NAME OF BLUEPRINT\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\ttmpJSON0, err := json.Marshal(example.RuntimeEditables)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tjson0 := string(tmpJSON0)\n\t\t// dumps read value into a readable json file\n\t\t_, err = local.NewFile(ctx, \"dump_runtime_value\", \u0026local.FileArgs{\n\t\t\tContent:  pulumi.String(json0),\n\t\t\tFilename: pulumi.String(\"runtime_value.json\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.nutanix.NutanixFunctions;\nimport com.pulumi.nutanix.inputs.GetBlueprintRuntimeEditablesArgs;\nimport com.pulumi.local.File;\nimport com.pulumi.local.FileArgs;\nimport static com.pulumi.codegen.internal.Serialization.*;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var example = NutanixFunctions.getBlueprintRuntimeEditables(GetBlueprintRuntimeEditablesArgs.builder()\n            .bpName(\"NAME OF BLUEPRINT\")\n            .build());\n\n        // dumps read value into a readable json file\n        var dumpRuntimeValue = new File(\"dumpRuntimeValue\", FileArgs.builder()\n            .content(serializeJson(\n                example.runtimeEditables()))\n            .filename(\"runtime_value.json\")\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  # dumps read value into a readable json file\n  dumpRuntimeValue:\n    type: local:File\n    name: dump_runtime_value\n    properties:\n      content:\n        fn::toJSON: ${example.runtimeEditables}\n      filename: runtime_value.json\nvariables:\n  example:\n    fn::invoke:\n      function: nutanix:getBlueprintRuntimeEditables\n      arguments:\n        bpName: NAME OF BLUEPRINT\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
      "inputs": {
        "description": "A collection of arguments for invoking getBlueprintRuntimeEditables.\n",
        "properties": {
          "bpName": {
            "type": "string",
            "description": "- (Optional) The name of the blueprint for which runtime editables will be listed. If this is provided, it will return runtime editables for the specified blueprint.\n\nBoth (\u003cspan pulumi-lang-nodejs=\"`bpUuid`\" pulumi-lang-dotnet=\"`BpUuid`\" pulumi-lang-go=\"`bpUuid`\" pulumi-lang-python=\"`bp_uuid`\" pulumi-lang-yaml=\"`bpUuid`\" pulumi-lang-java=\"`bpUuid`\"\u003e`bp_uuid`\u003c/span\u003e and \u003cspan pulumi-lang-nodejs=\"`bpName`\" pulumi-lang-dotnet=\"`BpName`\" pulumi-lang-go=\"`bpName`\" pulumi-lang-python=\"`bp_name`\" pulumi-lang-yaml=\"`bpName`\" pulumi-lang-java=\"`bpName`\"\u003e`bp_name`\u003c/span\u003e) are optional but atleast one of them to be provided for this data source to work.\n"
          },
          "bpUuid": {
            "type": "string",
            "description": "- (Optional) The UUID of the blueprint for which runtime editables will be listed. If this is provided, it will return runtime editables for the specified blueprint.\n"
          }
        },
        "type": "object"
      },
      "outputs": {
        "description": "A collection of values returned by getBlueprintRuntimeEditables.\n",
        "properties": {
          "bpName": {
            "type": "string"
          },
          "bpUuid": {
            "type": "string"
          },
          "id": {
            "description": "The provider-assigned unique ID for this managed resource.",
            "type": "string"
          },
          "runtimeEditables": {
            "items": {
              "$ref": "#/types/nutanix:index%2FgetBlueprintRuntimeEditablesRuntimeEditable:getBlueprintRuntimeEditablesRuntimeEditable"
            },
            "type": "array"
          }
        },
        "required": [
          "id",
          "runtimeEditables"
        ],
        "type": "object"
      }
    },
    "nutanix:index/getCategoriesV2:getCategoriesV2": {
      "description": "List categories\n\n\n## Example\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as nutanix from \"@pierskarsenbarg/nutanix\";\n\nconst categories_list = nutanix.getCategoriesV2({});\nconst categories_paginated = nutanix.getCategoriesV2({\n    page: 1,\n    limit: 10,\n});\nconst categories_sorted = nutanix.getCategoriesV2({\n    orderBy: \"key desc\",\n});\nconst categories_filtered = nutanix.getCategoriesV2({\n    filter: \"key eq 'key_example'\",\n});\nexport const category = categories_list.then(categories_list =\u003e categories_list.categories?.[0]);\n```\n```python\nimport pulumi\nimport pulumi_nutanix as nutanix\n\ncategories_list = nutanix.get_categories_v2()\ncategories_paginated = nutanix.get_categories_v2(page=1,\n    limit=10)\ncategories_sorted = nutanix.get_categories_v2(order_by=\"key desc\")\ncategories_filtered = nutanix.get_categories_v2(filter=\"key eq 'key_example'\")\npulumi.export(\"category\", categories_list.categories[0])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Nutanix = Pulumi.Nutanix;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var categories_list = Nutanix.GetCategoriesV2.Invoke();\n\n    var categories_paginated = Nutanix.GetCategoriesV2.Invoke(new()\n    {\n        Page = 1,\n        Limit = 10,\n    });\n\n    var categories_sorted = Nutanix.GetCategoriesV2.Invoke(new()\n    {\n        OrderBy = \"key desc\",\n    });\n\n    var categories_filtered = Nutanix.GetCategoriesV2.Invoke(new()\n    {\n        Filter = \"key eq 'key_example'\",\n    });\n\n    return new Dictionary\u003cstring, object?\u003e\n    {\n        [\"category\"] = categories_list.Apply(categories_list =\u003e categories_list.Apply(getCategoriesV2Result =\u003e getCategoriesV2Result.Categories[0])),\n    };\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pierskarsenbarg/pulumi-nutanix/sdk/go/nutanix\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tcategories_list, err := nutanix.GetCategoriesV2(ctx, \u0026nutanix.GetCategoriesV2Args{}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = nutanix.GetCategoriesV2(ctx, \u0026nutanix.GetCategoriesV2Args{\n\t\t\tPage:  pulumi.IntRef(1),\n\t\t\tLimit: pulumi.IntRef(10),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = nutanix.GetCategoriesV2(ctx, \u0026nutanix.GetCategoriesV2Args{\n\t\t\tOrderBy: pulumi.StringRef(\"key desc\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = nutanix.GetCategoriesV2(ctx, \u0026nutanix.GetCategoriesV2Args{\n\t\t\tFilter: pulumi.StringRef(\"key eq 'key_example'\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tctx.Export(\"category\", categories_list.Categories[0])\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.nutanix.NutanixFunctions;\nimport com.pulumi.nutanix.inputs.GetCategoriesV2Args;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var categories-list = NutanixFunctions.getCategoriesV2(GetCategoriesV2Args.builder()\n            .build());\n\n        final var categories-paginated = NutanixFunctions.getCategoriesV2(GetCategoriesV2Args.builder()\n            .page(1)\n            .limit(10)\n            .build());\n\n        final var categories-sorted = NutanixFunctions.getCategoriesV2(GetCategoriesV2Args.builder()\n            .orderBy(\"key desc\")\n            .build());\n\n        final var categories-filtered = NutanixFunctions.getCategoriesV2(GetCategoriesV2Args.builder()\n            .filter(\"key eq 'key_example'\")\n            .build());\n\n        ctx.export(\"category\", categories_list.categories()[0]);\n    }\n}\n```\n```yaml\nvariables:\n  categories-list:\n    fn::invoke:\n      function: nutanix:getCategoriesV2\n      arguments: {}\n  categories-paginated:\n    fn::invoke:\n      function: nutanix:getCategoriesV2\n      arguments:\n        page: 1\n        limit: 10\n  categories-sorted:\n    fn::invoke:\n      function: nutanix:getCategoriesV2\n      arguments:\n        orderBy: key desc\n  categories-filtered:\n    fn::invoke:\n      function: nutanix:getCategoriesV2\n      arguments:\n        filter: key eq 'key_example'\noutputs:\n  category: ${[\"categories-list\"].categories[0]}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n\n## Categories\n\nThe \u003cspan pulumi-lang-nodejs=\"`categories`\" pulumi-lang-dotnet=\"`Categories`\" pulumi-lang-go=\"`categories`\" pulumi-lang-python=\"`categories`\" pulumi-lang-yaml=\"`categories`\" pulumi-lang-java=\"`categories`\"\u003e`categories`\u003c/span\u003e contains list of categories. Each category has the following attributes:\n\n* \u003cspan pulumi-lang-nodejs=\"`extId`\" pulumi-lang-dotnet=\"`ExtId`\" pulumi-lang-go=\"`extId`\" pulumi-lang-python=\"`ext_id`\" pulumi-lang-yaml=\"`extId`\" pulumi-lang-java=\"`extId`\"\u003e`ext_id`\u003c/span\u003e: The extID for the category.\n* \u003cspan pulumi-lang-nodejs=\"`key`\" pulumi-lang-dotnet=\"`Key`\" pulumi-lang-go=\"`key`\" pulumi-lang-python=\"`key`\" pulumi-lang-yaml=\"`key`\" pulumi-lang-java=\"`key`\"\u003e`key`\u003c/span\u003e: The key of a category when it is represented in key:value format.\n* \u003cspan pulumi-lang-nodejs=\"`value`\" pulumi-lang-dotnet=\"`Value`\" pulumi-lang-go=\"`value`\" pulumi-lang-python=\"`value`\" pulumi-lang-yaml=\"`value`\" pulumi-lang-java=\"`value`\"\u003e`value`\u003c/span\u003e: The value of a category when it is represented in key:value format\n* \u003cspan pulumi-lang-nodejs=\"`type`\" pulumi-lang-dotnet=\"`Type`\" pulumi-lang-go=\"`type`\" pulumi-lang-python=\"`type`\" pulumi-lang-yaml=\"`type`\" pulumi-lang-java=\"`type`\"\u003e`type`\u003c/span\u003e: Denotes the type of a category.\nThere are three types of categories: SYSTEM, INTERNAL, and USER.\n* \u003cspan pulumi-lang-nodejs=\"`description`\" pulumi-lang-dotnet=\"`Description`\" pulumi-lang-go=\"`description`\" pulumi-lang-python=\"`description`\" pulumi-lang-yaml=\"`description`\" pulumi-lang-java=\"`description`\"\u003e`description`\u003c/span\u003e: A string consisting of the description of the category as defined by the user.\n* \u003cspan pulumi-lang-nodejs=\"`ownerUuid`\" pulumi-lang-dotnet=\"`OwnerUuid`\" pulumi-lang-go=\"`ownerUuid`\" pulumi-lang-python=\"`owner_uuid`\" pulumi-lang-yaml=\"`ownerUuid`\" pulumi-lang-java=\"`ownerUuid`\"\u003e`owner_uuid`\u003c/span\u003e: This field contains the UUID of a user who owns the category.\n* \u003cspan pulumi-lang-nodejs=\"`associations`\" pulumi-lang-dotnet=\"`Associations`\" pulumi-lang-go=\"`associations`\" pulumi-lang-python=\"`associations`\" pulumi-lang-yaml=\"`associations`\" pulumi-lang-java=\"`associations`\"\u003e`associations`\u003c/span\u003e: This field gives basic information about resources that are associated to the category.\n* \u003cspan pulumi-lang-nodejs=\"`detailedAssociations`\" pulumi-lang-dotnet=\"`DetailedAssociations`\" pulumi-lang-go=\"`detailedAssociations`\" pulumi-lang-python=\"`detailed_associations`\" pulumi-lang-yaml=\"`detailedAssociations`\" pulumi-lang-java=\"`detailedAssociations`\"\u003e`detailed_associations`\u003c/span\u003e: This field gives detailed information about resources that are associated to the category.\n* \u003cspan pulumi-lang-nodejs=\"`tenantId`\" pulumi-lang-dotnet=\"`TenantId`\" pulumi-lang-go=\"`tenantId`\" pulumi-lang-python=\"`tenant_id`\" pulumi-lang-yaml=\"`tenantId`\" pulumi-lang-java=\"`tenantId`\"\u003e`tenant_id`\u003c/span\u003e: A globally unique identifier that represents the tenant that owns this entity.\n* \u003cspan pulumi-lang-nodejs=\"`links`\" pulumi-lang-dotnet=\"`Links`\" pulumi-lang-go=\"`links`\" pulumi-lang-python=\"`links`\" pulumi-lang-yaml=\"`links`\" pulumi-lang-java=\"`links`\"\u003e`links`\u003c/span\u003e: A HATEOAS style link for the response. Each link contains a user-friendly name identifying the link and an address for retrieving the particular resource.\n\n\n### associations\n* \u003cspan pulumi-lang-nodejs=\"`categoryId`\" pulumi-lang-dotnet=\"`CategoryId`\" pulumi-lang-go=\"`categoryId`\" pulumi-lang-python=\"`category_id`\" pulumi-lang-yaml=\"`categoryId`\" pulumi-lang-java=\"`categoryId`\"\u003e`category_id`\u003c/span\u003e: External identifier for the given category, used across all v4 apis/entities/resources where categories are referenced.\n* \u003cspan pulumi-lang-nodejs=\"`resourceType`\" pulumi-lang-dotnet=\"`ResourceType`\" pulumi-lang-go=\"`resourceType`\" pulumi-lang-python=\"`resource_type`\" pulumi-lang-yaml=\"`resourceType`\" pulumi-lang-java=\"`resourceType`\"\u003e`resource_type`\u003c/span\u003e: An enum denoting the associated resource types. Resource types are further grouped into 2 types - entity or a policy.\n* \u003cspan pulumi-lang-nodejs=\"`resourceGroup`\" pulumi-lang-dotnet=\"`ResourceGroup`\" pulumi-lang-go=\"`resourceGroup`\" pulumi-lang-python=\"`resource_group`\" pulumi-lang-yaml=\"`resourceGroup`\" pulumi-lang-java=\"`resourceGroup`\"\u003e`resource_group`\u003c/span\u003e: An enum denoting the resource group.\nResources can be organized into either an entity or a policy.\n* \u003cspan pulumi-lang-nodejs=\"`count`\" pulumi-lang-dotnet=\"`Count`\" pulumi-lang-go=\"`count`\" pulumi-lang-python=\"`count`\" pulumi-lang-yaml=\"`count`\" pulumi-lang-java=\"`count`\"\u003e`count`\u003c/span\u003e: Count of associations of a particular type of entity or policy\n\n###\u003cspan pulumi-lang-nodejs=\" detailedAssociations\n\" pulumi-lang-dotnet=\" DetailedAssociations\n\" pulumi-lang-go=\" detailedAssociations\n\" pulumi-lang-python=\" detailed_associations\n\" pulumi-lang-yaml=\" detailedAssociations\n\" pulumi-lang-java=\" detailedAssociations\n\"\u003e detailed_associations\n\u003c/span\u003e* \u003cspan pulumi-lang-nodejs=\"`categoryId`\" pulumi-lang-dotnet=\"`CategoryId`\" pulumi-lang-go=\"`categoryId`\" pulumi-lang-python=\"`category_id`\" pulumi-lang-yaml=\"`categoryId`\" pulumi-lang-java=\"`categoryId`\"\u003e`category_id`\u003c/span\u003e: External identifier for the given category, used across all v4 apis/entities/resources where categories are referenced.\n* \u003cspan pulumi-lang-nodejs=\"`resourceType`\" pulumi-lang-dotnet=\"`ResourceType`\" pulumi-lang-go=\"`resourceType`\" pulumi-lang-python=\"`resource_type`\" pulumi-lang-yaml=\"`resourceType`\" pulumi-lang-java=\"`resourceType`\"\u003e`resource_type`\u003c/span\u003e: An enum denoting the associated resource types. Resource types are further grouped into 2 types - entity or a policy.\n* \u003cspan pulumi-lang-nodejs=\"`resourceGroup`\" pulumi-lang-dotnet=\"`ResourceGroup`\" pulumi-lang-go=\"`resourceGroup`\" pulumi-lang-python=\"`resource_group`\" pulumi-lang-yaml=\"`resourceGroup`\" pulumi-lang-java=\"`resourceGroup`\"\u003e`resource_group`\u003c/span\u003e: An enum denoting the resource group.\nResources can be organized into either an entity or a policy.\n* \u003cspan pulumi-lang-nodejs=\"`resourceId`\" pulumi-lang-dotnet=\"`ResourceId`\" pulumi-lang-go=\"`resourceId`\" pulumi-lang-python=\"`resource_id`\" pulumi-lang-yaml=\"`resourceId`\" pulumi-lang-java=\"`resourceId`\"\u003e`resource_id`\u003c/span\u003e: The UUID of the entity or policy associated with the particular category.\n\n\nSee detailed information in [Nutanix List Categories v4](https://developers.nutanix.com/api-reference?namespace=prism\u0026version=v4.0#tag/Categories/operation/listCategories).\n",
      "inputs": {
        "description": "A collection of arguments for invoking getCategoriesV2.\n",
        "properties": {
          "expand": {
            "type": "string",
            "description": "A URL query parameter that allows clients to request related resources when a resource that satisfies a particular request is retrieved. Each expanded item is evaluated relative to the entity containing the property being expanded. Other query options can be applied to an expanded property by appending a semicolon-separated list of query options, enclosed in parentheses, to the property name. Permissible system query options are \\$filter, \\$select and \\$orderby. The following expansion keys are supported:\n- associations\n- detailedAssociations\n"
          },
          "filter": {
            "type": "string",
            "description": "A URL query parameter that allows clients to filter a collection of resources. The expression specified with \\$filter is evaluated for each resource in the collection, and only items where the expression evaluates to true are included in the response. Expression specified with the \\$filter must conform to the OData V4.01 URL conventions. For example, filter '\\$filter=name eq 'karbon-ntnx-1.0' would filter the result on cluster name 'karbon-ntnx1.0', filter '\\$filter=startswith(name, 'C')' would filter on cluster name starting with 'C'. The filter can be applied to the following fields:\n- extId\n- key\n- ownerUuid\n- type\n- value\n"
          },
          "limit": {
            "type": "integer",
            "description": "A URL query parameter that specifies the total number of records returned in the result set. Must be a positive integer between 1 and 100. Any number out of this range will lead to a validation error. If the limit is not provided, a default value of 50 records will be returned in the result set.\n"
          },
          "orderBy": {
            "type": "string",
            "description": "A URL query parameter that allows clients to specify the sort criteria for the returned list of objects. Resources can be sorted in ascending order using asc or descending order using desc. If asc or desc are not specified, the resources will be sorted in ascending order by default. For example, '\\$orderby=templateName desc' would get all templates sorted by templateName in descending order. The orderby can be applied to the following fields:\n- key\n- value\n"
          },
          "page": {
            "type": "integer",
            "description": "A URL query parameter that specifies the page number of the result set. It must be a positive integer between 0 and the maximum number of pages that are available for that resource. Any number out of this range might lead to no results.\n"
          },
          "select": {
            "type": "string",
            "description": "A URL query parameter that allows clients to request a specific set of properties for each entity or complex type. Expression specified with the \\$select must conform to the OData V4.01 URL conventions. If a \\$select expression consists of a single select item that is an asterisk (i.e., *), then all properties on the matching resource will be returned. The select can be applied to the following fields:\n- description\n- extId\n- key\n- ownerUuid\n- type\n- value\n"
          }
        },
        "type": "object"
      },
      "outputs": {
        "description": "A collection of values returned by getCategoriesV2.\n",
        "properties": {
          "categories": {
            "description": "List of categories\n",
            "items": {
              "$ref": "#/types/nutanix:index%2FgetCategoriesV2Category:getCategoriesV2Category"
            },
            "type": "array"
          },
          "expand": {
            "type": "string"
          },
          "filter": {
            "type": "string"
          },
          "id": {
            "description": "The provider-assigned unique ID for this managed resource.",
            "type": "string"
          },
          "limit": {
            "type": "integer"
          },
          "orderBy": {
            "type": "string"
          },
          "page": {
            "type": "integer"
          },
          "select": {
            "type": "string"
          }
        },
        "required": [
          "categories",
          "id"
        ],
        "type": "object"
      }
    },
    "nutanix:index/getCategoryKey:getCategoryKey": {
      "description": "Describe a Nutanix Category Key and its values (if it has them).\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as nutanix from \"@pierskarsenbarg/nutanix\";\n\nconst testKeyValueCategoryKey = new nutanix.CategoryKey(\"test_key_value\", {\n    name: \"data_source_category_key_test_values\",\n    description: \"Data Source CategoryKey Test with Values\",\n});\nconst testValue = new nutanix.CategoryValue(\"test_value\", {\n    name: testKeyValueCategoryKey.name,\n    value: \"test_category_value_data_source\",\n    description: \"Data Source CategoryValue Test with Values\",\n});\nconst testKeyValue = nutanix.getCategoryKeyOutput({\n    name: testKeyValueCategoryKey.name,\n});\n```\n```python\nimport pulumi\nimport pulumi_nutanix as nutanix\n\ntest_key_value_category_key = nutanix.CategoryKey(\"test_key_value\",\n    name=\"data_source_category_key_test_values\",\n    description=\"Data Source CategoryKey Test with Values\")\ntest_value = nutanix.CategoryValue(\"test_value\",\n    name=test_key_value_category_key.name,\n    value=\"test_category_value_data_source\",\n    description=\"Data Source CategoryValue Test with Values\")\ntest_key_value = nutanix.get_category_key_output(name=test_key_value_category_key.name)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Nutanix = PiersKarsenbarg.Nutanix;\nusing Nutanix = Pulumi.Nutanix;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var testKeyValueCategoryKey = new Nutanix.CategoryKey(\"test_key_value\", new()\n    {\n        Name = \"data_source_category_key_test_values\",\n        Description = \"Data Source CategoryKey Test with Values\",\n    });\n\n    var testValue = new Nutanix.CategoryValue(\"test_value\", new()\n    {\n        Name = testKeyValueCategoryKey.Name,\n        Value = \"test_category_value_data_source\",\n        Description = \"Data Source CategoryValue Test with Values\",\n    });\n\n    var testKeyValue = Nutanix.GetCategoryKey.Invoke(new()\n    {\n        Name = testKeyValueCategoryKey.Name,\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pierskarsenbarg/pulumi-nutanix/sdk/go/nutanix\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\ttestKeyValueCategoryKey, err := nutanix.NewCategoryKey(ctx, \"test_key_value\", \u0026nutanix.CategoryKeyArgs{\n\t\t\tName:        pulumi.String(\"data_source_category_key_test_values\"),\n\t\t\tDescription: pulumi.String(\"Data Source CategoryKey Test with Values\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = nutanix.NewCategoryValue(ctx, \"test_value\", \u0026nutanix.CategoryValueArgs{\n\t\t\tName:        testKeyValueCategoryKey.Name,\n\t\t\tValue:       pulumi.String(\"test_category_value_data_source\"),\n\t\t\tDescription: pulumi.String(\"Data Source CategoryValue Test with Values\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_ = nutanix.LookupCategoryKeyOutput(ctx, nutanix.GetCategoryKeyOutputArgs{\n\t\t\tName: testKeyValueCategoryKey.Name,\n\t\t}, nil)\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.nutanix.CategoryKey;\nimport com.pulumi.nutanix.CategoryKeyArgs;\nimport com.pulumi.nutanix.CategoryValue;\nimport com.pulumi.nutanix.CategoryValueArgs;\nimport com.pulumi.nutanix.NutanixFunctions;\nimport com.pulumi.nutanix.inputs.GetCategoryKeyArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var testKeyValueCategoryKey = new CategoryKey(\"testKeyValueCategoryKey\", CategoryKeyArgs.builder()\n            .name(\"data_source_category_key_test_values\")\n            .description(\"Data Source CategoryKey Test with Values\")\n            .build());\n\n        var testValue = new CategoryValue(\"testValue\", CategoryValueArgs.builder()\n            .name(testKeyValueCategoryKey.name())\n            .value(\"test_category_value_data_source\")\n            .description(\"Data Source CategoryValue Test with Values\")\n            .build());\n\n        final var testKeyValue = NutanixFunctions.getCategoryKey(GetCategoryKeyArgs.builder()\n            .name(testKeyValueCategoryKey.name())\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  testKeyValueCategoryKey:\n    type: nutanix:CategoryKey\n    name: test_key_value\n    properties:\n      name: data_source_category_key_test_values\n      description: Data Source CategoryKey Test with Values\n  testValue:\n    type: nutanix:CategoryValue\n    name: test_value\n    properties:\n      name: ${testKeyValueCategoryKey.name}\n      value: test_category_value_data_source\n      description: Data Source CategoryValue Test with Values\nvariables:\n  testKeyValue:\n    fn::invoke:\n      function: nutanix:getCategoryKey\n      arguments:\n        name: ${testKeyValueCategoryKey.name}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
      "inputs": {
        "description": "A collection of arguments for invoking getCategoryKey.\n",
        "properties": {
          "name": {
            "type": "string",
            "description": "- (Required) The name for the category key.\n"
          }
        },
        "type": "object",
        "required": [
          "name"
        ]
      },
      "outputs": {
        "description": "A collection of values returned by getCategoryKey.\n",
        "properties": {
          "apiVersion": {
            "description": "The version of the API.\n",
            "type": "string"
          },
          "description": {
            "description": "- A description for category key.\n",
            "type": "string"
          },
          "id": {
            "description": "The provider-assigned unique ID for this managed resource.",
            "type": "string"
          },
          "name": {
            "type": "string"
          },
          "systemDefined": {
            "description": "- Specifying whether its a system defined category.\n",
            "type": "boolean"
          },
          "values": {
            "description": "- A list of the values from this category key (if it has them).\n",
            "items": {
              "type": "string"
            },
            "type": "array"
          }
        },
        "required": [
          "apiVersion",
          "description",
          "id",
          "name",
          "systemDefined",
          "values"
        ],
        "type": "object"
      }
    },
    "nutanix:index/getCategoryV2:getCategoryV2": {
      "description": "Fetch a category\n\n\n## Example\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as nutanix from \"@pierskarsenbarg/nutanix\";\n\nconst get_category = nutanix.getCategoryV2({\n    extId: \"85e68112-5b2b-4220-bc8d-e529e4bf420e\",\n});\n```\n```python\nimport pulumi\nimport pulumi_nutanix as nutanix\n\nget_category = nutanix.get_category_v2(ext_id=\"85e68112-5b2b-4220-bc8d-e529e4bf420e\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Nutanix = Pulumi.Nutanix;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var get_category = Nutanix.GetCategoryV2.Invoke(new()\n    {\n        ExtId = \"85e68112-5b2b-4220-bc8d-e529e4bf420e\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pierskarsenbarg/pulumi-nutanix/sdk/go/nutanix\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := nutanix.LookupCategoryV2(ctx, \u0026nutanix.LookupCategoryV2Args{\n\t\t\tExtId: \"85e68112-5b2b-4220-bc8d-e529e4bf420e\",\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.nutanix.NutanixFunctions;\nimport com.pulumi.nutanix.inputs.GetCategoryV2Args;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var get-category = NutanixFunctions.getCategoryV2(GetCategoryV2Args.builder()\n            .extId(\"85e68112-5b2b-4220-bc8d-e529e4bf420e\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  get-category:\n    fn::invoke:\n      function: nutanix:getCategoryV2\n      arguments:\n        extId: 85e68112-5b2b-4220-bc8d-e529e4bf420e\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
      "inputs": {
        "description": "A collection of arguments for invoking getCategoryV2.\n",
        "properties": {
          "expand": {
            "type": "string",
            "description": "A URL query parameter that allows clients to request related resources when a resource that satisfies a particular request is retrieved. Each expanded item is evaluated relative to the entity containing the property being expanded. Other query options can be applied to an expanded property by appending a semicolon-separated list of query options, enclosed in parentheses, to the property name. Permissible system query options are \\$filter, \\$select and \\$orderby. The following expansion keys are supported:\n- associations\n- detailedAssociations\n"
          },
          "extId": {
            "type": "string",
            "description": "The extID for the category.\n"
          }
        },
        "type": "object",
        "required": [
          "extId"
        ]
      },
      "outputs": {
        "description": "A collection of values returned by getCategoryV2.\n",
        "properties": {
          "associations": {
            "description": "This field gives basic information about resources that are associated to the category.\n",
            "items": {
              "$ref": "#/types/nutanix:index%2FgetCategoryV2Association:getCategoryV2Association"
            },
            "type": "array"
          },
          "description": {
            "description": "A string consisting of the description of the category as defined by the user.\n",
            "type": "string"
          },
          "detailedAssociations": {
            "description": "This field gives detailed information about resources that are associated to the category.\n",
            "items": {
              "$ref": "#/types/nutanix:index%2FgetCategoryV2DetailedAssociation:getCategoryV2DetailedAssociation"
            },
            "type": "array"
          },
          "expand": {
            "type": "string"
          },
          "extId": {
            "type": "string"
          },
          "id": {
            "description": "The provider-assigned unique ID for this managed resource.",
            "type": "string"
          },
          "key": {
            "description": "The key of a category when it is represented in key:value format.\n",
            "type": "string"
          },
          "links": {
            "description": "A HATEOAS style link for the response. Each link contains a user-friendly name identifying the link and an address for retrieving the particular resource.\n",
            "items": {
              "$ref": "#/types/nutanix:index%2FgetCategoryV2Link:getCategoryV2Link"
            },
            "type": "array"
          },
          "ownerUuid": {
            "description": "This field contains the UUID of a user who owns the category.\n",
            "type": "string"
          },
          "tenantId": {
            "description": "A globally unique identifier that represents the tenant that owns this entity.\n",
            "type": "string"
          },
          "type": {
            "description": "Denotes the type of a category.\nThere are three types of categories: SYSTEM, INTERNAL, and USER.\n",
            "type": "string"
          },
          "value": {
            "description": "The value of a category when it is represented in key:value format\n",
            "type": "string"
          }
        },
        "required": [
          "associations",
          "description",
          "detailedAssociations",
          "extId",
          "id",
          "key",
          "links",
          "ownerUuid",
          "tenantId",
          "type",
          "value"
        ],
        "type": "object"
      }
    },
    "nutanix:index/getCertificateV2:getCertificateV2": {
      "inputs": {
        "description": "A collection of arguments for invoking getCertificateV2.\n",
        "properties": {
          "extId": {
            "type": "string"
          },
          "objectStoreExtId": {
            "type": "string"
          }
        },
        "type": "object",
        "required": [
          "extId",
          "objectStoreExtId"
        ]
      },
      "outputs": {
        "description": "A collection of values returned by getCertificateV2.\n",
        "properties": {
          "alternateFqdns": {
            "items": {
              "$ref": "#/types/nutanix:index%2FgetCertificateV2AlternateFqdn:getCertificateV2AlternateFqdn"
            },
            "type": "array"
          },
          "alternateIps": {
            "items": {
              "$ref": "#/types/nutanix:index%2FgetCertificateV2AlternateIp:getCertificateV2AlternateIp"
            },
            "type": "array"
          },
          "extId": {
            "type": "string"
          },
          "id": {
            "description": "The provider-assigned unique ID for this managed resource.",
            "type": "string"
          },
          "links": {
            "items": {
              "$ref": "#/types/nutanix:index%2FgetCertificateV2Link:getCertificateV2Link"
            },
            "type": "array"
          },
          "metadatas": {
            "items": {
              "$ref": "#/types/nutanix:index%2FgetCertificateV2Metadata:getCertificateV2Metadata"
            },
            "type": "array"
          },
          "objectStoreExtId": {
            "type": "string"
          },
          "tenantId": {
            "type": "string"
          }
        },
        "required": [
          "alternateFqdns",
          "alternateIps",
          "extId",
          "id",
          "links",
          "metadatas",
          "objectStoreExtId",
          "tenantId"
        ],
        "type": "object"
      }
    },
    "nutanix:index/getCertificatesV2:getCertificatesV2": {
      "inputs": {
        "description": "A collection of arguments for invoking getCertificatesV2.\n",
        "properties": {
          "filter": {
            "type": "string"
          },
          "limit": {
            "type": "integer"
          },
          "objectStoreExtId": {
            "type": "string"
          },
          "page": {
            "type": "integer"
          },
          "select": {
            "type": "string"
          }
        },
        "type": "object",
        "required": [
          "objectStoreExtId"
        ]
      },
      "outputs": {
        "description": "A collection of values returned by getCertificatesV2.\n",
        "properties": {
          "certificates": {
            "items": {
              "$ref": "#/types/nutanix:index%2FgetCertificatesV2Certificate:getCertificatesV2Certificate"
            },
            "type": "array"
          },
          "filter": {
            "type": "string"
          },
          "id": {
            "description": "The provider-assigned unique ID for this managed resource.",
            "type": "string"
          },
          "limit": {
            "type": "integer"
          },
          "objectStoreExtId": {
            "type": "string"
          },
          "page": {
            "type": "integer"
          },
          "select": {
            "type": "string"
          }
        },
        "required": [
          "certificates",
          "id",
          "objectStoreExtId"
        ],
        "type": "object"
      }
    },
    "nutanix:index/getCluster:getCluster": {
      "description": "Describes Clusters\n\n",
      "inputs": {
        "description": "A collection of arguments for invoking getCluster.\n",
        "properties": {
          "categories": {
            "type": "array",
            "items": {
              "$ref": "#/types/nutanix:index%2FgetClusterCategory:getClusterCategory"
            },
            "description": "- Categories for the image.\n"
          },
          "clusterId": {
            "type": "string",
            "description": "Represents clusters uuid\n"
          },
          "name": {
            "type": "string",
            "description": "Represents the name of cluster\n"
          }
        },
        "type": "object"
      },
      "outputs": {
        "description": "A collection of values returned by getCluster.\n",
        "properties": {
          "analysisVmEfficiencyMap": {
            "additionalProperties": {
              "type": "string"
            },
            "description": "- Map of cluster efficiency which includes numbers of inefficient vms. The value is populated by analytics on PC. (Readonly)\n",
            "type": "object"
          },
          "apiVersion": {
            "description": "The API version.\n",
            "type": "string"
          },
          "authorizedPublicKeyLists": {
            "items": {
              "$ref": "#/types/nutanix:index%2FgetClusterAuthorizedPublicKeyList:getClusterAuthorizedPublicKeyList"
            },
            "type": "array"
          },
          "build": {
            "additionalProperties": {
              "type": "string"
            },
            "description": "- Cluster build details.\n",
            "type": "object"
          },
          "caCertificateLists": {
            "description": "- Zone name used in value of TZ environment variable.\n",
            "items": {
              "$ref": "#/types/nutanix:index%2FgetClusterCaCertificateList:getClusterCaCertificateList"
            },
            "type": "array"
          },
          "categories": {
            "description": "- Categories for the image.\n",
            "items": {
              "$ref": "#/types/nutanix:index%2FgetClusterCategory:getClusterCategory"
            },
            "type": "array"
          },
          "certificationSigningInfo": {
            "additionalProperties": {
              "type": "string"
            },
            "description": "- Customer information used in Certificate Signing Request for creating digital certificates.\n",
            "type": "object"
          },
          "clientAuth": {
            "additionalProperties": {
              "type": "string"
            },
            "description": "- Client authentication config.\n",
            "type": "object"
          },
          "clusterArch": {
            "description": "- Cluster architecture. (Readonly, Options: Options : X86_64 , PPC64LE)\n",
            "type": "string"
          },
          "clusterId": {
            "type": "string"
          },
          "domainServerCredentials": {
            "additionalProperties": {
              "type": "string"
            },
            "description": "- Cluster domain credentials.\n",
            "type": "object"
          },
          "domainServerName": {
            "description": "- Joined domain name. In 'put' request, empty name will unjoin the cluster from current domain.\n",
            "type": "string"
          },
          "domainServerNameserver": {
            "description": "-  The IP of the nameserver that can resolve the domain name. Must set when joining the domain.\n",
            "type": "string"
          },
          "enabledFeatureLists": {
            "description": "- Array of enabled features.\n",
            "items": {
              "type": "string"
            },
            "type": "array"
          },
          "encryptionStatus": {
            "description": "- Cluster encryption status.\n",
            "type": "string"
          },
          "externalDataServicesIp": {
            "description": "- The cluster IP address that provides external entities access to various cluster data services.\n",
            "type": "string"
          },
          "externalIp": {
            "description": "- The local IP of cluster visible externally.\n",
            "type": "string"
          },
          "externalSubnet": {
            "description": "- External subnet for cross server communication. The format is IP/netmask. (default 172.16.0.0/255.240.0.0)\n",
            "type": "string"
          },
          "gpuDriverVersion": {
            "description": "- GPU driver version.\n",
            "type": "string"
          },
          "httpProxyLists": {
            "description": "- List of proxies to connect to the service centers.\n",
            "items": {
              "$ref": "#/types/nutanix:index%2FgetClusterHttpProxyList:getClusterHttpProxyList"
            },
            "type": "array"
          },
          "httpProxyWhitelists": {
            "description": "- HTTP proxy whitelist.\n",
            "items": {
              "$ref": "#/types/nutanix:index%2FgetClusterHttpProxyWhitelist:getClusterHttpProxyWhitelist"
            },
            "type": "array"
          },
          "id": {
            "description": "The provider-assigned unique ID for this managed resource.",
            "type": "string"
          },
          "internalSubnet": {
            "description": "- The internal subnet is local to every server - its not visible outside.iSCSI requests generated internally within the appliance (by user VMs or VMFS) are sent to the internal subnet. The format is IP/netmask.\n",
            "type": "string"
          },
          "isAvailable": {
            "description": "- Indicates if cluster is available to contact. (Readonly)\n",
            "type": "boolean"
          },
          "managementServerLists": {
            "description": "- List of cluster management servers. (Readonly)\n",
            "items": {
              "$ref": "#/types/nutanix:index%2FgetClusterManagementServerList:getClusterManagementServerList"
            },
            "type": "array"
          },
          "masqueradingIp": {
            "description": "- The cluster NAT'd or proxy IP which maps to the cluster local IP.\n",
            "type": "string"
          },
          "masqueradingPort": {
            "description": "- Port used together with\u003cspan pulumi-lang-nodejs=\" masqueradingIp \" pulumi-lang-dotnet=\" MasqueradingIp \" pulumi-lang-go=\" masqueradingIp \" pulumi-lang-python=\" masquerading_ip \" pulumi-lang-yaml=\" masqueradingIp \" pulumi-lang-java=\" masqueradingIp \"\u003e masquerading_ip \u003c/span\u003eto connect to the cluster.\n",
            "type": "integer"
          },
          "metadata": {
            "additionalProperties": {
              "type": "string"
            },
            "description": "- The image kind metadata.\n",
            "type": "object"
          },
          "name": {
            "description": "- the name.\n",
            "type": "string"
          },
          "nameServerIpLists": {
            "description": "- The list of IP addresses of the name servers.\n",
            "items": {
              "type": "string"
            },
            "type": "array"
          },
          "nfsSubnetWhitelists": {
            "description": "- Comma separated list of subnets (of the form 'a.b.c.d/l.m.n.o') that are allowed to send NFS requests to this container. If not specified, the global NFS whitelist will be looked up for access permission. The internal subnet is always automatically considered part of the whitelist, even if the field below does not explicitly specify it. Similarly, all the hypervisor IPs are considered part of the whitelist. Finally, to permit debugging, all of the SVMs local IPs are considered to be implicitly part of the whitelist.\n",
            "items": {
              "type": "string"
            },
            "type": "array"
          },
          "nodes": {
            "items": {
              "$ref": "#/types/nutanix:index%2FgetClusterNode:getClusterNode"
            },
            "type": "array"
          },
          "ntpServerIpLists": {
            "description": "- The list of IP addresses or FQDNs of the NTP servers.\n",
            "items": {
              "type": "string"
            },
            "type": "array"
          },
          "operationMode": {
            "description": "- Cluster operation mode. - 'NORMAL': Cluster is operating normally. - 'READ_ONLY': Cluster is operating in read only mode. - 'STAND_ALONE': Only one node is operational in the cluster. This is valid only for single node or two node clusters. - 'SWITCH_TO_TWO_NODE': Cluster is moving from single node to two node cluster. - 'OVERRIDE': Valid only for single node cluster. If the user wants to run vms on a single node cluster in read only mode, he can set the cluster peration mode to override. Writes will be allowed in override mode.\n",
            "type": "string"
          },
          "ownerReference": {
            "additionalProperties": {
              "type": "string"
            },
            "description": "- The reference to a user.\n",
            "type": "object"
          },
          "projectReference": {
            "additionalProperties": {
              "type": "string"
            },
            "description": "- The reference to a project.\n",
            "type": "object"
          },
          "serviceLists": {
            "description": "- Array of enabled cluster services. For example, a cluster can function as both AOS and cloud data gateway. - 'AOS': Regular Prism Element - 'PRISM_CENTRAL': Prism Central - 'CLOUD_DATA_GATEWAY': Cloud backup and DR gateway - 'AFS': Cluster for file server - 'WITNESS' : Witness cluster - 'XI_PORTAL': Xi cluster.\n",
            "items": {
              "type": "string"
            },
            "type": "array"
          },
          "smtpServerAddress": {
            "additionalProperties": {
              "type": "string"
            },
            "description": "- SMTP Server Address.\n",
            "type": "object"
          },
          "smtpServerCredentials": {
            "additionalProperties": {
              "type": "string"
            },
            "description": "- SMTP Server Credentials.\n",
            "type": "object"
          },
          "smtpServerEmailAddress": {
            "description": "- SMTP Server Email Address.\n",
            "type": "string"
          },
          "smtpServerProxyTypeLists": {
            "description": "- SMTP Server Proxy Type List\n",
            "items": {
              "type": "string"
            },
            "type": "array"
          },
          "smtpServerType": {
            "description": "- SMTP Server type.\n",
            "type": "string"
          },
          "softwareMapNcc": {
            "additionalProperties": {
              "type": "string"
            },
            "description": "- Map of software on the cluster with software type as the key.\n",
            "type": "object"
          },
          "softwareMapNos": {
            "additionalProperties": {
              "type": "string"
            },
            "description": "- Map of software on the cluster with software type as the key.\n",
            "type": "object"
          },
          "sslKeyExpireDatetime": {
            "description": "- UTC date and time in RFC-3339 format when the key expires\n",
            "type": "string"
          },
          "sslKeyName": {
            "type": "string"
          },
          "sslKeySigningInfo": {
            "additionalProperties": {
              "type": "string"
            },
            "description": "- Customer information used in Certificate Signing Request for creating digital certificates.\n",
            "type": "object"
          },
          "sslKeyType": {
            "description": "- SSL key type. Key types with RSA_2048, ECDSA_256 and ECDSA_384 are supported for key generation and importing.\n",
            "type": "string"
          },
          "state": {
            "description": "- The state of the cluster entity.\n",
            "type": "string"
          },
          "supportedInformationVerbosity": {
            "description": "- Verbosity level settings for populating support information. - 'Nothing': Send nothing - 'Basic': Send basic information - skip core dump and hypervisor stats information - 'BasicPlusCoreDump': Send basic and core dump information - 'All': Send all information (Default value: BASIC_PLUS_CORE_DUMP)\n",
            "type": "string"
          },
          "timezone": {
            "description": "- Zone name used in value of TZ environment variable.\n",
            "type": "string"
          }
        },
        "required": [
          "analysisVmEfficiencyMap",
          "apiVersion",
          "authorizedPublicKeyLists",
          "build",
          "caCertificateLists",
          "categories",
          "certificationSigningInfo",
          "clientAuth",
          "clusterArch",
          "clusterId",
          "domainServerCredentials",
          "domainServerName",
          "domainServerNameserver",
          "enabledFeatureLists",
          "encryptionStatus",
          "externalDataServicesIp",
          "externalIp",
          "externalSubnet",
          "gpuDriverVersion",
          "httpProxyLists",
          "httpProxyWhitelists",
          "id",
          "internalSubnet",
          "isAvailable",
          "managementServerLists",
          "masqueradingIp",
          "masqueradingPort",
          "metadata",
          "name",
          "nameServerIpLists",
          "nfsSubnetWhitelists",
          "nodes",
          "ntpServerIpLists",
          "operationMode",
          "ownerReference",
          "projectReference",
          "serviceLists",
          "smtpServerAddress",
          "smtpServerCredentials",
          "smtpServerEmailAddress",
          "smtpServerProxyTypeLists",
          "smtpServerType",
          "softwareMapNcc",
          "softwareMapNos",
          "sslKeyExpireDatetime",
          "sslKeyName",
          "sslKeySigningInfo",
          "sslKeyType",
          "state",
          "supportedInformationVerbosity",
          "timezone"
        ],
        "type": "object"
      }
    },
    "nutanix:index/getClusterV2:getClusterV2": {
      "description": "Fetches the cluster entity details identified by {extId}.\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as nutanix from \"@pierskarsenbarg/nutanix\";\n\nconst get_cluster = nutanix.getClusterV2({\n    extId: \"c2c249b0-98a0-43fa-9ff6-dcde578d3936\",\n});\n```\n```python\nimport pulumi\nimport pulumi_nutanix as nutanix\n\nget_cluster = nutanix.get_cluster_v2(ext_id=\"c2c249b0-98a0-43fa-9ff6-dcde578d3936\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Nutanix = Pulumi.Nutanix;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var get_cluster = Nutanix.GetClusterV2.Invoke(new()\n    {\n        ExtId = \"c2c249b0-98a0-43fa-9ff6-dcde578d3936\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pierskarsenbarg/pulumi-nutanix/sdk/go/nutanix\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := nutanix.LookupClusterV2(ctx, \u0026nutanix.LookupClusterV2Args{\n\t\t\tExtId: \"c2c249b0-98a0-43fa-9ff6-dcde578d3936\",\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.nutanix.NutanixFunctions;\nimport com.pulumi.nutanix.inputs.GetClusterV2Args;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var get-cluster = NutanixFunctions.getClusterV2(GetClusterV2Args.builder()\n            .extId(\"c2c249b0-98a0-43fa-9ff6-dcde578d3936\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  get-cluster:\n    fn::invoke:\n      function: nutanix:getClusterV2\n      arguments:\n        extId: c2c249b0-98a0-43fa-9ff6-dcde578d3936\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
      "inputs": {
        "description": "A collection of arguments for invoking getClusterV2.\n",
        "properties": {
          "expand": {
            "type": "string",
            "description": "-(Optional) A URL query parameter that allows clients to request related resources when a resource that satisfies a particular request is retrieved. Each expanded item is evaluated relative to the entity containing the property being expanded. Other query options can be applied to an expanded property by appending a semicolon-separated list of query options, enclosed in parentheses, to the property name.\nThe following expansion keys are supported:\n- \"clusterProfile\".\n- \"storageSummary\".\n"
          },
          "extId": {
            "type": "string",
            "description": "-(Required) Represents clusters uuid\n"
          }
        },
        "type": "object",
        "required": [
          "extId"
        ]
      },
      "outputs": {
        "description": "A collection of values returned by getClusterV2.\n",
        "properties": {
          "backupEligibilityScore": {
            "description": "-  Score to indicate how much cluster is eligible for storing domain manager backup.\n",
            "type": "integer"
          },
          "categories": {
            "description": "-  List of categories associated to the PE cluster.\n",
            "items": {
              "type": "string"
            },
            "type": "array"
          },
          "clusterProfileExtId": {
            "description": "-  Cluster profile UUID.\n",
            "type": "string"
          },
          "configs": {
            "description": "-  Cluster configuration details.\n",
            "items": {
              "$ref": "#/types/nutanix:index%2FgetClusterV2Config:getClusterV2Config"
            },
            "type": "array"
          },
          "containerName": {
            "description": "-  The name of the default container created as part of cluster creation. This is part of payload for cluster create operation only.\n",
            "type": "string"
          },
          "expand": {
            "type": "string"
          },
          "extId": {
            "description": "-  A globally unique identifier of an instance that is suitable for external consumption.\n",
            "type": "string"
          },
          "id": {
            "description": "The provider-assigned unique ID for this managed resource.",
            "type": "string"
          },
          "inefficientVmCount": {
            "description": "-  Number of inefficient VMs in the cluster.\n",
            "type": "integer"
          },
          "links": {
            "description": "- A HATEOAS style link for the response. Each link contains a user-friendly name identifying the link and an address for retrieving the particular resource.\n",
            "items": {
              "$ref": "#/types/nutanix:index%2FgetClusterV2Link:getClusterV2Link"
            },
            "type": "array"
          },
          "name": {
            "description": "- HTTP Proxy server name configuration needed to access a cluster which is hosted behind a HTTP Proxy to not reveal its identity.\n",
            "type": "string"
          },
          "networks": {
            "description": "-  Network details of a cluster.\n",
            "items": {
              "$ref": "#/types/nutanix:index%2FgetClusterV2Network:getClusterV2Network"
            },
            "type": "array"
          },
          "nodes": {
            "description": "-  Node reference for a cluster.\n",
            "items": {
              "$ref": "#/types/nutanix:index%2FgetClusterV2Node:getClusterV2Node"
            },
            "type": "array"
          },
          "tenantId": {
            "description": "-  globally unique identifier that represents the tenant that owns this entity. The system automatically assigns it, and it and is immutable from an API consumer perspective (some use cases may cause this Id to change - For instance, a use case may require the transfer of ownership of the entity, but these cases are handled automatically on the server).\n",
            "type": "string"
          },
          "upgradeStatus": {
            "description": "-  Upgrade status of a cluster.\nValid values are:\n- \"CANCELLED\"\tThe cluster upgrade is cancelled.\n- \"FAILED\"\tThe cluster upgrade failed.\n- \"QUEUED\"\tThe cluster upgrade is in the queue.\n- \"SUCCEEDED\"\tThe cluster was upgraded successfully.\n- \"DOWNLOADING\" The luster upgrade is downloading.\n- \"PENDING\"The cluster upgrade is in pending state.\n- \"UPGRADING\" The cluster is in upgrade state.\n- \"PREUPGRADE\" The cluster is in pre-upgrade state.\n- \"SCHEDULED\" The cluster upgrade is in scheduled state.\n",
            "type": "string"
          },
          "vmCount": {
            "description": "-  Number of VMs in the cluster.\n",
            "type": "integer"
          }
        },
        "required": [
          "backupEligibilityScore",
          "categories",
          "clusterProfileExtId",
          "configs",
          "containerName",
          "extId",
          "id",
          "inefficientVmCount",
          "links",
          "name",
          "networks",
          "nodes",
          "tenantId",
          "upgradeStatus",
          "vmCount"
        ],
        "type": "object"
      }
    },
    "nutanix:index/getClusters:getClusters": {
      "description": "Describes Clusters\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as nutanix from \"@pierskarsenbarg/nutanix\";\n\nconst clusters = nutanix.getClusters({});\n```\n```python\nimport pulumi\nimport pulumi_nutanix as nutanix\n\nclusters = nutanix.get_clusters()\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Nutanix = Pulumi.Nutanix;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var clusters = Nutanix.GetClusters.Invoke();\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pierskarsenbarg/pulumi-nutanix/sdk/go/nutanix\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := nutanix.GetClusters(ctx, map[string]interface{}{}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.nutanix.NutanixFunctions;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var clusters = NutanixFunctions.getClusters(%!v(PANIC=Format method: runtime error: invalid memory address or nil pointer dereference);\n\n    }\n}\n```\n```yaml\nvariables:\n  clusters:\n    fn::invoke:\n      function: nutanix:getClusters\n      arguments: {}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Reference\n\nThe \u003cspan pulumi-lang-nodejs=\"`projectReference`\" pulumi-lang-dotnet=\"`ProjectReference`\" pulumi-lang-go=\"`projectReference`\" pulumi-lang-python=\"`project_reference`\" pulumi-lang-yaml=\"`projectReference`\" pulumi-lang-java=\"`projectReference`\"\u003e`project_reference`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`ownerReference`\" pulumi-lang-dotnet=\"`OwnerReference`\" pulumi-lang-go=\"`ownerReference`\" pulumi-lang-python=\"`owner_reference`\" pulumi-lang-yaml=\"`ownerReference`\" pulumi-lang-java=\"`ownerReference`\"\u003e`owner_reference`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`availabilityZoneReference`\" pulumi-lang-dotnet=\"`AvailabilityZoneReference`\" pulumi-lang-go=\"`availabilityZoneReference`\" pulumi-lang-python=\"`availability_zone_reference`\" pulumi-lang-yaml=\"`availabilityZoneReference`\" pulumi-lang-java=\"`availabilityZoneReference`\"\u003e`availability_zone_reference`\u003c/span\u003e, \u003cspan pulumi-lang-nodejs=\"`clusterReference`\" pulumi-lang-dotnet=\"`ClusterReference`\" pulumi-lang-go=\"`clusterReference`\" pulumi-lang-python=\"`cluster_reference`\" pulumi-lang-yaml=\"`clusterReference`\" pulumi-lang-java=\"`clusterReference`\"\u003e`cluster_reference`\u003c/span\u003e, attributes supports the following:\n\n* \u003cspan pulumi-lang-nodejs=\"`kind`\" pulumi-lang-dotnet=\"`Kind`\" pulumi-lang-go=\"`kind`\" pulumi-lang-python=\"`kind`\" pulumi-lang-yaml=\"`kind`\" pulumi-lang-java=\"`kind`\"\u003e`kind`\u003c/span\u003e: - The kind name (Default value: project).\n* \u003cspan pulumi-lang-nodejs=\"`name`\" pulumi-lang-dotnet=\"`Name`\" pulumi-lang-go=\"`name`\" pulumi-lang-python=\"`name`\" pulumi-lang-yaml=\"`name`\" pulumi-lang-java=\"`name`\"\u003e`name`\u003c/span\u003e: - the name.\n* `UUID`: - the UUID.\n\n### Version\n\nThe version attribute supports the following:\n\n* \u003cspan pulumi-lang-nodejs=\"`productName`\" pulumi-lang-dotnet=\"`ProductName`\" pulumi-lang-go=\"`productName`\" pulumi-lang-python=\"`product_name`\" pulumi-lang-yaml=\"`productName`\" pulumi-lang-java=\"`productName`\"\u003e`product_name`\u003c/span\u003e: - Name of the producer/distribution of the image. For example windows or red hat.\n* \u003cspan pulumi-lang-nodejs=\"`productVersion`\" pulumi-lang-dotnet=\"`ProductVersion`\" pulumi-lang-go=\"`productVersion`\" pulumi-lang-python=\"`product_version`\" pulumi-lang-yaml=\"`productVersion`\" pulumi-lang-java=\"`productVersion`\"\u003e`product_version`\u003c/span\u003e: - Version string for the disk image.\n\nSee detailed information in [Nutanix Clusters](https://www.nutanix.dev/api_references/prism-central-v3/#/d93c30e04327e-get-a-list-of-existing-clusters).\n",
      "outputs": {
        "description": "A collection of values returned by getClusters.\n",
        "properties": {
          "apiVersion": {
            "description": "The API version.\n",
            "type": "string"
          },
          "entities": {
            "description": "List of Clusters\n",
            "items": {
              "$ref": "#/types/nutanix:index%2FgetClustersEntity:getClustersEntity"
            },
            "type": "array"
          },
          "id": {
            "description": "The provider-assigned unique ID for this managed resource.",
            "type": "string"
          }
        },
        "required": [
          "apiVersion",
          "entities",
          "id"
        ],
        "type": "object"
      }
    },
    "nutanix:index/getClustersV2:getClustersV2": {
      "description": "Lists all cluster entities registered to Prism Central.\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as nutanix from \"@pierskarsenbarg/nutanix\";\n\nconst cls = nutanix.getClustersV2({});\nconst filtered_cls = nutanix.getClustersV2({\n    filter: \"name eq 'cluster-1'\",\n});\nconst paged_cls = nutanix.getClustersV2({\n    page: 1,\n    limit: 10,\n});\n```\n```python\nimport pulumi\nimport pulumi_nutanix as nutanix\n\ncls = nutanix.get_clusters_v2()\nfiltered_cls = nutanix.get_clusters_v2(filter=\"name eq 'cluster-1'\")\npaged_cls = nutanix.get_clusters_v2(page=1,\n    limit=10)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Nutanix = Pulumi.Nutanix;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var cls = Nutanix.GetClustersV2.Invoke();\n\n    var filtered_cls = Nutanix.GetClustersV2.Invoke(new()\n    {\n        Filter = \"name eq 'cluster-1'\",\n    });\n\n    var paged_cls = Nutanix.GetClustersV2.Invoke(new()\n    {\n        Page = 1,\n        Limit = 10,\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pierskarsenbarg/pulumi-nutanix/sdk/go/nutanix\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := nutanix.GetClustersV2(ctx, \u0026nutanix.GetClustersV2Args{}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = nutanix.GetClustersV2(ctx, \u0026nutanix.GetClustersV2Args{\n\t\t\tFilter: pulumi.StringRef(\"name eq 'cluster-1'\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = nutanix.GetClustersV2(ctx, \u0026nutanix.GetClustersV2Args{\n\t\t\tPage:  pulumi.IntRef(1),\n\t\t\tLimit: pulumi.IntRef(10),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.nutanix.NutanixFunctions;\nimport com.pulumi.nutanix.inputs.GetClustersV2Args;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var cls = NutanixFunctions.getClustersV2(GetClustersV2Args.builder()\n            .build());\n\n        final var filtered-cls = NutanixFunctions.getClustersV2(GetClustersV2Args.builder()\n            .filter(\"name eq 'cluster-1'\")\n            .build());\n\n        final var paged-cls = NutanixFunctions.getClustersV2(GetClustersV2Args.builder()\n            .page(1)\n            .limit(10)\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  cls:\n    fn::invoke:\n      function: nutanix:getClustersV2\n      arguments: {}\n  filtered-cls:\n    fn::invoke:\n      function: nutanix:getClustersV2\n      arguments:\n        filter: name eq 'cluster-1'\n  paged-cls:\n    fn::invoke:\n      function: nutanix:getClustersV2\n      arguments:\n        page: 1\n        limit: 10\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
      "inputs": {
        "description": "A collection of arguments for invoking getClustersV2.\n",
        "properties": {
          "apply": {
            "type": "string",
            "description": "-(Optional) A URL query parameter that allows clients to specify a sequence of transformations to the entity set, such as groupby, filter, aggregate etc. As of now only support for groupby exists.For example '\\$apply=groupby((templateName))' would get all templates grouped by templateName.\nThe apply can be applied on the following fields:\n- config/buildInfo/version\n- nodes/numberOfNodes\n"
          },
          "expand": {
            "type": "string",
            "description": "-(Optional) A URL query parameter that allows clients to request related resources when a resource that satisfies a particular request is retrieved. Each expanded item is evaluated relative to the entity containing the property being expanded. Other query options can be applied to an expanded property by appending a semicolon-separated list of query options, enclosed in parentheses, to the property name. Permissible system query options are \\$filter, \\$select and \\$orderby.\nThe \u003cspan pulumi-lang-nodejs=\"`expand`\" pulumi-lang-dotnet=\"`Expand`\" pulumi-lang-go=\"`expand`\" pulumi-lang-python=\"`expand`\" pulumi-lang-yaml=\"`expand`\" pulumi-lang-java=\"`expand`\"\u003e`expand`\u003c/span\u003e can be applied on the following fields:\n- clusterProfile\n- storageSummary\n"
          },
          "filter": {
            "type": "string",
            "description": "-(Optional) A URL query parameter that allows clients to filter a collection of resources. The expression specified with \\$filter is evaluated for each resource in the collection, and only items where the expression evaluates to true are included in the response. Expression specified with the \\$filter must conform to the OData V4.01 URL conventions. For example, filter '\\$filter=name eq 'karbon-ntnx-1.0' would filter the result on cluster name 'karbon-ntnx1.0', filter '\\$filter=startswith(name, 'C')' would filter on cluster name starting with 'C'.\nThe filter can be applied to the following fields:\n- backupEligibilityScore\n- clusterProfileExtId\n- config/buildInfo/version\n- config/clusterFunction\n- config/encryptionInTransitStatus\n- config/encryptionOption\n- config/encryptionScope\n- config/hypervisorTypes\n- config/isAvailable\n- extId\n- name\n- network/keyManagementServerType\n- upgradeStatus\n"
          },
          "limit": {
            "type": "integer",
            "description": "-(Optional) A URL query parameter that specifies the total number of records returned in the result set. Must be a positive integer between 1 and 100. Any number out of this range will lead to a validation error. If the limit is not provided, a default value of 50 records will be returned in the result set.\n"
          },
          "orderBy": {
            "type": "string",
            "description": "-(Optional) A URL query parameter that allows clients to specify the sort criteria for the returned list of objects. Resources can be sorted in ascending order using asc or descending order using desc. If asc or desc are not specified, the resources will be sorted in ascending order by default. For example, '\\$orderby=templateName desc' would get all templates sorted by templateName in descending order.\nThe orderby can be applied to the following fields:\n- backupEligibilityScore\n- config/buildInfo/version\n- config/isAvailable\n- extId\n- inefficientVmCount\n- name\n- network/keyManagementServerType\n- nodes/numberOfNodes\n- upgradeStatus\n- vmCount\n"
          },
          "page": {
            "type": "integer",
            "description": "-(Optional) A URL query parameter that specifies the page number of the result set. It must be a positive integer between 0 and the maximum number of pages that are available for that resource. Any number out of this range might lead to no results.\n"
          },
          "select": {
            "type": "string",
            "description": "-(Optional) A URL query parameter that allows clients to request a specific set of properties for each entity or complex type. Expression specified with the \\$select must conform to the OData V4.01 URL conventions. If a \\$select expression consists of a single select item that is an asterisk (i.e., *), then all properties on the matching resource will be returned.\nThe select  can be applied to the following fields:\n- backupEligibilityScore\n- inefficientVmCount\n- name\n- upgradeStatus\n- vmCount\n"
          }
        },
        "type": "object"
      },
      "outputs": {
        "description": "A collection of values returned by getClustersV2.\n",
        "properties": {
          "apply": {
            "type": "string"
          },
          "clusterEntities": {
            "description": "- List of cluster entities.\n",
            "items": {
              "$ref": "#/types/nutanix:index%2FgetClustersV2ClusterEntity:getClustersV2ClusterEntity"
            },
            "type": "array"
          },
          "expand": {
            "type": "string"
          },
          "filter": {
            "type": "string"
          },
          "id": {
            "description": "The provider-assigned unique ID for this managed resource.",
            "type": "string"
          },
          "limit": {
            "type": "integer"
          },
          "orderBy": {
            "type": "string"
          },
          "page": {
            "type": "integer"
          },
          "select": {
            "type": "string"
          }
        },
        "required": [
          "clusterEntities",
          "id"
        ],
        "type": "object"
      }
    },
    "nutanix:index/getDirectoryServiceV2:getDirectoryServiceV2": {
      "description": "Provides a datasource to retrieve all Directory Service(s).\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as nutanix from \"@pierskarsenbarg/nutanix\";\n\n// Get a Directory Service.\nconst get_active_directory = nutanix.getDirectoryServiceV2({\n    extId: \"8a938cc5-282b-48c4-81be-de22de145d07\",\n});\n```\n```python\nimport pulumi\nimport pulumi_nutanix as nutanix\n\n# Get a Directory Service.\nget_active_directory = nutanix.get_directory_service_v2(ext_id=\"8a938cc5-282b-48c4-81be-de22de145d07\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Nutanix = Pulumi.Nutanix;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    // Get a Directory Service.\n    var get_active_directory = Nutanix.GetDirectoryServiceV2.Invoke(new()\n    {\n        ExtId = \"8a938cc5-282b-48c4-81be-de22de145d07\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pierskarsenbarg/pulumi-nutanix/sdk/go/nutanix\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t// Get a Directory Service.\n\t\t_, err := nutanix.GetDirectoryServiceV2(ctx, \u0026nutanix.GetDirectoryServiceV2Args{\n\t\t\tExtId: \"8a938cc5-282b-48c4-81be-de22de145d07\",\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.nutanix.NutanixFunctions;\nimport com.pulumi.nutanix.inputs.GetDirectoryServiceV2Args;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        // Get a Directory Service.\n        final var get-active-directory = NutanixFunctions.getDirectoryServiceV2(GetDirectoryServiceV2Args.builder()\n            .extId(\"8a938cc5-282b-48c4-81be-de22de145d07\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  # Get a Directory Service.\n  get-active-directory:\n    fn::invoke:\n      function: nutanix:getDirectoryServiceV2\n      arguments:\n        extId: 8a938cc5-282b-48c4-81be-de22de145d07\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
      "inputs": {
        "description": "A collection of arguments for invoking getDirectoryServiceV2.\n",
        "properties": {
          "extId": {
            "type": "string",
            "description": "-(Required) External identifier of the Directory Service.\n"
          }
        },
        "type": "object",
        "required": [
          "extId"
        ]
      },
      "outputs": {
        "description": "A collection of values returned by getDirectoryServiceV2.\n",
        "properties": {
          "createdBy": {
            "description": "- User or Service who created the Directory Service.\n",
            "type": "string"
          },
          "createdTime": {
            "description": "- Creation time of the Directory Service.\n",
            "type": "string"
          },
          "directoryType": {
            "description": "- Type of Directory Service, Supported values are: \"ACTIVE_DIRECTORY\" (Directory Service type is Active Directory.) and \"OPEN_LDAP\" (Directory Service type is Open LDAP.)\n",
            "type": "string"
          },
          "domainName": {
            "description": "- Domain name for the Directory Service.\n",
            "type": "string"
          },
          "extId": {
            "description": "- A globally unique identifier of an instance that is suitable for external consumption.\n",
            "type": "string"
          },
          "groupSearchType": {
            "description": "- Group membership search type for the Directory Service. Supported values are: \"NON_RECURSIVE\" (Doesn't search recursively within groups.) and \"RECURSIVE\" (Searches recursively within groups.)\n",
            "type": "string"
          },
          "id": {
            "description": "The provider-assigned unique ID for this managed resource.",
            "type": "string"
          },
          "lastUpdatedTime": {
            "description": "- Last updated time of the Directory Service.\n",
            "type": "string"
          },
          "name": {
            "description": "- Name for the Directory Service.\n",
            "type": "string"
          },
          "openLdapConfigurations": {
            "description": "- Configuration for OpenLDAP Directory Service.\n",
            "items": {
              "$ref": "#/types/nutanix:index%2FgetDirectoryServiceV2OpenLdapConfiguration:getDirectoryServiceV2OpenLdapConfiguration"
            },
            "type": "array"
          },
          "secondaryUrls": {
            "description": "- Secondary URL for the Directory Service.\n",
            "items": {
              "type": "string"
            },
            "type": "array"
          },
          "serviceAccounts": {
            "description": "- Information of Service account to connect to the Directory Service.\n",
            "items": {
              "$ref": "#/types/nutanix:index%2FgetDirectoryServiceV2ServiceAccount:getDirectoryServiceV2ServiceAccount"
            },
            "type": "array"
          },
          "url": {
            "description": "- URL for the Directory Service.\n",
            "type": "string"
          },
          "whiteListedGroups": {
            "description": "- List of allowed User Groups for the Directory Service.\n",
            "items": {
              "type": "string"
            },
            "type": "array"
          }
        },
        "required": [
          "createdBy",
          "createdTime",
          "directoryType",
          "domainName",
          "extId",
          "groupSearchType",
          "id",
          "lastUpdatedTime",
          "name",
          "openLdapConfigurations",
          "secondaryUrls",
          "serviceAccounts",
          "url",
          "whiteListedGroups"
        ],
        "type": "object"
      }
    },
    "nutanix:index/getDirectoryServicesV2:getDirectoryServicesV2": {
      "description": "Provides a datasource to retrieve all Directory Service(s).\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as nutanix from \"@pierskarsenbarg/nutanix\";\n\nconst example = nutanix.getDirectoryServicesV2({});\n```\n```python\nimport pulumi\nimport pulumi_nutanix as nutanix\n\nexample = nutanix.get_directory_services_v2()\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Nutanix = Pulumi.Nutanix;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var example = Nutanix.GetDirectoryServicesV2.Invoke();\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pierskarsenbarg/pulumi-nutanix/sdk/go/nutanix\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := nutanix.LookupDirectoryServicesV2(ctx, \u0026nutanix.LookupDirectoryServicesV2Args{}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.nutanix.NutanixFunctions;\nimport com.pulumi.nutanix.inputs.GetDirectoryServicesV2Args;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var example = NutanixFunctions.getDirectoryServicesV2(GetDirectoryServicesV2Args.builder()\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  example:\n    fn::invoke:\n      function: nutanix:getDirectoryServicesV2\n      arguments: {}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
      "inputs": {
        "description": "A collection of arguments for invoking getDirectoryServicesV2.\n",
        "properties": {
          "filter": {
            "type": "string",
            "description": "-(Optional) A URL query parameter that allows clients to filter a collection of resources. The expression specified with $filter is evaluated for each resource in the collection, and only items where the expression evaluates to true are included in the response. Expression specified with the $filter must conform to the OData V4.01 URL conventions. For example, filter '$filter=name eq 'karbon-ntnx-1.0' would filter the result on cluster name 'karbon-ntnx1.0', filter '$filter=startswith(name, 'C')' would filter on cluster name starting with 'C'. The filter can be applied to the following fields:\n- createdBy\n- domainName\n- extId\n- name\n"
          },
          "limit": {
            "type": "integer",
            "description": "-(Optional) A URL query parameter that specifies the total number of records returned in the result set. Must be a positive integer between 1 and 100. Any number out of this range will lead to a validation error. If the limit is not provided, a default value of 50 records will be returned in the result set.\n"
          },
          "orderBy": {
            "type": "string",
            "description": "-(Optional) A URL query parameter that allows clients to specify the sort criteria for the returned list of objects. Resources can be sorted in ascending order using asc or descending order using desc. If asc or desc are not specified, the resources will be sorted in ascending order by default. For example, '$orderby=templateName desc' would get all templates sorted by templateName in descending order. The orderby can be applied to the following fields:\n- createdTime\n- domainName\n- lastUpdatedTime\n- name\n"
          },
          "page": {
            "type": "integer",
            "description": "-(Optional) A URL query parameter that specifies the page number of the result set. It must be a positive integer between 0 and the maximum number of pages that are available for that resource. Any number out of this range might lead to no results.\n"
          },
          "select": {
            "type": "string",
            "description": "-(Optional) A URL query parameter that allows clients to request a specific set of properties for each entity or complex type. Expression specified with the $select must conform to the OData V4.01 URL conventions. If a $select expression consists of a single select item that is an asterisk (i.e., *), then all properties on the matching resource will be returned. it can be applied to the following fields:\n- createdBy\n- createdTime\n- directoryType\n- domainName\n- extId\n- groupSearchType\n- lastUpdatedTime\n- links\n- name\n- openLdapConfiguration/userConfiguration\n- openLdapConfiguration/userGroupConfiguration\n- secondaryUrls\n- serviceAccount/password\n- serviceAccount/username\n- tenantId\n- url\n- whiteListedGroups\n"
          }
        },
        "type": "object"
      },
      "outputs": {
        "description": "A collection of values returned by getDirectoryServicesV2.\n",
        "properties": {
          "directoryServices": {
            "description": "- list of all Directory Service(s).\n",
            "items": {
              "$ref": "#/types/nutanix:index%2FgetDirectoryServicesV2DirectoryService:getDirectoryServicesV2DirectoryService"
            },
            "type": "array"
          },
          "filter": {
            "type": "string"
          },
          "id": {
            "description": "The provider-assigned unique ID for this managed resource.",
            "type": "string"
          },
          "limit": {
            "type": "integer"
          },
          "orderBy": {
            "type": "string"
          },
          "page": {
            "type": "integer"
          },
          "select": {
            "type": "string"
          }
        },
        "required": [
          "directoryServices",
          "id"
        ],
        "type": "object"
      }
    },
    "nutanix:index/getFloatingIp:getFloatingIp": {
      "description": "Provides a datasource to retrieve floating IPs with\u003cspan pulumi-lang-nodejs=\" floatingIpUuid \" pulumi-lang-dotnet=\" FloatingIpUuid \" pulumi-lang-go=\" floatingIpUuid \" pulumi-lang-python=\" floating_ip_uuid \" pulumi-lang-yaml=\" floatingIpUuid \" pulumi-lang-java=\" floatingIpUuid \"\u003e floating_ip_uuid \u003c/span\u003e.\n\n",
      "inputs": {
        "description": "A collection of arguments for invoking getFloatingIp.\n",
        "properties": {
          "floatingIpUuid": {
            "type": "string",
            "description": "Floating IP UUID\n"
          }
        },
        "type": "object",
        "required": [
          "floatingIpUuid"
        ]
      },
      "outputs": {
        "description": "A collection of values returned by getFloatingIp.\n",
        "properties": {
          "apiVersion": {
            "description": "The version of the API.\n",
            "type": "string"
          },
          "floatingIpUuid": {
            "type": "string"
          },
          "id": {
            "description": "The provider-assigned unique ID for this managed resource.",
            "type": "string"
          },
          "metadata": {
            "additionalProperties": {
              "type": "string"
            },
            "description": "- The\u003cspan pulumi-lang-nodejs=\" floatingIp \" pulumi-lang-dotnet=\" FloatingIp \" pulumi-lang-go=\" floatingIp \" pulumi-lang-python=\" floating_ip \" pulumi-lang-yaml=\" floatingIp \" pulumi-lang-java=\" floatingIp \"\u003e floating_ip \u003c/span\u003ekind metadata.\n",
            "type": "object"
          },
          "specs": {
            "description": "Floating IP spec\n",
            "items": {
              "$ref": "#/types/nutanix:index%2FgetFloatingIpSpec:getFloatingIpSpec"
            },
            "type": "array"
          },
          "statuses": {
            "description": "Floating IP output status\n",
            "items": {
              "$ref": "#/types/nutanix:index%2FgetFloatingIpStatus:getFloatingIpStatus"
            },
            "type": "array"
          }
        },
        "required": [
          "apiVersion",
          "floatingIpUuid",
          "id",
          "metadata",
          "specs",
          "statuses"
        ],
        "type": "object"
      }
    },
    "nutanix:index/getFloatingIpV2:getFloatingIpV2": {
      "description": "Provides a datasource to retrieve the floating IP for this extId.\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as nutanix from \"@pierskarsenbarg/nutanix\";\n\nconst get_floating_ip = nutanix.getFloatingIpV2({\n    extId: \"cf1a7643-605e-4622-9f2a-b3fdccdbd072\",\n});\n```\n```python\nimport pulumi\nimport pulumi_nutanix as nutanix\n\nget_floating_ip = nutanix.get_floating_ip_v2(ext_id=\"cf1a7643-605e-4622-9f2a-b3fdccdbd072\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Nutanix = Pulumi.Nutanix;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var get_floating_ip = Nutanix.GetFloatingIpV2.Invoke(new()\n    {\n        ExtId = \"cf1a7643-605e-4622-9f2a-b3fdccdbd072\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pierskarsenbarg/pulumi-nutanix/sdk/go/nutanix\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := nutanix.LookupFloatingIpV2(ctx, \u0026nutanix.LookupFloatingIpV2Args{\n\t\t\tExtId: \"cf1a7643-605e-4622-9f2a-b3fdccdbd072\",\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.nutanix.NutanixFunctions;\nimport com.pulumi.nutanix.inputs.GetFloatingIpV2Args;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var get-floating-ip = NutanixFunctions.getFloatingIpV2(GetFloatingIpV2Args.builder()\n            .extId(\"cf1a7643-605e-4622-9f2a-b3fdccdbd072\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  get-floating-ip:\n    fn::invoke:\n      function: nutanix:getFloatingIpV2\n      arguments:\n        extId: cf1a7643-605e-4622-9f2a-b3fdccdbd072\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
      "inputs": {
        "description": "A collection of arguments for invoking getFloatingIpV2.\n",
        "properties": {
          "extId": {
            "type": "string",
            "description": "Floating IP UUID\n"
          }
        },
        "type": "object",
        "required": [
          "extId"
        ]
      },
      "outputs": {
        "description": "A collection of values returned by getFloatingIpV2.\n",
        "properties": {
          "associationStatus": {
            "description": "Association status of floating IP.\n",
            "type": "string"
          },
          "associations": {
            "description": "Association of the Floating IP with either NIC or Private IP\n",
            "items": {
              "$ref": "#/types/nutanix:index%2FgetFloatingIpV2Association:getFloatingIpV2Association"
            },
            "type": "array"
          },
          "description": {
            "description": "Description for the Floating IP.\n",
            "type": "string"
          },
          "extId": {
            "type": "string"
          },
          "externalSubnetReference": {
            "description": "External subnet reference for the Floating IP to be allocated in on-prem only.\n",
            "type": "string"
          },
          "externalSubnets": {
            "description": "Networking common base object\n",
            "items": {
              "$ref": "#/types/nutanix:index%2FgetFloatingIpV2ExternalSubnet:getFloatingIpV2ExternalSubnet"
            },
            "type": "array"
          },
          "floatingIpValue": {
            "description": "Floating IP value in string\n",
            "type": "string"
          },
          "floatingIps": {
            "description": "Floating IP address.\n",
            "items": {
              "$ref": "#/types/nutanix:index%2FgetFloatingIpV2FloatingIp:getFloatingIpV2FloatingIp"
            },
            "type": "array"
          },
          "id": {
            "description": "The provider-assigned unique ID for this managed resource.",
            "type": "string"
          },
          "links": {
            "description": "A HATEOAS style link for the response. Each link contains a user-friendly name identifying the link and an address for retrieving the particular resource.\n",
            "items": {
              "$ref": "#/types/nutanix:index%2FgetFloatingIpV2Link:getFloatingIpV2Link"
            },
            "type": "array"
          },
          "metadatas": {
            "description": "Metadata associated with this resource.\n",
            "items": {
              "$ref": "#/types/nutanix:index%2FgetFloatingIpV2Metadata:getFloatingIpV2Metadata"
            },
            "type": "array"
          },
          "name": {
            "description": "Name of the floating IP.\n",
            "type": "string"
          },
          "privateIp": {
            "description": "Private IP value in string\n",
            "type": "string"
          },
          "tenantId": {
            "description": "A globally unique identifier that represents the tenant that owns this entity.\n",
            "type": "string"
          },
          "vmNicReference": {
            "description": "VM NIC reference.\n",
            "type": "string"
          },
          "vmNics": {
            "description": "Virtual NIC for projections\n",
            "items": {
              "$ref": "#/types/nutanix:index%2FgetFloatingIpV2VmNic:getFloatingIpV2VmNic"
            },
            "type": "array"
          },
          "vpcReference": {
            "description": "VPC reference UUID\n",
            "type": "string"
          },
          "vpcs": {
            "description": "Networking common base object\n",
            "items": {
              "$ref": "#/types/nutanix:index%2FgetFloatingIpV2Vpc:getFloatingIpV2Vpc"
            },
            "type": "array"
          }
        },
        "required": [
          "associationStatus",
          "associations",
          "description",
          "extId",
          "externalSubnetReference",
          "externalSubnets",
          "floatingIpValue",
          "floatingIps",
          "id",
          "links",
          "metadatas",
          "name",
          "privateIp",
          "tenantId",
          "vmNicReference",
          "vmNics",
          "vpcReference",
          "vpcs"
        ],
        "type": "object"
      }
    },
    "nutanix:index/getFloatingIps:getFloatingIps": {
      "description": "Provides a datasource to retrieve all the floating IPs .\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as nutanix from \"@pierskarsenbarg/nutanix\";\n\nconst test = nutanix.getFloatingIps({});\n```\n```python\nimport pulumi\nimport pulumi_nutanix as nutanix\n\ntest = nutanix.get_floating_ips()\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Nutanix = Pulumi.Nutanix;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var test = Nutanix.GetFloatingIps.Invoke();\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pierskarsenbarg/pulumi-nutanix/sdk/go/nutanix\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := nutanix.GetFloatingIps(ctx, \u0026nutanix.GetFloatingIpsArgs{}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.nutanix.NutanixFunctions;\nimport com.pulumi.nutanix.inputs.GetFloatingIpsArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var test = NutanixFunctions.getFloatingIps(GetFloatingIpsArgs.builder()\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  test:\n    fn::invoke:\n      function: nutanix:getFloatingIps\n      arguments: {}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
      "inputs": {
        "description": "A collection of arguments for invoking getFloatingIps.\n",
        "properties": {
          "metadatas": {
            "type": "array",
            "items": {
              "$ref": "#/types/nutanix:index%2FgetFloatingIpsMetadata:getFloatingIpsMetadata"
            },
            "description": "- The\u003cspan pulumi-lang-nodejs=\" floatingIp \" pulumi-lang-dotnet=\" FloatingIp \" pulumi-lang-go=\" floatingIp \" pulumi-lang-python=\" floating_ip \" pulumi-lang-yaml=\" floatingIp \" pulumi-lang-java=\" floatingIp \"\u003e floating_ip \u003c/span\u003ekind metadata.\n"
          }
        },
        "type": "object"
      },
      "outputs": {
        "description": "A collection of values returned by getFloatingIps.\n",
        "properties": {
          "apiVersion": {
            "description": "version of the API\n",
            "type": "string"
          },
          "entities": {
            "description": "List of Floating IPs.\n",
            "items": {
              "$ref": "#/types/nutanix:index%2FgetFloatingIpsEntity:getFloatingIpsEntity"
            },
            "type": "array"
          },
          "id": {
            "description": "The provider-assigned unique ID for this managed resource.",
            "type": "string"
          },
          "metadatas": {
            "description": "- The\u003cspan pulumi-lang-nodejs=\" floatingIp \" pulumi-lang-dotnet=\" FloatingIp \" pulumi-lang-go=\" floatingIp \" pulumi-lang-python=\" floating_ip \" pulumi-lang-yaml=\" floatingIp \" pulumi-lang-java=\" floatingIp \"\u003e floating_ip \u003c/span\u003ekind metadata.\n",
            "items": {
              "$ref": "#/types/nutanix:index%2FgetFloatingIpsMetadata:getFloatingIpsMetadata"
            },
            "type": "array"
          }
        },
        "required": [
          "apiVersion",
          "entities",
          "id",
          "metadatas"
        ],
        "type": "object"
      }
    },
    "nutanix:index/getFloatingIpsV2:getFloatingIpsV2": {
      "description": "Provides a datasource to retrieve floating IP with\u003cspan pulumi-lang-nodejs=\" floatingIpUuid \" pulumi-lang-dotnet=\" FloatingIpUuid \" pulumi-lang-go=\" floatingIpUuid \" pulumi-lang-python=\" floating_ip_uuid \" pulumi-lang-yaml=\" floatingIpUuid \" pulumi-lang-java=\" floatingIpUuid \"\u003e floating_ip_uuid \u003c/span\u003e.\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as nutanix from \"@pierskarsenbarg/nutanix\";\n\nconst floating_ips = nutanix.getFloatingIpsV2({});\nconst floating_ips_filter = nutanix.getFloatingIpsV2({\n    filter: \"name eq 'floating_ip_example'\",\n});\nconst floating_ips_limit = nutanix.getFloatingIpsV2({\n    limit: 10,\n});\nconst floating_ips_filter_limit = nutanix.getFloatingIpsV2({\n    filter: \"name eq 'floating_ip_example'\",\n    limit: 10,\n});\n```\n```python\nimport pulumi\nimport pulumi_nutanix as nutanix\n\nfloating_ips = nutanix.get_floating_ips_v2()\nfloating_ips_filter = nutanix.get_floating_ips_v2(filter=\"name eq 'floating_ip_example'\")\nfloating_ips_limit = nutanix.get_floating_ips_v2(limit=10)\nfloating_ips_filter_limit = nutanix.get_floating_ips_v2(filter=\"name eq 'floating_ip_example'\",\n    limit=10)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Nutanix = Pulumi.Nutanix;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var floating_ips = Nutanix.GetFloatingIpsV2.Invoke();\n\n    var floating_ips_filter = Nutanix.GetFloatingIpsV2.Invoke(new()\n    {\n        Filter = \"name eq 'floating_ip_example'\",\n    });\n\n    var floating_ips_limit = Nutanix.GetFloatingIpsV2.Invoke(new()\n    {\n        Limit = 10,\n    });\n\n    var floating_ips_filter_limit = Nutanix.GetFloatingIpsV2.Invoke(new()\n    {\n        Filter = \"name eq 'floating_ip_example'\",\n        Limit = 10,\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pierskarsenbarg/pulumi-nutanix/sdk/go/nutanix\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := nutanix.GetFloatingIpsV2(ctx, \u0026nutanix.GetFloatingIpsV2Args{}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = nutanix.GetFloatingIpsV2(ctx, \u0026nutanix.GetFloatingIpsV2Args{\n\t\t\tFilter: pulumi.StringRef(\"name eq 'floating_ip_example'\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = nutanix.GetFloatingIpsV2(ctx, \u0026nutanix.GetFloatingIpsV2Args{\n\t\t\tLimit: pulumi.IntRef(10),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = nutanix.GetFloatingIpsV2(ctx, \u0026nutanix.GetFloatingIpsV2Args{\n\t\t\tFilter: pulumi.StringRef(\"name eq 'floating_ip_example'\"),\n\t\t\tLimit:  pulumi.IntRef(10),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.nutanix.NutanixFunctions;\nimport com.pulumi.nutanix.inputs.GetFloatingIpsV2Args;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var floating-ips = NutanixFunctions.getFloatingIpsV2(GetFloatingIpsV2Args.builder()\n            .build());\n\n        final var floating-ips-filter = NutanixFunctions.getFloatingIpsV2(GetFloatingIpsV2Args.builder()\n            .filter(\"name eq 'floating_ip_example'\")\n            .build());\n\n        final var floating-ips-limit = NutanixFunctions.getFloatingIpsV2(GetFloatingIpsV2Args.builder()\n            .limit(10)\n            .build());\n\n        final var floating-ips-filter-limit = NutanixFunctions.getFloatingIpsV2(GetFloatingIpsV2Args.builder()\n            .filter(\"name eq 'floating_ip_example'\")\n            .limit(10)\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  floating-ips:\n    fn::invoke:\n      function: nutanix:getFloatingIpsV2\n      arguments: {}\n  floating-ips-filter:\n    fn::invoke:\n      function: nutanix:getFloatingIpsV2\n      arguments:\n        filter: name eq 'floating_ip_example'\n  floating-ips-limit:\n    fn::invoke:\n      function: nutanix:getFloatingIpsV2\n      arguments:\n        limit: 10\n  floating-ips-filter-limit:\n    fn::invoke:\n      function: nutanix:getFloatingIpsV2\n      arguments:\n        filter: name eq 'floating_ip_example'\n        limit: 10\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
      "inputs": {
        "description": "A collection of arguments for invoking getFloatingIpsV2.\n",
        "properties": {
          "expand": {
            "type": "string",
            "description": "A URL query parameter that allows clients to request related resources when a resource that satisfies a particular request is retrieved. The expand can be applied to the following fields:\n- externalSubnet\n- vpc\n- vmNic\n"
          },
          "filter": {
            "type": "string",
            "description": "A URL query parameter that allows clients to filter a collection of resources. The filter can be applied to the following fields:\n- externalSubnetReference\n- floatingIp/ipv4/value\n- floatingIp/ipv6/value\n- loadBalancerSessionReference\n- name\n"
          },
          "limit": {
            "type": "integer",
            "description": "A URL query parameter that specifies the total number of records returned in the result set. Must be a positive integer between 1 and 100. Any number out of this range will lead to a validation error. If the limit is not provided, a default value of 50 records will be returned in the result set.\n"
          },
          "orderBy": {
            "type": "string",
            "description": "A URL query parameter that allows clients to specify the sort criteria for the returned list of objects. Resources can be sorted in ascending order using asc or descending order using desc. If asc or desc are not specified, the resources will be sorted in ascending order by default. The orderby can be applied to the following fields:\n- floatingIp/ipv4/value\n- floatingIp/ipv6/value\n- name\n"
          },
          "page": {
            "type": "integer",
            "description": "A URL query parameter that specifies the page number of the result set. It must be a positive integer between 0 and the maximum number of pages that are available for that resource. Any number out of this range might lead to no results.\n"
          }
        },
        "type": "object"
      },
      "outputs": {
        "description": "A collection of values returned by getFloatingIpsV2.\n",
        "properties": {
          "expand": {
            "type": "string"
          },
          "filter": {
            "type": "string"
          },
          "floatingIps": {
            "description": "List of all Floating IPs.\n",
            "items": {
              "$ref": "#/types/nutanix:index%2FgetFloatingIpsV2FloatingIp:getFloatingIpsV2FloatingIp"
            },
            "type": "array"
          },
          "id": {
            "description": "The provider-assigned unique ID for this managed resource.",
            "type": "string"
          },
          "limit": {
            "type": "integer"
          },
          "orderBy": {
            "type": "string"
          },
          "page": {
            "type": "integer"
          }
        },
        "required": [
          "floatingIps",
          "id"
        ],
        "type": "object"
      }
    },
    "nutanix:index/getFoundationCentralApiKeys:getFoundationCentralApiKeys": {
      "description": "Get an api key given its UUID.\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as nutanix from \"@pierskarsenbarg/nutanix\";\n\nconst apiKeysList = nutanix.getFoundationCentralApiKeys({\n    keyUuid: \"\u003cKEY_UUID\u003e\",\n});\n```\n```python\nimport pulumi\nimport pulumi_nutanix as nutanix\n\napi_keys_list = nutanix.get_foundation_central_api_keys(key_uuid=\"\u003cKEY_UUID\u003e\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Nutanix = Pulumi.Nutanix;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var apiKeysList = Nutanix.GetFoundationCentralApiKeys.Invoke(new()\n    {\n        KeyUuid = \"\u003cKEY_UUID\u003e\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pierskarsenbarg/pulumi-nutanix/sdk/go/nutanix\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := nutanix.LookupFoundationCentralApiKeys(ctx, \u0026nutanix.LookupFoundationCentralApiKeysArgs{\n\t\t\tKeyUuid: \"\u003cKEY_UUID\u003e\",\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.nutanix.NutanixFunctions;\nimport com.pulumi.nutanix.inputs.GetFoundationCentralApiKeysArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var apiKeysList = NutanixFunctions.getFoundationCentralApiKeys(GetFoundationCentralApiKeysArgs.builder()\n            .keyUuid(\"\u003cKEY_UUID\u003e\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  apiKeysList:\n    fn::invoke:\n      function: nutanix:getFoundationCentralApiKeys\n      arguments:\n        keyUuid: \u003cKEY_UUID\u003e\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
      "inputs": {
        "description": "A collection of arguments for invoking getFoundationCentralApiKeys.\n",
        "properties": {
          "keyUuid": {
            "type": "string",
            "description": "UUID of the key which needs to be fetched.\n"
          }
        },
        "type": "object",
        "required": [
          "keyUuid"
        ]
      },
      "outputs": {
        "description": "A collection of values returned by getFoundationCentralApiKeys.\n",
        "properties": {
          "alias": {
            "description": "Alias of the api key.\n",
            "type": "string"
          },
          "apiKey": {
            "description": "Api key in string format.\n",
            "secret": true,
            "type": "string"
          },
          "createdTimestamp": {
            "description": "Time when the api key was created.\n",
            "type": "string"
          },
          "currentTime": {
            "description": "Current time of Foundation Central.\n",
            "type": "string"
          },
          "id": {
            "description": "The provider-assigned unique ID for this managed resource.",
            "type": "string"
          },
          "keyUuid": {
            "description": "UUID of the api key.\n",
            "type": "string"
          }
        },
        "required": [
          "alias",
          "apiKey",
          "createdTimestamp",
          "currentTime",
          "id",
          "keyUuid"
        ],
        "type": "object"
      }
    },
    "nutanix:index/getFoundationCentralClusterDetails:getFoundationCentralClusterDetails": {
      "description": "Get a cluster details created using Foundation Central.\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as nutanix from \"@pierskarsenbarg/nutanix\";\n\nconst imagedClusterDetails = nutanix.getFoundationCentralClusterDetails({\n    imagedClusterUuid: \"\u003cCLUSTER-UUID\u003e\",\n});\n```\n```python\nimport pulumi\nimport pulumi_nutanix as nutanix\n\nimaged_cluster_details = nutanix.get_foundation_central_cluster_details(imaged_cluster_uuid=\"\u003cCLUSTER-UUID\u003e\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Nutanix = Pulumi.Nutanix;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var imagedClusterDetails = Nutanix.GetFoundationCentralClusterDetails.Invoke(new()\n    {\n        ImagedClusterUuid = \"\u003cCLUSTER-UUID\u003e\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pierskarsenbarg/pulumi-nutanix/sdk/go/nutanix\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := nutanix.GetFoundationCentralClusterDetails(ctx, \u0026nutanix.GetFoundationCentralClusterDetailsArgs{\n\t\t\tImagedClusterUuid: \"\u003cCLUSTER-UUID\u003e\",\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.nutanix.NutanixFunctions;\nimport com.pulumi.nutanix.inputs.GetFoundationCentralClusterDetailsArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var imagedClusterDetails = NutanixFunctions.getFoundationCentralClusterDetails(GetFoundationCentralClusterDetailsArgs.builder()\n            .imagedClusterUuid(\"\u003cCLUSTER-UUID\u003e\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  imagedClusterDetails:\n    fn::invoke:\n      function: nutanix:getFoundationCentralClusterDetails\n      arguments:\n        imagedClusterUuid: \u003cCLUSTER-UUID\u003e\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
      "inputs": {
        "description": "A collection of arguments for invoking getFoundationCentralClusterDetails.\n",
        "properties": {
          "clusterExternalIp": {
            "type": "string",
            "description": "External management ip of the cluster.\n"
          },
          "clusterName": {
            "type": "string",
            "description": "Cluster name.\n"
          },
          "clusterSize": {
            "type": "integer",
            "description": "Number of nodes in the cluster.\n"
          },
          "clusterStatus": {
            "$ref": "#/types/nutanix:index%2FgetFoundationCentralClusterDetailsClusterStatus:getFoundationCentralClusterDetailsClusterStatus",
            "description": "Details of cluster creation process.\n"
          },
          "commonNetworkSettings": {
            "$ref": "#/types/nutanix:index%2FgetFoundationCentralClusterDetailsCommonNetworkSettings:getFoundationCentralClusterDetailsCommonNetworkSettings",
            "description": "Common network settings across the nodes in the cluster.\n"
          },
          "imagedClusterUuid": {
            "type": "string",
            "description": "UUID of the cluster whose details need to be fetched.\n"
          },
          "redundancyFactor": {
            "type": "integer",
            "description": "Redundancy factor of the cluster.\n"
          },
          "storageNodeCount": {
            "type": "integer",
            "description": "Number of storage only nodes in the cluster. AHV iso for storage node will be taken from aos package.\n"
          }
        },
        "type": "object",
        "required": [
          "imagedClusterUuid"
        ]
      },
      "outputs": {
        "description": "A collection of values returned by getFoundationCentralClusterDetails.\n",
        "properties": {
          "archived": {
            "description": "True if the cluster creation request is archived, False otherwise\n",
            "type": "boolean"
          },
          "clusterExternalIp": {
            "description": "External management ip of the cluster.\n",
            "type": "string"
          },
          "clusterName": {
            "description": "Cluster name.\n",
            "type": "string"
          },
          "clusterSize": {
            "description": "Number of nodes in the cluster.\n",
            "type": "integer"
          },
          "clusterStatus": {
            "$ref": "#/types/nutanix:index%2FgetFoundationCentralClusterDetailsClusterStatus:getFoundationCentralClusterDetailsClusterStatus",
            "description": "Details of cluster creation process.\n"
          },
          "commonNetworkSettings": {
            "$ref": "#/types/nutanix:index%2FgetFoundationCentralClusterDetailsCommonNetworkSettings:getFoundationCentralClusterDetailsCommonNetworkSettings",
            "description": "Common network settings across the nodes in the cluster.\n"
          },
          "createdTimestamp": {
            "description": "Time when the cluster creation request was received in Foundation Central.\n",
            "type": "string"
          },
          "currentTime": {
            "description": "Current time of Foundation Central.\n",
            "type": "string"
          },
          "destroyed": {
            "description": "True if the cluster is destroyed, False otherwise\n",
            "type": "boolean"
          },
          "foundationInitConfigs": {
            "description": "Json config used by Foundation to create the cluster.\n",
            "items": {
              "$ref": "#/types/nutanix:index%2FgetFoundationCentralClusterDetailsFoundationInitConfig:getFoundationCentralClusterDetailsFoundationInitConfig"
            },
            "type": "array"
          },
          "foundationInitNodeUuid": {
            "description": "UUID of the first node coordinating cluster creation.\n",
            "type": "string"
          },
          "id": {
            "description": "The provider-assigned unique ID for this managed resource.",
            "type": "string"
          },
          "imagedClusterUuid": {
            "description": "UUID of the cluster.\n",
            "type": "string"
          },
          "imagedNodeUuidLists": {
            "description": "List of UUIDs of imaged nodes.\n",
            "items": {
              "type": "string"
            },
            "type": "array"
          },
          "redundancyFactor": {
            "description": "Redundancy factor of the cluster.\n",
            "type": "integer"
          },
          "storageNodeCount": {
            "description": "Number of storage only nodes in the cluster. AHV iso for storage node will be taken from aos package.\n",
            "type": "integer"
          },
          "workflowType": {
            "description": "If imaging and cluster creation is coordinated by Foundation, value will be FOUNDATION_WF. If the nodes are in phoenix, value will be PHOENIX_WF.\n",
            "type": "string"
          }
        },
        "required": [
          "archived",
          "clusterExternalIp",
          "clusterName",
          "clusterSize",
          "clusterStatus",
          "commonNetworkSettings",
          "createdTimestamp",
          "currentTime",
          "destroyed",
          "foundationInitConfigs",
          "foundationInitNodeUuid",
          "id",
          "imagedClusterUuid",
          "imagedNodeUuidLists",
          "storageNodeCount",
          "workflowType"
        ],
        "type": "object"
      }
    },
    "nutanix:index/getFoundationCentralImagedClustersList:getFoundationCentralImagedClustersList": {
      "description": "List all the clusters created using Foundation Central.\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as nutanix from \"@pierskarsenbarg/nutanix\";\n\nconst imagedClustersList = nutanix.getFoundationCentralImagedClustersList({});\n```\n```python\nimport pulumi\nimport pulumi_nutanix as nutanix\n\nimaged_clusters_list = nutanix.get_foundation_central_imaged_clusters_list()\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Nutanix = Pulumi.Nutanix;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var imagedClustersList = Nutanix.GetFoundationCentralImagedClustersList.Invoke();\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pierskarsenbarg/pulumi-nutanix/sdk/go/nutanix\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := nutanix.GetFoundationCentralImagedClustersList(ctx, \u0026nutanix.GetFoundationCentralImagedClustersListArgs{}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.nutanix.NutanixFunctions;\nimport com.pulumi.nutanix.inputs.GetFoundationCentralImagedClustersListArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var imagedClustersList = NutanixFunctions.getFoundationCentralImagedClustersList(GetFoundationCentralImagedClustersListArgs.builder()\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  imagedClustersList:\n    fn::invoke:\n      function: nutanix:getFoundationCentralImagedClustersList\n      arguments: {}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
      "inputs": {
        "description": "A collection of arguments for invoking getFoundationCentralImagedClustersList.\n",
        "properties": {
          "filters": {
            "$ref": "#/types/nutanix:index%2FgetFoundationCentralImagedClustersListFilters:getFoundationCentralImagedClustersListFilters"
          },
          "length": {
            "type": "integer",
            "description": "The number of records retrieved.\n"
          },
          "offset": {
            "type": "integer",
            "description": "Offset from the start of the object list.\n"
          }
        },
        "type": "object"
      },
      "outputs": {
        "description": "A collection of values returned by getFoundationCentralImagedClustersList.\n",
        "properties": {
          "filters": {
            "$ref": "#/types/nutanix:index%2FgetFoundationCentralImagedClustersListFilters:getFoundationCentralImagedClustersListFilters"
          },
          "id": {
            "description": "The provider-assigned unique ID for this managed resource.",
            "type": "string"
          },
          "imagedClusters": {
            "items": {
              "$ref": "#/types/nutanix:index%2FgetFoundationCentralImagedClustersListImagedCluster:getFoundationCentralImagedClustersListImagedCluster"
            },
            "type": "array"
          },
          "length": {
            "description": "The number of records retrieved.\n",
            "type": "integer"
          },
          "metadatas": {
            "items": {
              "$ref": "#/types/nutanix:index%2FgetFoundationCentralImagedClustersListMetadata:getFoundationCentralImagedClustersListMetadata"
            },
            "type": "array"
          },
          "offset": {
            "description": "Offset from the start of the object list.\n",
            "type": "integer"
          }
        },
        "required": [
          "id",
          "imagedClusters",
          "metadatas"
        ],
        "type": "object"
      }
    },
    "nutanix:index/getFoundationCentralImagedNodeDetails:getFoundationCentralImagedNodeDetails": {
      "description": "Get the details of a single node given its UUID.\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as nutanix from \"@pierskarsenbarg/nutanix\";\n\nconst nodesDetails = nutanix.getFoundationCentralImagedNodeDetails({\n    imagedNodeUuid: \"\u003cIMAGED-NODE-UUID\u003e\",\n});\n```\n```python\nimport pulumi\nimport pulumi_nutanix as nutanix\n\nnodes_details = nutanix.get_foundation_central_imaged_node_details(imaged_node_uuid=\"\u003cIMAGED-NODE-UUID\u003e\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Nutanix = Pulumi.Nutanix;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var nodesDetails = Nutanix.GetFoundationCentralImagedNodeDetails.Invoke(new()\n    {\n        ImagedNodeUuid = \"\u003cIMAGED-NODE-UUID\u003e\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pierskarsenbarg/pulumi-nutanix/sdk/go/nutanix\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := nutanix.GetFoundationCentralImagedNodeDetails(ctx, \u0026nutanix.GetFoundationCentralImagedNodeDetailsArgs{\n\t\t\tImagedNodeUuid: \"\u003cIMAGED-NODE-UUID\u003e\",\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.nutanix.NutanixFunctions;\nimport com.pulumi.nutanix.inputs.GetFoundationCentralImagedNodeDetailsArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var nodesDetails = NutanixFunctions.getFoundationCentralImagedNodeDetails(GetFoundationCentralImagedNodeDetailsArgs.builder()\n            .imagedNodeUuid(\"\u003cIMAGED-NODE-UUID\u003e\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  nodesDetails:\n    fn::invoke:\n      function: nutanix:getFoundationCentralImagedNodeDetails\n      arguments:\n        imagedNodeUuid: \u003cIMAGED-NODE-UUID\u003e\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
      "inputs": {
        "description": "A collection of arguments for invoking getFoundationCentralImagedNodeDetails.\n",
        "properties": {
          "imagedNodeUuid": {
            "type": "string",
            "description": "UUID of the node whose details need to be fetched.\n"
          },
          "ipv6Interface": {
            "type": "string",
            "description": "Name of the cvm interface having ipv6 address.\n"
          },
          "objectVersion": {
            "type": "integer",
            "description": "Version of the node used for CAS.\n"
          }
        },
        "type": "object",
        "required": [
          "imagedNodeUuid"
        ]
      },
      "outputs": {
        "description": "A collection of values returned by getFoundationCentralImagedNodeDetails.\n",
        "properties": {
          "aosVersion": {
            "description": "AOS version currently installed on the node.\n",
            "type": "string"
          },
          "apiKeyUuid": {
            "description": "API key used to register the node.\n",
            "type": "string"
          },
          "available": {
            "description": "Specifies whether the node is available for cluster creation.\n",
            "type": "boolean"
          },
          "blockSerial": {
            "description": "Serial number of the block to which the node belongs.\n",
            "type": "string"
          },
          "createdTimestamp": {
            "description": "Time when the node was discovered in Foundation Central.\n",
            "type": "string"
          },
          "currentTime": {
            "description": "Current time of Foundation Central.\n",
            "type": "string"
          },
          "cvmGateway": {
            "description": "gateway of the cvm.\n",
            "type": "string"
          },
          "cvmIp": {
            "description": "IP address of the cvm.\n",
            "type": "string"
          },
          "cvmIpv6": {
            "description": "IPv6 address of the cvm.\n",
            "type": "string"
          },
          "cvmNetmask": {
            "description": "netmask of the cvm.\n",
            "type": "string"
          },
          "cvmUp": {
            "description": "Denotes whether the CVM is up or not on this node.\n",
            "type": "boolean"
          },
          "cvmUuid": {
            "description": "Node UUID from the node's cvm.\n",
            "type": "string"
          },
          "cvmVlanId": {
            "description": "Vlan tag of the cvm, if the cvm is on a vlan.\n",
            "type": "integer"
          },
          "foundationVersion": {
            "description": "Foundation version installed on the node.\n",
            "type": "string"
          },
          "hardwareAttributes": {
            "additionalProperties": {
              "type": "string"
            },
            "description": "Hardware attributes json of the node.\n",
            "type": "object"
          },
          "hypervisorGateway": {
            "description": "gateway of the hypervisor.\n",
            "type": "string"
          },
          "hypervisorHostname": {
            "description": "Name of the hypervisor host.\n",
            "type": "string"
          },
          "hypervisorIp": {
            "description": "IP address of the hypervisor.\n",
            "type": "string"
          },
          "hypervisorNetmask": {
            "description": "netmask of the hypervisor.\n",
            "type": "string"
          },
          "hypervisorType": {
            "description": "Hypervisor type currently installed on the node. Must be one of {kvm, esx, hyperv}.\n",
            "type": "string"
          },
          "hypervisorVersion": {
            "description": "Version of the hypervisor currently installed on the node.\n",
            "type": "string"
          },
          "id": {
            "description": "The provider-assigned unique ID for this managed resource.",
            "type": "string"
          },
          "imagedClusterUuid": {
            "description": "UUID of the cluster to which the node belongs, if any.\n",
            "type": "string"
          },
          "imagedNodeUuid": {
            "description": "UUID of the node.\n",
            "type": "string"
          },
          "ipmiGateway": {
            "description": "gateway of the ipmi.\n",
            "type": "string"
          },
          "ipmiIp": {
            "description": "IP address of the ipmi.\n",
            "type": "string"
          },
          "ipmiNetmask": {
            "description": "netmask of the ipmi.\n",
            "type": "string"
          },
          "ipv6Interface": {
            "description": "Name of the cvm interface having ipv6 address.\n",
            "type": "string"
          },
          "latestHbTsLists": {
            "description": "List of timestamps when the node has sent heartbeats to Foundation Central.\n",
            "items": {
              "type": "string"
            },
            "type": "array"
          },
          "model": {
            "description": "Model of the node.\n",
            "type": "string"
          },
          "nodePosition": {
            "description": "Position of the node in the block.\n",
            "type": "string"
          },
          "nodeSerial": {
            "description": "Serial number of the node.\n",
            "type": "string"
          },
          "nodeState": {
            "description": "Specifies whether the node is discovering, available or unavailable for cluster creation.\n",
            "type": "string"
          },
          "nodeType": {
            "description": "Specifies the type of node - on-prem, AWS, GCP etc.\n",
            "type": "string"
          },
          "objectVersion": {
            "description": "Version of the node used for CAS.\n",
            "type": "integer"
          }
        },
        "required": [
          "aosVersion",
          "apiKeyUuid",
          "available",
          "blockSerial",
          "createdTimestamp",
          "currentTime",
          "cvmGateway",
          "cvmIp",
          "cvmIpv6",
          "cvmNetmask",
          "cvmUp",
          "cvmUuid",
          "cvmVlanId",
          "foundationVersion",
          "hardwareAttributes",
          "hypervisorGateway",
          "hypervisorHostname",
          "hypervisorIp",
          "hypervisorNetmask",
          "hypervisorType",
          "hypervisorVersion",
          "id",
          "imagedClusterUuid",
          "imagedNodeUuid",
          "ipmiGateway",
          "ipmiIp",
          "ipmiNetmask",
          "ipv6Interface",
          "latestHbTsLists",
          "model",
          "nodePosition",
          "nodeSerial",
          "nodeState",
          "nodeType",
          "objectVersion"
        ],
        "type": "object"
      }
    },
    "nutanix:index/getFoundationCentralImagedNodesList:getFoundationCentralImagedNodesList": {
      "description": "List all the nodes registered with Foundation Central\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as nutanix from \"@pierskarsenbarg/nutanix\";\n\nconst nodesList = nutanix.getFoundationCentralImagedNodesList({});\n```\n```python\nimport pulumi\nimport pulumi_nutanix as nutanix\n\nnodes_list = nutanix.get_foundation_central_imaged_nodes_list()\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Nutanix = Pulumi.Nutanix;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var nodesList = Nutanix.GetFoundationCentralImagedNodesList.Invoke();\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pierskarsenbarg/pulumi-nutanix/sdk/go/nutanix\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := nutanix.GetFoundationCentralImagedNodesList(ctx, \u0026nutanix.GetFoundationCentralImagedNodesListArgs{}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.nutanix.NutanixFunctions;\nimport com.pulumi.nutanix.inputs.GetFoundationCentralImagedNodesListArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var nodesList = NutanixFunctions.getFoundationCentralImagedNodesList(GetFoundationCentralImagedNodesListArgs.builder()\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  nodesList:\n    fn::invoke:\n      function: nutanix:getFoundationCentralImagedNodesList\n      arguments: {}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
      "inputs": {
        "description": "A collection of arguments for invoking getFoundationCentralImagedNodesList.\n",
        "properties": {
          "filters": {
            "$ref": "#/types/nutanix:index%2FgetFoundationCentralImagedNodesListFilters:getFoundationCentralImagedNodesListFilters"
          },
          "length": {
            "type": "integer",
            "description": "The number of records retrieved.\n"
          },
          "offset": {
            "type": "integer",
            "description": "Offset from the start of the object list.\n"
          }
        },
        "type": "object"
      },
      "outputs": {
        "description": "A collection of values returned by getFoundationCentralImagedNodesList.\n",
        "properties": {
          "filters": {
            "$ref": "#/types/nutanix:index%2FgetFoundationCentralImagedNodesListFilters:getFoundationCentralImagedNodesListFilters"
          },
          "id": {
            "description": "The provider-assigned unique ID for this managed resource.",
            "type": "string"
          },
          "imagedNodes": {
            "items": {
              "$ref": "#/types/nutanix:index%2FgetFoundationCentralImagedNodesListImagedNode:getFoundationCentralImagedNodesListImagedNode"
            },
            "type": "array"
          },
          "length": {
            "description": "The number of records retrieved.\n",
            "type": "integer"
          },
          "metadatas": {
            "description": "List metadata output for all list apis.\n",
            "items": {
              "$ref": "#/types/nutanix:index%2FgetFoundationCentralImagedNodesListMetadata:getFoundationCentralImagedNodesListMetadata"
            },
            "type": "array"
          },
          "offset": {
            "description": "Offset from the start of the object list.\n",
            "type": "integer"
          }
        },
        "required": [
          "id",
          "imagedNodes",
          "metadatas"
        ],
        "type": "object"
      }
    },
    "nutanix:index/getFoundationCentralListApiKeys:getFoundationCentralListApiKeys": {
      "description": "List all the api keys created in Foundation Central.\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as nutanix from \"@pierskarsenbarg/nutanix\";\n\nconst apiKeysList = nutanix.getFoundationCentralListApiKeys({});\n```\n```python\nimport pulumi\nimport pulumi_nutanix as nutanix\n\napi_keys_list = nutanix.get_foundation_central_list_api_keys()\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Nutanix = Pulumi.Nutanix;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var apiKeysList = Nutanix.GetFoundationCentralListApiKeys.Invoke();\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pierskarsenbarg/pulumi-nutanix/sdk/go/nutanix\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := nutanix.GetFoundationCentralListApiKeys(ctx, \u0026nutanix.GetFoundationCentralListApiKeysArgs{}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.nutanix.NutanixFunctions;\nimport com.pulumi.nutanix.inputs.GetFoundationCentralListApiKeysArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var apiKeysList = NutanixFunctions.getFoundationCentralListApiKeys(GetFoundationCentralListApiKeysArgs.builder()\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  apiKeysList:\n    fn::invoke:\n      function: nutanix:getFoundationCentralListApiKeys\n      arguments: {}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
      "inputs": {
        "description": "A collection of arguments for invoking getFoundationCentralListApiKeys.\n",
        "properties": {
          "length": {
            "type": "integer",
            "description": "The number of records retrieved.\n"
          },
          "metadata": {
            "$ref": "#/types/nutanix:index%2FgetFoundationCentralListApiKeysMetadata:getFoundationCentralListApiKeysMetadata",
            "description": "List metadata output for all list apis.\n"
          },
          "offset": {
            "type": "integer",
            "description": "Offset from the start of the object list.\n"
          }
        },
        "type": "object"
      },
      "outputs": {
        "description": "A collection of values returned by getFoundationCentralListApiKeys.\n",
        "properties": {
          "apiKeys": {
            "items": {
              "$ref": "#/types/nutanix:index%2FgetFoundationCentralListApiKeysApiKey:getFoundationCentralListApiKeysApiKey"
            },
            "type": "array"
          },
          "id": {
            "description": "The provider-assigned unique ID for this managed resource.",
            "type": "string"
          },
          "length": {
            "description": "The number of records retrieved.\n",
            "type": "integer"
          },
          "metadata": {
            "$ref": "#/types/nutanix:index%2FgetFoundationCentralListApiKeysMetadata:getFoundationCentralListApiKeysMetadata",
            "description": "List metadata output for all list apis.\n"
          },
          "offset": {
            "description": "Offset from the start of the object list.\n",
            "type": "integer"
          }
        },
        "required": [
          "apiKeys",
          "id"
        ],
        "type": "object"
      }
    },
    "nutanix:index/getFoundationDiscoverNodes:getFoundationDiscoverNodes": {
      "description": "Discovers and lists Nutanix-imaged nodes within an IPv6 network.\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as nutanix from \"@pierskarsenbarg/nutanix\";\n\nconst discoveredNodes = nutanix.getFoundationDiscoverNodes({});\n```\n```python\nimport pulumi\nimport pulumi_nutanix as nutanix\n\ndiscovered_nodes = nutanix.get_foundation_discover_nodes()\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Nutanix = Pulumi.Nutanix;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var discoveredNodes = Nutanix.GetFoundationDiscoverNodes.Invoke();\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pierskarsenbarg/pulumi-nutanix/sdk/go/nutanix\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := nutanix.GetFoundationDiscoverNodes(ctx, map[string]interface{}{}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.nutanix.NutanixFunctions;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var discoveredNodes = NutanixFunctions.getFoundationDiscoverNodes(%!v(PANIC=Format method: runtime error: invalid memory address or nil pointer dereference);\n\n    }\n}\n```\n```yaml\nvariables:\n  discoveredNodes:\n    fn::invoke:\n      function: nutanix:getFoundationDiscoverNodes\n      arguments: {}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
      "outputs": {
        "description": "A collection of values returned by getFoundationDiscoverNodes.\n",
        "properties": {
          "entities": {
            "description": "List of Nutanix-imaged nodes within an IPv6 network\n",
            "items": {
              "$ref": "#/types/nutanix:index%2FgetFoundationDiscoverNodesEntity:getFoundationDiscoverNodesEntity"
            },
            "type": "array"
          },
          "id": {
            "description": "The provider-assigned unique ID for this managed resource.",
            "type": "string"
          }
        },
        "required": [
          "entities",
          "id"
        ],
        "type": "object"
      }
    },
    "nutanix:index/getFoundationHypervisorIsos:getFoundationHypervisorIsos": {
      "description": "Describes a list of hypervisor isos image file details present in foundation vm\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as nutanix from \"@pierskarsenbarg/nutanix\";\n\nconst hypervisorIsos = nutanix.getFoundationHypervisorIsos({});\n```\n```python\nimport pulumi\nimport pulumi_nutanix as nutanix\n\nhypervisor_isos = nutanix.get_foundation_hypervisor_isos()\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Nutanix = Pulumi.Nutanix;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var hypervisorIsos = Nutanix.GetFoundationHypervisorIsos.Invoke();\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pierskarsenbarg/pulumi-nutanix/sdk/go/nutanix\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := nutanix.GetFoundationHypervisorIsos(ctx, map[string]interface{}{}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.nutanix.NutanixFunctions;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var hypervisorIsos = NutanixFunctions.getFoundationHypervisorIsos(%!v(PANIC=Format method: runtime error: invalid memory address or nil pointer dereference);\n\n    }\n}\n```\n```yaml\nvariables:\n  hypervisorIsos:\n    fn::invoke:\n      function: nutanix:getFoundationHypervisorIsos\n      arguments: {}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Note\n\n* This data source only lists .iso files details.\n\nSee detailed information in [Nutanix Foundation Hypervisor Isos](https://www.nutanix.dev/api_references/foundation/#/b3A6MjIyMjM0MDE-list-hypervisor-images-available-in-foundation).\n",
      "outputs": {
        "description": "A collection of values returned by getFoundationHypervisorIsos.\n",
        "properties": {
          "esxes": {
            "description": "List of esx isos and theirdetails present in foundation vm\n",
            "items": {
              "$ref": "#/types/nutanix:index%2FgetFoundationHypervisorIsosEsx:getFoundationHypervisorIsosEsx"
            },
            "type": "array"
          },
          "hypervs": {
            "description": "List of hyperv isos and their details present in foundation vm\n",
            "items": {
              "$ref": "#/types/nutanix:index%2FgetFoundationHypervisorIsosHyperv:getFoundationHypervisorIsosHyperv"
            },
            "type": "array"
          },
          "id": {
            "description": "The provider-assigned unique ID for this managed resource.",
            "type": "string"
          },
          "kvms": {
            "description": "List of kvm isos and their details present in foundation vm\n",
            "items": {
              "$ref": "#/types/nutanix:index%2FgetFoundationHypervisorIsosKvm:getFoundationHypervisorIsosKvm"
            },
            "type": "array"
          },
          "linuxes": {
            "description": "List of linux isos and their details present in foundation vm\n",
            "items": {
              "$ref": "#/types/nutanix:index%2FgetFoundationHypervisorIsosLinux:getFoundationHypervisorIsosLinux"
            },
            "type": "array"
          },
          "xens": {
            "description": "List of esx isos and theirdetails present in foundation vm\n",
            "items": {
              "$ref": "#/types/nutanix:index%2FgetFoundationHypervisorIsosXen:getFoundationHypervisorIsosXen"
            },
            "type": "array"
          }
        },
        "required": [
          "esxes",
          "hypervs",
          "id",
          "kvms",
          "linuxes",
          "xens"
        ],
        "type": "object"
      }
    },
    "nutanix:index/getFoundationNodeNetworkDetails:getFoundationNodeNetworkDetails": {
      "description": "Gets hypervisor, CVM \u0026 IPMI info of the discovered nodes using their ipv6 address.\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as nutanix from \"@pierskarsenbarg/nutanix\";\n\nconst networkDetails = nutanix.getFoundationNodeNetworkDetails({\n    ipv6Addresses: [\n        \"\u003cipv6-address-1\u003e\",\n        \"\u003cipv6-address-2\u003e\",\n    ],\n    timeout: \"30\",\n});\n```\n```python\nimport pulumi\nimport pulumi_nutanix as nutanix\n\nnetwork_details = nutanix.get_foundation_node_network_details(ipv6_addresses=[\n        \"\u003cipv6-address-1\u003e\",\n        \"\u003cipv6-address-2\u003e\",\n    ],\n    timeout=\"30\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Nutanix = Pulumi.Nutanix;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var networkDetails = Nutanix.GetFoundationNodeNetworkDetails.Invoke(new()\n    {\n        Ipv6Addresses = new[]\n        {\n            \"\u003cipv6-address-1\u003e\",\n            \"\u003cipv6-address-2\u003e\",\n        },\n        Timeout = \"30\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pierskarsenbarg/pulumi-nutanix/sdk/go/nutanix\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := nutanix.GetFoundationNodeNetworkDetails(ctx, \u0026nutanix.GetFoundationNodeNetworkDetailsArgs{\n\t\t\tIpv6Addresses: []string{\n\t\t\t\t\"\u003cipv6-address-1\u003e\",\n\t\t\t\t\"\u003cipv6-address-2\u003e\",\n\t\t\t},\n\t\t\tTimeout: pulumi.StringRef(\"30\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.nutanix.NutanixFunctions;\nimport com.pulumi.nutanix.inputs.GetFoundationNodeNetworkDetailsArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var networkDetails = NutanixFunctions.getFoundationNodeNetworkDetails(GetFoundationNodeNetworkDetailsArgs.builder()\n            .ipv6Addresses(            \n                \"\u003cipv6-address-1\u003e\",\n                \"\u003cipv6-address-2\u003e\")\n            .timeout(\"30\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  networkDetails:\n    fn::invoke:\n      function: nutanix:getFoundationNodeNetworkDetails\n      arguments:\n        ipv6Addresses:\n          - \u003cipv6-address-1\u003e\n          - \u003cipv6-address-2\u003e\n        timeout: '30'\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
      "inputs": {
        "description": "A collection of arguments for invoking getFoundationNodeNetworkDetails.\n",
        "properties": {
          "ipv6Addresses": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "description": "list of ipv6 addresses\n"
          },
          "timeout": {
            "type": "string",
            "description": "timeout in seconds\n"
          }
        },
        "type": "object",
        "required": [
          "ipv6Addresses"
        ]
      },
      "outputs": {
        "description": "A collection of values returned by getFoundationNodeNetworkDetails.\n",
        "properties": {
          "id": {
            "description": "The provider-assigned unique ID for this managed resource.",
            "type": "string"
          },
          "ipv6Addresses": {
            "items": {
              "type": "string"
            },
            "type": "array"
          },
          "nodes": {
            "description": "nodes array.\n",
            "items": {
              "$ref": "#/types/nutanix:index%2FgetFoundationNodeNetworkDetailsNode:getFoundationNodeNetworkDetailsNode"
            },
            "type": "array"
          },
          "timeout": {
            "type": "string"
          }
        },
        "required": [
          "id",
          "ipv6Addresses",
          "nodes"
        ],
        "type": "object"
      }
    },
    "nutanix:index/getFoundationNosPackages:getFoundationNosPackages": {
      "description": "Describes a list of nos (aos) packages present in foundation vm\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as nutanix from \"@pierskarsenbarg/nutanix\";\n\nconst nosPackages = nutanix.getFoundationNosPackages({});\n```\n```python\nimport pulumi\nimport pulumi_nutanix as nutanix\n\nnos_packages = nutanix.get_foundation_nos_packages()\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Nutanix = Pulumi.Nutanix;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var nosPackages = Nutanix.GetFoundationNosPackages.Invoke();\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pierskarsenbarg/pulumi-nutanix/sdk/go/nutanix\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := nutanix.GetFoundationNosPackages(ctx, map[string]interface{}{}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.nutanix.NutanixFunctions;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var nosPackages = NutanixFunctions.getFoundationNosPackages(%!v(PANIC=Format method: runtime error: invalid memory address or nil pointer dereference);\n\n    }\n}\n```\n```yaml\nvariables:\n  nosPackages:\n    fn::invoke:\n      function: nutanix:getFoundationNosPackages\n      arguments: {}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Note\n\n* This data source only lists .tar file names.\n\nSee detailed information in [Nutanix Foundation Nos Packages](https://www.nutanix.dev/api_references/foundation/#/b3A6MjIyMjMzODg-get-list-of-aos-packages-available-in-foundation).\n",
      "outputs": {
        "description": "A collection of values returned by getFoundationNosPackages.\n",
        "properties": {
          "entities": {
            "description": "List of nos packages file names present in foundation vm\n",
            "items": {
              "type": "string"
            },
            "type": "array"
          },
          "id": {
            "description": "The provider-assigned unique ID for this managed resource.",
            "type": "string"
          }
        },
        "required": [
          "entities",
          "id"
        ],
        "type": "object"
      }
    },
    "nutanix:index/getHost:getHost": {
      "description": "Describes a Host\n\n",
      "inputs": {
        "description": "A collection of arguments for invoking getHost.\n",
        "properties": {
          "categories": {
            "type": "array",
            "items": {
              "$ref": "#/types/nutanix:index%2FgetHostCategory:getHostCategory"
            },
            "description": "- Categories for the image.\n"
          },
          "hostId": {
            "type": "string",
            "description": "Represents hosts uuid\n"
          }
        },
        "type": "object",
        "required": [
          "hostId"
        ]
      },
      "outputs": {
        "description": "A collection of values returned by getHost.\n",
        "properties": {
          "apiVersion": {
            "description": "The API version.\n",
            "type": "string"
          },
          "block": {
            "additionalProperties": {
              "type": "string"
            },
            "description": "- Host block config info.\n",
            "type": "object"
          },
          "categories": {
            "description": "- Categories for the image.\n",
            "items": {
              "$ref": "#/types/nutanix:index%2FgetHostCategory:getHostCategory"
            },
            "type": "array"
          },
          "clusterReference": {
            "additionalProperties": {
              "type": "string"
            },
            "description": "- Reference to a kind. Either one of (kind, uuid) or url needs to be specified.\n",
            "type": "object"
          },
          "controllerVm": {
            "additionalProperties": {
              "type": "string"
            },
            "description": "- Host controller vm information.\n",
            "type": "object"
          },
          "cpuCapacityHz": {
            "description": "- Host CPU capacity.\n",
            "type": "integer"
          },
          "cpuModel": {
            "description": "- Host CPU model.\n",
            "type": "string"
          },
          "failoverCluster": {
            "additionalProperties": {
              "type": "string"
            },
            "description": "- Hyper-V failover cluster.\n",
            "type": "object"
          },
          "gpuDriverVersion": {
            "description": "- Host GPU driver version.\n",
            "type": "string"
          },
          "gpuLists": {
            "description": "- List of GPUs on the host.\n",
            "items": {
              "$ref": "#/types/nutanix:index%2FgetHostGpuList:getHostGpuList"
            },
            "type": "array"
          },
          "hostDisksReferenceLists": {
            "description": "- The reference to a disk.\n",
            "items": {
              "$ref": "#/types/nutanix:index%2FgetHostHostDisksReferenceList:getHostHostDisksReferenceList"
            },
            "type": "array"
          },
          "hostId": {
            "type": "string"
          },
          "hostNicsIdLists": {
            "description": "- Host NICs.\n",
            "items": {
              "type": "string"
            },
            "type": "array"
          },
          "hostType": {
            "description": "- Host type.\n",
            "type": "string"
          },
          "hypervisor": {
            "additionalProperties": {
              "type": "string"
            },
            "description": "- Host Hypervisor information.\n",
            "type": "object"
          },
          "id": {
            "description": "The provider-assigned unique ID for this managed resource.",
            "type": "string"
          },
          "ipmi": {
            "additionalProperties": {
              "type": "string"
            },
            "description": "- Host IPMI info.\n",
            "type": "object"
          },
          "memoryCapacityMib": {
            "description": "- Host memory capacity in MiB.\n",
            "type": "integer"
          },
          "metadata": {
            "additionalProperties": {
              "type": "string"
            },
            "type": "object"
          },
          "monitoringState": {
            "description": "- Host monitoring status.\n",
            "type": "string"
          },
          "name": {
            "description": "- the name.\n",
            "type": "string"
          },
          "numCpuCores": {
            "description": "- Number of CPU cores on Host.\n",
            "type": "integer"
          },
          "numCpuSockets": {
            "description": "- Number of CPU sockets.\n",
            "type": "integer"
          },
          "ownerReference": {
            "additionalProperties": {
              "type": "string"
            },
            "description": "- The reference to a user.\n",
            "type": "object"
          },
          "projectReference": {
            "additionalProperties": {
              "type": "string"
            },
            "description": "- The reference to a project.\n",
            "type": "object"
          },
          "rackableUnitReference": {
            "additionalProperties": {
              "type": "string"
            },
            "description": "- The reference to a rackable_unit.\n",
            "type": "object"
          },
          "serialNumber": {
            "description": "- Node serial number.\n",
            "type": "string"
          },
          "windowsDomain": {
            "additionalProperties": {
              "type": "string"
            },
            "description": "- The name of the node to be renamed to during domain-join. If not given,a new name will be automatically assigned.\n",
            "type": "object"
          }
        },
        "required": [
          "apiVersion",
          "block",
          "categories",
          "clusterReference",
          "controllerVm",
          "cpuCapacityHz",
          "cpuModel",
          "failoverCluster",
          "gpuDriverVersion",
          "gpuLists",
          "hostDisksReferenceLists",
          "hostId",
          "hostNicsIdLists",
          "hostType",
          "hypervisor",
          "id",
          "ipmi",
          "memoryCapacityMib",
          "metadata",
          "monitoringState",
          "name",
          "numCpuCores",
          "numCpuSockets",
          "ownerReference",
          "projectReference",
          "rackableUnitReference",
          "serialNumber",
          "windowsDomain"
        ],
        "type": "object"
      }
    },
    "nutanix:index/getHostV2:getHostV2": {
      "description": "Describes the statistics data of the host identified by {hostExtId} belonging to the cluster identified by {clusterExtId}.\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as nutanix from \"@pierskarsenbarg/nutanix\";\n\nconst host = nutanix.getHostV2({\n    clusterExtId: \"021151dc-3ed1-4fec-a81d-39606451750c\",\n    extId: \"919c9488-0b50-4fc8-9159-923e56a3abca\",\n});\n```\n```python\nimport pulumi\nimport pulumi_nutanix as nutanix\n\nhost = nutanix.get_host_v2(cluster_ext_id=\"021151dc-3ed1-4fec-a81d-39606451750c\",\n    ext_id=\"919c9488-0b50-4fc8-9159-923e56a3abca\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Nutanix = Pulumi.Nutanix;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var host = Nutanix.GetHostV2.Invoke(new()\n    {\n        ClusterExtId = \"021151dc-3ed1-4fec-a81d-39606451750c\",\n        ExtId = \"919c9488-0b50-4fc8-9159-923e56a3abca\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pierskarsenbarg/pulumi-nutanix/sdk/go/nutanix\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := nutanix.GetHostV2(ctx, \u0026nutanix.GetHostV2Args{\n\t\t\tClusterExtId: \"021151dc-3ed1-4fec-a81d-39606451750c\",\n\t\t\tExtId:        \"919c9488-0b50-4fc8-9159-923e56a3abca\",\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.nutanix.NutanixFunctions;\nimport com.pulumi.nutanix.inputs.GetHostV2Args;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var host = NutanixFunctions.getHostV2(GetHostV2Args.builder()\n            .clusterExtId(\"021151dc-3ed1-4fec-a81d-39606451750c\")\n            .extId(\"919c9488-0b50-4fc8-9159-923e56a3abca\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  host:\n    fn::invoke:\n      function: nutanix:getHostV2\n      arguments:\n        clusterExtId: 021151dc-3ed1-4fec-a81d-39606451750c\n        extId: 919c9488-0b50-4fc8-9159-923e56a3abca\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
      "inputs": {
        "description": "A collection of arguments for invoking getHostV2.\n",
        "properties": {
          "clusterExtId": {
            "type": "string",
            "description": "- (Required) cluster uuid\n"
          },
          "extId": {
            "type": "string",
            "description": "- (Required) host uuid\n"
          }
        },
        "type": "object",
        "required": [
          "clusterExtId",
          "extId"
        ]
      },
      "outputs": {
        "description": "A collection of values returned by getHostV2.\n",
        "properties": {
          "blockModel": {
            "description": "- Rackable unit model name.\n",
            "type": "string"
          },
          "blockSerial": {
            "description": "- Rackable unit serial name.\n",
            "type": "string"
          },
          "bootTimeUsecs": {
            "description": "- Boot time in secs.\n",
            "type": "integer"
          },
          "clusterExtId": {
            "type": "string"
          },
          "clusters": {
            "description": "- Cluster reference for an entity.\n",
            "items": {
              "$ref": "#/types/nutanix:index%2FgetHostV2Cluster:getHostV2Cluster"
            },
            "type": "array"
          },
          "controllerVms": {
            "description": "- Host entity with its attributes.\n",
            "items": {
              "$ref": "#/types/nutanix:index%2FgetHostV2ControllerVm:getHostV2ControllerVm"
            },
            "type": "array"
          },
          "cpuCapacityHz": {
            "description": "- CPU capacity in Hz.\n",
            "type": "integer"
          },
          "cpuFrequencyHz": {
            "description": "- CPU frequency in Hz.\n",
            "type": "integer"
          },
          "cpuModel": {
            "description": "- CPU model name.\n",
            "type": "string"
          },
          "defaultVhdContainerUuid": {
            "description": "- Default VHD container UUID.\n",
            "type": "string"
          },
          "defaultVhdLocation": {
            "description": "- Default VHD location.\n",
            "type": "string"
          },
          "defaultVmContainerUuid": {
            "description": "- Default VM container UUID.\n",
            "type": "string"
          },
          "defaultVmLocation": {
            "description": "- Default VM location.\n",
            "type": "string"
          },
          "disks": {
            "description": "- Disks attached to host.\n",
            "items": {
              "$ref": "#/types/nutanix:index%2FgetHostV2Disk:getHostV2Disk"
            },
            "type": "array"
          },
          "extId": {
            "description": "- A globally unique identifier of an instance that is suitable for external consumption.\n",
            "type": "string"
          },
          "failoverClusterFqdn": {
            "description": "- Failover cluster FQDN.\n",
            "type": "string"
          },
          "failoverClusterNodeStatus": {
            "description": "- Failover cluster node status.\n",
            "type": "string"
          },
          "gpuDriverVersion": {
            "description": "- GPU driver version.\n",
            "type": "string"
          },
          "gpuLists": {
            "description": "- GPU attached list.\n",
            "items": {
              "type": "string"
            },
            "type": "array"
          },
          "hasCsr": {
            "description": "- Certificate signing request status.\n",
            "type": "boolean"
          },
          "hostName": {
            "description": "- Name of the host.\n",
            "type": "string"
          },
          "hostType": {
            "description": "- Type of the host.\n* `HYPER_CONVERGED`: Hyper-converged node.\n* `COMPUTE_ONLY`: Compute only node.\n* `STORAGE_ONLY`: Storage only node.\n",
            "type": "string"
          },
          "hypervisors": {
            "description": "- Hypervisor details.\n",
            "items": {
              "$ref": "#/types/nutanix:index%2FgetHostV2Hypervisor:getHostV2Hypervisor"
            },
            "type": "array"
          },
          "id": {
            "description": "The provider-assigned unique ID for this managed resource.",
            "type": "string"
          },
          "ipmis": {
            "description": "- IPMI reference.\n",
            "items": {
              "$ref": "#/types/nutanix:index%2FgetHostV2Ipmi:getHostV2Ipmi"
            },
            "type": "array"
          },
          "isDegraded": {
            "description": "- Node degraded status.\n",
            "type": "boolean"
          },
          "isHardwareVirtualized": {
            "description": "- Indicates whether the hardware is virtualized or not.\n",
            "type": "boolean"
          },
          "isRebootPending": {
            "type": "boolean"
          },
          "isSecureBooted": {
            "description": "- Secure boot status.\n",
            "type": "boolean"
          },
          "keyManagementDeviceToCertStatuses": {
            "description": "- Mapping of key management device to certificate status list.\n",
            "items": {
              "$ref": "#/types/nutanix:index%2FgetHostV2KeyManagementDeviceToCertStatus:getHostV2KeyManagementDeviceToCertStatus"
            },
            "type": "array"
          },
          "links": {
            "description": "- A HATEOAS style link for the response. Each link contains a user-friendly name identifying the link and an address for retrieving the particular resource.\n",
            "items": {
              "$ref": "#/types/nutanix:index%2FgetHostV2Link:getHostV2Link"
            },
            "type": "array"
          },
          "maintenanceState": {
            "description": "- Host Maintenance State.\n",
            "type": "string"
          },
          "memorySizeBytes": {
            "description": "- Memory size in bytes.\n",
            "type": "integer"
          },
          "nodeStatus": {
            "description": "- Node status.\n* `TO_BE_PREPROTECTED`: Node to be preprotected.\n* `TO_BE_REMOVED`: Node to be removed.\n* `PREPROTECTED`: Node is preprotected.\n* `OK_TO_BE_REMOVED`: Indicates whether removing the node from the cluster is adequate.\n* `NORMAL`: Normal node.\n* `NEW_NODE`: New node.\n",
            "type": "string"
          },
          "numberOfCpuCores": {
            "description": "- Number of CPU cores.\n",
            "type": "integer"
          },
          "numberOfCpuSockets": {
            "description": "- Number of CPU sockets.\n",
            "type": "integer"
          },
          "numberOfCpuThreads": {
            "description": "- Number of CPU threads.\n",
            "type": "integer"
          },
          "rackableUnitUuid": {
            "description": "- Rackable unit UUID.\n",
            "type": "string"
          },
          "tenantId": {
            "description": "- image uuid.\n",
            "type": "string"
          }
        },
        "required": [
          "blockModel",
          "blockSerial",
          "bootTimeUsecs",
          "clusterExtId",
          "clusters",
          "controllerVms",
          "cpuCapacityHz",
          "cpuFrequencyHz",
          "cpuModel",
          "defaultVhdContainerUuid",
          "defaultVhdLocation",
          "defaultVmContainerUuid",
          "defaultVmLocation",
          "disks",
          "extId",
          "failoverClusterFqdn",
          "failoverClusterNodeStatus",
          "gpuDriverVersion",
          "gpuLists",
          "hasCsr",
          "hostName",
          "hostType",
          "hypervisors",
          "id",
          "ipmis",
          "isDegraded",
          "isHardwareVirtualized",
          "isRebootPending",
          "isSecureBooted",
          "keyManagementDeviceToCertStatuses",
          "links",
          "maintenanceState",
          "memorySizeBytes",
          "nodeStatus",
          "numberOfCpuCores",
          "numberOfCpuSockets",
          "numberOfCpuThreads",
          "rackableUnitUuid",
          "tenantId"
        ],
        "type": "object"
      }
    },
    "nutanix:index/getHosts:getHosts": {
      "description": "Describes a list of hosts\n\n",
      "outputs": {
        "description": "A collection of values returned by getHosts.\n",
        "properties": {
          "apiVersion": {
            "description": "The API version.\n",
            "type": "string"
          },
          "entities": {
            "description": "List of Hosts\n",
            "items": {
              "$ref": "#/types/nutanix:index%2FgetHostsEntity:getHostsEntity"
            },
            "type": "array"
          },
          "id": {
            "description": "The provider-assigned unique ID for this managed resource.",
            "type": "string"
          }
        },
        "required": [
          "apiVersion",
          "entities",
          "id"
        ],
        "type": "object"
      }
    },
    "nutanix:index/getHostsV2:getHostsV2": {
      "description": "Describes the Lists of all host entities across clusters registered to Prism Central.\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```yaml\nvariables:\n  # list all host entities accosted to cluster\n  hosts:\n    fn::invoke:\n      function: nutanix:getHostsV2\n      arguments:\n        clusterExtId: 021151dc-3ed1-4fec-a81d-39606451750c\n  # list all host entities accosted to cluster with filter\n  filtered-hosts:\n    fn::invoke:\n      function: nutanix:getHostsV2\n      arguments:\n        clusterExtId: 021151dc-3ed1-4fec-a81d-39606451750c\n        filter: hostName eq 'cluster_host_example'\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Host Entities\n\nThe\u003cspan pulumi-lang-nodejs=\" hostEntities \" pulumi-lang-dotnet=\" HostEntities \" pulumi-lang-go=\" hostEntities \" pulumi-lang-python=\" host_entities \" pulumi-lang-yaml=\" hostEntities \" pulumi-lang-java=\" hostEntities \"\u003e host_entities \u003c/span\u003eattribute supports the following:\n\n* \u003cspan pulumi-lang-nodejs=\"`extId`\" pulumi-lang-dotnet=\"`ExtId`\" pulumi-lang-go=\"`extId`\" pulumi-lang-python=\"`ext_id`\" pulumi-lang-yaml=\"`extId`\" pulumi-lang-java=\"`extId`\"\u003e`ext_id`\u003c/span\u003e: - A globally unique identifier of an instance that is suitable for external consumption.\n* \u003cspan pulumi-lang-nodejs=\"`tenantId`\" pulumi-lang-dotnet=\"`TenantId`\" pulumi-lang-go=\"`tenantId`\" pulumi-lang-python=\"`tenant_id`\" pulumi-lang-yaml=\"`tenantId`\" pulumi-lang-java=\"`tenantId`\"\u003e`tenant_id`\u003c/span\u003e: - image uuid.\n* \u003cspan pulumi-lang-nodejs=\"`links`\" pulumi-lang-dotnet=\"`Links`\" pulumi-lang-go=\"`links`\" pulumi-lang-python=\"`links`\" pulumi-lang-yaml=\"`links`\" pulumi-lang-java=\"`links`\"\u003e`links`\u003c/span\u003e: - A HATEOAS style link for the response. Each link contains a user-friendly name identifying the link and an address for retrieving the particular resource.\n* \u003cspan pulumi-lang-nodejs=\"`hostName`\" pulumi-lang-dotnet=\"`HostName`\" pulumi-lang-go=\"`hostName`\" pulumi-lang-python=\"`host_name`\" pulumi-lang-yaml=\"`hostName`\" pulumi-lang-java=\"`hostName`\"\u003e`host_name`\u003c/span\u003e: - Name of the host.\n* \u003cspan pulumi-lang-nodejs=\"`hostType`\" pulumi-lang-dotnet=\"`HostType`\" pulumi-lang-go=\"`hostType`\" pulumi-lang-python=\"`host_type`\" pulumi-lang-yaml=\"`hostType`\" pulumi-lang-java=\"`hostType`\"\u003e`host_type`\u003c/span\u003e: - Type of the host.\n   * `HYPER_CONVERGED`: Hyper-converged node.\n   * `COMPUTE_ONLY`: Compute only node.\n   * `STORAGE_ONLY`: Storage only node.\n* \u003cspan pulumi-lang-nodejs=\"`hypervisor`\" pulumi-lang-dotnet=\"`Hypervisor`\" pulumi-lang-go=\"`hypervisor`\" pulumi-lang-python=\"`hypervisor`\" pulumi-lang-yaml=\"`hypervisor`\" pulumi-lang-java=\"`hypervisor`\"\u003e`hypervisor`\u003c/span\u003e: - Hypervisor details.\n* \u003cspan pulumi-lang-nodejs=\"`cluster`\" pulumi-lang-dotnet=\"`Cluster`\" pulumi-lang-go=\"`cluster`\" pulumi-lang-python=\"`cluster`\" pulumi-lang-yaml=\"`cluster`\" pulumi-lang-java=\"`cluster`\"\u003e`cluster`\u003c/span\u003e: - Cluster reference for an entity.\n* \u003cspan pulumi-lang-nodejs=\"`controllerVm`\" pulumi-lang-dotnet=\"`ControllerVm`\" pulumi-lang-go=\"`controllerVm`\" pulumi-lang-python=\"`controller_vm`\" pulumi-lang-yaml=\"`controllerVm`\" pulumi-lang-java=\"`controllerVm`\"\u003e`controller_vm`\u003c/span\u003e: - Host entity with its attributes.\n* \u003cspan pulumi-lang-nodejs=\"`disk`\" pulumi-lang-dotnet=\"`Disk`\" pulumi-lang-go=\"`disk`\" pulumi-lang-python=\"`disk`\" pulumi-lang-yaml=\"`disk`\" pulumi-lang-java=\"`disk`\"\u003e`disk`\u003c/span\u003e: - Disks attached to host.\n* \u003cspan pulumi-lang-nodejs=\"`isDegraded`\" pulumi-lang-dotnet=\"`IsDegraded`\" pulumi-lang-go=\"`isDegraded`\" pulumi-lang-python=\"`is_degraded`\" pulumi-lang-yaml=\"`isDegraded`\" pulumi-lang-java=\"`isDegraded`\"\u003e`is_degraded`\u003c/span\u003e: - Node degraded status.\n* \u003cspan pulumi-lang-nodejs=\"`isSecureBooted`\" pulumi-lang-dotnet=\"`IsSecureBooted`\" pulumi-lang-go=\"`isSecureBooted`\" pulumi-lang-python=\"`is_secure_booted`\" pulumi-lang-yaml=\"`isSecureBooted`\" pulumi-lang-java=\"`isSecureBooted`\"\u003e`is_secure_booted`\u003c/span\u003e: - Secure boot status.\n* \u003cspan pulumi-lang-nodejs=\"`isHardwareVirtualized`\" pulumi-lang-dotnet=\"`IsHardwareVirtualized`\" pulumi-lang-go=\"`isHardwareVirtualized`\" pulumi-lang-python=\"`is_hardware_virtualized`\" pulumi-lang-yaml=\"`isHardwareVirtualized`\" pulumi-lang-java=\"`isHardwareVirtualized`\"\u003e`is_hardware_virtualized`\u003c/span\u003e: - Indicates whether the hardware is virtualized or not.\n* \u003cspan pulumi-lang-nodejs=\"`hasCsr`\" pulumi-lang-dotnet=\"`HasCsr`\" pulumi-lang-go=\"`hasCsr`\" pulumi-lang-python=\"`has_csr`\" pulumi-lang-yaml=\"`hasCsr`\" pulumi-lang-java=\"`hasCsr`\"\u003e`has_csr`\u003c/span\u003e: - Certificate signing request status.\n* \u003cspan pulumi-lang-nodejs=\"`keyManagementDeviceToCertStatus`\" pulumi-lang-dotnet=\"`KeyManagementDeviceToCertStatus`\" pulumi-lang-go=\"`keyManagementDeviceToCertStatus`\" pulumi-lang-python=\"`key_management_device_to_cert_status`\" pulumi-lang-yaml=\"`keyManagementDeviceToCertStatus`\" pulumi-lang-java=\"`keyManagementDeviceToCertStatus`\"\u003e`key_management_device_to_cert_status`\u003c/span\u003e: - Mapping of key management device to certificate status list.\n* \u003cspan pulumi-lang-nodejs=\"`numberOfCpuCores`\" pulumi-lang-dotnet=\"`NumberOfCpuCores`\" pulumi-lang-go=\"`numberOfCpuCores`\" pulumi-lang-python=\"`number_of_cpu_cores`\" pulumi-lang-yaml=\"`numberOfCpuCores`\" pulumi-lang-java=\"`numberOfCpuCores`\"\u003e`number_of_cpu_cores`\u003c/span\u003e: - Number of CPU cores.\n* \u003cspan pulumi-lang-nodejs=\"`numberOfCpuThreads`\" pulumi-lang-dotnet=\"`NumberOfCpuThreads`\" pulumi-lang-go=\"`numberOfCpuThreads`\" pulumi-lang-python=\"`number_of_cpu_threads`\" pulumi-lang-yaml=\"`numberOfCpuThreads`\" pulumi-lang-java=\"`numberOfCpuThreads`\"\u003e`number_of_cpu_threads`\u003c/span\u003e: - Number of CPU threads.\n* \u003cspan pulumi-lang-nodejs=\"`numberOfCpuSockets`\" pulumi-lang-dotnet=\"`NumberOfCpuSockets`\" pulumi-lang-go=\"`numberOfCpuSockets`\" pulumi-lang-python=\"`number_of_cpu_sockets`\" pulumi-lang-yaml=\"`numberOfCpuSockets`\" pulumi-lang-java=\"`numberOfCpuSockets`\"\u003e`number_of_cpu_sockets`\u003c/span\u003e: - Number of CPU sockets.\n* \u003cspan pulumi-lang-nodejs=\"`cpuCapacityHz`\" pulumi-lang-dotnet=\"`CpuCapacityHz`\" pulumi-lang-go=\"`cpuCapacityHz`\" pulumi-lang-python=\"`cpu_capacity_hz`\" pulumi-lang-yaml=\"`cpuCapacityHz`\" pulumi-lang-java=\"`cpuCapacityHz`\"\u003e`cpu_capacity_hz`\u003c/span\u003e: - CPU capacity in Hz.\n* \u003cspan pulumi-lang-nodejs=\"`cpuFrequencyHz`\" pulumi-lang-dotnet=\"`CpuFrequencyHz`\" pulumi-lang-go=\"`cpuFrequencyHz`\" pulumi-lang-python=\"`cpu_frequency_hz`\" pulumi-lang-yaml=\"`cpuFrequencyHz`\" pulumi-lang-java=\"`cpuFrequencyHz`\"\u003e`cpu_frequency_hz`\u003c/span\u003e: - CPU frequency in Hz.\n* \u003cspan pulumi-lang-nodejs=\"`cpuModel`\" pulumi-lang-dotnet=\"`CpuModel`\" pulumi-lang-go=\"`cpuModel`\" pulumi-lang-python=\"`cpu_model`\" pulumi-lang-yaml=\"`cpuModel`\" pulumi-lang-java=\"`cpuModel`\"\u003e`cpu_model`\u003c/span\u003e: - CPU model name.\n* \u003cspan pulumi-lang-nodejs=\"`gpuDriverVersion`\" pulumi-lang-dotnet=\"`GpuDriverVersion`\" pulumi-lang-go=\"`gpuDriverVersion`\" pulumi-lang-python=\"`gpu_driver_version`\" pulumi-lang-yaml=\"`gpuDriverVersion`\" pulumi-lang-java=\"`gpuDriverVersion`\"\u003e`gpu_driver_version`\u003c/span\u003e: - GPU driver version.\n* \u003cspan pulumi-lang-nodejs=\"`gpuList`\" pulumi-lang-dotnet=\"`GpuList`\" pulumi-lang-go=\"`gpuList`\" pulumi-lang-python=\"`gpu_list`\" pulumi-lang-yaml=\"`gpuList`\" pulumi-lang-java=\"`gpuList`\"\u003e`gpu_list`\u003c/span\u003e: - GPU attached list.\n* \u003cspan pulumi-lang-nodejs=\"`defaultVhdLocation`\" pulumi-lang-dotnet=\"`DefaultVhdLocation`\" pulumi-lang-go=\"`defaultVhdLocation`\" pulumi-lang-python=\"`default_vhd_location`\" pulumi-lang-yaml=\"`defaultVhdLocation`\" pulumi-lang-java=\"`defaultVhdLocation`\"\u003e`default_vhd_location`\u003c/span\u003e: - Default VHD location.\n* \u003cspan pulumi-lang-nodejs=\"`defaultVhdContainerUuid`\" pulumi-lang-dotnet=\"`DefaultVhdContainerUuid`\" pulumi-lang-go=\"`defaultVhdContainerUuid`\" pulumi-lang-python=\"`default_vhd_container_uuid`\" pulumi-lang-yaml=\"`defaultVhdContainerUuid`\" pulumi-lang-java=\"`defaultVhdContainerUuid`\"\u003e`default_vhd_container_uuid`\u003c/span\u003e: - Default VHD container UUID.\n* \u003cspan pulumi-lang-nodejs=\"`defaultVmLocation`\" pulumi-lang-dotnet=\"`DefaultVmLocation`\" pulumi-lang-go=\"`defaultVmLocation`\" pulumi-lang-python=\"`default_vm_location`\" pulumi-lang-yaml=\"`defaultVmLocation`\" pulumi-lang-java=\"`defaultVmLocation`\"\u003e`default_vm_location`\u003c/span\u003e: - Default VM location.\n* \u003cspan pulumi-lang-nodejs=\"`defaultVmContainerUuid`\" pulumi-lang-dotnet=\"`DefaultVmContainerUuid`\" pulumi-lang-go=\"`defaultVmContainerUuid`\" pulumi-lang-python=\"`default_vm_container_uuid`\" pulumi-lang-yaml=\"`defaultVmContainerUuid`\" pulumi-lang-java=\"`defaultVmContainerUuid`\"\u003e`default_vm_container_uuid`\u003c/span\u003e: - Default VM container UUID.\n* \u003cspan pulumi-lang-nodejs=\"`rebootPending`\" pulumi-lang-dotnet=\"`RebootPending`\" pulumi-lang-go=\"`rebootPending`\" pulumi-lang-python=\"`reboot_pending`\" pulumi-lang-yaml=\"`rebootPending`\" pulumi-lang-java=\"`rebootPending`\"\u003e`reboot_pending`\u003c/span\u003e: - Reboot pending status.\n* \u003cspan pulumi-lang-nodejs=\"`failoverClusterFqdn`\" pulumi-lang-dotnet=\"`FailoverClusterFqdn`\" pulumi-lang-go=\"`failoverClusterFqdn`\" pulumi-lang-python=\"`failover_cluster_fqdn`\" pulumi-lang-yaml=\"`failoverClusterFqdn`\" pulumi-lang-java=\"`failoverClusterFqdn`\"\u003e`failover_cluster_fqdn`\u003c/span\u003e: - Failover cluster FQDN.\n* \u003cspan pulumi-lang-nodejs=\"`failoverClusterNodeStatus`\" pulumi-lang-dotnet=\"`FailoverClusterNodeStatus`\" pulumi-lang-go=\"`failoverClusterNodeStatus`\" pulumi-lang-python=\"`failover_cluster_node_status`\" pulumi-lang-yaml=\"`failoverClusterNodeStatus`\" pulumi-lang-java=\"`failoverClusterNodeStatus`\"\u003e`failover_cluster_node_status`\u003c/span\u003e: - Failover cluster node status.\n* \u003cspan pulumi-lang-nodejs=\"`bootTimeUsecs`\" pulumi-lang-dotnet=\"`BootTimeUsecs`\" pulumi-lang-go=\"`bootTimeUsecs`\" pulumi-lang-python=\"`boot_time_usecs`\" pulumi-lang-yaml=\"`bootTimeUsecs`\" pulumi-lang-java=\"`bootTimeUsecs`\"\u003e`boot_time_usecs`\u003c/span\u003e: - Boot time in secs.\n* \u003cspan pulumi-lang-nodejs=\"`memorySizeBytes`\" pulumi-lang-dotnet=\"`MemorySizeBytes`\" pulumi-lang-go=\"`memorySizeBytes`\" pulumi-lang-python=\"`memory_size_bytes`\" pulumi-lang-yaml=\"`memorySizeBytes`\" pulumi-lang-java=\"`memorySizeBytes`\"\u003e`memory_size_bytes`\u003c/span\u003e: - Memory size in bytes.\n* \u003cspan pulumi-lang-nodejs=\"`blockSerial`\" pulumi-lang-dotnet=\"`BlockSerial`\" pulumi-lang-go=\"`blockSerial`\" pulumi-lang-python=\"`block_serial`\" pulumi-lang-yaml=\"`blockSerial`\" pulumi-lang-java=\"`blockSerial`\"\u003e`block_serial`\u003c/span\u003e: - Rackable unit serial name.\n* \u003cspan pulumi-lang-nodejs=\"`blockModel`\" pulumi-lang-dotnet=\"`BlockModel`\" pulumi-lang-go=\"`blockModel`\" pulumi-lang-python=\"`block_model`\" pulumi-lang-yaml=\"`blockModel`\" pulumi-lang-java=\"`blockModel`\"\u003e`block_model`\u003c/span\u003e: - Rackable unit model name.\n* \u003cspan pulumi-lang-nodejs=\"`maintenanceState`\" pulumi-lang-dotnet=\"`MaintenanceState`\" pulumi-lang-go=\"`maintenanceState`\" pulumi-lang-python=\"`maintenance_state`\" pulumi-lang-yaml=\"`maintenanceState`\" pulumi-lang-java=\"`maintenanceState`\"\u003e`maintenance_state`\u003c/span\u003e: - Host Maintenance State.\n* \u003cspan pulumi-lang-nodejs=\"`nodeStatus`\" pulumi-lang-dotnet=\"`NodeStatus`\" pulumi-lang-go=\"`nodeStatus`\" pulumi-lang-python=\"`node_status`\" pulumi-lang-yaml=\"`nodeStatus`\" pulumi-lang-java=\"`nodeStatus`\"\u003e`node_status`\u003c/span\u003e: - Node status.\n   * `TO_BE_PREPROTECTED`: Node to be preprotected.\n   * `TO_BE_REMOVED`: Node to be removed.\n   * `PREPROTECTED`: Node is preprotected.\n   * `OK_TO_BE_REMOVED`: Indicates whether removing the node from the cluster is adequate.\n   * `NORMAL`: Normal node.\n   * `NEW_NODE`: New node.\n\n### Links\n\nThe links attribute supports the following:\n\n* \u003cspan pulumi-lang-nodejs=\"`href`\" pulumi-lang-dotnet=\"`Href`\" pulumi-lang-go=\"`href`\" pulumi-lang-python=\"`href`\" pulumi-lang-yaml=\"`href`\" pulumi-lang-java=\"`href`\"\u003e`href`\u003c/span\u003e: - The URL at which the entity described by the link can be accessed.\n* \u003cspan pulumi-lang-nodejs=\"`rel`\" pulumi-lang-dotnet=\"`Rel`\" pulumi-lang-go=\"`rel`\" pulumi-lang-python=\"`rel`\" pulumi-lang-yaml=\"`rel`\" pulumi-lang-java=\"`rel`\"\u003e`rel`\u003c/span\u003e: - A name that identifies the relationship of the link to the object that is returned by the URL. The unique value of \"self\" identifies the URL for the object.\n\n### Hypervisor\nThe hypervisor attribute supports the following:\n\n* \u003cspan pulumi-lang-nodejs=\"`externalAddress`\" pulumi-lang-dotnet=\"`ExternalAddress`\" pulumi-lang-go=\"`externalAddress`\" pulumi-lang-python=\"`external_address`\" pulumi-lang-yaml=\"`externalAddress`\" pulumi-lang-java=\"`externalAddress`\"\u003e`external_address`\u003c/span\u003e: - An unique address that identifies a device on the internet or a local network in IPv4 or IPv6 format.\n* \u003cspan pulumi-lang-nodejs=\"`userName`\" pulumi-lang-dotnet=\"`UserName`\" pulumi-lang-go=\"`userName`\" pulumi-lang-python=\"`user_name`\" pulumi-lang-yaml=\"`userName`\" pulumi-lang-java=\"`userName`\"\u003e`user_name`\u003c/span\u003e: - Hypervisor user name.\n* \u003cspan pulumi-lang-nodejs=\"`fullName`\" pulumi-lang-dotnet=\"`FullName`\" pulumi-lang-go=\"`fullName`\" pulumi-lang-python=\"`full_name`\" pulumi-lang-yaml=\"`fullName`\" pulumi-lang-java=\"`fullName`\"\u003e`full_name`\u003c/span\u003e: - Hypervisor full name.\n* \u003cspan pulumi-lang-nodejs=\"`type`\" pulumi-lang-dotnet=\"`Type`\" pulumi-lang-go=\"`type`\" pulumi-lang-python=\"`type`\" pulumi-lang-yaml=\"`type`\" pulumi-lang-java=\"`type`\"\u003e`type`\u003c/span\u003e: - Hypervisor type.\n   * `XEN`: Xen hypervisor.\n   * `HYPERV`: HyperV hypervisor.\n   * `ESX`: ESX hypervisor.\n   * `AHV`: AHV hypervisor.\n* \u003cspan pulumi-lang-nodejs=\"`numberOfVms`\" pulumi-lang-dotnet=\"`NumberOfVms`\" pulumi-lang-go=\"`numberOfVms`\" pulumi-lang-python=\"`number_of_vms`\" pulumi-lang-yaml=\"`numberOfVms`\" pulumi-lang-java=\"`numberOfVms`\"\u003e`number_of_vms`\u003c/span\u003e: - Number of VMs.\n* \u003cspan pulumi-lang-nodejs=\"`state`\" pulumi-lang-dotnet=\"`State`\" pulumi-lang-go=\"`state`\" pulumi-lang-python=\"`state`\" pulumi-lang-yaml=\"`state`\" pulumi-lang-java=\"`state`\"\u003e`state`\u003c/span\u003e: - Hypervisor state.\n   * `HA_HEALING_TARGET`: Hypervisor in HA healing target state.\n   * `ENTERING_MAINTENANCE_MODE`: Hypervisor entering maintenance mode.\n   * `RESERVED_FOR_HA_FAILOVER`: Hypervisor reserved for HA failover.\n   * `HA_HEALING_SOURCE`: Hypervisor in HA healing source state.\n   * `RESERVING_FOR_HA_FAILOVER`: Hypervisor that is planned to be reserved for HA failover.\n   * `HA_FAILOVER_SOURCE`: Hypervisor in HA failover source state.\n   * `ACROPOLIS_NORMAL`: Hypervisor in Acropolis normal state.\n   * `ENTERED_MAINTENANCE_MODE`: Hypervisor entered maintenance mode.\n   * `ENTERING_MAINTENANCE_MODE_FROM_HA_FAILOVER`: Hypervisor entering maintenance mode from HA failover.\n   * `HA_FAILOVER_TARGET`: Hypervisor in HA failover target state.\n* \u003cspan pulumi-lang-nodejs=\"`acropolisConnectionState`\" pulumi-lang-dotnet=\"`AcropolisConnectionState`\" pulumi-lang-go=\"`acropolisConnectionState`\" pulumi-lang-python=\"`acropolis_connection_state`\" pulumi-lang-yaml=\"`acropolisConnectionState`\" pulumi-lang-java=\"`acropolisConnectionState`\"\u003e`acropolis_connection_state`\u003c/span\u003e: - Status of Acropolis connection to hypervisor.\n   * `DISCONNECTED`: Acropolis disconnected.\n   * `CONNECTED`: Acropolis connected.\n\n\n### Cluster\nThe cluster attribute supports the following:\n\n* \u003cspan pulumi-lang-nodejs=\"`uuid`\" pulumi-lang-dotnet=\"`Uuid`\" pulumi-lang-go=\"`uuid`\" pulumi-lang-python=\"`uuid`\" pulumi-lang-yaml=\"`uuid`\" pulumi-lang-java=\"`uuid`\"\u003e`uuid`\u003c/span\u003e: - Cluster UUID.\n* \u003cspan pulumi-lang-nodejs=\"`name`\" pulumi-lang-dotnet=\"`Name`\" pulumi-lang-go=\"`name`\" pulumi-lang-python=\"`name`\" pulumi-lang-yaml=\"`name`\" pulumi-lang-java=\"`name`\"\u003e`name`\u003c/span\u003e: - Cluster name. This is part of payload for both cluster create \u0026 update operations.\n\n\n### Controller VM\nThe\u003cspan pulumi-lang-nodejs=\" controllerVm \" pulumi-lang-dotnet=\" ControllerVm \" pulumi-lang-go=\" controllerVm \" pulumi-lang-python=\" controller_vm \" pulumi-lang-yaml=\" controllerVm \" pulumi-lang-java=\" controllerVm \"\u003e controller_vm \u003c/span\u003eattribute supports the following:\n\n* \u003cspan pulumi-lang-nodejs=\"`id`\" pulumi-lang-dotnet=\"`Id`\" pulumi-lang-go=\"`id`\" pulumi-lang-python=\"`id`\" pulumi-lang-yaml=\"`id`\" pulumi-lang-java=\"`id`\"\u003e`id`\u003c/span\u003e: - Controller VM Id.\n* \u003cspan pulumi-lang-nodejs=\"`externalAddress`\" pulumi-lang-dotnet=\"`ExternalAddress`\" pulumi-lang-go=\"`externalAddress`\" pulumi-lang-python=\"`external_address`\" pulumi-lang-yaml=\"`externalAddress`\" pulumi-lang-java=\"`externalAddress`\"\u003e`external_address`\u003c/span\u003e: - An unique address that identifies a device on the internet or a local network in IPv4 or IPv6 format.\n* \u003cspan pulumi-lang-nodejs=\"`backplaneAddress`\" pulumi-lang-dotnet=\"`BackplaneAddress`\" pulumi-lang-go=\"`backplaneAddress`\" pulumi-lang-python=\"`backplane_address`\" pulumi-lang-yaml=\"`backplaneAddress`\" pulumi-lang-java=\"`backplaneAddress`\"\u003e`backplane_address`\u003c/span\u003e: - An unique address that identifies a device on the internet or a local network in IPv4 or IPv6 format.\n* \u003cspan pulumi-lang-nodejs=\"`rdmaBackplaneAddress`\" pulumi-lang-dotnet=\"`RdmaBackplaneAddress`\" pulumi-lang-go=\"`rdmaBackplaneAddress`\" pulumi-lang-python=\"`rdma_backplane_address`\" pulumi-lang-yaml=\"`rdmaBackplaneAddress`\" pulumi-lang-java=\"`rdmaBackplaneAddress`\"\u003e`rdma_backplane_address`\u003c/span\u003e: - RDMA backplane address.\n* \u003cspan pulumi-lang-nodejs=\"`ipmi`\" pulumi-lang-dotnet=\"`Ipmi`\" pulumi-lang-go=\"`ipmi`\" pulumi-lang-python=\"`ipmi`\" pulumi-lang-yaml=\"`ipmi`\" pulumi-lang-java=\"`ipmi`\"\u003e`ipmi`\u003c/span\u003e: - IPMI reference.\n* \u003cspan pulumi-lang-nodejs=\"`natIp`\" pulumi-lang-dotnet=\"`NatIp`\" pulumi-lang-go=\"`natIp`\" pulumi-lang-python=\"`nat_ip`\" pulumi-lang-yaml=\"`natIp`\" pulumi-lang-java=\"`natIp`\"\u003e`nat_ip`\u003c/span\u003e: - An unique address that identifies a device on the internet or a local network in IPv4 or IPv6 format.\n* \u003cspan pulumi-lang-nodejs=\"`natPort`\" pulumi-lang-dotnet=\"`NatPort`\" pulumi-lang-go=\"`natPort`\" pulumi-lang-python=\"`nat_port`\" pulumi-lang-yaml=\"`natPort`\" pulumi-lang-java=\"`natPort`\"\u003e`nat_port`\u003c/span\u003e: - NAT port.\n* \u003cspan pulumi-lang-nodejs=\"`maintenanceMode`\" pulumi-lang-dotnet=\"`MaintenanceMode`\" pulumi-lang-go=\"`maintenanceMode`\" pulumi-lang-python=\"`maintenance_mode`\" pulumi-lang-yaml=\"`maintenanceMode`\" pulumi-lang-java=\"`maintenanceMode`\"\u003e`maintenance_mode`\u003c/span\u003e: - Maintenance mode status.\n* \u003cspan pulumi-lang-nodejs=\"`rackableUnitUuid`\" pulumi-lang-dotnet=\"`RackableUnitUuid`\" pulumi-lang-go=\"`rackableUnitUuid`\" pulumi-lang-python=\"`rackable_unit_uuid`\" pulumi-lang-yaml=\"`rackableUnitUuid`\" pulumi-lang-java=\"`rackableUnitUuid`\"\u003e`rackable_unit_uuid`\u003c/span\u003e: - Rackable unit UUID.\n\n\n### Disk\nThe disk attribute supports the following:\n\n* \u003cspan pulumi-lang-nodejs=\"`uuid`\" pulumi-lang-dotnet=\"`Uuid`\" pulumi-lang-go=\"`uuid`\" pulumi-lang-python=\"`uuid`\" pulumi-lang-yaml=\"`uuid`\" pulumi-lang-java=\"`uuid`\"\u003e`uuid`\u003c/span\u003e: - Disk UUID.\n* \u003cspan pulumi-lang-nodejs=\"`mountPath`\" pulumi-lang-dotnet=\"`MountPath`\" pulumi-lang-go=\"`mountPath`\" pulumi-lang-python=\"`mount_path`\" pulumi-lang-yaml=\"`mountPath`\" pulumi-lang-java=\"`mountPath`\"\u003e`mount_path`\u003c/span\u003e: - Disk mount path.\n* \u003cspan pulumi-lang-nodejs=\"`sizeInBytes`\" pulumi-lang-dotnet=\"`SizeInBytes`\" pulumi-lang-go=\"`sizeInBytes`\" pulumi-lang-python=\"`size_in_bytes`\" pulumi-lang-yaml=\"`sizeInBytes`\" pulumi-lang-java=\"`sizeInBytes`\"\u003e`size_in_bytes`\u003c/span\u003e: - Disk size.\n* \u003cspan pulumi-lang-nodejs=\"`serialId`\" pulumi-lang-dotnet=\"`SerialId`\" pulumi-lang-go=\"`serialId`\" pulumi-lang-python=\"`serial_id`\" pulumi-lang-yaml=\"`serialId`\" pulumi-lang-java=\"`serialId`\"\u003e`serial_id`\u003c/span\u003e: - Disk serial Id.\n* \u003cspan pulumi-lang-nodejs=\"`storageTier`\" pulumi-lang-dotnet=\"`StorageTier`\" pulumi-lang-go=\"`storageTier`\" pulumi-lang-python=\"`storage_tier`\" pulumi-lang-yaml=\"`storageTier`\" pulumi-lang-java=\"`storageTier`\"\u003e`storage_tier`\u003c/span\u003e: - Disk storage Tier type.\n   * `HDD`: HDD storage tier.\n   * `PCIE_SSD`: PCIE SSD storage tier.\n   * `SATA_SSD`: SATA SSD storage tier.\n\n### key Management Device To Cert Status\nThe\u003cspan pulumi-lang-nodejs=\" keyManagementDeviceToCertStatus \" pulumi-lang-dotnet=\" KeyManagementDeviceToCertStatus \" pulumi-lang-go=\" keyManagementDeviceToCertStatus \" pulumi-lang-python=\" key_management_device_to_cert_status \" pulumi-lang-yaml=\" keyManagementDeviceToCertStatus \" pulumi-lang-java=\" keyManagementDeviceToCertStatus \"\u003e key_management_device_to_cert_status \u003c/span\u003eattribute supports the following:\n\n* \u003cspan pulumi-lang-nodejs=\"`keyManagementServerName`\" pulumi-lang-dotnet=\"`KeyManagementServerName`\" pulumi-lang-go=\"`keyManagementServerName`\" pulumi-lang-python=\"`key_management_server_name`\" pulumi-lang-yaml=\"`keyManagementServerName`\" pulumi-lang-java=\"`keyManagementServerName`\"\u003e`key_management_server_name`\u003c/span\u003e: - Key management server name.\n* \u003cspan pulumi-lang-nodejs=\"`status`\" pulumi-lang-dotnet=\"`Status`\" pulumi-lang-go=\"`status`\" pulumi-lang-python=\"`status`\" pulumi-lang-yaml=\"`status`\" pulumi-lang-java=\"`status`\"\u003e`status`\u003c/span\u003e: - Certificate status.\n\n\n#### external Address\nThe\u003cspan pulumi-lang-nodejs=\" externalAddress \" pulumi-lang-dotnet=\" ExternalAddress \" pulumi-lang-go=\" externalAddress \" pulumi-lang-python=\" external_address \" pulumi-lang-yaml=\" externalAddress \" pulumi-lang-java=\" externalAddress \"\u003e external_address \u003c/span\u003eattribute supports the following:\n\n* \u003cspan pulumi-lang-nodejs=\"`ipv4`\" pulumi-lang-dotnet=\"`Ipv4`\" pulumi-lang-go=\"`ipv4`\" pulumi-lang-python=\"`ipv4`\" pulumi-lang-yaml=\"`ipv4`\" pulumi-lang-java=\"`ipv4`\"\u003e`ipv4`\u003c/span\u003e: - An unique address that identifies a device on the internet or a local network in IPv4 format.\n* \u003cspan pulumi-lang-nodejs=\"`ipv6`\" pulumi-lang-dotnet=\"`Ipv6`\" pulumi-lang-go=\"`ipv6`\" pulumi-lang-python=\"`ipv6`\" pulumi-lang-yaml=\"`ipv6`\" pulumi-lang-java=\"`ipv6`\"\u003e`ipv6`\u003c/span\u003e: - An unique address that identifies a device on the internet or a local network in IPv6 format.\n\n#### Backplane Address\nThe\u003cspan pulumi-lang-nodejs=\" backplaneAddress \" pulumi-lang-dotnet=\" BackplaneAddress \" pulumi-lang-go=\" backplaneAddress \" pulumi-lang-python=\" backplane_address \" pulumi-lang-yaml=\" backplaneAddress \" pulumi-lang-java=\" backplaneAddress \"\u003e backplane_address \u003c/span\u003eattribute supports the following:\n\n* \u003cspan pulumi-lang-nodejs=\"`ipv4`\" pulumi-lang-dotnet=\"`Ipv4`\" pulumi-lang-go=\"`ipv4`\" pulumi-lang-python=\"`ipv4`\" pulumi-lang-yaml=\"`ipv4`\" pulumi-lang-java=\"`ipv4`\"\u003e`ipv4`\u003c/span\u003e: - An unique address that identifies a device on the internet or a local network in IPv4 format.\n* \u003cspan pulumi-lang-nodejs=\"`ipv6`\" pulumi-lang-dotnet=\"`Ipv6`\" pulumi-lang-go=\"`ipv6`\" pulumi-lang-python=\"`ipv6`\" pulumi-lang-yaml=\"`ipv6`\" pulumi-lang-java=\"`ipv6`\"\u003e`ipv6`\u003c/span\u003e: - An unique address that identifies a device on the internet or a local network in IPv6 format.\n\n#### Rdma Backplane Address\nThe\u003cspan pulumi-lang-nodejs=\" rdmaBackplaneAddress \" pulumi-lang-dotnet=\" RdmaBackplaneAddress \" pulumi-lang-go=\" rdmaBackplaneAddress \" pulumi-lang-python=\" rdma_backplane_address \" pulumi-lang-yaml=\" rdmaBackplaneAddress \" pulumi-lang-java=\" rdmaBackplaneAddress \"\u003e rdma_backplane_address \u003c/span\u003eattribute supports the following:\n\n* \u003cspan pulumi-lang-nodejs=\"`ipv4`\" pulumi-lang-dotnet=\"`Ipv4`\" pulumi-lang-go=\"`ipv4`\" pulumi-lang-python=\"`ipv4`\" pulumi-lang-yaml=\"`ipv4`\" pulumi-lang-java=\"`ipv4`\"\u003e`ipv4`\u003c/span\u003e: - An unique address that identifies a device on the internet or a local network in IPv4 format.\n* \u003cspan pulumi-lang-nodejs=\"`ipv6`\" pulumi-lang-dotnet=\"`Ipv6`\" pulumi-lang-go=\"`ipv6`\" pulumi-lang-python=\"`ipv6`\" pulumi-lang-yaml=\"`ipv6`\" pulumi-lang-java=\"`ipv6`\"\u003e`ipv6`\u003c/span\u003e: - An unique address that identifies a device on the internet or a local network in IPv6 format.\n\n\n#### ipmi\nThe ipmi attribute supports the following:\n\n* \u003cspan pulumi-lang-nodejs=\"`ip`\" pulumi-lang-dotnet=\"`Ip`\" pulumi-lang-go=\"`ip`\" pulumi-lang-python=\"`ip`\" pulumi-lang-yaml=\"`ip`\" pulumi-lang-java=\"`ip`\"\u003e`ip`\u003c/span\u003e: - An unique address that identifies a device on the internet or a local network in IPv4 or IPv6 format.\n* \u003cspan pulumi-lang-nodejs=\"`username`\" pulumi-lang-dotnet=\"`Username`\" pulumi-lang-go=\"`username`\" pulumi-lang-python=\"`username`\" pulumi-lang-yaml=\"`username`\" pulumi-lang-java=\"`username`\"\u003e`username`\u003c/span\u003e: - IPMI username.\n\n\n#### Nat Ip\nThe\u003cspan pulumi-lang-nodejs=\" natIp \" pulumi-lang-dotnet=\" NatIp \" pulumi-lang-go=\" natIp \" pulumi-lang-python=\" nat_ip \" pulumi-lang-yaml=\" natIp \" pulumi-lang-java=\" natIp \"\u003e nat_ip \u003c/span\u003eattribute supports the following:\n\n* \u003cspan pulumi-lang-nodejs=\"`ipv4`\" pulumi-lang-dotnet=\"`Ipv4`\" pulumi-lang-go=\"`ipv4`\" pulumi-lang-python=\"`ipv4`\" pulumi-lang-yaml=\"`ipv4`\" pulumi-lang-java=\"`ipv4`\"\u003e`ipv4`\u003c/span\u003e: - An unique address that identifies a device on the internet or a local network in IPv4 format.\n* \u003cspan pulumi-lang-nodejs=\"`ipv6`\" pulumi-lang-dotnet=\"`Ipv6`\" pulumi-lang-go=\"`ipv6`\" pulumi-lang-python=\"`ipv6`\" pulumi-lang-yaml=\"`ipv6`\" pulumi-lang-java=\"`ipv6`\"\u003e`ipv6`\u003c/span\u003e: - An unique address that identifies a device on the internet or a local network in IPv6 format.\n\n\n##### ip\n\nThe ip attribute supports the following:\n\n* \u003cspan pulumi-lang-nodejs=\"`ipv4`\" pulumi-lang-dotnet=\"`Ipv4`\" pulumi-lang-go=\"`ipv4`\" pulumi-lang-python=\"`ipv4`\" pulumi-lang-yaml=\"`ipv4`\" pulumi-lang-java=\"`ipv4`\"\u003e`ipv4`\u003c/span\u003e: - An unique address that identifies a device on the internet or a local network in IPv4 format.\n* \u003cspan pulumi-lang-nodejs=\"`ipv6`\" pulumi-lang-dotnet=\"`Ipv6`\" pulumi-lang-go=\"`ipv6`\" pulumi-lang-python=\"`ipv6`\" pulumi-lang-yaml=\"`ipv6`\" pulumi-lang-java=\"`ipv6`\"\u003e`ipv6`\u003c/span\u003e: - An unique address that identifies a device on the internet or a local network in IPv6 format.\n\n\n###### IPV4\n\nThe ipv4 attribute supports the following:\n\n* \u003cspan pulumi-lang-nodejs=\"`value`\" pulumi-lang-dotnet=\"`Value`\" pulumi-lang-go=\"`value`\" pulumi-lang-python=\"`value`\" pulumi-lang-yaml=\"`value`\" pulumi-lang-java=\"`value`\"\u003e`value`\u003c/span\u003e: - An unique address that identifies a device on the internet or a local network in IPv4 format.\n* \u003cspan pulumi-lang-nodejs=\"`prefixLength`\" pulumi-lang-dotnet=\"`PrefixLength`\" pulumi-lang-go=\"`prefixLength`\" pulumi-lang-python=\"`prefix_length`\" pulumi-lang-yaml=\"`prefixLength`\" pulumi-lang-java=\"`prefixLength`\"\u003e`prefix_length`\u003c/span\u003e: - The prefix length of the network to which this host IPv4 address belongs.\n\n###### IPV6\n\nThe ipv6 attribute supports the following:\n\n* \u003cspan pulumi-lang-nodejs=\"`value`\" pulumi-lang-dotnet=\"`Value`\" pulumi-lang-go=\"`value`\" pulumi-lang-python=\"`value`\" pulumi-lang-yaml=\"`value`\" pulumi-lang-java=\"`value`\"\u003e`value`\u003c/span\u003e: - An unique address that identifies a device on the internet or a local network in IPv6 format.\n* \u003cspan pulumi-lang-nodejs=\"`prefixLength`\" pulumi-lang-dotnet=\"`PrefixLength`\" pulumi-lang-go=\"`prefixLength`\" pulumi-lang-python=\"`prefix_length`\" pulumi-lang-yaml=\"`prefixLength`\" pulumi-lang-java=\"`prefixLength`\"\u003e`prefix_length`\u003c/span\u003e: - The prefix length of the network to which this host IPv6 address belongs.\n\n\n\nSee detailed information in [Nutanix List Hosts V4](https://developers.nutanix.com/api-reference?namespace=clustermgmt\u0026version=v4.0#tag/Clusters/operation/listHostsByClusterId).\n",
      "inputs": {
        "description": "A collection of arguments for invoking getHostsV2.\n",
        "properties": {
          "apply": {
            "type": "string",
            "description": "-(Optional) A URL query parameter that allows clients to specify a sequence of transformations to the entity set, such as groupby, filter, aggregate etc. As of now only support for groupby exists.For example '\\$apply=groupby((templateName))' would get all templates grouped by templateName. The groupby can be applied on the following fields:\n* `cluster/name`\n* `hypervisor/type`\n"
          },
          "filter": {
            "type": "string",
            "description": "-(Optional) A URL query parameter that allows clients to filter a collection of resources. The expression specified with \\$filter is evaluated for each resource in the collection, and only items where the expression evaluates to true are included in the response. Expression specified with the \\$filter must conform to the OData V4.01 URL conventions. For example, filter '\\$filter=name eq 'karbon-ntnx-1.0' would filter the result on cluster name 'karbon-ntnx1.0', filter '\\$filter=startswith(name, 'C')' would filter on cluster name starting with 'C'. The filter can be applied to the following fields:\n* `bootTimeUsecs`\n* `cluster/name`\n* `cluster/uuid`\n* `cpuCapacityHz`\n* `cpuFrequencyHz`\n* `cpuModel`\n* `defaultVhdContainerUuid`\n* `defaultVhdLocation`\n* `defaultVmContainerUuid`\n* `defaultVmLocation`\n* `extId`\n* `gpuDriverVersion`\n* `gpuList`\n* `hostName`\n* `hypervisor/type`\n* `memorySizeBytes`\n* `numberOfCpuCores`\n* `numberOfCpuSockets`\n* `numberOfCpuThreads`\n"
          },
          "limit": {
            "type": "integer",
            "description": "-(Optional) A URL query parameter that specifies the total number of records returned in the result set. Must be a positive integer between 1 and 100. Any number out of this range will lead to a validation error. If the limit is not provided, a default value of 50 records will be returned in the result set.\n"
          },
          "orderBy": {
            "type": "string"
          },
          "page": {
            "type": "integer",
            "description": "-(Optional) A query parameter that specifies the page number of the result set. It must be a positive integer between 0 and the maximum number of pages that are available for that resource.\n"
          },
          "select": {
            "type": "string",
            "description": "-(Optional) A query parameter that allows clients to request a specific set of properties for each entity or complex type. Expression specified with the \\$select must conform to the OData V4.01 URL conventions. If a \\$select expression consists of a single select item that is an asterisk (i.e., \\*), then all properties on the matching resource will be returned. The select can be applied to the following fields:\n* `blockModel`\n* `blockSerial`\n* `bootTimeUsecs`\n"
          }
        },
        "type": "object"
      },
      "outputs": {
        "description": "A collection of values returned by getHostsV2.\n",
        "properties": {
          "apply": {
            "type": "string"
          },
          "filter": {
            "type": "string"
          },
          "hostEntities": {
            "description": "- Lists all host entities across clusters registered to Prism Central.\n",
            "items": {
              "$ref": "#/types/nutanix:index%2FgetHostsV2HostEntity:getHostsV2HostEntity"
            },
            "type": "array"
          },
          "id": {
            "description": "The provider-assigned unique ID for this managed resource.",
            "type": "string"
          },
          "limit": {
            "type": "integer"
          },
          "orderBy": {
            "type": "string"
          },
          "page": {
            "type": "integer"
          },
          "select": {
            "type": "string"
          }
        },
        "required": [
          "hostEntities",
          "id"
        ],
        "type": "object"
      }
    },
    "nutanix:index/getImage:getImage": {
      "description": "Describes a Image\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as nutanix from \"@pierskarsenbarg/nutanix\";\n\nconst testImage = new nutanix.Image(\"test\", {\n    name: \"Ubuntu\",\n    description: \"Ubuntu\",\n    sourceUri: \"http://archive.ubuntu.com/ubuntu/dists/bionic/main/installer-amd64/current/images/netboot/mini.iso\",\n});\nconst test = nutanix.getImageOutput({\n    imageId: testImage.id,\n});\nconst testname = nutanix.getImageOutput({\n    imageName: testImage.name,\n});\n```\n```python\nimport pulumi\nimport pulumi_nutanix as nutanix\n\ntest_image = nutanix.Image(\"test\",\n    name=\"Ubuntu\",\n    description=\"Ubuntu\",\n    source_uri=\"http://archive.ubuntu.com/ubuntu/dists/bionic/main/installer-amd64/current/images/netboot/mini.iso\")\ntest = nutanix.get_image_output(image_id=test_image.id)\ntestname = nutanix.get_image_output(image_name=test_image.name)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Nutanix = PiersKarsenbarg.Nutanix;\nusing Nutanix = Pulumi.Nutanix;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var testImage = new Nutanix.Image(\"test\", new()\n    {\n        Name = \"Ubuntu\",\n        Description = \"Ubuntu\",\n        SourceUri = \"http://archive.ubuntu.com/ubuntu/dists/bionic/main/installer-amd64/current/images/netboot/mini.iso\",\n    });\n\n    var test = Nutanix.GetImage.Invoke(new()\n    {\n        ImageId = testImage.Id,\n    });\n\n    var testname = Nutanix.GetImage.Invoke(new()\n    {\n        ImageName = testImage.Name,\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pierskarsenbarg/pulumi-nutanix/sdk/go/nutanix\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\ttestImage, err := nutanix.NewImage(ctx, \"test\", \u0026nutanix.ImageArgs{\n\t\t\tName:        pulumi.String(\"Ubuntu\"),\n\t\t\tDescription: pulumi.String(\"Ubuntu\"),\n\t\t\tSourceUri:   pulumi.String(\"http://archive.ubuntu.com/ubuntu/dists/bionic/main/installer-amd64/current/images/netboot/mini.iso\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_ = nutanix.LookupImageOutput(ctx, nutanix.GetImageOutputArgs{\n\t\t\tImageId: testImage.ID(),\n\t\t}, nil)\n\t\t_ = nutanix.LookupImageOutput(ctx, nutanix.GetImageOutputArgs{\n\t\t\tImageName: testImage.Name,\n\t\t}, nil)\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.nutanix.Image;\nimport com.pulumi.nutanix.ImageArgs;\nimport com.pulumi.nutanix.NutanixFunctions;\nimport com.pulumi.nutanix.inputs.GetImageArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var testImage = new Image(\"testImage\", ImageArgs.builder()\n            .name(\"Ubuntu\")\n            .description(\"Ubuntu\")\n            .sourceUri(\"http://archive.ubuntu.com/ubuntu/dists/bionic/main/installer-amd64/current/images/netboot/mini.iso\")\n            .build());\n\n        final var test = NutanixFunctions.getImage(GetImageArgs.builder()\n            .imageId(testImage.id())\n            .build());\n\n        final var testname = NutanixFunctions.getImage(GetImageArgs.builder()\n            .imageName(testImage.name())\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  testImage:\n    type: nutanix:Image\n    name: test\n    properties:\n      name: Ubuntu\n      description: Ubuntu\n      sourceUri: http://archive.ubuntu.com/ubuntu/dists/bionic/main/installer-amd64/current/images/netboot/mini.iso\nvariables:\n  test:\n    fn::invoke:\n      function: nutanix:getImage\n      arguments:\n        imageId: ${testImage.id}\n  testname:\n    fn::invoke:\n      function: nutanix:getImage\n      arguments:\n        imageName: ${testImage.name}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
      "inputs": {
        "description": "A collection of arguments for invoking getImage.\n",
        "properties": {
          "categories": {
            "type": "array",
            "items": {
              "$ref": "#/types/nutanix:index%2FgetImageCategory:getImageCategory"
            },
            "description": "- Categories for the image.\n"
          },
          "imageId": {
            "type": "string",
            "description": "Represents image UUID\n"
          },
          "imageName": {
            "type": "string",
            "description": "Represents image name\n"
          }
        },
        "type": "object"
      },
      "outputs": {
        "description": "A collection of values returned by getImage.\n",
        "properties": {
          "apiVersion": {
            "type": "string"
          },
          "architecture": {
            "description": "- The supported CPU architecture for a disk image.\n",
            "type": "string"
          },
          "availabilityZoneReference": {
            "additionalProperties": {
              "type": "string"
            },
            "description": "- The reference to a availability_zone.\n",
            "type": "object"
          },
          "categories": {
            "description": "- Categories for the image.\n",
            "items": {
              "$ref": "#/types/nutanix:index%2FgetImageCategory:getImageCategory"
            },
            "type": "array"
          },
          "checksum": {
            "additionalProperties": {
              "type": "string"
            },
            "description": "- Checksum of the image. The checksum is used for image validation if the image has a source specified. For images that do not have their source specified the checksum is generated by the image service.\n",
            "type": "object"
          },
          "clusterName": {
            "type": "string"
          },
          "clusterReferences": {
            "items": {
              "$ref": "#/types/nutanix:index%2FgetImageClusterReference:getImageClusterReference"
            },
            "type": "array"
          },
          "clusterUuid": {
            "type": "string"
          },
          "currentClusterReferenceLists": {
            "items": {
              "$ref": "#/types/nutanix:index%2FgetImageCurrentClusterReferenceList:getImageCurrentClusterReferenceList"
            },
            "type": "array"
          },
          "dataSourceReferences": {
            "description": "- Reference to a data source.\n",
            "items": {
              "$ref": "#/types/nutanix:index%2FgetImageDataSourceReference:getImageDataSourceReference"
            },
            "type": "array"
          },
          "description": {
            "description": "- A description for image.\n",
            "type": "string"
          },
          "id": {
            "description": "The provider-assigned unique ID for this managed resource.",
            "type": "string"
          },
          "imageId": {
            "type": "string"
          },
          "imageName": {
            "type": "string"
          },
          "imageType": {
            "description": "- The type of image.\n",
            "type": "string"
          },
          "metadata": {
            "additionalProperties": {
              "type": "string"
            },
            "description": "- The image kind metadata.\n",
            "type": "object"
          },
          "name": {
            "description": "- the name.\n",
            "type": "string"
          },
          "ownerReference": {
            "additionalProperties": {
              "type": "string"
            },
            "description": "- The reference to a user.\n",
            "type": "object"
          },
          "projectReference": {
            "additionalProperties": {
              "type": "string"
            },
            "description": "- The reference to a project.\n",
            "type": "object"
          },
          "retrievalUriLists": {
            "description": "- List of URIs where the raw image data can be accessed.\n",
            "items": {
              "type": "string"
            },
            "type": "array"
          },
          "sizeBytes": {
            "description": "- The size of the image in bytes.\n",
            "type": "integer"
          },
          "sourceUri": {
            "description": "- The source URI points at the location of the source image which is used to create/update image.\n",
            "type": "string"
          },
          "state": {
            "description": "- The state of the image.\n",
            "type": "string"
          },
          "version": {
            "additionalProperties": {
              "type": "string"
            },
            "description": "- The image version.\n",
            "type": "object"
          }
        },
        "required": [
          "apiVersion",
          "architecture",
          "availabilityZoneReference",
          "categories",
          "checksum",
          "clusterName",
          "clusterReferences",
          "clusterUuid",
          "currentClusterReferenceLists",
          "dataSourceReferences",
          "description",
          "id",
          "imageType",
          "metadata",
          "name",
          "ownerReference",
          "projectReference",
          "retrievalUriLists",
          "sizeBytes",
          "sourceUri",
          "state",
          "version"
        ],
        "type": "object"
      }
    },
    "nutanix:index/getImagePlacementPoliciesV2:getImagePlacementPoliciesV2": {
      "description": "List image placement policies details.\n\n## Example\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as nutanix from \"@pierskarsenbarg/nutanix\";\n\n// List all image placement policies\nconst list_ipp = nutanix.getImagePlacementPoliciesV2({});\n// List image placement policies with filter, page and limit\nconst filtered_ipp = nutanix.getImagePlacementPoliciesV2({\n    filter: \"startswith(name,'ipp_name')\",\n    page: 0,\n    limit: 10,\n});\n```\n```python\nimport pulumi\nimport pulumi_nutanix as nutanix\n\n# List all image placement policies\nlist_ipp = nutanix.get_image_placement_policies_v2()\n# List image placement policies with filter, page and limit\nfiltered_ipp = nutanix.get_image_placement_policies_v2(filter=\"startswith(name,'ipp_name')\",\n    page=0,\n    limit=10)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Nutanix = Pulumi.Nutanix;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    // List all image placement policies\n    var list_ipp = Nutanix.GetImagePlacementPoliciesV2.Invoke();\n\n    // List image placement policies with filter, page and limit\n    var filtered_ipp = Nutanix.GetImagePlacementPoliciesV2.Invoke(new()\n    {\n        Filter = \"startswith(name,'ipp_name')\",\n        Page = 0,\n        Limit = 10,\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pierskarsenbarg/pulumi-nutanix/sdk/go/nutanix\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t// List all image placement policies\n\t\t_, err := nutanix.GetImagePlacementPoliciesV2(ctx, \u0026nutanix.GetImagePlacementPoliciesV2Args{}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t// List image placement policies with filter, page and limit\n\t\t_, err = nutanix.GetImagePlacementPoliciesV2(ctx, \u0026nutanix.GetImagePlacementPoliciesV2Args{\n\t\t\tFilter: pulumi.StringRef(\"startswith(name,'ipp_name')\"),\n\t\t\tPage:   pulumi.IntRef(0),\n\t\t\tLimit:  pulumi.IntRef(10),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.nutanix.NutanixFunctions;\nimport com.pulumi.nutanix.inputs.GetImagePlacementPoliciesV2Args;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        // List all image placement policies\n        final var list-ipp = NutanixFunctions.getImagePlacementPoliciesV2(GetImagePlacementPoliciesV2Args.builder()\n            .build());\n\n        // List image placement policies with filter, page and limit\n        final var filtered-ipp = NutanixFunctions.getImagePlacementPoliciesV2(GetImagePlacementPoliciesV2Args.builder()\n            .filter(\"startswith(name,'ipp_name')\")\n            .page(0)\n            .limit(10)\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  # List all image placement policies\n  list-ipp:\n    fn::invoke:\n      function: nutanix:getImagePlacementPoliciesV2\n      arguments: {}\n  # List image placement policies with filter, page and limit\n  filtered-ipp:\n    fn::invoke:\n      function: nutanix:getImagePlacementPoliciesV2\n      arguments:\n        filter: startswith(name,'ipp_name')\n        page: 0\n        limit: 10\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
      "inputs": {
        "description": "A collection of arguments for invoking getImagePlacementPoliciesV2.\n",
        "properties": {
          "filter": {
            "type": "string",
            "description": "A URL query parameter that allows clients to filter a collection of resources. The expression specified with $filter is evaluated for each resource in the collection, and only items where the expression evaluates to true are included in the response. Expression specified with the $filter must conform to the OData V4.01 URL conventions. For example, filter '$filter=name eq 'karbon-ntnx-1.0' would filter the result on cluster name 'karbon-ntnx1.0', filter '$filter=startswith(name, 'C')' would filter on cluster name starting with 'C'. The filter can be applied to the following fields:\n- description\n- enforcementState\n- name\n"
          },
          "limit": {
            "type": "integer",
            "description": "A URL query parameter that specifies the total number of records returned in the result set. Must be a positive integer between 1 and 100. Any number out of this range will lead to a validation error. If the limit is not provided, a default value of 50 records will be returned in the result set.\n"
          },
          "orderBy": {
            "type": "string",
            "description": "A URL query parameter that allows clients to specify the sort criteria for the returned list of objects. Resources can be sorted in ascending order using asc or descending order using desc. If asc or desc are not specified, the resources will be sorted in ascending order by default. For example, '$orderby=templateName desc' would get all templates sorted by templateName in descending order. The orderby can be applied to the following fields:\n- description\n- enforcementState\n- name\n"
          },
          "page": {
            "type": "integer",
            "description": "A URL query parameter that specifies the page number of the result set. It must be a positive integer between 0 and the maximum number of pages that are available for that resource. Any number out of this range might lead to no results.\n"
          },
          "select": {
            "type": "string",
            "description": "A URL query parameter that allows clients to request a specific set of properties for each entity or complex type. Expression specified with the $select must conform to the OData V4.01 URL conventions. If a $select expression consists of a single select item that is an asterisk (i.e., *), then all properties on the matching resource will be returned. The select can be applied to the following fields:\n- createTime\n- description\n- enforcementState\n- extId\n- lastUpdateTime\n- links\n- name\n- ownerExtId\n- placementType\n- tenantId\n"
          }
        },
        "type": "object"
      },
      "outputs": {
        "description": "A collection of values returned by getImagePlacementPoliciesV2.\n",
        "properties": {
          "filter": {
            "type": "string"
          },
          "id": {
            "description": "The provider-assigned unique ID for this managed resource.",
            "type": "string"
          },
          "limit": {
            "type": "integer"
          },
          "orderBy": {
            "type": "string"
          },
          "page": {
            "type": "integer"
          },
          "placementPolicies": {
            "description": "List of all image placement policies\n",
            "items": {
              "$ref": "#/types/nutanix:index%2FgetImagePlacementPoliciesV2PlacementPolicy:getImagePlacementPoliciesV2PlacementPolicy"
            },
            "type": "array"
          },
          "select": {
            "type": "string"
          }
        },
        "required": [
          "id",
          "placementPolicies"
        ],
        "type": "object"
      }
    },
    "nutanix:index/getImagePlacementPolicyV2:getImagePlacementPolicyV2": {
      "description": "Retrieve the image placement policy details for the provided external identifier.\n\n## Example\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as nutanix from \"@pierskarsenbarg/nutanix\";\n\nconst ipp = nutanix.getImagePlacementPolicyV2({\n    extId: \"cf96e27a-4e52-4cec-b563-d0b25413cc4a\",\n});\n```\n```python\nimport pulumi\nimport pulumi_nutanix as nutanix\n\nipp = nutanix.get_image_placement_policy_v2(ext_id=\"cf96e27a-4e52-4cec-b563-d0b25413cc4a\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Nutanix = Pulumi.Nutanix;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var ipp = Nutanix.GetImagePlacementPolicyV2.Invoke(new()\n    {\n        ExtId = \"cf96e27a-4e52-4cec-b563-d0b25413cc4a\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pierskarsenbarg/pulumi-nutanix/sdk/go/nutanix\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := nutanix.LookupImagePlacementPolicyV2(ctx, \u0026nutanix.LookupImagePlacementPolicyV2Args{\n\t\t\tExtId: \"cf96e27a-4e52-4cec-b563-d0b25413cc4a\",\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.nutanix.NutanixFunctions;\nimport com.pulumi.nutanix.inputs.GetImagePlacementPolicyV2Args;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var ipp = NutanixFunctions.getImagePlacementPolicyV2(GetImagePlacementPolicyV2Args.builder()\n            .extId(\"cf96e27a-4e52-4cec-b563-d0b25413cc4a\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  ipp:\n    fn::invoke:\n      function: nutanix:getImagePlacementPolicyV2\n      arguments:\n        extId: cf96e27a-4e52-4cec-b563-d0b25413cc4a\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
      "inputs": {
        "description": "A collection of arguments for invoking getImagePlacementPolicyV2.\n",
        "properties": {
          "extId": {
            "type": "string",
            "description": "The external identifier of an image placement policy.\n"
          }
        },
        "type": "object",
        "required": [
          "extId"
        ]
      },
      "outputs": {
        "description": "A collection of values returned by getImagePlacementPolicyV2.\n",
        "properties": {
          "clusterEntityFilters": {
            "description": "(Required) Category-based entity filter.\n",
            "items": {
              "$ref": "#/types/nutanix:index%2FgetImagePlacementPolicyV2ClusterEntityFilter:getImagePlacementPolicyV2ClusterEntityFilter"
            },
            "type": "array"
          },
          "createTime": {
            "type": "string"
          },
          "description": {
            "description": "(Optional) Description of the image placement policy.\n",
            "type": "string"
          },
          "enforcementState": {
            "description": "(Optional) Enforcement status of the image placement policy. Valid values:\n- ACTIVE: The image placement policy is being actively enforced.\n- SUSPENDED: The policy enforcement for image placement is suspended.\n",
            "type": "string"
          },
          "extId": {
            "type": "string"
          },
          "id": {
            "description": "The provider-assigned unique ID for this managed resource.",
            "type": "string"
          },
          "imageEntityFilters": {
            "description": "(Required) Category-based entity filter.\n",
            "items": {
              "$ref": "#/types/nutanix:index%2FgetImagePlacementPolicyV2ImageEntityFilter:getImagePlacementPolicyV2ImageEntityFilter"
            },
            "type": "array"
          },
          "lastUpdateTime": {
            "type": "string"
          },
          "name": {
            "description": "(Required) Name of the image placement policy.\n",
            "type": "string"
          },
          "ownerExtId": {
            "type": "string"
          },
          "placementType": {
            "description": "(Required) Type of the image placement policy. Valid values:\n- HARD: Hard placement policy. Images can only be placed on clusters enforced by the image placement policy.\n- SOFT: Soft placement policy. Images can be placed on clusters apart from those enforced by the image placement policy.\n",
            "type": "string"
          }
        },
        "required": [
          "clusterEntityFilters",
          "createTime",
          "description",
          "enforcementState",
          "extId",
          "id",
          "imageEntityFilters",
          "lastUpdateTime",
          "name",
          "ownerExtId",
          "placementType"
        ],
        "type": "object"
      }
    },
    "nutanix:index/getImageV2:getImageV2": {
      "description": "Retrieve the image details for the provided external identifier.\n\n## Example\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as nutanix from \"@pierskarsenbarg/nutanix\";\n\nconst get_image = nutanix.getImageV2({\n    extId: \"0005a7b1-0b3b-4b3b-8b3b-0b3b4b3b4b3b\",\n});\n```\n```python\nimport pulumi\nimport pulumi_nutanix as nutanix\n\nget_image = nutanix.get_image_v2(ext_id=\"0005a7b1-0b3b-4b3b-8b3b-0b3b4b3b4b3b\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Nutanix = Pulumi.Nutanix;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var get_image = Nutanix.GetImageV2.Invoke(new()\n    {\n        ExtId = \"0005a7b1-0b3b-4b3b-8b3b-0b3b4b3b4b3b\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pierskarsenbarg/pulumi-nutanix/sdk/go/nutanix\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := nutanix.GetImageV2(ctx, \u0026nutanix.GetImageV2Args{\n\t\t\tExtId: \"0005a7b1-0b3b-4b3b-8b3b-0b3b4b3b4b3b\",\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.nutanix.NutanixFunctions;\nimport com.pulumi.nutanix.inputs.GetImageV2Args;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var get-image = NutanixFunctions.getImageV2(GetImageV2Args.builder()\n            .extId(\"0005a7b1-0b3b-4b3b-8b3b-0b3b4b3b4b3b\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  get-image:\n    fn::invoke:\n      function: nutanix:getImageV2\n      arguments:\n        extId: 0005a7b1-0b3b-4b3b-8b3b-0b3b4b3b4b3b\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
      "inputs": {
        "description": "A collection of arguments for invoking getImageV2.\n",
        "properties": {
          "extId": {
            "type": "string",
            "description": "The external identifier of an image.\n"
          }
        },
        "type": "object",
        "required": [
          "extId"
        ]
      },
      "outputs": {
        "description": "A collection of values returned by getImageV2.\n",
        "properties": {
          "categoryExtIds": {
            "description": "List of category external identifiers for an image.\n",
            "items": {
              "type": "string"
            },
            "type": "array"
          },
          "checksums": {
            "description": "The checksum of an image.\n",
            "items": {
              "$ref": "#/types/nutanix:index%2FgetImageV2Checksum:getImageV2Checksum"
            },
            "type": "array"
          },
          "clusterLocationExtIds": {
            "description": "List of cluster external identifiers where the image is located.\n",
            "items": {
              "type": "string"
            },
            "type": "array"
          },
          "createTime": {
            "description": "Create time of an image.\n",
            "type": "string"
          },
          "description": {
            "description": "The user defined description of an image.\n",
            "type": "string"
          },
          "extId": {
            "description": "The external identifier of VM Disk.\n",
            "type": "string"
          },
          "id": {
            "description": "The provider-assigned unique ID for this managed resource.",
            "type": "string"
          },
          "lastUpdateTime": {
            "description": "Last update time of an image.\n",
            "type": "string"
          },
          "name": {
            "description": "The user defined name of an image.\n",
            "type": "string"
          },
          "ownerExtId": {
            "description": "External identifier of the owner of the image\n",
            "type": "string"
          },
          "placementPolicyStatuses": {
            "description": "Status of an image placement policy.\n",
            "items": {
              "$ref": "#/types/nutanix:index%2FgetImageV2PlacementPolicyStatus:getImageV2PlacementPolicyStatus"
            },
            "type": "array"
          },
          "sizeBytes": {
            "description": "The size in bytes of an image file.\n",
            "type": "integer"
          },
          "sources": {
            "description": "The source of an image. It can be a VM disk or a URL.\n",
            "items": {
              "$ref": "#/types/nutanix:index%2FgetImageV2Source:getImageV2Source"
            },
            "type": "array"
          },
          "type": {
            "description": "The type of an image.\n",
            "type": "string"
          }
        },
        "required": [
          "categoryExtIds",
          "checksums",
          "clusterLocationExtIds",
          "createTime",
          "description",
          "extId",
          "id",
          "lastUpdateTime",
          "name",
          "ownerExtId",
          "placementPolicyStatuses",
          "sizeBytes",
          "sources",
          "type"
        ],
        "type": "object"
      }
    },
    "nutanix:index/getImagesV2:getImagesV2": {
      "description": "List images owned by Prism Central along with the image details like name, description, type, etc. This operation supports filtering, sorting, selection \u0026 pagination.\n\n## Example\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as nutanix from \"@pierskarsenbarg/nutanix\";\n\n// List all images\nconst list_images = nutanix.getImagesV2({});\n// List images with filter, page and limit\nconst filtered_images = nutanix.getImagesV2({\n    filter: \"startswith(name,'image_name')\",\n    page: 0,\n    limit: 10,\n});\n```\n```python\nimport pulumi\nimport pulumi_nutanix as nutanix\n\n# List all images\nlist_images = nutanix.get_images_v2()\n# List images with filter, page and limit\nfiltered_images = nutanix.get_images_v2(filter=\"startswith(name,'image_name')\",\n    page=0,\n    limit=10)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Nutanix = Pulumi.Nutanix;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    // List all images\n    var list_images = Nutanix.GetImagesV2.Invoke();\n\n    // List images with filter, page and limit\n    var filtered_images = Nutanix.GetImagesV2.Invoke(new()\n    {\n        Filter = \"startswith(name,'image_name')\",\n        Page = 0,\n        Limit = 10,\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pierskarsenbarg/pulumi-nutanix/sdk/go/nutanix\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t// List all images\n\t\t_, err := nutanix.LookupImagesV2(ctx, \u0026nutanix.LookupImagesV2Args{}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t// List images with filter, page and limit\n\t\t_, err = nutanix.LookupImagesV2(ctx, \u0026nutanix.LookupImagesV2Args{\n\t\t\tFilter: pulumi.StringRef(\"startswith(name,'image_name')\"),\n\t\t\tPage:   pulumi.IntRef(0),\n\t\t\tLimit:  pulumi.IntRef(10),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.nutanix.NutanixFunctions;\nimport com.pulumi.nutanix.inputs.GetImagesV2Args;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        // List all images\n        final var list-images = NutanixFunctions.getImagesV2(GetImagesV2Args.builder()\n            .build());\n\n        // List images with filter, page and limit\n        final var filtered-images = NutanixFunctions.getImagesV2(GetImagesV2Args.builder()\n            .filter(\"startswith(name,'image_name')\")\n            .page(0)\n            .limit(10)\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  # List all images\n  list-images:\n    fn::invoke:\n      function: nutanix:getImagesV2\n      arguments: {}\n  # List images with filter, page and limit\n  filtered-images:\n    fn::invoke:\n      function: nutanix:getImagesV2\n      arguments:\n        filter: startswith(name,'image_name')\n        page: 0\n        limit: 10\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Images\n\nThe \u003cspan pulumi-lang-nodejs=\"`images`\" pulumi-lang-dotnet=\"`Images`\" pulumi-lang-go=\"`images`\" pulumi-lang-python=\"`images`\" pulumi-lang-yaml=\"`images`\" pulumi-lang-java=\"`images`\"\u003e`images`\u003c/span\u003e object is a list of all images. Each image has the following attributes:\n\n* \u003cspan pulumi-lang-nodejs=\"`extId`\" pulumi-lang-dotnet=\"`ExtId`\" pulumi-lang-go=\"`extId`\" pulumi-lang-python=\"`ext_id`\" pulumi-lang-yaml=\"`extId`\" pulumi-lang-java=\"`extId`\"\u003e`ext_id`\u003c/span\u003e: A globally unique identifier of an instance that is suitable for external consumption.\n* \u003cspan pulumi-lang-nodejs=\"`name`\" pulumi-lang-dotnet=\"`Name`\" pulumi-lang-go=\"`name`\" pulumi-lang-python=\"`name`\" pulumi-lang-yaml=\"`name`\" pulumi-lang-java=\"`name`\"\u003e`name`\u003c/span\u003e: The user defined name of an image.\n* \u003cspan pulumi-lang-nodejs=\"`description`\" pulumi-lang-dotnet=\"`Description`\" pulumi-lang-go=\"`description`\" pulumi-lang-python=\"`description`\" pulumi-lang-yaml=\"`description`\" pulumi-lang-java=\"`description`\"\u003e`description`\u003c/span\u003e: The user defined description of an image.\n* \u003cspan pulumi-lang-nodejs=\"`type`\" pulumi-lang-dotnet=\"`Type`\" pulumi-lang-go=\"`type`\" pulumi-lang-python=\"`type`\" pulumi-lang-yaml=\"`type`\" pulumi-lang-java=\"`type`\"\u003e`type`\u003c/span\u003e: The type of an image.\n* \u003cspan pulumi-lang-nodejs=\"`checksum`\" pulumi-lang-dotnet=\"`Checksum`\" pulumi-lang-go=\"`checksum`\" pulumi-lang-python=\"`checksum`\" pulumi-lang-yaml=\"`checksum`\" pulumi-lang-java=\"`checksum`\"\u003e`checksum`\u003c/span\u003e: The checksum of an image.\n* \u003cspan pulumi-lang-nodejs=\"`sizeBytes`\" pulumi-lang-dotnet=\"`SizeBytes`\" pulumi-lang-go=\"`sizeBytes`\" pulumi-lang-python=\"`size_bytes`\" pulumi-lang-yaml=\"`sizeBytes`\" pulumi-lang-java=\"`sizeBytes`\"\u003e`size_bytes`\u003c/span\u003e: The size in bytes of an image file.\n* \u003cspan pulumi-lang-nodejs=\"`source`\" pulumi-lang-dotnet=\"`Source`\" pulumi-lang-go=\"`source`\" pulumi-lang-python=\"`source`\" pulumi-lang-yaml=\"`source`\" pulumi-lang-java=\"`source`\"\u003e`source`\u003c/span\u003e: The source of an image. It can be a VM disk or a URL.\n* \u003cspan pulumi-lang-nodejs=\"`categoryExtIds`\" pulumi-lang-dotnet=\"`CategoryExtIds`\" pulumi-lang-go=\"`categoryExtIds`\" pulumi-lang-python=\"`category_ext_ids`\" pulumi-lang-yaml=\"`categoryExtIds`\" pulumi-lang-java=\"`categoryExtIds`\"\u003e`category_ext_ids`\u003c/span\u003e: List of category external identifiers for an image.\n* \u003cspan pulumi-lang-nodejs=\"`clusterLocationExtIds`\" pulumi-lang-dotnet=\"`ClusterLocationExtIds`\" pulumi-lang-go=\"`clusterLocationExtIds`\" pulumi-lang-python=\"`cluster_location_ext_ids`\" pulumi-lang-yaml=\"`clusterLocationExtIds`\" pulumi-lang-java=\"`clusterLocationExtIds`\"\u003e`cluster_location_ext_ids`\u003c/span\u003e: List of cluster external identifiers where the image is located.\n* \u003cspan pulumi-lang-nodejs=\"`createTime`\" pulumi-lang-dotnet=\"`CreateTime`\" pulumi-lang-go=\"`createTime`\" pulumi-lang-python=\"`create_time`\" pulumi-lang-yaml=\"`createTime`\" pulumi-lang-java=\"`createTime`\"\u003e`create_time`\u003c/span\u003e: Create time of an image.\n* \u003cspan pulumi-lang-nodejs=\"`lastUpdateTime`\" pulumi-lang-dotnet=\"`LastUpdateTime`\" pulumi-lang-go=\"`lastUpdateTime`\" pulumi-lang-python=\"`last_update_time`\" pulumi-lang-yaml=\"`lastUpdateTime`\" pulumi-lang-java=\"`lastUpdateTime`\"\u003e`last_update_time`\u003c/span\u003e: Last update time of an image.\n* \u003cspan pulumi-lang-nodejs=\"`ownerExtId`\" pulumi-lang-dotnet=\"`OwnerExtId`\" pulumi-lang-go=\"`ownerExtId`\" pulumi-lang-python=\"`owner_ext_id`\" pulumi-lang-yaml=\"`ownerExtId`\" pulumi-lang-java=\"`ownerExtId`\"\u003e`owner_ext_id`\u003c/span\u003e: External identifier of the owner of the image\n* \u003cspan pulumi-lang-nodejs=\"`placementPolicyStatus`\" pulumi-lang-dotnet=\"`PlacementPolicyStatus`\" pulumi-lang-go=\"`placementPolicyStatus`\" pulumi-lang-python=\"`placement_policy_status`\" pulumi-lang-yaml=\"`placementPolicyStatus`\" pulumi-lang-java=\"`placementPolicyStatus`\"\u003e`placement_policy_status`\u003c/span\u003e: Status of an image placement policy.\n\n\n### source\n* \u003cspan pulumi-lang-nodejs=\"`extId`\" pulumi-lang-dotnet=\"`ExtId`\" pulumi-lang-go=\"`extId`\" pulumi-lang-python=\"`ext_id`\" pulumi-lang-yaml=\"`extId`\" pulumi-lang-java=\"`extId`\"\u003e`ext_id`\u003c/span\u003e: The external identifier of VM Disk.\n* \u003cspan pulumi-lang-nodejs=\"`url`\" pulumi-lang-dotnet=\"`Url`\" pulumi-lang-go=\"`url`\" pulumi-lang-python=\"`url`\" pulumi-lang-yaml=\"`url`\" pulumi-lang-java=\"`url`\"\u003e`url`\u003c/span\u003e: The URL for creating an image.\n* \u003cspan pulumi-lang-nodejs=\"`basicAuth`\" pulumi-lang-dotnet=\"`BasicAuth`\" pulumi-lang-go=\"`basicAuth`\" pulumi-lang-python=\"`basic_auth`\" pulumi-lang-yaml=\"`basicAuth`\" pulumi-lang-java=\"`basicAuth`\"\u003e`basic_auth`\u003c/span\u003e: Basic authentication credentials for image source HTTP/S URL.\n* `basic_auth.username`: Username for basic authentication.\n* `basic_auth.password`: Password for basic authentication.\n\n\n###\u003cspan pulumi-lang-nodejs=\" placementPolicyStatus\n\" pulumi-lang-dotnet=\" PlacementPolicyStatus\n\" pulumi-lang-go=\" placementPolicyStatus\n\" pulumi-lang-python=\" placement_policy_status\n\" pulumi-lang-yaml=\" placementPolicyStatus\n\" pulumi-lang-java=\" placementPolicyStatus\n\"\u003e placement_policy_status\n\u003c/span\u003e* \u003cspan pulumi-lang-nodejs=\"`placementPolicyExtId`\" pulumi-lang-dotnet=\"`PlacementPolicyExtId`\" pulumi-lang-go=\"`placementPolicyExtId`\" pulumi-lang-python=\"`placement_policy_ext_id`\" pulumi-lang-yaml=\"`placementPolicyExtId`\" pulumi-lang-java=\"`placementPolicyExtId`\"\u003e`placement_policy_ext_id`\u003c/span\u003e: Image placement policy external identifier.\n* \u003cspan pulumi-lang-nodejs=\"`complianceStatus`\" pulumi-lang-dotnet=\"`ComplianceStatus`\" pulumi-lang-go=\"`complianceStatus`\" pulumi-lang-python=\"`compliance_status`\" pulumi-lang-yaml=\"`complianceStatus`\" pulumi-lang-java=\"`complianceStatus`\"\u003e`compliance_status`\u003c/span\u003e: Compliance status for a placement policy.\n* \u003cspan pulumi-lang-nodejs=\"`enforcementMode`\" pulumi-lang-dotnet=\"`EnforcementMode`\" pulumi-lang-go=\"`enforcementMode`\" pulumi-lang-python=\"`enforcement_mode`\" pulumi-lang-yaml=\"`enforcementMode`\" pulumi-lang-java=\"`enforcementMode`\"\u003e`enforcement_mode`\u003c/span\u003e: Indicates whether the placement policy enforcement is ongoing or has failed.\n* \u003cspan pulumi-lang-nodejs=\"`policyClusterExtIds`\" pulumi-lang-dotnet=\"`PolicyClusterExtIds`\" pulumi-lang-go=\"`policyClusterExtIds`\" pulumi-lang-python=\"`policy_cluster_ext_ids`\" pulumi-lang-yaml=\"`policyClusterExtIds`\" pulumi-lang-java=\"`policyClusterExtIds`\"\u003e`policy_cluster_ext_ids`\u003c/span\u003e: List of cluster external identifiers of the image location for the enforced placement policy.\n* \u003cspan pulumi-lang-nodejs=\"`enforcedClusterExtIds`\" pulumi-lang-dotnet=\"`EnforcedClusterExtIds`\" pulumi-lang-go=\"`enforcedClusterExtIds`\" pulumi-lang-python=\"`enforced_cluster_ext_ids`\" pulumi-lang-yaml=\"`enforcedClusterExtIds`\" pulumi-lang-java=\"`enforcedClusterExtIds`\"\u003e`enforced_cluster_ext_ids`\u003c/span\u003e: List of cluster external identifiers for the enforced placement policy.\n* \u003cspan pulumi-lang-nodejs=\"`conflictingPolicyExtIds`\" pulumi-lang-dotnet=\"`ConflictingPolicyExtIds`\" pulumi-lang-go=\"`conflictingPolicyExtIds`\" pulumi-lang-python=\"`conflicting_policy_ext_ids`\" pulumi-lang-yaml=\"`conflictingPolicyExtIds`\" pulumi-lang-java=\"`conflictingPolicyExtIds`\"\u003e`conflicting_policy_ext_ids`\u003c/span\u003e: List of image placement policy external identifier that conflict with the current one.\n\nSee detailed information in [Nutanix List Images V4](https://developers.nutanix.com/api-reference?namespace=vmm\u0026version=v4.0#tag/Images)\n",
      "inputs": {
        "description": "A collection of arguments for invoking getImagesV2.\n",
        "properties": {
          "filter": {
            "type": "string",
            "description": "A URL query parameter that allows clients to filter a collection of resources. The expression specified with \\$filter is evaluated for each resource in the collection, and only items where the expression evaluates to true are included in the response. Expression specified with the \\$filter must conform to the OData V4.01 URL conventions. For example, filter '\\$filter=name eq 'karbon-ntnx-1.0' would filter the result on cluster name 'karbon-ntnx1.0', filter '\\$filter=startswith(name, 'C')' would filter on cluster name starting with 'C'. The filter can be applied to the following fields:\n- description\n- name\n- sizeBytes\n- type\n"
          },
          "limit": {
            "type": "integer",
            "description": "A URL query parameter that specifies the total number of records returned in the result set. Must be a positive integer between 1 and 100. Any number out of this range will lead to a validation error. If the limit is not provided, a default value of 50 records will be returned in the result set.\n"
          },
          "orderBy": {
            "type": "string",
            "description": "A URL query parameter that allows clients to specify the sort criteria for the returned list of objects. Resources can be sorted in ascending order using asc or descending order using desc. If asc or desc are not specified, the resources will be sorted in ascending order by default. For example, '\\$orderby=templateName desc' would get all templates sorted by templateName in descending order. The orderby can be applied to the following fields:\n- description\n- lastUpdateTime\n- name\n- sizeBytes\n- type\n"
          },
          "page": {
            "type": "integer",
            "description": "A URL query parameter that specifies the page number of the result set. It must be a positive integer between 0 and the maximum number of pages that are available for that resource. Any number out of this range might lead to no results.\n"
          },
          "select": {
            "type": "string",
            "description": "A URL query parameter that allows clients to request a specific set of properties for each entity or complex type. Expression specified with the \\$select must conform to the OData V4.01 URL conventions. If a \\$select expression consists of a single select item that is an asterisk (i.e., *), then all properties on the matching resource will be returned. The select can be applied to the following fields:\n- categoryExtIds\n- clusterLocationExtIds\n- createTime\n- description\n- extId\n- lastUpdateTime\n- links\n- name\n- ownerExtId\n- sizeBytes\n- tenantId\n- type\n"
          }
        },
        "type": "object"
      },
      "outputs": {
        "description": "A collection of values returned by getImagesV2.\n",
        "properties": {
          "filter": {
            "type": "string"
          },
          "id": {
            "description": "The provider-assigned unique ID for this managed resource.",
            "type": "string"
          },
          "images": {
            "description": "List of all images\n",
            "items": {
              "$ref": "#/types/nutanix:index%2FgetImagesV2Image:getImagesV2Image"
            },
            "type": "array"
          },
          "limit": {
            "type": "integer"
          },
          "orderBy": {
            "type": "string"
          },
          "page": {
            "type": "integer"
          },
          "select": {
            "type": "string"
          }
        },
        "required": [
          "id",
          "images"
        ],
        "type": "object"
      }
    },
    "nutanix:index/getKarbonCluster:getKarbonCluster": {
      "description": "Describes a Karbon Cluster\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as nutanix from \"@pierskarsenbarg/nutanix\";\n\nconst cluster = nutanix.getKarbonCluster({\n    karbonClusterId: \"\u003cYOUR-CLUSTER-ID\u003e\",\n});\n```\n```python\nimport pulumi\nimport pulumi_nutanix as nutanix\n\ncluster = nutanix.get_karbon_cluster(karbon_cluster_id=\"\u003cYOUR-CLUSTER-ID\u003e\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Nutanix = Pulumi.Nutanix;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var cluster = Nutanix.GetKarbonCluster.Invoke(new()\n    {\n        KarbonClusterId = \"\u003cYOUR-CLUSTER-ID\u003e\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pierskarsenbarg/pulumi-nutanix/sdk/go/nutanix\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := nutanix.LookupKarbonCluster(ctx, \u0026nutanix.LookupKarbonClusterArgs{\n\t\t\tKarbonClusterId: pulumi.StringRef(\"\u003cYOUR-CLUSTER-ID\u003e\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.nutanix.NutanixFunctions;\nimport com.pulumi.nutanix.inputs.GetKarbonClusterArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var cluster = NutanixFunctions.getKarbonCluster(GetKarbonClusterArgs.builder()\n            .karbonClusterId(\"\u003cYOUR-CLUSTER-ID\u003e\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  cluster:\n    fn::invoke:\n      function: nutanix:getKarbonCluster\n      arguments:\n        karbonClusterId: \u003cYOUR-CLUSTER-ID\u003e\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
      "inputs": {
        "description": "A collection of arguments for invoking getKarbonCluster.\n",
        "properties": {
          "karbonClusterId": {
            "type": "string",
            "description": "Represents karbon cluster uuid\n"
          },
          "karbonClusterName": {
            "type": "string",
            "description": "Represents the name of karbon cluster\n"
          }
        },
        "type": "object"
      },
      "outputs": {
        "description": "A collection of values returned by getKarbonCluster.\n",
        "properties": {
          "deploymentType": {
            "type": "string"
          },
          "etcdNodePools": {
            "description": "- Configuration of the node pools that the nodes in the etcd cluster belong to. The etcd nodes require a minimum of 8,192 MiB memory and 409,60 MiB disk space.\n",
            "items": {
              "$ref": "#/types/nutanix:index%2FgetKarbonClusterEtcdNodePool:getKarbonClusterEtcdNodePool"
            },
            "type": "array"
          },
          "id": {
            "description": "The provider-assigned unique ID for this managed resource.",
            "type": "string"
          },
          "karbonClusterId": {
            "type": "string"
          },
          "karbonClusterName": {
            "type": "string"
          },
          "kubeapiServerIpv4Address": {
            "type": "string"
          },
          "masterNodePools": {
            "description": "- Configuration of the master node pools.\n",
            "items": {
              "$ref": "#/types/nutanix:index%2FgetKarbonClusterMasterNodePool:getKarbonClusterMasterNodePool"
            },
            "type": "array"
          },
          "name": {
            "description": "- Unique name of the node pool.\n",
            "type": "string"
          },
          "status": {
            "type": "string"
          },
          "uuid": {
            "type": "string"
          },
          "version": {
            "description": "- K8s version of the cluster.\n",
            "type": "string"
          },
          "workerNodePools": {
            "items": {
              "$ref": "#/types/nutanix:index%2FgetKarbonClusterWorkerNodePool:getKarbonClusterWorkerNodePool"
            },
            "type": "array"
          }
        },
        "required": [
          "deploymentType",
          "etcdNodePools",
          "id",
          "kubeapiServerIpv4Address",
          "masterNodePools",
          "name",
          "status",
          "uuid",
          "version",
          "workerNodePools"
        ],
        "type": "object"
      }
    },
    "nutanix:index/getKarbonClusterKubeConfig:getKarbonClusterKubeConfig": {
      "description": "Describes the SSH config from a Karbon Cluster\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as nutanix from \"@pierskarsenbarg/nutanix\";\n\n// Get kubeconfig by cluster UUID\nconst configbyid = nutanix.getKarbonClusterKubeConfig({\n    karbonClusterId: \"\u003cYOUR-CLUSTER-ID\u003e\",\n});\n// Get Kubeconfig by cluster name\nconst configbyname = nutanix.getKarbonClusterKubeConfig({\n    karbonClusterName: \"\u003cYOUR-CLUSTER-NAME\u003e\",\n});\n```\n```python\nimport pulumi\nimport pulumi_nutanix as nutanix\n\n# Get kubeconfig by cluster UUID\nconfigbyid = nutanix.get_karbon_cluster_kube_config(karbon_cluster_id=\"\u003cYOUR-CLUSTER-ID\u003e\")\n# Get Kubeconfig by cluster name\nconfigbyname = nutanix.get_karbon_cluster_kube_config(karbon_cluster_name=\"\u003cYOUR-CLUSTER-NAME\u003e\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Nutanix = Pulumi.Nutanix;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    // Get kubeconfig by cluster UUID\n    var configbyid = Nutanix.GetKarbonClusterKubeConfig.Invoke(new()\n    {\n        KarbonClusterId = \"\u003cYOUR-CLUSTER-ID\u003e\",\n    });\n\n    // Get Kubeconfig by cluster name\n    var configbyname = Nutanix.GetKarbonClusterKubeConfig.Invoke(new()\n    {\n        KarbonClusterName = \"\u003cYOUR-CLUSTER-NAME\u003e\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pierskarsenbarg/pulumi-nutanix/sdk/go/nutanix\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t// Get kubeconfig by cluster UUID\n\t\t_, err := nutanix.GetKarbonClusterKubeConfig(ctx, \u0026nutanix.GetKarbonClusterKubeConfigArgs{\n\t\t\tKarbonClusterId: pulumi.StringRef(\"\u003cYOUR-CLUSTER-ID\u003e\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t// Get Kubeconfig by cluster name\n\t\t_, err = nutanix.GetKarbonClusterKubeConfig(ctx, \u0026nutanix.GetKarbonClusterKubeConfigArgs{\n\t\t\tKarbonClusterName: pulumi.StringRef(\"\u003cYOUR-CLUSTER-NAME\u003e\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.nutanix.NutanixFunctions;\nimport com.pulumi.nutanix.inputs.GetKarbonClusterKubeConfigArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        // Get kubeconfig by cluster UUID\n        final var configbyid = NutanixFunctions.getKarbonClusterKubeConfig(GetKarbonClusterKubeConfigArgs.builder()\n            .karbonClusterId(\"\u003cYOUR-CLUSTER-ID\u003e\")\n            .build());\n\n        // Get Kubeconfig by cluster name\n        final var configbyname = NutanixFunctions.getKarbonClusterKubeConfig(GetKarbonClusterKubeConfigArgs.builder()\n            .karbonClusterName(\"\u003cYOUR-CLUSTER-NAME\u003e\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  # Get kubeconfig by cluster UUID\n  configbyid:\n    fn::invoke:\n      function: nutanix:getKarbonClusterKubeConfig\n      arguments:\n        karbonClusterId: \u003cYOUR-CLUSTER-ID\u003e\n  # Get Kubeconfig by cluster name\n  configbyname:\n    fn::invoke:\n      function: nutanix:getKarbonClusterKubeConfig\n      arguments:\n        karbonClusterName: \u003cYOUR-CLUSTER-NAME\u003e\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
      "inputs": {
        "description": "A collection of arguments for invoking getKarbonClusterKubeConfig.\n",
        "properties": {
          "karbonClusterId": {
            "type": "string",
            "description": "Represents karbon cluster uuid\n"
          },
          "karbonClusterName": {
            "type": "string",
            "description": "Represents the name of karbon cluster\n"
          }
        },
        "type": "object"
      },
      "outputs": {
        "description": "A collection of values returned by getKarbonClusterKubeConfig.\n",
        "properties": {
          "accessToken": {
            "secret": true,
            "type": "string"
          },
          "clusterCaCertificate": {
            "type": "string"
          },
          "clusterUrl": {
            "type": "string"
          },
          "id": {
            "description": "The provider-assigned unique ID for this managed resource.",
            "type": "string"
          },
          "karbonClusterId": {
            "type": "string"
          },
          "karbonClusterName": {
            "type": "string"
          },
          "name": {
            "type": "string"
          }
        },
        "required": [
          "accessToken",
          "clusterCaCertificate",
          "clusterUrl",
          "id",
          "name"
        ],
        "type": "object"
      }
    },
    "nutanix:index/getKarbonClusterSsh:getKarbonClusterSsh": {
      "description": "Describes the SSH config from a Karbon Cluster\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as nutanix from \"@pierskarsenbarg/nutanix\";\n\n// Get ssh credentials by cluster UUID\nconst sshbyid = nutanix.getKarbonClusterSsh({\n    karbonClusterId: \"\u003cYOUR-CLUSTER-ID\u003e\",\n});\n// Get ssh credentials by cluster name\nconst sshbyname = nutanix.getKarbonClusterSsh({\n    karbonClusterName: \"\u003cYOUR-CLUSTER-NAME\u003e\",\n});\n```\n```python\nimport pulumi\nimport pulumi_nutanix as nutanix\n\n# Get ssh credentials by cluster UUID\nsshbyid = nutanix.get_karbon_cluster_ssh(karbon_cluster_id=\"\u003cYOUR-CLUSTER-ID\u003e\")\n# Get ssh credentials by cluster name\nsshbyname = nutanix.get_karbon_cluster_ssh(karbon_cluster_name=\"\u003cYOUR-CLUSTER-NAME\u003e\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Nutanix = Pulumi.Nutanix;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    // Get ssh credentials by cluster UUID\n    var sshbyid = Nutanix.GetKarbonClusterSsh.Invoke(new()\n    {\n        KarbonClusterId = \"\u003cYOUR-CLUSTER-ID\u003e\",\n    });\n\n    // Get ssh credentials by cluster name\n    var sshbyname = Nutanix.GetKarbonClusterSsh.Invoke(new()\n    {\n        KarbonClusterName = \"\u003cYOUR-CLUSTER-NAME\u003e\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pierskarsenbarg/pulumi-nutanix/sdk/go/nutanix\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t// Get ssh credentials by cluster UUID\n\t\t_, err := nutanix.GetKarbonClusterSsh(ctx, \u0026nutanix.GetKarbonClusterSshArgs{\n\t\t\tKarbonClusterId: pulumi.StringRef(\"\u003cYOUR-CLUSTER-ID\u003e\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t// Get ssh credentials by cluster name\n\t\t_, err = nutanix.GetKarbonClusterSsh(ctx, \u0026nutanix.GetKarbonClusterSshArgs{\n\t\t\tKarbonClusterName: pulumi.StringRef(\"\u003cYOUR-CLUSTER-NAME\u003e\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.nutanix.NutanixFunctions;\nimport com.pulumi.nutanix.inputs.GetKarbonClusterSshArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        // Get ssh credentials by cluster UUID\n        final var sshbyid = NutanixFunctions.getKarbonClusterSsh(GetKarbonClusterSshArgs.builder()\n            .karbonClusterId(\"\u003cYOUR-CLUSTER-ID\u003e\")\n            .build());\n\n        // Get ssh credentials by cluster name\n        final var sshbyname = NutanixFunctions.getKarbonClusterSsh(GetKarbonClusterSshArgs.builder()\n            .karbonClusterName(\"\u003cYOUR-CLUSTER-NAME\u003e\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  # Get ssh credentials by cluster UUID\n  sshbyid:\n    fn::invoke:\n      function: nutanix:getKarbonClusterSsh\n      arguments:\n        karbonClusterId: \u003cYOUR-CLUSTER-ID\u003e\n  # Get ssh credentials by cluster name\n  sshbyname:\n    fn::invoke:\n      function: nutanix:getKarbonClusterSsh\n      arguments:\n        karbonClusterName: \u003cYOUR-CLUSTER-NAME\u003e\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
      "inputs": {
        "description": "A collection of arguments for invoking getKarbonClusterSsh.\n",
        "properties": {
          "karbonClusterId": {
            "type": "string",
            "description": "Represents karbon cluster uuid\n"
          },
          "karbonClusterName": {
            "type": "string",
            "description": "Represents the name of karbon cluster\n"
          }
        },
        "type": "object"
      },
      "outputs": {
        "description": "A collection of values returned by getKarbonClusterSsh.\n",
        "properties": {
          "certificate": {
            "description": "Certificate of the user for SSH access.\n",
            "type": "string"
          },
          "expiryTime": {
            "description": "Timestamp of certificate expiry in the ISO 8601 format (YYYY-MM-DDThh:mm:ss.sssZ).\n",
            "type": "string"
          },
          "id": {
            "description": "The provider-assigned unique ID for this managed resource.",
            "type": "string"
          },
          "karbonClusterId": {
            "type": "string"
          },
          "karbonClusterName": {
            "type": "string"
          },
          "privateKey": {
            "description": "The private key of the user for SSH access.\n",
            "type": "string"
          },
          "username": {
            "description": "The username for which credentials are returned.\n",
            "type": "string"
          }
        },
        "required": [
          "certificate",
          "expiryTime",
          "id",
          "privateKey",
          "username"
        ],
        "type": "object"
      }
    },
    "nutanix:index/getKarbonClusters:getKarbonClusters": {
      "description": "Describes Karbon Clusters\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as nutanix from \"@pierskarsenbarg/nutanix\";\n\nconst clusters = nutanix.getKarbonClusters({});\n```\n```python\nimport pulumi\nimport pulumi_nutanix as nutanix\n\nclusters = nutanix.get_karbon_clusters()\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Nutanix = Pulumi.Nutanix;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var clusters = Nutanix.GetKarbonClusters.Invoke();\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pierskarsenbarg/pulumi-nutanix/sdk/go/nutanix\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := nutanix.GetKarbonClusters(ctx, map[string]interface{}{}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.nutanix.NutanixFunctions;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var clusters = NutanixFunctions.getKarbonClusters(%!v(PANIC=Format method: runtime error: invalid memory address or nil pointer dereference);\n\n    }\n}\n```\n```yaml\nvariables:\n  clusters:\n    fn::invoke:\n      function: nutanix:getKarbonClusters\n      arguments: {}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
      "outputs": {
        "description": "A collection of values returned by getKarbonClusters.\n",
        "properties": {
          "clusters": {
            "items": {
              "$ref": "#/types/nutanix:index%2FgetKarbonClustersCluster:getKarbonClustersCluster"
            },
            "type": "array"
          },
          "id": {
            "description": "The provider-assigned unique ID for this managed resource.",
            "type": "string"
          }
        },
        "required": [
          "clusters",
          "id"
        ],
        "type": "object"
      }
    },
    "nutanix:index/getKarbonPrivateRegistries:getKarbonPrivateRegistries": {
      "description": "Describes a List of Karbon private registry entry\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```yaml\nvariables:\n  registry:\n    fn::invoke:\n      function: nutanix:getKarbonPrivateRegistries\n      arguments:\n        clusterId: \u003cYOUR-CLUSTER-ID\u003e\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
      "outputs": {
        "description": "A collection of values returned by getKarbonPrivateRegistries.\n",
        "properties": {
          "id": {
            "description": "The provider-assigned unique ID for this managed resource.",
            "type": "string"
          },
          "privateRegistries": {
            "items": {
              "$ref": "#/types/nutanix:index%2FgetKarbonPrivateRegistriesPrivateRegistry:getKarbonPrivateRegistriesPrivateRegistry"
            },
            "type": "array"
          }
        },
        "required": [
          "id",
          "privateRegistries"
        ],
        "type": "object"
      }
    },
    "nutanix:index/getKarbonPrivateRegistry:getKarbonPrivateRegistry": {
      "description": "Describes Karbon private registry entry\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```yaml\nvariables:\n  registry:\n    fn::invoke:\n      function: nutanix:getKarbonPrivateRegistry\n      arguments:\n        clusterId: \u003cYOUR-CLUSTER-ID\u003e\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
      "inputs": {
        "description": "A collection of arguments for invoking getKarbonPrivateRegistry.\n",
        "properties": {
          "privateRegistryId": {
            "type": "string",
            "description": "Represents karbon private registry uuid\n"
          },
          "privateRegistryName": {
            "type": "string",
            "description": "Represents the name of karbon private registry\n"
          }
        },
        "type": "object"
      },
      "outputs": {
        "description": "A collection of values returned by getKarbonPrivateRegistry.\n",
        "properties": {
          "endpoint": {
            "description": "- Endpoint of the private in format `url:port`.\n",
            "type": "string"
          },
          "id": {
            "description": "The provider-assigned unique ID for this managed resource.",
            "type": "string"
          },
          "name": {
            "description": "- Name of the private registry.\n",
            "type": "string"
          },
          "privateRegistryId": {
            "type": "string"
          },
          "privateRegistryName": {
            "type": "string"
          },
          "uuid": {
            "description": "- UUID of the private registry.\n",
            "type": "string"
          }
        },
        "required": [
          "endpoint",
          "id",
          "name",
          "uuid"
        ],
        "type": "object"
      }
    },
    "nutanix:index/getLcmConfigV2:getLcmConfigV2": {
      "description": "Get LCM configuration.\n\n## Example\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as nutanix from \"@pierskarsenbarg/nutanix\";\n\nconst lcm_configuration = nutanix.getLcmConfigV2({});\n// Get LCM configuration for a specific cluster\nconst lcm_configuration_cluster = nutanix.getLcmConfigV2({\n    xClusterId: \"0005a104-0b0b-4b0b-8005-0b0b0b0b0b0b\",\n});\n```\n```python\nimport pulumi\nimport pulumi_nutanix as nutanix\n\nlcm_configuration = nutanix.get_lcm_config_v2()\n# Get LCM configuration for a specific cluster\nlcm_configuration_cluster = nutanix.get_lcm_config_v2(x_cluster_id=\"0005a104-0b0b-4b0b-8005-0b0b0b0b0b0b\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Nutanix = Pulumi.Nutanix;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var lcm_configuration = Nutanix.GetLcmConfigV2.Invoke();\n\n    // Get LCM configuration for a specific cluster\n    var lcm_configuration_cluster = Nutanix.GetLcmConfigV2.Invoke(new()\n    {\n        XClusterId = \"0005a104-0b0b-4b0b-8005-0b0b0b0b0b0b\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pierskarsenbarg/pulumi-nutanix/sdk/go/nutanix\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := nutanix.LookupLcmConfigV2(ctx, \u0026nutanix.LookupLcmConfigV2Args{}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t// Get LCM configuration for a specific cluster\n\t\t_, err = nutanix.LookupLcmConfigV2(ctx, \u0026nutanix.LookupLcmConfigV2Args{\n\t\t\tXClusterId: pulumi.StringRef(\"0005a104-0b0b-4b0b-8005-0b0b0b0b0b0b\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.nutanix.NutanixFunctions;\nimport com.pulumi.nutanix.inputs.GetLcmConfigV2Args;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var lcm-configuration = NutanixFunctions.getLcmConfigV2(GetLcmConfigV2Args.builder()\n            .build());\n\n        // Get LCM configuration for a specific cluster\n        final var lcm-configuration-cluster = NutanixFunctions.getLcmConfigV2(GetLcmConfigV2Args.builder()\n            .xClusterId(\"0005a104-0b0b-4b0b-8005-0b0b0b0b0b0b\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  lcm-configuration:\n    fn::invoke:\n      function: nutanix:getLcmConfigV2\n      arguments: {}\n  # Get LCM configuration for a specific cluster\n  lcm-configuration-cluster:\n    fn::invoke:\n      function: nutanix:getLcmConfigV2\n      arguments:\n        xClusterId: 0005a104-0b0b-4b0b-8005-0b0b0b0b0b0b\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
      "inputs": {
        "description": "A collection of arguments for invoking getLcmConfigV2.\n",
        "properties": {
          "xClusterId": {
            "type": "string",
            "description": "Cluster uuid on which the resource is present or operation is being performed.\n"
          }
        },
        "type": "object"
      },
      "outputs": {
        "description": "A collection of values returned by getLcmConfigV2.\n",
        "properties": {
          "autoInventorySchedule": {
            "description": "The scheduled time in \"%H:%M\" 24-hour format of the next inventory execution. Used when\u003cspan pulumi-lang-nodejs=\" autoInventoryEnabled \" pulumi-lang-dotnet=\" AutoInventoryEnabled \" pulumi-lang-go=\" autoInventoryEnabled \" pulumi-lang-python=\" auto_inventory_enabled \" pulumi-lang-yaml=\" autoInventoryEnabled \" pulumi-lang-java=\" autoInventoryEnabled \"\u003e auto_inventory_enabled \u003c/span\u003eis set to True. The default schedule time is 03:00(AM).\n",
            "type": "string"
          },
          "connectivityType": {
            "description": "This field indicates whether LCM framework on the cluster is running in connected-site mode or darksite mode. Values are :\n- `CONNECTED_SITE`: In connected-site, LCM on the cluster has internet connectivity to reach configured portal for downloading LCM modules/bundles etc.\n- `DARKSITE_DIRECT_UPLOAD`: LCM on the cluster does not have external connectivity and will have a facility to upload darksite bundles through LCM.\n- `DARKSITE_WEB_SERVER`: LCM on the cluster does not have external connectivity and will have a connection to darksite webserver maintained by the customer.\n",
            "type": "string"
          },
          "deprecatedSoftwareEntities": {
            "description": "List of entities for which One-Click upgrades are not available.\n",
            "items": {
              "type": "string"
            },
            "type": "array"
          },
          "displayVersion": {
            "description": "User friendly display version of LCM installed on the cluster.\n",
            "type": "string"
          },
          "extId": {
            "description": "A globally unique identifier of an instance that is suitable for external consumption.\n",
            "type": "string"
          },
          "hasModuleAutoUpgradeEnabled": {
            "description": "Indicates if LCM is enabled to auto-upgrade products. The default value is False.\n",
            "type": "boolean"
          },
          "id": {
            "description": "The provider-assigned unique ID for this managed resource.",
            "type": "string"
          },
          "isAutoInventoryEnabled": {
            "description": "Indicates if the auto inventory operation is enabled. The default value is set to False.\n",
            "type": "boolean"
          },
          "isFrameworkBundleUploaded": {
            "description": "Indicates if the bundle is uploaded or not.\n",
            "type": "boolean"
          },
          "isHttpsEnabled": {
            "description": "Indicates if the LCM URL has HTTPS enabled. The default value is True.\n",
            "type": "boolean"
          },
          "links": {
            "description": "- A HATEOAS style link for the response. Each link contains a user-friendly name identifying the link and an address for retrieving the particular resource.\n",
            "items": {
              "$ref": "#/types/nutanix:index%2FgetLcmConfigV2Link:getLcmConfigV2Link"
            },
            "type": "array"
          },
          "supportedSoftwareEntities": {
            "description": "List of entities for which One-Click upgrades are supported.\n",
            "items": {
              "type": "string"
            },
            "type": "array"
          },
          "tenantId": {
            "description": "- A globally unique identifier that represents the tenant that owns this entity. The system automatically assigns it, and it and is immutable from an API consumer perspective (some use cases may cause this Id to change - For instance, a use case may require the transfer of ownership of the entity, but these cases are handled automatically on the server).\n",
            "type": "string"
          },
          "url": {
            "description": "URL of the LCM repository.\n",
            "type": "string"
          },
          "version": {
            "description": "LCM version installed on the cluster.\n",
            "type": "string"
          },
          "xClusterId": {
            "type": "string"
          }
        },
        "required": [
          "autoInventorySchedule",
          "connectivityType",
          "deprecatedSoftwareEntities",
          "displayVersion",
          "extId",
          "hasModuleAutoUpgradeEnabled",
          "id",
          "isAutoInventoryEnabled",
          "isFrameworkBundleUploaded",
          "isHttpsEnabled",
          "links",
          "supportedSoftwareEntities",
          "tenantId",
          "url",
          "version"
        ],
        "type": "object"
      }
    },
    "nutanix:index/getLcmEntitiesV2:getLcmEntitiesV2": {
      "description": "Get details about all LCM entities.\n\n\n## Example\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as nutanix from \"@pierskarsenbarg/nutanix\";\n\nconst entities = nutanix.getLcmEntityV2({});\nconst lcm_entities_filtered = nutanix.getLcmEntitiesV2({\n    filter: \"entityModel eq 'Calm Policy Engine'\",\n});\nconst lcm_entities_limit = nutanix.getLcmEntitiesV2({\n    limit: 5,\n});\n```\n```python\nimport pulumi\nimport pulumi_nutanix as nutanix\n\nentities = nutanix.get_lcm_entity_v2()\nlcm_entities_filtered = nutanix.get_lcm_entities_v2(filter=\"entityModel eq 'Calm Policy Engine'\")\nlcm_entities_limit = nutanix.get_lcm_entities_v2(limit=5)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Nutanix = Pulumi.Nutanix;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var entities = Nutanix.GetLcmEntityV2.Invoke();\n\n    var lcm_entities_filtered = Nutanix.GetLcmEntitiesV2.Invoke(new()\n    {\n        Filter = \"entityModel eq 'Calm Policy Engine'\",\n    });\n\n    var lcm_entities_limit = Nutanix.GetLcmEntitiesV2.Invoke(new()\n    {\n        Limit = 5,\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pierskarsenbarg/pulumi-nutanix/sdk/go/nutanix\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := nutanix.GetLcmEntityV2(ctx, \u0026nutanix.GetLcmEntityV2Args{}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = nutanix.GetLcmEntitiesV2(ctx, \u0026nutanix.GetLcmEntitiesV2Args{\n\t\t\tFilter: pulumi.StringRef(\"entityModel eq 'Calm Policy Engine'\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = nutanix.GetLcmEntitiesV2(ctx, \u0026nutanix.GetLcmEntitiesV2Args{\n\t\t\tLimit: pulumi.IntRef(5),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.nutanix.NutanixFunctions;\nimport com.pulumi.nutanix.inputs.GetLcmEntityV2Args;\nimport com.pulumi.nutanix.inputs.GetLcmEntitiesV2Args;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var entities = NutanixFunctions.getLcmEntityV2(GetLcmEntityV2Args.builder()\n            .build());\n\n        final var lcm-entities-filtered = NutanixFunctions.getLcmEntitiesV2(GetLcmEntitiesV2Args.builder()\n            .filter(\"entityModel eq 'Calm Policy Engine'\")\n            .build());\n\n        final var lcm-entities-limit = NutanixFunctions.getLcmEntitiesV2(GetLcmEntitiesV2Args.builder()\n            .limit(5)\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  entities:\n    fn::invoke:\n      function: nutanix:getLcmEntityV2\n      arguments: {}\n  lcm-entities-filtered:\n    fn::invoke:\n      function: nutanix:getLcmEntitiesV2\n      arguments:\n        filter: entityModel eq 'Calm Policy Engine'\n  lcm-entities-limit:\n    fn::invoke:\n      function: nutanix:getLcmEntitiesV2\n      arguments:\n        limit: 5\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
      "inputs": {
        "description": "A collection of arguments for invoking getLcmEntitiesV2.\n",
        "properties": {
          "filter": {
            "type": "string",
            "description": "A URL query parameter that allows clients to filter a collection of resources. The expression specified with \\$filter is evaluated for each resource in the collection, and only items where the expression evaluates to true are included in the response. Expression specified with the \\$filter must conform to the OData V4.01 URL conventions. For example, filter '\\$filter=name eq 'karbon-ntnx-1.0' would filter the result on cluster name 'karbon-ntnx1.0', filter '\\$filter=startswith(name, 'C')' would filter on cluster name starting with 'C'. The filter can be applied to the following fields: clientName, createdBy, extId, createdTime, displayName, extId, isSystemDefined, lastUpdatedTime.\n* The filter can be applied to the following fields:\n* `clusterExtId`\n* `entityClass`\n* `entityModel`\n* `entityType`\n* `entityVersion`\n* `hardwareVendor`\n"
          },
          "limit": {
            "type": "integer",
            "description": "A URL query parameter that specifies the total number of records returned in the result set. Must be a positive integer between 1 and 100. Any number out of this range will lead to a validation error. If the limit is not provided, a default value of 50 records will be returned in the result set.\n"
          },
          "orderBy": {
            "type": "string"
          },
          "page": {
            "type": "integer",
            "description": "- A URL query parameter that specifies the page number of the result set. It must be a positive integer between 0 and the maximum number of pages that are available for that resource. Any number out of this range might lead to no results.\n"
          },
          "select": {
            "type": "string",
            "description": "A URL query parameter that allows clients to request a specific set of properties for each entity or complex type. Expression specified with the \\$select must conform to the OData V4.01 URL conventions. If a \\$select expression consists of a single select item that is an asterisk (i.e., *), then all properties on the matching resource will be returned. following fields: accessibleClients, accessibleEntityTypes, assignedUserGroupsCount, assignedUsersCount, clientName, createdBy, createdTime, description, displayName, extId, isSystemDefined, lastUpdatedTime, links, operations, tenantId.\n* The select can be applied to the following fields:\n* `entityClass`\n* `entityModel`\n* `entityType`\n* `entityVersion`\n* `hardwareVendor`\n"
          }
        },
        "type": "object"
      },
      "outputs": {
        "description": "A collection of values returned by getLcmEntitiesV2.\n",
        "properties": {
          "entities": {
            "description": "List of LCM entities.\n",
            "items": {
              "$ref": "#/types/nutanix:index%2FgetLcmEntitiesV2Entity:getLcmEntitiesV2Entity"
            },
            "type": "array"
          },
          "filter": {
            "type": "string"
          },
          "id": {
            "description": "The provider-assigned unique ID for this managed resource.",
            "type": "string"
          },
          "limit": {
            "type": "integer"
          },
          "orderBy": {
            "type": "string"
          },
          "page": {
            "type": "integer"
          },
          "select": {
            "type": "string"
          }
        },
        "required": [
          "entities",
          "id"
        ],
        "type": "object"
      }
    },
    "nutanix:index/getLcmEntityV2:getLcmEntityV2": {
      "description": "Get details about an LCM entity.\n\n## Example\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as nutanix from \"@pierskarsenbarg/nutanix\";\n\nconst entity_before_upgrade = nutanix.getLcmEntityV2({\n    extId: \"613no9d0-7caf-49y7-k582-1db5a5df580c\",\n});\n```\n```python\nimport pulumi\nimport pulumi_nutanix as nutanix\n\nentity_before_upgrade = nutanix.get_lcm_entity_v2(ext_id=\"613no9d0-7caf-49y7-k582-1db5a5df580c\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Nutanix = Pulumi.Nutanix;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var entity_before_upgrade = Nutanix.GetLcmEntityV2.Invoke(new()\n    {\n        ExtId = \"613no9d0-7caf-49y7-k582-1db5a5df580c\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pierskarsenbarg/pulumi-nutanix/sdk/go/nutanix\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := nutanix.GetLcmEntityV2(ctx, \u0026nutanix.GetLcmEntityV2Args{\n\t\t\tExtId: \"613no9d0-7caf-49y7-k582-1db5a5df580c\",\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.nutanix.NutanixFunctions;\nimport com.pulumi.nutanix.inputs.GetLcmEntityV2Args;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var entity-before-upgrade = NutanixFunctions.getLcmEntityV2(GetLcmEntityV2Args.builder()\n            .extId(\"613no9d0-7caf-49y7-k582-1db5a5df580c\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  entity-before-upgrade:\n    fn::invoke:\n      function: nutanix:getLcmEntityV2\n      arguments:\n        extId: 613no9d0-7caf-49y7-k582-1db5a5df580c\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
      "inputs": {
        "description": "A collection of arguments for invoking getLcmEntityV2.\n",
        "properties": {
          "extId": {
            "type": "string",
            "description": "ExtId of the LCM entity.\n"
          }
        },
        "type": "object",
        "required": [
          "extId"
        ]
      },
      "outputs": {
        "description": "A collection of values returned by getLcmEntityV2.\n",
        "properties": {
          "availableVersions": {
            "description": "List of available versions for an LCM entity to update.\n",
            "items": {
              "$ref": "#/types/nutanix:index%2FgetLcmEntityV2AvailableVersion:getLcmEntityV2AvailableVersion"
            },
            "type": "array"
          },
          "childEntities": {
            "description": "Component information for the payload based entity.\n",
            "items": {
              "type": "string"
            },
            "type": "array"
          },
          "clusterExtId": {
            "description": "Cluster uuid on which the resource is present or operation is being performed.\n",
            "type": "string"
          },
          "deviceId": {
            "description": "Unique identifier of an LCM entity e.g. \"HDD serial number\".\n",
            "type": "string"
          },
          "entityClass": {
            "description": "LCM entity class.\n",
            "type": "string"
          },
          "entityDescription": {
            "description": "Description of an LCM entity.\n",
            "type": "string"
          },
          "entityDetails": {
            "description": "Detailed information for the LCM entity. For example, firmware entities contain additional information about NIC and so on.\n",
            "items": {
              "$ref": "#/types/nutanix:index%2FgetLcmEntityV2EntityDetail:getLcmEntityV2EntityDetail"
            },
            "type": "array"
          },
          "entityModel": {
            "description": "LCM entity model.\n",
            "type": "string"
          },
          "entityType": {
            "description": "Type of an LCM entity.  Enum Values:\n* `FIRMWARE`: LCM entity type firmware.\n* `SOFTWARE`: LCM entity type software.\n",
            "type": "string"
          },
          "entityVersion": {
            "description": "Current version of an LCM entity.\n",
            "type": "string"
          },
          "extId": {
            "description": "A globally unique identifier of an instance that is suitable for external consumption.\n",
            "type": "string"
          },
          "groupUuid": {
            "description": "UUID of the group that this LCM entity is part of.\n",
            "type": "string"
          },
          "hardwareFamily": {
            "description": "A hardware family for a LCM entity.\n",
            "type": "string"
          },
          "hardwareVendor": {
            "description": "Hardware vendor information.\n",
            "type": "string"
          },
          "id": {
            "description": "The provider-assigned unique ID for this managed resource.",
            "type": "string"
          },
          "lastUpdatedTime": {
            "description": "UTC date and time in RFC-3339 format when the task was last updated.\n",
            "type": "string"
          },
          "links": {
            "description": "A HATEOAS style link for the response. Each link contains a user-friendly name identifying the link and an address for retrieving the particular resource.\n",
            "items": {
              "$ref": "#/types/nutanix:index%2FgetLcmEntityV2Link:getLcmEntityV2Link"
            },
            "type": "array"
          },
          "locationInfos": {
            "description": "Location info corresponds to a tuple of location type (either node/cluster) and ExtID\n",
            "items": {
              "$ref": "#/types/nutanix:index%2FgetLcmEntityV2LocationInfo:getLcmEntityV2LocationInfo"
            },
            "type": "array"
          },
          "subEntities": {
            "description": "A list of sub-entities applicable to the entity.\n",
            "items": {
              "$ref": "#/types/nutanix:index%2FgetLcmEntityV2SubEntity:getLcmEntityV2SubEntity"
            },
            "type": "array"
          },
          "targetVersion": {
            "description": "The requested update version of an LCM entity.\n",
            "type": "string"
          },
          "tenantId": {
            "description": "A globally unique identifier that represents the tenant that owns this entity. The system automatically assigns it, and it and is immutable from an API consumer perspective (some use cases may cause this Id to change - For instance, a use case may require the transfer of ownership of the entity, but these cases are handled automatically on the server).\n",
            "type": "string"
          }
        },
        "required": [
          "availableVersions",
          "childEntities",
          "clusterExtId",
          "deviceId",
          "entityClass",
          "entityDescription",
          "entityDetails",
          "entityModel",
          "entityType",
          "entityVersion",
          "extId",
          "groupUuid",
          "hardwareFamily",
          "hardwareVendor",
          "id",
          "lastUpdatedTime",
          "links",
          "locationInfos",
          "subEntities",
          "targetVersion",
          "tenantId"
        ],
        "type": "object"
      }
    },
    "nutanix:index/getLcmStatusV2:getLcmStatusV2": {
      "description": "Get the LCM framework status. Represents the Status of LCM. Status represents details about a pending or ongoing action in LCM.\n\n## Example\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as nutanix from \"@pierskarsenbarg/nutanix\";\n\nconst lcmFrameworkStatus = nutanix.getLcmStatusV2({\n    xClusterId: \"0005a104-0b0b-4b0b-8005-0b0b0b0b0b0b\",\n});\n```\n```python\nimport pulumi\nimport pulumi_nutanix as nutanix\n\nlcm_framework_status = nutanix.get_lcm_status_v2(x_cluster_id=\"0005a104-0b0b-4b0b-8005-0b0b0b0b0b0b\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Nutanix = Pulumi.Nutanix;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var lcmFrameworkStatus = Nutanix.GetLcmStatusV2.Invoke(new()\n    {\n        XClusterId = \"0005a104-0b0b-4b0b-8005-0b0b0b0b0b0b\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pierskarsenbarg/pulumi-nutanix/sdk/go/nutanix\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := nutanix.GetLcmStatusV2(ctx, \u0026nutanix.GetLcmStatusV2Args{\n\t\t\tXClusterId: pulumi.StringRef(\"0005a104-0b0b-4b0b-8005-0b0b0b0b0b0b\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.nutanix.NutanixFunctions;\nimport com.pulumi.nutanix.inputs.GetLcmStatusV2Args;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var lcmFrameworkStatus = NutanixFunctions.getLcmStatusV2(GetLcmStatusV2Args.builder()\n            .xClusterId(\"0005a104-0b0b-4b0b-8005-0b0b0b0b0b0b\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  lcmFrameworkStatus:\n    fn::invoke:\n      function: nutanix:getLcmStatusV2\n      arguments:\n        xClusterId: 0005a104-0b0b-4b0b-8005-0b0b0b0b0b0b\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
      "inputs": {
        "description": "A collection of arguments for invoking getLcmStatusV2.\n",
        "properties": {
          "xClusterId": {
            "type": "string",
            "description": "Cluster uuid on which the resource is present or operation is being performed.\n"
          }
        },
        "type": "object"
      },
      "outputs": {
        "description": "A collection of values returned by getLcmStatusV2.\n",
        "properties": {
          "extId": {
            "description": "A globally unique identifier of an instance that is suitable for external consumption.\n",
            "type": "string"
          },
          "frameworkVersions": {
            "description": "LCM framework version information.\n",
            "items": {
              "$ref": "#/types/nutanix:index%2FgetLcmStatusV2FrameworkVersion:getLcmStatusV2FrameworkVersion"
            },
            "type": "array"
          },
          "id": {
            "description": "The provider-assigned unique ID for this managed resource.",
            "type": "string"
          },
          "inProgressOperations": {
            "description": "Operation type and UUID of an ongoing operation in LCM.\n",
            "items": {
              "$ref": "#/types/nutanix:index%2FgetLcmStatusV2InProgressOperation:getLcmStatusV2InProgressOperation"
            },
            "type": "array"
          },
          "isCancelIntentSet": {
            "description": "Boolean that indicates if cancel intent for LCM update is set or not.\n",
            "type": "boolean"
          },
          "links": {
            "description": "- A HATEOAS style link for the response. Each link contains a user-friendly name identifying the link and an address for retrieving the particular resource.\n",
            "items": {
              "$ref": "#/types/nutanix:index%2FgetLcmStatusV2Link:getLcmStatusV2Link"
            },
            "type": "array"
          },
          "tenantId": {
            "description": "- A globally unique identifier that represents the tenant that owns this entity. The system automatically assigns it, and it and is immutable from an API consumer perspective (some use cases may cause this Id to change - For instance, a use case may require the transfer of ownership of the entity, but these cases are handled automatically on the server).\n",
            "type": "string"
          },
          "uploadTaskUuid": {
            "description": "Upload task UUID.\n",
            "type": "string"
          },
          "xClusterId": {
            "type": "string"
          }
        },
        "required": [
          "extId",
          "frameworkVersions",
          "id",
          "inProgressOperations",
          "isCancelIntentSet",
          "links",
          "tenantId",
          "uploadTaskUuid"
        ],
        "type": "object"
      }
    },
    "nutanix:index/getNdbClone:getNdbClone": {
      "description": "Describes the clone present in Nutanix Database Service\n\n",
      "inputs": {
        "description": "A collection of arguments for invoking getNdbClone.\n",
        "properties": {
          "cloneId": {
            "type": "string",
            "description": "Clone id\n"
          },
          "cloneName": {
            "type": "string",
            "description": "Clone Name\n"
          },
          "filters": {
            "type": "array",
            "items": {
              "$ref": "#/types/nutanix:index%2FgetNdbCloneFilter:getNdbCloneFilter"
            },
            "description": "Fetches info based on filter\n"
          },
          "tags": {
            "type": "array",
            "items": {
              "$ref": "#/types/nutanix:index%2FgetNdbCloneTag:getNdbCloneTag"
            },
            "description": "allows you to assign metadata to entities (clones, time machines, databases, and database servers) by using tags.\n"
          }
        },
        "type": "object"
      },
      "outputs": {
        "description": "A collection of values returned by getNdbClone.\n",
        "properties": {
          "clone": {
            "description": "clone or not\n",
            "type": "boolean"
          },
          "cloneId": {
            "type": "string"
          },
          "cloneName": {
            "type": "string"
          },
          "clustered": {
            "description": "clustered or not\n",
            "type": "boolean"
          },
          "databaseClusterType": {
            "description": "database cluster type\n",
            "type": "string"
          },
          "databaseName": {
            "description": "database name\n",
            "type": "string"
          },
          "databaseNodes": {
            "description": "database nodes associated with database instance\n",
            "items": {
              "$ref": "#/types/nutanix:index%2FgetNdbCloneDatabaseNode:getNdbCloneDatabaseNode"
            },
            "type": "array"
          },
          "databaseStatus": {
            "description": "database status\n",
            "type": "string"
          },
          "databases": {
            "additionalProperties": {
              "type": "string"
            },
            "description": "database for a cloned instance\n",
            "type": "object"
          },
          "dateCreated": {
            "description": "date created for clone\n",
            "type": "string"
          },
          "dateModified": {
            "description": "last modified date for clone\n",
            "type": "string"
          },
          "dbserverLogicalCluster": {
            "additionalProperties": {
              "type": "string"
            },
            "description": "dbserver logical cluster\n",
            "type": "object"
          },
          "dbserverLogicalClusterId": {
            "description": "dbserver logical cluster id\n",
            "type": "string"
          },
          "description": {
            "description": "cloned description\n",
            "type": "string"
          },
          "filters": {
            "items": {
              "$ref": "#/types/nutanix:index%2FgetNdbCloneFilter:getNdbCloneFilter"
            },
            "type": "array"
          },
          "id": {
            "description": "cloned id\n",
            "type": "string"
          },
          "infos": {
            "description": "cloned info\n",
            "items": {
              "$ref": "#/types/nutanix:index%2FgetNdbCloneInfo:getNdbCloneInfo"
            },
            "type": "array"
          },
          "lcmConfigs": {
            "description": "LCM Config\n",
            "items": {
              "$ref": "#/types/nutanix:index%2FgetNdbCloneLcmConfig:getNdbCloneLcmConfig"
            },
            "type": "array"
          },
          "linkedDatabases": {
            "description": "linked databases within database instance\n",
            "items": {
              "$ref": "#/types/nutanix:index%2FgetNdbCloneLinkedDatabase:getNdbCloneLinkedDatabase"
            },
            "type": "array"
          },
          "metric": {
            "additionalProperties": {
              "type": "string"
            },
            "description": "Metric of clone\n",
            "type": "object"
          },
          "name": {
            "description": "cloned name\n",
            "type": "string"
          },
          "parentDatabaseId": {
            "description": "parent database id\n",
            "type": "string"
          },
          "parentSourceDatabaseId": {
            "description": "parent source database id\n",
            "type": "string"
          },
          "parentTimeMachineId": {
            "description": "parent time machine id\n",
            "type": "string"
          },
          "properties": {
            "description": "properties of clone\n",
            "items": {
              "$ref": "#/types/nutanix:index%2FgetNdbCloneProperty:getNdbCloneProperty"
            },
            "type": "array"
          },
          "status": {
            "description": "status of clone\n",
            "type": "string"
          },
          "tags": {
            "description": "allows you to assign metadata to entities (clones, time machines, databases, and database servers) by using tags.\n",
            "items": {
              "$ref": "#/types/nutanix:index%2FgetNdbCloneTag:getNdbCloneTag"
            },
            "type": "array"
          },
          "timeMachineId": {
            "description": "time machine id\n",
            "type": "string"
          },
          "timeMachines": {
            "description": "Time machine info\n",
            "items": {
              "$ref": "#/types/nutanix:index%2FgetNdbCloneTimeMachine:getNdbCloneTimeMachine"
            },
            "type": "array"
          },
          "timeZone": {
            "description": "time zone\n",
            "type": "string"
          },
          "type": {
            "description": "type\n",
            "type": "string"
          }
        },
        "required": [
          "clone",
          "clustered",
          "databaseClusterType",
          "databaseName",
          "databaseNodes",
          "databaseStatus",
          "databases",
          "dateCreated",
          "dateModified",
          "dbserverLogicalCluster",
          "dbserverLogicalClusterId",
          "description",
          "id",
          "infos",
          "lcmConfigs",
          "linkedDatabases",
          "metric",
          "name",
          "parentDatabaseId",
          "parentSourceDatabaseId",
          "parentTimeMachineId",
          "properties",
          "status",
          "tags",
          "timeMachineId",
          "timeMachines",
          "timeZone",
          "type"
        ],
        "type": "object"
      }
    },
    "nutanix:index/getNdbClones:getNdbClones": {
      "description": "List all the clone present in Nutanix Database Service\n\n",
      "inputs": {
        "description": "A collection of arguments for invoking getNdbClones.\n",
        "properties": {
          "filters": {
            "type": "array",
            "items": {
              "$ref": "#/types/nutanix:index%2FgetNdbClonesFilter:getNdbClonesFilter"
            },
            "description": "Fetches the clone info based on given params\n"
          }
        },
        "type": "object"
      },
      "outputs": {
        "description": "A collection of values returned by getNdbClones.\n",
        "properties": {
          "clones": {
            "description": "List of clones based on filters\n",
            "items": {
              "$ref": "#/types/nutanix:index%2FgetNdbClonesClone:getNdbClonesClone"
            },
            "type": "array"
          },
          "filters": {
            "items": {
              "$ref": "#/types/nutanix:index%2FgetNdbClonesFilter:getNdbClonesFilter"
            },
            "type": "array"
          },
          "id": {
            "description": "The provider-assigned unique ID for this managed resource.",
            "type": "string"
          }
        },
        "required": [
          "clones",
          "id"
        ],
        "type": "object"
      }
    },
    "nutanix:index/getNdbCluster:getNdbCluster": {
      "description": "Describes a cluster in Nutanix Database Service\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as nutanix from \"@pierskarsenbarg/nutanix\";\n\nconst c1 = nutanix.getNdbCluster({\n    clusterName: \"\u003cera-cluster-name\u003e\",\n});\nexport const cluster = c1;\n```\n```python\nimport pulumi\nimport pulumi_nutanix as nutanix\n\nc1 = nutanix.get_ndb_cluster(cluster_name=\"\u003cera-cluster-name\u003e\")\npulumi.export(\"cluster\", c1)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Nutanix = Pulumi.Nutanix;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var c1 = Nutanix.GetNdbCluster.Invoke(new()\n    {\n        ClusterName = \"\u003cera-cluster-name\u003e\",\n    });\n\n    return new Dictionary\u003cstring, object?\u003e\n    {\n        [\"cluster\"] = c1,\n    };\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pierskarsenbarg/pulumi-nutanix/sdk/go/nutanix\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tc1, err := nutanix.LookupNdbCluster(ctx, \u0026nutanix.LookupNdbClusterArgs{\n\t\t\tClusterName: pulumi.StringRef(\"\u003cera-cluster-name\u003e\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tctx.Export(\"cluster\", c1)\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.nutanix.NutanixFunctions;\nimport com.pulumi.nutanix.inputs.GetNdbClusterArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var c1 = NutanixFunctions.getNdbCluster(GetNdbClusterArgs.builder()\n            .clusterName(\"\u003cera-cluster-name\u003e\")\n            .build());\n\n        ctx.export(\"cluster\", c1);\n    }\n}\n```\n```yaml\nvariables:\n  c1:\n    fn::invoke:\n      function: nutanix:getNdbCluster\n      arguments:\n        clusterName: \u003cera-cluster-name\u003e\noutputs:\n  cluster: ${c1}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
      "inputs": {
        "description": "A collection of arguments for invoking getNdbCluster.\n",
        "properties": {
          "clusterId": {
            "type": "string",
            "description": "ID of cluster\n"
          },
          "clusterName": {
            "type": "string",
            "description": "and \u003cspan pulumi-lang-nodejs=\"`clusterId`\" pulumi-lang-dotnet=\"`ClusterId`\" pulumi-lang-go=\"`clusterId`\" pulumi-lang-python=\"`cluster_id`\" pulumi-lang-yaml=\"`clusterId`\" pulumi-lang-java=\"`clusterId`\"\u003e`cluster_id`\u003c/span\u003e are mutually exclusive.\n"
          }
        },
        "type": "object"
      },
      "outputs": {
        "description": "A collection of values returned by getNdbCluster.\n",
        "properties": {
          "cloudInfo": {
            "description": "- cloud info\n",
            "type": "string"
          },
          "cloudType": {
            "description": "- cloud type\n",
            "type": "string"
          },
          "clusterId": {
            "type": "string"
          },
          "clusterName": {
            "type": "string"
          },
          "dateCreated": {
            "description": "- creation date\n",
            "type": "string"
          },
          "dateModified": {
            "description": "- date modified\n",
            "type": "string"
          },
          "description": {
            "description": "- description\n",
            "type": "string"
          },
          "entityCounts": {
            "description": "- no. of entities related\n",
            "items": {
              "$ref": "#/types/nutanix:index%2FgetNdbClusterEntityCount:getNdbClusterEntityCount"
            },
            "type": "array"
          },
          "fqdns": {
            "description": "- fqdn\n",
            "type": "string"
          },
          "healthy": {
            "description": "- if healthy status\n",
            "type": "boolean"
          },
          "hypervisorType": {
            "description": "- hypervisor type\n",
            "type": "string"
          },
          "hypervisorVersion": {
            "description": "- hypervisor version\n",
            "type": "string"
          },
          "id": {
            "description": "- id of cluster\n",
            "type": "string"
          },
          "ipAddresses": {
            "description": "- IP address\n",
            "items": {
              "type": "string"
            },
            "type": "array"
          },
          "managementServerInfo": {
            "description": "- NA\n",
            "type": "string"
          },
          "name": {
            "description": "- name of cluster\n",
            "type": "string"
          },
          "nxClusterUuid": {
            "description": "- nutanix cluster uuid\n",
            "type": "string"
          },
          "ownerId": {
            "description": "- owner UUID\n",
            "type": "string"
          },
          "password": {
            "description": "- password\n",
            "type": "string"
          },
          "properties": {
            "description": "- list of properties\n",
            "items": {
              "$ref": "#/types/nutanix:index%2FgetNdbClusterProperty:getNdbClusterProperty"
            },
            "type": "array"
          },
          "referenceCount": {
            "description": "- NA\n",
            "type": "integer"
          },
          "resourceConfigs": {
            "description": "- resource related consumption info\n",
            "items": {
              "$ref": "#/types/nutanix:index%2FgetNdbClusterResourceConfig:getNdbClusterResourceConfig"
            },
            "type": "array"
          },
          "status": {
            "description": "- current status\n",
            "type": "string"
          },
          "uniqueName": {
            "description": "- unique name of cluster\n",
            "type": "string"
          },
          "username": {
            "description": "- username\n",
            "type": "string"
          },
          "version": {
            "description": "- version\n",
            "type": "string"
          }
        },
        "required": [
          "cloudInfo",
          "cloudType",
          "dateCreated",
          "dateModified",
          "description",
          "entityCounts",
          "fqdns",
          "healthy",
          "hypervisorType",
          "hypervisorVersion",
          "id",
          "ipAddresses",
          "managementServerInfo",
          "name",
          "nxClusterUuid",
          "ownerId",
          "password",
          "properties",
          "referenceCount",
          "resourceConfigs",
          "status",
          "uniqueName",
          "username",
          "version"
        ],
        "type": "object"
      }
    },
    "nutanix:index/getNdbClusters:getNdbClusters": {
      "description": "List all clusters in Nutanix Database Service\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as nutanix from \"@pierskarsenbarg/nutanix\";\n\nconst clusters = nutanix.getNdbClusters({});\nexport const clustersOp = clusters;\n```\n```python\nimport pulumi\nimport pulumi_nutanix as nutanix\n\nclusters = nutanix.get_ndb_clusters()\npulumi.export(\"clustersOp\", clusters)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Nutanix = Pulumi.Nutanix;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var clusters = Nutanix.GetNdbClusters.Invoke();\n\n    return new Dictionary\u003cstring, object?\u003e\n    {\n        [\"clustersOp\"] = clusters,\n    };\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pierskarsenbarg/pulumi-nutanix/sdk/go/nutanix\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tclusters, err := nutanix.GetNdbClusters(ctx, map[string]interface{}{}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tctx.Export(\"clustersOp\", clusters)\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.nutanix.NutanixFunctions;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var clusters = NutanixFunctions.getNdbClusters(%!v(PANIC=Format method: runtime error: invalid memory address or nil pointer dereference);\n\n        ctx.export(\"clustersOp\", clusters);\n    }\n}\n```\n```yaml\nvariables:\n  clusters:\n    fn::invoke:\n      function: nutanix:getNdbClusters\n      arguments: {}\noutputs:\n  clustersOp: ${clusters}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## clusters\n\nThe following attributes are exported for each cluster:\n\n* \u003cspan pulumi-lang-nodejs=\"`id`\" pulumi-lang-dotnet=\"`Id`\" pulumi-lang-go=\"`id`\" pulumi-lang-python=\"`id`\" pulumi-lang-yaml=\"`id`\" pulumi-lang-java=\"`id`\"\u003e`id`\u003c/span\u003e: - id of cluster\n* \u003cspan pulumi-lang-nodejs=\"`name`\" pulumi-lang-dotnet=\"`Name`\" pulumi-lang-go=\"`name`\" pulumi-lang-python=\"`name`\" pulumi-lang-yaml=\"`name`\" pulumi-lang-java=\"`name`\"\u003e`name`\u003c/span\u003e: - name of cluster\n* \u003cspan pulumi-lang-nodejs=\"`uniqueName`\" pulumi-lang-dotnet=\"`UniqueName`\" pulumi-lang-go=\"`uniqueName`\" pulumi-lang-python=\"`unique_name`\" pulumi-lang-yaml=\"`uniqueName`\" pulumi-lang-java=\"`uniqueName`\"\u003e`unique_name`\u003c/span\u003e: - unique name of cluster\n* \u003cspan pulumi-lang-nodejs=\"`ipAddresses`\" pulumi-lang-dotnet=\"`IpAddresses`\" pulumi-lang-go=\"`ipAddresses`\" pulumi-lang-python=\"`ip_addresses`\" pulumi-lang-yaml=\"`ipAddresses`\" pulumi-lang-java=\"`ipAddresses`\"\u003e`ip_addresses`\u003c/span\u003e: - IP address\n* \u003cspan pulumi-lang-nodejs=\"`fqdns`\" pulumi-lang-dotnet=\"`Fqdns`\" pulumi-lang-go=\"`fqdns`\" pulumi-lang-python=\"`fqdns`\" pulumi-lang-yaml=\"`fqdns`\" pulumi-lang-java=\"`fqdns`\"\u003e`fqdns`\u003c/span\u003e: - fqdn\n* \u003cspan pulumi-lang-nodejs=\"`nxClusterUuid`\" pulumi-lang-dotnet=\"`NxClusterUuid`\" pulumi-lang-go=\"`nxClusterUuid`\" pulumi-lang-python=\"`nx_cluster_uuid`\" pulumi-lang-yaml=\"`nxClusterUuid`\" pulumi-lang-java=\"`nxClusterUuid`\"\u003e`nx_cluster_uuid`\u003c/span\u003e: - nutanix cluster uuid\n* \u003cspan pulumi-lang-nodejs=\"`description`\" pulumi-lang-dotnet=\"`Description`\" pulumi-lang-go=\"`description`\" pulumi-lang-python=\"`description`\" pulumi-lang-yaml=\"`description`\" pulumi-lang-java=\"`description`\"\u003e`description`\u003c/span\u003e: - description\n* \u003cspan pulumi-lang-nodejs=\"`cloudType`\" pulumi-lang-dotnet=\"`CloudType`\" pulumi-lang-go=\"`cloudType`\" pulumi-lang-python=\"`cloud_type`\" pulumi-lang-yaml=\"`cloudType`\" pulumi-lang-java=\"`cloudType`\"\u003e`cloud_type`\u003c/span\u003e: - cloud type\n* \u003cspan pulumi-lang-nodejs=\"`dateCreated`\" pulumi-lang-dotnet=\"`DateCreated`\" pulumi-lang-go=\"`dateCreated`\" pulumi-lang-python=\"`date_created`\" pulumi-lang-yaml=\"`dateCreated`\" pulumi-lang-java=\"`dateCreated`\"\u003e`date_created`\u003c/span\u003e: - creation date\n* \u003cspan pulumi-lang-nodejs=\"`dateModified`\" pulumi-lang-dotnet=\"`DateModified`\" pulumi-lang-go=\"`dateModified`\" pulumi-lang-python=\"`date_modified`\" pulumi-lang-yaml=\"`dateModified`\" pulumi-lang-java=\"`dateModified`\"\u003e`date_modified`\u003c/span\u003e: - date modified\n* \u003cspan pulumi-lang-nodejs=\"`version`\" pulumi-lang-dotnet=\"`Version`\" pulumi-lang-go=\"`version`\" pulumi-lang-python=\"`version`\" pulumi-lang-yaml=\"`version`\" pulumi-lang-java=\"`version`\"\u003e`version`\u003c/span\u003e: - version\n* \u003cspan pulumi-lang-nodejs=\"`ownerId`\" pulumi-lang-dotnet=\"`OwnerId`\" pulumi-lang-go=\"`ownerId`\" pulumi-lang-python=\"`owner_id`\" pulumi-lang-yaml=\"`ownerId`\" pulumi-lang-java=\"`ownerId`\"\u003e`owner_id`\u003c/span\u003e: - owner UUID\n* \u003cspan pulumi-lang-nodejs=\"`status`\" pulumi-lang-dotnet=\"`Status`\" pulumi-lang-go=\"`status`\" pulumi-lang-python=\"`status`\" pulumi-lang-yaml=\"`status`\" pulumi-lang-java=\"`status`\"\u003e`status`\u003c/span\u003e: - current status\n* \u003cspan pulumi-lang-nodejs=\"`hypervisorType`\" pulumi-lang-dotnet=\"`HypervisorType`\" pulumi-lang-go=\"`hypervisorType`\" pulumi-lang-python=\"`hypervisor_type`\" pulumi-lang-yaml=\"`hypervisorType`\" pulumi-lang-java=\"`hypervisorType`\"\u003e`hypervisor_type`\u003c/span\u003e: - hypervisor type\n* \u003cspan pulumi-lang-nodejs=\"`hypervisorVersion`\" pulumi-lang-dotnet=\"`HypervisorVersion`\" pulumi-lang-go=\"`hypervisorVersion`\" pulumi-lang-python=\"`hypervisor_version`\" pulumi-lang-yaml=\"`hypervisorVersion`\" pulumi-lang-java=\"`hypervisorVersion`\"\u003e`hypervisor_version`\u003c/span\u003e: - hypervisor version\n* \u003cspan pulumi-lang-nodejs=\"`properties`\" pulumi-lang-dotnet=\"`Properties`\" pulumi-lang-go=\"`properties`\" pulumi-lang-python=\"`properties`\" pulumi-lang-yaml=\"`properties`\" pulumi-lang-java=\"`properties`\"\u003e`properties`\u003c/span\u003e: - list of properties\n* \u003cspan pulumi-lang-nodejs=\"`referenceCount`\" pulumi-lang-dotnet=\"`ReferenceCount`\" pulumi-lang-go=\"`referenceCount`\" pulumi-lang-python=\"`reference_count`\" pulumi-lang-yaml=\"`referenceCount`\" pulumi-lang-java=\"`referenceCount`\"\u003e`reference_count`\u003c/span\u003e: - NA\n* \u003cspan pulumi-lang-nodejs=\"`username`\" pulumi-lang-dotnet=\"`Username`\" pulumi-lang-go=\"`username`\" pulumi-lang-python=\"`username`\" pulumi-lang-yaml=\"`username`\" pulumi-lang-java=\"`username`\"\u003e`username`\u003c/span\u003e: - username \n* \u003cspan pulumi-lang-nodejs=\"`password`\" pulumi-lang-dotnet=\"`Password`\" pulumi-lang-go=\"`password`\" pulumi-lang-python=\"`password`\" pulumi-lang-yaml=\"`password`\" pulumi-lang-java=\"`password`\"\u003e`password`\u003c/span\u003e: - password\n* \u003cspan pulumi-lang-nodejs=\"`cloudInfo`\" pulumi-lang-dotnet=\"`CloudInfo`\" pulumi-lang-go=\"`cloudInfo`\" pulumi-lang-python=\"`cloud_info`\" pulumi-lang-yaml=\"`cloudInfo`\" pulumi-lang-java=\"`cloudInfo`\"\u003e`cloud_info`\u003c/span\u003e: - cloud info\n* \u003cspan pulumi-lang-nodejs=\"`resourceConfig`\" pulumi-lang-dotnet=\"`ResourceConfig`\" pulumi-lang-go=\"`resourceConfig`\" pulumi-lang-python=\"`resource_config`\" pulumi-lang-yaml=\"`resourceConfig`\" pulumi-lang-java=\"`resourceConfig`\"\u003e`resource_config`\u003c/span\u003e: - resource related consumption info\n* \u003cspan pulumi-lang-nodejs=\"`managementServerInfo`\" pulumi-lang-dotnet=\"`ManagementServerInfo`\" pulumi-lang-go=\"`managementServerInfo`\" pulumi-lang-python=\"`management_server_info`\" pulumi-lang-yaml=\"`managementServerInfo`\" pulumi-lang-java=\"`managementServerInfo`\"\u003e`management_server_info`\u003c/span\u003e: - NA\n* \u003cspan pulumi-lang-nodejs=\"`entityCounts`\" pulumi-lang-dotnet=\"`EntityCounts`\" pulumi-lang-go=\"`entityCounts`\" pulumi-lang-python=\"`entity_counts`\" pulumi-lang-yaml=\"`entityCounts`\" pulumi-lang-java=\"`entityCounts`\"\u003e`entity_counts`\u003c/span\u003e: - no. of entities related\n* \u003cspan pulumi-lang-nodejs=\"`healthy`\" pulumi-lang-dotnet=\"`Healthy`\" pulumi-lang-go=\"`healthy`\" pulumi-lang-python=\"`healthy`\" pulumi-lang-yaml=\"`healthy`\" pulumi-lang-java=\"`healthy`\"\u003e`healthy`\u003c/span\u003e: - if healthy status\n\nSee detailed information in [NDB Clusters](https://www.nutanix.dev/api_references/ndb/#/b00cac8329db1-get-a-list-of-all-clusters).\n",
      "outputs": {
        "description": "A collection of values returned by getNdbClusters.\n",
        "properties": {
          "clusters": {
            "description": "list of clusters\n",
            "items": {
              "$ref": "#/types/nutanix:index%2FgetNdbClustersCluster:getNdbClustersCluster"
            },
            "type": "array"
          },
          "id": {
            "description": "The provider-assigned unique ID for this managed resource.",
            "type": "string"
          }
        },
        "required": [
          "clusters",
          "id"
        ],
        "type": "object"
      }
    },
    "nutanix:index/getNdbDatabase:getNdbDatabase": {
      "description": "Describes a database instance in Nutanix Database Service\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as nutanix from \"@pierskarsenbarg/nutanix\";\n\nconst db1 = nutanix.getNdbDatabase({\n    databaseId: \"\u003csample-id\u003e\",\n});\nexport const db1Output = db1;\n```\n```python\nimport pulumi\nimport pulumi_nutanix as nutanix\n\ndb1 = nutanix.get_ndb_database(database_id=\"\u003csample-id\u003e\")\npulumi.export(\"db1Output\", db1)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Nutanix = Pulumi.Nutanix;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var db1 = Nutanix.GetNdbDatabase.Invoke(new()\n    {\n        DatabaseId = \"\u003csample-id\u003e\",\n    });\n\n    return new Dictionary\u003cstring, object?\u003e\n    {\n        [\"db1Output\"] = db1,\n    };\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pierskarsenbarg/pulumi-nutanix/sdk/go/nutanix\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tdb1, err := nutanix.LookupNdbDatabase(ctx, \u0026nutanix.LookupNdbDatabaseArgs{\n\t\t\tDatabaseId: \"\u003csample-id\u003e\",\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tctx.Export(\"db1Output\", db1)\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.nutanix.NutanixFunctions;\nimport com.pulumi.nutanix.inputs.GetNdbDatabaseArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var db1 = NutanixFunctions.getNdbDatabase(GetNdbDatabaseArgs.builder()\n            .databaseId(\"\u003csample-id\u003e\")\n            .build());\n\n        ctx.export(\"db1Output\", db1);\n    }\n}\n```\n```yaml\nvariables:\n  db1:\n    fn::invoke:\n      function: nutanix:getNdbDatabase\n      arguments:\n        databaseId: \u003csample-id\u003e\noutputs:\n  db1Output: ${db1}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
      "inputs": {
        "description": "A collection of arguments for invoking getNdbDatabase.\n",
        "properties": {
          "databaseId": {
            "type": "string",
            "description": "ID of database instance\n"
          },
          "tags": {
            "type": "array",
            "items": {
              "$ref": "#/types/nutanix:index%2FgetNdbDatabaseTag:getNdbDatabaseTag"
            },
            "description": "- tags attached\n"
          }
        },
        "type": "object",
        "required": [
          "databaseId"
        ]
      },
      "outputs": {
        "description": "A collection of values returned by getNdbDatabase.\n",
        "properties": {
          "clone": {
            "description": "- if cloned\n",
            "type": "boolean"
          },
          "clustered": {
            "description": "- if clustered or not\n",
            "type": "boolean"
          },
          "databaseClusterType": {
            "type": "string"
          },
          "databaseId": {
            "type": "string"
          },
          "databaseName": {
            "description": "- database instance name\n",
            "type": "string"
          },
          "databaseNodes": {
            "description": "- nodes info\n",
            "items": {
              "$ref": "#/types/nutanix:index%2FgetNdbDatabaseDatabaseNode:getNdbDatabaseDatabaseNode"
            },
            "type": "array"
          },
          "databases": {
            "additionalProperties": {
              "type": "string"
            },
            "type": "object"
          },
          "dateCreated": {
            "description": "- creation date\n",
            "type": "string"
          },
          "dateModified": {
            "description": "- date modified\n",
            "type": "string"
          },
          "dbserverLogicalCluster": {
            "additionalProperties": {
              "type": "string"
            },
            "description": "- NA\n",
            "type": "object"
          },
          "dbserverLogicalClusterId": {
            "description": "- NA\n",
            "type": "string"
          },
          "description": {
            "description": "- description\n",
            "type": "string"
          },
          "eraCreated": {
            "type": "boolean"
          },
          "id": {
            "description": "- id of database instance\n",
            "type": "string"
          },
          "infos": {
            "description": "- info regarding disks, vm, storage, etc.\n",
            "items": {
              "$ref": "#/types/nutanix:index%2FgetNdbDatabaseInfo:getNdbDatabaseInfo"
            },
            "type": "array"
          },
          "lcmConfigs": {
            "description": "- lcm configuration\n",
            "items": {
              "$ref": "#/types/nutanix:index%2FgetNdbDatabaseLcmConfig:getNdbDatabaseLcmConfig"
            },
            "type": "array"
          },
          "linkedDatabases": {
            "description": "- list of databases created in instance with info\n",
            "items": {
              "$ref": "#/types/nutanix:index%2FgetNdbDatabaseLinkedDatabase:getNdbDatabaseLinkedDatabase"
            },
            "type": "array"
          },
          "metric": {
            "additionalProperties": {
              "type": "string"
            },
            "description": "- metrics\n",
            "type": "object"
          },
          "name": {
            "description": "- name of database instance\n",
            "type": "string"
          },
          "parentDatabaseId": {
            "description": "- parent database ID\n",
            "type": "string"
          },
          "properties": {
            "description": "- properties\n",
            "items": {
              "$ref": "#/types/nutanix:index%2FgetNdbDatabaseProperty:getNdbDatabaseProperty"
            },
            "type": "array"
          },
          "status": {
            "description": "- status of database instance\n",
            "type": "string"
          },
          "tags": {
            "description": "- tags attached\n",
            "items": {
              "$ref": "#/types/nutanix:index%2FgetNdbDatabaseTag:getNdbDatabaseTag"
            },
            "type": "array"
          },
          "timeMachineId": {
            "description": "- time machine ID\n",
            "type": "string"
          },
          "timeMachines": {
            "description": "- time machine related config info\n",
            "items": {
              "$ref": "#/types/nutanix:index%2FgetNdbDatabaseTimeMachine:getNdbDatabaseTimeMachine"
            },
            "type": "array"
          },
          "timeZone": {
            "description": "- timezone\n",
            "type": "string"
          },
          "type": {
            "description": "- database engine type\n",
            "type": "string"
          }
        },
        "required": [
          "clone",
          "clustered",
          "databaseClusterType",
          "databaseId",
          "databaseName",
          "databaseNodes",
          "databases",
          "dateCreated",
          "dateModified",
          "dbserverLogicalCluster",
          "dbserverLogicalClusterId",
          "description",
          "eraCreated",
          "id",
          "infos",
          "lcmConfigs",
          "linkedDatabases",
          "metric",
          "name",
          "parentDatabaseId",
          "properties",
          "status",
          "tags",
          "timeMachineId",
          "timeMachines",
          "timeZone",
          "type"
        ],
        "type": "object"
      }
    },
    "nutanix:index/getNdbDatabases:getNdbDatabases": {
      "description": "List all database instances in Nutanix Database Service\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as nutanix from \"@pierskarsenbarg/nutanix\";\n\nconst dbs = nutanix.getNdbDatabases({});\nexport const dbsOutput = dbs;\n```\n```python\nimport pulumi\nimport pulumi_nutanix as nutanix\n\ndbs = nutanix.get_ndb_databases()\npulumi.export(\"dbsOutput\", dbs)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Nutanix = Pulumi.Nutanix;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var dbs = Nutanix.GetNdbDatabases.Invoke();\n\n    return new Dictionary\u003cstring, object?\u003e\n    {\n        [\"dbsOutput\"] = dbs,\n    };\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pierskarsenbarg/pulumi-nutanix/sdk/go/nutanix\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tdbs, err := nutanix.GetNdbDatabases(ctx, \u0026nutanix.GetNdbDatabasesArgs{}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tctx.Export(\"dbsOutput\", dbs)\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.nutanix.NutanixFunctions;\nimport com.pulumi.nutanix.inputs.GetNdbDatabasesArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var dbs = NutanixFunctions.getNdbDatabases(GetNdbDatabasesArgs.builder()\n            .build());\n\n        ctx.export(\"dbsOutput\", dbs);\n    }\n}\n```\n```yaml\nvariables:\n  dbs:\n    fn::invoke:\n      function: nutanix:getNdbDatabases\n      arguments: {}\noutputs:\n  dbsOutput: ${dbs}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n##\u003cspan pulumi-lang-nodejs=\" databaseInstances\n\" pulumi-lang-dotnet=\" DatabaseInstances\n\" pulumi-lang-go=\" databaseInstances\n\" pulumi-lang-python=\" database_instances\n\" pulumi-lang-yaml=\" databaseInstances\n\" pulumi-lang-java=\" databaseInstances\n\"\u003e database_instances\n\u003c/span\u003e\nThe following attributes are exported for each database_instances:\n\n* \u003cspan pulumi-lang-nodejs=\"`id`\" pulumi-lang-dotnet=\"`Id`\" pulumi-lang-go=\"`id`\" pulumi-lang-python=\"`id`\" pulumi-lang-yaml=\"`id`\" pulumi-lang-java=\"`id`\"\u003e`id`\u003c/span\u003e: - id of database instance\n* \u003cspan pulumi-lang-nodejs=\"`name`\" pulumi-lang-dotnet=\"`Name`\" pulumi-lang-go=\"`name`\" pulumi-lang-python=\"`name`\" pulumi-lang-yaml=\"`name`\" pulumi-lang-java=\"`name`\"\u003e`name`\u003c/span\u003e: - name of database instance\n* \u003cspan pulumi-lang-nodejs=\"`description`\" pulumi-lang-dotnet=\"`Description`\" pulumi-lang-go=\"`description`\" pulumi-lang-python=\"`description`\" pulumi-lang-yaml=\"`description`\" pulumi-lang-java=\"`description`\"\u003e`description`\u003c/span\u003e: - description\n* \u003cspan pulumi-lang-nodejs=\"`dateCreated`\" pulumi-lang-dotnet=\"`DateCreated`\" pulumi-lang-go=\"`dateCreated`\" pulumi-lang-python=\"`date_created`\" pulumi-lang-yaml=\"`dateCreated`\" pulumi-lang-java=\"`dateCreated`\"\u003e`date_created`\u003c/span\u003e: - creation date\n* \u003cspan pulumi-lang-nodejs=\"`dateModified`\" pulumi-lang-dotnet=\"`DateModified`\" pulumi-lang-go=\"`dateModified`\" pulumi-lang-python=\"`date_modified`\" pulumi-lang-yaml=\"`dateModified`\" pulumi-lang-java=\"`dateModified`\"\u003e`date_modified`\u003c/span\u003e: - date modified \n* \u003cspan pulumi-lang-nodejs=\"`properties`\" pulumi-lang-dotnet=\"`Properties`\" pulumi-lang-go=\"`properties`\" pulumi-lang-python=\"`properties`\" pulumi-lang-yaml=\"`properties`\" pulumi-lang-java=\"`properties`\"\u003e`properties`\u003c/span\u003e: - properties\n* \u003cspan pulumi-lang-nodejs=\"`tags`\" pulumi-lang-dotnet=\"`Tags`\" pulumi-lang-go=\"`tags`\" pulumi-lang-python=\"`tags`\" pulumi-lang-yaml=\"`tags`\" pulumi-lang-java=\"`tags`\"\u003e`tags`\u003c/span\u003e: - tags attached\n* \u003cspan pulumi-lang-nodejs=\"`clustered`\" pulumi-lang-dotnet=\"`Clustered`\" pulumi-lang-go=\"`clustered`\" pulumi-lang-python=\"`clustered`\" pulumi-lang-yaml=\"`clustered`\" pulumi-lang-java=\"`clustered`\"\u003e`clustered`\u003c/span\u003e: - if clustered or not\n* \u003cspan pulumi-lang-nodejs=\"`clone`\" pulumi-lang-dotnet=\"`Clone`\" pulumi-lang-go=\"`clone`\" pulumi-lang-python=\"`clone`\" pulumi-lang-yaml=\"`clone`\" pulumi-lang-java=\"`clone`\"\u003e`clone`\u003c/span\u003e: - if cloned\n* \u003cspan pulumi-lang-nodejs=\"`databaseName`\" pulumi-lang-dotnet=\"`DatabaseName`\" pulumi-lang-go=\"`databaseName`\" pulumi-lang-python=\"`database_name`\" pulumi-lang-yaml=\"`databaseName`\" pulumi-lang-java=\"`databaseName`\"\u003e`database_name`\u003c/span\u003e: - database instance name\n* \u003cspan pulumi-lang-nodejs=\"`type`\" pulumi-lang-dotnet=\"`Type`\" pulumi-lang-go=\"`type`\" pulumi-lang-python=\"`type`\" pulumi-lang-yaml=\"`type`\" pulumi-lang-java=\"`type`\"\u003e`type`\u003c/span\u003e: - database engine type\n* \u003cspan pulumi-lang-nodejs=\"`status`\" pulumi-lang-dotnet=\"`Status`\" pulumi-lang-go=\"`status`\" pulumi-lang-python=\"`status`\" pulumi-lang-yaml=\"`status`\" pulumi-lang-java=\"`status`\"\u003e`status`\u003c/span\u003e: - status of database instance\n* \u003cspan pulumi-lang-nodejs=\"`dbserverLogicalClusterId`\" pulumi-lang-dotnet=\"`DbserverLogicalClusterId`\" pulumi-lang-go=\"`dbserverLogicalClusterId`\" pulumi-lang-python=\"`dbserver_logical_cluster_id`\" pulumi-lang-yaml=\"`dbserverLogicalClusterId`\" pulumi-lang-java=\"`dbserverLogicalClusterId`\"\u003e`dbserver_logical_cluster_id`\u003c/span\u003e: - NA\n* \u003cspan pulumi-lang-nodejs=\"`timeMachineId`\" pulumi-lang-dotnet=\"`TimeMachineId`\" pulumi-lang-go=\"`timeMachineId`\" pulumi-lang-python=\"`time_machine_id`\" pulumi-lang-yaml=\"`timeMachineId`\" pulumi-lang-java=\"`timeMachineId`\"\u003e`time_machine_id`\u003c/span\u003e: - time machine ID\n* \u003cspan pulumi-lang-nodejs=\"`timeZone`\" pulumi-lang-dotnet=\"`TimeZone`\" pulumi-lang-go=\"`timeZone`\" pulumi-lang-python=\"`time_zone`\" pulumi-lang-yaml=\"`timeZone`\" pulumi-lang-java=\"`timeZone`\"\u003e`time_zone`\u003c/span\u003e: - timezone\n* \u003cspan pulumi-lang-nodejs=\"`info`\" pulumi-lang-dotnet=\"`Info`\" pulumi-lang-go=\"`info`\" pulumi-lang-python=\"`info`\" pulumi-lang-yaml=\"`info`\" pulumi-lang-java=\"`info`\"\u003e`info`\u003c/span\u003e: - info regarding disks, vm, storage, etc.\n* \u003cspan pulumi-lang-nodejs=\"`metric`\" pulumi-lang-dotnet=\"`Metric`\" pulumi-lang-go=\"`metric`\" pulumi-lang-python=\"`metric`\" pulumi-lang-yaml=\"`metric`\" pulumi-lang-java=\"`metric`\"\u003e`metric`\u003c/span\u003e: - metrics\n* \u003cspan pulumi-lang-nodejs=\"`parentDatabaseId`\" pulumi-lang-dotnet=\"`ParentDatabaseId`\" pulumi-lang-go=\"`parentDatabaseId`\" pulumi-lang-python=\"`parent_database_id`\" pulumi-lang-yaml=\"`parentDatabaseId`\" pulumi-lang-java=\"`parentDatabaseId`\"\u003e`parent_database_id`\u003c/span\u003e: - parent database ID\n* \u003cspan pulumi-lang-nodejs=\"`lcmConfig`\" pulumi-lang-dotnet=\"`LcmConfig`\" pulumi-lang-go=\"`lcmConfig`\" pulumi-lang-python=\"`lcm_config`\" pulumi-lang-yaml=\"`lcmConfig`\" pulumi-lang-java=\"`lcmConfig`\"\u003e`lcm_config`\u003c/span\u003e: - lcm configuration\n* \u003cspan pulumi-lang-nodejs=\"`timeMachine`\" pulumi-lang-dotnet=\"`TimeMachine`\" pulumi-lang-go=\"`timeMachine`\" pulumi-lang-python=\"`time_machine`\" pulumi-lang-yaml=\"`timeMachine`\" pulumi-lang-java=\"`timeMachine`\"\u003e`time_machine`\u003c/span\u003e: - time machine related config info\n* \u003cspan pulumi-lang-nodejs=\"`databaseNodes`\" pulumi-lang-dotnet=\"`DatabaseNodes`\" pulumi-lang-go=\"`databaseNodes`\" pulumi-lang-python=\"`database_nodes`\" pulumi-lang-yaml=\"`databaseNodes`\" pulumi-lang-java=\"`databaseNodes`\"\u003e`database_nodes`\u003c/span\u003e: - nodes info\n* \u003cspan pulumi-lang-nodejs=\"`dbserverLogicalCluster`\" pulumi-lang-dotnet=\"`DbserverLogicalCluster`\" pulumi-lang-go=\"`dbserverLogicalCluster`\" pulumi-lang-python=\"`dbserver_logical_cluster`\" pulumi-lang-yaml=\"`dbserverLogicalCluster`\" pulumi-lang-java=\"`dbserverLogicalCluster`\"\u003e`dbserver_logical_cluster`\u003c/span\u003e: - NA\n* \u003cspan pulumi-lang-nodejs=\"`linkedDatabases`\" pulumi-lang-dotnet=\"`LinkedDatabases`\" pulumi-lang-go=\"`linkedDatabases`\" pulumi-lang-python=\"`linked_databases`\" pulumi-lang-yaml=\"`linkedDatabases`\" pulumi-lang-java=\"`linkedDatabases`\"\u003e`linked_databases`\u003c/span\u003e: - list of databases created in instance with info\n\n\nSee detailed information in [List Database Instances](https://www.nutanix.dev/api_references/ndb/#/1e508756bcdcc-get-all-the-databases).\n",
      "inputs": {
        "description": "A collection of arguments for invoking getNdbDatabases.\n",
        "properties": {
          "databaseType": {
            "type": "string"
          }
        },
        "type": "object"
      },
      "outputs": {
        "description": "A collection of values returned by getNdbDatabases.\n",
        "properties": {
          "databaseInstances": {
            "description": "- list of database instances\n",
            "items": {
              "$ref": "#/types/nutanix:index%2FgetNdbDatabasesDatabaseInstance:getNdbDatabasesDatabaseInstance"
            },
            "type": "array"
          },
          "databaseType": {
            "type": "string"
          },
          "id": {
            "description": "The provider-assigned unique ID for this managed resource.",
            "type": "string"
          }
        },
        "required": [
          "databaseInstances",
          "id"
        ],
        "type": "object"
      }
    },
    "nutanix:index/getNdbDbserver:getNdbDbserver": {
      "description": "Describes Database Server VM in Nutanix Database Service\n\n",
      "inputs": {
        "description": "A collection of arguments for invoking getNdbDbserver.\n",
        "properties": {
          "dbserverClusterId": {
            "type": "string"
          },
          "id": {
            "type": "string",
            "description": "id of database server vm\n"
          },
          "ip": {
            "type": "string",
            "description": "ip of database server vm\n"
          },
          "name": {
            "type": "string",
            "description": "name of database server vm\n"
          },
          "nxClusterId": {
            "type": "string"
          },
          "tags": {
            "type": "array",
            "items": {
              "$ref": "#/types/nutanix:index%2FgetNdbDbserverTag:getNdbDbserverTag"
            },
            "description": "tags for db server vm\n"
          },
          "vmClusterId": {
            "type": "string",
            "description": "vm cluster id of database server\n"
          },
          "vmClusterName": {
            "type": "string",
            "description": "vm cluster name of database server\n"
          }
        },
        "type": "object"
      },
      "outputs": {
        "description": "A collection of values returned by getNdbDbserver.\n",
        "properties": {
          "accessKeyId": {
            "description": "access key id of dbserver vm\n",
            "type": "string"
          },
          "accessLevel": {
            "description": "access level\n",
            "type": "string"
          },
          "associatedTimeMachineIds": {
            "description": "associated time machines ids\n",
            "items": {
              "type": "string"
            },
            "type": "array"
          },
          "clientId": {
            "description": "client id\n",
            "type": "string"
          },
          "clustered": {
            "description": "clustered or not\n",
            "type": "boolean"
          },
          "databaseType": {
            "description": "database type\n",
            "type": "string"
          },
          "dateCreated": {
            "description": "date created of db server vm\n",
            "type": "string"
          },
          "dateModified": {
            "description": "date modified of db server vm\n",
            "type": "string"
          },
          "dbserverClusterId": {
            "type": "string"
          },
          "dbserverInvalidEaState": {
            "description": "dbserver invalid ea state\n",
            "type": "boolean"
          },
          "description": {
            "description": "description of db server vm\n",
            "type": "string"
          },
          "eraDriveId": {
            "description": "era drive id\n",
            "type": "string"
          },
          "eraVersion": {
            "description": "era version\n",
            "type": "string"
          },
          "fqdns": {
            "type": "string"
          },
          "id": {
            "type": "string"
          },
          "ip": {
            "type": "string"
          },
          "ipAddresses": {
            "description": "IP addresses of the dbserver vm\n",
            "items": {
              "type": "string"
            },
            "type": "array"
          },
          "isServerDriven": {
            "description": "is server down or not\n",
            "type": "boolean"
          },
          "macAddresses": {
            "description": "Mac addresses of dbserver vm\n",
            "items": {
              "type": "string"
            },
            "type": "array"
          },
          "name": {
            "type": "string"
          },
          "nxClusterId": {
            "type": "string"
          },
          "properties": {
            "description": "properties of db server vm\n",
            "items": {
              "$ref": "#/types/nutanix:index%2FgetNdbDbserverProperty:getNdbDbserverProperty"
            },
            "type": "array"
          },
          "protectionDomainId": {
            "description": "protection domain id\n",
            "type": "string"
          },
          "queryCount": {
            "description": "query count\n",
            "type": "integer"
          },
          "status": {
            "description": "Status of Dbserver . Active or not.\n",
            "type": "string"
          },
          "tags": {
            "description": "tags for db server vm\n",
            "items": {
              "$ref": "#/types/nutanix:index%2FgetNdbDbserverTag:getNdbDbserverTag"
            },
            "type": "array"
          },
          "type": {
            "description": "Type of entity. i.e. Dbserver\n",
            "type": "string"
          },
          "validDiagnosticBundleState": {
            "description": "valid diagnostic bundle state\n",
            "type": "boolean"
          },
          "vmClusterId": {
            "type": "string"
          },
          "vmClusterName": {
            "type": "string"
          },
          "vmClusterUuid": {
            "description": "clusetr uuid for dbserver vm\n",
            "type": "string"
          },
          "vmInfos": {
            "description": "info of dbserver vm\n",
            "items": {
              "$ref": "#/types/nutanix:index%2FgetNdbDbserverVmInfo:getNdbDbserverVmInfo"
            },
            "type": "array"
          },
          "vmTimezone": {
            "description": "timezone of dbserver vm\n",
            "type": "string"
          },
          "windowsDbServer": {
            "description": "window db server\n",
            "type": "boolean"
          },
          "workingDirectory": {
            "description": "working directory of db server vm\n",
            "type": "string"
          }
        },
        "required": [
          "accessKeyId",
          "accessLevel",
          "associatedTimeMachineIds",
          "clientId",
          "clustered",
          "databaseType",
          "dateCreated",
          "dateModified",
          "dbserverClusterId",
          "dbserverInvalidEaState",
          "description",
          "eraDriveId",
          "eraVersion",
          "fqdns",
          "id",
          "ipAddresses",
          "isServerDriven",
          "macAddresses",
          "name",
          "properties",
          "protectionDomainId",
          "queryCount",
          "status",
          "tags",
          "type",
          "validDiagnosticBundleState",
          "vmClusterName",
          "vmClusterUuid",
          "vmInfos",
          "vmTimezone",
          "windowsDbServer",
          "workingDirectory"
        ],
        "type": "object"
      }
    },
    "nutanix:index/getNdbDbservers:getNdbDbservers": {
      "description": "List of all Database Server VM in Nutanix Database Service\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as nutanix from \"@pierskarsenbarg/nutanix\";\n\nconst dbservers = nutanix.getNdbDbservers({});\n```\n```python\nimport pulumi\nimport pulumi_nutanix as nutanix\n\ndbservers = nutanix.get_ndb_dbservers()\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Nutanix = Pulumi.Nutanix;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var dbservers = Nutanix.GetNdbDbservers.Invoke();\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pierskarsenbarg/pulumi-nutanix/sdk/go/nutanix\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := nutanix.GetNdbDbservers(ctx, map[string]interface{}{}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.nutanix.NutanixFunctions;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var dbservers = NutanixFunctions.getNdbDbservers(%!v(PANIC=Format method: runtime error: invalid memory address or nil pointer dereference);\n\n    }\n}\n```\n```yaml\nvariables:\n  dbservers:\n    fn::invoke:\n      function: nutanix:getNdbDbservers\n      arguments: {}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
      "outputs": {
        "description": "A collection of values returned by getNdbDbservers.\n",
        "properties": {
          "dbservers": {
            "items": {
              "$ref": "#/types/nutanix:index%2FgetNdbDbserversDbserver:getNdbDbserversDbserver"
            },
            "type": "array"
          },
          "id": {
            "description": "The provider-assigned unique ID for this managed resource.",
            "type": "string"
          }
        },
        "required": [
          "dbservers",
          "id"
        ],
        "type": "object"
      }
    },
    "nutanix:index/getNdbMaintenanceWindow:getNdbMaintenanceWindow": {
      "description": "Describes a maintenance window in Nutanix Database Service\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as nutanix from \"@pierskarsenbarg/nutanix\";\n\nconst window = nutanix.getNdbMaintenanceWindow({\n    id: \"{{ maintenance_window_id }}\",\n});\n```\n```python\nimport pulumi\nimport pulumi_nutanix as nutanix\n\nwindow = nutanix.get_ndb_maintenance_window(id=\"{{ maintenance_window_id }}\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Nutanix = Pulumi.Nutanix;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var window = Nutanix.GetNdbMaintenanceWindow.Invoke(new()\n    {\n        Id = \"{{ maintenance_window_id }}\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pierskarsenbarg/pulumi-nutanix/sdk/go/nutanix\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := nutanix.LookupNdbMaintenanceWindow(ctx, \u0026nutanix.LookupNdbMaintenanceWindowArgs{\n\t\t\tId: \"{{ maintenance_window_id }}\",\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.nutanix.NutanixFunctions;\nimport com.pulumi.nutanix.inputs.GetNdbMaintenanceWindowArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var window = NutanixFunctions.getNdbMaintenanceWindow(GetNdbMaintenanceWindowArgs.builder()\n            .id(\"{{ maintenance_window_id }}\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  window:\n    fn::invoke:\n      function: nutanix:getNdbMaintenanceWindow\n      arguments:\n        id: '{{ maintenance_window_id }}'\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
      "inputs": {
        "description": "A collection of arguments for invoking getNdbMaintenanceWindow.\n",
        "properties": {
          "id": {
            "type": "string",
            "description": "Maintenance window id.\n"
          },
          "tags": {
            "type": "array",
            "items": {
              "$ref": "#/types/nutanix:index%2FgetNdbMaintenanceWindowTag:getNdbMaintenanceWindowTag"
            },
            "description": "tags of maintenance window\n"
          }
        },
        "type": "object",
        "required": [
          "id"
        ]
      },
      "outputs": {
        "description": "A collection of values returned by getNdbMaintenanceWindow.\n",
        "properties": {
          "accessLevel": {
            "description": "access level\n",
            "type": "string"
          },
          "dateCreated": {
            "description": "created date of maintenance window\n",
            "type": "string"
          },
          "dateModified": {
            "description": "modified date of maintenance window\n",
            "type": "string"
          },
          "description": {
            "description": "description of maintenance window\n",
            "type": "string"
          },
          "entityTaskAssocs": {
            "description": "entity task association for maintenance window\n",
            "items": {
              "$ref": "#/types/nutanix:index%2FgetNdbMaintenanceWindowEntityTaskAssoc:getNdbMaintenanceWindowEntityTaskAssoc"
            },
            "type": "array"
          },
          "id": {
            "type": "string"
          },
          "name": {
            "description": "name of maintenance window\n",
            "type": "string"
          },
          "nextRunTime": {
            "description": "next run time for maintenance window to trigger\n",
            "type": "string"
          },
          "ownerId": {
            "description": "owner id of maintenance window\n",
            "type": "string"
          },
          "properties": {
            "description": "properties of maintenance window\n",
            "items": {
              "$ref": "#/types/nutanix:index%2FgetNdbMaintenanceWindowProperty:getNdbMaintenanceWindowProperty"
            },
            "type": "array"
          },
          "schedules": {
            "description": "schedule of maintenance window\n",
            "items": {
              "$ref": "#/types/nutanix:index%2FgetNdbMaintenanceWindowSchedule:getNdbMaintenanceWindowSchedule"
            },
            "type": "array"
          },
          "status": {
            "description": "status of maintennace window\n",
            "type": "string"
          },
          "tags": {
            "description": "tags of maintenance window\n",
            "items": {
              "$ref": "#/types/nutanix:index%2FgetNdbMaintenanceWindowTag:getNdbMaintenanceWindowTag"
            },
            "type": "array"
          },
          "timezone": {
            "description": "timezone\n",
            "type": "string"
          }
        },
        "required": [
          "accessLevel",
          "dateCreated",
          "dateModified",
          "description",
          "entityTaskAssocs",
          "id",
          "name",
          "nextRunTime",
          "ownerId",
          "properties",
          "schedules",
          "status",
          "tags",
          "timezone"
        ],
        "type": "object"
      }
    },
    "nutanix:index/getNdbMaintenanceWindows:getNdbMaintenanceWindows": {
      "description": "List of maintenance windows in Nutanix Database Service\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as nutanix from \"@pierskarsenbarg/nutanix\";\n\nconst windows = nutanix.getNdbMaintenanceWindows({});\n```\n```python\nimport pulumi\nimport pulumi_nutanix as nutanix\n\nwindows = nutanix.get_ndb_maintenance_windows()\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Nutanix = Pulumi.Nutanix;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var windows = Nutanix.GetNdbMaintenanceWindows.Invoke();\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pierskarsenbarg/pulumi-nutanix/sdk/go/nutanix\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := nutanix.GetNdbMaintenanceWindows(ctx, map[string]interface{}{}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.nutanix.NutanixFunctions;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var windows = NutanixFunctions.getNdbMaintenanceWindows(%!v(PANIC=Format method: runtime error: invalid memory address or nil pointer dereference);\n\n    }\n}\n```\n```yaml\nvariables:\n  windows:\n    fn::invoke:\n      function: nutanix:getNdbMaintenanceWindows\n      arguments: {}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
      "outputs": {
        "description": "A collection of values returned by getNdbMaintenanceWindows.\n",
        "properties": {
          "id": {
            "description": "The provider-assigned unique ID for this managed resource.",
            "type": "string"
          },
          "maintenanceWindows": {
            "description": "List of maintenance windows\n",
            "items": {
              "$ref": "#/types/nutanix:index%2FgetNdbMaintenanceWindowsMaintenanceWindow:getNdbMaintenanceWindowsMaintenanceWindow"
            },
            "type": "array"
          }
        },
        "required": [
          "id",
          "maintenanceWindows"
        ],
        "type": "object"
      }
    },
    "nutanix:index/getNdbNetwork:getNdbNetwork": {
      "description": "Describes a network in Nutanix Database Service\n\n",
      "inputs": {
        "description": "A collection of arguments for invoking getNdbNetwork.\n",
        "properties": {
          "id": {
            "type": "string",
            "description": "id of network\n"
          },
          "name": {
            "type": "string",
            "description": "name of network\n"
          }
        },
        "type": "object"
      },
      "outputs": {
        "description": "A collection of values returned by getNdbNetwork.\n",
        "properties": {
          "clusterId": {
            "description": "cluster id where network is present\n",
            "type": "string"
          },
          "id": {
            "description": "network id\n",
            "type": "string"
          },
          "ipAddresses": {
            "description": "IP addresses of network\n",
            "items": {
              "$ref": "#/types/nutanix:index%2FgetNdbNetworkIpAddress:getNdbNetworkIpAddress"
            },
            "type": "array"
          },
          "ipPools": {
            "description": "IP Pools of network\n",
            "items": {
              "$ref": "#/types/nutanix:index%2FgetNdbNetworkIpPool:getNdbNetworkIpPool"
            },
            "type": "array"
          },
          "managed": {
            "description": "network managed by NDB or not\n",
            "type": "boolean"
          },
          "name": {
            "description": "network name\n",
            "type": "string"
          },
          "properties": {
            "description": "properties of network\n",
            "items": {
              "$ref": "#/types/nutanix:index%2FgetNdbNetworkProperty:getNdbNetworkProperty"
            },
            "type": "array"
          },
          "propertiesMaps": {
            "description": "properties map of network\n",
            "items": {
              "$ref": "#/types/nutanix:index%2FgetNdbNetworkPropertiesMap:getNdbNetworkPropertiesMap"
            },
            "type": "array"
          },
          "stretchedVlanId": {
            "description": "stretched vlan id\n",
            "type": "string"
          },
          "type": {
            "description": "type of network\n",
            "type": "string"
          }
        },
        "required": [
          "clusterId",
          "id",
          "ipAddresses",
          "ipPools",
          "managed",
          "name",
          "properties",
          "propertiesMaps",
          "stretchedVlanId",
          "type"
        ],
        "type": "object"
      }
    },
    "nutanix:index/getNdbNetworkAvailableIps:getNdbNetworkAvailableIps": {
      "description": "List of available IPs in Network\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as nutanix from \"@pierskarsenbarg/nutanix\";\n\nconst network = nutanix.getNdbNetworkAvailableIps({\n    profileId: \"{{ network_profile_id }}\",\n});\n```\n```python\nimport pulumi\nimport pulumi_nutanix as nutanix\n\nnetwork = nutanix.get_ndb_network_available_ips(profile_id=\"{{ network_profile_id }}\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Nutanix = Pulumi.Nutanix;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var network = Nutanix.GetNdbNetworkAvailableIps.Invoke(new()\n    {\n        ProfileId = \"{{ network_profile_id }}\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pierskarsenbarg/pulumi-nutanix/sdk/go/nutanix\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := nutanix.GetNdbNetworkAvailableIps(ctx, \u0026nutanix.GetNdbNetworkAvailableIpsArgs{\n\t\t\tProfileId: \"{{ network_profile_id }}\",\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.nutanix.NutanixFunctions;\nimport com.pulumi.nutanix.inputs.GetNdbNetworkAvailableIpsArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var network = NutanixFunctions.getNdbNetworkAvailableIps(GetNdbNetworkAvailableIpsArgs.builder()\n            .profileId(\"{{ network_profile_id }}\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  network:\n    fn::invoke:\n      function: nutanix:getNdbNetworkAvailableIps\n      arguments:\n        profileId: '{{ network_profile_id }}'\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
      "inputs": {
        "description": "A collection of arguments for invoking getNdbNetworkAvailableIps.\n",
        "properties": {
          "profileId": {
            "type": "string",
            "description": "(Required) Network Profile id.\n"
          }
        },
        "type": "object",
        "required": [
          "profileId"
        ]
      },
      "outputs": {
        "description": "A collection of values returned by getNdbNetworkAvailableIps.\n",
        "properties": {
          "availableIps": {
            "description": "List of network available ips\n",
            "items": {
              "$ref": "#/types/nutanix:index%2FgetNdbNetworkAvailableIpsAvailableIp:getNdbNetworkAvailableIpsAvailableIp"
            },
            "type": "array"
          },
          "id": {
            "description": "The provider-assigned unique ID for this managed resource.",
            "type": "string"
          },
          "profileId": {
            "description": "(Required) Network Profile id.\n",
            "type": "string"
          }
        },
        "required": [
          "availableIps",
          "id",
          "profileId"
        ],
        "type": "object"
      }
    },
    "nutanix:index/getNdbNetworks:getNdbNetworks": {
      "description": "List of networks in Nutanix Database Service\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as nutanix from \"@pierskarsenbarg/nutanix\";\n\nconst nw = nutanix.getNdbNetworks({});\n```\n```python\nimport pulumi\nimport pulumi_nutanix as nutanix\n\nnw = nutanix.get_ndb_networks()\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Nutanix = Pulumi.Nutanix;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var nw = Nutanix.GetNdbNetworks.Invoke();\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pierskarsenbarg/pulumi-nutanix/sdk/go/nutanix\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := nutanix.GetNdbNetworks(ctx, map[string]interface{}{}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.nutanix.NutanixFunctions;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var nw = NutanixFunctions.getNdbNetworks(%!v(PANIC=Format method: runtime error: invalid memory address or nil pointer dereference);\n\n    }\n}\n```\n```yaml\nvariables:\n  nw:\n    fn::invoke:\n      function: nutanix:getNdbNetworks\n      arguments: {}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
      "outputs": {
        "description": "A collection of values returned by getNdbNetworks.\n",
        "properties": {
          "id": {
            "description": "The provider-assigned unique ID for this managed resource.",
            "type": "string"
          },
          "networks": {
            "description": "List of networks in NDB\n",
            "items": {
              "$ref": "#/types/nutanix:index%2FgetNdbNetworksNetwork:getNdbNetworksNetwork"
            },
            "type": "array"
          }
        },
        "required": [
          "id",
          "networks"
        ],
        "type": "object"
      }
    },
    "nutanix:index/getNdbProfile:getNdbProfile": {
      "description": "Describes a profile in Nutanix Database Service\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as nutanix from \"@pierskarsenbarg/nutanix\";\n\nconst profile1 = nutanix.getNdbProfile({\n    profileType: \"Network\",\n    profileName: \"TEST_NETWORK_PROFILE\",\n});\nexport const profile = profile1;\n```\n```python\nimport pulumi\nimport pulumi_nutanix as nutanix\n\nprofile1 = nutanix.get_ndb_profile(profile_type=\"Network\",\n    profile_name=\"TEST_NETWORK_PROFILE\")\npulumi.export(\"profile\", profile1)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Nutanix = Pulumi.Nutanix;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var profile1 = Nutanix.GetNdbProfile.Invoke(new()\n    {\n        ProfileType = \"Network\",\n        ProfileName = \"TEST_NETWORK_PROFILE\",\n    });\n\n    return new Dictionary\u003cstring, object?\u003e\n    {\n        [\"profile\"] = profile1,\n    };\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pierskarsenbarg/pulumi-nutanix/sdk/go/nutanix\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tprofile1, err := nutanix.LookupNdbProfile(ctx, \u0026nutanix.LookupNdbProfileArgs{\n\t\t\tProfileType: pulumi.StringRef(\"Network\"),\n\t\t\tProfileName: pulumi.StringRef(\"TEST_NETWORK_PROFILE\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tctx.Export(\"profile\", profile1)\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.nutanix.NutanixFunctions;\nimport com.pulumi.nutanix.inputs.GetNdbProfileArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var profile1 = NutanixFunctions.getNdbProfile(GetNdbProfileArgs.builder()\n            .profileType(\"Network\")\n            .profileName(\"TEST_NETWORK_PROFILE\")\n            .build());\n\n        ctx.export(\"profile\", profile1);\n    }\n}\n```\n```yaml\nvariables:\n  profile1:\n    fn::invoke:\n      function: nutanix:getNdbProfile\n      arguments:\n        profileType: Network\n        profileName: TEST_NETWORK_PROFILE\noutputs:\n  profile: ${profile1}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
      "inputs": {
        "description": "A collection of arguments for invoking getNdbProfile.\n",
        "properties": {
          "engine": {
            "type": "string",
            "description": "Database engine. For eg. postgres_database\n"
          },
          "profileId": {
            "type": "string",
            "description": "Profile ID for query\n"
          },
          "profileName": {
            "type": "string",
            "description": "Profile Name for query\n"
          },
          "profileType": {
            "type": "string",
            "description": "Profile type. Types: Software, Compute, Network and Database_Parameter\n"
          }
        },
        "type": "object"
      },
      "outputs": {
        "description": "A collection of values returned by getNdbProfile.\n",
        "properties": {
          "assocDatabases": {
            "description": "- associated databases\n",
            "items": {
              "type": "string"
            },
            "type": "array"
          },
          "assocDbServers": {
            "description": "- associated DB servers\n",
            "items": {
              "type": "string"
            },
            "type": "array"
          },
          "clusterAvailabilities": {
            "description": "- list of clusters availability\n",
            "items": {
              "$ref": "#/types/nutanix:index%2FgetNdbProfileClusterAvailability:getNdbProfileClusterAvailability"
            },
            "type": "array"
          },
          "dbVersion": {
            "description": "- database version\n",
            "type": "string"
          },
          "description": {
            "description": "- description of profile\n",
            "type": "string"
          },
          "engine": {
            "type": "string"
          },
          "engineType": {
            "description": "- database engine type\n",
            "type": "string"
          },
          "id": {
            "description": "- id of profile\n",
            "type": "string"
          },
          "latestVersion": {
            "description": "- latest version for engine software\n",
            "type": "string"
          },
          "latestVersionId": {
            "description": "- ID of latest version for engine software\n",
            "type": "string"
          },
          "name": {
            "description": "- profile name\n",
            "type": "string"
          },
          "nxClusterId": {
            "description": "- era cluster ID\n",
            "type": "string"
          },
          "owner": {
            "description": "- owner name\n",
            "type": "string"
          },
          "profileId": {
            "type": "string"
          },
          "profileName": {
            "type": "string"
          },
          "profileType": {
            "type": "string"
          },
          "status": {
            "description": "- status of profile\n",
            "type": "string"
          },
          "systemProfile": {
            "description": "- if system profile or not\n",
            "type": "boolean"
          },
          "topology": {
            "description": "- topology\n",
            "type": "string"
          },
          "type": {
            "type": "string"
          },
          "versions": {
            "description": "- profile's different version config\n",
            "items": {
              "$ref": "#/types/nutanix:index%2FgetNdbProfileVersion:getNdbProfileVersion"
            },
            "type": "array"
          }
        },
        "required": [
          "assocDatabases",
          "assocDbServers",
          "clusterAvailabilities",
          "dbVersion",
          "description",
          "engineType",
          "id",
          "latestVersion",
          "latestVersionId",
          "name",
          "nxClusterId",
          "owner",
          "status",
          "systemProfile",
          "topology",
          "type",
          "versions"
        ],
        "type": "object"
      }
    },
    "nutanix:index/getNdbProfiles:getNdbProfiles": {
      "description": "List profiles in Nutanix Database Service\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as nutanix from \"@pierskarsenbarg/nutanix\";\n\nconst profiles = nutanix.getNdbProfiles({});\nexport const profilesList = profiles;\n```\n```python\nimport pulumi\nimport pulumi_nutanix as nutanix\n\nprofiles = nutanix.get_ndb_profiles()\npulumi.export(\"profilesList\", profiles)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Nutanix = Pulumi.Nutanix;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var profiles = Nutanix.GetNdbProfiles.Invoke();\n\n    return new Dictionary\u003cstring, object?\u003e\n    {\n        [\"profilesList\"] = profiles,\n    };\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pierskarsenbarg/pulumi-nutanix/sdk/go/nutanix\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tprofiles, err := nutanix.GetNdbProfiles(ctx, \u0026nutanix.GetNdbProfilesArgs{}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tctx.Export(\"profilesList\", profiles)\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.nutanix.NutanixFunctions;\nimport com.pulumi.nutanix.inputs.GetNdbProfilesArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var profiles = NutanixFunctions.getNdbProfiles(GetNdbProfilesArgs.builder()\n            .build());\n\n        ctx.export(\"profilesList\", profiles);\n    }\n}\n```\n```yaml\nvariables:\n  profiles:\n    fn::invoke:\n      function: nutanix:getNdbProfiles\n      arguments: {}\noutputs:\n  profilesList: ${profiles}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## profiles\n\nThe following attributes are exported for each profile:\n\n* \u003cspan pulumi-lang-nodejs=\"`id`\" pulumi-lang-dotnet=\"`Id`\" pulumi-lang-go=\"`id`\" pulumi-lang-python=\"`id`\" pulumi-lang-yaml=\"`id`\" pulumi-lang-java=\"`id`\"\u003e`id`\u003c/span\u003e: - id of profile\n* \u003cspan pulumi-lang-nodejs=\"`name`\" pulumi-lang-dotnet=\"`Name`\" pulumi-lang-go=\"`name`\" pulumi-lang-python=\"`name`\" pulumi-lang-yaml=\"`name`\" pulumi-lang-java=\"`name`\"\u003e`name`\u003c/span\u003e: - profile name\n* \u003cspan pulumi-lang-nodejs=\"`description`\" pulumi-lang-dotnet=\"`Description`\" pulumi-lang-go=\"`description`\" pulumi-lang-python=\"`description`\" pulumi-lang-yaml=\"`description`\" pulumi-lang-java=\"`description`\"\u003e`description`\u003c/span\u003e: - description of profile\n* \u003cspan pulumi-lang-nodejs=\"`status`\" pulumi-lang-dotnet=\"`Status`\" pulumi-lang-go=\"`status`\" pulumi-lang-python=\"`status`\" pulumi-lang-yaml=\"`status`\" pulumi-lang-java=\"`status`\"\u003e`status`\u003c/span\u003e: - status of profile\n* \u003cspan pulumi-lang-nodejs=\"`owner`\" pulumi-lang-dotnet=\"`Owner`\" pulumi-lang-go=\"`owner`\" pulumi-lang-python=\"`owner`\" pulumi-lang-yaml=\"`owner`\" pulumi-lang-java=\"`owner`\"\u003e`owner`\u003c/span\u003e: - owner name\n* \u003cspan pulumi-lang-nodejs=\"`engineType`\" pulumi-lang-dotnet=\"`EngineType`\" pulumi-lang-go=\"`engineType`\" pulumi-lang-python=\"`engine_type`\" pulumi-lang-yaml=\"`engineType`\" pulumi-lang-java=\"`engineType`\"\u003e`engine_type`\u003c/span\u003e: - database engine type\n* \u003cspan pulumi-lang-nodejs=\"`dbVersion`\" pulumi-lang-dotnet=\"`DbVersion`\" pulumi-lang-go=\"`dbVersion`\" pulumi-lang-python=\"`db_version`\" pulumi-lang-yaml=\"`dbVersion`\" pulumi-lang-java=\"`dbVersion`\"\u003e`db_version`\u003c/span\u003e: - database version\n* \u003cspan pulumi-lang-nodejs=\"`topology`\" pulumi-lang-dotnet=\"`Topology`\" pulumi-lang-go=\"`topology`\" pulumi-lang-python=\"`topology`\" pulumi-lang-yaml=\"`topology`\" pulumi-lang-java=\"`topology`\"\u003e`topology`\u003c/span\u003e: - topology\n* \u003cspan pulumi-lang-nodejs=\"`systemProfile`\" pulumi-lang-dotnet=\"`SystemProfile`\" pulumi-lang-go=\"`systemProfile`\" pulumi-lang-python=\"`system_profile`\" pulumi-lang-yaml=\"`systemProfile`\" pulumi-lang-java=\"`systemProfile`\"\u003e`system_profile`\u003c/span\u003e: - if system profile or not\n* \u003cspan pulumi-lang-nodejs=\"`assocDbServers`\" pulumi-lang-dotnet=\"`AssocDbServers`\" pulumi-lang-go=\"`assocDbServers`\" pulumi-lang-python=\"`assoc_db_servers`\" pulumi-lang-yaml=\"`assocDbServers`\" pulumi-lang-java=\"`assocDbServers`\"\u003e`assoc_db_servers`\u003c/span\u003e: - associated DB servers\n* \u003cspan pulumi-lang-nodejs=\"`assocDatabases`\" pulumi-lang-dotnet=\"`AssocDatabases`\" pulumi-lang-go=\"`assocDatabases`\" pulumi-lang-python=\"`assoc_databases`\" pulumi-lang-yaml=\"`assocDatabases`\" pulumi-lang-java=\"`assocDatabases`\"\u003e`assoc_databases`\u003c/span\u003e: - associated databases\n* \u003cspan pulumi-lang-nodejs=\"`latestVersion`\" pulumi-lang-dotnet=\"`LatestVersion`\" pulumi-lang-go=\"`latestVersion`\" pulumi-lang-python=\"`latest_version`\" pulumi-lang-yaml=\"`latestVersion`\" pulumi-lang-java=\"`latestVersion`\"\u003e`latest_version`\u003c/span\u003e: - latest version for engine software\n* \u003cspan pulumi-lang-nodejs=\"`latestVersionId`\" pulumi-lang-dotnet=\"`LatestVersionId`\" pulumi-lang-go=\"`latestVersionId`\" pulumi-lang-python=\"`latest_version_id`\" pulumi-lang-yaml=\"`latestVersionId`\" pulumi-lang-java=\"`latestVersionId`\"\u003e`latest_version_id`\u003c/span\u003e: - ID of latest version for engine software\n* \u003cspan pulumi-lang-nodejs=\"`versions`\" pulumi-lang-dotnet=\"`Versions`\" pulumi-lang-go=\"`versions`\" pulumi-lang-python=\"`versions`\" pulumi-lang-yaml=\"`versions`\" pulumi-lang-java=\"`versions`\"\u003e`versions`\u003c/span\u003e: - profile's different version config\n* \u003cspan pulumi-lang-nodejs=\"`clusterAvailability`\" pulumi-lang-dotnet=\"`ClusterAvailability`\" pulumi-lang-go=\"`clusterAvailability`\" pulumi-lang-python=\"`cluster_availability`\" pulumi-lang-yaml=\"`clusterAvailability`\" pulumi-lang-java=\"`clusterAvailability`\"\u003e`cluster_availability`\u003c/span\u003e: - list of clusters availability\n* \u003cspan pulumi-lang-nodejs=\"`nxClusterId`\" pulumi-lang-dotnet=\"`NxClusterId`\" pulumi-lang-go=\"`nxClusterId`\" pulumi-lang-python=\"`nx_cluster_id`\" pulumi-lang-yaml=\"`nxClusterId`\" pulumi-lang-java=\"`nxClusterId`\"\u003e`nx_cluster_id`\u003c/span\u003e: - era cluster ID\n\nSee detailed information in [Nutanix Database Service Profiles](https://www.nutanix.dev/api_references/ndb/#/74ae456d63b24-get-all-profiles).\n",
      "inputs": {
        "description": "A collection of arguments for invoking getNdbProfiles.\n",
        "properties": {
          "engine": {
            "type": "string",
            "description": "Database engine. For eg. postgres_database\n"
          },
          "profileType": {
            "type": "string",
            "description": "profile type. Types: Software, Compute, Network and Database_Parameter\n"
          }
        },
        "type": "object"
      },
      "outputs": {
        "description": "A collection of values returned by getNdbProfiles.\n",
        "properties": {
          "engine": {
            "type": "string"
          },
          "id": {
            "description": "The provider-assigned unique ID for this managed resource.",
            "type": "string"
          },
          "profileType": {
            "type": "string"
          },
          "profiles": {
            "description": "List of profiles\n",
            "items": {
              "$ref": "#/types/nutanix:index%2FgetNdbProfilesProfile:getNdbProfilesProfile"
            },
            "type": "array"
          }
        },
        "required": [
          "id",
          "profiles"
        ],
        "type": "object"
      }
    },
    "nutanix:index/getNdbSla:getNdbSla": {
      "description": "Describes a SLA in Nutanix Database Service\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as nutanix from \"@pierskarsenbarg/nutanix\";\n\nconst sla1 = nutanix.getNdbSla({\n    slaName: \"test-sla\",\n});\nexport const sla = sla1;\n```\n```python\nimport pulumi\nimport pulumi_nutanix as nutanix\n\nsla1 = nutanix.get_ndb_sla(sla_name=\"test-sla\")\npulumi.export(\"sla\", sla1)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Nutanix = Pulumi.Nutanix;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var sla1 = Nutanix.GetNdbSla.Invoke(new()\n    {\n        SlaName = \"test-sla\",\n    });\n\n    return new Dictionary\u003cstring, object?\u003e\n    {\n        [\"sla\"] = sla1,\n    };\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pierskarsenbarg/pulumi-nutanix/sdk/go/nutanix\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tsla1, err := nutanix.LookupNdbSla(ctx, \u0026nutanix.LookupNdbSlaArgs{\n\t\t\tSlaName: pulumi.StringRef(\"test-sla\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tctx.Export(\"sla\", sla1)\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.nutanix.NutanixFunctions;\nimport com.pulumi.nutanix.inputs.GetNdbSlaArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var sla1 = NutanixFunctions.getNdbSla(GetNdbSlaArgs.builder()\n            .slaName(\"test-sla\")\n            .build());\n\n        ctx.export(\"sla\", sla1);\n    }\n}\n```\n```yaml\nvariables:\n  sla1:\n    fn::invoke:\n      function: nutanix:getNdbSla\n      arguments:\n        slaName: test-sla\noutputs:\n  sla: ${sla1}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
      "inputs": {
        "description": "A collection of arguments for invoking getNdbSla.\n",
        "properties": {
          "slaId": {
            "type": "string",
            "description": "and \u003cspan pulumi-lang-nodejs=\"`slaName`\" pulumi-lang-dotnet=\"`SlaName`\" pulumi-lang-go=\"`slaName`\" pulumi-lang-python=\"`sla_name`\" pulumi-lang-yaml=\"`slaName`\" pulumi-lang-java=\"`slaName`\"\u003e`sla_name`\u003c/span\u003e are mutually exclusive.\n"
          },
          "slaName": {
            "type": "string",
            "description": "SLA Name for query\n"
          }
        },
        "type": "object"
      },
      "outputs": {
        "description": "A collection of values returned by getNdbSla.\n",
        "properties": {
          "continuousRetention": {
            "description": "- continuous retention of logs limit\n",
            "type": "integer"
          },
          "currentActiveFrequency": {
            "description": "- Current active frequency\n",
            "type": "string"
          },
          "dailyRetention": {
            "description": "- Daily snapshots retention limit\n",
            "type": "integer"
          },
          "dateCreated": {
            "description": "- creation date\n",
            "type": "string"
          },
          "dateModified": {
            "description": "- last modified\n",
            "type": "string"
          },
          "description": {
            "description": "- description of sla\n",
            "type": "string"
          },
          "id": {
            "description": "- id of sla\n",
            "type": "string"
          },
          "monthlyRetention": {
            "description": "- Monthly snapshots retention limit\n",
            "type": "integer"
          },
          "name": {
            "description": "- sla name\n",
            "type": "string"
          },
          "ownerId": {
            "description": "- owner ID\n",
            "type": "string"
          },
          "pitrEnabled": {
            "description": "- If point in time recovery enabled\n",
            "type": "boolean"
          },
          "quartelyRetention": {
            "description": "- Daily snapshots retention limit\n",
            "type": "integer"
          },
          "referenceCount": {
            "description": "- Reference count\n",
            "type": "integer"
          },
          "slaId": {
            "type": "string"
          },
          "slaName": {
            "type": "string"
          },
          "systemSla": {
            "description": "- if system sla\n",
            "type": "boolean"
          },
          "uniqueName": {
            "description": "- unique name\n",
            "type": "string"
          },
          "weeklyRetention": {
            "description": "- weeky snapshots retention limit\n",
            "type": "integer"
          },
          "yearlyRetention": {
            "description": "- Yearly snapshots retention limit\n",
            "type": "integer"
          }
        },
        "required": [
          "continuousRetention",
          "currentActiveFrequency",
          "dailyRetention",
          "dateCreated",
          "dateModified",
          "description",
          "id",
          "monthlyRetention",
          "name",
          "ownerId",
          "pitrEnabled",
          "quartelyRetention",
          "referenceCount",
          "systemSla",
          "uniqueName",
          "weeklyRetention",
          "yearlyRetention"
        ],
        "type": "object"
      }
    },
    "nutanix:index/getNdbSlas:getNdbSlas": {
      "description": "Lists all SLAs in Nutanix Database Service\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as nutanix from \"@pierskarsenbarg/nutanix\";\n\nconst slas = nutanix.getNdbSlas({});\nexport const sla = slas;\n```\n```python\nimport pulumi\nimport pulumi_nutanix as nutanix\n\nslas = nutanix.get_ndb_slas()\npulumi.export(\"sla\", slas)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Nutanix = Pulumi.Nutanix;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var slas = Nutanix.GetNdbSlas.Invoke();\n\n    return new Dictionary\u003cstring, object?\u003e\n    {\n        [\"sla\"] = slas,\n    };\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pierskarsenbarg/pulumi-nutanix/sdk/go/nutanix\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tslas, err := nutanix.GetNdbSlas(ctx, map[string]interface{}{}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tctx.Export(\"sla\", slas)\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.nutanix.NutanixFunctions;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var slas = NutanixFunctions.getNdbSlas(%!v(PANIC=Format method: runtime error: invalid memory address or nil pointer dereference);\n\n        ctx.export(\"sla\", slas);\n    }\n}\n```\n```yaml\nvariables:\n  slas:\n    fn::invoke:\n      function: nutanix:getNdbSlas\n      arguments: {}\noutputs:\n  sla: ${slas}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
      "outputs": {
        "description": "A collection of values returned by getNdbSlas.\n",
        "properties": {
          "id": {
            "description": "The provider-assigned unique ID for this managed resource.",
            "type": "string"
          },
          "slas": {
            "description": "- list of slas\n",
            "items": {
              "$ref": "#/types/nutanix:index%2FgetNdbSlasSla:getNdbSlasSla"
            },
            "type": "array"
          }
        },
        "required": [
          "id",
          "slas"
        ],
        "type": "object"
      }
    },
    "nutanix:index/getNdbSnapshot:getNdbSnapshot": {
      "description": "Describes the snapshot present in Nutanix Database Service\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as nutanix from \"@pierskarsenbarg/nutanix\";\n\nconst snaps = nutanix.getNdbSnapshot({\n    snapshotId: \"{{ snapshot_id }}\",\n    filters: [{\n        loadReplicatedChildSnapshots: \"true\",\n    }],\n});\n```\n```python\nimport pulumi\nimport pulumi_nutanix as nutanix\n\nsnaps = nutanix.get_ndb_snapshot(snapshot_id=\"{{ snapshot_id }}\",\n    filters=[{\n        \"load_replicated_child_snapshots\": \"true\",\n    }])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Nutanix = Pulumi.Nutanix;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var snaps = Nutanix.GetNdbSnapshot.Invoke(new()\n    {\n        SnapshotId = \"{{ snapshot_id }}\",\n        Filters = new[]\n        {\n            new Nutanix.Inputs.GetNdbSnapshotFilterInputArgs\n            {\n                LoadReplicatedChildSnapshots = \"true\",\n            },\n        },\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pierskarsenbarg/pulumi-nutanix/sdk/go/nutanix\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := nutanix.GetNdbSnapshot(ctx, \u0026nutanix.GetNdbSnapshotArgs{\n\t\t\tSnapshotId: \"{{ snapshot_id }}\",\n\t\t\tFilters: []nutanix.GetNdbSnapshotFilter{\n\t\t\t\t{\n\t\t\t\t\tLoadReplicatedChildSnapshots: pulumi.StringRef(\"true\"),\n\t\t\t\t},\n\t\t\t},\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.nutanix.NutanixFunctions;\nimport com.pulumi.nutanix.inputs.GetNdbSnapshotArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var snaps = NutanixFunctions.getNdbSnapshot(GetNdbSnapshotArgs.builder()\n            .snapshotId(\"{{ snapshot_id }}\")\n            .filters(GetNdbSnapshotFilterArgs.builder()\n                .loadReplicatedChildSnapshots(\"true\")\n                .build())\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  snaps:\n    fn::invoke:\n      function: nutanix:getNdbSnapshot\n      arguments:\n        snapshotId: '{{ snapshot_id }}'\n        filters:\n          - loadReplicatedChildSnapshots: true\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
      "inputs": {
        "description": "A collection of arguments for invoking getNdbSnapshot.\n",
        "properties": {
          "filters": {
            "type": "array",
            "items": {
              "$ref": "#/types/nutanix:index%2FgetNdbSnapshotFilter:getNdbSnapshotFilter"
            },
            "description": "Filters will fetch the snapshot details as per input\n"
          },
          "snapshotId": {
            "type": "string",
            "description": "Snapshot ID to be given\n"
          },
          "tags": {
            "type": "array",
            "items": {
              "$ref": "#/types/nutanix:index%2FgetNdbSnapshotTag:getNdbSnapshotTag"
            },
            "description": "tags\n"
          }
        },
        "type": "object",
        "required": [
          "snapshotId"
        ]
      },
      "outputs": {
        "description": "A collection of values returned by getNdbSnapshot.\n",
        "properties": {
          "appInfoVersion": {
            "description": "App info version\n",
            "type": "string"
          },
          "applicableTypes": {
            "description": "Applicable types\n",
            "items": {
              "type": "string"
            },
            "type": "array"
          },
          "databaseNodeId": {
            "description": "database node id\n",
            "type": "string"
          },
          "databaseSnapshot": {
            "description": "database snapshot\n",
            "type": "boolean"
          },
          "dateCreated": {
            "description": "created date\n",
            "type": "string"
          },
          "dateModified": {
            "description": "modified date\n",
            "type": "string"
          },
          "dbserverId": {
            "description": "dbserver id\n",
            "type": "string"
          },
          "dbserverIp": {
            "description": "dbserver ip\n",
            "type": "string"
          },
          "dbserverName": {
            "description": "dbserver name\n",
            "type": "string"
          },
          "dbserverStorageMetadataVersion": {
            "description": "dbserver storage metadata version\n",
            "type": "integer"
          },
          "description": {
            "description": "description of snapshot\n",
            "type": "string"
          },
          "filters": {
            "items": {
              "$ref": "#/types/nutanix:index%2FgetNdbSnapshotFilter:getNdbSnapshotFilter"
            },
            "type": "array"
          },
          "fromTimestamp": {
            "description": "from timestamp\n",
            "type": "string"
          },
          "id": {
            "description": "name of snapshot\n",
            "type": "string"
          },
          "lcmConfigs": {
            "description": "LCM config\n",
            "items": {
              "$ref": "#/types/nutanix:index%2FgetNdbSnapshotLcmConfig:getNdbSnapshotLcmConfig"
            },
            "type": "array"
          },
          "name": {
            "type": "string"
          },
          "nxClusterId": {
            "description": "nx cluster id\n",
            "type": "string"
          },
          "parentSnapshot": {
            "description": "parent snapshot\n",
            "type": "boolean"
          },
          "parentSnapshotId": {
            "description": "parent snapshot id\n",
            "type": "string"
          },
          "processed": {
            "description": "processed\n",
            "type": "boolean"
          },
          "properties": {
            "description": "properties\n",
            "items": {
              "$ref": "#/types/nutanix:index%2FgetNdbSnapshotProperty:getNdbSnapshotProperty"
            },
            "type": "array"
          },
          "protectionDomainId": {
            "description": "protection domain\n",
            "type": "string"
          },
          "replicatedSnapshots": {
            "description": "replicated snapshots\n",
            "items": {
              "type": "string"
            },
            "type": "array"
          },
          "santized": {
            "type": "boolean"
          },
          "santizedFromSnapshotId": {
            "type": "string"
          },
          "santizedSnapshots": {
            "type": "string"
          },
          "snapshotFamily": {
            "description": "snapshot family\n",
            "type": "string"
          },
          "snapshotId": {
            "type": "string"
          },
          "snapshotSize": {
            "description": "snapshot size\n",
            "type": "number"
          },
          "snapshotTimestamp": {
            "description": "snapshot timeStamp\n",
            "type": "string"
          },
          "snapshotTimestampDate": {
            "description": "snapshot timestamp date\n",
            "type": "integer"
          },
          "snapshotUuid": {
            "description": "snapshot uuid\n",
            "type": "string"
          },
          "softwareDatabaseSnapshot": {
            "description": "software database snapshot\n",
            "type": "boolean"
          },
          "softwareSnapshot": {
            "description": "software snapshot\n",
            "type": "string"
          },
          "softwareSnapshotId": {
            "description": "software snapshot id\n",
            "type": "string"
          },
          "status": {
            "description": "status\n",
            "type": "string"
          },
          "tags": {
            "description": "tags\n",
            "items": {
              "$ref": "#/types/nutanix:index%2FgetNdbSnapshotTag:getNdbSnapshotTag"
            },
            "type": "array"
          },
          "timeMachineId": {
            "type": "string"
          },
          "timezone": {
            "description": "timezone\n",
            "type": "string"
          },
          "toTimestamp": {
            "description": "to timestamp\n",
            "type": "string"
          },
          "type": {
            "description": "type\n",
            "type": "string"
          }
        },
        "required": [
          "appInfoVersion",
          "applicableTypes",
          "databaseNodeId",
          "databaseSnapshot",
          "dateCreated",
          "dateModified",
          "dbserverId",
          "dbserverIp",
          "dbserverName",
          "dbserverStorageMetadataVersion",
          "description",
          "fromTimestamp",
          "id",
          "lcmConfigs",
          "name",
          "nxClusterId",
          "parentSnapshot",
          "parentSnapshotId",
          "processed",
          "properties",
          "protectionDomainId",
          "replicatedSnapshots",
          "santized",
          "santizedFromSnapshotId",
          "santizedSnapshots",
          "snapshotFamily",
          "snapshotId",
          "snapshotSize",
          "snapshotTimestamp",
          "snapshotTimestampDate",
          "snapshotUuid",
          "softwareDatabaseSnapshot",
          "softwareSnapshot",
          "softwareSnapshotId",
          "status",
          "tags",
          "timeMachineId",
          "timezone",
          "toTimestamp",
          "type"
        ],
        "type": "object"
      }
    },
    "nutanix:index/getNdbSnapshots:getNdbSnapshots": {
      "description": "List all snapshots present in Nutanix Database Service\n\n",
      "inputs": {
        "description": "A collection of arguments for invoking getNdbSnapshots.\n",
        "properties": {
          "filters": {
            "type": "array",
            "items": {
              "$ref": "#/types/nutanix:index%2FgetNdbSnapshotsFilter:getNdbSnapshotsFilter"
            },
            "description": "filters help to fetch the snapshots based on input\n"
          }
        },
        "type": "object"
      },
      "outputs": {
        "description": "A collection of values returned by getNdbSnapshots.\n",
        "properties": {
          "filters": {
            "items": {
              "$ref": "#/types/nutanix:index%2FgetNdbSnapshotsFilter:getNdbSnapshotsFilter"
            },
            "type": "array"
          },
          "id": {
            "description": "The provider-assigned unique ID for this managed resource.",
            "type": "string"
          },
          "snapshots": {
            "items": {
              "$ref": "#/types/nutanix:index%2FgetNdbSnapshotsSnapshot:getNdbSnapshotsSnapshot"
            },
            "type": "array"
          }
        },
        "required": [
          "id",
          "snapshots"
        ],
        "type": "object"
      }
    },
    "nutanix:index/getNdbTag:getNdbTag": {
      "description": "Describes a tag in Nutanix Database Service\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as nutanix from \"@pierskarsenbarg/nutanix\";\n\nconst tag = nutanix.getNdbTag({\n    id: \"{{ tag id }}\",\n});\n```\n```python\nimport pulumi\nimport pulumi_nutanix as nutanix\n\ntag = nutanix.get_ndb_tag(id=\"{{ tag id }}\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Nutanix = Pulumi.Nutanix;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var tag = Nutanix.GetNdbTag.Invoke(new()\n    {\n        Id = \"{{ tag id }}\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pierskarsenbarg/pulumi-nutanix/sdk/go/nutanix\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := nutanix.LookupNdbTag(ctx, \u0026nutanix.LookupNdbTagArgs{\n\t\t\tId: pulumi.StringRef(\"{{ tag id }}\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.nutanix.NutanixFunctions;\nimport com.pulumi.nutanix.inputs.GetNdbTagArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var tag = NutanixFunctions.getNdbTag(GetNdbTagArgs.builder()\n            .id(\"{{ tag id }}\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  tag:\n    fn::invoke:\n      function: nutanix:getNdbTag\n      arguments:\n        id: '{{ tag id }}'\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
      "inputs": {
        "description": "A collection of arguments for invoking getNdbTag.\n",
        "properties": {
          "id": {
            "type": "string",
            "description": "tag id. Conflicts with  name.\n"
          },
          "name": {
            "type": "string",
            "description": "tag name. Conflicts with id.\n"
          }
        },
        "type": "object"
      },
      "outputs": {
        "description": "A collection of values returned by getNdbTag.\n",
        "properties": {
          "dateCreated": {
            "description": "date created of the tag\n",
            "type": "string"
          },
          "dateModified": {
            "description": "modified date of tha tag\n",
            "type": "string"
          },
          "description": {
            "description": "description for the tag\n",
            "type": "string"
          },
          "entityType": {
            "description": "entity for the tag to be associated with.\n",
            "type": "string"
          },
          "id": {
            "type": "string"
          },
          "name": {
            "description": "name for the tag\n",
            "type": "string"
          },
          "owner": {
            "description": "owner id of the tag\n",
            "type": "string"
          },
          "required": {
            "description": "tag value for entities.\n",
            "type": "boolean"
          },
          "status": {
            "description": "Status of the tag\n",
            "type": "string"
          },
          "values": {
            "description": "value for the tag\n",
            "type": "integer"
          }
        },
        "required": [
          "dateCreated",
          "dateModified",
          "description",
          "entityType",
          "id",
          "name",
          "owner",
          "required",
          "status",
          "values"
        ],
        "type": "object"
      }
    },
    "nutanix:index/getNdbTags:getNdbTags": {
      "description": "List of tags in Nutanix Database Service\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as nutanix from \"@pierskarsenbarg/nutanix\";\n\nconst tags = nutanix.getNdbTags({});\n```\n```python\nimport pulumi\nimport pulumi_nutanix as nutanix\n\ntags = nutanix.get_ndb_tags()\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Nutanix = Pulumi.Nutanix;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var tags = Nutanix.GetNdbTags.Invoke();\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pierskarsenbarg/pulumi-nutanix/sdk/go/nutanix\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := nutanix.GetNdbTags(ctx, \u0026nutanix.GetNdbTagsArgs{}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.nutanix.NutanixFunctions;\nimport com.pulumi.nutanix.inputs.GetNdbTagsArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var tags = NutanixFunctions.getNdbTags(GetNdbTagsArgs.builder()\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  tags:\n    fn::invoke:\n      function: nutanix:getNdbTags\n      arguments: {}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
      "inputs": {
        "description": "A collection of arguments for invoking getNdbTags.\n",
        "properties": {
          "entityType": {
            "type": "string",
            "description": "entity for the tag to be associated with.\n"
          }
        },
        "type": "object"
      },
      "outputs": {
        "description": "A collection of values returned by getNdbTags.\n",
        "properties": {
          "entityType": {
            "description": "entity for the tag to be associated with.\n",
            "type": "string"
          },
          "id": {
            "description": "The provider-assigned unique ID for this managed resource.",
            "type": "string"
          },
          "tags": {
            "description": "List of tags present in NDB.\n",
            "items": {
              "$ref": "#/types/nutanix:index%2FgetNdbTagsTag:getNdbTagsTag"
            },
            "type": "array"
          }
        },
        "required": [
          "id",
          "tags"
        ],
        "type": "object"
      }
    },
    "nutanix:index/getNdbTimeMachine:getNdbTimeMachine": {
      "description": "Describes a time machine present in Nutanix Database Service\n\n",
      "inputs": {
        "description": "A collection of arguments for invoking getNdbTimeMachine.\n",
        "properties": {
          "tags": {
            "type": "array",
            "items": {
              "$ref": "#/types/nutanix:index%2FgetNdbTimeMachineTag:getNdbTimeMachineTag"
            },
            "description": "tags\n"
          },
          "timeMachineId": {
            "type": "string",
            "description": "time machine id\n"
          },
          "timeMachineName": {
            "type": "string",
            "description": "time machine name\n"
          }
        },
        "type": "object"
      },
      "outputs": {
        "description": "A collection of values returned by getNdbTimeMachine.\n",
        "properties": {
          "accessLevel": {
            "description": "access level to time machines\n",
            "type": "string"
          },
          "category": {
            "description": "category of time machine\n",
            "type": "string"
          },
          "clone": {
            "description": "clone time machine or not\n",
            "type": "boolean"
          },
          "clones": {
            "description": "clone info\n",
            "type": "string"
          },
          "clustered": {
            "description": "clustered or not\n",
            "type": "boolean"
          },
          "database": {
            "description": "database info\n",
            "type": "string"
          },
          "databaseId": {
            "description": "database id\n",
            "type": "string"
          },
          "dateCreated": {
            "description": "date created\n",
            "type": "string"
          },
          "dateModified": {
            "description": "date modified\n",
            "type": "string"
          },
          "description": {
            "description": "time machine description\n",
            "type": "string"
          },
          "eaStatus": {
            "description": "ea status of time machine\n",
            "type": "string"
          },
          "id": {
            "description": "time machine id\n",
            "type": "string"
          },
          "internal": {
            "type": "boolean"
          },
          "metric": {
            "description": "Metric info\n",
            "type": "string"
          },
          "name": {
            "description": "time machine name\n",
            "type": "string"
          },
          "ownerId": {
            "type": "string"
          },
          "properties": {
            "description": "properties of time machines\n",
            "items": {
              "$ref": "#/types/nutanix:index%2FgetNdbTimeMachineProperty:getNdbTimeMachineProperty"
            },
            "type": "array"
          },
          "scheduleId": {
            "description": "schedule id\n",
            "type": "string"
          },
          "schedules": {
            "description": "schedule info\n",
            "items": {
              "$ref": "#/types/nutanix:index%2FgetNdbTimeMachineSchedule:getNdbTimeMachineSchedule"
            },
            "type": "array"
          },
          "scope": {
            "description": "scope\n",
            "type": "string"
          },
          "slaId": {
            "description": "sla id\n",
            "type": "string"
          },
          "slaUpdateInProgress": {
            "description": "sla update in progress\n",
            "type": "boolean"
          },
          "slaUpdateMetadata": {
            "description": "sla update metadata\n",
            "type": "string"
          },
          "slas": {
            "description": "sla info\n",
            "items": {
              "$ref": "#/types/nutanix:index%2FgetNdbTimeMachineSla:getNdbTimeMachineSla"
            },
            "type": "array"
          },
          "sourceNxClusters": {
            "description": "source clusters\n",
            "items": {
              "type": "string"
            },
            "type": "array"
          },
          "status": {
            "description": "status of time machine\n",
            "type": "string"
          },
          "tags": {
            "description": "tags\n",
            "items": {
              "$ref": "#/types/nutanix:index%2FgetNdbTimeMachineTag:getNdbTimeMachineTag"
            },
            "type": "array"
          },
          "timeMachineId": {
            "type": "string"
          },
          "timeMachineName": {
            "type": "string"
          },
          "type": {
            "description": "type of time machine\n",
            "type": "string"
          }
        },
        "required": [
          "accessLevel",
          "category",
          "clone",
          "clones",
          "clustered",
          "database",
          "databaseId",
          "dateCreated",
          "dateModified",
          "description",
          "eaStatus",
          "id",
          "internal",
          "metric",
          "name",
          "ownerId",
          "properties",
          "scheduleId",
          "schedules",
          "scope",
          "slaId",
          "slaUpdateInProgress",
          "slaUpdateMetadata",
          "slas",
          "sourceNxClusters",
          "status",
          "tags",
          "type"
        ],
        "type": "object"
      }
    },
    "nutanix:index/getNdbTimeMachines:getNdbTimeMachines": {
      "description": "List all time machines present in Nutanix Database Service\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as nutanix from \"@pierskarsenbarg/nutanix\";\n\nconst tms = nutanix.getNdbTimeMachines({});\n```\n```python\nimport pulumi\nimport pulumi_nutanix as nutanix\n\ntms = nutanix.get_ndb_time_machines()\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Nutanix = Pulumi.Nutanix;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var tms = Nutanix.GetNdbTimeMachines.Invoke();\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pierskarsenbarg/pulumi-nutanix/sdk/go/nutanix\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := nutanix.GetNdbTimeMachines(ctx, map[string]interface{}{}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.nutanix.NutanixFunctions;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var tms = NutanixFunctions.getNdbTimeMachines(%!v(PANIC=Format method: runtime error: invalid memory address or nil pointer dereference);\n\n    }\n}\n```\n```yaml\nvariables:\n  tms:\n    fn::invoke:\n      function: nutanix:getNdbTimeMachines\n      arguments: {}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
      "outputs": {
        "description": "A collection of values returned by getNdbTimeMachines.\n",
        "properties": {
          "id": {
            "description": "The provider-assigned unique ID for this managed resource.",
            "type": "string"
          },
          "timeMachines": {
            "items": {
              "$ref": "#/types/nutanix:index%2FgetNdbTimeMachinesTimeMachine:getNdbTimeMachinesTimeMachine"
            },
            "type": "array"
          }
        },
        "required": [
          "id",
          "timeMachines"
        ],
        "type": "object"
      }
    },
    "nutanix:index/getNdbTmsCapability:getNdbTmsCapability": {
      "inputs": {
        "description": "A collection of arguments for invoking getNdbTmsCapability.\n",
        "properties": {
          "timeMachineId": {
            "type": "string"
          }
        },
        "type": "object",
        "required": [
          "timeMachineId"
        ]
      },
      "outputs": {
        "description": "A collection of values returned by getNdbTmsCapability.\n",
        "properties": {
          "capabilities": {
            "items": {
              "$ref": "#/types/nutanix:index%2FgetNdbTmsCapabilityCapability:getNdbTmsCapabilityCapability"
            },
            "type": "array"
          },
          "capabilityResetTime": {
            "type": "string"
          },
          "databaseIds": {
            "items": {
              "type": "string"
            },
            "type": "array"
          },
          "healWithResetCapability": {
            "type": "boolean"
          },
          "id": {
            "description": "The provider-assigned unique ID for this managed resource.",
            "type": "string"
          },
          "lastContinuousSnapshotTime": {
            "type": "string"
          },
          "lastContinuousSnapshots": {
            "items": {
              "$ref": "#/types/nutanix:index%2FgetNdbTmsCapabilityLastContinuousSnapshot:getNdbTmsCapabilityLastContinuousSnapshot"
            },
            "type": "array"
          },
          "lastDbLogs": {
            "items": {
              "$ref": "#/types/nutanix:index%2FgetNdbTmsCapabilityLastDbLog:getNdbTmsCapabilityLastDbLog"
            },
            "type": "array"
          },
          "logCatchupStartTime": {
            "type": "string"
          },
          "logTimeInfo": {
            "additionalProperties": {
              "type": "string"
            },
            "type": "object"
          },
          "nxClusterAssociationType": {
            "type": "string"
          },
          "nxClusterId": {
            "type": "string"
          },
          "outputTimeZone": {
            "type": "string"
          },
          "overallContinuousRangeEndTime": {
            "type": "string"
          },
          "slaId": {
            "type": "string"
          },
          "source": {
            "type": "boolean"
          },
          "timeMachineId": {
            "type": "string"
          },
          "type": {
            "type": "string"
          }
        },
        "required": [
          "capabilities",
          "capabilityResetTime",
          "databaseIds",
          "healWithResetCapability",
          "id",
          "lastContinuousSnapshotTime",
          "lastContinuousSnapshots",
          "lastDbLogs",
          "logCatchupStartTime",
          "logTimeInfo",
          "nxClusterAssociationType",
          "nxClusterId",
          "outputTimeZone",
          "overallContinuousRangeEndTime",
          "slaId",
          "source",
          "timeMachineId",
          "type"
        ],
        "type": "object"
      }
    },
    "nutanix:index/getNetworkSecurityPoliciesV2:getNetworkSecurityPoliciesV2": {
      "description": "Gets a list of Network Security Policies.\n",
      "inputs": {
        "description": "A collection of arguments for invoking getNetworkSecurityPoliciesV2.\n",
        "properties": {
          "filter": {
            "type": "string",
            "description": "A URL query parameter that allows clients to filter a collection of resources. The filter can be applied to the following fields:\n- createdBy\n- description\n- extId\n- isHitlogEnabled\n- isIpv6TrafficAllowed\n- isSystemDefined\n- name\n- securedGroups\n- state\n- type\n- vpcReference\n"
          },
          "limit": {
            "type": "integer",
            "description": "A URL query parameter that specifies the total number of records returned in the result set. Must be a positive integer between 1 and 100. Any number out of this range will lead to a validation error. If the limit is not provided, a default value of 50 records will be returned in the result set.\n"
          },
          "orderBy": {
            "type": "string",
            "description": "A URL query parameter that allows clients to specify the sort criteria for the returned list of objects. Resources can be sorted in ascending order using asc or descending order using desc. If asc or desc are not specified, the resources will be sorted in ascending order by default. The orderby can be applied to the following fields:\n- creationTime\n- description\n- extId\n- isSystemDefined\n- lastUpdateTime\n- name\n- state\n- type\n"
          },
          "page": {
            "type": "integer",
            "description": "A URL query parameter that specifies the page number of the result set. It must be a positive integer between 0 and the maximum number of pages that are available for that resource. Any number out of this range might lead to no results.\n"
          },
          "select": {
            "type": "string",
            "description": "A URL query parameter that allows clients to request a specific set of properties for each entity or complex type. The select can be applied to the following fields:\n\n- createdBy\n- creationTime\n- description\n- extId\n- isHitlogEnabled\n- isIpv6TrafficAllowed\n- isSystemDefined\n- lastUpdateTime\n- links\n- name\n- rules\n- scope\n- securedGroups\n- state\n- tenantId\n- type\n- vpcReference\n"
          }
        },
        "type": "object"
      },
      "outputs": {
        "description": "A collection of values returned by getNetworkSecurityPoliciesV2.\n",
        "properties": {
          "filter": {
            "type": "string"
          },
          "id": {
            "description": "The provider-assigned unique ID for this managed resource.",
            "type": "string"
          },
          "limit": {
            "type": "integer"
          },
          "networkPolicies": {
            "items": {
              "$ref": "#/types/nutanix:index%2FgetNetworkSecurityPoliciesV2NetworkPolicy:getNetworkSecurityPoliciesV2NetworkPolicy"
            },
            "type": "array"
          },
          "orderBy": {
            "type": "string"
          },
          "page": {
            "type": "integer"
          },
          "select": {
            "type": "string"
          }
        },
        "required": [
          "id",
          "networkPolicies"
        ],
        "type": "object"
      }
    },
    "nutanix:index/getNetworkSecurityPolicyV2:getNetworkSecurityPolicyV2": {
      "description": "Get a Network Security Policy by ExtID\n",
      "inputs": {
        "description": "A collection of arguments for invoking getNetworkSecurityPolicyV2.\n",
        "properties": {
          "extId": {
            "type": "string",
            "description": "Network security policy UUID.\n"
          }
        },
        "type": "object",
        "required": [
          "extId"
        ]
      },
      "outputs": {
        "description": "A collection of values returned by getNetworkSecurityPolicyV2.\n",
        "properties": {
          "createdBy": {
            "description": "created by.\n",
            "type": "string"
          },
          "creationTime": {
            "description": "creation time of NSP\n",
            "type": "string"
          },
          "description": {
            "description": "A user defined annotation for a rule.\n",
            "type": "string"
          },
          "extId": {
            "description": "A globally unique identifier of an instance that is suitable for external consumption.\n",
            "type": "string"
          },
          "id": {
            "description": "The provider-assigned unique ID for this managed resource.",
            "type": "string"
          },
          "isHitlogEnabled": {
            "description": "If Hitlog is enabled.\n",
            "type": "boolean"
          },
          "isIpv6TrafficAllowed": {
            "description": "If Ipv6 Traffic is allowed.\n",
            "type": "boolean"
          },
          "isSystemDefined": {
            "description": "Is system defined NSP\n",
            "type": "boolean"
          },
          "lastUpdateTime": {
            "description": "last updated time\n",
            "type": "string"
          },
          "links": {
            "description": "A HATEOAS style link for the response. Each link contains a user-friendly name identifying the link and an address for retrieving the particular resource.\n",
            "items": {
              "$ref": "#/types/nutanix:index%2FgetNetworkSecurityPolicyV2Link:getNetworkSecurityPolicyV2Link"
            },
            "type": "array"
          },
          "name": {
            "description": "Name of the Flow Network Security Policy.\n",
            "type": "string"
          },
          "rules": {
            "description": "A list of rules that form a policy. For isolation policies, use isolation rules; for application or quarantine policies, use application rules.\n",
            "items": {
              "$ref": "#/types/nutanix:index%2FgetNetworkSecurityPolicyV2Rule:getNetworkSecurityPolicyV2Rule"
            },
            "type": "array"
          },
          "scope": {
            "description": "Defines the scope of the policy. Currently, only ALL_VLAN and VPC_LIST are supported. If scope is not provided, the default is set based on whether vpcReferences field is provided or not.\n",
            "type": "string"
          },
          "securedGroups": {
            "description": "Uuids of the secured groups in the NSP.\n",
            "items": {
              "type": "string"
            },
            "type": "array"
          },
          "state": {
            "description": "Whether the policy is applied or monitored; can be omitted or set null to save the policy without applying or monitoring it.\n",
            "type": "string"
          },
          "tenantId": {
            "description": "A globally unique identifier that represents the tenant that owns this entity\n",
            "type": "string"
          },
          "type": {
            "description": "Icmp service Type. Ignore this field if Type has to be ANY.\n",
            "type": "string"
          },
          "vpcReferences": {
            "description": "A list of external ids for VPCs, used only when the scope of policy is a list of VPCs.\n",
            "items": {
              "type": "string"
            },
            "type": "array"
          }
        },
        "required": [
          "createdBy",
          "creationTime",
          "description",
          "extId",
          "id",
          "isHitlogEnabled",
          "isIpv6TrafficAllowed",
          "isSystemDefined",
          "lastUpdateTime",
          "links",
          "name",
          "rules",
          "scope",
          "securedGroups",
          "state",
          "tenantId",
          "type",
          "vpcReferences"
        ],
        "type": "object"
      }
    },
    "nutanix:index/getNetworkSecurityRule:getNetworkSecurityRule": {
      "description": "Describes a Network security rule\n\n\u003e NOTE: The use of\u003cspan pulumi-lang-nodejs=\" networkSecurityRule \" pulumi-lang-dotnet=\" NetworkSecurityRule \" pulumi-lang-go=\" networkSecurityRule \" pulumi-lang-python=\" network_security_rule \" pulumi-lang-yaml=\" networkSecurityRule \" pulumi-lang-java=\" networkSecurityRule \"\u003e network_security_rule \u003c/span\u003eis only applicable in AHV clusters and requires Microsegmentation to be enabled. This feature is a function of the Flow product and requires a Flow license. For more information on Flow and Microsegmentation please visit https://www.nutanix.com/products/flow\n\n## Example Usage\n\n### Isolate Development VMs From Production VMs And Get Its Information)\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as nutanix from \"@pierskarsenbarg/nutanix\";\n\nconst isolation = new nutanix.NetworkSecurityRule(\"isolation\", {\n    name: \"example-isolation-rule\",\n    description: \"Isolation Rule Example\",\n    isolationRuleAction: \"APPLY\",\n    isolationRuleFirstEntityFilterKindLists: [\"vm\"],\n    isolationRuleFirstEntityFilterType: \"CATEGORIES_MATCH_ALL\",\n    isolationRuleFirstEntityFilterParams: [{\n        name: \"Environment\",\n        values: [\"Dev\"],\n    }],\n    isolationRuleSecondEntityFilterKindLists: [\"vm\"],\n    isolationRuleSecondEntityFilterType: \"CATEGORIES_MATCH_ALL\",\n    isolationRuleSecondEntityFilterParams: [{\n        name: \"Environment\",\n        values: [\"Production\"],\n    }],\n});\nconst test = nutanix.getNetworkSecurityRuleOutput({\n    networkSecurityRuleId: isolation.id,\n});\n```\n```python\nimport pulumi\nimport pulumi_nutanix as nutanix\n\nisolation = nutanix.NetworkSecurityRule(\"isolation\",\n    name=\"example-isolation-rule\",\n    description=\"Isolation Rule Example\",\n    isolation_rule_action=\"APPLY\",\n    isolation_rule_first_entity_filter_kind_lists=[\"vm\"],\n    isolation_rule_first_entity_filter_type=\"CATEGORIES_MATCH_ALL\",\n    isolation_rule_first_entity_filter_params=[{\n        \"name\": \"Environment\",\n        \"values\": [\"Dev\"],\n    }],\n    isolation_rule_second_entity_filter_kind_lists=[\"vm\"],\n    isolation_rule_second_entity_filter_type=\"CATEGORIES_MATCH_ALL\",\n    isolation_rule_second_entity_filter_params=[{\n        \"name\": \"Environment\",\n        \"values\": [\"Production\"],\n    }])\ntest = nutanix.get_network_security_rule_output(network_security_rule_id=isolation.id)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Nutanix = PiersKarsenbarg.Nutanix;\nusing Nutanix = Pulumi.Nutanix;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var isolation = new Nutanix.NetworkSecurityRule(\"isolation\", new()\n    {\n        Name = \"example-isolation-rule\",\n        Description = \"Isolation Rule Example\",\n        IsolationRuleAction = \"APPLY\",\n        IsolationRuleFirstEntityFilterKindLists = new[]\n        {\n            \"vm\",\n        },\n        IsolationRuleFirstEntityFilterType = \"CATEGORIES_MATCH_ALL\",\n        IsolationRuleFirstEntityFilterParams = new[]\n        {\n            new Nutanix.Inputs.NetworkSecurityRuleIsolationRuleFirstEntityFilterParamArgs\n            {\n                Name = \"Environment\",\n                Values = new[]\n                {\n                    \"Dev\",\n                },\n            },\n        },\n        IsolationRuleSecondEntityFilterKindLists = new[]\n        {\n            \"vm\",\n        },\n        IsolationRuleSecondEntityFilterType = \"CATEGORIES_MATCH_ALL\",\n        IsolationRuleSecondEntityFilterParams = new[]\n        {\n            new Nutanix.Inputs.NetworkSecurityRuleIsolationRuleSecondEntityFilterParamArgs\n            {\n                Name = \"Environment\",\n                Values = new[]\n                {\n                    \"Production\",\n                },\n            },\n        },\n    });\n\n    var test = Nutanix.GetNetworkSecurityRule.Invoke(new()\n    {\n        NetworkSecurityRuleId = isolation.Id,\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pierskarsenbarg/pulumi-nutanix/sdk/go/nutanix\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tisolation, err := nutanix.NewNetworkSecurityRule(ctx, \"isolation\", \u0026nutanix.NetworkSecurityRuleArgs{\n\t\t\tName:                pulumi.String(\"example-isolation-rule\"),\n\t\t\tDescription:         pulumi.String(\"Isolation Rule Example\"),\n\t\t\tIsolationRuleAction: pulumi.String(\"APPLY\"),\n\t\t\tIsolationRuleFirstEntityFilterKindLists: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"vm\"),\n\t\t\t},\n\t\t\tIsolationRuleFirstEntityFilterType: pulumi.String(\"CATEGORIES_MATCH_ALL\"),\n\t\t\tIsolationRuleFirstEntityFilterParams: nutanix.NetworkSecurityRuleIsolationRuleFirstEntityFilterParamArray{\n\t\t\t\t\u0026nutanix.NetworkSecurityRuleIsolationRuleFirstEntityFilterParamArgs{\n\t\t\t\t\tName: pulumi.String(\"Environment\"),\n\t\t\t\t\tValues: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"Dev\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t\tIsolationRuleSecondEntityFilterKindLists: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"vm\"),\n\t\t\t},\n\t\t\tIsolationRuleSecondEntityFilterType: pulumi.String(\"CATEGORIES_MATCH_ALL\"),\n\t\t\tIsolationRuleSecondEntityFilterParams: nutanix.NetworkSecurityRuleIsolationRuleSecondEntityFilterParamArray{\n\t\t\t\t\u0026nutanix.NetworkSecurityRuleIsolationRuleSecondEntityFilterParamArgs{\n\t\t\t\t\tName: pulumi.String(\"Environment\"),\n\t\t\t\t\tValues: pulumi.StringArray{\n\t\t\t\t\t\tpulumi.String(\"Production\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_ = nutanix.LookupNetworkSecurityRuleOutput(ctx, nutanix.GetNetworkSecurityRuleOutputArgs{\n\t\t\tNetworkSecurityRuleId: isolation.ID(),\n\t\t}, nil)\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.nutanix.NetworkSecurityRule;\nimport com.pulumi.nutanix.NetworkSecurityRuleArgs;\nimport com.pulumi.nutanix.inputs.NetworkSecurityRuleIsolationRuleFirstEntityFilterParamArgs;\nimport com.pulumi.nutanix.inputs.NetworkSecurityRuleIsolationRuleSecondEntityFilterParamArgs;\nimport com.pulumi.nutanix.NutanixFunctions;\nimport com.pulumi.nutanix.inputs.GetNetworkSecurityRuleArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var isolation = new NetworkSecurityRule(\"isolation\", NetworkSecurityRuleArgs.builder()\n            .name(\"example-isolation-rule\")\n            .description(\"Isolation Rule Example\")\n            .isolationRuleAction(\"APPLY\")\n            .isolationRuleFirstEntityFilterKindLists(\"vm\")\n            .isolationRuleFirstEntityFilterType(\"CATEGORIES_MATCH_ALL\")\n            .isolationRuleFirstEntityFilterParams(NetworkSecurityRuleIsolationRuleFirstEntityFilterParamArgs.builder()\n                .name(\"Environment\")\n                .values(\"Dev\")\n                .build())\n            .isolationRuleSecondEntityFilterKindLists(\"vm\")\n            .isolationRuleSecondEntityFilterType(\"CATEGORIES_MATCH_ALL\")\n            .isolationRuleSecondEntityFilterParams(NetworkSecurityRuleIsolationRuleSecondEntityFilterParamArgs.builder()\n                .name(\"Environment\")\n                .values(\"Production\")\n                .build())\n            .build());\n\n        final var test = NutanixFunctions.getNetworkSecurityRule(GetNetworkSecurityRuleArgs.builder()\n            .networkSecurityRuleId(isolation.id())\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  isolation:\n    type: nutanix:NetworkSecurityRule\n    properties:\n      name: example-isolation-rule\n      description: Isolation Rule Example\n      isolationRuleAction: APPLY\n      isolationRuleFirstEntityFilterKindLists:\n        - vm\n      isolationRuleFirstEntityFilterType: CATEGORIES_MATCH_ALL\n      isolationRuleFirstEntityFilterParams:\n        - name: Environment\n          values:\n            - Dev\n      isolationRuleSecondEntityFilterKindLists:\n        - vm\n      isolationRuleSecondEntityFilterType: CATEGORIES_MATCH_ALL\n      isolationRuleSecondEntityFilterParams:\n        - name: Environment\n          values:\n            - Production\nvariables:\n  test:\n    fn::invoke:\n      function: nutanix:getNetworkSecurityRule\n      arguments:\n        networkSecurityRuleId: ${isolation.id}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
      "inputs": {
        "description": "A collection of arguments for invoking getNetworkSecurityRule.\n",
        "properties": {
          "categories": {
            "type": "array",
            "items": {
              "$ref": "#/types/nutanix:index%2FgetNetworkSecurityRuleCategory:getNetworkSecurityRuleCategory"
            },
            "description": "Categories for the network_security_rule.\n"
          },
          "networkSecurityRuleId": {
            "type": "string",
            "description": "Represents network security rule UUID\n"
          }
        },
        "type": "object",
        "required": [
          "networkSecurityRuleId"
        ]
      },
      "outputs": {
        "description": "A collection of values returned by getNetworkSecurityRule.\n",
        "properties": {
          "adRuleAction": {
            "description": "- These rules govern what flows are allowed. Target group is a required attribute. Empty\u003cspan pulumi-lang-nodejs=\" inboundAllowList \" pulumi-lang-dotnet=\" InboundAllowList \" pulumi-lang-go=\" inboundAllowList \" pulumi-lang-python=\" inbound_allow_list \" pulumi-lang-yaml=\" inboundAllowList \" pulumi-lang-java=\" inboundAllowList \"\u003e inbound_allow_list \u003c/span\u003ewill not anything into target group. Empty\u003cspan pulumi-lang-nodejs=\" outboundAllowList \" pulumi-lang-dotnet=\" OutboundAllowList \" pulumi-lang-go=\" outboundAllowList \" pulumi-lang-python=\" outbound_allow_list \" pulumi-lang-yaml=\" outboundAllowList \" pulumi-lang-java=\" outboundAllowList \"\u003e outbound_allow_list \u003c/span\u003ewill allow everything from target group.\n",
            "type": "string"
          },
          "adRuleInboundAllowLists": {
            "description": "The set of categories that matching VMs need to have.\n",
            "items": {
              "$ref": "#/types/nutanix:index%2FgetNetworkSecurityRuleAdRuleInboundAllowList:getNetworkSecurityRuleAdRuleInboundAllowList"
            },
            "type": "array"
          },
          "adRuleOutboundAllowLists": {
            "items": {
              "$ref": "#/types/nutanix:index%2FgetNetworkSecurityRuleAdRuleOutboundAllowList:getNetworkSecurityRuleAdRuleOutboundAllowList"
            },
            "type": "array"
          },
          "adRuleTargetGroupDefaultInternalPolicy": {
            "description": "- Default policy for communication within target group.\n",
            "type": "string"
          },
          "adRuleTargetGroupFilterKindLists": {
            "description": "- List of kinds associated with this filter.\n",
            "items": {
              "type": "string"
            },
            "type": "array"
          },
          "adRuleTargetGroupFilterParams": {
            "description": "- A list of category key and list of values.\n",
            "items": {
              "$ref": "#/types/nutanix:index%2FgetNetworkSecurityRuleAdRuleTargetGroupFilterParam:getNetworkSecurityRuleAdRuleTargetGroupFilterParam"
            },
            "type": "array"
          },
          "adRuleTargetGroupFilterType": {
            "description": "- The type of the filter being used.\n",
            "type": "string"
          },
          "adRuleTargetGroupPeerSpecificationType": {
            "description": "- Way to identify the object for which rule is applied.\n",
            "type": "string"
          },
          "allowIpv6Traffic": {
            "type": "boolean"
          },
          "apiVersion": {
            "type": "string"
          },
          "appRuleAction": {
            "description": "- These rules govern what flows are allowed. Target group is a required attribute. Empty\u003cspan pulumi-lang-nodejs=\" inboundAllowList \" pulumi-lang-dotnet=\" InboundAllowList \" pulumi-lang-go=\" inboundAllowList \" pulumi-lang-python=\" inbound_allow_list \" pulumi-lang-yaml=\" inboundAllowList \" pulumi-lang-java=\" inboundAllowList \"\u003e inbound_allow_list \u003c/span\u003ewill not anything into target group. Empty\u003cspan pulumi-lang-nodejs=\" outboundAllowList \" pulumi-lang-dotnet=\" OutboundAllowList \" pulumi-lang-go=\" outboundAllowList \" pulumi-lang-python=\" outbound_allow_list \" pulumi-lang-yaml=\" outboundAllowList \" pulumi-lang-java=\" outboundAllowList \"\u003e outbound_allow_list \u003c/span\u003ewill allow everything from target group.\n",
            "type": "string"
          },
          "appRuleInboundAllowLists": {
            "items": {
              "$ref": "#/types/nutanix:index%2FgetNetworkSecurityRuleAppRuleInboundAllowList:getNetworkSecurityRuleAppRuleInboundAllowList"
            },
            "type": "array"
          },
          "appRuleOutboundAllowLists": {
            "items": {
              "$ref": "#/types/nutanix:index%2FgetNetworkSecurityRuleAppRuleOutboundAllowList:getNetworkSecurityRuleAppRuleOutboundAllowList"
            },
            "type": "array"
          },
          "appRuleTargetGroupDefaultInternalPolicy": {
            "description": "- Default policy for communication within target group.\n",
            "type": "string"
          },
          "appRuleTargetGroupFilterKindLists": {
            "description": "- List of kinds associated with this filter.\n",
            "items": {
              "type": "string"
            },
            "type": "array"
          },
          "appRuleTargetGroupFilterParams": {
            "description": "- A list of category key and list of values.\n",
            "items": {
              "$ref": "#/types/nutanix:index%2FgetNetworkSecurityRuleAppRuleTargetGroupFilterParam:getNetworkSecurityRuleAppRuleTargetGroupFilterParam"
            },
            "type": "array"
          },
          "appRuleTargetGroupFilterType": {
            "description": "- The type of the filter being used.\n",
            "type": "string"
          },
          "appRuleTargetGroupPeerSpecificationType": {
            "description": "- Way to identify the object for which rule is applied.\n",
            "type": "string"
          },
          "categories": {
            "description": "Categories for the network_security_rule.\n",
            "items": {
              "$ref": "#/types/nutanix:index%2FgetNetworkSecurityRuleCategory:getNetworkSecurityRuleCategory"
            },
            "type": "array"
          },
          "description": {
            "description": "A description for network_security_rule.\n",
            "type": "string"
          },
          "id": {
            "description": "The provider-assigned unique ID for this managed resource.",
            "type": "string"
          },
          "isPolicyHitlogEnabled": {
            "type": "boolean"
          },
          "isolationRuleAction": {
            "description": "- These rules are used for environmental isolation.\n",
            "type": "string"
          },
          "isolationRuleFirstEntityFilterKindLists": {
            "description": "- List of kinds associated with this filter.\n",
            "items": {
              "type": "string"
            },
            "type": "array"
          },
          "isolationRuleFirstEntityFilterParams": {
            "description": "- A list of category key and list of values.\n",
            "items": {
              "$ref": "#/types/nutanix:index%2FgetNetworkSecurityRuleIsolationRuleFirstEntityFilterParam:getNetworkSecurityRuleIsolationRuleFirstEntityFilterParam"
            },
            "type": "array"
          },
          "isolationRuleFirstEntityFilterType": {
            "description": "- The type of the filter being used.\n",
            "type": "string"
          },
          "isolationRuleSecondEntityFilterKindLists": {
            "description": "- List of kinds associated with this filter.\n",
            "items": {
              "type": "string"
            },
            "type": "array"
          },
          "isolationRuleSecondEntityFilterParams": {
            "description": "- A list of category key and list of values.\n",
            "items": {
              "$ref": "#/types/nutanix:index%2FgetNetworkSecurityRuleIsolationRuleSecondEntityFilterParam:getNetworkSecurityRuleIsolationRuleSecondEntityFilterParam"
            },
            "type": "array"
          },
          "isolationRuleSecondEntityFilterType": {
            "description": "- The type of the filter being used.\n",
            "type": "string"
          },
          "metadata": {
            "additionalProperties": {
              "type": "string"
            },
            "type": "object"
          },
          "name": {
            "description": "- the name.\n",
            "type": "string"
          },
          "networkSecurityRuleId": {
            "description": "(Required) The ID for the rule you want to retrieve.\n",
            "type": "string"
          },
          "ownerReference": {
            "additionalProperties": {
              "type": "string"
            },
            "description": "The reference to a user.\n",
            "type": "object"
          },
          "projectReference": {
            "additionalProperties": {
              "type": "string"
            },
            "description": "The reference to a project.\n",
            "type": "object"
          },
          "quarantineRuleAction": {
            "description": "These rules are used for quarantining suspected VMs. Target group is a required attribute. Empty\u003cspan pulumi-lang-nodejs=\" inboundAllowList \" pulumi-lang-dotnet=\" InboundAllowList \" pulumi-lang-go=\" inboundAllowList \" pulumi-lang-python=\" inbound_allow_list \" pulumi-lang-yaml=\" inboundAllowList \" pulumi-lang-java=\" inboundAllowList \"\u003e inbound_allow_list \u003c/span\u003ewill not allow anything into target group. Empty\u003cspan pulumi-lang-nodejs=\" outboundAllowList \" pulumi-lang-dotnet=\" OutboundAllowList \" pulumi-lang-go=\" outboundAllowList \" pulumi-lang-python=\" outbound_allow_list \" pulumi-lang-yaml=\" outboundAllowList \" pulumi-lang-java=\" outboundAllowList \"\u003e outbound_allow_list \u003c/span\u003ewill allow everything from target group.\n",
            "type": "string"
          },
          "quarantineRuleInboundAllowLists": {
            "items": {
              "$ref": "#/types/nutanix:index%2FgetNetworkSecurityRuleQuarantineRuleInboundAllowList:getNetworkSecurityRuleQuarantineRuleInboundAllowList"
            },
            "type": "array"
          },
          "quarantineRuleOutboundAllowLists": {
            "items": {
              "$ref": "#/types/nutanix:index%2FgetNetworkSecurityRuleQuarantineRuleOutboundAllowList:getNetworkSecurityRuleQuarantineRuleOutboundAllowList"
            },
            "type": "array"
          },
          "quarantineRuleTargetGroupDefaultInternalPolicy": {
            "description": "- Default policy for communication within target group.\n",
            "type": "string"
          },
          "quarantineRuleTargetGroupFilterKindLists": {
            "description": "- List of kinds associated with this filter.\n",
            "items": {
              "type": "string"
            },
            "type": "array"
          },
          "quarantineRuleTargetGroupFilterParams": {
            "description": "- A list of category key and list of values.\n",
            "items": {
              "$ref": "#/types/nutanix:index%2FgetNetworkSecurityRuleQuarantineRuleTargetGroupFilterParam:getNetworkSecurityRuleQuarantineRuleTargetGroupFilterParam"
            },
            "type": "array"
          },
          "quarantineRuleTargetGroupFilterType": {
            "description": "- The type of the filter being used.\n",
            "type": "string"
          },
          "quarantineRuleTargetGroupPeerSpecificationType": {
            "description": "- Way to identify the object for which rule is applied.\n",
            "type": "string"
          }
        },
        "required": [
          "adRuleAction",
          "adRuleInboundAllowLists",
          "adRuleOutboundAllowLists",
          "adRuleTargetGroupDefaultInternalPolicy",
          "adRuleTargetGroupFilterKindLists",
          "adRuleTargetGroupFilterParams",
          "adRuleTargetGroupFilterType",
          "adRuleTargetGroupPeerSpecificationType",
          "allowIpv6Traffic",
          "apiVersion",
          "appRuleAction",
          "appRuleInboundAllowLists",
          "appRuleOutboundAllowLists",
          "appRuleTargetGroupDefaultInternalPolicy",
          "appRuleTargetGroupFilterKindLists",
          "appRuleTargetGroupFilterParams",
          "appRuleTargetGroupFilterType",
          "appRuleTargetGroupPeerSpecificationType",
          "categories",
          "description",
          "id",
          "isPolicyHitlogEnabled",
          "isolationRuleAction",
          "isolationRuleFirstEntityFilterKindLists",
          "isolationRuleFirstEntityFilterParams",
          "isolationRuleFirstEntityFilterType",
          "isolationRuleSecondEntityFilterKindLists",
          "isolationRuleSecondEntityFilterParams",
          "isolationRuleSecondEntityFilterType",
          "metadata",
          "name",
          "networkSecurityRuleId",
          "ownerReference",
          "projectReference",
          "quarantineRuleAction",
          "quarantineRuleInboundAllowLists",
          "quarantineRuleOutboundAllowLists",
          "quarantineRuleTargetGroupDefaultInternalPolicy",
          "quarantineRuleTargetGroupFilterKindLists",
          "quarantineRuleTargetGroupFilterParams",
          "quarantineRuleTargetGroupFilterType",
          "quarantineRuleTargetGroupPeerSpecificationType"
        ],
        "type": "object"
      }
    },
    "nutanix:index/getNgtConfigurationV2:getNgtConfigurationV2": {
      "description": "Provides Nutanix datasource to Retrieves the Nutanix Guest Tools configuration for a Virtual Machine.\n\n\n## Example\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as nutanix from \"@pierskarsenbarg/nutanix\";\n\nconst example = nutanix.getNgtConfigurationV2({\n    extId: \"f29535e2-6bd8-4782-b879-409f17217b31\",\n});\n```\n```python\nimport pulumi\nimport pulumi_nutanix as nutanix\n\nexample = nutanix.get_ngt_configuration_v2(ext_id=\"f29535e2-6bd8-4782-b879-409f17217b31\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Nutanix = Pulumi.Nutanix;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var example = Nutanix.GetNgtConfigurationV2.Invoke(new()\n    {\n        ExtId = \"f29535e2-6bd8-4782-b879-409f17217b31\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pierskarsenbarg/pulumi-nutanix/sdk/go/nutanix\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := nutanix.GetNgtConfigurationV2(ctx, \u0026nutanix.GetNgtConfigurationV2Args{\n\t\t\tExtId: \"f29535e2-6bd8-4782-b879-409f17217b31\",\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.nutanix.NutanixFunctions;\nimport com.pulumi.nutanix.inputs.GetNgtConfigurationV2Args;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var example = NutanixFunctions.getNgtConfigurationV2(GetNgtConfigurationV2Args.builder()\n            .extId(\"f29535e2-6bd8-4782-b879-409f17217b31\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  example:\n    fn::invoke:\n      function: nutanix:getNgtConfigurationV2\n      arguments:\n        extId: f29535e2-6bd8-4782-b879-409f17217b31\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
      "inputs": {
        "description": "A collection of arguments for invoking getNgtConfigurationV2.\n",
        "properties": {
          "extId": {
            "type": "string",
            "description": "uuid of the Virtual Machine.\n"
          }
        },
        "type": "object",
        "required": [
          "extId"
        ]
      },
      "outputs": {
        "description": "A collection of values returned by getNgtConfigurationV2.\n",
        "properties": {
          "availableVersion": {
            "description": "Version of Nutanix Guest Tools available on the cluster.\n",
            "type": "string"
          },
          "capablities": {
            "description": "The list of the application names that are enabled on the guest VM. [`SELF_SERVICE_RESTORE`, `VSS_SNAPSHOT`]\n",
            "items": {
              "type": "string"
            },
            "type": "array"
          },
          "extId": {
            "description": "uuid of the Virtual Machine.\n",
            "type": "string"
          },
          "guestOsVersion": {
            "description": "Version of the operating system on the VM.\n",
            "type": "string"
          },
          "id": {
            "description": "The provider-assigned unique ID for this managed resource.",
            "type": "string"
          },
          "isEnabled": {
            "description": "Indicates whether Nutanix Guest Tools is enabled or not.\n",
            "type": "boolean"
          },
          "isInstalled": {
            "description": "Indicates whether Nutanix Guest Tools is installed on the VM or not.\n",
            "type": "boolean"
          },
          "isIsoInserted": {
            "description": "Indicates whether Nutanix Guest Tools ISO is inserted or not.\n",
            "type": "boolean"
          },
          "isReachable": {
            "description": "Indicates whether the communication from VM to CVM is active or not.\n",
            "type": "boolean"
          },
          "isVmMobilityDriversInstalled": {
            "description": "Indicates whether the VM mobility drivers are installed on the VM or not.\n",
            "type": "boolean"
          },
          "isVssSnapshotCapable": {
            "description": "Indicates whether the VM is configured to take VSS snapshots through NGT or not.\n",
            "type": "boolean"
          },
          "version": {
            "description": "Version of Nutanix Guest Tools installed on the VM.\n",
            "type": "string"
          }
        },
        "required": [
          "availableVersion",
          "capablities",
          "extId",
          "guestOsVersion",
          "id",
          "isEnabled",
          "isInstalled",
          "isIsoInserted",
          "isReachable",
          "isVmMobilityDriversInstalled",
          "isVssSnapshotCapable",
          "version"
        ],
        "type": "object"
      }
    },
    "nutanix:index/getObjectStoreV2:getObjectStoreV2": {
      "description": "Get an Object store for the provided UUID\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as nutanix from \"@pierskarsenbarg/nutanix\";\n\nconst example = nutanix.getObjectStoreV2({\n    extId: \"95eb5f66-f547-4aea-9af8-b580e2060693\",\n});\n```\n```python\nimport pulumi\nimport pulumi_nutanix as nutanix\n\nexample = nutanix.get_object_store_v2(ext_id=\"95eb5f66-f547-4aea-9af8-b580e2060693\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Nutanix = Pulumi.Nutanix;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var example = Nutanix.GetObjectStoreV2.Invoke(new()\n    {\n        ExtId = \"95eb5f66-f547-4aea-9af8-b580e2060693\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pierskarsenbarg/pulumi-nutanix/sdk/go/nutanix\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := nutanix.LookupObjectStoreV2(ctx, \u0026nutanix.LookupObjectStoreV2Args{\n\t\t\tExtId: \"95eb5f66-f547-4aea-9af8-b580e2060693\",\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.nutanix.NutanixFunctions;\nimport com.pulumi.nutanix.inputs.GetObjectStoreV2Args;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var example = NutanixFunctions.getObjectStoreV2(GetObjectStoreV2Args.builder()\n            .extId(\"95eb5f66-f547-4aea-9af8-b580e2060693\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  example:\n    fn::invoke:\n      function: nutanix:getObjectStoreV2\n      arguments:\n        extId: 95eb5f66-f547-4aea-9af8-b580e2060693\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
      "inputs": {
        "description": "A collection of arguments for invoking getObjectStoreV2.\n",
        "properties": {
          "extId": {
            "type": "string",
            "description": "-(Required) The UUID of the Object store.\n"
          },
          "numWorkerNodes": {
            "type": "integer",
            "description": "- The number of worker nodes (VMs) to be created for the Object store. Each worker node requires 10 vCPUs and 32 GiB of memory.\n"
          }
        },
        "type": "object",
        "required": [
          "extId"
        ]
      },
      "outputs": {
        "description": "A collection of values returned by getObjectStoreV2.\n",
        "properties": {
          "certificateExtIds": {
            "description": "- A list of the UUIDs of the certificates of an Object store.\n",
            "items": {
              "type": "string"
            },
            "type": "array"
          },
          "clusterExtId": {
            "description": "- UUID of the AHV or ESXi cluster.\n",
            "type": "string"
          },
          "creationTime": {
            "description": "- The time when the Object store was created.\n",
            "type": "string"
          },
          "deploymentVersion": {
            "description": "- The deployment version of the Object store.\n",
            "type": "string"
          },
          "description": {
            "description": "- A brief description of the Object store.\n",
            "type": "string"
          },
          "domain": {
            "description": "- The DNS domain/subdomain the Object store belongs to. All the Object stores under one Prism Central must have the same domain name. The domain name must consist of at least 2 parts separated by a '.'. Each part can contain upper and lower case letters, digits, hyphens, or underscores. Each part can be up to 63 characters long. The domain must begin and end with an alphanumeric character. For example - 'objects-0.pc_nutanix.com'.\n",
            "type": "string"
          },
          "extId": {
            "description": "- A globally unique identifier of an instance that is suitable for external consumption.\n",
            "type": "string"
          },
          "id": {
            "description": "The provider-assigned unique ID for this managed resource.",
            "type": "string"
          },
          "lastUpdateTime": {
            "description": "- The time when the Object store was last updated.\n",
            "type": "string"
          },
          "links": {
            "description": "- A HATEOAS style link for the response. Each link contains a user-friendly name identifying the link and an address for retrieving the particular resource.\n",
            "items": {
              "$ref": "#/types/nutanix:index%2FgetObjectStoreV2Link:getObjectStoreV2Link"
            },
            "type": "array"
          },
          "metadatas": {
            "description": "- Metadata associated with this resource.\n",
            "items": {
              "$ref": "#/types/nutanix:index%2FgetObjectStoreV2Metadata:getObjectStoreV2Metadata"
            },
            "type": "array"
          },
          "name": {
            "description": "- The name of the Object store.\n",
            "type": "string"
          },
          "numWorkerNodes": {
            "description": "- The number of worker nodes (VMs) to be created for the Object store. Each worker node requires 10 vCPUs and 32 GiB of memory.\n",
            "type": "integer"
          },
          "publicNetworkIps": {
            "description": "- A list of static IP addresses used as public IPs to access the Object store.\n",
            "items": {
              "$ref": "#/types/nutanix:index%2FgetObjectStoreV2PublicNetworkIp:getObjectStoreV2PublicNetworkIp"
            },
            "type": "array"
          },
          "publicNetworkReference": {
            "description": "- Public network reference of the Object store. This is the subnet UUID for an AHV cluster or the IPAM name for an ESXi cluster.\n",
            "type": "string"
          },
          "region": {
            "description": "- The region in which the Object store is deployed.\n",
            "type": "string"
          },
          "state": {
            "description": "- Enum for the state of the Object store.\n| Enum                                   | Description                                                     |\n|----------------------------------------|-----------------------------------------------------------------|\n| `DEPLOYING_OBJECT_STORE`             | The Object store is being deployed.                             |\n| `OBJECT_STORE_DEPLOYMENT_FAILED`     | The Object store deployment has failed.                         |\n| `DELETING_OBJECT_STORE`              | A deployed Object store is being deleted.                       |\n| `OBJECT_STORE_OPERATION_FAILED`      | There was an error while performing an operation on the Object store. |\n| `UNDEPLOYED_OBJECT_STORE`            | The Object store is not deployed.                               |\n| `OBJECT_STORE_OPERATION_PENDING`     | There is an ongoing operation on the Object store.              |\n| `OBJECT_STORE_AVAILABLE`            | There are no ongoing operations on the deployed Object store.   |\n| `OBJECT_STORE_CERT_CREATION_FAILED`  | Creating the Object store certificate has failed.               |\n| `CREATING_OBJECT_STORE_CERT`         | A certificate is being created for the Object store.            |\n| `OBJECT_STORE_DELETION_FAILED`       | There was an error deleting the Object store.                   |\n",
            "type": "string"
          },
          "storageNetworkDnsIps": {
            "description": "- An unique address that identifies a device on the internet or a local network in IPv4 or IPv6 format.\n",
            "items": {
              "$ref": "#/types/nutanix:index%2FgetObjectStoreV2StorageNetworkDnsIp:getObjectStoreV2StorageNetworkDnsIp"
            },
            "type": "array"
          },
          "storageNetworkReference": {
            "description": "- Reference to the Storage Network of the Object store. This is the subnet UUID for an AHV cluster or the IPAM name for an ESXi cluster.\n",
            "type": "string"
          },
          "storageNetworkVips": {
            "description": "- An unique address that identifies a device on the internet or a local network in IPv4 or IPv6 format.\n",
            "items": {
              "$ref": "#/types/nutanix:index%2FgetObjectStoreV2StorageNetworkVip:getObjectStoreV2StorageNetworkVip"
            },
            "type": "array"
          },
          "tenantId": {
            "description": "- A globally unique identifier that represents the tenant that owns this entity. The system automatically assigns it, and it and is immutable from an API consumer perspective (some use cases may cause this Id to change - For instance, a use case may require the transfer of ownership of the entity, but these cases are handled automatically on the server).\n",
            "type": "string"
          },
          "totalCapacityGib": {
            "description": "- Size of the Object store in GiB.\n",
            "type": "integer"
          }
        },
        "required": [
          "certificateExtIds",
          "clusterExtId",
          "creationTime",
          "deploymentVersion",
          "description",
          "domain",
          "extId",
          "id",
          "lastUpdateTime",
          "links",
          "metadatas",
          "name",
          "numWorkerNodes",
          "publicNetworkIps",
          "publicNetworkReference",
          "region",
          "state",
          "storageNetworkDnsIps",
          "storageNetworkReference",
          "storageNetworkVips",
          "tenantId",
          "totalCapacityGib"
        ],
        "type": "object"
      }
    },
    "nutanix:index/getObjectStoresV2:getObjectStoresV2": {
      "description": "Get an Object store for the provided UUID\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as nutanix from \"@pierskarsenbarg/nutanix\";\n\nconst list = nutanix.getObjectStoresV2({});\nconst filter = nutanix.getObjectStoresV2({\n    filter: \"name eq 'object_store_example'\",\n});\nconst limit = nutanix.getObjectStoresV2({\n    limit: 10,\n});\n```\n```python\nimport pulumi\nimport pulumi_nutanix as nutanix\n\nlist = nutanix.get_object_stores_v2()\nfilter = nutanix.get_object_stores_v2(filter=\"name eq 'object_store_example'\")\nlimit = nutanix.get_object_stores_v2(limit=10)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Nutanix = Pulumi.Nutanix;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var list = Nutanix.GetObjectStoresV2.Invoke();\n\n    var filter = Nutanix.GetObjectStoresV2.Invoke(new()\n    {\n        Filter = \"name eq 'object_store_example'\",\n    });\n\n    var limit = Nutanix.GetObjectStoresV2.Invoke(new()\n    {\n        Limit = 10,\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pierskarsenbarg/pulumi-nutanix/sdk/go/nutanix\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := nutanix.GetObjectStoresV2(ctx, \u0026nutanix.GetObjectStoresV2Args{}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = nutanix.GetObjectStoresV2(ctx, \u0026nutanix.GetObjectStoresV2Args{\n\t\t\tFilter: pulumi.StringRef(\"name eq 'object_store_example'\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = nutanix.GetObjectStoresV2(ctx, \u0026nutanix.GetObjectStoresV2Args{\n\t\t\tLimit: pulumi.IntRef(10),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.nutanix.NutanixFunctions;\nimport com.pulumi.nutanix.inputs.GetObjectStoresV2Args;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var list = NutanixFunctions.getObjectStoresV2(GetObjectStoresV2Args.builder()\n            .build());\n\n        final var filter = NutanixFunctions.getObjectStoresV2(GetObjectStoresV2Args.builder()\n            .filter(\"name eq 'object_store_example'\")\n            .build());\n\n        final var limit = NutanixFunctions.getObjectStoresV2(GetObjectStoresV2Args.builder()\n            .limit(10)\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  list:\n    fn::invoke:\n      function: nutanix:getObjectStoresV2\n      arguments: {}\n  filter:\n    fn::invoke:\n      function: nutanix:getObjectStoresV2\n      arguments:\n        filter: name eq 'object_store_example'\n  limit:\n    fn::invoke:\n      function: nutanix:getObjectStoresV2\n      arguments:\n        limit: 10\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
      "inputs": {
        "description": "A collection of arguments for invoking getObjectStoresV2.\n",
        "properties": {
          "expand": {
            "type": "string",
            "description": "-(Optional) A URL query parameter that allows clients to request related resources when a resource that satisfies a particular request is retrieved. Each expanded item is evaluated relative to the entity containing the property being expanded. Other query options can be applied to an expanded property by appending a semicolon-separated list of query options, enclosed in parentheses, to the property name. Permissible system query options are \\$filter, \\$select and \\$orderby. The following expansion keys are supported:\n- certificates\n"
          },
          "filter": {
            "type": "string",
            "description": "-(Optional) A URL query parameter that allows clients to filter a collection of resources. The expression specified with \\$filter is evaluated for each resource in the collection, and only items where the expression evaluates to true are included in the response. Expression specified with the \\$filter must conform to the OData V4.01 URL conventions. The filter can be applied to the following fields:\n- certificateExtIds\n- clusterExtId\n- creationTime\n- deploymentVersion\n- description\n- domain\n- lastUpdateTime\n- name\n- numWorkerNodes\n- publicNetworkIps/ipv4/value\n- publicNetworkIps/ipv6/value\n- publicNetworkReference\n- region\n- storageNetworkDnsIp/ipv4/value\n- storageNetworkDnsIp/ipv6/value\n- storageNetworkReference\n- storageNetworkVip/ipv4/value\n- storageNetworkVip/ipv6/value\n- totalCapacityGiB\n"
          },
          "limit": {
            "type": "integer",
            "description": "-(Optional) A URL query parameter that specifies the total number of records returned in the result set. Must be a positive integer between 1 and 100. Any number out of this range will lead to a validation error. If the limit is not provided, a default value of 50 records will be returned in the result set. Default value is 50.\n"
          },
          "orderBy": {
            "type": "string",
            "description": "A URL query parameter that allows clients to specify the sort criteria for the returned list of objects. Resources can be sorted in ascending order using asc or descending order using desc. If asc or desc are not specified, the resources will be sorted in ascending order by default. The orderby can be applied to the following fields:\n- clusterExtId\n- creationTime\n- deploymentVersion\n- description\n- domain\n- lastUpdateTime\n- name\n- numWorkerNodes\n- publicNetworkReference\n- region\n- storageNetworkReference\n- totalCapacityGiB\n"
          },
          "page": {
            "type": "integer",
            "description": "-(Optional) A URL query parameter that specifies the page number of the result set. It must be a positive integer between 0 and the maximum number of pages that are available for that resource. Any number out of this range might lead to no results. Default value is 0.\n"
          },
          "select": {
            "type": "string",
            "description": "A URL query parameter that allows clients to request a specific set of properties for each entity or complex type. Expression specified with the \\$select must conform to the OData V4.01 URL conventions. If a \\$select expression consists of a single select item that is an asterisk (i.e., *), then all properties on the matching resource will be returned. it can be applied to the following fields:\n- certificateExtIds\n- clusterExtId\n- creationTime\n- deploymentVersion\n- description\n- domain\n- lastUpdateTime\n- name\n- numWorkerNodes\n- publicNetworkIps\n- publicNetworkIps/ipv4/value\n- publicNetworkReference\n- region\n- state\n- storageNetworkDnsIp\n- storageNetworkDnsIp/ipv4/value\n- storageNetworkReference\n- storageNetworkVip\n- storageNetworkVip/ipv4/value\n- totalCapacityGiB\n"
          }
        },
        "type": "object"
      },
      "outputs": {
        "description": "A collection of values returned by getObjectStoresV2.\n",
        "properties": {
          "expand": {
            "type": "string"
          },
          "filter": {
            "type": "string"
          },
          "id": {
            "description": "The provider-assigned unique ID for this managed resource.",
            "type": "string"
          },
          "limit": {
            "type": "integer"
          },
          "objectStores": {
            "description": "- A list of Object stores.\n",
            "items": {
              "$ref": "#/types/nutanix:index%2FgetObjectStoresV2ObjectStore:getObjectStoresV2ObjectStore"
            },
            "type": "array"
          },
          "orderBy": {
            "type": "string"
          },
          "page": {
            "type": "integer"
          },
          "select": {
            "type": "string"
          }
        },
        "required": [
          "id",
          "objectStores"
        ],
        "type": "object"
      }
    },
    "nutanix:index/getOperationV2:getOperationV2": {
      "description": "Fetches an operation based on the external identifier.\n\n## Example\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as nutanix from \"@pierskarsenbarg/nutanix\";\n\nconst operation = nutanix.getOperationV2({\n    extId: \"8a938cc5-282b-48c4-81be-de22de145d07\",\n});\n```\n```python\nimport pulumi\nimport pulumi_nutanix as nutanix\n\noperation = nutanix.get_operation_v2(ext_id=\"8a938cc5-282b-48c4-81be-de22de145d07\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Nutanix = Pulumi.Nutanix;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var operation = Nutanix.GetOperationV2.Invoke(new()\n    {\n        ExtId = \"8a938cc5-282b-48c4-81be-de22de145d07\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pierskarsenbarg/pulumi-nutanix/sdk/go/nutanix\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := nutanix.GetOperationV2(ctx, \u0026nutanix.GetOperationV2Args{\n\t\t\tExtId: \"8a938cc5-282b-48c4-81be-de22de145d07\",\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.nutanix.NutanixFunctions;\nimport com.pulumi.nutanix.inputs.GetOperationV2Args;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var operation = NutanixFunctions.getOperationV2(GetOperationV2Args.builder()\n            .extId(\"8a938cc5-282b-48c4-81be-de22de145d07\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  operation:\n    fn::invoke:\n      function: nutanix:getOperationV2\n      arguments:\n        extId: 8a938cc5-282b-48c4-81be-de22de145d07\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
      "inputs": {
        "description": "A collection of arguments for invoking getOperationV2.\n",
        "properties": {
          "extId": {
            "type": "string",
            "description": "ExtId of the Operation.\n"
          }
        },
        "type": "object",
        "required": [
          "extId"
        ]
      },
      "outputs": {
        "description": "A collection of values returned by getOperationV2.\n",
        "properties": {
          "associatedEndpointLists": {
            "description": "List of associated endpoint objects for the Operation.\n",
            "items": {
              "$ref": "#/types/nutanix:index%2FgetOperationV2AssociatedEndpointList:getOperationV2AssociatedEndpointList"
            },
            "type": "array"
          },
          "clientName": {
            "description": "Client that created the entity.\n",
            "type": "string"
          },
          "createdTime": {
            "description": "Permission creation time\n",
            "type": "string"
          },
          "description": {
            "description": "Permission description\n",
            "type": "string"
          },
          "displayName": {
            "description": "Permission name.\n",
            "type": "string"
          },
          "entityType": {
            "description": "Type of entity associated with this Operation.\n",
            "type": "string"
          },
          "extId": {
            "description": "A globally unique identifier of an instance that is suitable for external consumption.\n",
            "type": "string"
          },
          "id": {
            "description": "The provider-assigned unique ID for this managed resource.",
            "type": "string"
          },
          "lastUpdatedTime": {
            "description": "Permission last updated time.\n",
            "type": "string"
          },
          "operationType": {
            "description": "The Operation type. Currently we support INTERNAL, EXTERNAL and SYSTEM_DEFINED_ONLY.\n",
            "type": "string"
          },
          "relatedOperationLists": {
            "description": "List of related Operations. These are the Operations which might need to be given access to, along with the current Operation, for certain workflows to succeed.\n",
            "items": {
              "type": "string"
            },
            "type": "array"
          }
        },
        "required": [
          "associatedEndpointLists",
          "clientName",
          "createdTime",
          "description",
          "displayName",
          "entityType",
          "extId",
          "id",
          "lastUpdatedTime",
          "operationType",
          "relatedOperationLists"
        ],
        "type": "object"
      }
    },
    "nutanix:index/getOperationsV2:getOperationsV2": {
      "description": "Lists the operations defined on the system. List of operations can be further filtered out using various filtering options.\n\n## Example\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as nutanix from \"@pierskarsenbarg/nutanix\";\n\n//list operations\nconst operation_list = nutanix.getOperationsV2({});\n// filtered list operation\nconst operation_list_filtered = nutanix.getOperationsV2({\n    filter: \"displayName eq 'Create_Role'\",\n});\n// list operations withe page and limit\nconst operation_list_paginated = nutanix.getOperationsV2({\n    page: 1,\n    limit: 10,\n});\n```\n```python\nimport pulumi\nimport pulumi_nutanix as nutanix\n\n#list operations\noperation_list = nutanix.get_operations_v2()\n# filtered list operation\noperation_list_filtered = nutanix.get_operations_v2(filter=\"displayName eq 'Create_Role'\")\n# list operations withe page and limit\noperation_list_paginated = nutanix.get_operations_v2(page=1,\n    limit=10)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Nutanix = Pulumi.Nutanix;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    //list operations\n    var operation_list = Nutanix.GetOperationsV2.Invoke();\n\n    // filtered list operation\n    var operation_list_filtered = Nutanix.GetOperationsV2.Invoke(new()\n    {\n        Filter = \"displayName eq 'Create_Role'\",\n    });\n\n    // list operations withe page and limit\n    var operation_list_paginated = Nutanix.GetOperationsV2.Invoke(new()\n    {\n        Page = 1,\n        Limit = 10,\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pierskarsenbarg/pulumi-nutanix/sdk/go/nutanix\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t// list operations\n\t\t_, err := nutanix.GetOperationsV2(ctx, \u0026nutanix.GetOperationsV2Args{}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t// filtered list operation\n\t\t_, err = nutanix.GetOperationsV2(ctx, \u0026nutanix.GetOperationsV2Args{\n\t\t\tFilter: pulumi.StringRef(\"displayName eq 'Create_Role'\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t// list operations withe page and limit\n\t\t_, err = nutanix.GetOperationsV2(ctx, \u0026nutanix.GetOperationsV2Args{\n\t\t\tPage:  pulumi.IntRef(1),\n\t\t\tLimit: pulumi.IntRef(10),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.nutanix.NutanixFunctions;\nimport com.pulumi.nutanix.inputs.GetOperationsV2Args;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        //list operations\n        final var operation-list = NutanixFunctions.getOperationsV2(GetOperationsV2Args.builder()\n            .build());\n\n        // filtered list operation\n        final var operation-list-filtered = NutanixFunctions.getOperationsV2(GetOperationsV2Args.builder()\n            .filter(\"displayName eq 'Create_Role'\")\n            .build());\n\n        // list operations withe page and limit\n        final var operation-list-paginated = NutanixFunctions.getOperationsV2(GetOperationsV2Args.builder()\n            .page(1)\n            .limit(10)\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  #list operations\n  operation-list:\n    fn::invoke:\n      function: nutanix:getOperationsV2\n      arguments: {}\n  # filtered list operation\n  operation-list-filtered:\n    fn::invoke:\n      function: nutanix:getOperationsV2\n      arguments:\n        filter: displayName eq 'Create_Role'\n  # list operations withe page and limit\n  operation-list-paginated:\n    fn::invoke:\n      function: nutanix:getOperationsV2\n      arguments:\n        page: 1\n        limit: 10\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
      "inputs": {
        "description": "A collection of arguments for invoking getOperationsV2.\n",
        "properties": {
          "filter": {
            "type": "string",
            "description": "A URL query parameter that allows clients to filter a collection of resources. The expression specified with \\$filter is evaluated for each resource in the collection, and only items where the expression evaluates to true are included in the response. Expression specified with the \\$filter must conform to the OData V4.01 URL conventions. The filter can be applied to the following fields:\n- clientName\n- createdTime\n- displayName\n- entityType\n- extId\n- lastUpdatedTime\n- operationType\n"
          },
          "limit": {
            "type": "integer",
            "description": "A URL query parameter that specifies the total number of records returned in the result set. Must be a positive integer between 1 and 100. Any number out of this range will lead to a validation error. If the limit is not provided, a default value of 50 records will be returned in the result set.\n"
          },
          "orderBy": {
            "type": "string",
            "description": "A URL query parameter that allows clients to specify the sort criteria for the returned list of objects. Resources can be sorted in ascending order using asc or descending order using desc. If asc or desc are not specified, the resources will be sorted in ascending order by default. The orderby can be applied to the following fields:\n- createdTime\n- displayName\n- entityType\n- extId\n- lastUpdatedTime\n"
          },
          "page": {
            "type": "integer",
            "description": "A URL query parameter that specifies the page number of the result set. It must be a positive integer between 0 and the maximum number of pages that are available for that resource. Any number out of this range might lead to no results.\n"
          },
          "select": {
            "type": "string",
            "description": "A URL query parameter that allows clients to request a specific set of properties for each entity or complex type. Expression specified with the \\$select must conform to the OData V4.01 URL conventions. If a \\$select expression consists of a single select item that is an asterisk (i.e., *), then all properties on the matching resource will be returned. it can be applied to the following fields:\n- associatedEndpointList\n- clientName\n- createdTime\n- description\n- displayName\n- entityType\n- extId\n- lastUpdatedTime\n- links\n- operationType\n- relatedOperationList\n- tenantId\n"
          }
        },
        "type": "object"
      },
      "outputs": {
        "description": "A collection of values returned by getOperationsV2.\n",
        "properties": {
          "filter": {
            "description": "A URL query parameter that allows clients to filter a collection of resources. The expression specified with \\$filter is evaluated for each resource in the collection, and only items where the expression evaluates to true are included in the response. Expression specified with the \\$filter must conform to the OData V4.01 URL conventions. The filter can be applied to the following fields:\n- clientName\n- createdTime\n- displayName\n- entityType\n- extId\n- lastUpdatedTime\n- operationType\n",
            "type": "string"
          },
          "id": {
            "description": "The provider-assigned unique ID for this managed resource.",
            "type": "string"
          },
          "limit": {
            "description": "A URL query parameter that specifies the total number of records returned in the result set. Must be a positive integer between 1 and 100. Any number out of this range will lead to a validation error. If the limit is not provided, a default value of 50 records will be returned in the result set.\n",
            "type": "integer"
          },
          "operations": {
            "description": "List of all operations\n",
            "items": {
              "$ref": "#/types/nutanix:index%2FgetOperationsV2Operation:getOperationsV2Operation"
            },
            "type": "array"
          },
          "orderBy": {
            "description": "A URL query parameter that allows clients to specify the sort criteria for the returned list of objects. Resources can be sorted in ascending order using asc or descending order using desc. If asc or desc are not specified, the resources will be sorted in ascending order by default. The orderby can be applied to the following fields:\n- createdTime\n- displayName\n- entityType\n- extId\n- lastUpdatedTime\n",
            "type": "string"
          },
          "page": {
            "description": "A URL query parameter that specifies the page number of the result set. It must be a positive integer between 0 and the maximum number of pages that are available for that resource. Any number out of this range might lead to no results.\n",
            "type": "integer"
          },
          "select": {
            "description": "A URL query parameter that allows clients to request a specific set of properties for each entity or complex type. Expression specified with the \\$select must conform to the OData V4.01 URL conventions. If a \\$select expression consists of a single select item that is an asterisk (i.e., *), then all properties on the matching resource will be returned. it can be applied to the following fields:\n- associatedEndpointList\n- clientName\n- createdTime\n- description\n- displayName\n- entityType\n- extId\n- lastUpdatedTime\n- links\n- operationType\n- relatedOperationList\n- tenantId\n",
            "type": "string"
          }
        },
        "required": [
          "id",
          "operations"
        ],
        "type": "object"
      }
    },
    "nutanix:index/getPbr:getPbr": {
      "description": "Provides a datasource to retrieve PBR with\u003cspan pulumi-lang-nodejs=\" pbrUuid \" pulumi-lang-dotnet=\" PbrUuid \" pulumi-lang-go=\" pbrUuid \" pulumi-lang-python=\" pbr_uuid \" pulumi-lang-yaml=\" pbrUuid \" pulumi-lang-java=\" pbrUuid \"\u003e pbr_uuid \u003c/span\u003e.\n\n",
      "inputs": {
        "description": "A collection of arguments for invoking getPbr.\n",
        "properties": {
          "pbrUuid": {
            "type": "string",
            "description": "pbr UUID\n"
          }
        },
        "type": "object",
        "required": [
          "pbrUuid"
        ]
      },
      "outputs": {
        "description": "A collection of values returned by getPbr.\n",
        "properties": {
          "apiVersion": {
            "description": "The version of the API.\n",
            "type": "string"
          },
          "id": {
            "description": "The provider-assigned unique ID for this managed resource.",
            "type": "string"
          },
          "metadata": {
            "additionalProperties": {
              "type": "string"
            },
            "description": "- The routing policies kind metadata.\n",
            "type": "object"
          },
          "pbrUuid": {
            "type": "string"
          },
          "specs": {
            "description": "PBR input spec\n",
            "items": {
              "$ref": "#/types/nutanix:index%2FgetPbrSpec:getPbrSpec"
            },
            "type": "array"
          },
          "statuses": {
            "description": "PBR output status\n",
            "items": {
              "$ref": "#/types/nutanix:index%2FgetPbrStatus:getPbrStatus"
            },
            "type": "array"
          }
        },
        "required": [
          "apiVersion",
          "id",
          "metadata",
          "pbrUuid",
          "specs",
          "statuses"
        ],
        "type": "object"
      }
    },
    "nutanix:index/getPbrV2:getPbrV2": {
      "description": "Get a single Routing Policy corresponding to the extId.\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as nutanix from \"@pierskarsenbarg/nutanix\";\n\nconst get_pbr = nutanix.getPbrV2({\n    extId: \"96a22c81-ed58-4bed-96bc-46b488626612\",\n});\n```\n```python\nimport pulumi\nimport pulumi_nutanix as nutanix\n\nget_pbr = nutanix.get_pbr_v2(ext_id=\"96a22c81-ed58-4bed-96bc-46b488626612\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Nutanix = Pulumi.Nutanix;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var get_pbr = Nutanix.GetPbrV2.Invoke(new()\n    {\n        ExtId = \"96a22c81-ed58-4bed-96bc-46b488626612\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pierskarsenbarg/pulumi-nutanix/sdk/go/nutanix\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := nutanix.LookupPbrV2(ctx, \u0026nutanix.LookupPbrV2Args{\n\t\t\tExtId: \"96a22c81-ed58-4bed-96bc-46b488626612\",\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.nutanix.NutanixFunctions;\nimport com.pulumi.nutanix.inputs.GetPbrV2Args;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var get-pbr = NutanixFunctions.getPbrV2(GetPbrV2Args.builder()\n            .extId(\"96a22c81-ed58-4bed-96bc-46b488626612\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  get-pbr:\n    fn::invoke:\n      function: nutanix:getPbrV2\n      arguments:\n        extId: 96a22c81-ed58-4bed-96bc-46b488626612\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
      "inputs": {
        "description": "A collection of arguments for invoking getPbrV2.\n",
        "properties": {
          "extId": {
            "type": "string",
            "description": "pbr UUID\n"
          }
        },
        "type": "object",
        "required": [
          "extId"
        ]
      },
      "outputs": {
        "description": "A collection of values returned by getPbrV2.\n",
        "properties": {
          "description": {
            "description": "A description of the routing policy.\n",
            "type": "string"
          },
          "extId": {
            "type": "string"
          },
          "id": {
            "description": "The provider-assigned unique ID for this managed resource.",
            "type": "string"
          },
          "links": {
            "description": "A HATEOAS style link for the response. Each link contains a user-friendly name identifying the link and an address for retrieving the particular resource.\n",
            "items": {
              "$ref": "#/types/nutanix:index%2FgetPbrV2Link:getPbrV2Link"
            },
            "type": "array"
          },
          "metadatas": {
            "description": "Metadata associated with this resource.\n",
            "items": {
              "$ref": "#/types/nutanix:index%2FgetPbrV2Metadata:getPbrV2Metadata"
            },
            "type": "array"
          },
          "name": {
            "description": "Name of the routing policy.\n",
            "type": "string"
          },
          "policies": {
            "description": "Routing Policies\n",
            "items": {
              "$ref": "#/types/nutanix:index%2FgetPbrV2Policy:getPbrV2Policy"
            },
            "type": "array"
          },
          "priority": {
            "description": "Priority of the routing policy.\n",
            "type": "integer"
          },
          "tenantId": {
            "description": "A globally unique identifier that represents the tenant that owns this entity\n",
            "type": "string"
          },
          "vpcExtId": {
            "description": "ExtId of the VPC extId to which the routing policy belongs.\n",
            "type": "string"
          },
          "vpcs": {
            "description": "VPC name for projections\n",
            "items": {
              "$ref": "#/types/nutanix:index%2FgetPbrV2Vpc:getPbrV2Vpc"
            },
            "type": "array"
          }
        },
        "required": [
          "description",
          "extId",
          "id",
          "links",
          "metadatas",
          "name",
          "policies",
          "priority",
          "tenantId",
          "vpcExtId",
          "vpcs"
        ],
        "type": "object"
      }
    },
    "nutanix:index/getPbrs:getPbrs": {
      "description": "Provides a datasource to retrieve all the pbrs.\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as nutanix from \"@pierskarsenbarg/nutanix\";\n\nconst test = nutanix.getPbrs({});\n```\n```python\nimport pulumi\nimport pulumi_nutanix as nutanix\n\ntest = nutanix.get_pbrs()\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Nutanix = Pulumi.Nutanix;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var test = Nutanix.GetPbrs.Invoke();\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pierskarsenbarg/pulumi-nutanix/sdk/go/nutanix\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := nutanix.GetPbrs(ctx, \u0026nutanix.GetPbrsArgs{}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.nutanix.NutanixFunctions;\nimport com.pulumi.nutanix.inputs.GetPbrsArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var test = NutanixFunctions.getPbrs(GetPbrsArgs.builder()\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  test:\n    fn::invoke:\n      function: nutanix:getPbrs\n      arguments: {}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
      "inputs": {
        "description": "A collection of arguments for invoking getPbrs.\n",
        "properties": {
          "metadatas": {
            "type": "array",
            "items": {
              "$ref": "#/types/nutanix:index%2FgetPbrsMetadata:getPbrsMetadata"
            },
            "description": "- The routing policies kind metadata.\n"
          }
        },
        "type": "object"
      },
      "outputs": {
        "description": "A collection of values returned by getPbrs.\n",
        "properties": {
          "apiVersion": {
            "description": "version of the API\n",
            "type": "string"
          },
          "entities": {
            "description": "List of PBRs.\n",
            "items": {
              "$ref": "#/types/nutanix:index%2FgetPbrsEntity:getPbrsEntity"
            },
            "type": "array"
          },
          "id": {
            "description": "The provider-assigned unique ID for this managed resource.",
            "type": "string"
          },
          "metadatas": {
            "description": "- The routing policies kind metadata.\n",
            "items": {
              "$ref": "#/types/nutanix:index%2FgetPbrsMetadata:getPbrsMetadata"
            },
            "type": "array"
          }
        },
        "required": [
          "apiVersion",
          "entities",
          "id",
          "metadatas"
        ],
        "type": "object"
      }
    },
    "nutanix:index/getPbrsV2:getPbrsV2": {
      "description": "Get a list of Routing Policies.\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as nutanix from \"@pierskarsenbarg/nutanix\";\n\nconst pbrs = nutanix.getPbrsV2({});\nconst pbrs_filter = nutanix.getPbrsV2({\n    filter: \"name eq 'pbr_example'\",\n});\nconst pbrs_limit = nutanix.getPbrsV2({\n    limit: 10,\n});\nconst pbrs_filter_limit = nutanix.getPbrsV2({\n    filter: \"name eq 'pbr_example'\",\n    limit: 10,\n});\n```\n```python\nimport pulumi\nimport pulumi_nutanix as nutanix\n\npbrs = nutanix.get_pbrs_v2()\npbrs_filter = nutanix.get_pbrs_v2(filter=\"name eq 'pbr_example'\")\npbrs_limit = nutanix.get_pbrs_v2(limit=10)\npbrs_filter_limit = nutanix.get_pbrs_v2(filter=\"name eq 'pbr_example'\",\n    limit=10)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Nutanix = Pulumi.Nutanix;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var pbrs = Nutanix.GetPbrsV2.Invoke();\n\n    var pbrs_filter = Nutanix.GetPbrsV2.Invoke(new()\n    {\n        Filter = \"name eq 'pbr_example'\",\n    });\n\n    var pbrs_limit = Nutanix.GetPbrsV2.Invoke(new()\n    {\n        Limit = 10,\n    });\n\n    var pbrs_filter_limit = Nutanix.GetPbrsV2.Invoke(new()\n    {\n        Filter = \"name eq 'pbr_example'\",\n        Limit = 10,\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pierskarsenbarg/pulumi-nutanix/sdk/go/nutanix\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := nutanix.GetPbrsV2(ctx, \u0026nutanix.GetPbrsV2Args{}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = nutanix.GetPbrsV2(ctx, \u0026nutanix.GetPbrsV2Args{\n\t\t\tFilter: pulumi.StringRef(\"name eq 'pbr_example'\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = nutanix.GetPbrsV2(ctx, \u0026nutanix.GetPbrsV2Args{\n\t\t\tLimit: pulumi.IntRef(10),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = nutanix.GetPbrsV2(ctx, \u0026nutanix.GetPbrsV2Args{\n\t\t\tFilter: pulumi.StringRef(\"name eq 'pbr_example'\"),\n\t\t\tLimit:  pulumi.IntRef(10),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.nutanix.NutanixFunctions;\nimport com.pulumi.nutanix.inputs.GetPbrsV2Args;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var pbrs = NutanixFunctions.getPbrsV2(GetPbrsV2Args.builder()\n            .build());\n\n        final var pbrs-filter = NutanixFunctions.getPbrsV2(GetPbrsV2Args.builder()\n            .filter(\"name eq 'pbr_example'\")\n            .build());\n\n        final var pbrs-limit = NutanixFunctions.getPbrsV2(GetPbrsV2Args.builder()\n            .limit(10)\n            .build());\n\n        final var pbrs-filter-limit = NutanixFunctions.getPbrsV2(GetPbrsV2Args.builder()\n            .filter(\"name eq 'pbr_example'\")\n            .limit(10)\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  pbrs:\n    fn::invoke:\n      function: nutanix:getPbrsV2\n      arguments: {}\n  pbrs-filter:\n    fn::invoke:\n      function: nutanix:getPbrsV2\n      arguments:\n        filter: name eq 'pbr_example'\n  pbrs-limit:\n    fn::invoke:\n      function: nutanix:getPbrsV2\n      arguments:\n        limit: 10\n  pbrs-filter-limit:\n    fn::invoke:\n      function: nutanix:getPbrsV2\n      arguments:\n        filter: name eq 'pbr_example'\n        limit: 10\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
      "inputs": {
        "description": "A collection of arguments for invoking getPbrsV2.\n",
        "properties": {
          "filter": {
            "type": "string",
            "description": "A URL query parameter that allows clients to filter a collection of resources. The filter can be applied to the following fields:\n- name\n- policies/policyAction/actionType\n- policies/policyMatch/protocolType\n- policies/policyMatch/source\n- priority\n- vpcExtId\n"
          },
          "limit": {
            "type": "integer",
            "description": "A URL query parameter that specifies the total number of records returned in the result set. Must be a positive integer between 1 and 100. Any number out of this range will lead to a validation error. If the limit is not provided, a default value of 50 records will be returned in the result set.\n"
          },
          "orderBy": {
            "type": "string",
            "description": "A URL query parameter that allows clients to specify the sort criteria for the returned list of objects. Resources can be sorted in ascending order using asc or descending order using desc. If asc or desc are not specified, the resources will be sorted in ascending order by default. The orderby can be applied to the following fields:\n- name\n- priority\n"
          },
          "page": {
            "type": "integer",
            "description": "A URL query parameter that specifies the page number of the result set. It must be a positive integer between 0 and the maximum number of pages that are available for that resource. Any number out of this range might lead to no results.\n"
          }
        },
        "type": "object"
      },
      "outputs": {
        "description": "A collection of values returned by getPbrsV2.\n",
        "properties": {
          "filter": {
            "type": "string"
          },
          "id": {
            "description": "The provider-assigned unique ID for this managed resource.",
            "type": "string"
          },
          "limit": {
            "type": "integer"
          },
          "orderBy": {
            "type": "string"
          },
          "page": {
            "type": "integer"
          },
          "routingPolicies": {
            "description": "List all of routing policies.\n",
            "items": {
              "$ref": "#/types/nutanix:index%2FgetPbrsV2RoutingPolicy:getPbrsV2RoutingPolicy"
            },
            "type": "array"
          }
        },
        "required": [
          "id",
          "routingPolicies"
        ],
        "type": "object"
      }
    },
    "nutanix:index/getPcBackupTargetV2:getPcBackupTargetV2": {
      "description": "Retrieves the backup targets (cluster or object store) from a domain manager and returns the backup configuration and lastSyncTimestamp parameter to the user.\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as nutanix from \"@pierskarsenbarg/nutanix\";\n\nconst example = nutanix.getPcBackupTargetV2({\n    domainManagerExtId: \"75dde184-3a0e-4f59-a185-03ca1efead17\",\n    extId: \"00062d3d-5d07-0da6-0000-000000028f57\",\n});\n```\n```python\nimport pulumi\nimport pulumi_nutanix as nutanix\n\nexample = nutanix.get_pc_backup_target_v2(domain_manager_ext_id=\"75dde184-3a0e-4f59-a185-03ca1efead17\",\n    ext_id=\"00062d3d-5d07-0da6-0000-000000028f57\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Nutanix = Pulumi.Nutanix;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var example = Nutanix.GetPcBackupTargetV2.Invoke(new()\n    {\n        DomainManagerExtId = \"75dde184-3a0e-4f59-a185-03ca1efead17\",\n        ExtId = \"00062d3d-5d07-0da6-0000-000000028f57\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pierskarsenbarg/pulumi-nutanix/sdk/go/nutanix\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := nutanix.LookupPcBackupTargetV2(ctx, \u0026nutanix.LookupPcBackupTargetV2Args{\n\t\t\tDomainManagerExtId: \"75dde184-3a0e-4f59-a185-03ca1efead17\",\n\t\t\tExtId:              \"00062d3d-5d07-0da6-0000-000000028f57\",\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.nutanix.NutanixFunctions;\nimport com.pulumi.nutanix.inputs.GetPcBackupTargetV2Args;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var example = NutanixFunctions.getPcBackupTargetV2(GetPcBackupTargetV2Args.builder()\n            .domainManagerExtId(\"75dde184-3a0e-4f59-a185-03ca1efead17\")\n            .extId(\"00062d3d-5d07-0da6-0000-000000028f57\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  example:\n    fn::invoke:\n      function: nutanix:getPcBackupTargetV2\n      arguments:\n        domainManagerExtId: 75dde184-3a0e-4f59-a185-03ca1efead17\n        extId: 00062d3d-5d07-0da6-0000-000000028f57\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
      "inputs": {
        "description": "A collection of arguments for invoking getPcBackupTargetV2.\n",
        "properties": {
          "domainManagerExtId": {
            "type": "string",
            "description": "-(Required) A unique identifier for the domain manager.\n"
          },
          "extId": {
            "type": "string",
            "description": "-(Required) A globally unique identifier of an instance that is suitable for external consumption.\n"
          }
        },
        "type": "object",
        "required": [
          "domainManagerExtId",
          "extId"
        ]
      },
      "outputs": {
        "description": "A collection of values returned by getPcBackupTargetV2.\n",
        "properties": {
          "backupPauseReason": {
            "description": "- Specifies a reason why the backup might have paused. This will be empty if the isBackupPaused field is false.\n",
            "type": "string"
          },
          "domainManagerExtId": {
            "type": "string"
          },
          "extId": {
            "description": "- Cluster UUID of a remote cluster.\n",
            "type": "string"
          },
          "id": {
            "description": "The provider-assigned unique ID for this managed resource.",
            "type": "string"
          },
          "isBackupPaused": {
            "description": "- Whether the backup is paused on the given cluster or not.\n",
            "type": "boolean"
          },
          "lastSyncTime": {
            "description": "- Represents the time when the domain manager was last synchronized or copied its configuration data to the backup target. This field is updated every 30 minutes.\n",
            "type": "string"
          },
          "links": {
            "description": "- A HATEOAS style link for the response. Each link contains a user-friendly name identifying the link and an address for retrieving the particular resource.\n",
            "items": {
              "$ref": "#/types/nutanix:index%2FgetPcBackupTargetV2Link:getPcBackupTargetV2Link"
            },
            "type": "array"
          },
          "locations": {
            "description": "- Location of the backup target. For example, a cluster or an object store endpoint, such as AWS s3.\n",
            "items": {
              "$ref": "#/types/nutanix:index%2FgetPcBackupTargetV2Location:getPcBackupTargetV2Location"
            },
            "type": "array"
          },
          "tenantId": {
            "description": "- A globally unique identifier that represents the tenant that owns this entity. The system automatically assigns it, and it and is immutable from an API consumer perspective (some use cases may cause this Id to change - For instance, a use case may require the transfer of ownership of the entity, but these cases are handled automatically on the server).\n",
            "type": "string"
          }
        },
        "required": [
          "backupPauseReason",
          "domainManagerExtId",
          "extId",
          "id",
          "isBackupPaused",
          "lastSyncTime",
          "links",
          "locations",
          "tenantId"
        ],
        "type": "object"
      }
    },
    "nutanix:index/getPcBackupTargetsV2:getPcBackupTargetsV2": {
      "description": "Lists backup targets (cluster or object store) configured for a given domain manager.\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as nutanix from \"@pierskarsenbarg/nutanix\";\n\nconst example = nutanix.getPcBackupTargetsV2({\n    domainManagerExtId: \"75dde184-3a0e-4f59-a185-03ca1efead17\",\n});\n```\n```python\nimport pulumi\nimport pulumi_nutanix as nutanix\n\nexample = nutanix.get_pc_backup_targets_v2(domain_manager_ext_id=\"75dde184-3a0e-4f59-a185-03ca1efead17\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Nutanix = Pulumi.Nutanix;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var example = Nutanix.GetPcBackupTargetsV2.Invoke(new()\n    {\n        DomainManagerExtId = \"75dde184-3a0e-4f59-a185-03ca1efead17\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pierskarsenbarg/pulumi-nutanix/sdk/go/nutanix\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := nutanix.GetPcBackupTargetsV2(ctx, \u0026nutanix.GetPcBackupTargetsV2Args{\n\t\t\tDomainManagerExtId: \"75dde184-3a0e-4f59-a185-03ca1efead17\",\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.nutanix.NutanixFunctions;\nimport com.pulumi.nutanix.inputs.GetPcBackupTargetsV2Args;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var example = NutanixFunctions.getPcBackupTargetsV2(GetPcBackupTargetsV2Args.builder()\n            .domainManagerExtId(\"75dde184-3a0e-4f59-a185-03ca1efead17\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  example:\n    fn::invoke:\n      function: nutanix:getPcBackupTargetsV2\n      arguments:\n        domainManagerExtId: 75dde184-3a0e-4f59-a185-03ca1efead17\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Backup Targets\n\nThe \u003cspan pulumi-lang-nodejs=\"`backupTargets`\" pulumi-lang-dotnet=\"`BackupTargets`\" pulumi-lang-go=\"`backupTargets`\" pulumi-lang-python=\"`backup_targets`\" pulumi-lang-yaml=\"`backupTargets`\" pulumi-lang-java=\"`backupTargets`\"\u003e`backup_targets`\u003c/span\u003e argument supports the following:\n\n- \u003cspan pulumi-lang-nodejs=\"`tenantId`\" pulumi-lang-dotnet=\"`TenantId`\" pulumi-lang-go=\"`tenantId`\" pulumi-lang-python=\"`tenant_id`\" pulumi-lang-yaml=\"`tenantId`\" pulumi-lang-java=\"`tenantId`\"\u003e`tenant_id`\u003c/span\u003e: - A globally unique identifier that represents the tenant that owns this entity. The system automatically assigns it, and it and is immutable from an API consumer perspective (some use cases may cause this Id to change - For instance, a use case may require the transfer of ownership of the entity, but these cases are handled automatically on the server).\n- \u003cspan pulumi-lang-nodejs=\"`extId`\" pulumi-lang-dotnet=\"`ExtId`\" pulumi-lang-go=\"`extId`\" pulumi-lang-python=\"`ext_id`\" pulumi-lang-yaml=\"`extId`\" pulumi-lang-java=\"`extId`\"\u003e`ext_id`\u003c/span\u003e: - A globally unique identifier of an instance that is suitable for external consumption.\n- \u003cspan pulumi-lang-nodejs=\"`links`\" pulumi-lang-dotnet=\"`Links`\" pulumi-lang-go=\"`links`\" pulumi-lang-python=\"`links`\" pulumi-lang-yaml=\"`links`\" pulumi-lang-java=\"`links`\"\u003e`links`\u003c/span\u003e: - A HATEOAS style link for the response. Each link contains a user-friendly name identifying the link and an address for retrieving the particular resource.\n- \u003cspan pulumi-lang-nodejs=\"`location`\" pulumi-lang-dotnet=\"`Location`\" pulumi-lang-go=\"`location`\" pulumi-lang-python=\"`location`\" pulumi-lang-yaml=\"`location`\" pulumi-lang-java=\"`location`\"\u003e`location`\u003c/span\u003e: - Location of the backup target. For example, a cluster or an object store endpoint, such as AWS s3.\n- \u003cspan pulumi-lang-nodejs=\"`lastSyncTime`\" pulumi-lang-dotnet=\"`LastSyncTime`\" pulumi-lang-go=\"`lastSyncTime`\" pulumi-lang-python=\"`last_sync_time`\" pulumi-lang-yaml=\"`lastSyncTime`\" pulumi-lang-java=\"`lastSyncTime`\"\u003e`last_sync_time`\u003c/span\u003e: - Represents the time when the domain manager was last synchronized or copied its configuration data to the backup target. This field is updated every 30 minutes.\n- \u003cspan pulumi-lang-nodejs=\"`isBackupPaused`\" pulumi-lang-dotnet=\"`IsBackupPaused`\" pulumi-lang-go=\"`isBackupPaused`\" pulumi-lang-python=\"`is_backup_paused`\" pulumi-lang-yaml=\"`isBackupPaused`\" pulumi-lang-java=\"`isBackupPaused`\"\u003e`is_backup_paused`\u003c/span\u003e: - Whether the backup is paused on the given cluster or not.\n- \u003cspan pulumi-lang-nodejs=\"`backupPauseReason`\" pulumi-lang-dotnet=\"`BackupPauseReason`\" pulumi-lang-go=\"`backupPauseReason`\" pulumi-lang-python=\"`backup_pause_reason`\" pulumi-lang-yaml=\"`backupPauseReason`\" pulumi-lang-java=\"`backupPauseReason`\"\u003e`backup_pause_reason`\u003c/span\u003e: - Specifies a reason why the backup might have paused. This will be empty if the isBackupPaused field is false.\n\n### Location\n\nThe location argument exports the following:\n\n- \u003cspan pulumi-lang-nodejs=\"`clusterLocation`\" pulumi-lang-dotnet=\"`ClusterLocation`\" pulumi-lang-go=\"`clusterLocation`\" pulumi-lang-python=\"`cluster_location`\" pulumi-lang-yaml=\"`clusterLocation`\" pulumi-lang-java=\"`clusterLocation`\"\u003e`cluster_location`\u003c/span\u003e: - A boolean value indicating whether to enable lockdown mode for a cluster.\n- \u003cspan pulumi-lang-nodejs=\"`objectStoreLocation`\" pulumi-lang-dotnet=\"`ObjectStoreLocation`\" pulumi-lang-go=\"`objectStoreLocation`\" pulumi-lang-python=\"`object_store_location`\" pulumi-lang-yaml=\"`objectStoreLocation`\" pulumi-lang-java=\"`objectStoreLocation`\"\u003e`object_store_location`\u003c/span\u003e: - Currently representing the build information to be used for the cluster creation.\n\n#### Cluster Location\n\nThe \u003cspan pulumi-lang-nodejs=\"`clusterLocation`\" pulumi-lang-dotnet=\"`ClusterLocation`\" pulumi-lang-go=\"`clusterLocation`\" pulumi-lang-python=\"`cluster_location`\" pulumi-lang-yaml=\"`clusterLocation`\" pulumi-lang-java=\"`clusterLocation`\"\u003e`cluster_location`\u003c/span\u003e argument exports the following:\n\n- \u003cspan pulumi-lang-nodejs=\"`config`\" pulumi-lang-dotnet=\"`Config`\" pulumi-lang-go=\"`config`\" pulumi-lang-python=\"`config`\" pulumi-lang-yaml=\"`config`\" pulumi-lang-java=\"`config`\"\u003e`config`\u003c/span\u003e: - Cluster reference of the remote cluster to be connected.\n\n##### Config\n\nThe \u003cspan pulumi-lang-nodejs=\"`config`\" pulumi-lang-dotnet=\"`Config`\" pulumi-lang-go=\"`config`\" pulumi-lang-python=\"`config`\" pulumi-lang-yaml=\"`config`\" pulumi-lang-java=\"`config`\"\u003e`config`\u003c/span\u003e argument exports the following:\n\n- \u003cspan pulumi-lang-nodejs=\"`extId`\" pulumi-lang-dotnet=\"`ExtId`\" pulumi-lang-go=\"`extId`\" pulumi-lang-python=\"`ext_id`\" pulumi-lang-yaml=\"`extId`\" pulumi-lang-java=\"`extId`\"\u003e`ext_id`\u003c/span\u003e: - Cluster UUID of a remote cluster.\n- \u003cspan pulumi-lang-nodejs=\"`name`\" pulumi-lang-dotnet=\"`Name`\" pulumi-lang-go=\"`name`\" pulumi-lang-python=\"`name`\" pulumi-lang-yaml=\"`name`\" pulumi-lang-java=\"`name`\"\u003e`name`\u003c/span\u003e: - Name of the cluster.\n\n#### Object Store Location\n\nThe \u003cspan pulumi-lang-nodejs=\"`objectStoreLocation`\" pulumi-lang-dotnet=\"`ObjectStoreLocation`\" pulumi-lang-go=\"`objectStoreLocation`\" pulumi-lang-python=\"`object_store_location`\" pulumi-lang-yaml=\"`objectStoreLocation`\" pulumi-lang-java=\"`objectStoreLocation`\"\u003e`object_store_location`\u003c/span\u003e argument exports the following:\n\n- \u003cspan pulumi-lang-nodejs=\"`providerConfig`\" pulumi-lang-dotnet=\"`ProviderConfig`\" pulumi-lang-go=\"`providerConfig`\" pulumi-lang-python=\"`provider_config`\" pulumi-lang-yaml=\"`providerConfig`\" pulumi-lang-java=\"`providerConfig`\"\u003e`provider_config`\u003c/span\u003e: -(Required) The base model of S3 object store endpoint where domain manager is backed up.\n- \u003cspan pulumi-lang-nodejs=\"`backupPolicy`\" pulumi-lang-dotnet=\"`BackupPolicy`\" pulumi-lang-go=\"`backupPolicy`\" pulumi-lang-python=\"`backup_policy`\" pulumi-lang-yaml=\"`backupPolicy`\" pulumi-lang-java=\"`backupPolicy`\"\u003e`backup_policy`\u003c/span\u003e: -(Optional) Backup policy for the object store provided.\n\n##### Provider Config\n\nThe \u003cspan pulumi-lang-nodejs=\"`providerConfig`\" pulumi-lang-dotnet=\"`ProviderConfig`\" pulumi-lang-go=\"`providerConfig`\" pulumi-lang-python=\"`provider_config`\" pulumi-lang-yaml=\"`providerConfig`\" pulumi-lang-java=\"`providerConfig`\"\u003e`provider_config`\u003c/span\u003e argument exports the following:\n\n- \u003cspan pulumi-lang-nodejs=\"`bucketName`\" pulumi-lang-dotnet=\"`BucketName`\" pulumi-lang-go=\"`bucketName`\" pulumi-lang-python=\"`bucket_name`\" pulumi-lang-yaml=\"`bucketName`\" pulumi-lang-java=\"`bucketName`\"\u003e`bucket_name`\u003c/span\u003e: - The bucket name of the object store endpoint where backup data of domain manager is to be stored.\n- \u003cspan pulumi-lang-nodejs=\"`region`\" pulumi-lang-dotnet=\"`Region`\" pulumi-lang-go=\"`region`\" pulumi-lang-python=\"`region`\" pulumi-lang-yaml=\"`region`\" pulumi-lang-java=\"`region`\"\u003e`region`\u003c/span\u003e: - The region name of the object store endpoint where backup data of domain manager is stored. Default is `us-east-1`.\n- \u003cspan pulumi-lang-nodejs=\"`credentials`\" pulumi-lang-dotnet=\"`Credentials`\" pulumi-lang-go=\"`credentials`\" pulumi-lang-python=\"`credentials`\" pulumi-lang-yaml=\"`credentials`\" pulumi-lang-java=\"`credentials`\"\u003e`credentials`\u003c/span\u003e: - Secret credentials model for the object store containing access key ID and secret access key.\n\n###### Credentials\n\nThe \u003cspan pulumi-lang-nodejs=\"`credentials`\" pulumi-lang-dotnet=\"`Credentials`\" pulumi-lang-go=\"`credentials`\" pulumi-lang-python=\"`credentials`\" pulumi-lang-yaml=\"`credentials`\" pulumi-lang-java=\"`credentials`\"\u003e`credentials`\u003c/span\u003e argument exports the following:\n\n- \u003cspan pulumi-lang-nodejs=\"`accessKeyId`\" pulumi-lang-dotnet=\"`AccessKeyId`\" pulumi-lang-go=\"`accessKeyId`\" pulumi-lang-python=\"`access_key_id`\" pulumi-lang-yaml=\"`accessKeyId`\" pulumi-lang-java=\"`accessKeyId`\"\u003e`access_key_id`\u003c/span\u003e: - Access key ID for the object store provided for backup target.\n- \u003cspan pulumi-lang-nodejs=\"`secretAccessKey`\" pulumi-lang-dotnet=\"`SecretAccessKey`\" pulumi-lang-go=\"`secretAccessKey`\" pulumi-lang-python=\"`secret_access_key`\" pulumi-lang-yaml=\"`secretAccessKey`\" pulumi-lang-java=\"`secretAccessKey`\"\u003e`secret_access_key`\u003c/span\u003e: - Secret access key for the object store provided for backup target.\n\n##### Backup Policy\n\nThe \u003cspan pulumi-lang-nodejs=\"`backupPolicy`\" pulumi-lang-dotnet=\"`BackupPolicy`\" pulumi-lang-go=\"`backupPolicy`\" pulumi-lang-python=\"`backup_policy`\" pulumi-lang-yaml=\"`backupPolicy`\" pulumi-lang-java=\"`backupPolicy`\"\u003e`backup_policy`\u003c/span\u003e argument exports the following:\n\n- \u003cspan pulumi-lang-nodejs=\"`rpoInMinutes`\" pulumi-lang-dotnet=\"`RpoInMinutes`\" pulumi-lang-go=\"`rpoInMinutes`\" pulumi-lang-python=\"`rpo_in_minutes`\" pulumi-lang-yaml=\"`rpoInMinutes`\" pulumi-lang-java=\"`rpoInMinutes`\"\u003e`rpo_in_minutes`\u003c/span\u003e: - RPO interval in minutes at which the backup will be taken. The Value should be in the range of 60 to 1440.\n\nSee detailed information in [Nutanix List Backup Targets ](https://developers.nutanix.com/api-reference?namespace=prism\u0026version=v4.0#tag/DomainManager/operation/listBackupTargets).\n",
      "inputs": {
        "description": "A collection of arguments for invoking getPcBackupTargetsV2.\n",
        "properties": {
          "domainManagerExtId": {
            "type": "string",
            "description": "-(Required) A unique identifier for the domain manager.\n"
          }
        },
        "type": "object",
        "required": [
          "domainManagerExtId"
        ]
      },
      "outputs": {
        "description": "A collection of values returned by getPcBackupTargetsV2.\n",
        "properties": {
          "backupTargets": {
            "description": "- A list of backup target entities.\n",
            "items": {
              "$ref": "#/types/nutanix:index%2FgetPcBackupTargetsV2BackupTarget:getPcBackupTargetsV2BackupTarget"
            },
            "type": "array"
          },
          "domainManagerExtId": {
            "type": "string"
          },
          "id": {
            "description": "The provider-assigned unique ID for this managed resource.",
            "type": "string"
          }
        },
        "required": [
          "backupTargets",
          "domainManagerExtId",
          "id"
        ],
        "type": "object"
      }
    },
    "nutanix:index/getPcRestorePointV2:getPcRestorePointV2": {
      "description": "Retrieves detailed information about a specific recovery point and provides essential domain manager information stored in the backup, which is required for the restoration process.\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as nutanix from \"@pierskarsenbarg/nutanix\";\n\n// this is PE based module, so use PE provider alias\nconst getRestorePoint = nutanix.getPcRestorePointV2({\n    restorableDomainManagerExtId: testNutanixRestorablePcsV2.restorablePcs[0].extId,\n    restoreSourceExtId: cluster_location.id,\n    extId: test.restorePoints[0].extId,\n});\n```\n```python\nimport pulumi\nimport pulumi_nutanix as nutanix\n\n# this is PE based module, so use PE provider alias\nget_restore_point = nutanix.get_pc_restore_point_v2(restorable_domain_manager_ext_id=test_nutanix_restorable_pcs_v2[\"restorablePcs\"][0][\"extId\"],\n    restore_source_ext_id=cluster_location[\"id\"],\n    ext_id=test[\"restorePoints\"][0][\"extId\"])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Nutanix = Pulumi.Nutanix;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    // this is PE based module, so use PE provider alias\n    var getRestorePoint = Nutanix.GetPcRestorePointV2.Invoke(new()\n    {\n        RestorableDomainManagerExtId = testNutanixRestorablePcsV2.RestorablePcs[0].ExtId,\n        RestoreSourceExtId = cluster_location.Id,\n        ExtId = test.RestorePoints[0].ExtId,\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pierskarsenbarg/pulumi-nutanix/sdk/go/nutanix\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t// this is PE based module, so use PE provider alias\n\t\t_, err := nutanix.GetPcRestorePointV2(ctx, \u0026nutanix.GetPcRestorePointV2Args{\n\t\t\tRestorableDomainManagerExtId: testNutanixRestorablePcsV2.RestorablePcs[0].ExtId,\n\t\t\tRestoreSourceExtId:           cluster_location.Id,\n\t\t\tExtId:                        test.RestorePoints[0].ExtId,\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.nutanix.NutanixFunctions;\nimport com.pulumi.nutanix.inputs.GetPcRestorePointV2Args;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        // this is PE based module, so use PE provider alias\n        final var getRestorePoint = NutanixFunctions.getPcRestorePointV2(GetPcRestorePointV2Args.builder()\n            .restorableDomainManagerExtId(testNutanixRestorablePcsV2.restorablePcs()[0].extId())\n            .restoreSourceExtId(cluster_location.id())\n            .extId(test.restorePoints()[0].extId())\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  # this is PE based module, so use PE provider alias\n  getRestorePoint:\n    fn::invoke:\n      function: nutanix:getPcRestorePointV2\n      arguments:\n        restorableDomainManagerExtId: ${testNutanixRestorablePcsV2.restorablePcs[0].extId}\n        restoreSourceExtId: ${[\"cluster-location\"].id}\n        extId: ${test.restorePoints[0].extId}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
      "inputs": {
        "description": "A collection of arguments for invoking getPcRestorePointV2.\n",
        "properties": {
          "extId": {
            "type": "string",
            "description": "Restore point ID for the backup created in cluster/object store.\n"
          },
          "restorableDomainManagerExtId": {
            "type": "string",
            "description": "A unique identifier for the domain manager.\n"
          },
          "restoreSourceExtId": {
            "type": "string",
            "description": "A unique identifier obtained from the restore source API that corresponds to the details provided for the restore source.\n"
          }
        },
        "type": "object",
        "required": [
          "extId",
          "restorableDomainManagerExtId",
          "restoreSourceExtId"
        ]
      },
      "outputs": {
        "description": "A collection of values returned by getPcRestorePointV2.\n",
        "properties": {
          "creationTime": {
            "description": "The UTC date and time in ISO-8601 format when the Restore point was created.\n",
            "type": "string"
          },
          "domainManagers": {
            "description": "Domain manager (Prism Central) details.\n",
            "items": {
              "$ref": "#/types/nutanix:index%2FgetPcRestorePointV2DomainManager:getPcRestorePointV2DomainManager"
            },
            "type": "array"
          },
          "extId": {
            "description": "- A globally unique identifier of an instance that is suitable for external consumption.\n",
            "type": "string"
          },
          "id": {
            "description": "The provider-assigned unique ID for this managed resource.",
            "type": "string"
          },
          "links": {
            "description": "- A HATEOAS style link for the response. Each link contains a user-friendly name identifying the link and an address for retrieving the particular resource.\n",
            "items": {
              "$ref": "#/types/nutanix:index%2FgetPcRestorePointV2Link:getPcRestorePointV2Link"
            },
            "type": "array"
          },
          "restorableDomainManagerExtId": {
            "type": "string"
          },
          "restoreSourceExtId": {
            "type": "string"
          },
          "tenantId": {
            "description": "- A globally unique identifier that represents the tenant that owns this entity. The system automatically assigns it, and it and is immutable from an API consumer perspective (some use cases may cause this Id to change - For instance, a use case may require the transfer of ownership of the entity, but these cases are handled automatically on the server).\n",
            "type": "string"
          }
        },
        "required": [
          "creationTime",
          "domainManagers",
          "extId",
          "id",
          "links",
          "restorableDomainManagerExtId",
          "restoreSourceExtId",
          "tenantId"
        ],
        "type": "object"
      }
    },
    "nutanix:index/getPcRestorePointsV2:getPcRestorePointsV2": {
      "description": "The list restore points API allows you to retrieve a list of available restore points, which are snapshots of the domain manager taken at different times. These restore points can be used to revert the domain manager to a previous state. The list response includes the creation time and identifier ID for the configuration data.\n\n- For cluster-based backups, only the most recent restore point is available, as backups are continuous.\n- For object store-based backups, multiple restore points may be available, depending on the configured Recovery Point Objective (RPO) and the retention period set on the s3 bucket.\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as nutanix from \"@pierskarsenbarg/nutanix\";\n\n// This pe based module, so use pe provider alias\nconst restorePoints = nutanix.getPcRestorePointsV2({\n    restorableDomainManagerExtId: \"1cf35cfe-a341-4f27-8e31-2f51b79302c4\",\n    restoreSourceExtId: \"ec77405b-16c5-4c8d-ade1-bede241afae0\",\n});\n// list all the restorable pcs with select properties\nconst restorePointsSelect = nutanix.getPcRestorePointsV2({\n    restorableDomainManagerExtId: \"1cf35cfe-a341-4f27-8e31-2f51b79302c4\",\n    restoreSourceExtId: \"ec77405b-16c5-4c8d-ade1-bede241afae0\",\n    select: \"creationTime,domainManager,extId\",\n});\n```\n```python\nimport pulumi\nimport pulumi_nutanix as nutanix\n\n# This pe based module, so use pe provider alias\nrestore_points = nutanix.get_pc_restore_points_v2(restorable_domain_manager_ext_id=\"1cf35cfe-a341-4f27-8e31-2f51b79302c4\",\n    restore_source_ext_id=\"ec77405b-16c5-4c8d-ade1-bede241afae0\")\n# list all the restorable pcs with select properties\nrestore_points_select = nutanix.get_pc_restore_points_v2(restorable_domain_manager_ext_id=\"1cf35cfe-a341-4f27-8e31-2f51b79302c4\",\n    restore_source_ext_id=\"ec77405b-16c5-4c8d-ade1-bede241afae0\",\n    select=\"creationTime,domainManager,extId\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Nutanix = Pulumi.Nutanix;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    // This pe based module, so use pe provider alias\n    var restorePoints = Nutanix.GetPcRestorePointsV2.Invoke(new()\n    {\n        RestorableDomainManagerExtId = \"1cf35cfe-a341-4f27-8e31-2f51b79302c4\",\n        RestoreSourceExtId = \"ec77405b-16c5-4c8d-ade1-bede241afae0\",\n    });\n\n    // list all the restorable pcs with select properties\n    var restorePointsSelect = Nutanix.GetPcRestorePointsV2.Invoke(new()\n    {\n        RestorableDomainManagerExtId = \"1cf35cfe-a341-4f27-8e31-2f51b79302c4\",\n        RestoreSourceExtId = \"ec77405b-16c5-4c8d-ade1-bede241afae0\",\n        Select = \"creationTime,domainManager,extId\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pierskarsenbarg/pulumi-nutanix/sdk/go/nutanix\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t// This pe based module, so use pe provider alias\n\t\t_, err := nutanix.GetPcRestorePointsV2(ctx, \u0026nutanix.GetPcRestorePointsV2Args{\n\t\t\tRestorableDomainManagerExtId: \"1cf35cfe-a341-4f27-8e31-2f51b79302c4\",\n\t\t\tRestoreSourceExtId:           \"ec77405b-16c5-4c8d-ade1-bede241afae0\",\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t// list all the restorable pcs with select properties\n\t\t_, err = nutanix.GetPcRestorePointsV2(ctx, \u0026nutanix.GetPcRestorePointsV2Args{\n\t\t\tRestorableDomainManagerExtId: \"1cf35cfe-a341-4f27-8e31-2f51b79302c4\",\n\t\t\tRestoreSourceExtId:           \"ec77405b-16c5-4c8d-ade1-bede241afae0\",\n\t\t\tSelect:                       pulumi.StringRef(\"creationTime,domainManager,extId\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.nutanix.NutanixFunctions;\nimport com.pulumi.nutanix.inputs.GetPcRestorePointsV2Args;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        // This pe based module, so use pe provider alias\n        final var restorePoints = NutanixFunctions.getPcRestorePointsV2(GetPcRestorePointsV2Args.builder()\n            .restorableDomainManagerExtId(\"1cf35cfe-a341-4f27-8e31-2f51b79302c4\")\n            .restoreSourceExtId(\"ec77405b-16c5-4c8d-ade1-bede241afae0\")\n            .build());\n\n        // list all the restorable pcs with select properties\n        final var restorePointsSelect = NutanixFunctions.getPcRestorePointsV2(GetPcRestorePointsV2Args.builder()\n            .restorableDomainManagerExtId(\"1cf35cfe-a341-4f27-8e31-2f51b79302c4\")\n            .restoreSourceExtId(\"ec77405b-16c5-4c8d-ade1-bede241afae0\")\n            .select(\"creationTime,domainManager,extId\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  # This pe based module, so use pe provider alias\n  restorePoints:\n    fn::invoke:\n      function: nutanix:getPcRestorePointsV2\n      arguments:\n        restorableDomainManagerExtId: 1cf35cfe-a341-4f27-8e31-2f51b79302c4\n        restoreSourceExtId: ec77405b-16c5-4c8d-ade1-bede241afae0\n  # list all the restorable pcs with select properties\n  restorePointsSelect:\n    fn::invoke:\n      function: nutanix:getPcRestorePointsV2\n      arguments:\n        restorableDomainManagerExtId: 1cf35cfe-a341-4f27-8e31-2f51b79302c4\n        restoreSourceExtId: ec77405b-16c5-4c8d-ade1-bede241afae0\n        select: creationTime,domainManager,extId\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Restore Points\n\nThe\u003cspan pulumi-lang-nodejs=\" restorePoints \" pulumi-lang-dotnet=\" RestorePoints \" pulumi-lang-go=\" restorePoints \" pulumi-lang-python=\" restore_points \" pulumi-lang-yaml=\" restorePoints \" pulumi-lang-java=\" restorePoints \"\u003e restore_points \u003c/span\u003eattribute supports the following:\n\n- \u003cspan pulumi-lang-nodejs=\"`extId`\" pulumi-lang-dotnet=\"`ExtId`\" pulumi-lang-go=\"`extId`\" pulumi-lang-python=\"`ext_id`\" pulumi-lang-yaml=\"`extId`\" pulumi-lang-java=\"`extId`\"\u003e`ext_id`\u003c/span\u003e: A globally unique identifier of an instance that is suitable for external consumption.\n- \u003cspan pulumi-lang-nodejs=\"`tenantId`\" pulumi-lang-dotnet=\"`TenantId`\" pulumi-lang-go=\"`tenantId`\" pulumi-lang-python=\"`tenant_id`\" pulumi-lang-yaml=\"`tenantId`\" pulumi-lang-java=\"`tenantId`\"\u003e`tenant_id`\u003c/span\u003e: A globally unique identifier that represents the tenant that owns this entity. The system automatically assigns it, and it and is immutable from an API consumer perspective (some use cases may cause this Id to change - For instance, a use case may require the transfer of ownership of the entity, but these cases are handled automatically on the server).\n- \u003cspan pulumi-lang-nodejs=\"`links`\" pulumi-lang-dotnet=\"`Links`\" pulumi-lang-go=\"`links`\" pulumi-lang-python=\"`links`\" pulumi-lang-yaml=\"`links`\" pulumi-lang-java=\"`links`\"\u003e`links`\u003c/span\u003e: A HATEOAS style link for the response. Each link contains a user-friendly name identifying the link and an address for retrieving the particular resource.\n- \u003cspan pulumi-lang-nodejs=\"`creationTime`\" pulumi-lang-dotnet=\"`CreationTime`\" pulumi-lang-go=\"`creationTime`\" pulumi-lang-python=\"`creation_time`\" pulumi-lang-yaml=\"`creationTime`\" pulumi-lang-java=\"`creationTime`\"\u003e`creation_time`\u003c/span\u003e: The UTC date and time in ISO-8601 format when the Restore point was created.\n- \u003cspan pulumi-lang-nodejs=\"`domainManager`\" pulumi-lang-dotnet=\"`DomainManager`\" pulumi-lang-go=\"`domainManager`\" pulumi-lang-python=\"`domain_manager`\" pulumi-lang-yaml=\"`domainManager`\" pulumi-lang-java=\"`domainManager`\"\u003e`domain_manager`\u003c/span\u003e: Domain manager (Prism Central) details.\n\n### Links\n\nThe links attribute supports the following:\n\n- \u003cspan pulumi-lang-nodejs=\"`href`\" pulumi-lang-dotnet=\"`Href`\" pulumi-lang-go=\"`href`\" pulumi-lang-python=\"`href`\" pulumi-lang-yaml=\"`href`\" pulumi-lang-java=\"`href`\"\u003e`href`\u003c/span\u003e: - The URL at which the entity described by the link can be accessed.\n- \u003cspan pulumi-lang-nodejs=\"`rel`\" pulumi-lang-dotnet=\"`Rel`\" pulumi-lang-go=\"`rel`\" pulumi-lang-python=\"`rel`\" pulumi-lang-yaml=\"`rel`\" pulumi-lang-java=\"`rel`\"\u003e`rel`\u003c/span\u003e: - A name that identifies the relationship of the link to the object that is returned by the URL. The unique value of \"self\" identifies the URL for the object.\n\n### Domain Manager\n\nThe\u003cspan pulumi-lang-nodejs=\" domainManager \" pulumi-lang-dotnet=\" DomainManager \" pulumi-lang-go=\" domainManager \" pulumi-lang-python=\" domain_manager \" pulumi-lang-yaml=\" domainManager \" pulumi-lang-java=\" domainManager \"\u003e domain_manager \u003c/span\u003eattribute supports the following:\n\n- \u003cspan pulumi-lang-nodejs=\"`tenantId`\" pulumi-lang-dotnet=\"`TenantId`\" pulumi-lang-go=\"`tenantId`\" pulumi-lang-python=\"`tenant_id`\" pulumi-lang-yaml=\"`tenantId`\" pulumi-lang-java=\"`tenantId`\"\u003e`tenant_id`\u003c/span\u003e: - A globally unique identifier that represents the tenant that owns this entity. The system automatically assigns it, and it and is immutable from an API consumer perspective (some use cases may cause this Id to change - For instance, a use case may require the transfer of ownership of the entity, but these cases are handled automatically on the server).\n- \u003cspan pulumi-lang-nodejs=\"`extId`\" pulumi-lang-dotnet=\"`ExtId`\" pulumi-lang-go=\"`extId`\" pulumi-lang-python=\"`ext_id`\" pulumi-lang-yaml=\"`extId`\" pulumi-lang-java=\"`extId`\"\u003e`ext_id`\u003c/span\u003e: - A globally unique identifier of an instance that is suitable for external consumption.\n- \u003cspan pulumi-lang-nodejs=\"`links`\" pulumi-lang-dotnet=\"`Links`\" pulumi-lang-go=\"`links`\" pulumi-lang-python=\"`links`\" pulumi-lang-yaml=\"`links`\" pulumi-lang-java=\"`links`\"\u003e`links`\u003c/span\u003e: - A HATEOAS style link for the response. Each link contains a user-friendly name identifying the link and an address for retrieving the particular resource.\n- \u003cspan pulumi-lang-nodejs=\"`config`\" pulumi-lang-dotnet=\"`Config`\" pulumi-lang-go=\"`config`\" pulumi-lang-python=\"`config`\" pulumi-lang-yaml=\"`config`\" pulumi-lang-java=\"`config`\"\u003e`config`\u003c/span\u003e: - Domain manager (Prism Central) cluster configuration details.\n- \u003cspan pulumi-lang-nodejs=\"`isRegisteredWithHostingCluster`\" pulumi-lang-dotnet=\"`IsRegisteredWithHostingCluster`\" pulumi-lang-go=\"`isRegisteredWithHostingCluster`\" pulumi-lang-python=\"`is_registered_with_hosting_cluster`\" pulumi-lang-yaml=\"`isRegisteredWithHostingCluster`\" pulumi-lang-java=\"`isRegisteredWithHostingCluster`\"\u003e`is_registered_with_hosting_cluster`\u003c/span\u003e: - Boolean value indicating if the domain manager (Prism Central) is registered with the hosting cluster, that is, Prism Element.\n- \u003cspan pulumi-lang-nodejs=\"`network`\" pulumi-lang-dotnet=\"`Network`\" pulumi-lang-go=\"`network`\" pulumi-lang-python=\"`network`\" pulumi-lang-yaml=\"`network`\" pulumi-lang-java=\"`network`\"\u003e`network`\u003c/span\u003e: - Domain manager (Prism Central) network configuration details.\n- \u003cspan pulumi-lang-nodejs=\"`hostingClusterExtId`\" pulumi-lang-dotnet=\"`HostingClusterExtId`\" pulumi-lang-go=\"`hostingClusterExtId`\" pulumi-lang-python=\"`hosting_cluster_ext_id`\" pulumi-lang-yaml=\"`hostingClusterExtId`\" pulumi-lang-java=\"`hostingClusterExtId`\"\u003e`hosting_cluster_ext_id`\u003c/span\u003e: - The external identifier of the cluster hosting the domain manager (Prism Central) instance.\n- \u003cspan pulumi-lang-nodejs=\"`shouldEnableHighAvailability`\" pulumi-lang-dotnet=\"`ShouldEnableHighAvailability`\" pulumi-lang-go=\"`shouldEnableHighAvailability`\" pulumi-lang-python=\"`should_enable_high_availability`\" pulumi-lang-yaml=\"`shouldEnableHighAvailability`\" pulumi-lang-java=\"`shouldEnableHighAvailability`\"\u003e`should_enable_high_availability`\u003c/span\u003e: - This configuration enables Prism Central to be deployed in scale-out mode.\n- \u003cspan pulumi-lang-nodejs=\"`nodeExtIds`\" pulumi-lang-dotnet=\"`NodeExtIds`\" pulumi-lang-go=\"`nodeExtIds`\" pulumi-lang-python=\"`node_ext_ids`\" pulumi-lang-yaml=\"`nodeExtIds`\" pulumi-lang-java=\"`nodeExtIds`\"\u003e`node_ext_ids`\u003c/span\u003e: - Domain manager (Prism Central) nodes external identifier.\n\n### Config\n\nThe config argument supports the following :\n\n- \u003cspan pulumi-lang-nodejs=\"`shouldEnableLockdownMode`\" pulumi-lang-dotnet=\"`ShouldEnableLockdownMode`\" pulumi-lang-go=\"`shouldEnableLockdownMode`\" pulumi-lang-python=\"`should_enable_lockdown_mode`\" pulumi-lang-yaml=\"`shouldEnableLockdownMode`\" pulumi-lang-java=\"`shouldEnableLockdownMode`\"\u003e`should_enable_lockdown_mode`\u003c/span\u003e: - A boolean value indicating whether to enable lockdown mode for a cluster.\n- \u003cspan pulumi-lang-nodejs=\"`buildInfo`\" pulumi-lang-dotnet=\"`BuildInfo`\" pulumi-lang-go=\"`buildInfo`\" pulumi-lang-python=\"`build_info`\" pulumi-lang-yaml=\"`buildInfo`\" pulumi-lang-java=\"`buildInfo`\"\u003e`build_info`\u003c/span\u003e: -Currently representing the build information to be used for the cluster creation.\n- \u003cspan pulumi-lang-nodejs=\"`name`\" pulumi-lang-dotnet=\"`Name`\" pulumi-lang-go=\"`name`\" pulumi-lang-python=\"`name`\" pulumi-lang-yaml=\"`name`\" pulumi-lang-java=\"`name`\"\u003e`name`\u003c/span\u003e: - Name of the domain manager (Prism Central).\n- \u003cspan pulumi-lang-nodejs=\"`size`\" pulumi-lang-dotnet=\"`Size`\" pulumi-lang-go=\"`size`\" pulumi-lang-python=\"`size`\" pulumi-lang-yaml=\"`size`\" pulumi-lang-java=\"`size`\"\u003e`size`\u003c/span\u003e: - Domain manager (Prism Central) size is an enumeration of starter, small, large, or extra large starter values. possible values are:\n  - `SMALL` : Domain manager (Prism Central) of size small.\n  - `LARGE` : Domain manager (Prism Central) of size large.\n  - `EXTRALARGE` : Domain manager (Prism Central) of size extra large.\n  - `STARTER` : Domain manager (Prism Central) of size starter.\n- \u003cspan pulumi-lang-nodejs=\"`bootstrapConfig`\" pulumi-lang-dotnet=\"`BootstrapConfig`\" pulumi-lang-go=\"`bootstrapConfig`\" pulumi-lang-python=\"`bootstrap_config`\" pulumi-lang-yaml=\"`bootstrapConfig`\" pulumi-lang-java=\"`bootstrapConfig`\"\u003e`bootstrap_config`\u003c/span\u003e: - Bootstrap configuration details for the domain manager (Prism Central).\n- \u003cspan pulumi-lang-nodejs=\"`resourceConfig`\" pulumi-lang-dotnet=\"`ResourceConfig`\" pulumi-lang-go=\"`resourceConfig`\" pulumi-lang-python=\"`resource_config`\" pulumi-lang-yaml=\"`resourceConfig`\" pulumi-lang-java=\"`resourceConfig`\"\u003e`resource_config`\u003c/span\u003e: - This configuration is used to provide the resource-related details like container external identifiers, number of VCPUs, memory size, data disk size of the domain manager (Prism Central). In the case of a multi-node setup, the sum of resources like number of VCPUs, memory size and data disk size are provided.\n\n#### Build Info\n\nThe \u003cspan pulumi-lang-nodejs=\"`buildInfo`\" pulumi-lang-dotnet=\"`BuildInfo`\" pulumi-lang-go=\"`buildInfo`\" pulumi-lang-python=\"`build_info`\" pulumi-lang-yaml=\"`buildInfo`\" pulumi-lang-java=\"`buildInfo`\"\u003e`build_info`\u003c/span\u003e argument supports the following:\n\n- \u003cspan pulumi-lang-nodejs=\"`version`\" pulumi-lang-dotnet=\"`Version`\" pulumi-lang-go=\"`version`\" pulumi-lang-python=\"`version`\" pulumi-lang-yaml=\"`version`\" pulumi-lang-java=\"`version`\"\u003e`version`\u003c/span\u003e: - Software version.\n\n#### Bootstrap Config\n\nThe \u003cspan pulumi-lang-nodejs=\"`bootstrapConfig`\" pulumi-lang-dotnet=\"`BootstrapConfig`\" pulumi-lang-go=\"`bootstrapConfig`\" pulumi-lang-python=\"`bootstrap_config`\" pulumi-lang-yaml=\"`bootstrapConfig`\" pulumi-lang-java=\"`bootstrapConfig`\"\u003e`bootstrap_config`\u003c/span\u003e argument supports the following:\n\n- \u003cspan pulumi-lang-nodejs=\"`environmentInfo`\" pulumi-lang-dotnet=\"`EnvironmentInfo`\" pulumi-lang-go=\"`environmentInfo`\" pulumi-lang-python=\"`environment_info`\" pulumi-lang-yaml=\"`environmentInfo`\" pulumi-lang-java=\"`environmentInfo`\"\u003e`environment_info`\u003c/span\u003e: - Environment information for the domain manager (Prism Central) cluster.\n\n##### Environment Info\n\nThe \u003cspan pulumi-lang-nodejs=\"`environmentInfo`\" pulumi-lang-dotnet=\"`EnvironmentInfo`\" pulumi-lang-go=\"`environmentInfo`\" pulumi-lang-python=\"`environment_info`\" pulumi-lang-yaml=\"`environmentInfo`\" pulumi-lang-java=\"`environmentInfo`\"\u003e`environment_info`\u003c/span\u003e argument supports the following:\n\n- \u003cspan pulumi-lang-nodejs=\"`type`\" pulumi-lang-dotnet=\"`Type`\" pulumi-lang-go=\"`type`\" pulumi-lang-python=\"`type`\" pulumi-lang-yaml=\"`type`\" pulumi-lang-java=\"`type`\"\u003e`type`\u003c/span\u003e: - Enums denoting the environment type of the PC, that is, on-prem PC or cloud PC.\n  Following are the supported entity types:\n  - `ONPREM` : On-prem environment.\n  - `NTNX_CLOUD` : Nutanix cloud environment.\n- \u003cspan pulumi-lang-nodejs=\"`providerType`\" pulumi-lang-dotnet=\"`ProviderType`\" pulumi-lang-go=\"`providerType`\" pulumi-lang-python=\"`provider_type`\" pulumi-lang-yaml=\"`providerType`\" pulumi-lang-java=\"`providerType`\"\u003e`provider_type`\u003c/span\u003e: - Enums denoting the provider type of the PC, that is, AHV or ESXi.\n  Following are the supported provider types:\n  - `VSPHERE` : Vsphere cloud provider.\n  - `AZURE` : Azure cloud provider.\n  - `NTNX` : Nutanix cloud provider.\n  - `GCP` : GCP cloud provider.\n  - `AWS` : AWS cloud provider.\n- \u003cspan pulumi-lang-nodejs=\"`provisioningType`\" pulumi-lang-dotnet=\"`ProvisioningType`\" pulumi-lang-go=\"`provisioningType`\" pulumi-lang-python=\"`provisioning_type`\" pulumi-lang-yaml=\"`provisioningType`\" pulumi-lang-java=\"`provisioningType`\"\u003e`provisioning_type`\u003c/span\u003e: - Enums denoting the instance type of the cloud PC. It indicates whether the PC is created on bare-metal or on a cloud-provisioned VM. Hence, it supports two possible values:\n  - `NTNX` : Nutanix instance.\n  - `NATIVE` : Native instance.\n\n#### Resource Config\n\nThe \u003cspan pulumi-lang-nodejs=\"`resourceConfig`\" pulumi-lang-dotnet=\"`ResourceConfig`\" pulumi-lang-go=\"`resourceConfig`\" pulumi-lang-python=\"`resource_config`\" pulumi-lang-yaml=\"`resourceConfig`\" pulumi-lang-java=\"`resourceConfig`\"\u003e`resource_config`\u003c/span\u003e argument supports the following:\n\n- \u003cspan pulumi-lang-nodejs=\"`numVcpus`\" pulumi-lang-dotnet=\"`NumVcpus`\" pulumi-lang-go=\"`numVcpus`\" pulumi-lang-python=\"`num_vcpus`\" pulumi-lang-yaml=\"`numVcpus`\" pulumi-lang-java=\"`numVcpus`\"\u003e`num_vcpus`\u003c/span\u003e: - This property is used for readOnly purposes to display Prism Central number of VCPUs allocation.\n- \u003cspan pulumi-lang-nodejs=\"`memorySizeBytes`\" pulumi-lang-dotnet=\"`MemorySizeBytes`\" pulumi-lang-go=\"`memorySizeBytes`\" pulumi-lang-python=\"`memory_size_bytes`\" pulumi-lang-yaml=\"`memorySizeBytes`\" pulumi-lang-java=\"`memorySizeBytes`\"\u003e`memory_size_bytes`\u003c/span\u003e: - This property is used for readOnly purposes to display Prism Central RAM allocation at the cluster level.\n- \u003cspan pulumi-lang-nodejs=\"`dataDiskSizeBytes`\" pulumi-lang-dotnet=\"`DataDiskSizeBytes`\" pulumi-lang-go=\"`dataDiskSizeBytes`\" pulumi-lang-python=\"`data_disk_size_bytes`\" pulumi-lang-yaml=\"`dataDiskSizeBytes`\" pulumi-lang-java=\"`dataDiskSizeBytes`\"\u003e`data_disk_size_bytes`\u003c/span\u003e: - This property is used for readOnly purposes to display Prism Central data disk size allocation at a cluster level.\n- \u003cspan pulumi-lang-nodejs=\"`containerExtIds`\" pulumi-lang-dotnet=\"`ContainerExtIds`\" pulumi-lang-go=\"`containerExtIds`\" pulumi-lang-python=\"`container_ext_ids`\" pulumi-lang-yaml=\"`containerExtIds`\" pulumi-lang-java=\"`containerExtIds`\"\u003e`container_ext_ids`\u003c/span\u003e: - The external identifier of the container that will be used to create the domain manager (Prism Central) cluster.\n\n### Network\n\nthe \u003cspan pulumi-lang-nodejs=\"`network`\" pulumi-lang-dotnet=\"`Network`\" pulumi-lang-go=\"`network`\" pulumi-lang-python=\"`network`\" pulumi-lang-yaml=\"`network`\" pulumi-lang-java=\"`network`\"\u003e`network`\u003c/span\u003e argument supports the following:\n\n- \u003cspan pulumi-lang-nodejs=\"`externalAddress`\" pulumi-lang-dotnet=\"`ExternalAddress`\" pulumi-lang-go=\"`externalAddress`\" pulumi-lang-python=\"`external_address`\" pulumi-lang-yaml=\"`externalAddress`\" pulumi-lang-java=\"`externalAddress`\"\u003e`external_address`\u003c/span\u003e: - An unique address that identifies a device on the internet or a local network in IPv4 or IPv6 format.\n- \u003cspan pulumi-lang-nodejs=\"`nameServers`\" pulumi-lang-dotnet=\"`NameServers`\" pulumi-lang-go=\"`nameServers`\" pulumi-lang-python=\"`name_servers`\" pulumi-lang-yaml=\"`nameServers`\" pulumi-lang-java=\"`nameServers`\"\u003e`name_servers`\u003c/span\u003e: - List of name servers on a cluster. This is part of payload for both cluster create \u0026 update operations. For create operation, only ipv4 address / fqdn values are supported currently.\n- \u003cspan pulumi-lang-nodejs=\"`ntpServers`\" pulumi-lang-dotnet=\"`NtpServers`\" pulumi-lang-go=\"`ntpServers`\" pulumi-lang-python=\"`ntp_servers`\" pulumi-lang-yaml=\"`ntpServers`\" pulumi-lang-java=\"`ntpServers`\"\u003e`ntp_servers`\u003c/span\u003e: - List of NTP servers on a cluster. This is part of payload for both cluster create \u0026 update operations. For create operation, only ipv4 address / fqdn values are supported currently.\n- \u003cspan pulumi-lang-nodejs=\"`fqdn`\" pulumi-lang-dotnet=\"`Fqdn`\" pulumi-lang-go=\"`fqdn`\" pulumi-lang-python=\"`fqdn`\" pulumi-lang-yaml=\"`fqdn`\" pulumi-lang-java=\"`fqdn`\"\u003e`fqdn`\u003c/span\u003e: - Cluster fully qualified domain name. This is part of payload for cluster update operation only.\n- \u003cspan pulumi-lang-nodejs=\"`externalNetworks`\" pulumi-lang-dotnet=\"`ExternalNetworks`\" pulumi-lang-go=\"`externalNetworks`\" pulumi-lang-python=\"`external_networks`\" pulumi-lang-yaml=\"`externalNetworks`\" pulumi-lang-java=\"`externalNetworks`\"\u003e`external_networks`\u003c/span\u003e: - This configuration is used to manage Prism Central.\n\n#### External Address\n\nThe \u003cspan pulumi-lang-nodejs=\"`externalAddress`\" pulumi-lang-dotnet=\"`ExternalAddress`\" pulumi-lang-go=\"`externalAddress`\" pulumi-lang-python=\"`external_address`\" pulumi-lang-yaml=\"`externalAddress`\" pulumi-lang-java=\"`externalAddress`\"\u003e`external_address`\u003c/span\u003e argument supports the following:\n\n- \u003cspan pulumi-lang-nodejs=\"`ipv4`\" pulumi-lang-dotnet=\"`Ipv4`\" pulumi-lang-go=\"`ipv4`\" pulumi-lang-python=\"`ipv4`\" pulumi-lang-yaml=\"`ipv4`\" pulumi-lang-java=\"`ipv4`\"\u003e`ipv4`\u003c/span\u003e: - An unique address that identifies a device on the internet or a local network in IPv4 format.\n- \u003cspan pulumi-lang-nodejs=\"`ipv6`\" pulumi-lang-dotnet=\"`Ipv6`\" pulumi-lang-go=\"`ipv6`\" pulumi-lang-python=\"`ipv6`\" pulumi-lang-yaml=\"`ipv6`\" pulumi-lang-java=\"`ipv6`\"\u003e`ipv6`\u003c/span\u003e: - An unique address that identifies a device on the internet or a local network in IPv6 format.\n\n#### Name Servers, NTP Servers\n\nThe \u003cspan pulumi-lang-nodejs=\"`nameServers`\" pulumi-lang-dotnet=\"`NameServers`\" pulumi-lang-go=\"`nameServers`\" pulumi-lang-python=\"`name_servers`\" pulumi-lang-yaml=\"`nameServers`\" pulumi-lang-java=\"`nameServers`\"\u003e`name_servers`\u003c/span\u003e and \u003cspan pulumi-lang-nodejs=\"`ntpServers`\" pulumi-lang-dotnet=\"`NtpServers`\" pulumi-lang-go=\"`ntpServers`\" pulumi-lang-python=\"`ntp_servers`\" pulumi-lang-yaml=\"`ntpServers`\" pulumi-lang-java=\"`ntpServers`\"\u003e`ntp_servers`\u003c/span\u003e arguments support the following:\n\n- \u003cspan pulumi-lang-nodejs=\"`ipv4`\" pulumi-lang-dotnet=\"`Ipv4`\" pulumi-lang-go=\"`ipv4`\" pulumi-lang-python=\"`ipv4`\" pulumi-lang-yaml=\"`ipv4`\" pulumi-lang-java=\"`ipv4`\"\u003e`ipv4`\u003c/span\u003e: - An unique address that identifies a device on the internet or a local network in IPv4 format.\n- \u003cspan pulumi-lang-nodejs=\"`ipv6`\" pulumi-lang-dotnet=\"`Ipv6`\" pulumi-lang-go=\"`ipv6`\" pulumi-lang-python=\"`ipv6`\" pulumi-lang-yaml=\"`ipv6`\" pulumi-lang-java=\"`ipv6`\"\u003e`ipv6`\u003c/span\u003e: - An unique address that identifies a device on the internet or a local network in IPv6 format.\n- \u003cspan pulumi-lang-nodejs=\"`fqdn`\" pulumi-lang-dotnet=\"`Fqdn`\" pulumi-lang-go=\"`fqdn`\" pulumi-lang-python=\"`fqdn`\" pulumi-lang-yaml=\"`fqdn`\" pulumi-lang-java=\"`fqdn`\"\u003e`fqdn`\u003c/span\u003e: - A fully qualified domain name that specifies its exact location in the tree hierarchy of the Domain Name System.\n\n#### External Networks\n\nThe \u003cspan pulumi-lang-nodejs=\"`externalNetworks`\" pulumi-lang-dotnet=\"`ExternalNetworks`\" pulumi-lang-go=\"`externalNetworks`\" pulumi-lang-python=\"`external_networks`\" pulumi-lang-yaml=\"`externalNetworks`\" pulumi-lang-java=\"`externalNetworks`\"\u003e`external_networks`\u003c/span\u003e argument supports the following:\n\n- \u003cspan pulumi-lang-nodejs=\"`defaultGateway`\" pulumi-lang-dotnet=\"`DefaultGateway`\" pulumi-lang-go=\"`defaultGateway`\" pulumi-lang-python=\"`default_gateway`\" pulumi-lang-yaml=\"`defaultGateway`\" pulumi-lang-java=\"`defaultGateway`\"\u003e`default_gateway`\u003c/span\u003e: - An unique address that identifies a device on the internet or a local network in IPv4/IPv6 format or a Fully Qualified Domain Name.\n- \u003cspan pulumi-lang-nodejs=\"`subnetMask`\" pulumi-lang-dotnet=\"`SubnetMask`\" pulumi-lang-go=\"`subnetMask`\" pulumi-lang-python=\"`subnet_mask`\" pulumi-lang-yaml=\"`subnetMask`\" pulumi-lang-java=\"`subnetMask`\"\u003e`subnet_mask`\u003c/span\u003e: - An unique address that identifies a device on the internet or a local network in IPv4/IPv6 format or a Fully Qualified Domain Name.\n- \u003cspan pulumi-lang-nodejs=\"`ipRanges`\" pulumi-lang-dotnet=\"`IpRanges`\" pulumi-lang-go=\"`ipRanges`\" pulumi-lang-python=\"`ip_ranges`\" pulumi-lang-yaml=\"`ipRanges`\" pulumi-lang-java=\"`ipRanges`\"\u003e`ip_ranges`\u003c/span\u003e: - Range of IPs used for Prism Central network setup.\n- \u003cspan pulumi-lang-nodejs=\"`networkExtId`\" pulumi-lang-dotnet=\"`NetworkExtId`\" pulumi-lang-go=\"`networkExtId`\" pulumi-lang-python=\"`network_ext_id`\" pulumi-lang-yaml=\"`networkExtId`\" pulumi-lang-java=\"`networkExtId`\"\u003e`network_ext_id`\u003c/span\u003e: - The network external identifier to which Domain Manager (Prism Central) is to be deployed or is already configured.\n\n#### Default Gateway, Subnet Mask\n\nThe \u003cspan pulumi-lang-nodejs=\"`defaultGateway`\" pulumi-lang-dotnet=\"`DefaultGateway`\" pulumi-lang-go=\"`defaultGateway`\" pulumi-lang-python=\"`default_gateway`\" pulumi-lang-yaml=\"`defaultGateway`\" pulumi-lang-java=\"`defaultGateway`\"\u003e`default_gateway`\u003c/span\u003eand \u003cspan pulumi-lang-nodejs=\"`subnetMask`\" pulumi-lang-dotnet=\"`SubnetMask`\" pulumi-lang-go=\"`subnetMask`\" pulumi-lang-python=\"`subnet_mask`\" pulumi-lang-yaml=\"`subnetMask`\" pulumi-lang-java=\"`subnetMask`\"\u003e`subnet_mask`\u003c/span\u003e arguments support the following:\n\n- \u003cspan pulumi-lang-nodejs=\"`ipv4`\" pulumi-lang-dotnet=\"`Ipv4`\" pulumi-lang-go=\"`ipv4`\" pulumi-lang-python=\"`ipv4`\" pulumi-lang-yaml=\"`ipv4`\" pulumi-lang-java=\"`ipv4`\"\u003e`ipv4`\u003c/span\u003e: - An unique address that identifies a device on the internet or a local network in IPv4 format.\n- \u003cspan pulumi-lang-nodejs=\"`ipv6`\" pulumi-lang-dotnet=\"`Ipv6`\" pulumi-lang-go=\"`ipv6`\" pulumi-lang-python=\"`ipv6`\" pulumi-lang-yaml=\"`ipv6`\" pulumi-lang-java=\"`ipv6`\"\u003e`ipv6`\u003c/span\u003e: - An unique address that identifies a device on the internet or a local network in IPv6 format.\n- \u003cspan pulumi-lang-nodejs=\"`fqdn`\" pulumi-lang-dotnet=\"`Fqdn`\" pulumi-lang-go=\"`fqdn`\" pulumi-lang-python=\"`fqdn`\" pulumi-lang-yaml=\"`fqdn`\" pulumi-lang-java=\"`fqdn`\"\u003e`fqdn`\u003c/span\u003e: - A fully qualified domain name that specifies its exact location in the tree hierarchy of the Domain Name System.\n\n#### IP Ranges\n\nThe \u003cspan pulumi-lang-nodejs=\"`ipRanges`\" pulumi-lang-dotnet=\"`IpRanges`\" pulumi-lang-go=\"`ipRanges`\" pulumi-lang-python=\"`ip_ranges`\" pulumi-lang-yaml=\"`ipRanges`\" pulumi-lang-java=\"`ipRanges`\"\u003e`ip_ranges`\u003c/span\u003e argument supports the following:\n\n- \u003cspan pulumi-lang-nodejs=\"`begin`\" pulumi-lang-dotnet=\"`Begin`\" pulumi-lang-go=\"`begin`\" pulumi-lang-python=\"`begin`\" pulumi-lang-yaml=\"`begin`\" pulumi-lang-java=\"`begin`\"\u003e`begin`\u003c/span\u003e: - The beginning IP address of the range.\n- \u003cspan pulumi-lang-nodejs=\"`end`\" pulumi-lang-dotnet=\"`End`\" pulumi-lang-go=\"`end`\" pulumi-lang-python=\"`end`\" pulumi-lang-yaml=\"`end`\" pulumi-lang-java=\"`end`\"\u003e`end`\u003c/span\u003e: - The ending IP address of the range.\n\n#### begin, end\n\nThe \u003cspan pulumi-lang-nodejs=\"`begin`\" pulumi-lang-dotnet=\"`Begin`\" pulumi-lang-go=\"`begin`\" pulumi-lang-python=\"`begin`\" pulumi-lang-yaml=\"`begin`\" pulumi-lang-java=\"`begin`\"\u003e`begin`\u003c/span\u003e and \u003cspan pulumi-lang-nodejs=\"`end`\" pulumi-lang-dotnet=\"`End`\" pulumi-lang-go=\"`end`\" pulumi-lang-python=\"`end`\" pulumi-lang-yaml=\"`end`\" pulumi-lang-java=\"`end`\"\u003e`end`\u003c/span\u003e arguments support the following:\n\n- \u003cspan pulumi-lang-nodejs=\"`ipv4`\" pulumi-lang-dotnet=\"`Ipv4`\" pulumi-lang-go=\"`ipv4`\" pulumi-lang-python=\"`ipv4`\" pulumi-lang-yaml=\"`ipv4`\" pulumi-lang-java=\"`ipv4`\"\u003e`ipv4`\u003c/span\u003e: - An unique address that identifies a device on the internet or a local network in IPv4 format.\n- \u003cspan pulumi-lang-nodejs=\"`ipv6`\" pulumi-lang-dotnet=\"`Ipv6`\" pulumi-lang-go=\"`ipv6`\" pulumi-lang-python=\"`ipv6`\" pulumi-lang-yaml=\"`ipv6`\" pulumi-lang-java=\"`ipv6`\"\u003e`ipv6`\u003c/span\u003e: - An unique address that identifies a device on the internet or a local network in IPv6 format.\n\n#### IpV4, IpV6\n\nThe \u003cspan pulumi-lang-nodejs=\"`ipv4`\" pulumi-lang-dotnet=\"`Ipv4`\" pulumi-lang-go=\"`ipv4`\" pulumi-lang-python=\"`ipv4`\" pulumi-lang-yaml=\"`ipv4`\" pulumi-lang-java=\"`ipv4`\"\u003e`ipv4`\u003c/span\u003e and \u003cspan pulumi-lang-nodejs=\"`ipv6`\" pulumi-lang-dotnet=\"`Ipv6`\" pulumi-lang-go=\"`ipv6`\" pulumi-lang-python=\"`ipv6`\" pulumi-lang-yaml=\"`ipv6`\" pulumi-lang-java=\"`ipv6`\"\u003e`ipv6`\u003c/span\u003e arguments support the following:\n\n- \u003cspan pulumi-lang-nodejs=\"`value`\" pulumi-lang-dotnet=\"`Value`\" pulumi-lang-go=\"`value`\" pulumi-lang-python=\"`value`\" pulumi-lang-yaml=\"`value`\" pulumi-lang-java=\"`value`\"\u003e`value`\u003c/span\u003e: - The IPv4/IPv6 address of the host.\n- \u003cspan pulumi-lang-nodejs=\"`prefixLength`\" pulumi-lang-dotnet=\"`PrefixLength`\" pulumi-lang-go=\"`prefixLength`\" pulumi-lang-python=\"`prefix_length`\" pulumi-lang-yaml=\"`prefixLength`\" pulumi-lang-java=\"`prefixLength`\"\u003e`prefix_length`\u003c/span\u003e: - The prefix length of the network to which this host IPv4/IPv6 address belongs.\n\n#### FQDN\n\nThe \u003cspan pulumi-lang-nodejs=\"`fqdn`\" pulumi-lang-dotnet=\"`Fqdn`\" pulumi-lang-go=\"`fqdn`\" pulumi-lang-python=\"`fqdn`\" pulumi-lang-yaml=\"`fqdn`\" pulumi-lang-java=\"`fqdn`\"\u003e`fqdn`\u003c/span\u003e argument supports the following:\n\n- \u003cspan pulumi-lang-nodejs=\"`value`\" pulumi-lang-dotnet=\"`Value`\" pulumi-lang-go=\"`value`\" pulumi-lang-python=\"`value`\" pulumi-lang-yaml=\"`value`\" pulumi-lang-java=\"`value`\"\u003e`value`\u003c/span\u003e: - The fully qualified domain name of the host.\n\nSee detailed information in [Nutanix List Restore Points V4](https://developers.nutanix.com/api-reference?namespace=prism\u0026version=v4.0#tag/DomainManager/operation/listRestorePoints).\n",
      "inputs": {
        "description": "A collection of arguments for invoking getPcRestorePointsV2.\n",
        "properties": {
          "filter": {
            "type": "string",
            "description": "A URL query parameter that allows clients to filter a collection of resources.\n- The filter can be applied to the following fields:\n- `creationTime`\n"
          },
          "limit": {
            "type": "integer",
            "description": "A URL query parameter that specifies the total number of records returned in the result set. Must be a positive integer between 1 and 100. Any number out of this range will lead to a validation error. If the limit is not provided, a default value of 50 records will be returned in the result set.\n"
          },
          "orderBy": {
            "type": "string",
            "description": "A URL query parameter that allows clients to specify the sort criteria for the returned list of objects. Resources can be sorted in ascending order using asc or descending order using desc. If asc or desc are not specified, the resources will be sorted in ascending order by default\n- The orderby can be applied to the following fields:\n- `creationTime`\n"
          },
          "page": {
            "type": "integer",
            "description": "A URL query parameter that specifies the page number of the result set. It must be a positive integer between 0 and the maximum number of pages that are available for that resource. Any number out of this range might lead to no results.\n"
          },
          "restorableDomainManagerExtId": {
            "type": "string",
            "description": "A unique identifier for the domain manager.\n"
          },
          "restoreSourceExtId": {
            "type": "string",
            "description": "A unique identifier obtained from the restore source API that corresponds to the details provided for the restore source.\n"
          },
          "select": {
            "type": "string",
            "description": "A URL query parameter that allows clients to request a specific set of properties for each entity or complex type. Expression specified with the $select must conform to the OData V4.01 URL conventions\n- The select can be applied to the following fields:\n- `creationTime`\n- `domainManager`\n- `extId`\n"
          }
        },
        "type": "object",
        "required": [
          "restorableDomainManagerExtId",
          "restoreSourceExtId"
        ]
      },
      "outputs": {
        "description": "A collection of values returned by getPcRestorePointsV2.\n",
        "properties": {
          "filter": {
            "type": "string"
          },
          "id": {
            "description": "The provider-assigned unique ID for this managed resource.",
            "type": "string"
          },
          "limit": {
            "type": "integer"
          },
          "orderBy": {
            "type": "string"
          },
          "page": {
            "type": "integer"
          },
          "restorableDomainManagerExtId": {
            "type": "string"
          },
          "restorePoints": {
            "description": "A list of restore points.\n",
            "items": {
              "$ref": "#/types/nutanix:index%2FgetPcRestorePointsV2RestorePoint:getPcRestorePointsV2RestorePoint"
            },
            "type": "array"
          },
          "restoreSourceExtId": {
            "type": "string"
          },
          "select": {
            "type": "string"
          }
        },
        "required": [
          "id",
          "restorableDomainManagerExtId",
          "restorePoints",
          "restoreSourceExtId"
        ],
        "type": "object"
      }
    },
    "nutanix:index/getPcRestoreSourceV2:getPcRestoreSourceV2": {
      "description": "Retrieves the restore source from the PE cache store and returns the restore source configuration and external identifier to the user.\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as nutanix from \"@pierskarsenbarg/nutanix\";\n\n// get the restore source\nconst restore_source = nutanix.getPcRestoreSourceV2({\n    extId: \"323860ca-bd10-411e-9fe0-1430b62eaf45\",\n});\n```\n```python\nimport pulumi\nimport pulumi_nutanix as nutanix\n\n# get the restore source\nrestore_source = nutanix.get_pc_restore_source_v2(ext_id=\"323860ca-bd10-411e-9fe0-1430b62eaf45\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Nutanix = Pulumi.Nutanix;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    // get the restore source\n    var restore_source = Nutanix.GetPcRestoreSourceV2.Invoke(new()\n    {\n        ExtId = \"323860ca-bd10-411e-9fe0-1430b62eaf45\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pierskarsenbarg/pulumi-nutanix/sdk/go/nutanix\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t// get the restore source\n\t\t_, err := nutanix.LookupPcRestoreSourceV2(ctx, \u0026nutanix.LookupPcRestoreSourceV2Args{\n\t\t\tExtId: \"323860ca-bd10-411e-9fe0-1430b62eaf45\",\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.nutanix.NutanixFunctions;\nimport com.pulumi.nutanix.inputs.GetPcRestoreSourceV2Args;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        // get the restore source\n        final var restore-source = NutanixFunctions.getPcRestoreSourceV2(GetPcRestoreSourceV2Args.builder()\n            .extId(\"323860ca-bd10-411e-9fe0-1430b62eaf45\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  # get the restore source\n  restore-source:\n    fn::invoke:\n      function: nutanix:getPcRestoreSourceV2\n      arguments:\n        extId: 323860ca-bd10-411e-9fe0-1430b62eaf45\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
      "inputs": {
        "description": "A collection of arguments for invoking getPcRestoreSourceV2.\n",
        "properties": {
          "extId": {
            "type": "string",
            "description": "-(Required) A globally unique identifier of an instance that is suitable for external consumption.\n"
          }
        },
        "type": "object",
        "required": [
          "extId"
        ]
      },
      "outputs": {
        "description": "A collection of values returned by getPcRestoreSourceV2.\n",
        "properties": {
          "extId": {
            "description": "- Cluster UUID of a remote cluster.\n",
            "type": "string"
          },
          "id": {
            "description": "The provider-assigned unique ID for this managed resource.",
            "type": "string"
          },
          "links": {
            "description": "- A HATEOAS style link for the response. Each link contains a user-friendly name identifying the link and an address for retrieving the particular resource.\n",
            "items": {
              "$ref": "#/types/nutanix:index%2FgetPcRestoreSourceV2Link:getPcRestoreSourceV2Link"
            },
            "type": "array"
          },
          "locations": {
            "description": "- Location of the backup target. For example, a cluster or an object store endpoint, such as AWS s3.\n",
            "items": {
              "$ref": "#/types/nutanix:index%2FgetPcRestoreSourceV2Location:getPcRestoreSourceV2Location"
            },
            "type": "array"
          },
          "tenantId": {
            "description": "- A globally unique identifier that represents the tenant that owns this entity. The system automatically assigns it, and it and is immutable from an API consumer perspective (some use cases may cause this Id to change - For instance, a use case may require the transfer of ownership of the entity, but these cases are handled automatically on the server).\n",
            "type": "string"
          }
        },
        "required": [
          "extId",
          "id",
          "links",
          "locations",
          "tenantId"
        ],
        "type": "object"
      }
    },
    "nutanix:index/getPcV2:getPcV2": {
      "description": "Fetches the attributes associated with the domain manager (Prism Central) resource based on the provided external identifier. It includes attributes like config, network, node and other information such as size, environment and resource specifications.\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as nutanix from \"@pierskarsenbarg/nutanix\";\n\n// Fetch a single PC (Domain Manager) by its external ID\nconst example_2 = nutanix.getPcV2({\n    extId: \"75dde184-3a0e-4f59-a185-03ca1efead17\",\n});\n```\n```python\nimport pulumi\nimport pulumi_nutanix as nutanix\n\n# Fetch a single PC (Domain Manager) by its external ID\nexample_2 = nutanix.get_pc_v2(ext_id=\"75dde184-3a0e-4f59-a185-03ca1efead17\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Nutanix = Pulumi.Nutanix;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    // Fetch a single PC (Domain Manager) by its external ID\n    var example_2 = Nutanix.GetPcV2.Invoke(new()\n    {\n        ExtId = \"75dde184-3a0e-4f59-a185-03ca1efead17\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pierskarsenbarg/pulumi-nutanix/sdk/go/nutanix\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t// Fetch a single PC (Domain Manager) by its external ID\n\t\t_, err := nutanix.GetPcV2(ctx, \u0026nutanix.GetPcV2Args{\n\t\t\tExtId: \"75dde184-3a0e-4f59-a185-03ca1efead17\",\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.nutanix.NutanixFunctions;\nimport com.pulumi.nutanix.inputs.GetPcV2Args;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        // Fetch a single PC (Domain Manager) by its external ID\n        final var example-2 = NutanixFunctions.getPcV2(GetPcV2Args.builder()\n            .extId(\"75dde184-3a0e-4f59-a185-03ca1efead17\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  # Fetch a single PC (Domain Manager) by its external ID\n  example-2:\n    fn::invoke:\n      function: nutanix:getPcV2\n      arguments:\n        extId: 75dde184-3a0e-4f59-a185-03ca1efead17\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
      "inputs": {
        "description": "A collection of arguments for invoking getPcV2.\n",
        "properties": {
          "extId": {
            "type": "string",
            "description": "-(Required) The external identifier of the domain manager (Prism Central) entity.\n"
          },
          "shouldEnableHighAvailability": {
            "type": "boolean",
            "description": "- This configuration enables Prism Central to be deployed in scale-out mode.\n"
          }
        },
        "type": "object",
        "required": [
          "extId"
        ]
      },
      "outputs": {
        "description": "A collection of values returned by getPcV2.\n",
        "properties": {
          "configs": {
            "description": "- Domain manager (Prism Central) cluster configuration details.\n",
            "items": {
              "$ref": "#/types/nutanix:index%2FgetPcV2Config:getPcV2Config"
            },
            "type": "array"
          },
          "extId": {
            "description": "- A globally unique identifier of an instance that is suitable for external consumption.\n",
            "type": "string"
          },
          "hostingClusterExtId": {
            "description": "- The external identifier of the cluster hosting the domain manager (Prism Central) instance.\n",
            "type": "string"
          },
          "id": {
            "description": "The provider-assigned unique ID for this managed resource.",
            "type": "string"
          },
          "isRegisteredWithHostingCluster": {
            "description": "- Boolean value indicating if the domain manager (Prism Central) is registered with the hosting cluster, that is, Prism Element.\n",
            "type": "boolean"
          },
          "links": {
            "description": "- A HATEOAS style link for the response. Each link contains a user-friendly name identifying the link and an address for retrieving the particular resource.\n",
            "items": {
              "$ref": "#/types/nutanix:index%2FgetPcV2Link:getPcV2Link"
            },
            "type": "array"
          },
          "networks": {
            "description": "- Domain manager (Prism Central) network configuration details.\n",
            "items": {
              "$ref": "#/types/nutanix:index%2FgetPcV2Network:getPcV2Network"
            },
            "type": "array"
          },
          "nodeExtIds": {
            "description": "- Domain manager (Prism Central) nodes external identifier.\n",
            "items": {
              "type": "string"
            },
            "type": "array"
          },
          "shouldEnableHighAvailability": {
            "description": "- This configuration enables Prism Central to be deployed in scale-out mode.\n",
            "type": "boolean"
          },
          "tenantId": {
            "description": "- A globally unique identifier that represents the tenant that owns this entity. The system automatically assigns it, and it and is immutable from an API consumer perspective (some use cases may cause this Id to change - For instance, a use case may require the transfer of ownership of the entity, but these cases are handled automatically on the server).\n",
            "type": "string"
          }
        },
        "required": [
          "configs",
          "extId",
          "hostingClusterExtId",
          "id",
          "isRegisteredWithHostingCluster",
          "links",
          "networks",
          "nodeExtIds",
          "tenantId"
        ],
        "type": "object"
      }
    },
    "nutanix:index/getPcsV2:getPcsV2": {
      "description": "Returns a list of elements representing the domain manager (Prism Central) instance.\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as nutanix from \"@pierskarsenbarg/nutanix\";\n\n// Fetch all PCs (Domain Managers)\nconst pcs = nutanix.getPcsV2({});\n// List all PCs (Domain Managers) with selected properties\nconst pcs_select = nutanix.getPcsV2({\n    select: \"config,extId\",\n});\n```\n```python\nimport pulumi\nimport pulumi_nutanix as nutanix\n\n# Fetch all PCs (Domain Managers)\npcs = nutanix.get_pcs_v2()\n# List all PCs (Domain Managers) with selected properties\npcs_select = nutanix.get_pcs_v2(select=\"config,extId\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Nutanix = Pulumi.Nutanix;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    // Fetch all PCs (Domain Managers)\n    var pcs = Nutanix.GetPcsV2.Invoke();\n\n    // List all PCs (Domain Managers) with selected properties\n    var pcs_select = Nutanix.GetPcsV2.Invoke(new()\n    {\n        Select = \"config,extId\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pierskarsenbarg/pulumi-nutanix/sdk/go/nutanix\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t// Fetch all PCs (Domain Managers)\n\t\t_, err := nutanix.GetPcsV2(ctx, \u0026nutanix.GetPcsV2Args{}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t// List all PCs (Domain Managers) with selected properties\n\t\t_, err = nutanix.GetPcsV2(ctx, \u0026nutanix.GetPcsV2Args{\n\t\t\tSelect: pulumi.StringRef(\"config,extId\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.nutanix.NutanixFunctions;\nimport com.pulumi.nutanix.inputs.GetPcsV2Args;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        // Fetch all PCs (Domain Managers)\n        final var pcs = NutanixFunctions.getPcsV2(GetPcsV2Args.builder()\n            .build());\n\n        // List all PCs (Domain Managers) with selected properties\n        final var pcs-select = NutanixFunctions.getPcsV2(GetPcsV2Args.builder()\n            .select(\"config,extId\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  # Fetch all PCs (Domain Managers)\n  pcs:\n    fn::invoke:\n      function: nutanix:getPcsV2\n      arguments: {}\n  # List all PCs (Domain Managers) with selected properties\n  pcs-select:\n    fn::invoke:\n      function: nutanix:getPcsV2\n      arguments:\n        select: config,extId\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## PCS\n\nThe \u003cspan pulumi-lang-nodejs=\"`pcs`\" pulumi-lang-dotnet=\"`Pcs`\" pulumi-lang-go=\"`pcs`\" pulumi-lang-python=\"`pcs`\" pulumi-lang-yaml=\"`pcs`\" pulumi-lang-java=\"`pcs`\"\u003e`pcs`\u003c/span\u003e argument supports the following:\n\n* \u003cspan pulumi-lang-nodejs=\"`tenantId`\" pulumi-lang-dotnet=\"`TenantId`\" pulumi-lang-go=\"`tenantId`\" pulumi-lang-python=\"`tenant_id`\" pulumi-lang-yaml=\"`tenantId`\" pulumi-lang-java=\"`tenantId`\"\u003e`tenant_id`\u003c/span\u003e: - A globally unique identifier that represents the tenant that owns this entity. The system automatically assigns it, and it and is immutable from an API consumer perspective (some use cases may cause this Id to change - For instance, a use case may require the transfer of ownership of the entity, but these cases are handled automatically on the server).\n* \u003cspan pulumi-lang-nodejs=\"`extId`\" pulumi-lang-dotnet=\"`ExtId`\" pulumi-lang-go=\"`extId`\" pulumi-lang-python=\"`ext_id`\" pulumi-lang-yaml=\"`extId`\" pulumi-lang-java=\"`extId`\"\u003e`ext_id`\u003c/span\u003e: - A globally unique identifier of an instance that is suitable for external consumption.\n* \u003cspan pulumi-lang-nodejs=\"`links`\" pulumi-lang-dotnet=\"`Links`\" pulumi-lang-go=\"`links`\" pulumi-lang-python=\"`links`\" pulumi-lang-yaml=\"`links`\" pulumi-lang-java=\"`links`\"\u003e`links`\u003c/span\u003e: - A HATEOAS style link for the response. Each link contains a user-friendly name identifying the link and an address for retrieving the particular resource.\n* \u003cspan pulumi-lang-nodejs=\"`config`\" pulumi-lang-dotnet=\"`Config`\" pulumi-lang-go=\"`config`\" pulumi-lang-python=\"`config`\" pulumi-lang-yaml=\"`config`\" pulumi-lang-java=\"`config`\"\u003e`config`\u003c/span\u003e: - Domain manager (Prism Central) cluster configuration details.\n* \u003cspan pulumi-lang-nodejs=\"`isRegisteredWithHostingCluster`\" pulumi-lang-dotnet=\"`IsRegisteredWithHostingCluster`\" pulumi-lang-go=\"`isRegisteredWithHostingCluster`\" pulumi-lang-python=\"`is_registered_with_hosting_cluster`\" pulumi-lang-yaml=\"`isRegisteredWithHostingCluster`\" pulumi-lang-java=\"`isRegisteredWithHostingCluster`\"\u003e`is_registered_with_hosting_cluster`\u003c/span\u003e: - Boolean value indicating if the domain manager (Prism Central) is registered with the hosting cluster, that is, Prism Element.\n* \u003cspan pulumi-lang-nodejs=\"`network`\" pulumi-lang-dotnet=\"`Network`\" pulumi-lang-go=\"`network`\" pulumi-lang-python=\"`network`\" pulumi-lang-yaml=\"`network`\" pulumi-lang-java=\"`network`\"\u003e`network`\u003c/span\u003e: - Domain manager (Prism Central) network configuration details.\n* \u003cspan pulumi-lang-nodejs=\"`hostingClusterExtId`\" pulumi-lang-dotnet=\"`HostingClusterExtId`\" pulumi-lang-go=\"`hostingClusterExtId`\" pulumi-lang-python=\"`hosting_cluster_ext_id`\" pulumi-lang-yaml=\"`hostingClusterExtId`\" pulumi-lang-java=\"`hostingClusterExtId`\"\u003e`hosting_cluster_ext_id`\u003c/span\u003e: - The external identifier of the cluster hosting the domain manager (Prism Central) instance.\n* \u003cspan pulumi-lang-nodejs=\"`shouldEnableHighAvailability`\" pulumi-lang-dotnet=\"`ShouldEnableHighAvailability`\" pulumi-lang-go=\"`shouldEnableHighAvailability`\" pulumi-lang-python=\"`should_enable_high_availability`\" pulumi-lang-yaml=\"`shouldEnableHighAvailability`\" pulumi-lang-java=\"`shouldEnableHighAvailability`\"\u003e`should_enable_high_availability`\u003c/span\u003e: - This configuration enables Prism Central to be deployed in scale-out mode.\n* \u003cspan pulumi-lang-nodejs=\"`nodeExtIds`\" pulumi-lang-dotnet=\"`NodeExtIds`\" pulumi-lang-go=\"`nodeExtIds`\" pulumi-lang-python=\"`node_ext_ids`\" pulumi-lang-yaml=\"`nodeExtIds`\" pulumi-lang-java=\"`nodeExtIds`\"\u003e`node_ext_ids`\u003c/span\u003e: - Domain manager (Prism Central) nodes external identifier.\n\n### Config\nThe config argument supports the following:\n\n* \u003cspan pulumi-lang-nodejs=\"`shouldEnableLockdownMode`\" pulumi-lang-dotnet=\"`ShouldEnableLockdownMode`\" pulumi-lang-go=\"`shouldEnableLockdownMode`\" pulumi-lang-python=\"`should_enable_lockdown_mode`\" pulumi-lang-yaml=\"`shouldEnableLockdownMode`\" pulumi-lang-java=\"`shouldEnableLockdownMode`\"\u003e`should_enable_lockdown_mode`\u003c/span\u003e: - A boolean value indicating whether to enable lockdown mode for a cluster.\n* \u003cspan pulumi-lang-nodejs=\"`buildInfo`\" pulumi-lang-dotnet=\"`BuildInfo`\" pulumi-lang-go=\"`buildInfo`\" pulumi-lang-python=\"`build_info`\" pulumi-lang-yaml=\"`buildInfo`\" pulumi-lang-java=\"`buildInfo`\"\u003e`build_info`\u003c/span\u003e: -Currently representing the build information to be used for the cluster creation.\n* \u003cspan pulumi-lang-nodejs=\"`name`\" pulumi-lang-dotnet=\"`Name`\" pulumi-lang-go=\"`name`\" pulumi-lang-python=\"`name`\" pulumi-lang-yaml=\"`name`\" pulumi-lang-java=\"`name`\"\u003e`name`\u003c/span\u003e: - Name of the domain manager (Prism Central).\n* \u003cspan pulumi-lang-nodejs=\"`size`\" pulumi-lang-dotnet=\"`Size`\" pulumi-lang-go=\"`size`\" pulumi-lang-python=\"`size`\" pulumi-lang-yaml=\"`size`\" pulumi-lang-java=\"`size`\"\u003e`size`\u003c/span\u003e: - Domain manager (Prism Central) size is an enumeration of starter, small, large, or extra large starter values. possible values are:\n  * `SMALL` : Domain manager (Prism Central) of size small.\n  * `LARGE` : Domain manager (Prism Central) of size large.\n  * `EXTRALARGE` : Domain manager (Prism Central) of size extra large.\n  * `STARTER` : Domain manager (Prism Central) of size starter.\n* \u003cspan pulumi-lang-nodejs=\"`bootstrapConfig`\" pulumi-lang-dotnet=\"`BootstrapConfig`\" pulumi-lang-go=\"`bootstrapConfig`\" pulumi-lang-python=\"`bootstrap_config`\" pulumi-lang-yaml=\"`bootstrapConfig`\" pulumi-lang-java=\"`bootstrapConfig`\"\u003e`bootstrap_config`\u003c/span\u003e: - Bootstrap configuration details for the domain manager (Prism Central).\n* \u003cspan pulumi-lang-nodejs=\"`resourceConfig`\" pulumi-lang-dotnet=\"`ResourceConfig`\" pulumi-lang-go=\"`resourceConfig`\" pulumi-lang-python=\"`resource_config`\" pulumi-lang-yaml=\"`resourceConfig`\" pulumi-lang-java=\"`resourceConfig`\"\u003e`resource_config`\u003c/span\u003e: - This configuration is used to provide the resource-related details like container external identifiers, number of VCPUs, memory size, data disk size of the domain manager (Prism Central). In the case of a multi-node setup, the sum of resources like number of VCPUs, memory size and data disk size are provided.\n\n#### Build Info\nThe \u003cspan pulumi-lang-nodejs=\"`buildInfo`\" pulumi-lang-dotnet=\"`BuildInfo`\" pulumi-lang-go=\"`buildInfo`\" pulumi-lang-python=\"`build_info`\" pulumi-lang-yaml=\"`buildInfo`\" pulumi-lang-java=\"`buildInfo`\"\u003e`build_info`\u003c/span\u003e argument supports the following:\n\n* \u003cspan pulumi-lang-nodejs=\"`version`\" pulumi-lang-dotnet=\"`Version`\" pulumi-lang-go=\"`version`\" pulumi-lang-python=\"`version`\" pulumi-lang-yaml=\"`version`\" pulumi-lang-java=\"`version`\"\u003e`version`\u003c/span\u003e: - Software version.\n\n#### Bootstrap Config\nThe \u003cspan pulumi-lang-nodejs=\"`bootstrapConfig`\" pulumi-lang-dotnet=\"`BootstrapConfig`\" pulumi-lang-go=\"`bootstrapConfig`\" pulumi-lang-python=\"`bootstrap_config`\" pulumi-lang-yaml=\"`bootstrapConfig`\" pulumi-lang-java=\"`bootstrapConfig`\"\u003e`bootstrap_config`\u003c/span\u003e argument supports the following:\n\n* \u003cspan pulumi-lang-nodejs=\"`environmentInfo`\" pulumi-lang-dotnet=\"`EnvironmentInfo`\" pulumi-lang-go=\"`environmentInfo`\" pulumi-lang-python=\"`environment_info`\" pulumi-lang-yaml=\"`environmentInfo`\" pulumi-lang-java=\"`environmentInfo`\"\u003e`environment_info`\u003c/span\u003e: - Environment information for the domain manager (Prism Central) cluster.\n\n##### Environment Info\nThe \u003cspan pulumi-lang-nodejs=\"`environmentInfo`\" pulumi-lang-dotnet=\"`EnvironmentInfo`\" pulumi-lang-go=\"`environmentInfo`\" pulumi-lang-python=\"`environment_info`\" pulumi-lang-yaml=\"`environmentInfo`\" pulumi-lang-java=\"`environmentInfo`\"\u003e`environment_info`\u003c/span\u003e argument supports the following:\n\n* \u003cspan pulumi-lang-nodejs=\"`type`\" pulumi-lang-dotnet=\"`Type`\" pulumi-lang-go=\"`type`\" pulumi-lang-python=\"`type`\" pulumi-lang-yaml=\"`type`\" pulumi-lang-java=\"`type`\"\u003e`type`\u003c/span\u003e: - Enums denoting the environment type of the PC, that is, on-prem PC or cloud PC.\n  Following are the supported entity types:\n  * `ONPREM` : On-prem environment.\n  * `NTNX_CLOUD` : Nutanix cloud environment.\n* \u003cspan pulumi-lang-nodejs=\"`providerType`\" pulumi-lang-dotnet=\"`ProviderType`\" pulumi-lang-go=\"`providerType`\" pulumi-lang-python=\"`provider_type`\" pulumi-lang-yaml=\"`providerType`\" pulumi-lang-java=\"`providerType`\"\u003e`provider_type`\u003c/span\u003e: - Enums denoting the provider type of the PC, that is, AHV or ESXi.\n  Following are the supported provider types:\n  * `VSPHERE` : Vsphere cloud provider.\n  * `AZURE` : Azure cloud provider.\n  * `NTNX` : Nutanix cloud provider.\n  * `GCP` : GCP cloud provider.\n  * `AWS` : AWS cloud provider.\n* \u003cspan pulumi-lang-nodejs=\"`provisioningType`\" pulumi-lang-dotnet=\"`ProvisioningType`\" pulumi-lang-go=\"`provisioningType`\" pulumi-lang-python=\"`provisioning_type`\" pulumi-lang-yaml=\"`provisioningType`\" pulumi-lang-java=\"`provisioningType`\"\u003e`provisioning_type`\u003c/span\u003e: - Enums denoting the instance type of the cloud PC. It indicates whether the PC is created on bare-metal or on a cloud-provisioned VM. Hence, it supports two possible values:\n  * `NTNX` : Nutanix instance.\n  * `NATIVE` : Native instance.\n\n#### Resource Config\nThe \u003cspan pulumi-lang-nodejs=\"`resourceConfig`\" pulumi-lang-dotnet=\"`ResourceConfig`\" pulumi-lang-go=\"`resourceConfig`\" pulumi-lang-python=\"`resource_config`\" pulumi-lang-yaml=\"`resourceConfig`\" pulumi-lang-java=\"`resourceConfig`\"\u003e`resource_config`\u003c/span\u003e argument supports the following:\n\n* \u003cspan pulumi-lang-nodejs=\"`numVcpus`\" pulumi-lang-dotnet=\"`NumVcpus`\" pulumi-lang-go=\"`numVcpus`\" pulumi-lang-python=\"`num_vcpus`\" pulumi-lang-yaml=\"`numVcpus`\" pulumi-lang-java=\"`numVcpus`\"\u003e`num_vcpus`\u003c/span\u003e: - This property is used for readOnly purposes to display Prism Central number of VCPUs allocation.\n* \u003cspan pulumi-lang-nodejs=\"`memorySizeBytes`\" pulumi-lang-dotnet=\"`MemorySizeBytes`\" pulumi-lang-go=\"`memorySizeBytes`\" pulumi-lang-python=\"`memory_size_bytes`\" pulumi-lang-yaml=\"`memorySizeBytes`\" pulumi-lang-java=\"`memorySizeBytes`\"\u003e`memory_size_bytes`\u003c/span\u003e: - This property is used for readOnly purposes to display Prism Central RAM allocation at the cluster level.\n* \u003cspan pulumi-lang-nodejs=\"`dataDiskSizeBytes`\" pulumi-lang-dotnet=\"`DataDiskSizeBytes`\" pulumi-lang-go=\"`dataDiskSizeBytes`\" pulumi-lang-python=\"`data_disk_size_bytes`\" pulumi-lang-yaml=\"`dataDiskSizeBytes`\" pulumi-lang-java=\"`dataDiskSizeBytes`\"\u003e`data_disk_size_bytes`\u003c/span\u003e: - This property is used for readOnly purposes to display Prism Central data disk size allocation at a cluster level.\n* \u003cspan pulumi-lang-nodejs=\"`containerExtIds`\" pulumi-lang-dotnet=\"`ContainerExtIds`\" pulumi-lang-go=\"`containerExtIds`\" pulumi-lang-python=\"`container_ext_ids`\" pulumi-lang-yaml=\"`containerExtIds`\" pulumi-lang-java=\"`containerExtIds`\"\u003e`container_ext_ids`\u003c/span\u003e: - The external identifier of the container that will be used to create the domain manager (Prism Central) cluster.\n\n### Network\nthe \u003cspan pulumi-lang-nodejs=\"`network`\" pulumi-lang-dotnet=\"`Network`\" pulumi-lang-go=\"`network`\" pulumi-lang-python=\"`network`\" pulumi-lang-yaml=\"`network`\" pulumi-lang-java=\"`network`\"\u003e`network`\u003c/span\u003e argument supports the following:\n\n* \u003cspan pulumi-lang-nodejs=\"`externalAddress`\" pulumi-lang-dotnet=\"`ExternalAddress`\" pulumi-lang-go=\"`externalAddress`\" pulumi-lang-python=\"`external_address`\" pulumi-lang-yaml=\"`externalAddress`\" pulumi-lang-java=\"`externalAddress`\"\u003e`external_address`\u003c/span\u003e: - An unique address that identifies a device on the internet or a local network in IPv4 or IPv6 format.\n* \u003cspan pulumi-lang-nodejs=\"`nameServers`\" pulumi-lang-dotnet=\"`NameServers`\" pulumi-lang-go=\"`nameServers`\" pulumi-lang-python=\"`name_servers`\" pulumi-lang-yaml=\"`nameServers`\" pulumi-lang-java=\"`nameServers`\"\u003e`name_servers`\u003c/span\u003e: - List of name servers on a cluster. This is part of payload for both cluster create \u0026 update operations. For create operation, only ipv4 address / fqdn values are supported currently.\n* \u003cspan pulumi-lang-nodejs=\"`ntpServers`\" pulumi-lang-dotnet=\"`NtpServers`\" pulumi-lang-go=\"`ntpServers`\" pulumi-lang-python=\"`ntp_servers`\" pulumi-lang-yaml=\"`ntpServers`\" pulumi-lang-java=\"`ntpServers`\"\u003e`ntp_servers`\u003c/span\u003e: - List of NTP servers on a cluster. This is part of payload for both cluster create \u0026 update operations. For create operation, only ipv4 address / fqdn values are supported currently.\n* \u003cspan pulumi-lang-nodejs=\"`fqdn`\" pulumi-lang-dotnet=\"`Fqdn`\" pulumi-lang-go=\"`fqdn`\" pulumi-lang-python=\"`fqdn`\" pulumi-lang-yaml=\"`fqdn`\" pulumi-lang-java=\"`fqdn`\"\u003e`fqdn`\u003c/span\u003e: - Cluster fully qualified domain name. This is part of payload for cluster update operation only.\n* \u003cspan pulumi-lang-nodejs=\"`externalNetworks`\" pulumi-lang-dotnet=\"`ExternalNetworks`\" pulumi-lang-go=\"`externalNetworks`\" pulumi-lang-python=\"`external_networks`\" pulumi-lang-yaml=\"`externalNetworks`\" pulumi-lang-java=\"`externalNetworks`\"\u003e`external_networks`\u003c/span\u003e: - This configuration is used to manage Prism Central.\n\n#### External Address\nThe \u003cspan pulumi-lang-nodejs=\"`externalAddress`\" pulumi-lang-dotnet=\"`ExternalAddress`\" pulumi-lang-go=\"`externalAddress`\" pulumi-lang-python=\"`external_address`\" pulumi-lang-yaml=\"`externalAddress`\" pulumi-lang-java=\"`externalAddress`\"\u003e`external_address`\u003c/span\u003e argument supports the following:\n\n* \u003cspan pulumi-lang-nodejs=\"`ipv4`\" pulumi-lang-dotnet=\"`Ipv4`\" pulumi-lang-go=\"`ipv4`\" pulumi-lang-python=\"`ipv4`\" pulumi-lang-yaml=\"`ipv4`\" pulumi-lang-java=\"`ipv4`\"\u003e`ipv4`\u003c/span\u003e: - An unique address that identifies a device on the internet or a local network in IPv4 format.\n* \u003cspan pulumi-lang-nodejs=\"`ipv6`\" pulumi-lang-dotnet=\"`Ipv6`\" pulumi-lang-go=\"`ipv6`\" pulumi-lang-python=\"`ipv6`\" pulumi-lang-yaml=\"`ipv6`\" pulumi-lang-java=\"`ipv6`\"\u003e`ipv6`\u003c/span\u003e: - An unique address that identifies a device on the internet or a local network in IPv6 format.\n\n#### Name Servers, NTP Servers\nThe \u003cspan pulumi-lang-nodejs=\"`nameServers`\" pulumi-lang-dotnet=\"`NameServers`\" pulumi-lang-go=\"`nameServers`\" pulumi-lang-python=\"`name_servers`\" pulumi-lang-yaml=\"`nameServers`\" pulumi-lang-java=\"`nameServers`\"\u003e`name_servers`\u003c/span\u003e and \u003cspan pulumi-lang-nodejs=\"`ntpServers`\" pulumi-lang-dotnet=\"`NtpServers`\" pulumi-lang-go=\"`ntpServers`\" pulumi-lang-python=\"`ntp_servers`\" pulumi-lang-yaml=\"`ntpServers`\" pulumi-lang-java=\"`ntpServers`\"\u003e`ntp_servers`\u003c/span\u003e arguments support the following:\n\n* \u003cspan pulumi-lang-nodejs=\"`ipv4`\" pulumi-lang-dotnet=\"`Ipv4`\" pulumi-lang-go=\"`ipv4`\" pulumi-lang-python=\"`ipv4`\" pulumi-lang-yaml=\"`ipv4`\" pulumi-lang-java=\"`ipv4`\"\u003e`ipv4`\u003c/span\u003e: - An unique address that identifies a device on the internet or a local network in IPv4 format.\n* \u003cspan pulumi-lang-nodejs=\"`ipv6`\" pulumi-lang-dotnet=\"`Ipv6`\" pulumi-lang-go=\"`ipv6`\" pulumi-lang-python=\"`ipv6`\" pulumi-lang-yaml=\"`ipv6`\" pulumi-lang-java=\"`ipv6`\"\u003e`ipv6`\u003c/span\u003e: - An unique address that identifies a device on the internet or a local network in IPv6 format.\n* \u003cspan pulumi-lang-nodejs=\"`fqdn`\" pulumi-lang-dotnet=\"`Fqdn`\" pulumi-lang-go=\"`fqdn`\" pulumi-lang-python=\"`fqdn`\" pulumi-lang-yaml=\"`fqdn`\" pulumi-lang-java=\"`fqdn`\"\u003e`fqdn`\u003c/span\u003e: - A fully qualified domain name that specifies its exact location in the tree hierarchy of the Domain Name System.\n\n#### External Networks\nThe \u003cspan pulumi-lang-nodejs=\"`externalNetworks`\" pulumi-lang-dotnet=\"`ExternalNetworks`\" pulumi-lang-go=\"`externalNetworks`\" pulumi-lang-python=\"`external_networks`\" pulumi-lang-yaml=\"`externalNetworks`\" pulumi-lang-java=\"`externalNetworks`\"\u003e`external_networks`\u003c/span\u003e argument supports the following:\n\n* \u003cspan pulumi-lang-nodejs=\"`defaultGateway`\" pulumi-lang-dotnet=\"`DefaultGateway`\" pulumi-lang-go=\"`defaultGateway`\" pulumi-lang-python=\"`default_gateway`\" pulumi-lang-yaml=\"`defaultGateway`\" pulumi-lang-java=\"`defaultGateway`\"\u003e`default_gateway`\u003c/span\u003e: - An unique address that identifies a device on the internet or a local network in IPv4/IPv6 format or a Fully Qualified Domain Name.\n* \u003cspan pulumi-lang-nodejs=\"`subnetMask`\" pulumi-lang-dotnet=\"`SubnetMask`\" pulumi-lang-go=\"`subnetMask`\" pulumi-lang-python=\"`subnet_mask`\" pulumi-lang-yaml=\"`subnetMask`\" pulumi-lang-java=\"`subnetMask`\"\u003e`subnet_mask`\u003c/span\u003e: - An unique address that identifies a device on the internet or a local network in IPv4/IPv6 format or a Fully Qualified Domain Name.\n* \u003cspan pulumi-lang-nodejs=\"`ipRanges`\" pulumi-lang-dotnet=\"`IpRanges`\" pulumi-lang-go=\"`ipRanges`\" pulumi-lang-python=\"`ip_ranges`\" pulumi-lang-yaml=\"`ipRanges`\" pulumi-lang-java=\"`ipRanges`\"\u003e`ip_ranges`\u003c/span\u003e: - Range of IPs used for Prism Central network setup.\n* \u003cspan pulumi-lang-nodejs=\"`networkExtId`\" pulumi-lang-dotnet=\"`NetworkExtId`\" pulumi-lang-go=\"`networkExtId`\" pulumi-lang-python=\"`network_ext_id`\" pulumi-lang-yaml=\"`networkExtId`\" pulumi-lang-java=\"`networkExtId`\"\u003e`network_ext_id`\u003c/span\u003e: - The network external identifier to which Domain Manager (Prism Central) is to be deployed or is already configured.\n\n#### Default Gateway, Subnet Mask\nThe \u003cspan pulumi-lang-nodejs=\"`defaultGateway`\" pulumi-lang-dotnet=\"`DefaultGateway`\" pulumi-lang-go=\"`defaultGateway`\" pulumi-lang-python=\"`default_gateway`\" pulumi-lang-yaml=\"`defaultGateway`\" pulumi-lang-java=\"`defaultGateway`\"\u003e`default_gateway`\u003c/span\u003eand \u003cspan pulumi-lang-nodejs=\"`subnetMask`\" pulumi-lang-dotnet=\"`SubnetMask`\" pulumi-lang-go=\"`subnetMask`\" pulumi-lang-python=\"`subnet_mask`\" pulumi-lang-yaml=\"`subnetMask`\" pulumi-lang-java=\"`subnetMask`\"\u003e`subnet_mask`\u003c/span\u003e arguments support the following:\n\n* \u003cspan pulumi-lang-nodejs=\"`ipv4`\" pulumi-lang-dotnet=\"`Ipv4`\" pulumi-lang-go=\"`ipv4`\" pulumi-lang-python=\"`ipv4`\" pulumi-lang-yaml=\"`ipv4`\" pulumi-lang-java=\"`ipv4`\"\u003e`ipv4`\u003c/span\u003e: - An unique address that identifies a device on the internet or a local network in IPv4 format.\n* \u003cspan pulumi-lang-nodejs=\"`ipv6`\" pulumi-lang-dotnet=\"`Ipv6`\" pulumi-lang-go=\"`ipv6`\" pulumi-lang-python=\"`ipv6`\" pulumi-lang-yaml=\"`ipv6`\" pulumi-lang-java=\"`ipv6`\"\u003e`ipv6`\u003c/span\u003e: - An unique address that identifies a device on the internet or a local network in IPv6 format.\n* \u003cspan pulumi-lang-nodejs=\"`fqdn`\" pulumi-lang-dotnet=\"`Fqdn`\" pulumi-lang-go=\"`fqdn`\" pulumi-lang-python=\"`fqdn`\" pulumi-lang-yaml=\"`fqdn`\" pulumi-lang-java=\"`fqdn`\"\u003e`fqdn`\u003c/span\u003e: - A fully qualified domain name that specifies its exact location in the tree hierarchy of the Domain Name System.\n\n#### IP Ranges\nThe \u003cspan pulumi-lang-nodejs=\"`ipRanges`\" pulumi-lang-dotnet=\"`IpRanges`\" pulumi-lang-go=\"`ipRanges`\" pulumi-lang-python=\"`ip_ranges`\" pulumi-lang-yaml=\"`ipRanges`\" pulumi-lang-java=\"`ipRanges`\"\u003e`ip_ranges`\u003c/span\u003e argument supports the following:\n\n* \u003cspan pulumi-lang-nodejs=\"`begin`\" pulumi-lang-dotnet=\"`Begin`\" pulumi-lang-go=\"`begin`\" pulumi-lang-python=\"`begin`\" pulumi-lang-yaml=\"`begin`\" pulumi-lang-java=\"`begin`\"\u003e`begin`\u003c/span\u003e: - The beginning IP address of the range.\n* \u003cspan pulumi-lang-nodejs=\"`end`\" pulumi-lang-dotnet=\"`End`\" pulumi-lang-go=\"`end`\" pulumi-lang-python=\"`end`\" pulumi-lang-yaml=\"`end`\" pulumi-lang-java=\"`end`\"\u003e`end`\u003c/span\u003e: - The ending IP address of the range.\n\n#### begin, end\nThe \u003cspan pulumi-lang-nodejs=\"`begin`\" pulumi-lang-dotnet=\"`Begin`\" pulumi-lang-go=\"`begin`\" pulumi-lang-python=\"`begin`\" pulumi-lang-yaml=\"`begin`\" pulumi-lang-java=\"`begin`\"\u003e`begin`\u003c/span\u003e and \u003cspan pulumi-lang-nodejs=\"`end`\" pulumi-lang-dotnet=\"`End`\" pulumi-lang-go=\"`end`\" pulumi-lang-python=\"`end`\" pulumi-lang-yaml=\"`end`\" pulumi-lang-java=\"`end`\"\u003e`end`\u003c/span\u003e arguments support the following:\n\n* \u003cspan pulumi-lang-nodejs=\"`ipv4`\" pulumi-lang-dotnet=\"`Ipv4`\" pulumi-lang-go=\"`ipv4`\" pulumi-lang-python=\"`ipv4`\" pulumi-lang-yaml=\"`ipv4`\" pulumi-lang-java=\"`ipv4`\"\u003e`ipv4`\u003c/span\u003e: - An unique address that identifies a device on the internet or a local network in IPv4 format.\n* \u003cspan pulumi-lang-nodejs=\"`ipv6`\" pulumi-lang-dotnet=\"`Ipv6`\" pulumi-lang-go=\"`ipv6`\" pulumi-lang-python=\"`ipv6`\" pulumi-lang-yaml=\"`ipv6`\" pulumi-lang-java=\"`ipv6`\"\u003e`ipv6`\u003c/span\u003e: - An unique address that identifies a device on the internet or a local network in IPv6 format.\n\n#### IpV4, IpV6\nThe \u003cspan pulumi-lang-nodejs=\"`ipv4`\" pulumi-lang-dotnet=\"`Ipv4`\" pulumi-lang-go=\"`ipv4`\" pulumi-lang-python=\"`ipv4`\" pulumi-lang-yaml=\"`ipv4`\" pulumi-lang-java=\"`ipv4`\"\u003e`ipv4`\u003c/span\u003e and \u003cspan pulumi-lang-nodejs=\"`ipv6`\" pulumi-lang-dotnet=\"`Ipv6`\" pulumi-lang-go=\"`ipv6`\" pulumi-lang-python=\"`ipv6`\" pulumi-lang-yaml=\"`ipv6`\" pulumi-lang-java=\"`ipv6`\"\u003e`ipv6`\u003c/span\u003e arguments support the following:\n\n* \u003cspan pulumi-lang-nodejs=\"`value`\" pulumi-lang-dotnet=\"`Value`\" pulumi-lang-go=\"`value`\" pulumi-lang-python=\"`value`\" pulumi-lang-yaml=\"`value`\" pulumi-lang-java=\"`value`\"\u003e`value`\u003c/span\u003e: - The IPv4/IPv6 address of the host.\n* \u003cspan pulumi-lang-nodejs=\"`prefixLength`\" pulumi-lang-dotnet=\"`PrefixLength`\" pulumi-lang-go=\"`prefixLength`\" pulumi-lang-python=\"`prefix_length`\" pulumi-lang-yaml=\"`prefixLength`\" pulumi-lang-java=\"`prefixLength`\"\u003e`prefix_length`\u003c/span\u003e: - The prefix length of the network to which this host IPv4/IPv6 address belongs.\n\n#### FQDN\nThe \u003cspan pulumi-lang-nodejs=\"`fqdn`\" pulumi-lang-dotnet=\"`Fqdn`\" pulumi-lang-go=\"`fqdn`\" pulumi-lang-python=\"`fqdn`\" pulumi-lang-yaml=\"`fqdn`\" pulumi-lang-java=\"`fqdn`\"\u003e`fqdn`\u003c/span\u003e argument supports the following:\n\n* \u003cspan pulumi-lang-nodejs=\"`value`\" pulumi-lang-dotnet=\"`Value`\" pulumi-lang-go=\"`value`\" pulumi-lang-python=\"`value`\" pulumi-lang-yaml=\"`value`\" pulumi-lang-java=\"`value`\"\u003e`value`\u003c/span\u003e: - The fully qualified domain name of the host.\n\nSee detailed information in [Nutanix List PCs V4](https://developers.nutanix.com/api-reference?namespace=prism\u0026version=v4.0#tag/DomainManager/operation/listDomainManagers).\n",
      "inputs": {
        "description": "A collection of arguments for invoking getPcsV2.\n",
        "properties": {
          "select": {
            "type": "string",
            "description": "- URL query parameter that allows clients to request a specific set of properties for each entity or complex type. Expression specified with the \\$select must conform to the OData V4.01 URL conventions. If a \\$select expression consists of a single select item that is an asterisk (i.e., *), then all properties on the matching resource will be returned. supported values are:\n"
          }
        },
        "type": "object"
      },
      "outputs": {
        "description": "A collection of values returned by getPcsV2.\n",
        "properties": {
          "id": {
            "description": "The provider-assigned unique ID for this managed resource.",
            "type": "string"
          },
          "pcs": {
            "description": "- A list of domain manager (Prism Central) entities.\n",
            "items": {
              "$ref": "#/types/nutanix:index%2FgetPcsV2Pc:getPcsV2Pc"
            },
            "type": "array"
          },
          "select": {
            "type": "string"
          }
        },
        "required": [
          "id",
          "pcs"
        ],
        "type": "object"
      }
    },
    "nutanix:index/getPermission:getPermission": {
      "description": "Describe a Nutanix Permission and its values (if it has them).\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as nutanix from \"@pierskarsenbarg/nutanix\";\n\n//Get permission by UUID\nconst byuuid = nutanix.getPermission({\n    permissionId: \"26b81a55-2bca-48c6-9fab-4f82c6bb4284\",\n});\n//Get permission by name\nconst byname = nutanix.getPermission({\n    permissionName: \"Access_Console_Virtual_Machine\",\n});\n```\n```python\nimport pulumi\nimport pulumi_nutanix as nutanix\n\n#Get permission by UUID\nbyuuid = nutanix.get_permission(permission_id=\"26b81a55-2bca-48c6-9fab-4f82c6bb4284\")\n#Get permission by name\nbyname = nutanix.get_permission(permission_name=\"Access_Console_Virtual_Machine\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Nutanix = Pulumi.Nutanix;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    //Get permission by UUID\n    var byuuid = Nutanix.GetPermission.Invoke(new()\n    {\n        PermissionId = \"26b81a55-2bca-48c6-9fab-4f82c6bb4284\",\n    });\n\n    //Get permission by name\n    var byname = Nutanix.GetPermission.Invoke(new()\n    {\n        PermissionName = \"Access_Console_Virtual_Machine\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pierskarsenbarg/pulumi-nutanix/sdk/go/nutanix\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t// Get permission by UUID\n\t\t_, err := nutanix.GetPermission(ctx, \u0026nutanix.GetPermissionArgs{\n\t\t\tPermissionId: pulumi.StringRef(\"26b81a55-2bca-48c6-9fab-4f82c6bb4284\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t// Get permission by name\n\t\t_, err = nutanix.GetPermission(ctx, \u0026nutanix.GetPermissionArgs{\n\t\t\tPermissionName: pulumi.StringRef(\"Access_Console_Virtual_Machine\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.nutanix.NutanixFunctions;\nimport com.pulumi.nutanix.inputs.GetPermissionArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        //Get permission by UUID\n        final var byuuid = NutanixFunctions.getPermission(GetPermissionArgs.builder()\n            .permissionId(\"26b81a55-2bca-48c6-9fab-4f82c6bb4284\")\n            .build());\n\n        //Get permission by name\n        final var byname = NutanixFunctions.getPermission(GetPermissionArgs.builder()\n            .permissionName(\"Access_Console_Virtual_Machine\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  #Get permission by UUID\n  byuuid:\n    fn::invoke:\n      function: nutanix:getPermission\n      arguments:\n        permissionId: 26b81a55-2bca-48c6-9fab-4f82c6bb4284\n  #Get permission by name\n  byname:\n    fn::invoke:\n      function: nutanix:getPermission\n      arguments:\n        permissionName: Access_Console_Virtual_Machine\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
      "inputs": {
        "description": "A collection of arguments for invoking getPermission.\n",
        "properties": {
          "categories": {
            "type": "array",
            "items": {
              "$ref": "#/types/nutanix:index%2FgetPermissionCategory:getPermissionCategory"
            },
            "description": "The categories for this resource.\n"
          },
          "permissionId": {
            "type": "string",
            "description": "The \u003cspan pulumi-lang-nodejs=\"`id`\" pulumi-lang-dotnet=\"`Id`\" pulumi-lang-go=\"`id`\" pulumi-lang-python=\"`id`\" pulumi-lang-yaml=\"`id`\" pulumi-lang-java=\"`id`\"\u003e`id`\u003c/span\u003e of the permission.\n"
          },
          "permissionName": {
            "type": "string",
            "description": "The \u003cspan pulumi-lang-nodejs=\"`name`\" pulumi-lang-dotnet=\"`Name`\" pulumi-lang-go=\"`name`\" pulumi-lang-python=\"`name`\" pulumi-lang-yaml=\"`name`\" pulumi-lang-java=\"`name`\"\u003e`name`\u003c/span\u003e of the permission.\n"
          }
        },
        "type": "object"
      },
      "outputs": {
        "description": "A collection of values returned by getPermission.\n",
        "properties": {
          "apiVersion": {
            "type": "string"
          },
          "categories": {
            "description": "The categories for this resource.\n",
            "items": {
              "$ref": "#/types/nutanix:index%2FgetPermissionCategory:getPermissionCategory"
            },
            "type": "array"
          },
          "description": {
            "description": "A description for the permission.\n",
            "type": "string"
          },
          "fields": {
            "description": ". The fields that can/cannot be accessed during the specified operation.\u003cspan pulumi-lang-nodejs=\" fieldNameList \" pulumi-lang-dotnet=\" FieldNameList \" pulumi-lang-go=\" fieldNameList \" pulumi-lang-python=\" field_name_list \" pulumi-lang-yaml=\" fieldNameList \" pulumi-lang-java=\" fieldNameList \"\u003e field_name_list \u003c/span\u003ewill be a list of fields. e.g. if\u003cspan pulumi-lang-nodejs=\" fieldMode \" pulumi-lang-dotnet=\" FieldMode \" pulumi-lang-go=\" fieldMode \" pulumi-lang-python=\" field_mode \" pulumi-lang-yaml=\" fieldMode \" pulumi-lang-java=\" fieldMode \"\u003e field_mode \u003c/span\u003e= disallowed,\u003cspan pulumi-lang-nodejs=\" fieldNameList \" pulumi-lang-dotnet=\" FieldNameList \" pulumi-lang-go=\" fieldNameList \" pulumi-lang-python=\" field_name_list \" pulumi-lang-yaml=\" fieldNameList \" pulumi-lang-java=\" fieldNameList \"\u003e field_name_list \u003c/span\u003e= [“xyz”] then the list of allowed fields is ALL fields minus xyz. Seee Field for more info.\n",
            "items": {
              "$ref": "#/types/nutanix:index%2FgetPermissionField:getPermissionField"
            },
            "type": "array"
          },
          "id": {
            "description": "The provider-assigned unique ID for this managed resource.",
            "type": "string"
          },
          "kind": {
            "description": "(Required) The kind name (Default value: \u003cspan pulumi-lang-nodejs=\"`project`\" pulumi-lang-dotnet=\"`Project`\" pulumi-lang-go=\"`project`\" pulumi-lang-python=\"`project`\" pulumi-lang-yaml=\"`project`\" pulumi-lang-java=\"`project`\"\u003e`project`\u003c/span\u003e).\n",
            "type": "string"
          },
          "metadata": {
            "additionalProperties": {
              "type": "string"
            },
            "description": "The permission kind metadata.\n",
            "type": "object"
          },
          "name": {
            "description": "the name.\n",
            "type": "string"
          },
          "operation": {
            "description": "The operation that is being performed on a given kind.\n",
            "type": "string"
          },
          "ownerReference": {
            "additionalProperties": {
              "type": "string"
            },
            "description": "The reference to a user.\n",
            "type": "object"
          },
          "permissionId": {
            "type": "string"
          },
          "permissionName": {
            "type": "string"
          },
          "projectReference": {
            "additionalProperties": {
              "type": "string"
            },
            "description": "The reference to a project.\n",
            "type": "object"
          },
          "state": {
            "description": "The state of the permission.\n",
            "type": "string"
          }
        },
        "required": [
          "apiVersion",
          "categories",
          "description",
          "fields",
          "id",
          "kind",
          "metadata",
          "name",
          "operation",
          "ownerReference",
          "projectReference",
          "state"
        ],
        "type": "object"
      }
    },
    "nutanix:index/getPermissions:getPermissions": {
      "description": "Provides a datasource to retrieve all the permissions.\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as nutanix from \"@pierskarsenbarg/nutanix\";\n\nconst permissions = nutanix.getPermission({});\n```\n```python\nimport pulumi\nimport pulumi_nutanix as nutanix\n\npermissions = nutanix.get_permission()\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Nutanix = Pulumi.Nutanix;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var permissions = Nutanix.GetPermission.Invoke();\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pierskarsenbarg/pulumi-nutanix/sdk/go/nutanix\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := nutanix.GetPermission(ctx, \u0026nutanix.GetPermissionArgs{}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.nutanix.NutanixFunctions;\nimport com.pulumi.nutanix.inputs.GetPermissionArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var permissions = NutanixFunctions.getPermission(GetPermissionArgs.builder()\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  permissions:\n    fn::invoke:\n      function: nutanix:getPermission\n      arguments: {}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
      "inputs": {
        "description": "A collection of arguments for invoking getPermissions.\n",
        "properties": {
          "metadatas": {
            "type": "array",
            "items": {
              "$ref": "#/types/nutanix:index%2FgetPermissionsMetadata:getPermissionsMetadata"
            },
            "description": "The permission kind metadata.\n"
          }
        },
        "type": "object"
      },
      "outputs": {
        "description": "A collection of values returned by getPermissions.\n",
        "properties": {
          "apiVersion": {
            "description": "version of the API\n",
            "type": "string"
          },
          "entities": {
            "description": "List of Permissions\n",
            "items": {
              "$ref": "#/types/nutanix:index%2FgetPermissionsEntity:getPermissionsEntity"
            },
            "type": "array"
          },
          "id": {
            "description": "The provider-assigned unique ID for this managed resource.",
            "type": "string"
          },
          "metadatas": {
            "description": "The permission kind metadata.\n",
            "items": {
              "$ref": "#/types/nutanix:index%2FgetPermissionsMetadata:getPermissionsMetadata"
            },
            "type": "array"
          }
        },
        "required": [
          "apiVersion",
          "entities",
          "id",
          "metadatas"
        ],
        "type": "object"
      }
    },
    "nutanix:index/getProject:getProject": {
      "description": "Describe a Nutanix Project and its values (if it has them).\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as nutanix from \"@pierskarsenbarg/nutanix\";\n\nconst subnet = new nutanix.Subnet(\"subnet\", {\n    clusterUuid: \"\u003cYOUR_CLUSTER_ID\u003e\",\n    name: \"sunet_test_name\",\n    description: \"Description of my unit test VLAN\",\n    vlanId: 31,\n    subnetType: \"VLAN\",\n    subnetIp: \"10.250.140.0\",\n    defaultGatewayIp: \"10.250.140.1\",\n    prefixLength: 24,\n    dhcpOptions: {\n        boot_file_name: \"bootfile\",\n        domain_name: \"nutanix\",\n        tftp_server_name: \"10.250.140.200\",\n    },\n    dhcpDomainNameServerLists: [\n        \"8.8.8.8\",\n        \"4.2.2.2\",\n    ],\n    dhcpDomainSearchLists: [\n        \"terraform.nutanix.com\",\n        \"terraform.unit.test.com\",\n    ],\n});\nconst projectTest = new nutanix.Project(\"project_test\", {\n    name: \"my-project\",\n    description: \"This is my project\",\n    categories: [{\n        name: \"Environment\",\n        value: \"Staging\",\n    }],\n    resourceDomain: {\n        resources: [{\n            limit: 4,\n            resourceType: \"STORAGE\",\n        }],\n    },\n    defaultSubnetReference: {\n        uuid: subnet.metadata.uuid,\n    },\n    apiVersion: \"3.1\",\n});\nconst test = nutanix.getProjectOutput({\n    projectId: projectTest.id,\n});\n```\n```python\nimport pulumi\nimport pulumi_nutanix as nutanix\n\nsubnet = nutanix.Subnet(\"subnet\",\n    cluster_uuid=\"\u003cYOUR_CLUSTER_ID\u003e\",\n    name=\"sunet_test_name\",\n    description=\"Description of my unit test VLAN\",\n    vlan_id=31,\n    subnet_type=\"VLAN\",\n    subnet_ip=\"10.250.140.0\",\n    default_gateway_ip=\"10.250.140.1\",\n    prefix_length=24,\n    dhcp_options={\n        \"boot_file_name\": \"bootfile\",\n        \"domain_name\": \"nutanix\",\n        \"tftp_server_name\": \"10.250.140.200\",\n    },\n    dhcp_domain_name_server_lists=[\n        \"8.8.8.8\",\n        \"4.2.2.2\",\n    ],\n    dhcp_domain_search_lists=[\n        \"terraform.nutanix.com\",\n        \"terraform.unit.test.com\",\n    ])\nproject_test = nutanix.Project(\"project_test\",\n    name=\"my-project\",\n    description=\"This is my project\",\n    categories=[{\n        \"name\": \"Environment\",\n        \"value\": \"Staging\",\n    }],\n    resource_domain={\n        \"resources\": [{\n            \"limit\": 4,\n            \"resource_type\": \"STORAGE\",\n        }],\n    },\n    default_subnet_reference={\n        \"uuid\": subnet.metadata[\"uuid\"],\n    },\n    api_version=\"3.1\")\ntest = nutanix.get_project_output(project_id=project_test.id)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Nutanix = PiersKarsenbarg.Nutanix;\nusing Nutanix = Pulumi.Nutanix;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var subnet = new Nutanix.Subnet(\"subnet\", new()\n    {\n        ClusterUuid = \"\u003cYOUR_CLUSTER_ID\u003e\",\n        Name = \"sunet_test_name\",\n        Description = \"Description of my unit test VLAN\",\n        VlanId = 31,\n        SubnetType = \"VLAN\",\n        SubnetIp = \"10.250.140.0\",\n        DefaultGatewayIp = \"10.250.140.1\",\n        PrefixLength = 24,\n        DhcpOptions = \n        {\n            { \"boot_file_name\", \"bootfile\" },\n            { \"domain_name\", \"nutanix\" },\n            { \"tftp_server_name\", \"10.250.140.200\" },\n        },\n        DhcpDomainNameServerLists = new[]\n        {\n            \"8.8.8.8\",\n            \"4.2.2.2\",\n        },\n        DhcpDomainSearchLists = new[]\n        {\n            \"terraform.nutanix.com\",\n            \"terraform.unit.test.com\",\n        },\n    });\n\n    var projectTest = new Nutanix.Project(\"project_test\", new()\n    {\n        Name = \"my-project\",\n        Description = \"This is my project\",\n        Categories = new[]\n        {\n            new Nutanix.Inputs.ProjectCategoryArgs\n            {\n                Name = \"Environment\",\n                Value = \"Staging\",\n            },\n        },\n        ResourceDomain = new Nutanix.Inputs.ProjectResourceDomainArgs\n        {\n            Resources = new[]\n            {\n                new Nutanix.Inputs.ProjectResourceDomainResourceArgs\n                {\n                    Limit = 4,\n                    ResourceType = \"STORAGE\",\n                },\n            },\n        },\n        DefaultSubnetReference = new Nutanix.Inputs.ProjectDefaultSubnetReferenceArgs\n        {\n            Uuid = subnet.Metadata.Apply(metadata =\u003e metadata.Uuid),\n        },\n        ApiVersion = \"3.1\",\n    });\n\n    var test = Nutanix.GetProject.Invoke(new()\n    {\n        ProjectId = projectTest.Id,\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pierskarsenbarg/pulumi-nutanix/sdk/go/nutanix\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tsubnet, err := nutanix.NewSubnet(ctx, \"subnet\", \u0026nutanix.SubnetArgs{\n\t\t\tClusterUuid:      pulumi.String(\"\u003cYOUR_CLUSTER_ID\u003e\"),\n\t\t\tName:             pulumi.String(\"sunet_test_name\"),\n\t\t\tDescription:      pulumi.String(\"Description of my unit test VLAN\"),\n\t\t\tVlanId:           pulumi.Int(31),\n\t\t\tSubnetType:       pulumi.String(\"VLAN\"),\n\t\t\tSubnetIp:         pulumi.String(\"10.250.140.0\"),\n\t\t\tDefaultGatewayIp: pulumi.String(\"10.250.140.1\"),\n\t\t\tPrefixLength:     pulumi.Int(24),\n\t\t\tDhcpOptions: pulumi.StringMap{\n\t\t\t\t\"boot_file_name\":   pulumi.String(\"bootfile\"),\n\t\t\t\t\"domain_name\":      pulumi.String(\"nutanix\"),\n\t\t\t\t\"tftp_server_name\": pulumi.String(\"10.250.140.200\"),\n\t\t\t},\n\t\t\tDhcpDomainNameServerLists: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"8.8.8.8\"),\n\t\t\t\tpulumi.String(\"4.2.2.2\"),\n\t\t\t},\n\t\t\tDhcpDomainSearchLists: pulumi.StringArray{\n\t\t\t\tpulumi.String(\"terraform.nutanix.com\"),\n\t\t\t\tpulumi.String(\"terraform.unit.test.com\"),\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\tprojectTest, err := nutanix.NewProject(ctx, \"project_test\", \u0026nutanix.ProjectArgs{\n\t\t\tName:        pulumi.String(\"my-project\"),\n\t\t\tDescription: pulumi.String(\"This is my project\"),\n\t\t\tCategories: nutanix.ProjectCategoryArray{\n\t\t\t\t\u0026nutanix.ProjectCategoryArgs{\n\t\t\t\t\tName:  pulumi.String(\"Environment\"),\n\t\t\t\t\tValue: pulumi.String(\"Staging\"),\n\t\t\t\t},\n\t\t\t},\n\t\t\tResourceDomain: \u0026nutanix.ProjectResourceDomainArgs{\n\t\t\t\tResources: nutanix.ProjectResourceDomainResourceArray{\n\t\t\t\t\t\u0026nutanix.ProjectResourceDomainResourceArgs{\n\t\t\t\t\t\tLimit:        pulumi.Int(4),\n\t\t\t\t\t\tResourceType: pulumi.String(\"STORAGE\"),\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t\tDefaultSubnetReference: \u0026nutanix.ProjectDefaultSubnetReferenceArgs{\n\t\t\t\tUuid: subnet.Metadata.ApplyT(func(metadata map[string]string) (string, error) {\n\t\t\t\t\treturn metadata.Uuid, nil\n\t\t\t\t}).(pulumi.StringOutput),\n\t\t\t},\n\t\t\tApiVersion: pulumi.String(\"3.1\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_ = nutanix.LookupProjectOutput(ctx, nutanix.GetProjectOutputArgs{\n\t\t\tProjectId: projectTest.ID(),\n\t\t}, nil)\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.nutanix.Subnet;\nimport com.pulumi.nutanix.SubnetArgs;\nimport com.pulumi.nutanix.Project;\nimport com.pulumi.nutanix.ProjectArgs;\nimport com.pulumi.nutanix.inputs.ProjectCategoryArgs;\nimport com.pulumi.nutanix.inputs.ProjectResourceDomainArgs;\nimport com.pulumi.nutanix.inputs.ProjectDefaultSubnetReferenceArgs;\nimport com.pulumi.nutanix.NutanixFunctions;\nimport com.pulumi.nutanix.inputs.GetProjectArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var subnet = new Subnet(\"subnet\", SubnetArgs.builder()\n            .clusterUuid(\"\u003cYOUR_CLUSTER_ID\u003e\")\n            .name(\"sunet_test_name\")\n            .description(\"Description of my unit test VLAN\")\n            .vlanId(31)\n            .subnetType(\"VLAN\")\n            .subnetIp(\"10.250.140.0\")\n            .defaultGatewayIp(\"10.250.140.1\")\n            .prefixLength(24)\n            .dhcpOptions(Map.ofEntries(\n                Map.entry(\"boot_file_name\", \"bootfile\"),\n                Map.entry(\"domain_name\", \"nutanix\"),\n                Map.entry(\"tftp_server_name\", \"10.250.140.200\")\n            ))\n            .dhcpDomainNameServerLists(            \n                \"8.8.8.8\",\n                \"4.2.2.2\")\n            .dhcpDomainSearchLists(            \n                \"terraform.nutanix.com\",\n                \"terraform.unit.test.com\")\n            .build());\n\n        var projectTest = new Project(\"projectTest\", ProjectArgs.builder()\n            .name(\"my-project\")\n            .description(\"This is my project\")\n            .categories(ProjectCategoryArgs.builder()\n                .name(\"Environment\")\n                .value(\"Staging\")\n                .build())\n            .resourceDomain(ProjectResourceDomainArgs.builder()\n                .resources(ProjectResourceDomainResourceArgs.builder()\n                    .limit(4)\n                    .resourceType(\"STORAGE\")\n                    .build())\n                .build())\n            .defaultSubnetReference(ProjectDefaultSubnetReferenceArgs.builder()\n                .uuid(subnet.metadata().applyValue(_metadata -\u003e _metadata.uuid()))\n                .build())\n            .apiVersion(\"3.1\")\n            .build());\n\n        final var test = NutanixFunctions.getProject(GetProjectArgs.builder()\n            .projectId(projectTest.id())\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  subnet:\n    type: nutanix:Subnet\n    properties:\n      clusterUuid: \u003cYOUR_CLUSTER_ID\u003e\n      name: sunet_test_name\n      description: Description of my unit test VLAN\n      vlanId: 31\n      subnetType: VLAN\n      subnetIp: 10.250.140.0\n      defaultGatewayIp: 10.250.140.1\n      prefixLength: 24\n      dhcpOptions:\n        boot_file_name: bootfile\n        domain_name: nutanix\n        tftp_server_name: 10.250.140.200\n      dhcpDomainNameServerLists:\n        - 8.8.8.8\n        - 4.2.2.2\n      dhcpDomainSearchLists:\n        - terraform.nutanix.com\n        - terraform.unit.test.com\n  projectTest:\n    type: nutanix:Project\n    name: project_test\n    properties:\n      name: my-project\n      description: This is my project\n      categories:\n        - name: Environment\n          value: Staging\n      resourceDomain:\n        resources:\n          - limit: 4\n            resourceType: STORAGE\n      defaultSubnetReference:\n        uuid: ${subnet.metadata.uuid}\n      apiVersion: '3.1'\nvariables:\n  test:\n    fn::invoke:\n      function: nutanix:getProject\n      arguments:\n        projectId: ${projectTest.id}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
      "inputs": {
        "description": "A collection of arguments for invoking getProject.\n",
        "properties": {
          "categories": {
            "type": "array",
            "items": {
              "$ref": "#/types/nutanix:index%2FgetProjectCategory:getProjectCategory"
            },
            "description": "- (Optional) The category values represented as a dictionary of key \u003e list of values.\n"
          },
          "externalUserGroupReferenceLists": {
            "type": "array",
            "items": {
              "$ref": "#/types/nutanix:index%2FgetProjectExternalUserGroupReferenceList:getProjectExternalUserGroupReferenceList"
            },
            "description": "List of directory service user groups. These groups are not managed by Nutanix.\n* `external_user_group_reference_list.#.kind` - The kind name. Default value is \u003cspan pulumi-lang-nodejs=\"`userGroup`\" pulumi-lang-dotnet=\"`UserGroup`\" pulumi-lang-go=\"`userGroup`\" pulumi-lang-python=\"`user_group`\" pulumi-lang-yaml=\"`userGroup`\" pulumi-lang-java=\"`userGroup`\"\u003e`user_group`\u003c/span\u003e\n* `external_user_group_reference_list.#.uuid` - The UUID of a\u003cspan pulumi-lang-nodejs=\" userGroup\n\" pulumi-lang-dotnet=\" UserGroup\n\" pulumi-lang-go=\" userGroup\n\" pulumi-lang-python=\" user_group\n\" pulumi-lang-yaml=\" userGroup\n\" pulumi-lang-java=\" userGroup\n\"\u003e user_group\n\u003c/span\u003e* `external_user_group_reference_list.#.name` - The name of a user_group\n"
          },
          "projectId": {
            "type": "string",
            "description": "- (Required) The \u003cspan pulumi-lang-nodejs=\"`id`\" pulumi-lang-dotnet=\"`Id`\" pulumi-lang-go=\"`id`\" pulumi-lang-python=\"`id`\" pulumi-lang-yaml=\"`id`\" pulumi-lang-java=\"`id`\"\u003e`id`\u003c/span\u003e of the project.\n"
          },
          "projectName": {
            "type": "string"
          },
          "subnetReferenceLists": {
            "type": "array",
            "items": {
              "$ref": "#/types/nutanix:index%2FgetProjectSubnetReferenceList:getProjectSubnetReferenceList"
            },
            "description": "List of subnets for the project.\n* `subnet_reference_list.#.kind` - The kind name. Default value is \u003cspan pulumi-lang-nodejs=\"`subnet`\" pulumi-lang-dotnet=\"`Subnet`\" pulumi-lang-go=\"`subnet`\" pulumi-lang-python=\"`subnet`\" pulumi-lang-yaml=\"`subnet`\" pulumi-lang-java=\"`subnet`\"\u003e`subnet`\u003c/span\u003e\n* `subnet_reference_list.#.uuid` - The UUID of a subnet\n* `subnet_reference_list.#.name` - The name of a subnet.\n"
          },
          "userReferenceLists": {
            "type": "array",
            "items": {
              "$ref": "#/types/nutanix:index%2FgetProjectUserReferenceList:getProjectUserReferenceList"
            },
            "description": "List of Reference of users.\n"
          }
        },
        "type": "object"
      },
      "outputs": {
        "description": "A collection of values returned by getProject.\n",
        "properties": {
          "accountReferenceLists": {
            "description": "List of accounts associated with the project.\n* `account_reference_list.#.kind` - The kind name. Default value is \u003cspan pulumi-lang-nodejs=\"`account`\" pulumi-lang-dotnet=\"`Account`\" pulumi-lang-go=\"`account`\" pulumi-lang-python=\"`account`\" pulumi-lang-yaml=\"`account`\" pulumi-lang-java=\"`account`\"\u003e`account`\u003c/span\u003e\n* `account_reference_list.#.uuid` - The UUID of an account.\n* `account_reference_list.#.name` - The name of an account.\n",
            "items": {
              "$ref": "#/types/nutanix:index%2FgetProjectAccountReferenceList:getProjectAccountReferenceList"
            },
            "type": "array"
          },
          "acps": {
            "items": {
              "$ref": "#/types/nutanix:index%2FgetProjectAcp:getProjectAcp"
            },
            "type": "array"
          },
          "apiVersion": {
            "type": "string"
          },
          "categories": {
            "description": "- (Optional) The category values represented as a dictionary of key \u003e list of values.\n",
            "items": {
              "$ref": "#/types/nutanix:index%2FgetProjectCategory:getProjectCategory"
            },
            "type": "array"
          },
          "clusterReferenceLists": {
            "description": "(Optional/Computed) List of clusters associated with the project..\n* `cluster_reference_list.#.kind` - (Optional) The kind name. Default value is \u003cspan pulumi-lang-nodejs=\"`cluster`\" pulumi-lang-dotnet=\"`Cluster`\" pulumi-lang-go=\"`cluster`\" pulumi-lang-python=\"`cluster`\" pulumi-lang-yaml=\"`cluster`\" pulumi-lang-java=\"`cluster`\"\u003e`cluster`\u003c/span\u003e\n* `cluster_reference_list.#.uuid` - (Required) The UUID of a cluster\n* `cluster_reference_list.#.name` - (Optional/Computed) The name of a cluster.\n",
            "items": {
              "$ref": "#/types/nutanix:index%2FgetProjectClusterReferenceList:getProjectClusterReferenceList"
            },
            "type": "array"
          },
          "defaultEnvironmentReferences": {
            "description": "(Optional/Computed) Reference to a environment.\n",
            "items": {
              "$ref": "#/types/nutanix:index%2FgetProjectDefaultEnvironmentReference:getProjectDefaultEnvironmentReference"
            },
            "type": "array"
          },
          "defaultSubnetReference": {
            "additionalProperties": {
              "type": "string"
            },
            "description": "Reference to a subnet.\n",
            "type": "object"
          },
          "description": {
            "description": "Description of ACP\n",
            "type": "string"
          },
          "environmentReferenceLists": {
            "description": "List of environments associated with the project.\n* `environment_reference_list.#.kind` - The kind name. Default value is \u003cspan pulumi-lang-nodejs=\"`environment`\" pulumi-lang-dotnet=\"`Environment`\" pulumi-lang-go=\"`environment`\" pulumi-lang-python=\"`environment`\" pulumi-lang-yaml=\"`environment`\" pulumi-lang-java=\"`environment`\"\u003e`environment`\u003c/span\u003e\n* `environment_reference_list.#.uuid` - The UUID of an environment.\n* `environment_reference_list.#.name` - The name of an environment.\n",
            "items": {
              "$ref": "#/types/nutanix:index%2FgetProjectEnvironmentReferenceList:getProjectEnvironmentReferenceList"
            },
            "type": "array"
          },
          "externalNetworkLists": {
            "description": "List of external networks associated with the project.\n* `external_network_list.#.uuid` - The UUID of a network.\n* `external_network_list.#.name` - The name of a network.\n",
            "items": {
              "$ref": "#/types/nutanix:index%2FgetProjectExternalNetworkList:getProjectExternalNetworkList"
            },
            "type": "array"
          },
          "externalUserGroupReferenceLists": {
            "description": "List of directory service user groups. These groups are not managed by Nutanix.\n* `external_user_group_reference_list.#.kind` - The kind name. Default value is \u003cspan pulumi-lang-nodejs=\"`userGroup`\" pulumi-lang-dotnet=\"`UserGroup`\" pulumi-lang-go=\"`userGroup`\" pulumi-lang-python=\"`user_group`\" pulumi-lang-yaml=\"`userGroup`\" pulumi-lang-java=\"`userGroup`\"\u003e`user_group`\u003c/span\u003e\n* `external_user_group_reference_list.#.uuid` - The UUID of a\u003cspan pulumi-lang-nodejs=\" userGroup\n\" pulumi-lang-dotnet=\" UserGroup\n\" pulumi-lang-go=\" userGroup\n\" pulumi-lang-python=\" user_group\n\" pulumi-lang-yaml=\" userGroup\n\" pulumi-lang-java=\" userGroup\n\"\u003e user_group\n\u003c/span\u003e* `external_user_group_reference_list.#.name` - The name of a user_group\n",
            "items": {
              "$ref": "#/types/nutanix:index%2FgetProjectExternalUserGroupReferenceList:getProjectExternalUserGroupReferenceList"
            },
            "type": "array"
          },
          "id": {
            "description": "The provider-assigned unique ID for this managed resource.",
            "type": "string"
          },
          "isDefault": {
            "type": "boolean"
          },
          "metadata": {
            "additionalProperties": {
              "type": "string"
            },
            "type": "object"
          },
          "name": {
            "description": "the name.\n",
            "type": "string"
          },
          "ownerReference": {
            "additionalProperties": {
              "type": "string"
            },
            "type": "object"
          },
          "projectId": {
            "type": "string"
          },
          "projectName": {
            "type": "string"
          },
          "projectReference": {
            "additionalProperties": {
              "type": "string"
            },
            "type": "object"
          },
          "resourceDomains": {
            "description": "The status for a resource domain (limits and values)\n",
            "items": {
              "$ref": "#/types/nutanix:index%2FgetProjectResourceDomain:getProjectResourceDomain"
            },
            "type": "array"
          },
          "state": {
            "type": "string"
          },
          "subnetReferenceLists": {
            "description": "List of subnets for the project.\n* `subnet_reference_list.#.kind` - The kind name. Default value is \u003cspan pulumi-lang-nodejs=\"`subnet`\" pulumi-lang-dotnet=\"`Subnet`\" pulumi-lang-go=\"`subnet`\" pulumi-lang-python=\"`subnet`\" pulumi-lang-yaml=\"`subnet`\" pulumi-lang-java=\"`subnet`\"\u003e`subnet`\u003c/span\u003e\n* `subnet_reference_list.#.uuid` - The UUID of a subnet\n* `subnet_reference_list.#.name` - The name of a subnet.\n",
            "items": {
              "$ref": "#/types/nutanix:index%2FgetProjectSubnetReferenceList:getProjectSubnetReferenceList"
            },
            "type": "array"
          },
          "tunnelReferenceLists": {
            "description": "(Optional/Computed) List of tunnels associated with the project.\n* `tunnel_reference_list.#.kind` - (Optional) The kind name. Default value is \u003cspan pulumi-lang-nodejs=\"`tunnel`\" pulumi-lang-dotnet=\"`Tunnel`\" pulumi-lang-go=\"`tunnel`\" pulumi-lang-python=\"`tunnel`\" pulumi-lang-yaml=\"`tunnel`\" pulumi-lang-java=\"`tunnel`\"\u003e`tunnel`\u003c/span\u003e\n* `tunnel_reference_list.#.uuid` - (Required) The UUID of a tunnel\n* `tunnel_reference_list.#.name` - (Optional/Computed) The name of a tunnel.\n",
            "items": {
              "$ref": "#/types/nutanix:index%2FgetProjectTunnelReferenceList:getProjectTunnelReferenceList"
            },
            "type": "array"
          },
          "userReferenceLists": {
            "description": "List of Reference of users.\n",
            "items": {
              "$ref": "#/types/nutanix:index%2FgetProjectUserReferenceList:getProjectUserReferenceList"
            },
            "type": "array"
          },
          "vpcReferenceLists": {
            "description": "(Optional/Computed) List of VPCs associated with the project..\n* `vpc_reference_list.#.kind` - (Optional) The kind name. Default value is \u003cspan pulumi-lang-nodejs=\"`vpc`\" pulumi-lang-dotnet=\"`Vpc`\" pulumi-lang-go=\"`vpc`\" pulumi-lang-python=\"`vpc`\" pulumi-lang-yaml=\"`vpc`\" pulumi-lang-java=\"`vpc`\"\u003e`vpc`\u003c/span\u003e\n* `vpc_reference_list.#.uuid` - (Required) The UUID of a vpc\n* `vpc_reference_list.#.name` - (Optional/Computed) The name of a vpc.\n",
            "items": {
              "$ref": "#/types/nutanix:index%2FgetProjectVpcReferenceList:getProjectVpcReferenceList"
            },
            "type": "array"
          }
        },
        "required": [
          "accountReferenceLists",
          "acps",
          "apiVersion",
          "categories",
          "clusterReferenceLists",
          "defaultEnvironmentReferences",
          "defaultSubnetReference",
          "description",
          "environmentReferenceLists",
          "externalNetworkLists",
          "externalUserGroupReferenceLists",
          "id",
          "isDefault",
          "metadata",
          "name",
          "ownerReference",
          "projectReference",
          "resourceDomains",
          "state",
          "subnetReferenceLists",
          "tunnelReferenceLists",
          "userReferenceLists",
          "vpcReferenceLists"
        ],
        "type": "object"
      }
    },
    "nutanix:index/getProjects:getProjects": {
      "description": "Describes Projects\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as nutanix from \"@pierskarsenbarg/nutanix\";\n\nconst projects = nutanix.getProjects({});\n```\n```python\nimport pulumi\nimport pulumi_nutanix as nutanix\n\nprojects = nutanix.get_projects()\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Nutanix = Pulumi.Nutanix;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var projects = Nutanix.GetProjects.Invoke();\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pierskarsenbarg/pulumi-nutanix/sdk/go/nutanix\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := nutanix.GetProjects(ctx, map[string]interface{}{}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.nutanix.NutanixFunctions;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var projects = NutanixFunctions.getProjects(%!v(PANIC=Format method: runtime error: invalid memory address or nil pointer dereference);\n\n    }\n}\n```\n```yaml\nvariables:\n  projects:\n    fn::invoke:\n      function: nutanix:getProjects\n      arguments: {}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
      "outputs": {
        "description": "A collection of values returned by getProjects.\n",
        "properties": {
          "apiVersion": {
            "description": "version of the API\n",
            "type": "string"
          },
          "entities": {
            "description": "List of Projects\n",
            "items": {
              "$ref": "#/types/nutanix:index%2FgetProjectsEntity:getProjectsEntity"
            },
            "type": "array"
          },
          "id": {
            "description": "The provider-assigned unique ID for this managed resource.",
            "type": "string"
          }
        },
        "required": [
          "apiVersion",
          "entities",
          "id"
        ],
        "type": "object"
      }
    },
    "nutanix:index/getProtectedResourceV2:getProtectedResourceV2": {
      "description": "Get the details of the specified protected resource such as the restorable time ranges available on the local Prism Central and the state of replication to the targets specified in the applied protection policies. This applies only if the entity is protected in a minutely or synchronous schedule. Other protection schedules are not served by this endpoint yet, and are considered not protected.\n\n\n## Example 1: Get Protected Virtual Machine\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as nutanix from \"@pierskarsenbarg/nutanix\";\n\nconst protected_vm = nutanix.getProtectedResourceV2({\n    extId: \"d22529bb-f02d-4710-894b-d1de772d7832\",\n});\n```\n```python\nimport pulumi\nimport pulumi_nutanix as nutanix\n\nprotected_vm = nutanix.get_protected_resource_v2(ext_id=\"d22529bb-f02d-4710-894b-d1de772d7832\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Nutanix = Pulumi.Nutanix;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var protected_vm = Nutanix.GetProtectedResourceV2.Invoke(new()\n    {\n        ExtId = \"d22529bb-f02d-4710-894b-d1de772d7832\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pierskarsenbarg/pulumi-nutanix/sdk/go/nutanix\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := nutanix.GetProtectedResourceV2(ctx, \u0026nutanix.GetProtectedResourceV2Args{\n\t\t\tExtId: \"d22529bb-f02d-4710-894b-d1de772d7832\",\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.nutanix.NutanixFunctions;\nimport com.pulumi.nutanix.inputs.GetProtectedResourceV2Args;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var protected-vm = NutanixFunctions.getProtectedResourceV2(GetProtectedResourceV2Args.builder()\n            .extId(\"d22529bb-f02d-4710-894b-d1de772d7832\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  protected-vm:\n    fn::invoke:\n      function: nutanix:getProtectedResourceV2\n      arguments:\n        extId: d22529bb-f02d-4710-894b-d1de772d7832\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Example 2: Get Protected Volume Group\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as nutanix from \"@pierskarsenbarg/nutanix\";\n\nconst protected_vg = nutanix.getProtectedResourceV2({\n    extId: \"246c651a-1b16-4983-b5ff-204840f85e07\",\n});\n```\n```python\nimport pulumi\nimport pulumi_nutanix as nutanix\n\nprotected_vg = nutanix.get_protected_resource_v2(ext_id=\"246c651a-1b16-4983-b5ff-204840f85e07\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Nutanix = Pulumi.Nutanix;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var protected_vg = Nutanix.GetProtectedResourceV2.Invoke(new()\n    {\n        ExtId = \"246c651a-1b16-4983-b5ff-204840f85e07\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pierskarsenbarg/pulumi-nutanix/sdk/go/nutanix\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := nutanix.GetProtectedResourceV2(ctx, \u0026nutanix.GetProtectedResourceV2Args{\n\t\t\tExtId: \"246c651a-1b16-4983-b5ff-204840f85e07\",\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.nutanix.NutanixFunctions;\nimport com.pulumi.nutanix.inputs.GetProtectedResourceV2Args;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var protected-vg = NutanixFunctions.getProtectedResourceV2(GetProtectedResourceV2Args.builder()\n            .extId(\"246c651a-1b16-4983-b5ff-204840f85e07\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  protected-vg:\n    fn::invoke:\n      function: nutanix:getProtectedResourceV2\n      arguments:\n        extId: 246c651a-1b16-4983-b5ff-204840f85e07\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
      "inputs": {
        "description": "A collection of arguments for invoking getProtectedResourceV2.\n",
        "properties": {
          "extId": {
            "type": "string",
            "description": "-(Required) The external identifier of a protected VM or volume group that can be used to retrieve the protected resource.\n"
          }
        },
        "type": "object",
        "required": [
          "extId"
        ]
      },
      "outputs": {
        "description": "A collection of values returned by getProtectedResourceV2.\n",
        "properties": {
          "categoryFqNames": {
            "description": "Category key-value pairs associated with the protected resource at the time of protection. The category key and value are separated by '/'. For example, a category with key 'dept' and value 'hr' will be represented as 'dept/hr'.\n",
            "items": {
              "type": "string"
            },
            "type": "array"
          },
          "consistencyGroupExtId": {
            "description": "External identifier of the Consistency group which the protected resource is part of.\n",
            "type": "string"
          },
          "entityExtId": {
            "description": "The external identifier of the VM or the volume group associated with the protected resource.\n",
            "type": "string"
          },
          "entityType": {
            "description": "Protected resource entity type. Possible values are: VM, VOLUME_GROUP.\n",
            "type": "string"
          },
          "extId": {
            "description": "- The external identifier of a protected VM or volume group that can be used to retrieve the protected resource.\n",
            "type": "string"
          },
          "id": {
            "description": "The provider-assigned unique ID for this managed resource.",
            "type": "string"
          },
          "links": {
            "description": "A HATEOAS style link for the response. Each link contains a user-friendly name identifying the link and an address for retrieving the particular resource.\n",
            "items": {
              "$ref": "#/types/nutanix:index%2FgetProtectedResourceV2Link:getProtectedResourceV2Link"
            },
            "type": "array"
          },
          "replicationStates": {
            "description": "Replication related information about the protected resource.\n",
            "items": {
              "$ref": "#/types/nutanix:index%2FgetProtectedResourceV2ReplicationState:getProtectedResourceV2ReplicationState"
            },
            "type": "array"
          },
          "siteProtectionInfos": {
            "description": "The data protection details for the protected resource that are relevant to any of the sites in the local Prism Central, like the time ranges available for recovery.\n",
            "items": {
              "$ref": "#/types/nutanix:index%2FgetProtectedResourceV2SiteProtectionInfo:getProtectedResourceV2SiteProtectionInfo"
            },
            "type": "array"
          },
          "sourceSiteReferences": {
            "description": "Details about the data protection site in the Prism Central.\n",
            "items": {
              "$ref": "#/types/nutanix:index%2FgetProtectedResourceV2SourceSiteReference:getProtectedResourceV2SourceSiteReference"
            },
            "type": "array"
          },
          "tenantId": {
            "description": "A globally unique identifier that represents the tenant that owns this entity. The system automatically assigns it, and it and is immutable from an API consumer perspective (some use cases may cause this Id to change - For instance, a use case may require the transfer of ownership of the entity, but these cases are handled automatically on the server).\n",
            "type": "string"
          }
        },
        "required": [
          "categoryFqNames",
          "consistencyGroupExtId",
          "entityExtId",
          "entityType",
          "extId",
          "id",
          "links",
          "replicationStates",
          "siteProtectionInfos",
          "sourceSiteReferences",
          "tenantId"
        ],
        "type": "object"
      }
    },
    "nutanix:index/getProtectionPoliciesV2:getProtectionPoliciesV2": {
      "description": "List the protection policies defined on the system. This operation supports filtering, sorting, selection and pagination.\n\n\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as nutanix from \"@pierskarsenbarg/nutanix\";\n\n// with filter\nconst pps_filter = nutanix.getProtectionPoliciesV2({\n    filter: \"name eq 'example_protection_policy'\",\n});\n// with limit\nconst pp_limit = nutanix.getProtectionPoliciesV2({\n    limit: 4,\n});\n// with filter and limit\nconst example = nutanix.getProtectionPoliciesV2({\n    filter: \"startswith(name, 'C')\",\n    limit: 10,\n});\n```\n```python\nimport pulumi\nimport pulumi_nutanix as nutanix\n\n# with filter\npps_filter = nutanix.get_protection_policies_v2(filter=\"name eq 'example_protection_policy'\")\n# with limit\npp_limit = nutanix.get_protection_policies_v2(limit=4)\n# with filter and limit\nexample = nutanix.get_protection_policies_v2(filter=\"startswith(name, 'C')\",\n    limit=10)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Nutanix = Pulumi.Nutanix;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    // with filter\n    var pps_filter = Nutanix.GetProtectionPoliciesV2.Invoke(new()\n    {\n        Filter = \"name eq 'example_protection_policy'\",\n    });\n\n    // with limit\n    var pp_limit = Nutanix.GetProtectionPoliciesV2.Invoke(new()\n    {\n        Limit = 4,\n    });\n\n    // with filter and limit\n    var example = Nutanix.GetProtectionPoliciesV2.Invoke(new()\n    {\n        Filter = \"startswith(name, 'C')\",\n        Limit = 10,\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pierskarsenbarg/pulumi-nutanix/sdk/go/nutanix\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t// with filter\n\t\t_, err := nutanix.GetProtectionPoliciesV2(ctx, \u0026nutanix.GetProtectionPoliciesV2Args{\n\t\t\tFilter: pulumi.StringRef(\"name eq 'example_protection_policy'\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t// with limit\n\t\t_, err = nutanix.GetProtectionPoliciesV2(ctx, \u0026nutanix.GetProtectionPoliciesV2Args{\n\t\t\tLimit: pulumi.IntRef(4),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t// with filter and limit\n\t\t_, err = nutanix.GetProtectionPoliciesV2(ctx, \u0026nutanix.GetProtectionPoliciesV2Args{\n\t\t\tFilter: pulumi.StringRef(\"startswith(name, 'C')\"),\n\t\t\tLimit:  pulumi.IntRef(10),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.nutanix.NutanixFunctions;\nimport com.pulumi.nutanix.inputs.GetProtectionPoliciesV2Args;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        // with filter\n        final var pps-filter = NutanixFunctions.getProtectionPoliciesV2(GetProtectionPoliciesV2Args.builder()\n            .filter(\"name eq 'example_protection_policy'\")\n            .build());\n\n        // with limit\n        final var pp-limit = NutanixFunctions.getProtectionPoliciesV2(GetProtectionPoliciesV2Args.builder()\n            .limit(4)\n            .build());\n\n        // with filter and limit\n        final var example = NutanixFunctions.getProtectionPoliciesV2(GetProtectionPoliciesV2Args.builder()\n            .filter(\"startswith(name, 'C')\")\n            .limit(10)\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  # with filter\n  pps-filter:\n    fn::invoke:\n      function: nutanix:getProtectionPoliciesV2\n      arguments:\n        filter: name eq 'example_protection_policy'\n  # with limit\n  pp-limit:\n    fn::invoke:\n      function: nutanix:getProtectionPoliciesV2\n      arguments:\n        limit: 4\n  # with filter and limit\n  example:\n    fn::invoke:\n      function: nutanix:getProtectionPoliciesV2\n      arguments:\n        filter: startswith(name, 'C')\n        limit: '10'\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Protection Policies\n\nThe \u003cspan pulumi-lang-nodejs=\"`protectionPolicies`\" pulumi-lang-dotnet=\"`ProtectionPolicies`\" pulumi-lang-go=\"`protectionPolicies`\" pulumi-lang-python=\"`protection_policies`\" pulumi-lang-yaml=\"`protectionPolicies`\" pulumi-lang-java=\"`protectionPolicies`\"\u003e`protection_policies`\u003c/span\u003e is a list of protection policies. Each protection policy supports the following attributes:\n\n* \u003cspan pulumi-lang-nodejs=\"`tenantId`\" pulumi-lang-dotnet=\"`TenantId`\" pulumi-lang-go=\"`tenantId`\" pulumi-lang-python=\"`tenant_id`\" pulumi-lang-yaml=\"`tenantId`\" pulumi-lang-java=\"`tenantId`\"\u003e`tenant_id`\u003c/span\u003e: - A globally unique identifier that represents the tenant that owns this entity. The system automatically assigns it, and it and is immutable from an API consumer perspective (some use cases may cause this Id to change - For instance, a use case may require the transfer of ownership of the entity, but these cases are handled automatically on the server).\n* \u003cspan pulumi-lang-nodejs=\"`extId`\" pulumi-lang-dotnet=\"`ExtId`\" pulumi-lang-go=\"`extId`\" pulumi-lang-python=\"`ext_id`\" pulumi-lang-yaml=\"`extId`\" pulumi-lang-java=\"`extId`\"\u003e`ext_id`\u003c/span\u003e: - A globally unique identifier of an instance that is suitable for external consumption.\n* \u003cspan pulumi-lang-nodejs=\"`links`\" pulumi-lang-dotnet=\"`Links`\" pulumi-lang-go=\"`links`\" pulumi-lang-python=\"`links`\" pulumi-lang-yaml=\"`links`\" pulumi-lang-java=\"`links`\"\u003e`links`\u003c/span\u003e: - A HATEOAS style link for the response. Each link contains a user-friendly name identifying the link and an address for retrieving the particular resource.\n* \u003cspan pulumi-lang-nodejs=\"`name`\" pulumi-lang-dotnet=\"`Name`\" pulumi-lang-go=\"`name`\" pulumi-lang-python=\"`name`\" pulumi-lang-yaml=\"`name`\" pulumi-lang-java=\"`name`\"\u003e`name`\u003c/span\u003e: - Name of the protection policy.\n* \u003cspan pulumi-lang-nodejs=\"`description`\" pulumi-lang-dotnet=\"`Description`\" pulumi-lang-go=\"`description`\" pulumi-lang-python=\"`description`\" pulumi-lang-yaml=\"`description`\" pulumi-lang-java=\"`description`\"\u003e`description`\u003c/span\u003e: - Description of the protection policy.\n* \u003cspan pulumi-lang-nodejs=\"`replicationLocations`\" pulumi-lang-dotnet=\"`ReplicationLocations`\" pulumi-lang-go=\"`replicationLocations`\" pulumi-lang-python=\"`replication_locations`\" pulumi-lang-yaml=\"`replicationLocations`\" pulumi-lang-java=\"`replicationLocations`\"\u003e`replication_locations`\u003c/span\u003e: - Hypervisor details.\n* \u003cspan pulumi-lang-nodejs=\"`replicationConfigurations`\" pulumi-lang-dotnet=\"`ReplicationConfigurations`\" pulumi-lang-go=\"`replicationConfigurations`\" pulumi-lang-python=\"`replication_configurations`\" pulumi-lang-yaml=\"`replicationConfigurations`\" pulumi-lang-java=\"`replicationConfigurations`\"\u003e`replication_configurations`\u003c/span\u003e: - Cluster reference for an entity.\n* \u003cspan pulumi-lang-nodejs=\"`categoryIds`\" pulumi-lang-dotnet=\"`CategoryIds`\" pulumi-lang-go=\"`categoryIds`\" pulumi-lang-python=\"`category_ids`\" pulumi-lang-yaml=\"`categoryIds`\" pulumi-lang-java=\"`categoryIds`\"\u003e`category_ids`\u003c/span\u003e: - Host entity with its attributes.\n* \u003cspan pulumi-lang-nodejs=\"`isApprovalPolicyNeeded`\" pulumi-lang-dotnet=\"`IsApprovalPolicyNeeded`\" pulumi-lang-go=\"`isApprovalPolicyNeeded`\" pulumi-lang-python=\"`is_approval_policy_needed`\" pulumi-lang-yaml=\"`isApprovalPolicyNeeded`\" pulumi-lang-java=\"`isApprovalPolicyNeeded`\"\u003e`is_approval_policy_needed`\u003c/span\u003e: - Disks attached to host.\n* \u003cspan pulumi-lang-nodejs=\"`ownerExtId`\" pulumi-lang-dotnet=\"`OwnerExtId`\" pulumi-lang-go=\"`ownerExtId`\" pulumi-lang-python=\"`owner_ext_id`\" pulumi-lang-yaml=\"`ownerExtId`\" pulumi-lang-java=\"`ownerExtId`\"\u003e`owner_ext_id`\u003c/span\u003e: - Node degraded status.\n\n\n### Links\nThe links attribute supports the following:\n\n* \u003cspan pulumi-lang-nodejs=\"`href`\" pulumi-lang-dotnet=\"`Href`\" pulumi-lang-go=\"`href`\" pulumi-lang-python=\"`href`\" pulumi-lang-yaml=\"`href`\" pulumi-lang-java=\"`href`\"\u003e`href`\u003c/span\u003e: - The URL at which the entity described by the link can be accessed.\n* \u003cspan pulumi-lang-nodejs=\"`rel`\" pulumi-lang-dotnet=\"`Rel`\" pulumi-lang-go=\"`rel`\" pulumi-lang-python=\"`rel`\" pulumi-lang-yaml=\"`rel`\" pulumi-lang-java=\"`rel`\"\u003e`rel`\u003c/span\u003e: - A name that identifies the relationship of the link to the object that is returned by the URL. The unique value of \"self\" identifies the URL for the object.\n\n### Replication Locations\nThe\u003cspan pulumi-lang-nodejs=\" replicationLocations \" pulumi-lang-dotnet=\" ReplicationLocations \" pulumi-lang-go=\" replicationLocations \" pulumi-lang-python=\" replication_locations \" pulumi-lang-yaml=\" replicationLocations \" pulumi-lang-java=\" replicationLocations \"\u003e replication_locations \u003c/span\u003eattribute supports the following:\n\n* \u003cspan pulumi-lang-nodejs=\"`label`\" pulumi-lang-dotnet=\"`Label`\" pulumi-lang-go=\"`label`\" pulumi-lang-python=\"`label`\" pulumi-lang-yaml=\"`label`\" pulumi-lang-java=\"`label`\"\u003e`label`\u003c/span\u003e: - This is a unique user defined label of the replication location. It is used to identify the location in the replication configurations.\n* \u003cspan pulumi-lang-nodejs=\"`domainManagerExtId`\" pulumi-lang-dotnet=\"`DomainManagerExtId`\" pulumi-lang-go=\"`domainManagerExtId`\" pulumi-lang-python=\"`domain_manager_ext_id`\" pulumi-lang-yaml=\"`domainManagerExtId`\" pulumi-lang-java=\"`domainManagerExtId`\"\u003e`domain_manager_ext_id`\u003c/span\u003e: - External identifier of the domain manager.\n* \u003cspan pulumi-lang-nodejs=\"`replicationSubLocation`\" pulumi-lang-dotnet=\"`ReplicationSubLocation`\" pulumi-lang-go=\"`replicationSubLocation`\" pulumi-lang-python=\"`replication_sub_location`\" pulumi-lang-yaml=\"`replicationSubLocation`\" pulumi-lang-java=\"`replicationSubLocation`\"\u003e`replication_sub_location`\u003c/span\u003e: - Specifies the replication sub-locations where recovery points can be created or replicated.\n* \u003cspan pulumi-lang-nodejs=\"`isPrimary`\" pulumi-lang-dotnet=\"`IsPrimary`\" pulumi-lang-go=\"`isPrimary`\" pulumi-lang-python=\"`is_primary`\" pulumi-lang-yaml=\"`isPrimary`\" pulumi-lang-java=\"`isPrimary`\"\u003e`is_primary`\u003c/span\u003e: - One of the locations must be specified as the primary location. All the other locations must be connected to the primary location.\n\n#### Replication Sub Location\nThe\u003cspan pulumi-lang-nodejs=\" replicationSubLocation \" pulumi-lang-dotnet=\" ReplicationSubLocation \" pulumi-lang-go=\" replicationSubLocation \" pulumi-lang-python=\" replication_sub_location \" pulumi-lang-yaml=\" replicationSubLocation \" pulumi-lang-java=\" replicationSubLocation \"\u003e replication_sub_location \u003c/span\u003eattribute supports the following:\n\u003e One of \u003cspan pulumi-lang-nodejs=\"`clusterExtIds`\" pulumi-lang-dotnet=\"`ClusterExtIds`\" pulumi-lang-go=\"`clusterExtIds`\" pulumi-lang-python=\"`cluster_ext_ids`\" pulumi-lang-yaml=\"`clusterExtIds`\" pulumi-lang-java=\"`clusterExtIds`\"\u003e`cluster_ext_ids`\u003c/span\u003e :\n* \u003cspan pulumi-lang-nodejs=\"`clusterExtIds`\" pulumi-lang-dotnet=\"`ClusterExtIds`\" pulumi-lang-go=\"`clusterExtIds`\" pulumi-lang-python=\"`cluster_ext_ids`\" pulumi-lang-yaml=\"`clusterExtIds`\" pulumi-lang-java=\"`clusterExtIds`\"\u003e`cluster_ext_ids`\u003c/span\u003e :  - External identifier of the clusters.\n\n##### Cluster Ext Ids\nThe\u003cspan pulumi-lang-nodejs=\" clusterExtIds \" pulumi-lang-dotnet=\" ClusterExtIds \" pulumi-lang-go=\" clusterExtIds \" pulumi-lang-python=\" cluster_ext_ids \" pulumi-lang-yaml=\" clusterExtIds \" pulumi-lang-java=\" clusterExtIds \"\u003e cluster_ext_ids \u003c/span\u003eattribute supports the following:\n\n* \u003cspan pulumi-lang-nodejs=\"`clusterExtId`\" pulumi-lang-dotnet=\"`ClusterExtId`\" pulumi-lang-go=\"`clusterExtId`\" pulumi-lang-python=\"`cluster_ext_id`\" pulumi-lang-yaml=\"`clusterExtId`\" pulumi-lang-java=\"`clusterExtId`\"\u003e`cluster_ext_id`\u003c/span\u003e: - List of Prism Element cluster external identifiers whose associated VMs and volume groups are protected. Only the primary location can have multiple clusters configured, while the other locations can specify only one cluster. Clusters must be specified for replication within the same Prism Central and cannot be specified for an MST type location. All clusters are considered if the cluster external identifier list is empty.\n\n### Replication Configurations\nThe\u003cspan pulumi-lang-nodejs=\" replicationConfigurations \" pulumi-lang-dotnet=\" ReplicationConfigurations \" pulumi-lang-go=\" replicationConfigurations \" pulumi-lang-python=\" replication_configurations \" pulumi-lang-yaml=\" replicationConfigurations \" pulumi-lang-java=\" replicationConfigurations \"\u003e replication_configurations \u003c/span\u003eattribute supports the following:\n\n* \u003cspan pulumi-lang-nodejs=\"`sourceLocationLabel`\" pulumi-lang-dotnet=\"`SourceLocationLabel`\" pulumi-lang-go=\"`sourceLocationLabel`\" pulumi-lang-python=\"`source_location_label`\" pulumi-lang-yaml=\"`sourceLocationLabel`\" pulumi-lang-java=\"`sourceLocationLabel`\"\u003e`source_location_label`\u003c/span\u003e: - Label of the source location from the replication locations list, where the entity is running. The location of type MST can not be specified as the replication source.\n* \u003cspan pulumi-lang-nodejs=\"`remoteLocationLabel`\" pulumi-lang-dotnet=\"`RemoteLocationLabel`\" pulumi-lang-go=\"`remoteLocationLabel`\" pulumi-lang-python=\"`remote_location_label`\" pulumi-lang-yaml=\"`remoteLocationLabel`\" pulumi-lang-java=\"`remoteLocationLabel`\"\u003e`remote_location_label`\u003c/span\u003e: - Label of the source location from the replication locations list, where the entity will be replicated.\n* \u003cspan pulumi-lang-nodejs=\"`schedule`\" pulumi-lang-dotnet=\"`Schedule`\" pulumi-lang-go=\"`schedule`\" pulumi-lang-python=\"`schedule`\" pulumi-lang-yaml=\"`schedule`\" pulumi-lang-java=\"`schedule`\"\u003e`schedule`\u003c/span\u003e: - Schedule for protection. The schedule specifies the recovery point objective and the retention policy for the participating locations.\n\n#### Schedule\nThe schedule attribute supports the following:\n\n* \u003cspan pulumi-lang-nodejs=\"`recoveryPointType`\" pulumi-lang-dotnet=\"`RecoveryPointType`\" pulumi-lang-go=\"`recoveryPointType`\" pulumi-lang-python=\"`recovery_point_type`\" pulumi-lang-yaml=\"`recoveryPointType`\" pulumi-lang-java=\"`recoveryPointType`\"\u003e`recovery_point_type`\u003c/span\u003e: - Type of recovery point.\n   * `CRASH_CONSISTENT`: Crash-consistent Recovery points capture all the VM and application level details.\n   * `APP_CONSISTENT`: Application-consistent Recovery points can capture all the data stored in the memory and also the in-progress transaction details.\n* \u003cspan pulumi-lang-nodejs=\"`recoveryPointObjectiveTimeSeconds`\" pulumi-lang-dotnet=\"`RecoveryPointObjectiveTimeSeconds`\" pulumi-lang-go=\"`recoveryPointObjectiveTimeSeconds`\" pulumi-lang-python=\"`recovery_point_objective_time_seconds`\" pulumi-lang-yaml=\"`recoveryPointObjectiveTimeSeconds`\" pulumi-lang-java=\"`recoveryPointObjectiveTimeSeconds`\"\u003e`recovery_point_objective_time_seconds`\u003c/span\u003e: - The Recovery point objective of the schedule in seconds and specified in multiple of 60 seconds. Only following RPO values can be provided for rollup retention type:\n  - Minute(s): 1, 2, 3, 4, 5, 6, 10, 12, 15\n  - Hour(s): 1, 2, 3, 4, 6, 8, 12\n  - Day(s): 1\n  - Week(s): 1, 2\n* \u003cspan pulumi-lang-nodejs=\"`retention`\" pulumi-lang-dotnet=\"`Retention`\" pulumi-lang-go=\"`retention`\" pulumi-lang-python=\"`retention`\" pulumi-lang-yaml=\"`retention`\" pulumi-lang-java=\"`retention`\"\u003e`retention`\u003c/span\u003e: - Specifies the retention policy for the recovery point schedule.\n* \u003cspan pulumi-lang-nodejs=\"`startTime`\" pulumi-lang-dotnet=\"`StartTime`\" pulumi-lang-go=\"`startTime`\" pulumi-lang-python=\"`start_time`\" pulumi-lang-yaml=\"`startTime`\" pulumi-lang-java=\"`startTime`\"\u003e`start_time`\u003c/span\u003e: - Represents the protection start time for the new entities added to the policy after the policy is created in h:m format. The values must be between 00h:00m and 23h:59m and in UTC timezone. It specifies the time when the first snapshot is taken and replicated for any entity added to the policy. If this is not specified, the snapshot is taken immediately and replicated for any new entity added to the policy.\n* \u003cspan pulumi-lang-nodejs=\"`syncReplicationAutoSuspendTimeoutSeconds`\" pulumi-lang-dotnet=\"`SyncReplicationAutoSuspendTimeoutSeconds`\" pulumi-lang-go=\"`syncReplicationAutoSuspendTimeoutSeconds`\" pulumi-lang-python=\"`sync_replication_auto_suspend_timeout_seconds`\" pulumi-lang-yaml=\"`syncReplicationAutoSuspendTimeoutSeconds`\" pulumi-lang-java=\"`syncReplicationAutoSuspendTimeoutSeconds`\"\u003e`sync_replication_auto_suspend_timeout_seconds`\u003c/span\u003e: - Auto suspend timeout if there is a connection failure between locations for synchronous replication. If this value is not set, then the policy will not be suspended.\n\n#### Retention\n\u003e One of \u003cspan pulumi-lang-nodejs=\"`linearRetention`\" pulumi-lang-dotnet=\"`LinearRetention`\" pulumi-lang-go=\"`linearRetention`\" pulumi-lang-python=\"`linear_retention`\" pulumi-lang-yaml=\"`linearRetention`\" pulumi-lang-java=\"`linearRetention`\"\u003e`linear_retention`\u003c/span\u003e or \u003cspan pulumi-lang-nodejs=\"`autoRollupRetention`\" pulumi-lang-dotnet=\"`AutoRollupRetention`\" pulumi-lang-go=\"`autoRollupRetention`\" pulumi-lang-python=\"`auto_rollup_retention`\" pulumi-lang-yaml=\"`autoRollupRetention`\" pulumi-lang-java=\"`autoRollupRetention`\"\u003e`auto_rollup_retention`\u003c/span\u003e :\n\n* \u003cspan pulumi-lang-nodejs=\"`linearRetention`\" pulumi-lang-dotnet=\"`LinearRetention`\" pulumi-lang-go=\"`linearRetention`\" pulumi-lang-python=\"`linear_retention`\" pulumi-lang-yaml=\"`linearRetention`\" pulumi-lang-java=\"`linearRetention`\"\u003e`linear_retention`\u003c/span\u003e: - Linear retention policy.\n* \u003cspan pulumi-lang-nodejs=\"`autoRollupRetention`\" pulumi-lang-dotnet=\"`AutoRollupRetention`\" pulumi-lang-go=\"`autoRollupRetention`\" pulumi-lang-python=\"`auto_rollup_retention`\" pulumi-lang-yaml=\"`autoRollupRetention`\" pulumi-lang-java=\"`autoRollupRetention`\"\u003e`auto_rollup_retention`\u003c/span\u003e: - Auto rollup retention policy.\n\n##### Linear Retention\nThe\u003cspan pulumi-lang-nodejs=\" linearRetention \" pulumi-lang-dotnet=\" LinearRetention \" pulumi-lang-go=\" linearRetention \" pulumi-lang-python=\" linear_retention \" pulumi-lang-yaml=\" linearRetention \" pulumi-lang-java=\" linearRetention \"\u003e linear_retention \u003c/span\u003eattribute supports the following:\n\n* \u003cspan pulumi-lang-nodejs=\"`local`\" pulumi-lang-dotnet=\"`Local`\" pulumi-lang-go=\"`local`\" pulumi-lang-python=\"`local`\" pulumi-lang-yaml=\"`local`\" pulumi-lang-java=\"`local`\"\u003e`local`\u003c/span\u003e: - Specifies the number of recovery points to retain on the local location.\n* \u003cspan pulumi-lang-nodejs=\"`remote`\" pulumi-lang-dotnet=\"`Remote`\" pulumi-lang-go=\"`remote`\" pulumi-lang-python=\"`remote`\" pulumi-lang-yaml=\"`remote`\" pulumi-lang-java=\"`remote`\"\u003e`remote`\u003c/span\u003e: - Specifies the number of recovery points to retain on the remote location.\n\n##### Auto Rollup Retention\nThe\u003cspan pulumi-lang-nodejs=\" autoRollupRetention \" pulumi-lang-dotnet=\" AutoRollupRetention \" pulumi-lang-go=\" autoRollupRetention \" pulumi-lang-python=\" auto_rollup_retention \" pulumi-lang-yaml=\" autoRollupRetention \" pulumi-lang-java=\" autoRollupRetention \"\u003e auto_rollup_retention \u003c/span\u003eattribute supports the following:\n\n* \u003cspan pulumi-lang-nodejs=\"`local`\" pulumi-lang-dotnet=\"`Local`\" pulumi-lang-go=\"`local`\" pulumi-lang-python=\"`local`\" pulumi-lang-yaml=\"`local`\" pulumi-lang-java=\"`local`\"\u003e`local`\u003c/span\u003e: - Specifies the auto rollup retention details.\n* \u003cspan pulumi-lang-nodejs=\"`remote`\" pulumi-lang-dotnet=\"`Remote`\" pulumi-lang-go=\"`remote`\" pulumi-lang-python=\"`remote`\" pulumi-lang-yaml=\"`remote`\" pulumi-lang-java=\"`remote`\"\u003e`remote`\u003c/span\u003e: - Specifies the auto rollup retention details.\n\n###### Local, Remote\nThe local, remote attribute in the\u003cspan pulumi-lang-nodejs=\" autoRollupRetention \" pulumi-lang-dotnet=\" AutoRollupRetention \" pulumi-lang-go=\" autoRollupRetention \" pulumi-lang-python=\" auto_rollup_retention \" pulumi-lang-yaml=\" autoRollupRetention \" pulumi-lang-java=\" autoRollupRetention \"\u003e auto_rollup_retention \u003c/span\u003esupports the following:\n\n* \u003cspan pulumi-lang-nodejs=\"`snapshotIntervalType`\" pulumi-lang-dotnet=\"`SnapshotIntervalType`\" pulumi-lang-go=\"`snapshotIntervalType`\" pulumi-lang-python=\"`snapshot_interval_type`\" pulumi-lang-yaml=\"`snapshotIntervalType`\" pulumi-lang-java=\"`snapshotIntervalType`\"\u003e`snapshot_interval_type`\u003c/span\u003e: - Snapshot interval period.\n   * `YEARLY`: Specifies the number of latest yearly recovery points to retain.\n   * `WEEKLY`: Specifies the number of latest weekly recovery points to retain.\n   * `DAILY`: Specifies the number of latest daily recovery points to retain.\n   * `MONTHLY`: Specifies the number of latest monthly recovery points to retain.\n   * `HOURLY`: Specifies the number of latest hourly recovery points to retain.\n* \u003cspan pulumi-lang-nodejs=\"`frequency`\" pulumi-lang-dotnet=\"`Frequency`\" pulumi-lang-go=\"`frequency`\" pulumi-lang-python=\"`frequency`\" pulumi-lang-yaml=\"`frequency`\" pulumi-lang-java=\"`frequency`\"\u003e`frequency`\u003c/span\u003e: - Multiplier to 'snapshotIntervalType'. For example, if 'snapshotIntervalType' is 'YEARLY' and 'multiple' is 5, then 5 years worth of rollup snapshots will be retained.\n\n\n\n\nSee detailed information in [Nutanix List Protection Policies V4](https://developers.nutanix.com/api-reference?namespace=datapolicies\u0026version=v4.0#tag/ProtectionPolicies/operation/listProtectionPolicies).\n",
      "inputs": {
        "description": "A collection of arguments for invoking getProtectionPoliciesV2.\n",
        "properties": {
          "filter": {
            "type": "string",
            "description": "-(Optional) A URL query parameter that allows clients to filter a collection of resources. The expression specified with $filter is evaluated for each resource in the collection, and only items where the expression evaluates to true are included in the response. Expression specified with the $filter must conform to the OData V4.01 URL conventions. For example, filter '$filter=name eq 'karbon-ntnx-1.0' would filter the result on cluster name 'karbon-ntnx1.0', filter '$filter=startswith(name, 'C')' would filter on cluster name starting with 'C'. The filter can be applied to the following fields:\n- extId\n- name\n- ownerExtId\n- replicationLocations/domainManagerExtId\n"
          },
          "limit": {
            "type": "integer",
            "description": "-(Optional) A URL query parameter that specifies the total number of records returned in the result set. Must be a positive integer between 1 and 100. Any number out of this range will lead to a validation error. If the limit is not provided, a default value of 50 records will be returned in the result set.\n"
          },
          "orderBy": {
            "type": "string",
            "description": "-(Optional) A URL query parameter that allows clients to specify the sort criteria for the returned list of objects. Resources can be sorted in ascending order using asc or descending order using desc. If asc or desc are not specified, the resources will be sorted in ascending order by default. For example, '$orderby=templateName desc' would get all templates sorted by templateName in descending order. The orderby can be applied to the following fields:\n- name\n"
          },
          "page": {
            "type": "integer",
            "description": "-(Optional) A URL query parameter that specifies the page number of the result set. It must be a positive integer between 0 and the maximum number of pages that are available for that resource. Any number out of this range might lead to no results.\n"
          },
          "select": {
            "type": "string",
            "description": "-(Optional) A URL query parameter that allows clients to request a specific set of properties for each entity or complex type. Expression specified with the $select must conform to the OData V4.01 URL conventions. If a $select expression consists of a single select item that is an asterisk (i.e., *), then all properties on the matching resource will be returned.\n- extId\n- name\n"
          }
        },
        "type": "object"
      },
      "outputs": {
        "description": "A collection of values returned by getProtectionPoliciesV2.\n",
        "properties": {
          "filter": {
            "type": "string"
          },
          "id": {
            "description": "The provider-assigned unique ID for this managed resource.",
            "type": "string"
          },
          "limit": {
            "type": "integer"
          },
          "orderBy": {
            "type": "string"
          },
          "page": {
            "type": "integer"
          },
          "protectionPolicies": {
            "description": "- List of protection policies.\n",
            "items": {
              "$ref": "#/types/nutanix:index%2FgetProtectionPoliciesV2ProtectionPolicy:getProtectionPoliciesV2ProtectionPolicy"
            },
            "type": "array"
          },
          "select": {
            "type": "string"
          }
        },
        "required": [
          "id",
          "protectionPolicies"
        ],
        "type": "object"
      }
    },
    "nutanix:index/getProtectionPolicyV2:getProtectionPolicyV2": {
      "description": "Describes the Fetches the protection policy identified by an external identifier.\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as nutanix from \"@pierskarsenbarg/nutanix\";\n\nconst example = nutanix.getProtectionPolicyV2({\n    extId: \"00000000-0000-0000-0000-000000000000\",\n});\n```\n```python\nimport pulumi\nimport pulumi_nutanix as nutanix\n\nexample = nutanix.get_protection_policy_v2(ext_id=\"00000000-0000-0000-0000-000000000000\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Nutanix = Pulumi.Nutanix;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var example = Nutanix.GetProtectionPolicyV2.Invoke(new()\n    {\n        ExtId = \"00000000-0000-0000-0000-000000000000\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pierskarsenbarg/pulumi-nutanix/sdk/go/nutanix\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := nutanix.LookupProtectionPolicyV2(ctx, \u0026nutanix.LookupProtectionPolicyV2Args{\n\t\t\tExtId: \"00000000-0000-0000-0000-000000000000\",\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.nutanix.NutanixFunctions;\nimport com.pulumi.nutanix.inputs.GetProtectionPolicyV2Args;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var example = NutanixFunctions.getProtectionPolicyV2(GetProtectionPolicyV2Args.builder()\n            .extId(\"00000000-0000-0000-0000-000000000000\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  example:\n    fn::invoke:\n      function: nutanix:getProtectionPolicyV2\n      arguments:\n        extId: 00000000-0000-0000-0000-000000000000\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
      "inputs": {
        "description": "A collection of arguments for invoking getProtectionPolicyV2.\n",
        "properties": {
          "extId": {
            "type": "string",
            "description": "-(Required) The external identifier of the protection policy.\n"
          }
        },
        "type": "object",
        "required": [
          "extId"
        ]
      },
      "outputs": {
        "description": "A collection of values returned by getProtectionPolicyV2.\n",
        "properties": {
          "categoryIds": {
            "description": "- Host entity with its attributes.\n",
            "items": {
              "type": "string"
            },
            "type": "array"
          },
          "description": {
            "description": "- Description of the protection policy.\n",
            "type": "string"
          },
          "extId": {
            "description": "- A globally unique identifier of an instance that is suitable for external consumption.\n",
            "type": "string"
          },
          "id": {
            "description": "The provider-assigned unique ID for this managed resource.",
            "type": "string"
          },
          "isApprovalPolicyNeeded": {
            "description": "- Disks attached to host.\n",
            "type": "boolean"
          },
          "links": {
            "description": "- A HATEOAS style link for the response. Each link contains a user-friendly name identifying the link and an address for retrieving the particular resource.\n",
            "items": {
              "$ref": "#/types/nutanix:index%2FgetProtectionPolicyV2Link:getProtectionPolicyV2Link"
            },
            "type": "array"
          },
          "name": {
            "description": "- Name of the protection policy.\n",
            "type": "string"
          },
          "ownerExtId": {
            "description": "- Node degraded status.\n",
            "type": "string"
          },
          "replicationConfigurations": {
            "description": "- Cluster reference for an entity.\n",
            "items": {
              "$ref": "#/types/nutanix:index%2FgetProtectionPolicyV2ReplicationConfiguration:getProtectionPolicyV2ReplicationConfiguration"
            },
            "type": "array"
          },
          "replicationLocations": {
            "description": "- Hypervisor details.\n",
            "items": {
              "$ref": "#/types/nutanix:index%2FgetProtectionPolicyV2ReplicationLocation:getProtectionPolicyV2ReplicationLocation"
            },
            "type": "array"
          },
          "tenantId": {
            "description": "- A globally unique identifier that represents the tenant that owns this entity. The system automatically assigns it, and it and is immutable from an API consumer perspective (some use cases may cause this Id to change - For instance, a use case may require the transfer of ownership of the entity, but these cases are handled automatically on the server).\n",
            "type": "string"
          }
        },
        "required": [
          "categoryIds",
          "description",
          "extId",
          "id",
          "isApprovalPolicyNeeded",
          "links",
          "name",
          "ownerExtId",
          "replicationConfigurations",
          "replicationLocations",
          "tenantId"
        ],
        "type": "object"
      }
    },
    "nutanix:index/getProtectionRule:getProtectionRule": {
      "description": "Describe a Nutanix Protection Rule and its values (if it has them).\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as nutanix from \"@pierskarsenbarg/nutanix\";\n\nconst protectionRuleTest = new nutanix.ProtectionRule(\"protection_rule_test\", {\n    name: \"test\",\n    description: \"test\",\n    orderedAvailabilityZoneLists: [{\n        availabilityZoneUrl: \"ab788130-0820-4d07-a1b5-b0ba4d3a42asd\",\n    }],\n    availabilityZoneConnectivityLists: [{\n        snapshotScheduleLists: [{\n            recoveryPointObjectiveSecs: 3600,\n            snapshotType: \"CRASH_CONSISTENT\",\n            localSnapshotRetentionPolicy: {\n                numSnapshots: 1,\n            },\n        }],\n    }],\n    categoryFilter: {\n        params: [{\n            name: \"Environment\",\n            values: [\"Dev\"],\n        }],\n    },\n});\nconst test = nutanix.getProtectionRuleOutput({\n    protectionRuleId: protectionRuleTest.id,\n});\n```\n```python\nimport pulumi\nimport pulumi_nutanix as nutanix\n\nprotection_rule_test = nutanix.ProtectionRule(\"protection_rule_test\",\n    name=\"test\",\n    description=\"test\",\n    ordered_availability_zone_lists=[{\n        \"availability_zone_url\": \"ab788130-0820-4d07-a1b5-b0ba4d3a42asd\",\n    }],\n    availability_zone_connectivity_lists=[{\n        \"snapshot_schedule_lists\": [{\n            \"recovery_point_objective_secs\": 3600,\n            \"snapshot_type\": \"CRASH_CONSISTENT\",\n            \"local_snapshot_retention_policy\": {\n                \"num_snapshots\": 1,\n            },\n        }],\n    }],\n    category_filter={\n        \"params\": [{\n            \"name\": \"Environment\",\n            \"values\": [\"Dev\"],\n        }],\n    })\ntest = nutanix.get_protection_rule_output(protection_rule_id=protection_rule_test.id)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Nutanix = PiersKarsenbarg.Nutanix;\nusing Nutanix = Pulumi.Nutanix;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var protectionRuleTest = new Nutanix.ProtectionRule(\"protection_rule_test\", new()\n    {\n        Name = \"test\",\n        Description = \"test\",\n        OrderedAvailabilityZoneLists = new[]\n        {\n            new Nutanix.Inputs.ProtectionRuleOrderedAvailabilityZoneListArgs\n            {\n                AvailabilityZoneUrl = \"ab788130-0820-4d07-a1b5-b0ba4d3a42asd\",\n            },\n        },\n        AvailabilityZoneConnectivityLists = new[]\n        {\n            new Nutanix.Inputs.ProtectionRuleAvailabilityZoneConnectivityListArgs\n            {\n                SnapshotScheduleLists = new[]\n                {\n                    new Nutanix.Inputs.ProtectionRuleAvailabilityZoneConnectivityListSnapshotScheduleListArgs\n                    {\n                        RecoveryPointObjectiveSecs = 3600,\n                        SnapshotType = \"CRASH_CONSISTENT\",\n                        LocalSnapshotRetentionPolicy = new Nutanix.Inputs.ProtectionRuleAvailabilityZoneConnectivityListSnapshotScheduleListLocalSnapshotRetentionPolicyArgs\n                        {\n                            NumSnapshots = 1,\n                        },\n                    },\n                },\n            },\n        },\n        CategoryFilter = new Nutanix.Inputs.ProtectionRuleCategoryFilterArgs\n        {\n            Params = new[]\n            {\n                new Nutanix.Inputs.ProtectionRuleCategoryFilterParamArgs\n                {\n                    Name = \"Environment\",\n                    Values = new[]\n                    {\n                        \"Dev\",\n                    },\n                },\n            },\n        },\n    });\n\n    var test = Nutanix.GetProtectionRule.Invoke(new()\n    {\n        ProtectionRuleId = protectionRuleTest.Id,\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pierskarsenbarg/pulumi-nutanix/sdk/go/nutanix\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tprotectionRuleTest, err := nutanix.NewProtectionRule(ctx, \"protection_rule_test\", \u0026nutanix.ProtectionRuleArgs{\n\t\t\tName:        pulumi.String(\"test\"),\n\t\t\tDescription: pulumi.String(\"test\"),\n\t\t\tOrderedAvailabilityZoneLists: nutanix.ProtectionRuleOrderedAvailabilityZoneListArray{\n\t\t\t\t\u0026nutanix.ProtectionRuleOrderedAvailabilityZoneListArgs{\n\t\t\t\t\tAvailabilityZoneUrl: pulumi.String(\"ab788130-0820-4d07-a1b5-b0ba4d3a42asd\"),\n\t\t\t\t},\n\t\t\t},\n\t\t\tAvailabilityZoneConnectivityLists: nutanix.ProtectionRuleAvailabilityZoneConnectivityListArray{\n\t\t\t\t\u0026nutanix.ProtectionRuleAvailabilityZoneConnectivityListArgs{\n\t\t\t\t\tSnapshotScheduleLists: nutanix.ProtectionRuleAvailabilityZoneConnectivityListSnapshotScheduleListArray{\n\t\t\t\t\t\t\u0026nutanix.ProtectionRuleAvailabilityZoneConnectivityListSnapshotScheduleListArgs{\n\t\t\t\t\t\t\tRecoveryPointObjectiveSecs: pulumi.Int(3600),\n\t\t\t\t\t\t\tSnapshotType:               pulumi.String(\"CRASH_CONSISTENT\"),\n\t\t\t\t\t\t\tLocalSnapshotRetentionPolicy: \u0026nutanix.ProtectionRuleAvailabilityZoneConnectivityListSnapshotScheduleListLocalSnapshotRetentionPolicyArgs{\n\t\t\t\t\t\t\t\tNumSnapshots: pulumi.Int(1),\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t\tCategoryFilter: \u0026nutanix.ProtectionRuleCategoryFilterArgs{\n\t\t\t\tParams: nutanix.ProtectionRuleCategoryFilterParamArray{\n\t\t\t\t\t\u0026nutanix.ProtectionRuleCategoryFilterParamArgs{\n\t\t\t\t\t\tName: pulumi.String(\"Environment\"),\n\t\t\t\t\t\tValues: pulumi.StringArray{\n\t\t\t\t\t\t\tpulumi.String(\"Dev\"),\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_ = nutanix.LookupProtectionRuleOutput(ctx, nutanix.GetProtectionRuleOutputArgs{\n\t\t\tProtectionRuleId: protectionRuleTest.ID(),\n\t\t}, nil)\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.nutanix.ProtectionRule;\nimport com.pulumi.nutanix.ProtectionRuleArgs;\nimport com.pulumi.nutanix.inputs.ProtectionRuleOrderedAvailabilityZoneListArgs;\nimport com.pulumi.nutanix.inputs.ProtectionRuleAvailabilityZoneConnectivityListArgs;\nimport com.pulumi.nutanix.inputs.ProtectionRuleCategoryFilterArgs;\nimport com.pulumi.nutanix.NutanixFunctions;\nimport com.pulumi.nutanix.inputs.GetProtectionRuleArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var protectionRuleTest = new ProtectionRule(\"protectionRuleTest\", ProtectionRuleArgs.builder()\n            .name(\"test\")\n            .description(\"test\")\n            .orderedAvailabilityZoneLists(ProtectionRuleOrderedAvailabilityZoneListArgs.builder()\n                .availabilityZoneUrl(\"ab788130-0820-4d07-a1b5-b0ba4d3a42asd\")\n                .build())\n            .availabilityZoneConnectivityLists(ProtectionRuleAvailabilityZoneConnectivityListArgs.builder()\n                .snapshotScheduleLists(ProtectionRuleAvailabilityZoneConnectivityListSnapshotScheduleListArgs.builder()\n                    .recoveryPointObjectiveSecs(3600)\n                    .snapshotType(\"CRASH_CONSISTENT\")\n                    .localSnapshotRetentionPolicy(ProtectionRuleAvailabilityZoneConnectivityListSnapshotScheduleListLocalSnapshotRetentionPolicyArgs.builder()\n                        .numSnapshots(1)\n                        .build())\n                    .build())\n                .build())\n            .categoryFilter(ProtectionRuleCategoryFilterArgs.builder()\n                .params(ProtectionRuleCategoryFilterParamArgs.builder()\n                    .name(\"Environment\")\n                    .values(\"Dev\")\n                    .build())\n                .build())\n            .build());\n\n        final var test = NutanixFunctions.getProtectionRule(GetProtectionRuleArgs.builder()\n            .protectionRuleId(protectionRuleTest.id())\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  protectionRuleTest:\n    type: nutanix:ProtectionRule\n    name: protection_rule_test\n    properties:\n      name: test\n      description: test\n      orderedAvailabilityZoneLists:\n        - availabilityZoneUrl: ab788130-0820-4d07-a1b5-b0ba4d3a42asd\n      availabilityZoneConnectivityLists:\n        - snapshotScheduleLists:\n            - recoveryPointObjectiveSecs: 3600\n              snapshotType: CRASH_CONSISTENT\n              localSnapshotRetentionPolicy:\n                numSnapshots: 1\n      categoryFilter:\n        params:\n          - name: Environment\n            values:\n              - Dev\nvariables:\n  test:\n    fn::invoke:\n      function: nutanix:getProtectionRule\n      arguments:\n        protectionRuleId: ${protectionRuleTest.id}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
      "inputs": {
        "description": "A collection of arguments for invoking getProtectionRule.\n",
        "properties": {
          "categories": {
            "type": "array",
            "items": {
              "$ref": "#/types/nutanix:index%2FgetProtectionRuleCategory:getProtectionRuleCategory"
            }
          },
          "protectionRuleId": {
            "type": "string",
            "description": "- (Required) The \u003cspan pulumi-lang-nodejs=\"`id`\" pulumi-lang-dotnet=\"`Id`\" pulumi-lang-go=\"`id`\" pulumi-lang-python=\"`id`\" pulumi-lang-yaml=\"`id`\" pulumi-lang-java=\"`id`\"\u003e`id`\u003c/span\u003e of the protection rule.\n"
          },
          "protectionRuleName": {
            "type": "string"
          }
        },
        "type": "object"
      },
      "outputs": {
        "description": "A collection of values returned by getProtectionRule.\n",
        "properties": {
          "apiVersion": {
            "type": "string"
          },
          "availabilityZoneConnectivityLists": {
            "description": "(Required) This encodes the datapipes between various availability zones and\\nthe backup policy of the pipes.\n",
            "items": {
              "$ref": "#/types/nutanix:index%2FgetProtectionRuleAvailabilityZoneConnectivityList:getProtectionRuleAvailabilityZoneConnectivityList"
            },
            "type": "array"
          },
          "categories": {
            "items": {
              "$ref": "#/types/nutanix:index%2FgetProtectionRuleCategory:getProtectionRuleCategory"
            },
            "type": "array"
          },
          "categoryFilters": {
            "description": "(Optional/Computed)\n",
            "items": {
              "$ref": "#/types/nutanix:index%2FgetProtectionRuleCategoryFilter:getProtectionRuleCategoryFilter"
            },
            "type": "array"
          },
          "description": {
            "description": "A description for protection rule.\n",
            "type": "string"
          },
          "id": {
            "description": "The provider-assigned unique ID for this managed resource.",
            "type": "string"
          },
          "metadata": {
            "additionalProperties": {
              "type": "string"
            },
            "type": "object"
          },
          "name": {
            "description": "(Optional) the name.\n",
            "type": "string"
          },
          "orderedAvailabilityZoneLists": {
            "description": "(Required) A list of availability zones, each of which, receives a replica\\nof the data for the entities protected by this protection rule.\n* `ordered_availability_zone_list.#.cluster_uuid` - (Optional/Computed) UUID of specific cluster to which we will be replicating.\n* `ordered_availability_zone_list.#.availability_zone_url` - (Optional/Computed) The FQDN or IP address of the availability zone.\n",
            "items": {
              "$ref": "#/types/nutanix:index%2FgetProtectionRuleOrderedAvailabilityZoneList:getProtectionRuleOrderedAvailabilityZoneList"
            },
            "type": "array"
          },
          "ownerReferences": {
            "items": {
              "$ref": "#/types/nutanix:index%2FgetProtectionRuleOwnerReference:getProtectionRuleOwnerReference"
            },
            "type": "array"
          },
          "projectReferences": {
            "items": {
              "$ref": "#/types/nutanix:index%2FgetProtectionRuleProjectReference:getProtectionRuleProjectReference"
            },
            "type": "array"
          },
          "protectionRuleId": {
            "type": "string"
          },
          "protectionRuleName": {
            "type": "string"
          },
          "startTime": {
            "type": "string"
          },
          "state": {
            "type": "string"
          }
        },
        "required": [
          "apiVersion",
          "availabilityZoneConnectivityLists",
          "categories",
          "categoryFilters",
          "description",
          "id",
          "metadata",
          "name",
          "orderedAvailabilityZoneLists",
          "ownerReferences",
          "projectReferences",
          "startTime",
          "state"
        ],
        "type": "object"
      }
    },
    "nutanix:index/getProtectionRules:getProtectionRules": {
      "description": "Describes Protection Rules\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as nutanix from \"@pierskarsenbarg/nutanix\";\n\nconst protectionRules = nutanix.getProtectionRules({});\n```\n```python\nimport pulumi\nimport pulumi_nutanix as nutanix\n\nprotection_rules = nutanix.get_protection_rules()\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Nutanix = Pulumi.Nutanix;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var protectionRules = Nutanix.GetProtectionRules.Invoke();\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pierskarsenbarg/pulumi-nutanix/sdk/go/nutanix\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := nutanix.GetProtectionRules(ctx, map[string]interface{}{}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.nutanix.NutanixFunctions;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var protectionRules = NutanixFunctions.getProtectionRules(%!v(PANIC=Format method: runtime error: invalid memory address or nil pointer dereference);\n\n    }\n}\n```\n```yaml\nvariables:\n  protectionRules:\n    fn::invoke:\n      function: nutanix:getProtectionRules\n      arguments: {}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
      "outputs": {
        "description": "A collection of values returned by getProtectionRules.\n",
        "properties": {
          "apiVersion": {
            "description": "version of the API\n",
            "type": "string"
          },
          "entities": {
            "description": "List of Protection Rules\n",
            "items": {
              "$ref": "#/types/nutanix:index%2FgetProtectionRulesEntity:getProtectionRulesEntity"
            },
            "type": "array"
          },
          "id": {
            "description": "The provider-assigned unique ID for this managed resource.",
            "type": "string"
          }
        },
        "required": [
          "apiVersion",
          "entities",
          "id"
        ],
        "type": "object"
      }
    },
    "nutanix:index/getRecoveryPlan:getRecoveryPlan": {
      "description": "Describe a Nutanix Recovery Plan and its values (if it has them).\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as nutanix from \"@pierskarsenbarg/nutanix\";\n\nconst recoveryPlanTest = new nutanix.RecoveryPlan(\"recovery_plan_test\", {\n    name: \"%s\",\n    description: \"%s\",\n    stageLists: [{\n        stageWork: {\n            recoverEntities: {\n                entityInfoLists: [{\n                    categories: [{\n                        name: \"Environment\",\n                        value: \"Dev\",\n                    }],\n                }],\n            },\n        },\n        stageUuid: \"ab788130-0820-4d07-a1b5-b0ba4d3a42asd\",\n        delayTimeSecs: 0,\n    }],\n    parameters: {},\n});\n```\n```python\nimport pulumi\nimport pulumi_nutanix as nutanix\n\nrecovery_plan_test = nutanix.RecoveryPlan(\"recovery_plan_test\",\n    name=\"%s\",\n    description=\"%s\",\n    stage_lists=[{\n        \"stage_work\": {\n            \"recover_entities\": {\n                \"entity_info_lists\": [{\n                    \"categories\": [{\n                        \"name\": \"Environment\",\n                        \"value\": \"Dev\",\n                    }],\n                }],\n            },\n        },\n        \"stage_uuid\": \"ab788130-0820-4d07-a1b5-b0ba4d3a42asd\",\n        \"delay_time_secs\": 0,\n    }],\n    parameters={})\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Nutanix = PiersKarsenbarg.Nutanix;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var recoveryPlanTest = new Nutanix.RecoveryPlan(\"recovery_plan_test\", new()\n    {\n        Name = \"%s\",\n        Description = \"%s\",\n        StageLists = new[]\n        {\n            new Nutanix.Inputs.RecoveryPlanStageListArgs\n            {\n                StageWork = new Nutanix.Inputs.RecoveryPlanStageListStageWorkArgs\n                {\n                    RecoverEntities = new Nutanix.Inputs.RecoveryPlanStageListStageWorkRecoverEntitiesArgs\n                    {\n                        EntityInfoLists = new[]\n                        {\n                            new Nutanix.Inputs.RecoveryPlanStageListStageWorkRecoverEntitiesEntityInfoListArgs\n                            {\n                                Categories = new[]\n                                {\n                                    new Nutanix.Inputs.RecoveryPlanStageListStageWorkRecoverEntitiesEntityInfoListCategoryArgs\n                                    {\n                                        Name = \"Environment\",\n                                        Value = \"Dev\",\n                                    },\n                                },\n                            },\n                        },\n                    },\n                },\n                StageUuid = \"ab788130-0820-4d07-a1b5-b0ba4d3a42asd\",\n                DelayTimeSecs = 0,\n            },\n        },\n        Parameters = null,\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pierskarsenbarg/pulumi-nutanix/sdk/go/nutanix\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := nutanix.NewRecoveryPlan(ctx, \"recovery_plan_test\", \u0026nutanix.RecoveryPlanArgs{\n\t\t\tName:        pulumi.String(\"%s\"),\n\t\t\tDescription: pulumi.String(\"%s\"),\n\t\t\tStageLists: nutanix.RecoveryPlanStageListArray{\n\t\t\t\t\u0026nutanix.RecoveryPlanStageListArgs{\n\t\t\t\t\tStageWork: \u0026nutanix.RecoveryPlanStageListStageWorkArgs{\n\t\t\t\t\t\tRecoverEntities: \u0026nutanix.RecoveryPlanStageListStageWorkRecoverEntitiesArgs{\n\t\t\t\t\t\t\tEntityInfoLists: nutanix.RecoveryPlanStageListStageWorkRecoverEntitiesEntityInfoListArray{\n\t\t\t\t\t\t\t\t\u0026nutanix.RecoveryPlanStageListStageWorkRecoverEntitiesEntityInfoListArgs{\n\t\t\t\t\t\t\t\t\tCategories: nutanix.RecoveryPlanStageListStageWorkRecoverEntitiesEntityInfoListCategoryArray{\n\t\t\t\t\t\t\t\t\t\t\u0026nutanix.RecoveryPlanStageListStageWorkRecoverEntitiesEntityInfoListCategoryArgs{\n\t\t\t\t\t\t\t\t\t\t\tName:  pulumi.String(\"Environment\"),\n\t\t\t\t\t\t\t\t\t\t\tValue: pulumi.String(\"Dev\"),\n\t\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t},\n\t\t\t\t\t},\n\t\t\t\t\tStageUuid:     pulumi.String(\"ab788130-0820-4d07-a1b5-b0ba4d3a42asd\"),\n\t\t\t\t\tDelayTimeSecs: pulumi.Int(0),\n\t\t\t\t},\n\t\t\t},\n\t\t\tParameters: \u0026nutanix.RecoveryPlanParametersArgs{},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.nutanix.RecoveryPlan;\nimport com.pulumi.nutanix.RecoveryPlanArgs;\nimport com.pulumi.nutanix.inputs.RecoveryPlanStageListArgs;\nimport com.pulumi.nutanix.inputs.RecoveryPlanStageListStageWorkArgs;\nimport com.pulumi.nutanix.inputs.RecoveryPlanStageListStageWorkRecoverEntitiesArgs;\nimport com.pulumi.nutanix.inputs.RecoveryPlanParametersArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var recoveryPlanTest = new RecoveryPlan(\"recoveryPlanTest\", RecoveryPlanArgs.builder()\n            .name(\"%s\")\n            .description(\"%s\")\n            .stageLists(RecoveryPlanStageListArgs.builder()\n                .stageWork(RecoveryPlanStageListStageWorkArgs.builder()\n                    .recoverEntities(RecoveryPlanStageListStageWorkRecoverEntitiesArgs.builder()\n                        .entityInfoLists(RecoveryPlanStageListStageWorkRecoverEntitiesEntityInfoListArgs.builder()\n                            .categories(RecoveryPlanStageListStageWorkRecoverEntitiesEntityInfoListCategoryArgs.builder()\n                                .name(\"Environment\")\n                                .value(\"Dev\")\n                                .build())\n                            .build())\n                        .build())\n                    .build())\n                .stageUuid(\"ab788130-0820-4d07-a1b5-b0ba4d3a42asd\")\n                .delayTimeSecs(0)\n                .build())\n            .parameters(RecoveryPlanParametersArgs.builder()\n                .build())\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  recoveryPlanTest:\n    type: nutanix:RecoveryPlan\n    name: recovery_plan_test\n    properties:\n      name: '%s'\n      description: '%s'\n      stageLists:\n        - stageWork:\n            recoverEntities:\n              entityInfoLists:\n                - categories:\n                    - name: Environment\n                      value: Dev\n          stageUuid: ab788130-0820-4d07-a1b5-b0ba4d3a42asd\n          delayTimeSecs: 0\n      parameters: {}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
      "inputs": {
        "description": "A collection of arguments for invoking getRecoveryPlan.\n",
        "properties": {
          "categories": {
            "type": "array",
            "items": {
              "$ref": "#/types/nutanix:index%2FgetRecoveryPlanCategory:getRecoveryPlanCategory"
            }
          },
          "recoveryPlanId": {
            "type": "string",
            "description": "- (Required) The \u003cspan pulumi-lang-nodejs=\"`id`\" pulumi-lang-dotnet=\"`Id`\" pulumi-lang-go=\"`id`\" pulumi-lang-python=\"`id`\" pulumi-lang-yaml=\"`id`\" pulumi-lang-java=\"`id`\"\u003e`id`\u003c/span\u003e of the Recovery Plan.\n"
          },
          "recoveryPlanName": {
            "type": "string"
          }
        },
        "type": "object"
      },
      "outputs": {
        "description": "A collection of values returned by getRecoveryPlan.\n",
        "properties": {
          "apiVersion": {
            "type": "string"
          },
          "categories": {
            "items": {
              "$ref": "#/types/nutanix:index%2FgetRecoveryPlanCategory:getRecoveryPlanCategory"
            },
            "type": "array"
          },
          "description": {
            "description": "A description for Recovery Plan.\n",
            "type": "string"
          },
          "id": {
            "description": "The provider-assigned unique ID for this managed resource.",
            "type": "string"
          },
          "metadata": {
            "additionalProperties": {
              "type": "string"
            },
            "type": "object"
          },
          "name": {
            "description": "(Optional) the name.\n",
            "type": "string"
          },
          "ownerReferences": {
            "items": {
              "$ref": "#/types/nutanix:index%2FgetRecoveryPlanOwnerReference:getRecoveryPlanOwnerReference"
            },
            "type": "array"
          },
          "parameters": {
            "description": "(Required) Parameters for the Recovery Plan.\n",
            "items": {
              "$ref": "#/types/nutanix:index%2FgetRecoveryPlanParameter:getRecoveryPlanParameter"
            },
            "type": "array"
          },
          "projectReferences": {
            "items": {
              "$ref": "#/types/nutanix:index%2FgetRecoveryPlanProjectReference:getRecoveryPlanProjectReference"
            },
            "type": "array"
          },
          "recoveryPlanId": {
            "type": "string"
          },
          "recoveryPlanName": {
            "type": "string"
          },
          "stageLists": {
            "description": "(Required) Input for the stages of the Recovery Plan. Each stage will perform a predefined type of task.\n",
            "items": {
              "$ref": "#/types/nutanix:index%2FgetRecoveryPlanStageList:getRecoveryPlanStageList"
            },
            "type": "array"
          },
          "state": {
            "type": "string"
          }
        },
        "required": [
          "apiVersion",
          "categories",
          "description",
          "id",
          "metadata",
          "name",
          "ownerReferences",
          "parameters",
          "projectReferences",
          "stageLists",
          "state"
        ],
        "type": "object"
      }
    },
    "nutanix:index/getRecoveryPlans:getRecoveryPlans": {
      "description": "Describes Recovery Plans\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as nutanix from \"@pierskarsenbarg/nutanix\";\n\nconst recoveryPlans = nutanix.getRecoveryPlans({});\n```\n```python\nimport pulumi\nimport pulumi_nutanix as nutanix\n\nrecovery_plans = nutanix.get_recovery_plans()\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Nutanix = Pulumi.Nutanix;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var recoveryPlans = Nutanix.GetRecoveryPlans.Invoke();\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pierskarsenbarg/pulumi-nutanix/sdk/go/nutanix\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := nutanix.GetRecoveryPlans(ctx, map[string]interface{}{}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.nutanix.NutanixFunctions;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var recoveryPlans = NutanixFunctions.getRecoveryPlans(%!v(PANIC=Format method: runtime error: invalid memory address or nil pointer dereference);\n\n    }\n}\n```\n```yaml\nvariables:\n  recoveryPlans:\n    fn::invoke:\n      function: nutanix:getRecoveryPlans\n      arguments: {}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
      "outputs": {
        "description": "A collection of values returned by getRecoveryPlans.\n",
        "properties": {
          "apiVersion": {
            "description": "version of the API\n",
            "type": "string"
          },
          "entities": {
            "description": "List of Recovery Plans\n",
            "items": {
              "$ref": "#/types/nutanix:index%2FgetRecoveryPlansEntity:getRecoveryPlansEntity"
            },
            "type": "array"
          },
          "id": {
            "description": "The provider-assigned unique ID for this managed resource.",
            "type": "string"
          }
        },
        "required": [
          "apiVersion",
          "entities",
          "id"
        ],
        "type": "object"
      }
    },
    "nutanix:index/getRecoveryPointV2:getRecoveryPointV2": {
      "description": "Get a single recovery point  corresponding to the extId.\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as nutanix from \"@pierskarsenbarg/nutanix\";\n\nconst get_recovery_point = nutanix.getRecoveryPointV2({\n    extId: \"1cefd0f5-6d38-4c9b-a07c-bdd2db004224\",\n});\n```\n```python\nimport pulumi\nimport pulumi_nutanix as nutanix\n\nget_recovery_point = nutanix.get_recovery_point_v2(ext_id=\"1cefd0f5-6d38-4c9b-a07c-bdd2db004224\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Nutanix = Pulumi.Nutanix;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var get_recovery_point = Nutanix.GetRecoveryPointV2.Invoke(new()\n    {\n        ExtId = \"1cefd0f5-6d38-4c9b-a07c-bdd2db004224\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pierskarsenbarg/pulumi-nutanix/sdk/go/nutanix\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := nutanix.GetRecoveryPointV2(ctx, \u0026nutanix.GetRecoveryPointV2Args{\n\t\t\tExtId: \"1cefd0f5-6d38-4c9b-a07c-bdd2db004224\",\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.nutanix.NutanixFunctions;\nimport com.pulumi.nutanix.inputs.GetRecoveryPointV2Args;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var get-recovery-point = NutanixFunctions.getRecoveryPointV2(GetRecoveryPointV2Args.builder()\n            .extId(\"1cefd0f5-6d38-4c9b-a07c-bdd2db004224\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  get-recovery-point:\n    fn::invoke:\n      function: nutanix:getRecoveryPointV2\n      arguments:\n        extId: 1cefd0f5-6d38-4c9b-a07c-bdd2db004224\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
      "inputs": {
        "description": "A collection of arguments for invoking getRecoveryPointV2.\n",
        "properties": {
          "extId": {
            "type": "string",
            "description": "recovery point UUID\n"
          }
        },
        "type": "object",
        "required": [
          "extId"
        ]
      },
      "outputs": {
        "description": "A collection of values returned by getRecoveryPointV2.\n",
        "properties": {
          "creationTime": {
            "description": "The UTC date and time in ISO-8601 format when the Recovery point is created.\n",
            "type": "string"
          },
          "expirationTime": {
            "description": "The UTC date and time in ISO-8601 format when the current Recovery point expires and will be garbage collected.\n",
            "type": "string"
          },
          "extId": {
            "description": "recovery point UUID\n",
            "type": "string"
          },
          "id": {
            "description": "The provider-assigned unique ID for this managed resource.",
            "type": "string"
          },
          "links": {
            "description": "A HATEOAS style link for the response. Each link contains a user-friendly name identifying the link and an address for retrieving the particular resource.\n",
            "items": {
              "$ref": "#/types/nutanix:index%2FgetRecoveryPointV2Link:getRecoveryPointV2Link"
            },
            "type": "array"
          },
          "locationAgnosticId": {
            "description": "Location agnostic identifier of the recovery point. This identifier is used to identify the same instances of a recovery point across different sites.\n",
            "type": "string"
          },
          "locationReferences": {
            "description": "List of location references where the VM or volume group recovery point are a part of the specified recovery point.\n",
            "items": {
              "$ref": "#/types/nutanix:index%2FgetRecoveryPointV2LocationReference:getRecoveryPointV2LocationReference"
            },
            "type": "array"
          },
          "name": {
            "description": "The name of the Recovery point.\n",
            "type": "string"
          },
          "ownerExtId": {
            "description": "A read only field inserted into recovery point at the time of recovery point creation, indicating the external identifier of the user who created this recovery point.\n",
            "type": "string"
          },
          "recoveryPointType": {
            "description": "Type of the Recovery point.\n",
            "type": "string"
          },
          "status": {
            "description": "The status of the Recovery point, which indicates whether this Recovery point is fit to be consumed.\n* supported values:\n* `COMPLETE`: -  The Recovery point is in a complete state and ready to be consumed.\n",
            "type": "string"
          },
          "tenantId": {
            "description": "A globally unique identifier that represents the tenant that owns this entity\n",
            "type": "string"
          },
          "vmRecoveryPoints": {
            "description": "List of VM recovery point that are a part of the specified top-level recovery point. Note that a recovery point can contain a maximum number of 30 entities. These entities can be a combination of VM(s) and volume group(s).\n",
            "items": {
              "$ref": "#/types/nutanix:index%2FgetRecoveryPointV2VmRecoveryPoint:getRecoveryPointV2VmRecoveryPoint"
            },
            "type": "array"
          },
          "volumeGroupRecoveryPoints": {
            "description": "List of volume group recovery point that are a part of the specified top-level recovery point. Note that a recovery point can contain a maximum number of 30 entities. These entities can be a combination of VM(s) and volume group(s).\n",
            "items": {
              "$ref": "#/types/nutanix:index%2FgetRecoveryPointV2VolumeGroupRecoveryPoint:getRecoveryPointV2VolumeGroupRecoveryPoint"
            },
            "type": "array"
          }
        },
        "required": [
          "creationTime",
          "expirationTime",
          "extId",
          "id",
          "links",
          "locationAgnosticId",
          "locationReferences",
          "name",
          "ownerExtId",
          "recoveryPointType",
          "status",
          "tenantId",
          "vmRecoveryPoints",
          "volumeGroupRecoveryPoints"
        ],
        "type": "object"
      }
    },
    "nutanix:index/getRecoveryPointsV2:getRecoveryPointsV2": {
      "description": "List all the service Groups.\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as nutanix from \"@pierskarsenbarg/nutanix\";\n\nconst recoveryPoints = nutanix.getRecoveryPointsV2({});\nconst filteredRecoveryPoints = nutanix.getRecoveryPointsV2({\n    filter: \"name eq 'recovery_point_001'\",\n});\n```\n```python\nimport pulumi\nimport pulumi_nutanix as nutanix\n\nrecovery_points = nutanix.get_recovery_points_v2()\nfiltered_recovery_points = nutanix.get_recovery_points_v2(filter=\"name eq 'recovery_point_001'\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Nutanix = Pulumi.Nutanix;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var recoveryPoints = Nutanix.GetRecoveryPointsV2.Invoke();\n\n    var filteredRecoveryPoints = Nutanix.GetRecoveryPointsV2.Invoke(new()\n    {\n        Filter = \"name eq 'recovery_point_001'\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pierskarsenbarg/pulumi-nutanix/sdk/go/nutanix\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := nutanix.LookupRecoveryPointsV2(ctx, \u0026nutanix.LookupRecoveryPointsV2Args{}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = nutanix.LookupRecoveryPointsV2(ctx, \u0026nutanix.LookupRecoveryPointsV2Args{\n\t\t\tFilter: pulumi.StringRef(\"name eq 'recovery_point_001'\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.nutanix.NutanixFunctions;\nimport com.pulumi.nutanix.inputs.GetRecoveryPointsV2Args;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var recoveryPoints = NutanixFunctions.getRecoveryPointsV2(GetRecoveryPointsV2Args.builder()\n            .build());\n\n        final var filteredRecoveryPoints = NutanixFunctions.getRecoveryPointsV2(GetRecoveryPointsV2Args.builder()\n            .filter(\"name eq 'recovery_point_001'\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  recoveryPoints:\n    fn::invoke:\n      function: nutanix:getRecoveryPointsV2\n      arguments: {}\n  filteredRecoveryPoints:\n    fn::invoke:\n      function: nutanix:getRecoveryPointsV2\n      arguments:\n        filter: name eq 'recovery_point_001'\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n\n## Recovery Points\n\nThe \u003cspan pulumi-lang-nodejs=\"`recoveryPoints`\" pulumi-lang-dotnet=\"`RecoveryPoints`\" pulumi-lang-go=\"`recoveryPoints`\" pulumi-lang-python=\"`recovery_points`\" pulumi-lang-yaml=\"`recoveryPoints`\" pulumi-lang-java=\"`recoveryPoints`\"\u003e`recovery_points`\u003c/span\u003e attribute contains list of recovery points. Each recovery point contains the following attributes:\n\n* \u003cspan pulumi-lang-nodejs=\"`extId`\" pulumi-lang-dotnet=\"`ExtId`\" pulumi-lang-go=\"`extId`\" pulumi-lang-python=\"`ext_id`\" pulumi-lang-yaml=\"`extId`\" pulumi-lang-java=\"`extId`\"\u003e`ext_id`\u003c/span\u003e: recovery point UUID\n* \u003cspan pulumi-lang-nodejs=\"`tenantId`\" pulumi-lang-dotnet=\"`TenantId`\" pulumi-lang-go=\"`tenantId`\" pulumi-lang-python=\"`tenant_id`\" pulumi-lang-yaml=\"`tenantId`\" pulumi-lang-java=\"`tenantId`\"\u003e`tenant_id`\u003c/span\u003e: A globally unique identifier that represents the tenant that owns this entity\n* \u003cspan pulumi-lang-nodejs=\"`links`\" pulumi-lang-dotnet=\"`Links`\" pulumi-lang-go=\"`links`\" pulumi-lang-python=\"`links`\" pulumi-lang-yaml=\"`links`\" pulumi-lang-java=\"`links`\"\u003e`links`\u003c/span\u003e: A HATEOAS style link for the response. Each link contains a user-friendly name identifying the link and an address for retrieving the particular resource.\n* \u003cspan pulumi-lang-nodejs=\"`locationAgnosticId`\" pulumi-lang-dotnet=\"`LocationAgnosticId`\" pulumi-lang-go=\"`locationAgnosticId`\" pulumi-lang-python=\"`location_agnostic_id`\" pulumi-lang-yaml=\"`locationAgnosticId`\" pulumi-lang-java=\"`locationAgnosticId`\"\u003e`location_agnostic_id`\u003c/span\u003e: Location agnostic identifier of the Recovery point.\n* \u003cspan pulumi-lang-nodejs=\"`name`\" pulumi-lang-dotnet=\"`Name`\" pulumi-lang-go=\"`name`\" pulumi-lang-python=\"`name`\" pulumi-lang-yaml=\"`name`\" pulumi-lang-java=\"`name`\"\u003e`name`\u003c/span\u003e: The name of the Recovery point.\n* \u003cspan pulumi-lang-nodejs=\"`creationTime`\" pulumi-lang-dotnet=\"`CreationTime`\" pulumi-lang-go=\"`creationTime`\" pulumi-lang-python=\"`creation_time`\" pulumi-lang-yaml=\"`creationTime`\" pulumi-lang-java=\"`creationTime`\"\u003e`creation_time`\u003c/span\u003e: The UTC date and time in ISO-8601 format when the Recovery point is created.\n* \u003cspan pulumi-lang-nodejs=\"`expirationTime`\" pulumi-lang-dotnet=\"`ExpirationTime`\" pulumi-lang-go=\"`expirationTime`\" pulumi-lang-python=\"`expiration_time`\" pulumi-lang-yaml=\"`expirationTime`\" pulumi-lang-java=\"`expirationTime`\"\u003e`expiration_time`\u003c/span\u003e: The UTC date and time in ISO-8601 format when the current Recovery point expires and will be garbage collected.\n* \u003cspan pulumi-lang-nodejs=\"`status`\" pulumi-lang-dotnet=\"`Status`\" pulumi-lang-go=\"`status`\" pulumi-lang-python=\"`status`\" pulumi-lang-yaml=\"`status`\" pulumi-lang-java=\"`status`\"\u003e`status`\u003c/span\u003e: The status of the Recovery point, which indicates whether this Recovery point is fit to be consumed.\n  * supported values:\n      * `COMPLETE`: -  The Recovery point is in a complete state and ready to be consumed.\n* \u003cspan pulumi-lang-nodejs=\"`recoveryPointType`\" pulumi-lang-dotnet=\"`RecoveryPointType`\" pulumi-lang-go=\"`recoveryPointType`\" pulumi-lang-python=\"`recovery_point_type`\" pulumi-lang-yaml=\"`recoveryPointType`\" pulumi-lang-java=\"`recoveryPointType`\"\u003e`recovery_point_type`\u003c/span\u003e: Type of the Recovery point.\n    * supported values:\n      * `CRASH_CONSISTENT`: -  capture all the VM and application level details.\n      * `APPLICATION_CONSISTENT`: -  stored in the memory and also the in-progress transaction details.\n* \u003cspan pulumi-lang-nodejs=\"`ownerExtId`\" pulumi-lang-dotnet=\"`OwnerExtId`\" pulumi-lang-go=\"`ownerExtId`\" pulumi-lang-python=\"`owner_ext_id`\" pulumi-lang-yaml=\"`ownerExtId`\" pulumi-lang-java=\"`ownerExtId`\"\u003e`owner_ext_id`\u003c/span\u003e: A read only field inserted into recovery point at the time of recovery point creation, indicating the external identifier of the user who created this recovery point.\n* \u003cspan pulumi-lang-nodejs=\"`locationReferences`\" pulumi-lang-dotnet=\"`LocationReferences`\" pulumi-lang-go=\"`locationReferences`\" pulumi-lang-python=\"`location_references`\" pulumi-lang-yaml=\"`locationReferences`\" pulumi-lang-java=\"`locationReferences`\"\u003e`location_references`\u003c/span\u003e: List of location references where the VM or volume group recovery point are a part of the specified recovery point.\n* \u003cspan pulumi-lang-nodejs=\"`vmRecoveryPoints`\" pulumi-lang-dotnet=\"`VmRecoveryPoints`\" pulumi-lang-go=\"`vmRecoveryPoints`\" pulumi-lang-python=\"`vm_recovery_points`\" pulumi-lang-yaml=\"`vmRecoveryPoints`\" pulumi-lang-java=\"`vmRecoveryPoints`\"\u003e`vm_recovery_points`\u003c/span\u003e: List of VM recovery point that are a part of the specified top-level recovery point. Note that a recovery point can contain a maximum number of 30 entities. These entities can be a combination of VM(s) and volume group(s).\n* \u003cspan pulumi-lang-nodejs=\"`volumeGroupRecoveryPoints`\" pulumi-lang-dotnet=\"`VolumeGroupRecoveryPoints`\" pulumi-lang-go=\"`volumeGroupRecoveryPoints`\" pulumi-lang-python=\"`volume_group_recovery_points`\" pulumi-lang-yaml=\"`volumeGroupRecoveryPoints`\" pulumi-lang-java=\"`volumeGroupRecoveryPoints`\"\u003e`volume_group_recovery_points`\u003c/span\u003e: List of volume group recovery point that are a part of the specified top-level recovery point. Note that a recovery point can contain a maximum number of 30 entities. These entities can be a combination of VM(s) and volume group(s).\n\n### Links\nThe links attribute supports the following:\n\n* \u003cspan pulumi-lang-nodejs=\"`href`\" pulumi-lang-dotnet=\"`Href`\" pulumi-lang-go=\"`href`\" pulumi-lang-python=\"`href`\" pulumi-lang-yaml=\"`href`\" pulumi-lang-java=\"`href`\"\u003e`href`\u003c/span\u003e: - The URL at which the entity described by the link can be accessed.\n* \u003cspan pulumi-lang-nodejs=\"`rel`\" pulumi-lang-dotnet=\"`Rel`\" pulumi-lang-go=\"`rel`\" pulumi-lang-python=\"`rel`\" pulumi-lang-yaml=\"`rel`\" pulumi-lang-java=\"`rel`\"\u003e`rel`\u003c/span\u003e: - A name that identifies the relationship of the link to the object that is returned by the URL. The unique value of \"self\" identifies the URL for the object.\n\n\n###\u003cspan pulumi-lang-nodejs=\" locationReferences\n\" pulumi-lang-dotnet=\" LocationReferences\n\" pulumi-lang-go=\" locationReferences\n\" pulumi-lang-python=\" location_references\n\" pulumi-lang-yaml=\" locationReferences\n\" pulumi-lang-java=\" locationReferences\n\"\u003e location_references\n\u003c/span\u003e\n* \u003cspan pulumi-lang-nodejs=\"`locationExtId`\" pulumi-lang-dotnet=\"`LocationExtId`\" pulumi-lang-go=\"`locationExtId`\" pulumi-lang-python=\"`location_ext_id`\" pulumi-lang-yaml=\"`locationExtId`\" pulumi-lang-java=\"`locationExtId`\"\u003e`location_ext_id`\u003c/span\u003e: External identifier of the cluster where the recovery point is present.\n\n###\u003cspan pulumi-lang-nodejs=\" vmRecoveryPoints\n\" pulumi-lang-dotnet=\" VmRecoveryPoints\n\" pulumi-lang-go=\" vmRecoveryPoints\n\" pulumi-lang-python=\" vm_recovery_points\n\" pulumi-lang-yaml=\" vmRecoveryPoints\n\" pulumi-lang-java=\" vmRecoveryPoints\n\"\u003e vm_recovery_points\n\u003c/span\u003e* \u003cspan pulumi-lang-nodejs=\"`extId`\" pulumi-lang-dotnet=\"`ExtId`\" pulumi-lang-go=\"`extId`\" pulumi-lang-python=\"`ext_id`\" pulumi-lang-yaml=\"`extId`\" pulumi-lang-java=\"`extId`\"\u003e`ext_id`\u003c/span\u003e: recovery point UUID\n* \u003cspan pulumi-lang-nodejs=\"`tenantId`\" pulumi-lang-dotnet=\"`TenantId`\" pulumi-lang-go=\"`tenantId`\" pulumi-lang-python=\"`tenant_id`\" pulumi-lang-yaml=\"`tenantId`\" pulumi-lang-java=\"`tenantId`\"\u003e`tenant_id`\u003c/span\u003e: A globally unique identifier that represents the tenant that owns this entity\n* \u003cspan pulumi-lang-nodejs=\"`links`\" pulumi-lang-dotnet=\"`Links`\" pulumi-lang-go=\"`links`\" pulumi-lang-python=\"`links`\" pulumi-lang-yaml=\"`links`\" pulumi-lang-java=\"`links`\"\u003e`links`\u003c/span\u003e: A HATEOAS style link for the response. Each link contains a user-friendly name identifying the link and an address for retrieving the particular resource.\n* \u003cspan pulumi-lang-nodejs=\"`consistencyGroupExtId`\" pulumi-lang-dotnet=\"`ConsistencyGroupExtId`\" pulumi-lang-go=\"`consistencyGroupExtId`\" pulumi-lang-python=\"`consistency_group_ext_id`\" pulumi-lang-yaml=\"`consistencyGroupExtId`\" pulumi-lang-java=\"`consistencyGroupExtId`\"\u003e`consistency_group_ext_id`\u003c/span\u003e: External identifier of the Consistency group which the VM was part of at the time of recovery point creation.\n* \u003cspan pulumi-lang-nodejs=\"`locationAgnosticId`\" pulumi-lang-dotnet=\"`LocationAgnosticId`\" pulumi-lang-go=\"`locationAgnosticId`\" pulumi-lang-python=\"`location_agnostic_id`\" pulumi-lang-yaml=\"`locationAgnosticId`\" pulumi-lang-java=\"`locationAgnosticId`\"\u003e`location_agnostic_id`\u003c/span\u003e: Location agnostic identifier of the Recovery point.\n* \u003cspan pulumi-lang-nodejs=\"`name`\" pulumi-lang-dotnet=\"`Name`\" pulumi-lang-go=\"`name`\" pulumi-lang-python=\"`name`\" pulumi-lang-yaml=\"`name`\" pulumi-lang-java=\"`name`\"\u003e`name`\u003c/span\u003e : The name of the Recovery point.\n* \u003cspan pulumi-lang-nodejs=\"`creationTime`\" pulumi-lang-dotnet=\"`CreationTime`\" pulumi-lang-go=\"`creationTime`\" pulumi-lang-python=\"`creation_time`\" pulumi-lang-yaml=\"`creationTime`\" pulumi-lang-java=\"`creationTime`\"\u003e`creation_time`\u003c/span\u003e: The UTC date and time in ISO-8601 format when the Recovery point is created.\n* \u003cspan pulumi-lang-nodejs=\"`expirationTime`\" pulumi-lang-dotnet=\"`ExpirationTime`\" pulumi-lang-go=\"`expirationTime`\" pulumi-lang-python=\"`expiration_time`\" pulumi-lang-yaml=\"`expirationTime`\" pulumi-lang-java=\"`expirationTime`\"\u003e`expiration_time`\u003c/span\u003e: The UTC date and time in ISO-8601 format when the current Recovery point expires and will be garbage collected.\n* \u003cspan pulumi-lang-nodejs=\"`status`\" pulumi-lang-dotnet=\"`Status`\" pulumi-lang-go=\"`status`\" pulumi-lang-python=\"`status`\" pulumi-lang-yaml=\"`status`\" pulumi-lang-java=\"`status`\"\u003e`status`\u003c/span\u003e: The status of the Recovery point, which indicates whether this Recovery point is fit to be consumed.\n  * supported values:\n    * `COMPLETE`: -  The Recovery point is in a complete state and ready to be consumed.\n* \u003cspan pulumi-lang-nodejs=\"`recoveryPointType`\" pulumi-lang-dotnet=\"`RecoveryPointType`\" pulumi-lang-go=\"`recoveryPointType`\" pulumi-lang-python=\"`recovery_point_type`\" pulumi-lang-yaml=\"`recoveryPointType`\" pulumi-lang-java=\"`recoveryPointType`\"\u003e`recovery_point_type`\u003c/span\u003e: Type of the Recovery point.\n* \u003cspan pulumi-lang-nodejs=\"`diskRecoveryPoints`\" pulumi-lang-dotnet=\"`DiskRecoveryPoints`\" pulumi-lang-go=\"`diskRecoveryPoints`\" pulumi-lang-python=\"`disk_recovery_points`\" pulumi-lang-yaml=\"`diskRecoveryPoints`\" pulumi-lang-java=\"`diskRecoveryPoints`\"\u003e`disk_recovery_points`\u003c/span\u003e: array of disk recovery points.\n* \u003cspan pulumi-lang-nodejs=\"`vmExtId`\" pulumi-lang-dotnet=\"`VmExtId`\" pulumi-lang-go=\"`vmExtId`\" pulumi-lang-python=\"`vm_ext_id`\" pulumi-lang-yaml=\"`vmExtId`\" pulumi-lang-java=\"`vmExtId`\"\u003e`vm_ext_id`\u003c/span\u003e: VM external identifier which is captured as a part of this recovery point.\n* \u003cspan pulumi-lang-nodejs=\"`vmCategories`\" pulumi-lang-dotnet=\"`VmCategories`\" pulumi-lang-go=\"`vmCategories`\" pulumi-lang-python=\"`vm_categories`\" pulumi-lang-yaml=\"`vmCategories`\" pulumi-lang-java=\"`vmCategories`\"\u003e`vm_categories`\u003c/span\u003e: Category key-value pairs associated with the VM at the time of recovery point creation. The category key and value are separated by '/'. For example, a category with key 'dept' and value 'hr' is displayed as 'dept/hr'.\n* \u003cspan pulumi-lang-nodejs=\"`applicationConsistentProperties`\" pulumi-lang-dotnet=\"`ApplicationConsistentProperties`\" pulumi-lang-go=\"`applicationConsistentProperties`\" pulumi-lang-python=\"`application_consistent_properties`\" pulumi-lang-yaml=\"`applicationConsistentProperties`\" pulumi-lang-java=\"`applicationConsistentProperties`\"\u003e`application_consistent_properties`\u003c/span\u003e: User-defined application-consistent properties for the recovery point.\n\n###\u003cspan pulumi-lang-nodejs=\" volumeGroupRecoveryPoints\n\" pulumi-lang-dotnet=\" VolumeGroupRecoveryPoints\n\" pulumi-lang-go=\" volumeGroupRecoveryPoints\n\" pulumi-lang-python=\" volume_group_recovery_points\n\" pulumi-lang-yaml=\" volumeGroupRecoveryPoints\n\" pulumi-lang-java=\" volumeGroupRecoveryPoints\n\"\u003e volume_group_recovery_points\n\u003c/span\u003e* \u003cspan pulumi-lang-nodejs=\"`extId`\" pulumi-lang-dotnet=\"`ExtId`\" pulumi-lang-go=\"`extId`\" pulumi-lang-python=\"`ext_id`\" pulumi-lang-yaml=\"`extId`\" pulumi-lang-java=\"`extId`\"\u003e`ext_id`\u003c/span\u003e: recovery point UUID\n* \u003cspan pulumi-lang-nodejs=\"`tenantId`\" pulumi-lang-dotnet=\"`TenantId`\" pulumi-lang-go=\"`tenantId`\" pulumi-lang-python=\"`tenant_id`\" pulumi-lang-yaml=\"`tenantId`\" pulumi-lang-java=\"`tenantId`\"\u003e`tenant_id`\u003c/span\u003e: A globally unique identifier that represents the tenant that owns this entity\n* \u003cspan pulumi-lang-nodejs=\"`links`\" pulumi-lang-dotnet=\"`Links`\" pulumi-lang-go=\"`links`\" pulumi-lang-python=\"`links`\" pulumi-lang-yaml=\"`links`\" pulumi-lang-java=\"`links`\"\u003e`links`\u003c/span\u003e: A HATEOAS style link for the response. Each link contains a user-friendly name identifying the link and an address for retrieving the particular resource.\n* \u003cspan pulumi-lang-nodejs=\"`consistencyGroupExtId`\" pulumi-lang-dotnet=\"`ConsistencyGroupExtId`\" pulumi-lang-go=\"`consistencyGroupExtId`\" pulumi-lang-python=\"`consistency_group_ext_id`\" pulumi-lang-yaml=\"`consistencyGroupExtId`\" pulumi-lang-java=\"`consistencyGroupExtId`\"\u003e`consistency_group_ext_id`\u003c/span\u003e: External identifier of the Consistency group which the entity was part of at the time of recovery point creation.\n* \u003cspan pulumi-lang-nodejs=\"`locationAgnosticId`\" pulumi-lang-dotnet=\"`LocationAgnosticId`\" pulumi-lang-go=\"`locationAgnosticId`\" pulumi-lang-python=\"`location_agnostic_id`\" pulumi-lang-yaml=\"`locationAgnosticId`\" pulumi-lang-java=\"`locationAgnosticId`\"\u003e`location_agnostic_id`\u003c/span\u003e: Location agnostic identifier of the recovery point. This identifier is used to identify the same instances of a recovery point across different sites.\n* \u003cspan pulumi-lang-nodejs=\"`volumeGroupExtId`\" pulumi-lang-dotnet=\"`VolumeGroupExtId`\" pulumi-lang-go=\"`volumeGroupExtId`\" pulumi-lang-python=\"`volume_group_ext_id`\" pulumi-lang-yaml=\"`volumeGroupExtId`\" pulumi-lang-java=\"`volumeGroupExtId`\"\u003e`volume_group_ext_id`\u003c/span\u003e: Volume Group external identifier which is captured as part of this recovery point.\n* \u003cspan pulumi-lang-nodejs=\"`volumeGroupCategories`\" pulumi-lang-dotnet=\"`VolumeGroupCategories`\" pulumi-lang-go=\"`volumeGroupCategories`\" pulumi-lang-python=\"`volume_group_categories`\" pulumi-lang-yaml=\"`volumeGroupCategories`\" pulumi-lang-java=\"`volumeGroupCategories`\"\u003e`volume_group_categories`\u003c/span\u003e: Category key-value pairs associated with the volume group at the time of recovery point creation. The category key and value are separated by '/'. For example, a category with key 'dept' and value 'hr' will be represented as 'dept/hr'.\n* \u003cspan pulumi-lang-nodejs=\"`diskRecoveryPoints`\" pulumi-lang-dotnet=\"`DiskRecoveryPoints`\" pulumi-lang-go=\"`diskRecoveryPoints`\" pulumi-lang-python=\"`disk_recovery_points`\" pulumi-lang-yaml=\"`diskRecoveryPoints`\" pulumi-lang-java=\"`diskRecoveryPoints`\"\u003e`disk_recovery_points`\u003c/span\u003e: array of disk recovery points.\n\n\n###\u003cspan pulumi-lang-nodejs=\" diskRecoveryPoints\n\" pulumi-lang-dotnet=\" DiskRecoveryPoints\n\" pulumi-lang-go=\" diskRecoveryPoints\n\" pulumi-lang-python=\" disk_recovery_points\n\" pulumi-lang-yaml=\" diskRecoveryPoints\n\" pulumi-lang-java=\" diskRecoveryPoints\n\"\u003e disk_recovery_points\n\u003c/span\u003e* \u003cspan pulumi-lang-nodejs=\"`diskRecoveryPointExtId`\" pulumi-lang-dotnet=\"`DiskRecoveryPointExtId`\" pulumi-lang-go=\"`diskRecoveryPointExtId`\" pulumi-lang-python=\"`disk_recovery_point_ext_id`\" pulumi-lang-yaml=\"`diskRecoveryPointExtId`\" pulumi-lang-java=\"`diskRecoveryPointExtId`\"\u003e`disk_recovery_point_ext_id`\u003c/span\u003e: External identifier of the disk recovery point.\n* \u003cspan pulumi-lang-nodejs=\"`diskExtId`\" pulumi-lang-dotnet=\"`DiskExtId`\" pulumi-lang-go=\"`diskExtId`\" pulumi-lang-python=\"`disk_ext_id`\" pulumi-lang-yaml=\"`diskExtId`\" pulumi-lang-java=\"`diskExtId`\"\u003e`disk_ext_id`\u003c/span\u003e: External identifier of the disk.\n\n\n###\u003cspan pulumi-lang-nodejs=\" applicationConsistentProperties\n\" pulumi-lang-dotnet=\" ApplicationConsistentProperties\n\" pulumi-lang-go=\" applicationConsistentProperties\n\" pulumi-lang-python=\" application_consistent_properties\n\" pulumi-lang-yaml=\" applicationConsistentProperties\n\" pulumi-lang-java=\" applicationConsistentProperties\n\"\u003e application_consistent_properties\n\u003c/span\u003e* \u003cspan pulumi-lang-nodejs=\"`backupType`\" pulumi-lang-dotnet=\"`BackupType`\" pulumi-lang-go=\"`backupType`\" pulumi-lang-python=\"`backup_type`\" pulumi-lang-yaml=\"`backupType`\" pulumi-lang-java=\"`backupType`\"\u003e`backup_type`\u003c/span\u003e: The backup type specifies the criteria for identifying the files to be backed up. This property should be specified to the application-consistent recovery points for Windows VMs/agents. The following backup types are supported for the application-consistent recovery points:\n  * supported values:\n    * `FULL_BACKUP`: -  All the files are backed up irrespective of their last backup date/time or state. Also, this backup type updates the backup history of each file that participated in the recovery point. If not explicitly specified, this is the default backup type.\n    * `COPY_BACKUP`: -  this backup type does not update the backup history of individual files involved in the recovery point.\n* \u003cspan pulumi-lang-nodejs=\"`shouldIncludeWriters`\" pulumi-lang-dotnet=\"`ShouldIncludeWriters`\" pulumi-lang-go=\"`shouldIncludeWriters`\" pulumi-lang-python=\"`should_include_writers`\" pulumi-lang-yaml=\"`shouldIncludeWriters`\" pulumi-lang-java=\"`shouldIncludeWriters`\"\u003e`should_include_writers`\u003c/span\u003e: Indicates whether the given set of VSS writers' UUIDs should be included or excluded from the application consistent recovery point. By default, the value is set to false, indicating that all listed VSS writers' UUIDs will be excluded.\n* \u003cspan pulumi-lang-nodejs=\"`writers`\" pulumi-lang-dotnet=\"`Writers`\" pulumi-lang-go=\"`writers`\" pulumi-lang-python=\"`writers`\" pulumi-lang-yaml=\"`writers`\" pulumi-lang-java=\"`writers`\"\u003e`writers`\u003c/span\u003e: List of VSS writer UUIDs that are used in an application consistent recovery point. The default values are the system and the registry writer UUIDs.\n* \u003cspan pulumi-lang-nodejs=\"`shouldStoreVssMetadata`\" pulumi-lang-dotnet=\"`ShouldStoreVssMetadata`\" pulumi-lang-go=\"`shouldStoreVssMetadata`\" pulumi-lang-python=\"`should_store_vss_metadata`\" pulumi-lang-yaml=\"`shouldStoreVssMetadata`\" pulumi-lang-java=\"`shouldStoreVssMetadata`\"\u003e`should_store_vss_metadata`\u003c/span\u003e: Indicates whether to store the VSS metadata if the user is interested in application-specific backup/restore. The VSS metadata consists of VSS writers and requester metadata details. These are compressed into a cabinet file(.cab file) during a VSS backup operation. This cabinet file must be saved to the backup media during a backup operation, as it is required during the restore operation.\n* \u003cspan pulumi-lang-nodejs=\"`objectType`\" pulumi-lang-dotnet=\"`ObjectType`\" pulumi-lang-go=\"`objectType`\" pulumi-lang-python=\"`object_type`\" pulumi-lang-yaml=\"`objectType`\" pulumi-lang-java=\"`objectType`\"\u003e`object_type`\u003c/span\u003e: value: `dataprotection.v4.common.VssProperties`\n\n\nSee detailed information in [Nutanix List Recovery Points V4](http://developers.nutanix.com/api-reference?namespace=dataprotection\u0026version=v4.0#tag/RecoveryPoints/operation/listRecoveryPoints).\n",
      "inputs": {
        "description": "A collection of arguments for invoking getRecoveryPointsV2.\n",
        "properties": {
          "apply": {
            "type": "string"
          },
          "clusterId": {
            "type": "string",
            "description": "Cluster type from which recovery points must be fetched.\n* supported values:\n* `AOS` (Default)\n* `MST`\n"
          },
          "filter": {
            "type": "string",
            "description": "A URL query parameter that allows clients to filter a collection of resources.\n* The filter can be applied to the following fields:\n* `creationTime`\n* `extId`\n* `locationAgnosticId`\n"
          },
          "limit": {
            "type": "integer",
            "description": "A URL query parameter that specifies the total number of records returned in the result set. Must be a positive integer between 1 and 100. Any number out of this range will lead to a validation error. If the limit is not provided, a default value of 50 records will be returned in the result set.\n"
          },
          "orderBy": {
            "type": "string",
            "description": "A URL query parameter that allows clients to specify the sort criteria for the returned list of objects. Resources can be sorted in ascending order using asc or descending order using desc. If asc or desc are not specified, the resources will be sorted in ascending order by default\n* The orderby can be applied to the following fields:\n* `creationTime`\n* `expirationTime`\n"
          },
          "page": {
            "type": "integer",
            "description": "A URL query parameter that specifies the page number of the result set. It must be a positive integer between 0 and the maximum number of pages that are available for that resource. Any number out of this range might lead to no results.\n"
          },
          "select": {
            "type": "string",
            "description": "A URL query parameter that allows clients to request a specific set of properties for each entity or complex type. Expression specified with the $select must conform to the OData V4.01 URL conventions\n* The select can be applied to the following fields:\n* `creationTime`\n* `expirationTime`\n* `extId`\n"
          }
        },
        "type": "object"
      },
      "outputs": {
        "description": "A collection of values returned by getRecoveryPointsV2.\n",
        "properties": {
          "apply": {
            "type": "string"
          },
          "clusterId": {
            "type": "string"
          },
          "filter": {
            "type": "string"
          },
          "id": {
            "description": "The provider-assigned unique ID for this managed resource.",
            "type": "string"
          },
          "limit": {
            "type": "integer"
          },
          "orderBy": {
            "type": "string"
          },
          "page": {
            "type": "integer"
          },
          "recoveryPoints": {
            "description": "List of recovery points.\n",
            "items": {
              "$ref": "#/types/nutanix:index%2FgetRecoveryPointsV2RecoveryPoint:getRecoveryPointsV2RecoveryPoint"
            },
            "type": "array"
          },
          "select": {
            "type": "string"
          }
        },
        "required": [
          "id",
          "recoveryPoints"
        ],
        "type": "object"
      }
    },
    "nutanix:index/getRestorablePcsV2:getRestorablePcsV2": {
      "description": "Lists all the PCs (domain managers) backed up at the object store/cluster.\n\n\n",
      "inputs": {
        "description": "A collection of arguments for invoking getRestorablePcsV2.\n",
        "properties": {
          "filter": {
            "type": "string"
          },
          "limit": {
            "type": "string"
          },
          "page": {
            "type": "string"
          },
          "restoreSourceExtId": {
            "type": "string"
          }
        },
        "type": "object",
        "required": [
          "restoreSourceExtId"
        ]
      },
      "outputs": {
        "description": "A collection of values returned by getRestorablePcsV2.\n",
        "properties": {
          "filter": {
            "type": "string"
          },
          "id": {
            "description": "The provider-assigned unique ID for this managed resource.",
            "type": "string"
          },
          "limit": {
            "type": "string"
          },
          "page": {
            "type": "string"
          },
          "restorablePcs": {
            "items": {
              "$ref": "#/types/nutanix:index%2FgetRestorablePcsV2RestorablePc:getRestorablePcsV2RestorablePc"
            },
            "type": "array"
          },
          "restoreSourceExtId": {
            "type": "string"
          }
        },
        "required": [
          "id",
          "restorablePcs",
          "restoreSourceExtId"
        ],
        "type": "object"
      }
    },
    "nutanix:index/getRole:getRole": {
      "description": "Describes a Role.\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as nutanix from \"@pierskarsenbarg/nutanix\";\n\nconst testRole = new nutanix.Role(\"test\", {\n    name: \"NAME\",\n    description: \"DESCRIPTION\",\n    permissionReferenceLists: [{\n        kind: \"permission\",\n        uuid: \"ID OF PERMISSION\",\n    }],\n});\nconst test = nutanix.getRoleOutput({\n    roleId: testRole.id,\n});\n```\n```python\nimport pulumi\nimport pulumi_nutanix as nutanix\n\ntest_role = nutanix.Role(\"test\",\n    name=\"NAME\",\n    description=\"DESCRIPTION\",\n    permission_reference_lists=[{\n        \"kind\": \"permission\",\n        \"uuid\": \"ID OF PERMISSION\",\n    }])\ntest = nutanix.get_role_output(role_id=test_role.id)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Nutanix = PiersKarsenbarg.Nutanix;\nusing Nutanix = Pulumi.Nutanix;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var testRole = new Nutanix.Role(\"test\", new()\n    {\n        Name = \"NAME\",\n        Description = \"DESCRIPTION\",\n        PermissionReferenceLists = new[]\n        {\n            new Nutanix.Inputs.RolePermissionReferenceListArgs\n            {\n                Kind = \"permission\",\n                Uuid = \"ID OF PERMISSION\",\n            },\n        },\n    });\n\n    var test = Nutanix.GetRole.Invoke(new()\n    {\n        RoleId = testRole.Id,\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pierskarsenbarg/pulumi-nutanix/sdk/go/nutanix\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\ttestRole, err := nutanix.NewRole(ctx, \"test\", \u0026nutanix.RoleArgs{\n\t\t\tName:        pulumi.String(\"NAME\"),\n\t\t\tDescription: pulumi.String(\"DESCRIPTION\"),\n\t\t\tPermissionReferenceLists: nutanix.RolePermissionReferenceListArray{\n\t\t\t\t\u0026nutanix.RolePermissionReferenceListArgs{\n\t\t\t\t\tKind: pulumi.String(\"permission\"),\n\t\t\t\t\tUuid: pulumi.String(\"ID OF PERMISSION\"),\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_ = nutanix.LookupRoleOutput(ctx, nutanix.GetRoleOutputArgs{\n\t\t\tRoleId: testRole.ID(),\n\t\t}, nil)\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.nutanix.Role;\nimport com.pulumi.nutanix.RoleArgs;\nimport com.pulumi.nutanix.inputs.RolePermissionReferenceListArgs;\nimport com.pulumi.nutanix.NutanixFunctions;\nimport com.pulumi.nutanix.inputs.GetRoleArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var testRole = new Role(\"testRole\", RoleArgs.builder()\n            .name(\"NAME\")\n            .description(\"DESCRIPTION\")\n            .permissionReferenceLists(RolePermissionReferenceListArgs.builder()\n                .kind(\"permission\")\n                .uuid(\"ID OF PERMISSION\")\n                .build())\n            .build());\n\n        final var test = NutanixFunctions.getRole(GetRoleArgs.builder()\n            .roleId(testRole.id())\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  testRole:\n    type: nutanix:Role\n    name: test\n    properties:\n      name: NAME\n      description: DESCRIPTION\n      permissionReferenceLists:\n        - kind: permission\n          uuid: ID OF PERMISSION\nvariables:\n  test:\n    fn::invoke:\n      function: nutanix:getRole\n      arguments:\n        roleId: ${testRole.id}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
      "inputs": {
        "description": "A collection of arguments for invoking getRole.\n",
        "properties": {
          "categories": {
            "type": "array",
            "items": {
              "$ref": "#/types/nutanix:index%2FgetRoleCategory:getRoleCategory"
            },
            "description": "- Categories for the Role.\n"
          },
          "roleId": {
            "type": "string",
            "description": "- (Optional) The UUID of a Role.\n"
          },
          "roleName": {
            "type": "string",
            "description": "- (Optional) The name of a Role.\n"
          }
        },
        "type": "object"
      },
      "outputs": {
        "description": "A collection of values returned by getRole.\n",
        "properties": {
          "apiVersion": {
            "description": "The version of the API.\n",
            "type": "string"
          },
          "categories": {
            "description": "- Categories for the Role.\n",
            "items": {
              "$ref": "#/types/nutanix:index%2FgetRoleCategory:getRoleCategory"
            },
            "type": "array"
          },
          "description": {
            "description": "- The description of the Role.\n",
            "type": "string"
          },
          "id": {
            "description": "The provider-assigned unique ID for this managed resource.",
            "type": "string"
          },
          "metadata": {
            "additionalProperties": {
              "type": "string"
            },
            "description": "- The role kind metadata.\n",
            "type": "object"
          },
          "name": {
            "description": "- the name(Optional).\n",
            "type": "string"
          },
          "ownerReference": {
            "additionalProperties": {
              "type": "string"
            },
            "description": "- The reference to a user.\n",
            "type": "object"
          },
          "permissionReferenceLists": {
            "description": "- (Required) List of permission references.\n",
            "items": {
              "$ref": "#/types/nutanix:index%2FgetRolePermissionReferenceList:getRolePermissionReferenceList"
            },
            "type": "array"
          },
          "projectReference": {
            "additionalProperties": {
              "type": "string"
            },
            "description": "- The reference to a project.\n",
            "type": "object"
          },
          "roleId": {
            "type": "string"
          },
          "roleName": {
            "type": "string"
          },
          "state": {
            "description": "- The state of the role.\n",
            "type": "string"
          }
        },
        "required": [
          "apiVersion",
          "categories",
          "description",
          "id",
          "metadata",
          "name",
          "ownerReference",
          "permissionReferenceLists",
          "projectReference",
          "state"
        ],
        "type": "object"
      }
    },
    "nutanix:index/getRoleV2:getRoleV2": {
      "description": "Fetches a role based on the provided external identifier.\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as nutanix from \"@pierskarsenbarg/nutanix\";\n\nconst role = nutanix.getRoleV2({\n    extId: \"a8fe48c4-f0d3-49c7-a017-efc30dd8fb2b\",\n});\n```\n```python\nimport pulumi\nimport pulumi_nutanix as nutanix\n\nrole = nutanix.get_role_v2(ext_id=\"a8fe48c4-f0d3-49c7-a017-efc30dd8fb2b\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Nutanix = Pulumi.Nutanix;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var role = Nutanix.GetRoleV2.Invoke(new()\n    {\n        ExtId = \"a8fe48c4-f0d3-49c7-a017-efc30dd8fb2b\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pierskarsenbarg/pulumi-nutanix/sdk/go/nutanix\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := nutanix.GetRoleV2(ctx, \u0026nutanix.GetRoleV2Args{\n\t\t\tExtId: \"a8fe48c4-f0d3-49c7-a017-efc30dd8fb2b\",\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.nutanix.NutanixFunctions;\nimport com.pulumi.nutanix.inputs.GetRoleV2Args;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var role = NutanixFunctions.getRoleV2(GetRoleV2Args.builder()\n            .extId(\"a8fe48c4-f0d3-49c7-a017-efc30dd8fb2b\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  role:\n    fn::invoke:\n      function: nutanix:getRoleV2\n      arguments:\n        extId: a8fe48c4-f0d3-49c7-a017-efc30dd8fb2b\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
      "inputs": {
        "description": "A collection of arguments for invoking getRoleV2.\n",
        "properties": {
          "extId": {
            "type": "string",
            "description": "- (Required) ExtId for the Role.\n"
          }
        },
        "type": "object",
        "required": [
          "extId"
        ]
      },
      "outputs": {
        "description": "A collection of values returned by getRoleV2.\n",
        "properties": {
          "accessibleClients": {
            "description": "- List of Accessible Clients for the Role.\n",
            "items": {
              "type": "string"
            },
            "type": "array"
          },
          "accessibleEntityTypes": {
            "description": "- List of Accessible Entity Types for the Role.\n",
            "items": {
              "type": "string"
            },
            "type": "array"
          },
          "assignedUsersCount": {
            "description": "- Number of Users assigned to given Role.\n",
            "type": "integer"
          },
          "assignedUsersGroupsCount": {
            "description": "- Number of User Groups assigned to given Role.\n",
            "type": "integer"
          },
          "clientName": {
            "description": "- Client that created the entity.\n",
            "type": "string"
          },
          "createdBy": {
            "description": "- User or Service Name that created the Role.\n",
            "type": "string"
          },
          "createdTime": {
            "description": "- The creation time of the Role.\n",
            "type": "string"
          },
          "description": {
            "description": "- Description of the Role.\n",
            "type": "string"
          },
          "displayName": {
            "description": "- The display name for the Role.\n",
            "type": "string"
          },
          "extId": {
            "description": "- A globally unique identifier of an instance that is suitable for external consumption.\n",
            "type": "string"
          },
          "id": {
            "description": "The provider-assigned unique ID for this managed resource.",
            "type": "string"
          },
          "isSystemDefined": {
            "description": "- Flag identifying if the Role is system defined or not.\n",
            "type": "boolean"
          },
          "lastUpdatedTime": {
            "description": "- The time when the Role was last updated.\n",
            "type": "string"
          },
          "links": {
            "description": "- A HATEOAS style link for the response. Each link contains a user-friendly name identifying the link and an address for retrieving the particular resource.\n",
            "items": {
              "$ref": "#/types/nutanix:index%2FgetRoleV2Link:getRoleV2Link"
            },
            "type": "array"
          },
          "operations": {
            "description": "- List of operations for the role.\n",
            "items": {
              "type": "string"
            },
            "type": "array"
          },
          "tenantId": {
            "description": "- A globally unique identifier that represents the tenant that owns this entity. The system automatically assigns it, and it and is immutable from an API consumer perspective (some use cases may cause this Id to change - For instance, a use case may require the transfer of ownership of the entity, but these cases are handled automatically on the server).\n",
            "type": "string"
          }
        },
        "required": [
          "accessibleClients",
          "accessibleEntityTypes",
          "assignedUsersCount",
          "assignedUsersGroupsCount",
          "clientName",
          "createdBy",
          "createdTime",
          "description",
          "displayName",
          "extId",
          "id",
          "isSystemDefined",
          "lastUpdatedTime",
          "links",
          "operations",
          "tenantId"
        ],
        "type": "object"
      }
    },
    "nutanix:index/getRoles:getRoles": {
      "description": "Describes a list of roles.\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as nutanix from \"@pierskarsenbarg/nutanix\";\n\nconst test = nutanix.getRoles({});\n```\n```python\nimport pulumi\nimport pulumi_nutanix as nutanix\n\ntest = nutanix.get_roles()\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Nutanix = Pulumi.Nutanix;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var test = Nutanix.GetRoles.Invoke();\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pierskarsenbarg/pulumi-nutanix/sdk/go/nutanix\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := nutanix.GetRoles(ctx, \u0026nutanix.GetRolesArgs{}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.nutanix.NutanixFunctions;\nimport com.pulumi.nutanix.inputs.GetRolesArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var test = NutanixFunctions.getRoles(GetRolesArgs.builder()\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  test:\n    fn::invoke:\n      function: nutanix:getRoles\n      arguments: {}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
      "inputs": {
        "description": "A collection of arguments for invoking getRoles.\n",
        "properties": {
          "metadatas": {
            "type": "array",
            "items": {
              "$ref": "#/types/nutanix:index%2FgetRolesMetadata:getRolesMetadata"
            },
            "description": "- The role kind metadata.\n"
          }
        },
        "type": "object"
      },
      "outputs": {
        "description": "A collection of values returned by getRoles.\n",
        "properties": {
          "apiVersion": {
            "description": "The version of the API.\n",
            "type": "string"
          },
          "entities": {
            "description": "List of Roles\n",
            "items": {
              "$ref": "#/types/nutanix:index%2FgetRolesEntity:getRolesEntity"
            },
            "type": "array"
          },
          "id": {
            "description": "The provider-assigned unique ID for this managed resource.",
            "type": "string"
          },
          "metadatas": {
            "description": "- The role kind metadata.\n",
            "items": {
              "$ref": "#/types/nutanix:index%2FgetRolesMetadata:getRolesMetadata"
            },
            "type": "array"
          }
        },
        "required": [
          "apiVersion",
          "entities",
          "id",
          "metadatas"
        ],
        "type": "object"
      }
    },
    "nutanix:index/getRolesV2:getRolesV2": {
      "description": "Describes a List all the Role(s).\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as nutanix from \"@pierskarsenbarg/nutanix\";\n\n// List all Roles\nconst roles = nutanix.getRolesV2({});\n// List Roles with filter\nconst filtered_roles = nutanix.getRolesV2({\n    filter: \"displayName eq 'example_role'\",\n});\n// List Roles with filter and orderby\nconst filtered_ordered_roles = nutanix.getRolesV2({\n    filter: \"displayName eq 'example_role'\",\n    orderBy: \"createdTime desc\",\n});\n```\n```python\nimport pulumi\nimport pulumi_nutanix as nutanix\n\n# List all Roles\nroles = nutanix.get_roles_v2()\n# List Roles with filter\nfiltered_roles = nutanix.get_roles_v2(filter=\"displayName eq 'example_role'\")\n# List Roles with filter and orderby\nfiltered_ordered_roles = nutanix.get_roles_v2(filter=\"displayName eq 'example_role'\",\n    order_by=\"createdTime desc\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Nutanix = Pulumi.Nutanix;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    // List all Roles\n    var roles = Nutanix.GetRolesV2.Invoke();\n\n    // List Roles with filter\n    var filtered_roles = Nutanix.GetRolesV2.Invoke(new()\n    {\n        Filter = \"displayName eq 'example_role'\",\n    });\n\n    // List Roles with filter and orderby\n    var filtered_ordered_roles = Nutanix.GetRolesV2.Invoke(new()\n    {\n        Filter = \"displayName eq 'example_role'\",\n        OrderBy = \"createdTime desc\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pierskarsenbarg/pulumi-nutanix/sdk/go/nutanix\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t// List all Roles\n\t\t_, err := nutanix.LookupRolesV2(ctx, \u0026nutanix.LookupRolesV2Args{}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t// List Roles with filter\n\t\t_, err = nutanix.LookupRolesV2(ctx, \u0026nutanix.LookupRolesV2Args{\n\t\t\tFilter: pulumi.StringRef(\"displayName eq 'example_role'\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t// List Roles with filter and orderby\n\t\t_, err = nutanix.LookupRolesV2(ctx, \u0026nutanix.LookupRolesV2Args{\n\t\t\tFilter:  pulumi.StringRef(\"displayName eq 'example_role'\"),\n\t\t\tOrderBy: pulumi.StringRef(\"createdTime desc\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.nutanix.NutanixFunctions;\nimport com.pulumi.nutanix.inputs.GetRolesV2Args;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        // List all Roles\n        final var roles = NutanixFunctions.getRolesV2(GetRolesV2Args.builder()\n            .build());\n\n        // List Roles with filter\n        final var filtered-roles = NutanixFunctions.getRolesV2(GetRolesV2Args.builder()\n            .filter(\"displayName eq 'example_role'\")\n            .build());\n\n        // List Roles with filter and orderby\n        final var filtered-ordered-roles = NutanixFunctions.getRolesV2(GetRolesV2Args.builder()\n            .filter(\"displayName eq 'example_role'\")\n            .orderBy(\"createdTime desc\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  # List all Roles\n  roles:\n    fn::invoke:\n      function: nutanix:getRolesV2\n      arguments: {}\n  # List Roles with filter\n  filtered-roles:\n    fn::invoke:\n      function: nutanix:getRolesV2\n      arguments:\n        filter: displayName eq 'example_role'\n  # List Roles with filter and orderby\n  filtered-ordered-roles:\n    fn::invoke:\n      function: nutanix:getRolesV2\n      arguments:\n        filter: displayName eq 'example_role'\n        orderBy: createdTime desc\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n##  Argument Reference\n\nThe following arguments are supported:\n\n* \u003cspan pulumi-lang-nodejs=\"`page`\" pulumi-lang-dotnet=\"`Page`\" pulumi-lang-go=\"`page`\" pulumi-lang-python=\"`page`\" pulumi-lang-yaml=\"`page`\" pulumi-lang-java=\"`page`\"\u003e`page`\u003c/span\u003e: - A URL query parameter that specifies the page number of the result set. It must be a positive integer between 0 and the maximum number of pages that are available for that resource. Any number out of this range might lead to no results.\n* \u003cspan pulumi-lang-nodejs=\"`limit`\" pulumi-lang-dotnet=\"`Limit`\" pulumi-lang-go=\"`limit`\" pulumi-lang-python=\"`limit`\" pulumi-lang-yaml=\"`limit`\" pulumi-lang-java=\"`limit`\"\u003e`limit`\u003c/span\u003e : A URL query parameter that specifies the total number of records returned in the result set. Must be a positive integer between 1 and 100. Any number out of this range will lead to a validation error. If the limit is not provided, a default value of 50 records will be returned in the result set.\n* \u003cspan pulumi-lang-nodejs=\"`filter`\" pulumi-lang-dotnet=\"`Filter`\" pulumi-lang-go=\"`filter`\" pulumi-lang-python=\"`filter`\" pulumi-lang-yaml=\"`filter`\" pulumi-lang-java=\"`filter`\"\u003e`filter`\u003c/span\u003e :A URL query parameter that allows clients to filter a collection of resources. The expression specified with \\$filter is evaluated for each resource in the collection, and only items where the expression evaluates to true are included in the response. Expression specified with the \\$filter must conform to the OData V4.01 URL conventions. For example, filter '\\$filter=name eq 'karbon-ntnx-1.0' would filter the result on cluster name 'karbon-ntnx1.0', filter '\\$filter=startswith(name, 'C')' would filter on cluster name starting with 'C'. The filter can be applied to the following fields:\n  - clientName\n  - createdBy\n  - extId\n  - createdTime\n  - displayName\n  - extId\n  - isSystemDefined\n  - lastUpdatedTime\n* \u003cspan pulumi-lang-nodejs=\"`orderby`\" pulumi-lang-dotnet=\"`Orderby`\" pulumi-lang-go=\"`orderby`\" pulumi-lang-python=\"`orderby`\" pulumi-lang-yaml=\"`orderby`\" pulumi-lang-java=\"`orderby`\"\u003e`orderby`\u003c/span\u003e : A URL query parameter that allows clients to specify the sort criteria for the returned list of objects. Resources can be sorted in ascending order using asc or descending order using desc. If asc or desc are not specified, the resources will be sorted in ascending order by default. For example, '\\$orderby=templateName desc' would get all templates sorted by templateName in descending order. The orderby can be applied to the following fields:\n  - createdTime\n  - distinguishedName\n  - displayName\n  - extId-\n  - lastUpdatedTime\n* \u003cspan pulumi-lang-nodejs=\"`select`\" pulumi-lang-dotnet=\"`Select`\" pulumi-lang-go=\"`select`\" pulumi-lang-python=\"`select`\" pulumi-lang-yaml=\"`select`\" pulumi-lang-java=\"`select`\"\u003e`select`\u003c/span\u003e : A URL query parameter that allows clients to request a specific set of properties for each entity or complex type. Expression specified with the \\$select must conform to the OData V4.01 URL conventions. If a \\$select expression consists of a single select item that is an asterisk (i.e., *), then all properties on the matching resource will be returned. following fields:\n  - accessibleClients\n  - accessibleEntityTypes\n  - assignedUserGroupsCount\n  - assignedUsersCount\n  - clientName\n  - createdBy\n  - createdTime\n  - description\n  - displayName\n  - extId\n  - isSystemDefined\n  - lastUpdatedTime\n  - links\n  - operations\n  - tenantId\n",
      "inputs": {
        "description": "A collection of arguments for invoking getRolesV2.\n",
        "properties": {
          "filter": {
            "type": "string"
          },
          "limit": {
            "type": "integer"
          },
          "orderBy": {
            "type": "string"
          },
          "page": {
            "type": "integer"
          },
          "select": {
            "type": "string"
          }
        },
        "type": "object"
      },
      "outputs": {
        "description": "A collection of values returned by getRolesV2.\n",
        "properties": {
          "filter": {
            "type": "string"
          },
          "id": {
            "description": "The provider-assigned unique ID for this managed resource.",
            "type": "string"
          },
          "limit": {
            "type": "integer"
          },
          "orderBy": {
            "type": "string"
          },
          "page": {
            "type": "integer"
          },
          "roles": {
            "description": "- List of Roles.\n",
            "items": {
              "$ref": "#/types/nutanix:index%2FgetRolesV2Role:getRolesV2Role"
            },
            "type": "array"
          },
          "select": {
            "type": "string"
          }
        },
        "required": [
          "id",
          "roles"
        ],
        "type": "object"
      }
    },
    "nutanix:index/getRouteTableV2:getRouteTableV2": {
      "description": "Provides Nutanix datasource Get the route table for the specified extId.\n\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as nutanix from \"@pierskarsenbarg/nutanix\";\n\nconst get_route_table = nutanix.getRouteTableV2({\n    extId: \"ad7692ff-50f8-4a47-b3c9-fd5a3462d455\",\n});\n```\n```python\nimport pulumi\nimport pulumi_nutanix as nutanix\n\nget_route_table = nutanix.get_route_table_v2(ext_id=\"ad7692ff-50f8-4a47-b3c9-fd5a3462d455\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Nutanix = Pulumi.Nutanix;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var get_route_table = Nutanix.GetRouteTableV2.Invoke(new()\n    {\n        ExtId = \"ad7692ff-50f8-4a47-b3c9-fd5a3462d455\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pierskarsenbarg/pulumi-nutanix/sdk/go/nutanix\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := nutanix.GetRouteTableV2(ctx, \u0026nutanix.GetRouteTableV2Args{\n\t\t\tExtId: \"ad7692ff-50f8-4a47-b3c9-fd5a3462d455\",\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.nutanix.NutanixFunctions;\nimport com.pulumi.nutanix.inputs.GetRouteTableV2Args;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var get-route-table = NutanixFunctions.getRouteTableV2(GetRouteTableV2Args.builder()\n            .extId(\"ad7692ff-50f8-4a47-b3c9-fd5a3462d455\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  get-route-table:\n    fn::invoke:\n      function: nutanix:getRouteTableV2\n      arguments:\n        extId: ad7692ff-50f8-4a47-b3c9-fd5a3462d455\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
      "inputs": {
        "description": "A collection of arguments for invoking getRouteTableV2.\n",
        "properties": {
          "extId": {
            "type": "string",
            "description": "Route UUID\n"
          }
        },
        "type": "object",
        "required": [
          "extId"
        ]
      },
      "outputs": {
        "description": "A collection of values returned by getRouteTableV2.\n",
        "properties": {
          "extId": {
            "description": "Route UUID\n",
            "type": "string"
          },
          "externalRoutingDomainReference": {
            "description": "External routing domain associated with this route table.\n",
            "type": "string"
          },
          "id": {
            "description": "The provider-assigned unique ID for this managed resource.",
            "type": "string"
          },
          "links": {
            "description": "A HATEOAS style link for the response. Each link contains a user-friendly name identifying the link and an address for retrieving the particular resource.\n",
            "items": {
              "$ref": "#/types/nutanix:index%2FgetRouteTableV2Link:getRouteTableV2Link"
            },
            "type": "array"
          },
          "metadatas": {
            "description": "Metadata associated with this resource.\n",
            "items": {
              "$ref": "#/types/nutanix:index%2FgetRouteTableV2Metadata:getRouteTableV2Metadata"
            },
            "type": "array"
          },
          "tenantId": {
            "description": "A globally unique identifier that represents the tenant that owns this entity\n",
            "type": "string"
          },
          "vpcReference": {
            "description": "VPC reference.\n",
            "type": "string"
          }
        },
        "required": [
          "extId",
          "externalRoutingDomainReference",
          "id",
          "links",
          "metadatas",
          "tenantId",
          "vpcReference"
        ],
        "type": "object"
      }
    },
    "nutanix:index/getRouteTablesV2:getRouteTablesV2": {
      "description": "Provides Nutanix datasource to List route tables.\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as nutanix from \"@pierskarsenbarg/nutanix\";\n\nconst all_tables = nutanix.getRouteTablesV2({});\nconst route_tables_with_filter = nutanix.getRouteTablesV2({\n    filter: \"vpcReference eq 'f4b4b3b4-4b4b-4b4b-4b4b-4b4b4b4b4b4b'\",\n});\nconst route_tables_with_orderby = nutanix.getRouteTablesV2({\n    orderBy: \"vpcReference\",\n});\n```\n```python\nimport pulumi\nimport pulumi_nutanix as nutanix\n\nall_tables = nutanix.get_route_tables_v2()\nroute_tables_with_filter = nutanix.get_route_tables_v2(filter=\"vpcReference eq 'f4b4b3b4-4b4b-4b4b-4b4b-4b4b4b4b4b4b'\")\nroute_tables_with_orderby = nutanix.get_route_tables_v2(order_by=\"vpcReference\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Nutanix = Pulumi.Nutanix;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var all_tables = Nutanix.GetRouteTablesV2.Invoke();\n\n    var route_tables_with_filter = Nutanix.GetRouteTablesV2.Invoke(new()\n    {\n        Filter = \"vpcReference eq 'f4b4b3b4-4b4b-4b4b-4b4b-4b4b4b4b4b4b'\",\n    });\n\n    var route_tables_with_orderby = Nutanix.GetRouteTablesV2.Invoke(new()\n    {\n        OrderBy = \"vpcReference\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pierskarsenbarg/pulumi-nutanix/sdk/go/nutanix\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := nutanix.GetRouteTablesV2(ctx, \u0026nutanix.GetRouteTablesV2Args{}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = nutanix.GetRouteTablesV2(ctx, \u0026nutanix.GetRouteTablesV2Args{\n\t\t\tFilter: pulumi.StringRef(\"vpcReference eq 'f4b4b3b4-4b4b-4b4b-4b4b-4b4b4b4b4b4b'\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = nutanix.GetRouteTablesV2(ctx, \u0026nutanix.GetRouteTablesV2Args{\n\t\t\tOrderBy: pulumi.StringRef(\"vpcReference\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.nutanix.NutanixFunctions;\nimport com.pulumi.nutanix.inputs.GetRouteTablesV2Args;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var all-tables = NutanixFunctions.getRouteTablesV2(GetRouteTablesV2Args.builder()\n            .build());\n\n        final var route-tables-with-filter = NutanixFunctions.getRouteTablesV2(GetRouteTablesV2Args.builder()\n            .filter(\"vpcReference eq 'f4b4b3b4-4b4b-4b4b-4b4b-4b4b4b4b4b4b'\")\n            .build());\n\n        final var route-tables-with-orderby = NutanixFunctions.getRouteTablesV2(GetRouteTablesV2Args.builder()\n            .orderBy(\"vpcReference\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  all-tables:\n    fn::invoke:\n      function: nutanix:getRouteTablesV2\n      arguments: {}\n  route-tables-with-filter:\n    fn::invoke:\n      function: nutanix:getRouteTablesV2\n      arguments:\n        filter: vpcReference eq 'f4b4b3b4-4b4b-4b4b-4b4b-4b4b4b4b4b4b'\n  route-tables-with-orderby:\n    fn::invoke:\n      function: nutanix:getRouteTablesV2\n      arguments:\n        orderBy: vpcReference\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
      "inputs": {
        "description": "A collection of arguments for invoking getRouteTablesV2.\n",
        "properties": {
          "filter": {
            "type": "string",
            "description": "A URL query parameter that allows clients to filter a collection of resources.\n* The filter can be applied to the following fields:\n* `externalRoutingDomainReference`\n* `vpcReference`\n"
          },
          "limit": {
            "type": "integer",
            "description": "A URL query parameter that specifies the total number of records returned in the result set. Must be a positive integer between 1 and 100. Any number out of this range will lead to a validation error. If the limit is not provided, a default value of 50 records will be returned in the result set.\n"
          },
          "orderBy": {
            "type": "string",
            "description": "A URL query parameter that allows clients to specify the sort criteria for the returned list of objects. Resources can be sorted in ascending order using asc or descending order using desc. If asc or desc are not specified, the resources will be sorted in ascending order by default\n* The orderby can be applied to the following fields:\n* `vpcReference`\n"
          },
          "page": {
            "type": "integer",
            "description": "A URL query parameter that specifies the page number of the result set. It must be a positive integer between 0 and the maximum number of pages that are available for that resource. Any number out of this range might lead to no results.\n"
          }
        },
        "type": "object"
      },
      "outputs": {
        "description": "A collection of values returned by getRouteTablesV2.\n",
        "properties": {
          "filter": {
            "type": "string"
          },
          "id": {
            "description": "The provider-assigned unique ID for this managed resource.",
            "type": "string"
          },
          "limit": {
            "type": "integer"
          },
          "orderBy": {
            "type": "string"
          },
          "page": {
            "type": "integer"
          },
          "routeTables": {
            "description": "A list of route tables.\n",
            "items": {
              "$ref": "#/types/nutanix:index%2FgetRouteTablesV2RouteTable:getRouteTablesV2RouteTable"
            },
            "type": "array"
          }
        },
        "required": [
          "id",
          "routeTables"
        ],
        "type": "object"
      }
    },
    "nutanix:index/getRouteV2:getRouteV2": {
      "description": "Provides Nutanix datasource Get Route for the specified {extId}.\n\n## Example\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as nutanix from \"@pierskarsenbarg/nutanix\";\n\nconst route_by_id = nutanix.getRouteV2({\n    routeTableExtId: \"a8fe48c4-f0d3-49c7-a017-efc30dd8fb2b\",\n    extId: \"7f66e20f-67f4-473f-96bb-c4fcfd487f16\",\n});\n```\n```python\nimport pulumi\nimport pulumi_nutanix as nutanix\n\nroute_by_id = nutanix.get_route_v2(route_table_ext_id=\"a8fe48c4-f0d3-49c7-a017-efc30dd8fb2b\",\n    ext_id=\"7f66e20f-67f4-473f-96bb-c4fcfd487f16\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Nutanix = Pulumi.Nutanix;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var route_by_id = Nutanix.GetRouteV2.Invoke(new()\n    {\n        RouteTableExtId = \"a8fe48c4-f0d3-49c7-a017-efc30dd8fb2b\",\n        ExtId = \"7f66e20f-67f4-473f-96bb-c4fcfd487f16\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pierskarsenbarg/pulumi-nutanix/sdk/go/nutanix\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := nutanix.GetRouteV2(ctx, \u0026nutanix.GetRouteV2Args{\n\t\t\tRouteTableExtId: \"a8fe48c4-f0d3-49c7-a017-efc30dd8fb2b\",\n\t\t\tExtId:           \"7f66e20f-67f4-473f-96bb-c4fcfd487f16\",\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.nutanix.NutanixFunctions;\nimport com.pulumi.nutanix.inputs.GetRouteV2Args;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var route-by-id = NutanixFunctions.getRouteV2(GetRouteV2Args.builder()\n            .routeTableExtId(\"a8fe48c4-f0d3-49c7-a017-efc30dd8fb2b\")\n            .extId(\"7f66e20f-67f4-473f-96bb-c4fcfd487f16\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  route-by-id:\n    fn::invoke:\n      function: nutanix:getRouteV2\n      arguments:\n        routeTableExtId: a8fe48c4-f0d3-49c7-a017-efc30dd8fb2b\n        extId: 7f66e20f-67f4-473f-96bb-c4fcfd487f16\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
      "inputs": {
        "description": "A collection of arguments for invoking getRouteV2.\n",
        "properties": {
          "extId": {
            "type": "string",
            "description": "Route UUID.\n"
          },
          "routeTableExtId": {
            "type": "string",
            "description": "Route table UUID\n"
          }
        },
        "type": "object",
        "required": [
          "extId",
          "routeTableExtId"
        ]
      },
      "outputs": {
        "description": "A collection of values returned by getRouteV2.\n",
        "properties": {
          "description": {
            "description": "BGP session description.\n",
            "type": "string"
          },
          "destinations": {
            "description": "Destination IP Subnet Configuration.\n",
            "items": {
              "$ref": "#/types/nutanix:index%2FgetRouteV2Destination:getRouteV2Destination"
            },
            "type": "array"
          },
          "extId": {
            "description": "Route UUID\n",
            "type": "string"
          },
          "externalRoutingDomainReference": {
            "description": "External routing domain associated with this route table.\n",
            "type": "string"
          },
          "id": {
            "description": "The provider-assigned unique ID for this managed resource.",
            "type": "string"
          },
          "isActive": {
            "description": "Indicates whether the route is active in the forwarding plane.\n",
            "type": "boolean"
          },
          "links": {
            "description": "A HATEOAS style link for the response. Each link contains a user-friendly name identifying the link and an address for retrieving the particular resource.\n",
            "items": {
              "$ref": "#/types/nutanix:index%2FgetRouteV2Link:getRouteV2Link"
            },
            "type": "array"
          },
          "metadatas": {
            "description": "Metadata associated with this resource.\n",
            "items": {
              "$ref": "#/types/nutanix:index%2FgetRouteV2Metadata:getRouteV2Metadata"
            },
            "type": "array"
          },
          "name": {
            "description": "Route name.\n",
            "type": "string"
          },
          "nextHops": {
            "description": "Route nexthop.\n",
            "items": {
              "$ref": "#/types/nutanix:index%2FgetRouteV2NextHop:getRouteV2NextHop"
            },
            "type": "array"
          },
          "priority": {
            "description": "Route priority. A higher value implies greater preference is assigned to the route.\n",
            "type": "integer"
          },
          "routeTableExtId": {
            "type": "string"
          },
          "routeTableReference": {
            "description": "Route table reference.\n",
            "type": "string"
          },
          "routeType": {
            "description": "Route type. Acceptable values are \"STATIC\", \"LOCAL\", \"DYNAMIC\"\n",
            "type": "string"
          },
          "tenantId": {
            "description": "A globally unique identifier that represents the tenant that owns this entity\n",
            "type": "string"
          },
          "vpcReference": {
            "description": "VPC reference.\n",
            "type": "string"
          }
        },
        "required": [
          "description",
          "destinations",
          "extId",
          "externalRoutingDomainReference",
          "id",
          "isActive",
          "links",
          "metadatas",
          "name",
          "nextHops",
          "priority",
          "routeTableExtId",
          "routeTableReference",
          "routeType",
          "tenantId",
          "vpcReference"
        ],
        "type": "object"
      }
    },
    "nutanix:index/getRoutesV2:getRoutesV2": {
      "description": "Provides Nutanix resource to List Routes request.\n\n",
      "inputs": {
        "description": "A collection of arguments for invoking getRoutesV2.\n",
        "properties": {
          "filter": {
            "type": "string",
            "description": "A URL query parameter that allows clients to filter a collection of resources.\n- The filter can be applied to the following fields:\n"
          },
          "limit": {
            "type": "integer",
            "description": "A URL query parameter that specifies the total number of records returned in the result set. Must be a positive integer between 1 and 100. Any number out of this range will lead to a validation error. If the limit is not provided, a default value of 50 records will be returned in the result set.\n"
          },
          "orderBy": {
            "type": "string",
            "description": "A URL query parameter that allows clients to specify the sort criteria for the returned list of objects. Resources can be sorted in ascending order using asc or descending order using desc. If asc or desc are not specified, the resources will be sorted in ascending order by default\n- The orderby can be applied to the following fields:\n- `isActive`\n"
          },
          "page": {
            "type": "integer",
            "description": "A URL query parameter that specifies the page number of the result set. It must be a positive integer between 0 and the maximum number of pages that are available for that resource. Any number out of this range might lead to no results.\n"
          },
          "routeTableExtId": {
            "type": "string",
            "description": "Route table UUID\n"
          }
        },
        "type": "object",
        "required": [
          "routeTableExtId"
        ]
      },
      "outputs": {
        "description": "A collection of values returned by getRoutesV2.\n",
        "properties": {
          "filter": {
            "type": "string"
          },
          "id": {
            "description": "The provider-assigned unique ID for this managed resource.",
            "type": "string"
          },
          "limit": {
            "type": "integer"
          },
          "orderBy": {
            "type": "string"
          },
          "page": {
            "type": "integer"
          },
          "routeTableExtId": {
            "type": "string"
          },
          "routes": {
            "items": {
              "$ref": "#/types/nutanix:index%2FgetRoutesV2Route:getRoutesV2Route"
            },
            "type": "array"
          }
        },
        "required": [
          "id",
          "routeTableExtId",
          "routes"
        ],
        "type": "object"
      }
    },
    "nutanix:index/getSamlIdentityProviderV2:getSamlIdentityProviderV2": {
      "inputs": {
        "description": "A collection of arguments for invoking getSamlIdentityProviderV2.\n",
        "properties": {
          "extId": {
            "type": "string"
          }
        },
        "type": "object",
        "required": [
          "extId"
        ]
      },
      "outputs": {
        "description": "A collection of values returned by getSamlIdentityProviderV2.\n",
        "properties": {
          "createdBy": {
            "type": "string"
          },
          "createdTime": {
            "type": "string"
          },
          "customAttributes": {
            "items": {
              "type": "string"
            },
            "type": "array"
          },
          "emailAttribute": {
            "type": "string"
          },
          "entityIssuer": {
            "type": "string"
          },
          "extId": {
            "type": "string"
          },
          "groupsAttribute": {
            "type": "string"
          },
          "groupsDelim": {
            "type": "string"
          },
          "id": {
            "description": "The provider-assigned unique ID for this managed resource.",
            "type": "string"
          },
          "idpMetadatas": {
            "items": {
              "$ref": "#/types/nutanix:index%2FgetSamlIdentityProviderV2IdpMetadata:getSamlIdentityProviderV2IdpMetadata"
            },
            "type": "array"
          },
          "isSignedAuthnReqEnabled": {
            "type": "boolean"
          },
          "lastUpdatedTime": {
            "type": "string"
          },
          "name": {
            "type": "string"
          },
          "usernameAttribute": {
            "type": "string"
          }
        },
        "required": [
          "createdBy",
          "createdTime",
          "customAttributes",
          "emailAttribute",
          "entityIssuer",
          "extId",
          "groupsAttribute",
          "groupsDelim",
          "id",
          "idpMetadatas",
          "isSignedAuthnReqEnabled",
          "lastUpdatedTime",
          "name",
          "usernameAttribute"
        ],
        "type": "object"
      }
    },
    "nutanix:index/getSamlIdentityProvidersV2:getSamlIdentityProvidersV2": {
      "inputs": {
        "description": "A collection of arguments for invoking getSamlIdentityProvidersV2.\n",
        "properties": {
          "filter": {
            "type": "string"
          },
          "limit": {
            "type": "integer"
          },
          "orderBy": {
            "type": "string"
          },
          "page": {
            "type": "integer"
          },
          "select": {
            "type": "string"
          }
        },
        "type": "object"
      },
      "outputs": {
        "description": "A collection of values returned by getSamlIdentityProvidersV2.\n",
        "properties": {
          "filter": {
            "type": "string"
          },
          "id": {
            "description": "The provider-assigned unique ID for this managed resource.",
            "type": "string"
          },
          "identityProviders": {
            "items": {
              "$ref": "#/types/nutanix:index%2FgetSamlIdentityProvidersV2IdentityProvider:getSamlIdentityProvidersV2IdentityProvider"
            },
            "type": "array"
          },
          "limit": {
            "type": "integer"
          },
          "orderBy": {
            "type": "string"
          },
          "page": {
            "type": "integer"
          },
          "select": {
            "type": "string"
          }
        },
        "required": [
          "id",
          "identityProviders"
        ],
        "type": "object"
      }
    },
    "nutanix:index/getSelfServiceApp:getSelfServiceApp": {
      "description": "Describes an Application (app) in NCM Self Service.\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as nutanix from \"@pierskarsenbarg/nutanix\";\n\nconst testSelfServiceAppProvision = new nutanix.SelfServiceAppProvision(\"test\", {\n    bpName: \"NAME OF BLUEPRINT IN SERVER\",\n    appName: \"NAME OF APP YOU WANT TO SET\",\n    appDescription: \"DESCRIPTION OF APP\",\n});\nconst test = nutanix.getSelfServiceAppOutput({\n    appUuid: testSelfServiceAppProvision.id,\n});\n```\n```python\nimport pulumi\nimport pulumi_nutanix as nutanix\n\ntest_self_service_app_provision = nutanix.SelfServiceAppProvision(\"test\",\n    bp_name=\"NAME OF BLUEPRINT IN SERVER\",\n    app_name=\"NAME OF APP YOU WANT TO SET\",\n    app_description=\"DESCRIPTION OF APP\")\ntest = nutanix.get_self_service_app_output(app_uuid=test_self_service_app_provision.id)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Nutanix = PiersKarsenbarg.Nutanix;\nusing Nutanix = Pulumi.Nutanix;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var testSelfServiceAppProvision = new Nutanix.SelfServiceAppProvision(\"test\", new()\n    {\n        BpName = \"NAME OF BLUEPRINT IN SERVER\",\n        AppName = \"NAME OF APP YOU WANT TO SET\",\n        AppDescription = \"DESCRIPTION OF APP\",\n    });\n\n    var test = Nutanix.GetSelfServiceApp.Invoke(new()\n    {\n        AppUuid = testSelfServiceAppProvision.Id,\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pierskarsenbarg/pulumi-nutanix/sdk/go/nutanix\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\ttestSelfServiceAppProvision, err := nutanix.NewSelfServiceAppProvision(ctx, \"test\", \u0026nutanix.SelfServiceAppProvisionArgs{\n\t\t\tBpName:         pulumi.String(\"NAME OF BLUEPRINT IN SERVER\"),\n\t\t\tAppName:        pulumi.String(\"NAME OF APP YOU WANT TO SET\"),\n\t\t\tAppDescription: pulumi.String(\"DESCRIPTION OF APP\"),\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_ = nutanix.GetSelfServiceAppOutput(ctx, nutanix.GetSelfServiceAppOutputArgs{\n\t\t\tAppUuid: testSelfServiceAppProvision.ID(),\n\t\t}, nil)\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.nutanix.SelfServiceAppProvision;\nimport com.pulumi.nutanix.SelfServiceAppProvisionArgs;\nimport com.pulumi.nutanix.NutanixFunctions;\nimport com.pulumi.nutanix.inputs.GetSelfServiceAppArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var testSelfServiceAppProvision = new SelfServiceAppProvision(\"testSelfServiceAppProvision\", SelfServiceAppProvisionArgs.builder()\n            .bpName(\"NAME OF BLUEPRINT IN SERVER\")\n            .appName(\"NAME OF APP YOU WANT TO SET\")\n            .appDescription(\"DESCRIPTION OF APP\")\n            .build());\n\n        final var test = NutanixFunctions.getSelfServiceApp(GetSelfServiceAppArgs.builder()\n            .appUuid(testSelfServiceAppProvision.id())\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  testSelfServiceAppProvision:\n    type: nutanix:SelfServiceAppProvision\n    name: test\n    properties:\n      bpName: NAME OF BLUEPRINT IN SERVER\n      appName: NAME OF APP YOU WANT TO SET\n      appDescription: DESCRIPTION OF APP\nvariables:\n  test:\n    fn::invoke:\n      function: nutanix:getSelfServiceApp\n      arguments:\n        appUuid: ${testSelfServiceAppProvision.id}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
      "inputs": {
        "description": "A collection of arguments for invoking getSelfServiceApp.\n",
        "properties": {
          "appUuid": {
            "type": "string",
            "description": "- (Required) The UUID of an app you want to get data from.\n"
          }
        },
        "type": "object",
        "required": [
          "appUuid"
        ]
      },
      "outputs": {
        "description": "A collection of values returned by getSelfServiceApp.\n",
        "properties": {
          "actions": {
            "items": {
              "$ref": "#/types/nutanix:index%2FgetSelfServiceAppAction:getSelfServiceAppAction"
            },
            "type": "array"
          },
          "apiVersion": {
            "description": "- The API version used for the application.\n",
            "type": "string"
          },
          "appDescription": {
            "description": "- The description of the Self Service Application.\n",
            "type": "string"
          },
          "appName": {
            "description": "- The name of the Self Service Application.\n",
            "type": "string"
          },
          "appSummaries": {
            "items": {
              "$ref": "#/types/nutanix:index%2FgetSelfServiceAppAppSummary:getSelfServiceAppAppSummary"
            },
            "type": "array"
          },
          "appUuid": {
            "type": "string"
          },
          "id": {
            "description": "The provider-assigned unique ID for this managed resource.",
            "type": "string"
          },
          "spec": {
            "description": "- The specification of the Self Service Application.\n",
            "type": "string"
          },
          "state": {
            "description": "- The state of the application (e.g., Running, Provisioning, etc.).\n",
            "type": "string"
          },
          "status": {
            "description": "- The current status of the application.\n",
            "type": "string"
          },
          "vms": {
            "items": {
              "$ref": "#/types/nutanix:index%2FgetSelfServiceAppVm:getSelfServiceAppVm"
            },
            "type": "array"
          }
        },
        "required": [
          "actions",
          "apiVersion",
          "appDescription",
          "appName",
          "appSummaries",
          "appUuid",
          "id",
          "spec",
          "state",
          "status",
          "vms"
        ],
        "type": "object"
      }
    },
    "nutanix:index/getSelfServiceAppSnapshots:getSelfServiceAppSnapshots": {
      "description": "Describes recovery points (snapshots taken) present in an NCM Self Service Application.\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as nutanix from \"@pierskarsenbarg/nutanix\";\n\nconst test = nutanix.getSelfServiceAppSnapshots({\n    appName: \"NAME OF APPLICATION\",\n    length: 250,\n    offset: 0,\n});\n```\n```python\nimport pulumi\nimport pulumi_nutanix as nutanix\n\ntest = nutanix.get_self_service_app_snapshots(app_name=\"NAME OF APPLICATION\",\n    length=250,\n    offset=0)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Nutanix = Pulumi.Nutanix;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var test = Nutanix.GetSelfServiceAppSnapshots.Invoke(new()\n    {\n        AppName = \"NAME OF APPLICATION\",\n        Length = 250,\n        Offset = 0,\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pierskarsenbarg/pulumi-nutanix/sdk/go/nutanix\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := nutanix.GetSelfServiceAppSnapshots(ctx, \u0026nutanix.GetSelfServiceAppSnapshotsArgs{\n\t\t\tAppName: pulumi.StringRef(\"NAME OF APPLICATION\"),\n\t\t\tLength:  250,\n\t\t\tOffset:  0,\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.nutanix.NutanixFunctions;\nimport com.pulumi.nutanix.inputs.GetSelfServiceAppSnapshotsArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var test = NutanixFunctions.getSelfServiceAppSnapshots(GetSelfServiceAppSnapshotsArgs.builder()\n            .appName(\"NAME OF APPLICATION\")\n            .length(250)\n            .offset(0)\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  test:\n    fn::invoke:\n      function: nutanix:getSelfServiceAppSnapshots\n      arguments:\n        appName: NAME OF APPLICATION\n        length: 250\n        offset: 0\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
      "inputs": {
        "description": "A collection of arguments for invoking getSelfServiceAppSnapshots.\n",
        "properties": {
          "appName": {
            "type": "string",
            "description": "- (Optional) The name of the application.\n"
          },
          "appUuid": {
            "type": "string",
            "description": "- (Optional) The UUID of the application.\n\nBoth (\u003cspan pulumi-lang-nodejs=\"`appName`\" pulumi-lang-dotnet=\"`AppName`\" pulumi-lang-go=\"`appName`\" pulumi-lang-python=\"`app_name`\" pulumi-lang-yaml=\"`appName`\" pulumi-lang-java=\"`appName`\"\u003e`app_name`\u003c/span\u003e and \u003cspan pulumi-lang-nodejs=\"`appUuid`\" pulumi-lang-dotnet=\"`AppUuid`\" pulumi-lang-go=\"`appUuid`\" pulumi-lang-python=\"`app_uuid`\" pulumi-lang-yaml=\"`appUuid`\" pulumi-lang-java=\"`appUuid`\"\u003e`app_uuid`\u003c/span\u003e) are optional but atleast one of them to be provided for this data source to work.\n"
          },
          "length": {
            "type": "integer",
            "description": "- (Required) The number of snapshots to retrieve.\n"
          },
          "offset": {
            "type": "integer",
            "description": "- (Required) The index of the first snapshot to return (for pagination). Default value: 0\n"
          }
        },
        "type": "object",
        "required": [
          "length",
          "offset"
        ]
      },
      "outputs": {
        "description": "A collection of values returned by getSelfServiceAppSnapshots.\n",
        "properties": {
          "apiVersion": {
            "description": "- The API version used to retrieve the snapshot data.\n",
            "type": "string"
          },
          "appName": {
            "type": "string"
          },
          "appUuid": {
            "type": "string"
          },
          "entities": {
            "items": {
              "$ref": "#/types/nutanix:index%2FgetSelfServiceAppSnapshotsEntity:getSelfServiceAppSnapshotsEntity"
            },
            "type": "array"
          },
          "id": {
            "description": "The provider-assigned unique ID for this managed resource.",
            "type": "string"
          },
          "kind": {
            "description": "-  The type of resource represented by the snapshot specification.\n",
            "type": "string"
          },
          "length": {
            "description": "- (Required) The number of snapshots to retrieve.\n",
            "type": "integer"
          },
          "offset": {
            "description": "- (Required) The index of the first snapshot to return (for pagination). Default value: 0\n",
            "type": "integer"
          },
          "totalMatches": {
            "description": "- The total number of recovery points available for the application.\n",
            "type": "integer"
          }
        },
        "required": [
          "apiVersion",
          "entities",
          "id",
          "kind",
          "length",
          "offset",
          "totalMatches"
        ],
        "type": "object"
      }
    },
    "nutanix:index/getSelfServiceSnapshotPolicyList:getSelfServiceSnapshotPolicyList": {
      "description": "Describes snapshot policies present in a blueprint. Environment containing snapshot policy must be added in blueprint for this data source to work.\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as nutanix from \"@pierskarsenbarg/nutanix\";\n\nconst test = nutanix.getSelfServiceSnapshotPolicyList({\n    bpName: \"NAME OF BLUEPRINT\",\n    length: 250,\n    offset: 0,\n});\n```\n```python\nimport pulumi\nimport pulumi_nutanix as nutanix\n\ntest = nutanix.get_self_service_snapshot_policy_list(bp_name=\"NAME OF BLUEPRINT\",\n    length=250,\n    offset=0)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Nutanix = Pulumi.Nutanix;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var test = Nutanix.GetSelfServiceSnapshotPolicyList.Invoke(new()\n    {\n        BpName = \"NAME OF BLUEPRINT\",\n        Length = 250,\n        Offset = 0,\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pierskarsenbarg/pulumi-nutanix/sdk/go/nutanix\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := nutanix.GetSelfServiceSnapshotPolicyList(ctx, \u0026nutanix.GetSelfServiceSnapshotPolicyListArgs{\n\t\t\tBpName: pulumi.StringRef(\"NAME OF BLUEPRINT\"),\n\t\t\tLength: 250,\n\t\t\tOffset: 0,\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.nutanix.NutanixFunctions;\nimport com.pulumi.nutanix.inputs.GetSelfServiceSnapshotPolicyListArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var test = NutanixFunctions.getSelfServiceSnapshotPolicyList(GetSelfServiceSnapshotPolicyListArgs.builder()\n            .bpName(\"NAME OF BLUEPRINT\")\n            .length(250)\n            .offset(0)\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  test:\n    fn::invoke:\n      function: nutanix:getSelfServiceSnapshotPolicyList\n      arguments:\n        bpName: NAME OF BLUEPRINT\n        length: 250\n        offset: 0\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
      "inputs": {
        "description": "A collection of arguments for invoking getSelfServiceSnapshotPolicyList.\n",
        "properties": {
          "bpName": {
            "type": "string",
            "description": "- (Optional) The UUID of the blueprint for which snapshot policies should be listed.\n"
          },
          "bpUuid": {
            "type": "string",
            "description": "- (Optional) The name of the blueprint for which snapshot policies should be listed.\n\nBoth (\u003cspan pulumi-lang-nodejs=\"`bpName`\" pulumi-lang-dotnet=\"`BpName`\" pulumi-lang-go=\"`bpName`\" pulumi-lang-python=\"`bp_name`\" pulumi-lang-yaml=\"`bpName`\" pulumi-lang-java=\"`bpName`\"\u003e`bp_name`\u003c/span\u003e and \u003cspan pulumi-lang-nodejs=\"`bpUuid`\" pulumi-lang-dotnet=\"`BpUuid`\" pulumi-lang-go=\"`bpUuid`\" pulumi-lang-python=\"`bp_uuid`\" pulumi-lang-yaml=\"`bpUuid`\" pulumi-lang-java=\"`bpUuid`\"\u003e`bp_uuid`\u003c/span\u003e) are optional but atleast one of them to be provided for this data source to work.\n"
          },
          "length": {
            "type": "integer",
            "description": "- (Required) The number of snapshot policy records to return.\n"
          },
          "offset": {
            "type": "integer",
            "description": "- (Required) The index of the first snapshot policy to return Used for pagination. Default value: 0\n"
          }
        },
        "type": "object",
        "required": [
          "length",
          "offset"
        ]
      },
      "outputs": {
        "description": "A collection of values returned by getSelfServiceSnapshotPolicyList.\n",
        "properties": {
          "bpName": {
            "type": "string"
          },
          "bpUuid": {
            "type": "string"
          },
          "id": {
            "description": "The provider-assigned unique ID for this managed resource.",
            "type": "string"
          },
          "length": {
            "description": "- (Required) The number of snapshot policy records to return.\n",
            "type": "integer"
          },
          "offset": {
            "description": "- (Required) The index of the first snapshot policy to return Used for pagination. Default value: 0\n",
            "type": "integer"
          },
          "policyLists": {
            "items": {
              "$ref": "#/types/nutanix:index%2FgetSelfServiceSnapshotPolicyListPolicyList:getSelfServiceSnapshotPolicyListPolicyList"
            },
            "type": "array"
          }
        },
        "required": [
          "id",
          "length",
          "offset",
          "policyLists"
        ],
        "type": "object"
      }
    },
    "nutanix:index/getServiceGroup:getServiceGroup": {
      "inputs": {
        "description": "A collection of arguments for invoking getServiceGroup.\n",
        "properties": {
          "uuid": {
            "type": "string"
          }
        },
        "type": "object",
        "required": [
          "uuid"
        ]
      },
      "outputs": {
        "description": "A collection of values returned by getServiceGroup.\n",
        "properties": {
          "description": {
            "type": "string"
          },
          "id": {
            "description": "The provider-assigned unique ID for this managed resource.",
            "type": "string"
          },
          "isSystemDefined": {
            "type": "boolean"
          },
          "name": {
            "type": "string"
          },
          "serviceLists": {
            "items": {
              "$ref": "#/types/nutanix:index%2FgetServiceGroupServiceList:getServiceGroupServiceList"
            },
            "type": "array"
          },
          "uuid": {
            "type": "string"
          }
        },
        "required": [
          "description",
          "id",
          "isSystemDefined",
          "name",
          "serviceLists",
          "uuid"
        ],
        "type": "object"
      }
    },
    "nutanix:index/getServiceGroupV2:getServiceGroupV2": {
      "description": "Get an service Group by ExtID\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as nutanix from \"@pierskarsenbarg/nutanix\";\n\nconst serviceGroup = nutanix.getServiceGroupV2({\n    extId: \"07167778-266d-4052-9992-f30cbfd52e83\",\n});\n```\n```python\nimport pulumi\nimport pulumi_nutanix as nutanix\n\nservice_group = nutanix.get_service_group_v2(ext_id=\"07167778-266d-4052-9992-f30cbfd52e83\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Nutanix = Pulumi.Nutanix;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var serviceGroup = Nutanix.GetServiceGroupV2.Invoke(new()\n    {\n        ExtId = \"07167778-266d-4052-9992-f30cbfd52e83\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pierskarsenbarg/pulumi-nutanix/sdk/go/nutanix\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := nutanix.GetServiceGroupV2(ctx, \u0026nutanix.GetServiceGroupV2Args{\n\t\t\tExtId: \"07167778-266d-4052-9992-f30cbfd52e83\",\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.nutanix.NutanixFunctions;\nimport com.pulumi.nutanix.inputs.GetServiceGroupV2Args;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var serviceGroup = NutanixFunctions.getServiceGroupV2(GetServiceGroupV2Args.builder()\n            .extId(\"07167778-266d-4052-9992-f30cbfd52e83\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  serviceGroup:\n    fn::invoke:\n      function: nutanix:getServiceGroupV2\n      arguments:\n        extId: 07167778-266d-4052-9992-f30cbfd52e83\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
      "inputs": {
        "description": "A collection of arguments for invoking getServiceGroupV2.\n",
        "properties": {
          "extId": {
            "type": "string",
            "description": "service group UUID.\n"
          }
        },
        "type": "object",
        "required": [
          "extId"
        ]
      },
      "outputs": {
        "description": "A collection of values returned by getServiceGroupV2.\n",
        "properties": {
          "createdBy": {
            "description": "created by.\n",
            "type": "string"
          },
          "description": {
            "description": "A user defined annotation for a Service Group.\n",
            "type": "string"
          },
          "extId": {
            "type": "string"
          },
          "icmpServices": {
            "description": "Icmp Type Code List.\n",
            "items": {
              "$ref": "#/types/nutanix:index%2FgetServiceGroupV2IcmpService:getServiceGroupV2IcmpService"
            },
            "type": "array"
          },
          "id": {
            "description": "The provider-assigned unique ID for this managed resource.",
            "type": "string"
          },
          "isSystemDefined": {
            "description": "Service Group is system defined or not.\n",
            "type": "boolean"
          },
          "links": {
            "description": "A HATEOAS style link for the response. Each link contains a user-friendly name identifying the link and an address for retrieving the particular resource.\n",
            "items": {
              "$ref": "#/types/nutanix:index%2FgetServiceGroupV2Link:getServiceGroupV2Link"
            },
            "type": "array"
          },
          "name": {
            "description": "A short identifier for a Service Group.\n",
            "type": "string"
          },
          "policyReferences": {
            "description": "Reference to policy associated with Service Group.\n",
            "items": {
              "type": "string"
            },
            "type": "array"
          },
          "tcpServices": {
            "description": "List of TCP ports in the service.\n",
            "items": {
              "$ref": "#/types/nutanix:index%2FgetServiceGroupV2TcpService:getServiceGroupV2TcpService"
            },
            "type": "array"
          },
          "tenantId": {
            "description": "A globally unique identifier that represents the tenant that owns this entity.\n",
            "type": "string"
          },
          "udpServices": {
            "description": "List of UDP ports in the service.\n",
            "items": {
              "$ref": "#/types/nutanix:index%2FgetServiceGroupV2UdpService:getServiceGroupV2UdpService"
            },
            "type": "array"
          }
        },
        "required": [
          "createdBy",
          "description",
          "extId",
          "icmpServices",
          "id",
          "isSystemDefined",
          "links",
          "name",
          "policyReferences",
          "tcpServices",
          "tenantId",
          "udpServices"
        ],
        "type": "object"
      }
    },
    "nutanix:index/getServiceGroups:getServiceGroups": {
      "inputs": {
        "description": "A collection of arguments for invoking getServiceGroups.\n",
        "properties": {
          "metadatas": {
            "type": "array",
            "items": {
              "$ref": "#/types/nutanix:index%2FgetServiceGroupsMetadata:getServiceGroupsMetadata"
            }
          }
        },
        "type": "object"
      },
      "outputs": {
        "description": "A collection of values returned by getServiceGroups.\n",
        "properties": {
          "entities": {
            "items": {
              "$ref": "#/types/nutanix:index%2FgetServiceGroupsEntity:getServiceGroupsEntity"
            },
            "type": "array"
          },
          "id": {
            "description": "The provider-assigned unique ID for this managed resource.",
            "type": "string"
          },
          "metadatas": {
            "items": {
              "$ref": "#/types/nutanix:index%2FgetServiceGroupsMetadata:getServiceGroupsMetadata"
            },
            "type": "array"
          }
        },
        "required": [
          "entities",
          "id",
          "metadatas"
        ],
        "type": "object"
      }
    },
    "nutanix:index/getServiceGroupsV2:getServiceGroupsV2": {
      "description": "List all the service Groups.\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as nutanix from \"@pierskarsenbarg/nutanix\";\n\nconst serviceGroup = nutanix.getServiceGroupsV2({});\nconst serviceGroupFiltered = nutanix.getServiceGroupsV2({\n    filter: \"name eq 'service_group_name'\",\n});\n```\n```python\nimport pulumi\nimport pulumi_nutanix as nutanix\n\nservice_group = nutanix.get_service_groups_v2()\nservice_group_filtered = nutanix.get_service_groups_v2(filter=\"name eq 'service_group_name'\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Nutanix = Pulumi.Nutanix;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var serviceGroup = Nutanix.GetServiceGroupsV2.Invoke();\n\n    var serviceGroupFiltered = Nutanix.GetServiceGroupsV2.Invoke(new()\n    {\n        Filter = \"name eq 'service_group_name'\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pierskarsenbarg/pulumi-nutanix/sdk/go/nutanix\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := nutanix.LookupServiceGroupsV2(ctx, \u0026nutanix.LookupServiceGroupsV2Args{}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = nutanix.LookupServiceGroupsV2(ctx, \u0026nutanix.LookupServiceGroupsV2Args{\n\t\t\tFilter: pulumi.StringRef(\"name eq 'service_group_name'\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.nutanix.NutanixFunctions;\nimport com.pulumi.nutanix.inputs.GetServiceGroupsV2Args;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var serviceGroup = NutanixFunctions.getServiceGroupsV2(GetServiceGroupsV2Args.builder()\n            .build());\n\n        final var serviceGroupFiltered = NutanixFunctions.getServiceGroupsV2(GetServiceGroupsV2Args.builder()\n            .filter(\"name eq 'service_group_name'\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  serviceGroup:\n    fn::invoke:\n      function: nutanix:getServiceGroupsV2\n      arguments: {}\n  serviceGroupFiltered:\n    fn::invoke:\n      function: nutanix:getServiceGroupsV2\n      arguments:\n        filter: name eq 'service_group_name'\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
      "inputs": {
        "description": "A collection of arguments for invoking getServiceGroupsV2.\n",
        "properties": {
          "filter": {
            "type": "string",
            "description": "A URL query parameter that allows clients to filter a collection of resources. The filter can be applied to the following fields:\n- `createdBy`\n"
          },
          "limit": {
            "type": "integer",
            "description": "A URL query parameter that specifies the total number of records returned in the result set. Must be a positive integer between 1 and 100. Any number out of this range will lead to a validation error. If the limit is not provided, a default value of 50 records will be returned in the result set.\n"
          },
          "orderBy": {
            "type": "string",
            "description": "A URL query parameter that allows clients to specify the sort criteria for the returned list of objects. Resources can be sorted in ascending order using asc or descending order using desc. If asc or desc are not specified, the resources will be sorted in ascending order by default. The orderby can be applied to the following fields:\n"
          },
          "page": {
            "type": "integer",
            "description": "A URL query parameter that specifies the page number of the result set. It must be a positive integer between 0 and the maximum number of pages that are available for that resource. Any number out of this range might lead to no results.\n"
          },
          "select": {
            "type": "string",
            "description": "A URL query parameter that allows clients to request a specific set of properties for each entity or complex type. Expression specified with the $select must conform to the OData V4.01 URL conventions. The select can be applied to the following fields:\n- `createdBy`\n"
          }
        },
        "type": "object"
      },
      "outputs": {
        "description": "A collection of values returned by getServiceGroupsV2.\n",
        "properties": {
          "filter": {
            "type": "string"
          },
          "id": {
            "description": "The provider-assigned unique ID for this managed resource.",
            "type": "string"
          },
          "limit": {
            "type": "integer"
          },
          "orderBy": {
            "type": "string"
          },
          "page": {
            "type": "integer"
          },
          "select": {
            "type": "string"
          },
          "serviceGroups": {
            "description": "List of service groups\n",
            "items": {
              "$ref": "#/types/nutanix:index%2FgetServiceGroupsV2ServiceGroup:getServiceGroupsV2ServiceGroup"
            },
            "type": "array"
          }
        },
        "required": [
          "id",
          "serviceGroups"
        ],
        "type": "object"
      }
    },
    "nutanix:index/getStaticRoutes:getStaticRoutes": {
      "description": "Provides a datasource to retrieve static routes within VPCs given vpc_uuid.\n\n",
      "inputs": {
        "description": "A collection of arguments for invoking getStaticRoutes.\n",
        "properties": {
          "vpcName": {
            "type": "string"
          },
          "vpcReferenceUuid": {
            "type": "string",
            "description": "vpc UUID\n"
          }
        },
        "type": "object"
      },
      "outputs": {
        "description": "A collection of values returned by getStaticRoutes.\n",
        "properties": {
          "apiVersion": {
            "description": "API version\n",
            "type": "string"
          },
          "id": {
            "description": "The provider-assigned unique ID for this managed resource.",
            "type": "string"
          },
          "metadata": {
            "additionalProperties": {
              "type": "string"
            },
            "description": "The\u003cspan pulumi-lang-nodejs=\" vpcRouteTable \" pulumi-lang-dotnet=\" VpcRouteTable \" pulumi-lang-go=\" vpcRouteTable \" pulumi-lang-python=\" vpc_route_table \" pulumi-lang-yaml=\" vpcRouteTable \" pulumi-lang-java=\" vpcRouteTable \"\u003e vpc_route_table \u003c/span\u003ekind metadata\n",
            "type": "object"
          },
          "specs": {
            "description": "An intentful representation of a\u003cspan pulumi-lang-nodejs=\" vpcRouteTable \" pulumi-lang-dotnet=\" VpcRouteTable \" pulumi-lang-go=\" vpcRouteTable \" pulumi-lang-python=\" vpc_route_table \" pulumi-lang-yaml=\" vpcRouteTable \" pulumi-lang-java=\" vpcRouteTable \"\u003e vpc_route_table \u003c/span\u003espec\n",
            "items": {
              "$ref": "#/types/nutanix:index%2FgetStaticRoutesSpec:getStaticRoutesSpec"
            },
            "type": "array"
          },
          "statuses": {
            "description": "An intentful representation of a\u003cspan pulumi-lang-nodejs=\" vpcRouteTable \" pulumi-lang-dotnet=\" VpcRouteTable \" pulumi-lang-go=\" vpcRouteTable \" pulumi-lang-python=\" vpc_route_table \" pulumi-lang-yaml=\" vpcRouteTable \" pulumi-lang-java=\" vpcRouteTable \"\u003e vpc_route_table \u003c/span\u003estatus\n",
            "items": {
              "$ref": "#/types/nutanix:index%2FgetStaticRoutesStatus:getStaticRoutesStatus"
            },
            "type": "array"
          },
          "vpcName": {
            "type": "string"
          },
          "vpcReferenceUuid": {
            "type": "string"
          }
        },
        "required": [
          "apiVersion",
          "id",
          "metadata",
          "specs",
          "statuses"
        ],
        "type": "object"
      }
    },
    "nutanix:index/getStorageContainerStatsInfoV2:getStorageContainerStatsInfoV2": {
      "inputs": {
        "description": "A collection of arguments for invoking getStorageContainerStatsInfoV2.\n",
        "properties": {
          "endTime": {
            "type": "string"
          },
          "extId": {
            "type": "string"
          },
          "samplingInterval": {
            "type": "integer"
          },
          "startTime": {
            "type": "string"
          },
          "statType": {
            "type": "string"
          }
        },
        "type": "object",
        "required": [
          "endTime",
          "extId",
          "startTime"
        ]
      },
      "outputs": {
        "description": "A collection of values returned by getStorageContainerStatsInfoV2.\n",
        "properties": {
          "containerExtId": {
            "type": "string"
          },
          "controllerAvgIoLatencyuSecs": {
            "items": {
              "$ref": "#/types/nutanix:index%2FgetStorageContainerStatsInfoV2ControllerAvgIoLatencyuSec:getStorageContainerStatsInfoV2ControllerAvgIoLatencyuSec"
            },
            "type": "array"
          },
          "controllerAvgReadIoLatencyuSecs": {
            "items": {
              "$ref": "#/types/nutanix:index%2FgetStorageContainerStatsInfoV2ControllerAvgReadIoLatencyuSec:getStorageContainerStatsInfoV2ControllerAvgReadIoLatencyuSec"
            },
            "type": "array"
          },
          "controllerAvgWriteIoLatencyuSecs": {
            "items": {
              "$ref": "#/types/nutanix:index%2FgetStorageContainerStatsInfoV2ControllerAvgWriteIoLatencyuSec:getStorageContainerStatsInfoV2ControllerAvgWriteIoLatencyuSec"
            },
            "type": "array"
          },
          "controllerIoBandwidthKbps": {
            "items": {
              "$ref": "#/types/nutanix:index%2FgetStorageContainerStatsInfoV2ControllerIoBandwidthKbp:getStorageContainerStatsInfoV2ControllerIoBandwidthKbp"
            },
            "type": "array"
          },
          "controllerNumIops": {
            "items": {
              "$ref": "#/types/nutanix:index%2FgetStorageContainerStatsInfoV2ControllerNumIop:getStorageContainerStatsInfoV2ControllerNumIop"
            },
            "type": "array"
          },
          "controllerNumReadIops": {
            "items": {
              "$ref": "#/types/nutanix:index%2FgetStorageContainerStatsInfoV2ControllerNumReadIop:getStorageContainerStatsInfoV2ControllerNumReadIop"
            },
            "type": "array"
          },
          "controllerNumWriteIops": {
            "items": {
              "$ref": "#/types/nutanix:index%2FgetStorageContainerStatsInfoV2ControllerNumWriteIop:getStorageContainerStatsInfoV2ControllerNumWriteIop"
            },
            "type": "array"
          },
          "controllerReadIoBandwidthKbps": {
            "items": {
              "$ref": "#/types/nutanix:index%2FgetStorageContainerStatsInfoV2ControllerReadIoBandwidthKbp:getStorageContainerStatsInfoV2ControllerReadIoBandwidthKbp"
            },
            "type": "array"
          },
          "controllerReadIoRatioPpms": {
            "items": {
              "$ref": "#/types/nutanix:index%2FgetStorageContainerStatsInfoV2ControllerReadIoRatioPpm:getStorageContainerStatsInfoV2ControllerReadIoRatioPpm"
            },
            "type": "array"
          },
          "controllerWriteIoBandwidthKbps": {
            "items": {
              "$ref": "#/types/nutanix:index%2FgetStorageContainerStatsInfoV2ControllerWriteIoBandwidthKbp:getStorageContainerStatsInfoV2ControllerWriteIoBandwidthKbp"
            },
            "type": "array"
          },
          "controllerWriteIoRatioPpms": {
            "items": {
              "$ref": "#/types/nutanix:index%2FgetStorageContainerStatsInfoV2ControllerWriteIoRatioPpm:getStorageContainerStatsInfoV2ControllerWriteIoRatioPpm"
            },
            "type": "array"
          },
          "dataReductionCloneSavingRatioPpms": {
            "items": {
              "$ref": "#/types/nutanix:index%2FgetStorageContainerStatsInfoV2DataReductionCloneSavingRatioPpm:getStorageContainerStatsInfoV2DataReductionCloneSavingRatioPpm"
            },
            "type": "array"
          },
          "dataReductionCompressionSavingRatioPpms": {
            "items": {
              "$ref": "#/types/nutanix:index%2FgetStorageContainerStatsInfoV2DataReductionCompressionSavingRatioPpm:getStorageContainerStatsInfoV2DataReductionCompressionSavingRatioPpm"
            },
            "type": "array"
          },
          "dataReductionDedupSavingRatioPpms": {
            "items": {
              "$ref": "#/types/nutanix:index%2FgetStorageContainerStatsInfoV2DataReductionDedupSavingRatioPpm:getStorageContainerStatsInfoV2DataReductionDedupSavingRatioPpm"
            },
            "type": "array"
          },
          "dataReductionErasureCodingSavingRatioPpms": {
            "items": {
              "$ref": "#/types/nutanix:index%2FgetStorageContainerStatsInfoV2DataReductionErasureCodingSavingRatioPpm:getStorageContainerStatsInfoV2DataReductionErasureCodingSavingRatioPpm"
            },
            "type": "array"
          },
          "dataReductionOverallPostReductionBytes": {
            "items": {
              "$ref": "#/types/nutanix:index%2FgetStorageContainerStatsInfoV2DataReductionOverallPostReductionByte:getStorageContainerStatsInfoV2DataReductionOverallPostReductionByte"
            },
            "type": "array"
          },
          "dataReductionOverallPreReductionBytes": {
            "items": {
              "$ref": "#/types/nutanix:index%2FgetStorageContainerStatsInfoV2DataReductionOverallPreReductionByte:getStorageContainerStatsInfoV2DataReductionOverallPreReductionByte"
            },
            "type": "array"
          },
          "dataReductionSavedBytes": {
            "items": {
              "$ref": "#/types/nutanix:index%2FgetStorageContainerStatsInfoV2DataReductionSavedByte:getStorageContainerStatsInfoV2DataReductionSavedByte"
            },
            "type": "array"
          },
          "dataReductionSavingRatioPpms": {
            "items": {
              "$ref": "#/types/nutanix:index%2FgetStorageContainerStatsInfoV2DataReductionSavingRatioPpm:getStorageContainerStatsInfoV2DataReductionSavingRatioPpm"
            },
            "type": "array"
          },
          "dataReductionSnapshotSavingRatioPpms": {
            "items": {
              "$ref": "#/types/nutanix:index%2FgetStorageContainerStatsInfoV2DataReductionSnapshotSavingRatioPpm:getStorageContainerStatsInfoV2DataReductionSnapshotSavingRatioPpm"
            },
            "type": "array"
          },
          "dataReductionThinProvisionSavingRatioPpms": {
            "items": {
              "$ref": "#/types/nutanix:index%2FgetStorageContainerStatsInfoV2DataReductionThinProvisionSavingRatioPpm:getStorageContainerStatsInfoV2DataReductionThinProvisionSavingRatioPpm"
            },
            "type": "array"
          },
          "dataReductionTotalSavingRatioPpms": {
            "items": {
              "$ref": "#/types/nutanix:index%2FgetStorageContainerStatsInfoV2DataReductionTotalSavingRatioPpm:getStorageContainerStatsInfoV2DataReductionTotalSavingRatioPpm"
            },
            "type": "array"
          },
          "dataReductionZeroWriteSavingsBytes": {
            "items": {
              "$ref": "#/types/nutanix:index%2FgetStorageContainerStatsInfoV2DataReductionZeroWriteSavingsByte:getStorageContainerStatsInfoV2DataReductionZeroWriteSavingsByte"
            },
            "type": "array"
          },
          "endTime": {
            "type": "string"
          },
          "extId": {
            "type": "string"
          },
          "healths": {
            "items": {
              "$ref": "#/types/nutanix:index%2FgetStorageContainerStatsInfoV2Health:getStorageContainerStatsInfoV2Health"
            },
            "type": "array"
          },
          "id": {
            "description": "The provider-assigned unique ID for this managed resource.",
            "type": "string"
          },
          "links": {
            "items": {
              "$ref": "#/types/nutanix:index%2FgetStorageContainerStatsInfoV2Link:getStorageContainerStatsInfoV2Link"
            },
            "type": "array"
          },
          "samplingInterval": {
            "type": "integer"
          },
          "startTime": {
            "type": "string"
          },
          "statType": {
            "type": "string"
          },
          "storageActualPhysicalUsageBytes": {
            "items": {
              "$ref": "#/types/nutanix:index%2FgetStorageContainerStatsInfoV2StorageActualPhysicalUsageByte:getStorageContainerStatsInfoV2StorageActualPhysicalUsageByte"
            },
            "type": "array"
          },
          "storageCapacityBytes": {
            "items": {
              "$ref": "#/types/nutanix:index%2FgetStorageContainerStatsInfoV2StorageCapacityByte:getStorageContainerStatsInfoV2StorageCapacityByte"
            },
            "type": "array"
          },
          "storageFreeBytes": {
            "items": {
              "$ref": "#/types/nutanix:index%2FgetStorageContainerStatsInfoV2StorageFreeByte:getStorageContainerStatsInfoV2StorageFreeByte"
            },
            "type": "array"
          },
          "storageReplicationFactors": {
            "items": {
              "$ref": "#/types/nutanix:index%2FgetStorageContainerStatsInfoV2StorageReplicationFactor:getStorageContainerStatsInfoV2StorageReplicationFactor"
            },
            "type": "array"
          },
          "storageReservedCapacityBytes": {
            "items": {
              "$ref": "#/types/nutanix:index%2FgetStorageContainerStatsInfoV2StorageReservedCapacityByte:getStorageContainerStatsInfoV2StorageReservedCapacityByte"
            },
            "type": "array"
          },
          "storageTierDasSataUsageBytes": {
            "items": {
              "$ref": "#/types/nutanix:index%2FgetStorageContainerStatsInfoV2StorageTierDasSataUsageByte:getStorageContainerStatsInfoV2StorageTierDasSataUsageByte"
            },
            "type": "array"
          },
          "storageTierSsdUsageBytes": {
            "items": {
              "$ref": "#/types/nutanix:index%2FgetStorageContainerStatsInfoV2StorageTierSsdUsageByte:getStorageContainerStatsInfoV2StorageTierSsdUsageByte"
            },
            "type": "array"
          },
          "storageUsageBytes": {
            "items": {
              "$ref": "#/types/nutanix:index%2FgetStorageContainerStatsInfoV2StorageUsageByte:getStorageContainerStatsInfoV2StorageUsageByte"
            },
            "type": "array"
          },
          "tenantId": {
            "type": "string"
          }
        },
        "required": [
          "containerExtId",
          "controllerAvgIoLatencyuSecs",
          "controllerAvgReadIoLatencyuSecs",
          "controllerAvgWriteIoLatencyuSecs",
          "controllerIoBandwidthKbps",
          "controllerNumIops",
          "controllerNumReadIops",
          "controllerNumWriteIops",
          "controllerReadIoBandwidthKbps",
          "controllerReadIoRatioPpms",
          "controllerWriteIoBandwidthKbps",
          "controllerWriteIoRatioPpms",
          "dataReductionCloneSavingRatioPpms",
          "dataReductionCompressionSavingRatioPpms",
          "dataReductionDedupSavingRatioPpms",
          "dataReductionErasureCodingSavingRatioPpms",
          "dataReductionOverallPostReductionBytes",
          "dataReductionOverallPreReductionBytes",
          "dataReductionSavedBytes",
          "dataReductionSavingRatioPpms",
          "dataReductionSnapshotSavingRatioPpms",
          "dataReductionThinProvisionSavingRatioPpms",
          "dataReductionTotalSavingRatioPpms",
          "dataReductionZeroWriteSavingsBytes",
          "endTime",
          "extId",
          "healths",
          "id",
          "links",
          "startTime",
          "storageActualPhysicalUsageBytes",
          "storageCapacityBytes",
          "storageFreeBytes",
          "storageReplicationFactors",
          "storageReservedCapacityBytes",
          "storageTierDasSataUsageBytes",
          "storageTierSsdUsageBytes",
          "storageUsageBytes",
          "tenantId"
        ],
        "type": "object"
      }
    },
    "nutanix:index/getStorageContainerV2:getStorageContainerV2": {
      "description": "Provides a datasource to Fetch the configuration details of the existing Storage Container identified by the {containerExtId}.\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as nutanix from \"@pierskarsenbarg/nutanix\";\n\nconst get_storage_container = nutanix.getStorageContainerV2({\n    extId: \"1891fd3a-1ef7-4947-af56-9ee4b973c6fd\",\n});\n```\n```python\nimport pulumi\nimport pulumi_nutanix as nutanix\n\nget_storage_container = nutanix.get_storage_container_v2(ext_id=\"1891fd3a-1ef7-4947-af56-9ee4b973c6fd\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Nutanix = Pulumi.Nutanix;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var get_storage_container = Nutanix.GetStorageContainerV2.Invoke(new()\n    {\n        ExtId = \"1891fd3a-1ef7-4947-af56-9ee4b973c6fd\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pierskarsenbarg/pulumi-nutanix/sdk/go/nutanix\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := nutanix.GetStorageContainerV2(ctx, \u0026nutanix.GetStorageContainerV2Args{\n\t\t\tExtId: \"1891fd3a-1ef7-4947-af56-9ee4b973c6fd\",\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.nutanix.NutanixFunctions;\nimport com.pulumi.nutanix.inputs.GetStorageContainerV2Args;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var get-storage-container = NutanixFunctions.getStorageContainerV2(GetStorageContainerV2Args.builder()\n            .extId(\"1891fd3a-1ef7-4947-af56-9ee4b973c6fd\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  get-storage-container:\n    fn::invoke:\n      function: nutanix:getStorageContainerV2\n      arguments:\n        extId: 1891fd3a-1ef7-4947-af56-9ee4b973c6fd\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
      "inputs": {
        "description": "A collection of arguments for invoking getStorageContainerV2.\n",
        "properties": {
          "extId": {
            "type": "string",
            "description": "storage container UUID\n"
          }
        },
        "type": "object",
        "required": [
          "extId"
        ]
      },
      "outputs": {
        "description": "A collection of values returned by getStorageContainerV2.\n",
        "properties": {
          "affinityHostExtId": {
            "description": "- Affinity host extId for RF 1 Storage Container.\n",
            "type": "string"
          },
          "cacheDeduplication": {
            "description": "- Indicates the current status of Cache Deduplication for the Container. available values:  `NONE`,    `OFF`,    `ON`\n",
            "type": "string"
          },
          "clusterExtId": {
            "description": "- ext id for the cluster owning the storage container.\n",
            "type": "string"
          },
          "clusterName": {
            "description": "- Corresponding name of the Cluster owning the Storage Container instance.\n",
            "type": "string"
          },
          "compressionDelaySecs": {
            "description": "- The compression delay in seconds.\n",
            "type": "integer"
          },
          "containerExtId": {
            "description": "- the storage container ext id\n",
            "type": "string"
          },
          "erasureCode": {
            "description": "- Indicates the current status value for Erasure Coding for the Container. available values:  `NONE`,    `OFF`,    `ON`\n",
            "type": "string"
          },
          "erasureCodeDelaySecs": {
            "description": "- Delay in performing ErasureCode for the current Container instance.\n",
            "type": "integer"
          },
          "extId": {
            "description": "- the storage container uuid\n",
            "type": "string"
          },
          "hasHigherEcFaultDomainPreference": {
            "description": "- Indicates whether to prefer a higher Erasure Code fault domain.\n",
            "type": "boolean"
          },
          "id": {
            "description": "The provider-assigned unique ID for this managed resource.",
            "type": "string"
          },
          "isCompressionEnabled": {
            "description": "- Indicates whether the compression is enabled for the Container.\n",
            "type": "boolean"
          },
          "isEncrypted": {
            "description": "- Indicates whether the Container is encrypted or not.\n",
            "type": "boolean"
          },
          "isInlineEcEnabled": {
            "description": "- Indicates whether data written to this container should be inline erasure coded or not. This field is only considered when ErasureCoding is enabled.\n",
            "type": "boolean"
          },
          "isInternal": {
            "description": "- Indicates whether the Container is internal and is managed by Nutanix.\n",
            "type": "boolean"
          },
          "isMarkedForRemoval": {
            "description": "- Indicates if the Storage Container is marked for removal. This field is set when the Storage Container is about to be destroyed.\n",
            "type": "boolean"
          },
          "isNfsWhitelistInherited": {
            "description": "- Indicates whether the NFS whitelist is inherited from global config.\n",
            "type": "boolean"
          },
          "isSoftwareEncryptionEnabled": {
            "description": "- Indicates whether the Container instance has software encryption enabled.\n",
            "type": "boolean"
          },
          "links": {
            "description": "- A HATEOAS style link for the response. Each link contains a user-friendly name identifying the link and an address for retrieving the particular resource.\n",
            "items": {
              "$ref": "#/types/nutanix:index%2FgetStorageContainerV2Link:getStorageContainerV2Link"
            },
            "type": "array"
          },
          "logicalAdvertisedCapacityBytes": {
            "description": "- Max capacity of the Container as defined by the user.\n",
            "type": "integer"
          },
          "logicalExplicitReservedCapacityBytes": {
            "description": "- Total reserved size (in bytes) of the container (set by Admin). This also accounts for the container's replication factor. The actual reserved capacity of the container will be the maximum of explicitReservedCapacity and implicitReservedCapacity.\n",
            "type": "integer"
          },
          "logicalImplicitReservedCapacityBytes": {
            "description": "- This is the summation of reservations provisioned on all vdisks in the container. The actual reserved capacity of the container will be the maximum of explicitReservedCapacity and implicitReservedCapacity\n",
            "type": "integer"
          },
          "maxCapacityBytes": {
            "description": "- Maximum physical capacity of the Storage Container in bytes.\n",
            "type": "integer"
          },
          "name": {
            "description": "Name of the storage container.  Note that the name of Storage Container should be unique per cluster.\n",
            "type": "string"
          },
          "nfsWhitelistAddresses": {
            "description": "- List of NFS addresses which need to be whitelisted.\n",
            "items": {
              "$ref": "#/types/nutanix:index%2FgetStorageContainerV2NfsWhitelistAddress:getStorageContainerV2NfsWhitelistAddress"
            },
            "type": "array"
          },
          "onDiskDedup": {
            "description": "- Indicates the current status of Disk Deduplication for the Container. available values:  `NONE`,    `OFF`,    `POST_PROCESS`\n",
            "type": "string"
          },
          "ownerExtId": {
            "description": "- owner ext id\n",
            "type": "string"
          },
          "replicationFactor": {
            "description": "- Replication factor of the Storage Container.\n",
            "type": "integer"
          },
          "storagePoolExtId": {
            "description": "- extId of the Storage Pool owning the Storage Container instance.\n",
            "type": "string"
          },
          "tenantId": {
            "description": "- A globally unique identifier that represents the tenant that owns this entity.\n",
            "type": "string"
          }
        },
        "required": [
          "affinityHostExtId",
          "cacheDeduplication",
          "clusterExtId",
          "clusterName",
          "compressionDelaySecs",
          "containerExtId",
          "erasureCode",
          "erasureCodeDelaySecs",
          "extId",
          "hasHigherEcFaultDomainPreference",
          "id",
          "isCompressionEnabled",
          "isEncrypted",
          "isInlineEcEnabled",
          "isInternal",
          "isMarkedForRemoval",
          "isNfsWhitelistInherited",
          "isSoftwareEncryptionEnabled",
          "links",
          "logicalAdvertisedCapacityBytes",
          "logicalExplicitReservedCapacityBytes",
          "logicalImplicitReservedCapacityBytes",
          "maxCapacityBytes",
          "name",
          "nfsWhitelistAddresses",
          "onDiskDedup",
          "ownerExtId",
          "replicationFactor",
          "storagePoolExtId",
          "tenantId"
        ],
        "type": "object"
      }
    },
    "nutanix:index/getStorageContainersV2:getStorageContainersV2": {
      "description": "Provides a datasource to Lists the Storage Containers present in the system.\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as nutanix from \"@pierskarsenbarg/nutanix\";\n\nconst storage_containers = nutanix.getStorageContainersV2({});\n```\n```python\nimport pulumi\nimport pulumi_nutanix as nutanix\n\nstorage_containers = nutanix.get_storage_containers_v2()\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Nutanix = Pulumi.Nutanix;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var storage_containers = Nutanix.GetStorageContainersV2.Invoke();\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pierskarsenbarg/pulumi-nutanix/sdk/go/nutanix\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := nutanix.LookupStorageContainersV2(ctx, \u0026nutanix.LookupStorageContainersV2Args{}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.nutanix.NutanixFunctions;\nimport com.pulumi.nutanix.inputs.GetStorageContainersV2Args;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var storage-containers = NutanixFunctions.getStorageContainersV2(GetStorageContainersV2Args.builder()\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  storage-containers:\n    fn::invoke:\n      function: nutanix:getStorageContainersV2\n      arguments: {}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Storage Container\n\nThe \u003cspan pulumi-lang-nodejs=\"`storageContainers`\" pulumi-lang-dotnet=\"`StorageContainers`\" pulumi-lang-go=\"`storageContainers`\" pulumi-lang-python=\"`storage_containers`\" pulumi-lang-yaml=\"`storageContainers`\" pulumi-lang-java=\"`storageContainers`\"\u003e`storage_containers`\u003c/span\u003e contains list of Storage Container objects. Each Storage Container object contains the following attributes:\n\n* \u003cspan pulumi-lang-nodejs=\"`extId`\" pulumi-lang-dotnet=\"`ExtId`\" pulumi-lang-go=\"`extId`\" pulumi-lang-python=\"`ext_id`\" pulumi-lang-yaml=\"`extId`\" pulumi-lang-java=\"`extId`\"\u003e`ext_id`\u003c/span\u003e: - the storage container uuid\n* \u003cspan pulumi-lang-nodejs=\"`tenantId`\" pulumi-lang-dotnet=\"`TenantId`\" pulumi-lang-go=\"`tenantId`\" pulumi-lang-python=\"`tenant_id`\" pulumi-lang-yaml=\"`tenantId`\" pulumi-lang-java=\"`tenantId`\"\u003e`tenant_id`\u003c/span\u003e: - A globally unique identifier that represents the tenant that owns this entity.\n* \u003cspan pulumi-lang-nodejs=\"`links`\" pulumi-lang-dotnet=\"`Links`\" pulumi-lang-go=\"`links`\" pulumi-lang-python=\"`links`\" pulumi-lang-yaml=\"`links`\" pulumi-lang-java=\"`links`\"\u003e`links`\u003c/span\u003e: - A HATEOAS style link for the response. Each link contains a user-friendly name identifying the link and an address for retrieving the particular resource.\n\n* \u003cspan pulumi-lang-nodejs=\"`containerExtId`\" pulumi-lang-dotnet=\"`ContainerExtId`\" pulumi-lang-go=\"`containerExtId`\" pulumi-lang-python=\"`container_ext_id`\" pulumi-lang-yaml=\"`containerExtId`\" pulumi-lang-java=\"`containerExtId`\"\u003e`container_ext_id`\u003c/span\u003e: - the storage container ext id\n* \u003cspan pulumi-lang-nodejs=\"`ownerExtId`\" pulumi-lang-dotnet=\"`OwnerExtId`\" pulumi-lang-go=\"`ownerExtId`\" pulumi-lang-python=\"`owner_ext_id`\" pulumi-lang-yaml=\"`ownerExtId`\" pulumi-lang-java=\"`ownerExtId`\"\u003e`owner_ext_id`\u003c/span\u003e: - owner ext id\n* \u003cspan pulumi-lang-nodejs=\"`name`\" pulumi-lang-dotnet=\"`Name`\" pulumi-lang-go=\"`name`\" pulumi-lang-python=\"`name`\" pulumi-lang-yaml=\"`name`\" pulumi-lang-java=\"`name`\"\u003e`name`\u003c/span\u003e: Name of the storage container.  Note that the name of Storage Container should be unique per cluster.\n* \u003cspan pulumi-lang-nodejs=\"`clusterExtId`\" pulumi-lang-dotnet=\"`ClusterExtId`\" pulumi-lang-go=\"`clusterExtId`\" pulumi-lang-python=\"`cluster_ext_id`\" pulumi-lang-yaml=\"`clusterExtId`\" pulumi-lang-java=\"`clusterExtId`\"\u003e`cluster_ext_id`\u003c/span\u003e: - ext id for the cluster owning the storage container.\n* \u003cspan pulumi-lang-nodejs=\"`storagePoolExtId`\" pulumi-lang-dotnet=\"`StoragePoolExtId`\" pulumi-lang-go=\"`storagePoolExtId`\" pulumi-lang-python=\"`storage_pool_ext_id`\" pulumi-lang-yaml=\"`storagePoolExtId`\" pulumi-lang-java=\"`storagePoolExtId`\"\u003e`storage_pool_ext_id`\u003c/span\u003e: - extId of the Storage Pool owning the Storage Container instance.\n* \u003cspan pulumi-lang-nodejs=\"`isMarkedForRemoval`\" pulumi-lang-dotnet=\"`IsMarkedForRemoval`\" pulumi-lang-go=\"`isMarkedForRemoval`\" pulumi-lang-python=\"`is_marked_for_removal`\" pulumi-lang-yaml=\"`isMarkedForRemoval`\" pulumi-lang-java=\"`isMarkedForRemoval`\"\u003e`is_marked_for_removal`\u003c/span\u003e: - Indicates if the Storage Container is marked for removal. This field is set when the Storage Container is about to be destroyed.\n* \u003cspan pulumi-lang-nodejs=\"`maxCapacityBytes`\" pulumi-lang-dotnet=\"`MaxCapacityBytes`\" pulumi-lang-go=\"`maxCapacityBytes`\" pulumi-lang-python=\"`max_capacity_bytes`\" pulumi-lang-yaml=\"`maxCapacityBytes`\" pulumi-lang-java=\"`maxCapacityBytes`\"\u003e`max_capacity_bytes`\u003c/span\u003e: - Maximum physical capacity of the Storage Container in bytes.\n* \u003cspan pulumi-lang-nodejs=\"`logicalExplicitReservedCapacityBytes`\" pulumi-lang-dotnet=\"`LogicalExplicitReservedCapacityBytes`\" pulumi-lang-go=\"`logicalExplicitReservedCapacityBytes`\" pulumi-lang-python=\"`logical_explicit_reserved_capacity_bytes`\" pulumi-lang-yaml=\"`logicalExplicitReservedCapacityBytes`\" pulumi-lang-java=\"`logicalExplicitReservedCapacityBytes`\"\u003e`logical_explicit_reserved_capacity_bytes`\u003c/span\u003e: - Total reserved size (in bytes) of the container (set by Admin). This also accounts for the container's replication factor. The actual reserved capacity of the container will be the maximum of explicitReservedCapacity and implicitReservedCapacity.\n* \u003cspan pulumi-lang-nodejs=\"`logicalImplicitReservedCapacityBytes`\" pulumi-lang-dotnet=\"`LogicalImplicitReservedCapacityBytes`\" pulumi-lang-go=\"`logicalImplicitReservedCapacityBytes`\" pulumi-lang-python=\"`logical_implicit_reserved_capacity_bytes`\" pulumi-lang-yaml=\"`logicalImplicitReservedCapacityBytes`\" pulumi-lang-java=\"`logicalImplicitReservedCapacityBytes`\"\u003e`logical_implicit_reserved_capacity_bytes`\u003c/span\u003e: - This is the summation of reservations provisioned on all VDisks in the container. The actual reserved capacity of the container will be the maximum of explicitReservedCapacity and implicitReservedCapacity\n* \u003cspan pulumi-lang-nodejs=\"`logicalAdvertisedCapacityBytes`\" pulumi-lang-dotnet=\"`LogicalAdvertisedCapacityBytes`\" pulumi-lang-go=\"`logicalAdvertisedCapacityBytes`\" pulumi-lang-python=\"`logical_advertised_capacity_bytes`\" pulumi-lang-yaml=\"`logicalAdvertisedCapacityBytes`\" pulumi-lang-java=\"`logicalAdvertisedCapacityBytes`\"\u003e`logical_advertised_capacity_bytes`\u003c/span\u003e: - Max capacity of the Container as defined by the user.\n* \u003cspan pulumi-lang-nodejs=\"`replicationFactor`\" pulumi-lang-dotnet=\"`ReplicationFactor`\" pulumi-lang-go=\"`replicationFactor`\" pulumi-lang-python=\"`replication_factor`\" pulumi-lang-yaml=\"`replicationFactor`\" pulumi-lang-java=\"`replicationFactor`\"\u003e`replication_factor`\u003c/span\u003e: - Replication factor of the Storage Container.\n* \u003cspan pulumi-lang-nodejs=\"`nfsWhitelistAddresses`\" pulumi-lang-dotnet=\"`NfsWhitelistAddresses`\" pulumi-lang-go=\"`nfsWhitelistAddresses`\" pulumi-lang-python=\"`nfs_whitelist_addresses`\" pulumi-lang-yaml=\"`nfsWhitelistAddresses`\" pulumi-lang-java=\"`nfsWhitelistAddresses`\"\u003e`nfs_whitelist_addresses`\u003c/span\u003e: - List of NFS addresses which need to be whitelisted.\n* \u003cspan pulumi-lang-nodejs=\"`isNfsWhitelistInherited`\" pulumi-lang-dotnet=\"`IsNfsWhitelistInherited`\" pulumi-lang-go=\"`isNfsWhitelistInherited`\" pulumi-lang-python=\"`is_nfs_whitelist_inherited`\" pulumi-lang-yaml=\"`isNfsWhitelistInherited`\" pulumi-lang-java=\"`isNfsWhitelistInherited`\"\u003e`is_nfs_whitelist_inherited`\u003c/span\u003e: - Indicates whether the NFS whitelist is inherited from global config.\n* \u003cspan pulumi-lang-nodejs=\"`erasureCode`\" pulumi-lang-dotnet=\"`ErasureCode`\" pulumi-lang-go=\"`erasureCode`\" pulumi-lang-python=\"`erasure_code`\" pulumi-lang-yaml=\"`erasureCode`\" pulumi-lang-java=\"`erasureCode`\"\u003e`erasure_code`\u003c/span\u003e: - Indicates the current status value for Erasure Coding for the Container. available values:  `NONE`,    `OFF`,    `ON`\n\n* \u003cspan pulumi-lang-nodejs=\"`isInlineEcEnabled`\" pulumi-lang-dotnet=\"`IsInlineEcEnabled`\" pulumi-lang-go=\"`isInlineEcEnabled`\" pulumi-lang-python=\"`is_inline_ec_enabled`\" pulumi-lang-yaml=\"`isInlineEcEnabled`\" pulumi-lang-java=\"`isInlineEcEnabled`\"\u003e`is_inline_ec_enabled`\u003c/span\u003e: - Indicates whether data written to this container should be inline erasure coded or not. This field is only considered when ErasureCoding is enabled.\n* \u003cspan pulumi-lang-nodejs=\"`hasHigherEcFaultDomainPreference`\" pulumi-lang-dotnet=\"`HasHigherEcFaultDomainPreference`\" pulumi-lang-go=\"`hasHigherEcFaultDomainPreference`\" pulumi-lang-python=\"`has_higher_ec_fault_domain_preference`\" pulumi-lang-yaml=\"`hasHigherEcFaultDomainPreference`\" pulumi-lang-java=\"`hasHigherEcFaultDomainPreference`\"\u003e`has_higher_ec_fault_domain_preference`\u003c/span\u003e: - Indicates whether to prefer a higher Erasure Code fault domain.\n* \u003cspan pulumi-lang-nodejs=\"`erasureCodeDelaySecs`\" pulumi-lang-dotnet=\"`ErasureCodeDelaySecs`\" pulumi-lang-go=\"`erasureCodeDelaySecs`\" pulumi-lang-python=\"`erasure_code_delay_secs`\" pulumi-lang-yaml=\"`erasureCodeDelaySecs`\" pulumi-lang-java=\"`erasureCodeDelaySecs`\"\u003e`erasure_code_delay_secs`\u003c/span\u003e: - Delay in performing ErasureCode for the current Container instance.\n* \u003cspan pulumi-lang-nodejs=\"`cacheDeduplication`\" pulumi-lang-dotnet=\"`CacheDeduplication`\" pulumi-lang-go=\"`cacheDeduplication`\" pulumi-lang-python=\"`cache_deduplication`\" pulumi-lang-yaml=\"`cacheDeduplication`\" pulumi-lang-java=\"`cacheDeduplication`\"\u003e`cache_deduplication`\u003c/span\u003e: - Indicates the current status of Cache Deduplication for the Container. available values:  `NONE`,    `OFF`,    `ON`\n* \u003cspan pulumi-lang-nodejs=\"`onDiskDedup`\" pulumi-lang-dotnet=\"`OnDiskDedup`\" pulumi-lang-go=\"`onDiskDedup`\" pulumi-lang-python=\"`on_disk_dedup`\" pulumi-lang-yaml=\"`onDiskDedup`\" pulumi-lang-java=\"`onDiskDedup`\"\u003e`on_disk_dedup`\u003c/span\u003e: - Indicates the current status of Disk Deduplication for the Container. available values:  `NONE`,    `OFF`,    `POST_PROCESS`\n* \u003cspan pulumi-lang-nodejs=\"`isCompressionEnabled`\" pulumi-lang-dotnet=\"`IsCompressionEnabled`\" pulumi-lang-go=\"`isCompressionEnabled`\" pulumi-lang-python=\"`is_compression_enabled`\" pulumi-lang-yaml=\"`isCompressionEnabled`\" pulumi-lang-java=\"`isCompressionEnabled`\"\u003e`is_compression_enabled`\u003c/span\u003e: - Indicates whether the compression is enabled for the Container.\n* \u003cspan pulumi-lang-nodejs=\"`compressionDelaySecs`\" pulumi-lang-dotnet=\"`CompressionDelaySecs`\" pulumi-lang-go=\"`compressionDelaySecs`\" pulumi-lang-python=\"`compression_delay_secs`\" pulumi-lang-yaml=\"`compressionDelaySecs`\" pulumi-lang-java=\"`compressionDelaySecs`\"\u003e`compression_delay_secs`\u003c/span\u003e: - The compression delay in seconds.\n* \u003cspan pulumi-lang-nodejs=\"`isInternal`\" pulumi-lang-dotnet=\"`IsInternal`\" pulumi-lang-go=\"`isInternal`\" pulumi-lang-python=\"`is_internal`\" pulumi-lang-yaml=\"`isInternal`\" pulumi-lang-java=\"`isInternal`\"\u003e`is_internal`\u003c/span\u003e: - Indicates whether the Container is internal and is managed by Nutanix.\n* \u003cspan pulumi-lang-nodejs=\"`isSoftwareEncryptionEnabled`\" pulumi-lang-dotnet=\"`IsSoftwareEncryptionEnabled`\" pulumi-lang-go=\"`isSoftwareEncryptionEnabled`\" pulumi-lang-python=\"`is_software_encryption_enabled`\" pulumi-lang-yaml=\"`isSoftwareEncryptionEnabled`\" pulumi-lang-java=\"`isSoftwareEncryptionEnabled`\"\u003e`is_software_encryption_enabled`\u003c/span\u003e: - Indicates whether the Container instance has software encryption enabled.\n* \u003cspan pulumi-lang-nodejs=\"`isEncrypted`\" pulumi-lang-dotnet=\"`IsEncrypted`\" pulumi-lang-go=\"`isEncrypted`\" pulumi-lang-python=\"`is_encrypted`\" pulumi-lang-yaml=\"`isEncrypted`\" pulumi-lang-java=\"`isEncrypted`\"\u003e`is_encrypted`\u003c/span\u003e: - Indicates whether the Container is encrypted or not.\n* \u003cspan pulumi-lang-nodejs=\"`affinityHostExtId`\" pulumi-lang-dotnet=\"`AffinityHostExtId`\" pulumi-lang-go=\"`affinityHostExtId`\" pulumi-lang-python=\"`affinity_host_ext_id`\" pulumi-lang-yaml=\"`affinityHostExtId`\" pulumi-lang-java=\"`affinityHostExtId`\"\u003e`affinity_host_ext_id`\u003c/span\u003e: - Affinity host extId for RF 1 Storage Container.\n* \u003cspan pulumi-lang-nodejs=\"`clusterName`\" pulumi-lang-dotnet=\"`ClusterName`\" pulumi-lang-go=\"`clusterName`\" pulumi-lang-python=\"`cluster_name`\" pulumi-lang-yaml=\"`clusterName`\" pulumi-lang-java=\"`clusterName`\"\u003e`cluster_name`\u003c/span\u003e: - Corresponding name of the Cluster owning the Storage Container instance.\n\n\n###\u003cspan pulumi-lang-nodejs=\" nfsWhitelistAddresses\n\" pulumi-lang-dotnet=\" NfsWhitelistAddresses\n\" pulumi-lang-go=\" nfsWhitelistAddresses\n\" pulumi-lang-python=\" nfs_whitelist_addresses\n\" pulumi-lang-yaml=\" nfsWhitelistAddresses\n\" pulumi-lang-java=\" nfsWhitelistAddresses\n\"\u003e nfs_whitelist_addresses\n\u003c/span\u003e\n* \u003cspan pulumi-lang-nodejs=\"`ipv4`\" pulumi-lang-dotnet=\"`Ipv4`\" pulumi-lang-go=\"`ipv4`\" pulumi-lang-python=\"`ipv4`\" pulumi-lang-yaml=\"`ipv4`\" pulumi-lang-java=\"`ipv4`\"\u003e`ipv4`\u003c/span\u003e: Reference to address configuration\n* \u003cspan pulumi-lang-nodejs=\"`ipv6`\" pulumi-lang-dotnet=\"`Ipv6`\" pulumi-lang-go=\"`ipv6`\" pulumi-lang-python=\"`ipv6`\" pulumi-lang-yaml=\"`ipv6`\" pulumi-lang-java=\"`ipv6`\"\u003e`ipv6`\u003c/span\u003e: Reference to address configuration\n* \u003cspan pulumi-lang-nodejs=\"`fqdn`\" pulumi-lang-dotnet=\"`Fqdn`\" pulumi-lang-go=\"`fqdn`\" pulumi-lang-python=\"`fqdn`\" pulumi-lang-yaml=\"`fqdn`\" pulumi-lang-java=\"`fqdn`\"\u003e`fqdn`\u003c/span\u003e: Reference to address configuration\n\n### ipv4, ipv6 (Reference to address configuration)\n\n* \u003cspan pulumi-lang-nodejs=\"`value`\" pulumi-lang-dotnet=\"`Value`\" pulumi-lang-go=\"`value`\" pulumi-lang-python=\"`value`\" pulumi-lang-yaml=\"`value`\" pulumi-lang-java=\"`value`\"\u003e`value`\u003c/span\u003e: value of address\n* \u003cspan pulumi-lang-nodejs=\"`prefixLength`\" pulumi-lang-dotnet=\"`PrefixLength`\" pulumi-lang-go=\"`prefixLength`\" pulumi-lang-python=\"`prefix_length`\" pulumi-lang-yaml=\"`prefixLength`\" pulumi-lang-java=\"`prefixLength`\"\u003e`prefix_length`\u003c/span\u003e: The prefix length of the network to which this host IPv4/IPv6 address belongs.\n\n### fqdn (Reference to address configuration)\n\n* \u003cspan pulumi-lang-nodejs=\"`value`\" pulumi-lang-dotnet=\"`Value`\" pulumi-lang-go=\"`value`\" pulumi-lang-python=\"`value`\" pulumi-lang-yaml=\"`value`\" pulumi-lang-java=\"`value`\"\u003e`value`\u003c/span\u003e: value of fqdn address\n\n\n\nSee detailed information in [Nutanix List Storage Containers v4](https://developers.nutanix.com/api-reference?namespace=clustermgmt\u0026version=v4.0#tag/StorageContainers/operation/listStorageContainers).\n",
      "inputs": {
        "description": "A collection of arguments for invoking getStorageContainersV2.\n",
        "properties": {
          "apply": {
            "type": "string"
          },
          "filter": {
            "type": "string",
            "description": "A URL query parameter that allows clients to filter a collection of resources.\n"
          },
          "limit": {
            "type": "integer",
            "description": "A URL query parameter that specifies the total number of records returned in the result set. Must be a positive integer between 1 and 100. Any number out of this range will lead to a validation error. If the limit is not provided, a default value of 50 records will be returned in the result set.\n"
          },
          "orderBy": {
            "type": "string",
            "description": "A URL query parameter that allows clients to specify the sort criteria for the returned list of objects. Resources can be sorted in ascending order using asc or descending order using desc. If asc or desc are not specified, the resources will be sorted in ascending order by default.\n"
          },
          "page": {
            "type": "integer",
            "description": "A URL query parameter that specifies the page number of the result set. It must be a positive integer between 0 and the maximum number of pages that are available for that resource. Any number out of this range might lead to no results.\n"
          },
          "select": {
            "type": "string",
            "description": "A URL query parameter that allows clients to request a specific set of properties for each entity or complex type. Expression specified with the $select must conform to the OData V4.01 URL conventions.\n"
          }
        },
        "type": "object"
      },
      "outputs": {
        "description": "A collection of values returned by getStorageContainersV2.\n",
        "properties": {
          "apply": {
            "type": "string"
          },
          "filter": {
            "type": "string"
          },
          "id": {
            "description": "The provider-assigned unique ID for this managed resource.",
            "type": "string"
          },
          "limit": {
            "type": "integer"
          },
          "orderBy": {
            "type": "string"
          },
          "page": {
            "type": "integer"
          },
          "select": {
            "type": "string"
          },
          "storageContainers": {
            "description": "Lists the Storage Containers present in the system.\n",
            "items": {
              "$ref": "#/types/nutanix:index%2FgetStorageContainersV2StorageContainer:getStorageContainersV2StorageContainer"
            },
            "type": "array"
          }
        },
        "required": [
          "id",
          "storageContainers"
        ],
        "type": "object"
      }
    },
    "nutanix:index/getSubnet:getSubnet": {
      "description": "Provides a resource to create a subnet based on the input parameters. A subnet is a block of IP addresses.\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```yaml\nresources:\n  testSubnet:\n    type: nutanix:Subnet\n    name: test\n    properties:\n      name: example-subnet\n      clusterReference:\n        kind: cluster\n        UUID: ${clusters.entities[0].metadata.uuid}\n      vlanId: 201\n      subnetType: VLAN\n      prefixLength: 24\n      defaultGatewayIp: 192.168.0.1\n      subnetIp: 192.168.0.0\n      dhcpOptions:\n        - bootFileName: bootfile\n          tftpServerName: 192.168.0.252\n          domainName: nutanix\n      dhcpDomainNameServerLists:\n        - 8.8.8.8\n        - 4.2.2.2\n      dhcpDomainSearchLists:\n        - nutanix.com\n        - calm.io\nvariables:\n  clusters:\n    fn::invoke:\n      function: nutanix:getClusters\n      arguments:\n        metadata:\n          length: 2\n  test:\n    fn::invoke:\n      function: nutanix:getSubnet\n      arguments:\n        subnetId: ${testSubnet.id}\n  test-name:\n    fn::invoke:\n      function: nutanix:getSubnet\n      arguments:\n        subnetName: ${testSubnet.name}\noutputs:\n  cluster: ${clusters.entities[0].metadata.uuid}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
      "inputs": {
        "description": "A collection of arguments for invoking getSubnet.\n",
        "properties": {
          "additionalFilters": {
            "type": "array",
            "items": {
              "$ref": "#/types/nutanix:index%2FgetSubnetAdditionalFilter:getSubnetAdditionalFilter"
            },
            "description": "- Additional filters to narrow down list of subnets.\n"
          },
          "categories": {
            "type": "array",
            "items": {
              "$ref": "#/types/nutanix:index%2FgetSubnetCategory:getSubnetCategory"
            },
            "description": "The API Version.\n"
          },
          "subnetId": {
            "type": "string",
            "description": "- (Optional) The ID for the subnet.\n"
          },
          "subnetName": {
            "type": "string",
            "description": "- (Optional) The name for the subnet\n"
          }
        },
        "type": "object"
      },
      "outputs": {
        "description": "A collection of values returned by getSubnet.\n",
        "properties": {
          "additionalFilters": {
            "description": "- Additional filters to narrow down list of subnets.\n",
            "items": {
              "$ref": "#/types/nutanix:index%2FgetSubnetAdditionalFilter:getSubnetAdditionalFilter"
            },
            "type": "array"
          },
          "apiVersion": {
            "type": "string"
          },
          "availabilityZoneReference": {
            "additionalProperties": {
              "type": "string"
            },
            "description": "The reference to a availability_zone.\n",
            "type": "object"
          },
          "categories": {
            "description": "The API Version.\n",
            "items": {
              "$ref": "#/types/nutanix:index%2FgetSubnetCategory:getSubnetCategory"
            },
            "type": "array"
          },
          "clusterName": {
            "description": "The name of a cluster.\n",
            "type": "string"
          },
          "clusterUuid": {
            "type": "string"
          },
          "defaultGatewayIp": {
            "description": "Default gateway IP address.\n",
            "type": "string"
          },
          "description": {
            "description": "A description for subnet.\n",
            "type": "string"
          },
          "dhcpDomainNameServerLists": {
            "items": {
              "type": "string"
            },
            "type": "array"
          },
          "dhcpDomainSearchLists": {
            "description": "DHCP domain search list for a subnet.\n",
            "items": {
              "type": "string"
            },
            "type": "array"
          },
          "dhcpOptions": {
            "additionalProperties": {
              "type": "string"
            },
            "description": "Spec for defining DHCP options.\n",
            "type": "object"
          },
          "dhcpServerAddress": {
            "additionalProperties": {
              "type": "string"
            },
            "description": "Host address.\n",
            "type": "object"
          },
          "dhcpServerAddressPort": {
            "description": "Port Number.\n",
            "type": "integer"
          },
          "enableNat": {
            "type": "boolean"
          },
          "id": {
            "description": "The provider-assigned unique ID for this managed resource.",
            "type": "string"
          },
          "ipConfigPoolListRanges": {
            "items": {
              "type": "string"
            },
            "type": "array"
          },
          "isExternal": {
            "type": "boolean"
          },
          "messageLists": {
            "items": {
              "$ref": "#/types/nutanix:index%2FgetSubnetMessageList:getSubnetMessageList"
            },
            "type": "array"
          },
          "metadata": {
            "additionalProperties": {
              "type": "string"
            },
            "description": "The subnet kind metadata.\n",
            "type": "object"
          },
          "name": {
            "description": "- the name(Optional).\n",
            "type": "string"
          },
          "networkFunctionChainReference": {
            "additionalProperties": {
              "type": "string"
            },
            "description": "The reference to a network_function_chain.\n",
            "type": "object"
          },
          "ownerReference": {
            "additionalProperties": {
              "type": "string"
            },
            "description": "The reference to a user.\n",
            "type": "object"
          },
          "prefixLength": {
            "description": "- (Optional). IP prefix length of the Subnet.\n",
            "type": "integer"
          },
          "projectReference": {
            "additionalProperties": {
              "type": "string"
            },
            "description": "The reference to a project.\n",
            "type": "object"
          },
          "state": {
            "description": "- The state of the subnet.\n",
            "type": "string"
          },
          "subnetId": {
            "type": "string"
          },
          "subnetIp": {
            "description": "Subnet IP address.\n",
            "type": "string"
          },
          "subnetName": {
            "type": "string"
          },
          "subnetType": {
            "description": "The type of the subnet.\n",
            "type": "string"
          },
          "vlanId": {
            "description": "VLAN assigned to the subnet.\n",
            "type": "integer"
          },
          "vpcReference": {
            "additionalProperties": {
              "type": "string"
            },
            "type": "object"
          },
          "vswitchName": {
            "description": "The name of the vswitch.\n",
            "type": "string"
          }
        },
        "required": [
          "apiVersion",
          "availabilityZoneReference",
          "categories",
          "clusterName",
          "clusterUuid",
          "defaultGatewayIp",
          "description",
          "dhcpDomainNameServerLists",
          "dhcpDomainSearchLists",
          "dhcpOptions",
          "dhcpServerAddress",
          "dhcpServerAddressPort",
          "enableNat",
          "id",
          "ipConfigPoolListRanges",
          "isExternal",
          "messageLists",
          "metadata",
          "name",
          "networkFunctionChainReference",
          "ownerReference",
          "prefixLength",
          "projectReference",
          "state",
          "subnetIp",
          "subnetType",
          "vlanId",
          "vpcReference",
          "vswitchName"
        ],
        "type": "object"
      }
    },
    "nutanix:index/getSubnetV2:getSubnetV2": {
      "description": "Get a subnet with the specified UUID.\n",
      "inputs": {
        "description": "A collection of arguments for invoking getSubnetV2.\n",
        "properties": {
          "extId": {
            "type": "string",
            "description": "- (Required) The UUID of the subnet.\n"
          },
          "reservedIpAddresses": {
            "type": "array",
            "items": {
              "$ref": "#/types/nutanix:index%2FgetSubnetV2ReservedIpAddress:getSubnetV2ReservedIpAddress"
            },
            "description": "List of IPs that are excluded while allocating IP addresses to VM ports.\n"
          }
        },
        "type": "object",
        "required": [
          "extId"
        ]
      },
      "outputs": {
        "description": "A collection of values returned by getSubnetV2.\n",
        "properties": {
          "bridgeName": {
            "description": "Name of the bridge on the host for the subnet.\n",
            "type": "string"
          },
          "clusterName": {
            "description": "Cluster Name\n",
            "type": "string"
          },
          "clusterReference": {
            "description": "UUID of the cluster this subnet belongs to.\n",
            "type": "string"
          },
          "description": {
            "description": "Description of the subnet.\n",
            "type": "string"
          },
          "dhcpOptions": {
            "description": "List of DHCP options to be configured.\n",
            "items": {
              "$ref": "#/types/nutanix:index%2FgetSubnetV2DhcpOption:getSubnetV2DhcpOption"
            },
            "type": "array"
          },
          "dynamicIpAddresses": {
            "description": "List of IPs, which are a subset from the reserved IP address list, that must be advertised to the SDN gateway.\n",
            "items": {
              "$ref": "#/types/nutanix:index%2FgetSubnetV2DynamicIpAddress:getSubnetV2DynamicIpAddress"
            },
            "type": "array"
          },
          "extId": {
            "type": "string"
          },
          "hypervisorType": {
            "description": "Hypervisor Type\n",
            "type": "string"
          },
          "id": {
            "description": "The provider-assigned unique ID for this managed resource.",
            "type": "string"
          },
          "ipConfigs": {
            "description": "IP configuration for the subnet.\n",
            "items": {
              "$ref": "#/types/nutanix:index%2FgetSubnetV2IpConfig:getSubnetV2IpConfig"
            },
            "type": "array"
          },
          "ipPrefix": {
            "description": "IP Prefix in CIDR format.\n",
            "type": "string"
          },
          "ipUsages": {
            "description": "IP usage statistics.\n",
            "items": {
              "$ref": "#/types/nutanix:index%2FgetSubnetV2IpUsage:getSubnetV2IpUsage"
            },
            "type": "array"
          },
          "isAdvancedNetworking": {
            "description": "Indicates whether the subnet is used for advanced networking.\n",
            "type": "boolean"
          },
          "isExternal": {
            "description": "Indicates whether the subnet is used for external connectivity.\n",
            "type": "boolean"
          },
          "isNatEnabled": {
            "description": "Indicates whether NAT must be enabled for VPCs attached to the subnet. This is supported only for external subnets. NAT is enabled by default on external subnets.\n",
            "type": "boolean"
          },
          "links": {
            "description": "A HATEOAS style link for the response. Each link contains a user-friendly name identifying the link and an address for retrieving the particular resource.\n",
            "items": {
              "$ref": "#/types/nutanix:index%2FgetSubnetV2Link:getSubnetV2Link"
            },
            "type": "array"
          },
          "migrationState": {
            "description": "Migration state of the subnet. This field is read-only.\n",
            "type": "string"
          },
          "name": {
            "description": "Name of the subnet.\n",
            "type": "string"
          },
          "networkFunctionChainReference": {
            "description": "UUID of the Network function chain entity that this subnet belongs to (type VLAN only).\n",
            "type": "string"
          },
          "networkId": {
            "description": "or VLAN subnet, this field represents VLAN Id, valid range is from 0 to 4095; For overlay subnet, this field represents 24-bit VNI, this field is read-only.\n",
            "type": "integer"
          },
          "reservedIpAddresses": {
            "description": "List of IPs that are excluded while allocating IP addresses to VM ports.\n",
            "items": {
              "$ref": "#/types/nutanix:index%2FgetSubnetV2ReservedIpAddress:getSubnetV2ReservedIpAddress"
            },
            "type": "array"
          },
          "subnetType": {
            "description": "Type of subnet.\n",
            "type": "string"
          },
          "virtualSwitchReference": {
            "description": "UUID of the virtual switch this subnet belongs to (type VLAN only).\n",
            "type": "string"
          },
          "virtualSwitches": {
            "description": "Schema to configure a virtual switch\n",
            "items": {
              "$ref": "#/types/nutanix:index%2FgetSubnetV2VirtualSwitch:getSubnetV2VirtualSwitch"
            },
            "type": "array"
          },
          "vpcReference": {
            "description": "UUID of Virtual Private Cloud this subnet belongs to (type Overlay only).\n",
            "type": "string"
          },
          "vpcs": {
            "description": "Networking common base object\n",
            "items": {
              "$ref": "#/types/nutanix:index%2FgetSubnetV2Vpc:getSubnetV2Vpc"
            },
            "type": "array"
          }
        },
        "required": [
          "bridgeName",
          "clusterName",
          "clusterReference",
          "description",
          "dhcpOptions",
          "dynamicIpAddresses",
          "extId",
          "hypervisorType",
          "id",
          "ipConfigs",
          "ipPrefix",
          "ipUsages",
          "isAdvancedNetworking",
          "isExternal",
          "isNatEnabled",
          "links",
          "migrationState",
          "name",
          "networkFunctionChainReference",
          "networkId",
          "reservedIpAddresses",
          "subnetType",
          "virtualSwitchReference",
          "virtualSwitches",
          "vpcReference",
          "vpcs"
        ],
        "type": "object"
      }
    },
    "nutanix:index/getSubnets:getSubnets": {
      "description": "Describes a list of subnets\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as nutanix from \"@pierskarsenbarg/nutanix\";\n\nconst subnets = nutanix.getSubnets({});\nconst test = nutanix.getSubnets({\n    metadatas: [{\n        filter: \"name==vlan0_test_2\",\n    }],\n});\n```\n```python\nimport pulumi\nimport pulumi_nutanix as nutanix\n\nsubnets = nutanix.get_subnets()\ntest = nutanix.get_subnets(metadatas=[{\n    \"filter\": \"name==vlan0_test_2\",\n}])\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Nutanix = Pulumi.Nutanix;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var subnets = Nutanix.GetSubnets.Invoke();\n\n    var test = Nutanix.GetSubnets.Invoke(new()\n    {\n        Metadatas = new[]\n        {\n            new Nutanix.Inputs.GetSubnetsMetadataInputArgs\n            {\n                Filter = \"name==vlan0_test_2\",\n            },\n        },\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pierskarsenbarg/pulumi-nutanix/sdk/go/nutanix\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := nutanix.GetSubnets(ctx, \u0026nutanix.GetSubnetsArgs{}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = nutanix.GetSubnets(ctx, \u0026nutanix.GetSubnetsArgs{\n\t\t\tMetadatas: []nutanix.GetSubnetsMetadata{\n\t\t\t\t{\n\t\t\t\t\tFilter: \"name==vlan0_test_2\",\n\t\t\t\t},\n\t\t\t},\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.nutanix.NutanixFunctions;\nimport com.pulumi.nutanix.inputs.GetSubnetsArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var subnets = NutanixFunctions.getSubnets(GetSubnetsArgs.builder()\n            .build());\n\n        final var test = NutanixFunctions.getSubnets(GetSubnetsArgs.builder()\n            .metadatas(GetSubnetsMetadataArgs.builder()\n                .filter(\"name==vlan0_test_2\")\n                .build())\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  subnets:\n    fn::invoke:\n      function: nutanix:getSubnets\n      arguments: {}\n  test:\n    fn::invoke:\n      function: nutanix:getSubnets\n      arguments:\n        metadatas:\n          - filter: name==vlan0_test_2\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
      "inputs": {
        "description": "A collection of arguments for invoking getSubnets.\n",
        "properties": {
          "metadatas": {
            "type": "array",
            "items": {
              "$ref": "#/types/nutanix:index%2FgetSubnetsMetadata:getSubnetsMetadata"
            },
            "description": "The subnet kind metadata.\n"
          }
        },
        "type": "object"
      },
      "outputs": {
        "description": "A collection of values returned by getSubnets.\n",
        "properties": {
          "apiVersion": {
            "description": "version of the API\n",
            "type": "string"
          },
          "entities": {
            "description": "List of Subnets\n",
            "items": {
              "$ref": "#/types/nutanix:index%2FgetSubnetsEntity:getSubnetsEntity"
            },
            "type": "array"
          },
          "id": {
            "description": "The provider-assigned unique ID for this managed resource.",
            "type": "string"
          },
          "metadatas": {
            "description": "The subnet kind metadata.\n",
            "items": {
              "$ref": "#/types/nutanix:index%2FgetSubnetsMetadata:getSubnetsMetadata"
            },
            "type": "array"
          }
        },
        "required": [
          "apiVersion",
          "entities",
          "id",
          "metadatas"
        ],
        "type": "object"
      }
    },
    "nutanix:index/getSubnetsV2:getSubnetsV2": {
      "description": "Get the list of existing subnets.\n\n## Subnets\n\nThe \u003cspan pulumi-lang-nodejs=\"`subnets`\" pulumi-lang-dotnet=\"`Subnets`\" pulumi-lang-go=\"`subnets`\" pulumi-lang-python=\"`subnets`\" pulumi-lang-yaml=\"`subnets`\" pulumi-lang-java=\"`subnets`\"\u003e`subnets`\u003c/span\u003e object contains the following attributes:\n\n- \u003cspan pulumi-lang-nodejs=\"`extId`\" pulumi-lang-dotnet=\"`ExtId`\" pulumi-lang-go=\"`extId`\" pulumi-lang-python=\"`ext_id`\" pulumi-lang-yaml=\"`extId`\" pulumi-lang-java=\"`extId`\"\u003e`ext_id`\u003c/span\u003e: A globally unique identifier of an instance that is suitable for external consumption.\n- \u003cspan pulumi-lang-nodejs=\"`name`\" pulumi-lang-dotnet=\"`Name`\" pulumi-lang-go=\"`name`\" pulumi-lang-python=\"`name`\" pulumi-lang-yaml=\"`name`\" pulumi-lang-java=\"`name`\"\u003e`name`\u003c/span\u003e: Name of the subnet.\n- \u003cspan pulumi-lang-nodejs=\"`description`\" pulumi-lang-dotnet=\"`Description`\" pulumi-lang-go=\"`description`\" pulumi-lang-python=\"`description`\" pulumi-lang-yaml=\"`description`\" pulumi-lang-java=\"`description`\"\u003e`description`\u003c/span\u003e: Description of the subnet.\n- \u003cspan pulumi-lang-nodejs=\"`subnetType`\" pulumi-lang-dotnet=\"`SubnetType`\" pulumi-lang-go=\"`subnetType`\" pulumi-lang-python=\"`subnet_type`\" pulumi-lang-yaml=\"`subnetType`\" pulumi-lang-java=\"`subnetType`\"\u003e`subnet_type`\u003c/span\u003e: Type of subnet.\n- \u003cspan pulumi-lang-nodejs=\"`networkId`\" pulumi-lang-dotnet=\"`NetworkId`\" pulumi-lang-go=\"`networkId`\" pulumi-lang-python=\"`network_id`\" pulumi-lang-yaml=\"`networkId`\" pulumi-lang-java=\"`networkId`\"\u003e`network_id`\u003c/span\u003e: or VLAN subnet, this field represents VLAN Id, valid range is from 0 to 4095; For overlay subnet, this field represents 24-bit VNI, this field is read-only.\n- \u003cspan pulumi-lang-nodejs=\"`dhcpOptions`\" pulumi-lang-dotnet=\"`DhcpOptions`\" pulumi-lang-go=\"`dhcpOptions`\" pulumi-lang-python=\"`dhcp_options`\" pulumi-lang-yaml=\"`dhcpOptions`\" pulumi-lang-java=\"`dhcpOptions`\"\u003e`dhcp_options`\u003c/span\u003e: List of DHCP options to be configured.\n- \u003cspan pulumi-lang-nodejs=\"`ipConfig`\" pulumi-lang-dotnet=\"`IpConfig`\" pulumi-lang-go=\"`ipConfig`\" pulumi-lang-python=\"`ip_config`\" pulumi-lang-yaml=\"`ipConfig`\" pulumi-lang-java=\"`ipConfig`\"\u003e`ip_config`\u003c/span\u003e: IP configuration for the subnet.\n- \u003cspan pulumi-lang-nodejs=\"`clusterReference`\" pulumi-lang-dotnet=\"`ClusterReference`\" pulumi-lang-go=\"`clusterReference`\" pulumi-lang-python=\"`cluster_reference`\" pulumi-lang-yaml=\"`clusterReference`\" pulumi-lang-java=\"`clusterReference`\"\u003e`cluster_reference`\u003c/span\u003e: UUID of the cluster this subnet belongs to.\n- \u003cspan pulumi-lang-nodejs=\"`virtualSwitchReference`\" pulumi-lang-dotnet=\"`VirtualSwitchReference`\" pulumi-lang-go=\"`virtualSwitchReference`\" pulumi-lang-python=\"`virtual_switch_reference`\" pulumi-lang-yaml=\"`virtualSwitchReference`\" pulumi-lang-java=\"`virtualSwitchReference`\"\u003e`virtual_switch_reference`\u003c/span\u003e: UUID of the virtual switch this subnet belongs to (type VLAN only).\n- \u003cspan pulumi-lang-nodejs=\"`vpcReference`\" pulumi-lang-dotnet=\"`VpcReference`\" pulumi-lang-go=\"`vpcReference`\" pulumi-lang-python=\"`vpc_reference`\" pulumi-lang-yaml=\"`vpcReference`\" pulumi-lang-java=\"`vpcReference`\"\u003e`vpc_reference`\u003c/span\u003e: UUID of Virtual Private Cloud this subnet belongs to (type Overlay only).\n- \u003cspan pulumi-lang-nodejs=\"`isNatEnabled`\" pulumi-lang-dotnet=\"`IsNatEnabled`\" pulumi-lang-go=\"`isNatEnabled`\" pulumi-lang-python=\"`is_nat_enabled`\" pulumi-lang-yaml=\"`isNatEnabled`\" pulumi-lang-java=\"`isNatEnabled`\"\u003e`is_nat_enabled`\u003c/span\u003e: Indicates whether NAT must be enabled for VPCs attached to the subnet. This is supported only for external subnets. NAT is enabled by default on external subnets.\n- \u003cspan pulumi-lang-nodejs=\"`isExternal`\" pulumi-lang-dotnet=\"`IsExternal`\" pulumi-lang-go=\"`isExternal`\" pulumi-lang-python=\"`is_external`\" pulumi-lang-yaml=\"`isExternal`\" pulumi-lang-java=\"`isExternal`\"\u003e`is_external`\u003c/span\u003e: Indicates whether the subnet is used for external connectivity.\n- \u003cspan pulumi-lang-nodejs=\"`reservedIpAddresses`\" pulumi-lang-dotnet=\"`ReservedIpAddresses`\" pulumi-lang-go=\"`reservedIpAddresses`\" pulumi-lang-python=\"`reserved_ip_addresses`\" pulumi-lang-yaml=\"`reservedIpAddresses`\" pulumi-lang-java=\"`reservedIpAddresses`\"\u003e`reserved_ip_addresses`\u003c/span\u003e: List of IPs that are excluded while allocating IP addresses to VM ports.\n- \u003cspan pulumi-lang-nodejs=\"`dynamicIpAddresses`\" pulumi-lang-dotnet=\"`DynamicIpAddresses`\" pulumi-lang-go=\"`dynamicIpAddresses`\" pulumi-lang-python=\"`dynamic_ip_addresses`\" pulumi-lang-yaml=\"`dynamicIpAddresses`\" pulumi-lang-java=\"`dynamicIpAddresses`\"\u003e`dynamic_ip_addresses`\u003c/span\u003e: List of IPs, which are a subset from the reserved IP address list, that must be advertised to the SDN gateway.\n- \u003cspan pulumi-lang-nodejs=\"`networkFunctionChainReference`\" pulumi-lang-dotnet=\"`NetworkFunctionChainReference`\" pulumi-lang-go=\"`networkFunctionChainReference`\" pulumi-lang-python=\"`network_function_chain_reference`\" pulumi-lang-yaml=\"`networkFunctionChainReference`\" pulumi-lang-java=\"`networkFunctionChainReference`\"\u003e`network_function_chain_reference`\u003c/span\u003e: UUID of the Network function chain entity that this subnet belongs to (type VLAN only).\n- \u003cspan pulumi-lang-nodejs=\"`bridgeName`\" pulumi-lang-dotnet=\"`BridgeName`\" pulumi-lang-go=\"`bridgeName`\" pulumi-lang-python=\"`bridge_name`\" pulumi-lang-yaml=\"`bridgeName`\" pulumi-lang-java=\"`bridgeName`\"\u003e`bridge_name`\u003c/span\u003e: Name of the bridge on the host for the subnet.\n- \u003cspan pulumi-lang-nodejs=\"`isAdvancedNetworking`\" pulumi-lang-dotnet=\"`IsAdvancedNetworking`\" pulumi-lang-go=\"`isAdvancedNetworking`\" pulumi-lang-python=\"`is_advanced_networking`\" pulumi-lang-yaml=\"`isAdvancedNetworking`\" pulumi-lang-java=\"`isAdvancedNetworking`\"\u003e`is_advanced_networking`\u003c/span\u003e: Indicates whether the subnet is used for advanced networking.\n- \u003cspan pulumi-lang-nodejs=\"`clusterName`\" pulumi-lang-dotnet=\"`ClusterName`\" pulumi-lang-go=\"`clusterName`\" pulumi-lang-python=\"`cluster_name`\" pulumi-lang-yaml=\"`clusterName`\" pulumi-lang-java=\"`clusterName`\"\u003e`cluster_name`\u003c/span\u003e: Cluster Name\n- \u003cspan pulumi-lang-nodejs=\"`hypervisorType`\" pulumi-lang-dotnet=\"`HypervisorType`\" pulumi-lang-go=\"`hypervisorType`\" pulumi-lang-python=\"`hypervisor_type`\" pulumi-lang-yaml=\"`hypervisorType`\" pulumi-lang-java=\"`hypervisorType`\"\u003e`hypervisor_type`\u003c/span\u003e: Hypervisor Type\n- \u003cspan pulumi-lang-nodejs=\"`virtualSwitch`\" pulumi-lang-dotnet=\"`VirtualSwitch`\" pulumi-lang-go=\"`virtualSwitch`\" pulumi-lang-python=\"`virtual_switch`\" pulumi-lang-yaml=\"`virtualSwitch`\" pulumi-lang-java=\"`virtualSwitch`\"\u003e`virtual_switch`\u003c/span\u003e: Schema to configure a virtual switch\n- \u003cspan pulumi-lang-nodejs=\"`vpc`\" pulumi-lang-dotnet=\"`Vpc`\" pulumi-lang-go=\"`vpc`\" pulumi-lang-python=\"`vpc`\" pulumi-lang-yaml=\"`vpc`\" pulumi-lang-java=\"`vpc`\"\u003e`vpc`\u003c/span\u003e: Networking common base object\n- \u003cspan pulumi-lang-nodejs=\"`ipPrefix`\" pulumi-lang-dotnet=\"`IpPrefix`\" pulumi-lang-go=\"`ipPrefix`\" pulumi-lang-python=\"`ip_prefix`\" pulumi-lang-yaml=\"`ipPrefix`\" pulumi-lang-java=\"`ipPrefix`\"\u003e`ip_prefix`\u003c/span\u003e: IP Prefix in CIDR format.\n- \u003cspan pulumi-lang-nodejs=\"`ipUsage`\" pulumi-lang-dotnet=\"`IpUsage`\" pulumi-lang-go=\"`ipUsage`\" pulumi-lang-python=\"`ip_usage`\" pulumi-lang-yaml=\"`ipUsage`\" pulumi-lang-java=\"`ipUsage`\"\u003e`ip_usage`\u003c/span\u003e: IP usage statistics.\n- \u003cspan pulumi-lang-nodejs=\"`migrationState`\" pulumi-lang-dotnet=\"`MigrationState`\" pulumi-lang-go=\"`migrationState`\" pulumi-lang-python=\"`migration_state`\" pulumi-lang-yaml=\"`migrationState`\" pulumi-lang-java=\"`migrationState`\"\u003e`migration_state`\u003c/span\u003e: Migration state of the subnet. This field is read-only.\n- \u003cspan pulumi-lang-nodejs=\"`links`\" pulumi-lang-dotnet=\"`Links`\" pulumi-lang-go=\"`links`\" pulumi-lang-python=\"`links`\" pulumi-lang-yaml=\"`links`\" pulumi-lang-java=\"`links`\"\u003e`links`\u003c/span\u003e: A HATEOAS style link for the response. Each link contains a user-friendly name identifying the link and an address for retrieving the particular resource.\n\n###\u003cspan pulumi-lang-nodejs=\" dhcpOptions\n\" pulumi-lang-dotnet=\" DhcpOptions\n\" pulumi-lang-go=\" dhcpOptions\n\" pulumi-lang-python=\" dhcp_options\n\" pulumi-lang-yaml=\" dhcpOptions\n\" pulumi-lang-java=\" dhcpOptions\n\"\u003e dhcp_options\n\u003c/span\u003e\n- \u003cspan pulumi-lang-nodejs=\"`domainNameServers`\" pulumi-lang-dotnet=\"`DomainNameServers`\" pulumi-lang-go=\"`domainNameServers`\" pulumi-lang-python=\"`domain_name_servers`\" pulumi-lang-yaml=\"`domainNameServers`\" pulumi-lang-java=\"`domainNameServers`\"\u003e`domain_name_servers`\u003c/span\u003e: List of Domain Name Server addresses.\n- \u003cspan pulumi-lang-nodejs=\"`domainName`\" pulumi-lang-dotnet=\"`DomainName`\" pulumi-lang-go=\"`domainName`\" pulumi-lang-python=\"`domain_name`\" pulumi-lang-yaml=\"`domainName`\" pulumi-lang-java=\"`domainName`\"\u003e`domain_name`\u003c/span\u003e: The DNS domain name of the client.\n- \u003cspan pulumi-lang-nodejs=\"`searchDomains`\" pulumi-lang-dotnet=\"`SearchDomains`\" pulumi-lang-go=\"`searchDomains`\" pulumi-lang-python=\"`search_domains`\" pulumi-lang-yaml=\"`searchDomains`\" pulumi-lang-java=\"`searchDomains`\"\u003e`search_domains`\u003c/span\u003e: The DNS domain search list.\n- \u003cspan pulumi-lang-nodejs=\"`tftpServerName`\" pulumi-lang-dotnet=\"`TftpServerName`\" pulumi-lang-go=\"`tftpServerName`\" pulumi-lang-python=\"`tftp_server_name`\" pulumi-lang-yaml=\"`tftpServerName`\" pulumi-lang-java=\"`tftpServerName`\"\u003e`tftp_server_name`\u003c/span\u003e: TFTP server name\n- \u003cspan pulumi-lang-nodejs=\"`bootFileName`\" pulumi-lang-dotnet=\"`BootFileName`\" pulumi-lang-go=\"`bootFileName`\" pulumi-lang-python=\"`boot_file_name`\" pulumi-lang-yaml=\"`bootFileName`\" pulumi-lang-java=\"`bootFileName`\"\u003e`boot_file_name`\u003c/span\u003e: Boot file name\n- \u003cspan pulumi-lang-nodejs=\"`ntpServers`\" pulumi-lang-dotnet=\"`NtpServers`\" pulumi-lang-go=\"`ntpServers`\" pulumi-lang-python=\"`ntp_servers`\" pulumi-lang-yaml=\"`ntpServers`\" pulumi-lang-java=\"`ntpServers`\"\u003e`ntp_servers`\u003c/span\u003e: List of NTP server addresses\n\n### domain_name_servers,\u003cspan pulumi-lang-nodejs=\" ntpServers\n\" pulumi-lang-dotnet=\" NtpServers\n\" pulumi-lang-go=\" ntpServers\n\" pulumi-lang-python=\" ntp_servers\n\" pulumi-lang-yaml=\" ntpServers\n\" pulumi-lang-java=\" ntpServers\n\"\u003e ntp_servers\n\u003c/span\u003e\n- \u003cspan pulumi-lang-nodejs=\"`ipv4`\" pulumi-lang-dotnet=\"`Ipv4`\" pulumi-lang-go=\"`ipv4`\" pulumi-lang-python=\"`ipv4`\" pulumi-lang-yaml=\"`ipv4`\" pulumi-lang-java=\"`ipv4`\"\u003e`ipv4`\u003c/span\u003e: IPv4 Object\n- \u003cspan pulumi-lang-nodejs=\"`ipv6`\" pulumi-lang-dotnet=\"`Ipv6`\" pulumi-lang-go=\"`ipv6`\" pulumi-lang-python=\"`ipv6`\" pulumi-lang-yaml=\"`ipv6`\" pulumi-lang-java=\"`ipv6`\"\u003e`ipv6`\u003c/span\u003e: IPv6 Object\n\n###\u003cspan pulumi-lang-nodejs=\" ipConfig\n\" pulumi-lang-dotnet=\" IpConfig\n\" pulumi-lang-go=\" ipConfig\n\" pulumi-lang-python=\" ip_config\n\" pulumi-lang-yaml=\" ipConfig\n\" pulumi-lang-java=\" ipConfig\n\"\u003e ip_config\n\u003c/span\u003e\n- \u003cspan pulumi-lang-nodejs=\"`ipv4`\" pulumi-lang-dotnet=\"`Ipv4`\" pulumi-lang-go=\"`ipv4`\" pulumi-lang-python=\"`ipv4`\" pulumi-lang-yaml=\"`ipv4`\" pulumi-lang-java=\"`ipv4`\"\u003e`ipv4`\u003c/span\u003e: IP V4 configuration.\n- \u003cspan pulumi-lang-nodejs=\"`ipv6`\" pulumi-lang-dotnet=\"`Ipv6`\" pulumi-lang-go=\"`ipv6`\" pulumi-lang-python=\"`ipv6`\" pulumi-lang-yaml=\"`ipv6`\" pulumi-lang-java=\"`ipv6`\"\u003e`ipv6`\u003c/span\u003e: IP V6 configuration\n\n### ip_config.ipv4, ip_config.ipv6\n\n- \u003cspan pulumi-lang-nodejs=\"`ipSubnet`\" pulumi-lang-dotnet=\"`IpSubnet`\" pulumi-lang-go=\"`ipSubnet`\" pulumi-lang-python=\"`ip_subnet`\" pulumi-lang-yaml=\"`ipSubnet`\" pulumi-lang-java=\"`ipSubnet`\"\u003e`ip_subnet`\u003c/span\u003e: subnet ip\n- \u003cspan pulumi-lang-nodejs=\"`defaultGatewayIp`\" pulumi-lang-dotnet=\"`DefaultGatewayIp`\" pulumi-lang-go=\"`defaultGatewayIp`\" pulumi-lang-python=\"`default_gateway_ip`\" pulumi-lang-yaml=\"`defaultGatewayIp`\" pulumi-lang-java=\"`defaultGatewayIp`\"\u003e`default_gateway_ip`\u003c/span\u003e: Reference to address configuration\n- \u003cspan pulumi-lang-nodejs=\"`dhcpServerAddress`\" pulumi-lang-dotnet=\"`DhcpServerAddress`\" pulumi-lang-go=\"`dhcpServerAddress`\" pulumi-lang-python=\"`dhcp_server_address`\" pulumi-lang-yaml=\"`dhcpServerAddress`\" pulumi-lang-java=\"`dhcpServerAddress`\"\u003e`dhcp_server_address`\u003c/span\u003e: Reference to address configuration\n- \u003cspan pulumi-lang-nodejs=\"`poolList`\" pulumi-lang-dotnet=\"`PoolList`\" pulumi-lang-go=\"`poolList`\" pulumi-lang-python=\"`pool_list`\" pulumi-lang-yaml=\"`poolList`\" pulumi-lang-java=\"`poolList`\"\u003e`pool_list`\u003c/span\u003e: Pool of IP addresses from where IPs are allocated.\n\n###\u003cspan pulumi-lang-nodejs=\" ipSubnet\n\" pulumi-lang-dotnet=\" IpSubnet\n\" pulumi-lang-go=\" ipSubnet\n\" pulumi-lang-python=\" ip_subnet\n\" pulumi-lang-yaml=\" ipSubnet\n\" pulumi-lang-java=\" ipSubnet\n\"\u003e ip_subnet\n\u003c/span\u003e\n- \u003cspan pulumi-lang-nodejs=\"`ip`\" pulumi-lang-dotnet=\"`Ip`\" pulumi-lang-go=\"`ip`\" pulumi-lang-python=\"`ip`\" pulumi-lang-yaml=\"`ip`\" pulumi-lang-java=\"`ip`\"\u003e`ip`\u003c/span\u003e: Reference to address configuration\n- \u003cspan pulumi-lang-nodejs=\"`prefixLength`\" pulumi-lang-dotnet=\"`PrefixLength`\" pulumi-lang-go=\"`prefixLength`\" pulumi-lang-python=\"`prefix_length`\" pulumi-lang-yaml=\"`prefixLength`\" pulumi-lang-java=\"`prefixLength`\"\u003e`prefix_length`\u003c/span\u003e: The prefix length of the network to which this host IPv4 address belongs.\n\n###\u003cspan pulumi-lang-nodejs=\" poolList\n\" pulumi-lang-dotnet=\" PoolList\n\" pulumi-lang-go=\" poolList\n\" pulumi-lang-python=\" pool_list\n\" pulumi-lang-yaml=\" poolList\n\" pulumi-lang-java=\" poolList\n\"\u003e pool_list\n\u003c/span\u003e\n- \u003cspan pulumi-lang-nodejs=\"`startIp`\" pulumi-lang-dotnet=\"`StartIp`\" pulumi-lang-go=\"`startIp`\" pulumi-lang-python=\"`start_ip`\" pulumi-lang-yaml=\"`startIp`\" pulumi-lang-java=\"`startIp`\"\u003e`start_ip`\u003c/span\u003e: Reference to address configuration\n- \u003cspan pulumi-lang-nodejs=\"`endIp`\" pulumi-lang-dotnet=\"`EndIp`\" pulumi-lang-go=\"`endIp`\" pulumi-lang-python=\"`end_ip`\" pulumi-lang-yaml=\"`endIp`\" pulumi-lang-java=\"`endIp`\"\u003e`end_ip`\u003c/span\u003e: Reference to address configuration\n\n###\u003cspan pulumi-lang-nodejs=\" ipUsage\n\" pulumi-lang-dotnet=\" IpUsage\n\" pulumi-lang-go=\" ipUsage\n\" pulumi-lang-python=\" ip_usage\n\" pulumi-lang-yaml=\" ipUsage\n\" pulumi-lang-java=\" ipUsage\n\"\u003e ip_usage\n\u003c/span\u003e\n- \u003cspan pulumi-lang-nodejs=\"`numMacs`\" pulumi-lang-dotnet=\"`NumMacs`\" pulumi-lang-go=\"`numMacs`\" pulumi-lang-python=\"`num_macs`\" pulumi-lang-yaml=\"`numMacs`\" pulumi-lang-java=\"`numMacs`\"\u003e`num_macs`\u003c/span\u003e: Number of MAC addresses.\n- \u003cspan pulumi-lang-nodejs=\"`numFreeIps`\" pulumi-lang-dotnet=\"`NumFreeIps`\" pulumi-lang-go=\"`numFreeIps`\" pulumi-lang-python=\"`num_free_ips`\" pulumi-lang-yaml=\"`numFreeIps`\" pulumi-lang-java=\"`numFreeIps`\"\u003e`num_free_ips`\u003c/span\u003e: Number of free IPs.\n- \u003cspan pulumi-lang-nodejs=\"`numAssignedIps`\" pulumi-lang-dotnet=\"`NumAssignedIps`\" pulumi-lang-go=\"`numAssignedIps`\" pulumi-lang-python=\"`num_assigned_ips`\" pulumi-lang-yaml=\"`numAssignedIps`\" pulumi-lang-java=\"`numAssignedIps`\"\u003e`num_assigned_ips`\u003c/span\u003e: Number of assigned IPs.\n- \u003cspan pulumi-lang-nodejs=\"`ipPoolUsages`\" pulumi-lang-dotnet=\"`IpPoolUsages`\" pulumi-lang-go=\"`ipPoolUsages`\" pulumi-lang-python=\"`ip_pool_usages`\" pulumi-lang-yaml=\"`ipPoolUsages`\" pulumi-lang-java=\"`ipPoolUsages`\"\u003e`ip_pool_usages`\u003c/span\u003e: IP Pool usages\n\n###\u003cspan pulumi-lang-nodejs=\" ipPoolUsages\n\" pulumi-lang-dotnet=\" IpPoolUsages\n\" pulumi-lang-go=\" ipPoolUsages\n\" pulumi-lang-python=\" ip_pool_usages\n\" pulumi-lang-yaml=\" ipPoolUsages\n\" pulumi-lang-java=\" ipPoolUsages\n\"\u003e ip_pool_usages\n\u003c/span\u003e\n- \u003cspan pulumi-lang-nodejs=\"`numFreeIps`\" pulumi-lang-dotnet=\"`NumFreeIps`\" pulumi-lang-go=\"`numFreeIps`\" pulumi-lang-python=\"`num_free_ips`\" pulumi-lang-yaml=\"`numFreeIps`\" pulumi-lang-java=\"`numFreeIps`\"\u003e`num_free_ips`\u003c/span\u003e: Number of free IPs\n- \u003cspan pulumi-lang-nodejs=\"`numTotalIps`\" pulumi-lang-dotnet=\"`NumTotalIps`\" pulumi-lang-go=\"`numTotalIps`\" pulumi-lang-python=\"`num_total_ips`\" pulumi-lang-yaml=\"`numTotalIps`\" pulumi-lang-java=\"`numTotalIps`\"\u003e`num_total_ips`\u003c/span\u003e: Total number of IPs in this pool.\n- \u003cspan pulumi-lang-nodejs=\"`range`\" pulumi-lang-dotnet=\"`Range`\" pulumi-lang-go=\"`range`\" pulumi-lang-python=\"`range`\" pulumi-lang-yaml=\"`range`\" pulumi-lang-java=\"`range`\"\u003e`range`\u003c/span\u003e: Start/end IP address range.\n\n### ipv4, ipv6 (Reference to address configuration)\n\n- \u003cspan pulumi-lang-nodejs=\"`value`\" pulumi-lang-dotnet=\"`Value`\" pulumi-lang-go=\"`value`\" pulumi-lang-python=\"`value`\" pulumi-lang-yaml=\"`value`\" pulumi-lang-java=\"`value`\"\u003e`value`\u003c/span\u003e: value of address\n- \u003cspan pulumi-lang-nodejs=\"`prefixLength`\" pulumi-lang-dotnet=\"`PrefixLength`\" pulumi-lang-go=\"`prefixLength`\" pulumi-lang-python=\"`prefix_length`\" pulumi-lang-yaml=\"`prefixLength`\" pulumi-lang-java=\"`prefixLength`\"\u003e`prefix_length`\u003c/span\u003e: The prefix length of the network to which this host IPv4/IPv6 address belongs.\n\nSee detailed information in [Nutanix List Subnets v4](https://developers.nutanix.com/api-reference?namespace=networking\u0026version=v4.0#tag/Subnets/operation/listSubnets).\n",
      "inputs": {
        "description": "A collection of arguments for invoking getSubnetsV2.\n",
        "properties": {
          "expand": {
            "type": "string",
            "description": "A URL query parameter that allows clients to request related resources when a resource that satisfies a particular request is retrieved. The expand can be applied to the following fields:\n- `virtualSwitch`\n"
          },
          "filter": {
            "type": "string",
            "description": "A URL query parameter that allows clients to filter a collection of resources. The filter can be applied to the following fields:\n- `clusterReference`\n- `extId`\n- `isExternal`\n"
          },
          "limit": {
            "type": "integer",
            "description": "A URL query parameter that specifies the total number of records returned in the result set. Must be a positive integer between 1 and 100. Any number out of this range will lead to a validation error. If the limit is not provided, a default value of 50 records will be returned in the result set.\n"
          },
          "orderBy": {
            "type": "string",
            "description": "A URL query parameter that allows clients to specify the sort criteria for the returned list of objects. Resources can be sorted in ascending order using asc or descending order using desc. If asc or desc are not specified, the resources will be sorted in ascending order by default. The orderby can be applied to the following fields:\n"
          },
          "page": {
            "type": "integer",
            "description": "A URL query parameter that specifies the page number of the result set. It must be a positive integer between 0 and the maximum number of pages that are available for that resource. Any number out of this range might lead to no results.\n"
          },
          "select": {
            "type": "string",
            "description": "A URL query parameter that allows clients to request a specific set of properties for each entity or complex type. The select can be applied to the following fields:\n- `clusterName`\n- `clusterReference`\n- `extId`\n- `hypervisorType`\n- `subnetType`\n- `ipPrefix`\n- `isAdvancedNetworking`\n- `isExternal`\n- `isNatEnabled`\n"
          }
        },
        "type": "object"
      },
      "outputs": {
        "description": "A collection of values returned by getSubnetsV2.\n",
        "properties": {
          "expand": {
            "type": "string"
          },
          "filter": {
            "type": "string"
          },
          "id": {
            "description": "The provider-assigned unique ID for this managed resource.",
            "type": "string"
          },
          "limit": {
            "type": "integer"
          },
          "orderBy": {
            "type": "string"
          },
          "page": {
            "type": "integer"
          },
          "select": {
            "type": "string"
          },
          "subnets": {
            "description": "List all of subnets\n",
            "items": {
              "$ref": "#/types/nutanix:index%2FgetSubnetsV2Subnet:getSubnetsV2Subnet"
            },
            "type": "array"
          }
        },
        "required": [
          "id",
          "subnets"
        ],
        "type": "object"
      }
    },
    "nutanix:index/getTemplateV2:getTemplateV2": {
      "description": "Retrieve the Template details for the given Template identifier.\n\n## Example\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as nutanix from \"@pierskarsenbarg/nutanix\";\n\nconst template = nutanix.getTemplateV2({\n    extId: \"7ad31035-9e8b-4fb1-b8fd-fa39326887d8\",\n});\n```\n```python\nimport pulumi\nimport pulumi_nutanix as nutanix\n\ntemplate = nutanix.get_template_v2(ext_id=\"7ad31035-9e8b-4fb1-b8fd-fa39326887d8\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Nutanix = Pulumi.Nutanix;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var template = Nutanix.GetTemplateV2.Invoke(new()\n    {\n        ExtId = \"7ad31035-9e8b-4fb1-b8fd-fa39326887d8\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pierskarsenbarg/pulumi-nutanix/sdk/go/nutanix\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := nutanix.LookupTemplateV2(ctx, \u0026nutanix.LookupTemplateV2Args{\n\t\t\tExtId: \"7ad31035-9e8b-4fb1-b8fd-fa39326887d8\",\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.nutanix.NutanixFunctions;\nimport com.pulumi.nutanix.inputs.GetTemplateV2Args;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var template = NutanixFunctions.getTemplateV2(GetTemplateV2Args.builder()\n            .extId(\"7ad31035-9e8b-4fb1-b8fd-fa39326887d8\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  template:\n    fn::invoke:\n      function: nutanix:getTemplateV2\n      arguments:\n        extId: 7ad31035-9e8b-4fb1-b8fd-fa39326887d8\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
      "inputs": {
        "description": "A collection of arguments for invoking getTemplateV2.\n",
        "properties": {
          "extId": {
            "type": "string",
            "description": "The identifier of a Template.\n"
          }
        },
        "type": "object",
        "required": [
          "extId"
        ]
      },
      "outputs": {
        "description": "A collection of values returned by getTemplateV2.\n",
        "properties": {
          "createTime": {
            "description": "VM creation time\n",
            "type": "string"
          },
          "createdBies": {
            "description": "User or Service who created the User.\n",
            "items": {
              "$ref": "#/types/nutanix:index%2FgetTemplateV2CreatedBy:getTemplateV2CreatedBy"
            },
            "type": "array"
          },
          "extId": {
            "description": "A globally unique identifier of an instance that is suitable for external consumption.\n",
            "type": "string"
          },
          "guestUpdateStatuses": {
            "description": "Status of a Guest Update.\n",
            "items": {
              "$ref": "#/types/nutanix:index%2FgetTemplateV2GuestUpdateStatus:getTemplateV2GuestUpdateStatus"
            },
            "type": "array"
          },
          "id": {
            "description": "The provider-assigned unique ID for this managed resource.",
            "type": "string"
          },
          "links": {
            "description": "- A HATEOAS style link for the response. Each link contains a user-friendly name identifying the link and an address for retrieving the particular resource.\n",
            "items": {
              "$ref": "#/types/nutanix:index%2FgetTemplateV2Link:getTemplateV2Link"
            },
            "type": "array"
          },
          "templateDescription": {
            "description": "The user defined description of a Template.\n",
            "type": "string"
          },
          "templateName": {
            "description": "The user defined name of a Template.\n",
            "type": "string"
          },
          "templateVersionSpecs": {
            "description": "A model that represents an object instance that is accessible through an API endpoint. Instances of this type get an extId field that contains the globally unique identifier for that instance\n",
            "items": {
              "$ref": "#/types/nutanix:index%2FgetTemplateV2TemplateVersionSpec:getTemplateV2TemplateVersionSpec"
            },
            "type": "array"
          },
          "tenantId": {
            "description": "A globally unique identifier that represents the tenant that owns this entity. The system automatically assigns it, and it and is immutable from an API consumer perspective (some use cases may cause this Id to change - For instance, a use case may require the transfer of ownership of the entity, but these cases are handled automatically on the server).\n",
            "type": "string"
          },
          "updateTime": {
            "description": "VM last updated time.\n",
            "type": "string"
          },
          "updatedBies": {
            "description": "Last updated by this User ID.\n",
            "items": {
              "$ref": "#/types/nutanix:index%2FgetTemplateV2UpdatedBy:getTemplateV2UpdatedBy"
            },
            "type": "array"
          }
        },
        "required": [
          "createTime",
          "createdBies",
          "extId",
          "guestUpdateStatuses",
          "id",
          "links",
          "templateDescription",
          "templateName",
          "templateVersionSpecs",
          "tenantId",
          "updateTime",
          "updatedBies"
        ],
        "type": "object"
      }
    },
    "nutanix:index/getTemplatesV2:getTemplatesV2": {
      "description": "List Templates with details like name, description, VM configuration, etc. This operation supports filtering, sorting \u0026 pagination.\n\n## Example\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as nutanix from \"@pierskarsenbarg/nutanix\";\n\n// List all templates\nconst list_templates = nutanix.getTemplatesV2({});\n// List templates with filter, page and limit\nconst filtered_templates = nutanix.getTemplatesV2({\n    filter: \"startswith(templateName,'template_name')\",\n    page: 0,\n    limit: 10,\n});\n```\n```python\nimport pulumi\nimport pulumi_nutanix as nutanix\n\n# List all templates\nlist_templates = nutanix.get_templates_v2()\n# List templates with filter, page and limit\nfiltered_templates = nutanix.get_templates_v2(filter=\"startswith(templateName,'template_name')\",\n    page=0,\n    limit=10)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Nutanix = Pulumi.Nutanix;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    // List all templates\n    var list_templates = Nutanix.GetTemplatesV2.Invoke();\n\n    // List templates with filter, page and limit\n    var filtered_templates = Nutanix.GetTemplatesV2.Invoke(new()\n    {\n        Filter = \"startswith(templateName,'template_name')\",\n        Page = 0,\n        Limit = 10,\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pierskarsenbarg/pulumi-nutanix/sdk/go/nutanix\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t// List all templates\n\t\t_, err := nutanix.GetTemplatesV2(ctx, \u0026nutanix.GetTemplatesV2Args{}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t// List templates with filter, page and limit\n\t\t_, err = nutanix.GetTemplatesV2(ctx, \u0026nutanix.GetTemplatesV2Args{\n\t\t\tFilter: pulumi.StringRef(\"startswith(templateName,'template_name')\"),\n\t\t\tPage:   pulumi.IntRef(0),\n\t\t\tLimit:  pulumi.IntRef(10),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.nutanix.NutanixFunctions;\nimport com.pulumi.nutanix.inputs.GetTemplatesV2Args;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        // List all templates\n        final var list-templates = NutanixFunctions.getTemplatesV2(GetTemplatesV2Args.builder()\n            .build());\n\n        // List templates with filter, page and limit\n        final var filtered-templates = NutanixFunctions.getTemplatesV2(GetTemplatesV2Args.builder()\n            .filter(\"startswith(templateName,'template_name')\")\n            .page(0)\n            .limit(10)\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  # List all templates\n  list-templates:\n    fn::invoke:\n      function: nutanix:getTemplatesV2\n      arguments: {}\n  # List templates with filter, page and limit\n  filtered-templates:\n    fn::invoke:\n      function: nutanix:getTemplatesV2\n      arguments:\n        filter: startswith(templateName,'template_name')\n        page: 0\n        limit: 10\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## Templates\n\nThe \u003cspan pulumi-lang-nodejs=\"`templates`\" pulumi-lang-dotnet=\"`Templates`\" pulumi-lang-go=\"`templates`\" pulumi-lang-python=\"`templates`\" pulumi-lang-yaml=\"`templates`\" pulumi-lang-java=\"`templates`\"\u003e`templates`\u003c/span\u003e object is a list of all templates. Each template has the following attributes:\n\n* \u003cspan pulumi-lang-nodejs=\"`tenantId`\" pulumi-lang-dotnet=\"`TenantId`\" pulumi-lang-go=\"`tenantId`\" pulumi-lang-python=\"`tenant_id`\" pulumi-lang-yaml=\"`tenantId`\" pulumi-lang-java=\"`tenantId`\"\u003e`tenant_id`\u003c/span\u003e - A globally unique identifier that represents the tenant that owns this entity. The system automatically assigns it, and it and is immutable from an API consumer perspective (some use cases may cause this Id to change - For instance, a use case may require the transfer of ownership of the entity, but these cases are handled automatically on the server).\n* \u003cspan pulumi-lang-nodejs=\"`links`\" pulumi-lang-dotnet=\"`Links`\" pulumi-lang-go=\"`links`\" pulumi-lang-python=\"`links`\" pulumi-lang-yaml=\"`links`\" pulumi-lang-java=\"`links`\"\u003e`links`\u003c/span\u003e: A HATEOAS style link for the response. Each link contains a user-friendly name identifying the link and an address for retrieving the particular resource.\n* \u003cspan pulumi-lang-nodejs=\"`extId`\" pulumi-lang-dotnet=\"`ExtId`\" pulumi-lang-go=\"`extId`\" pulumi-lang-python=\"`ext_id`\" pulumi-lang-yaml=\"`extId`\" pulumi-lang-java=\"`extId`\"\u003e`ext_id`\u003c/span\u003e: A globally unique identifier of an instance that is suitable for external consumption.\n* \u003cspan pulumi-lang-nodejs=\"`templateName`\" pulumi-lang-dotnet=\"`TemplateName`\" pulumi-lang-go=\"`templateName`\" pulumi-lang-python=\"`template_name`\" pulumi-lang-yaml=\"`templateName`\" pulumi-lang-java=\"`templateName`\"\u003e`template_name`\u003c/span\u003e: The user defined name of a Template.\n* \u003cspan pulumi-lang-nodejs=\"`templateDescription`\" pulumi-lang-dotnet=\"`TemplateDescription`\" pulumi-lang-go=\"`templateDescription`\" pulumi-lang-python=\"`template_description`\" pulumi-lang-yaml=\"`templateDescription`\" pulumi-lang-java=\"`templateDescription`\"\u003e`template_description`\u003c/span\u003e: The user defined description of a Template.\n* \u003cspan pulumi-lang-nodejs=\"`templateVersionSpec`\" pulumi-lang-dotnet=\"`TemplateVersionSpec`\" pulumi-lang-go=\"`templateVersionSpec`\" pulumi-lang-python=\"`template_version_spec`\" pulumi-lang-yaml=\"`templateVersionSpec`\" pulumi-lang-java=\"`templateVersionSpec`\"\u003e`template_version_spec`\u003c/span\u003e: A model that represents an object instance that is accessible through an API endpoint. Instances of this type get an extId field that contains the globally unique identifier for that instance\n* \u003cspan pulumi-lang-nodejs=\"`guestUpdateStatus`\" pulumi-lang-dotnet=\"`GuestUpdateStatus`\" pulumi-lang-go=\"`guestUpdateStatus`\" pulumi-lang-python=\"`guest_update_status`\" pulumi-lang-yaml=\"`guestUpdateStatus`\" pulumi-lang-java=\"`guestUpdateStatus`\"\u003e`guest_update_status`\u003c/span\u003e: Status of a Guest Update.\n* \u003cspan pulumi-lang-nodejs=\"`createTime`\" pulumi-lang-dotnet=\"`CreateTime`\" pulumi-lang-go=\"`createTime`\" pulumi-lang-python=\"`create_time`\" pulumi-lang-yaml=\"`createTime`\" pulumi-lang-java=\"`createTime`\"\u003e`create_time`\u003c/span\u003e: Time when the Template was created.\n* \u003cspan pulumi-lang-nodejs=\"`updateTime`\" pulumi-lang-dotnet=\"`UpdateTime`\" pulumi-lang-go=\"`updateTime`\" pulumi-lang-python=\"`update_time`\" pulumi-lang-yaml=\"`updateTime`\" pulumi-lang-java=\"`updateTime`\"\u003e`update_time`\u003c/span\u003e: Time when the Template was last updated.\n* \u003cspan pulumi-lang-nodejs=\"`createdBy`\" pulumi-lang-dotnet=\"`CreatedBy`\" pulumi-lang-go=\"`createdBy`\" pulumi-lang-python=\"`created_by`\" pulumi-lang-yaml=\"`createdBy`\" pulumi-lang-java=\"`createdBy`\"\u003e`created_by`\u003c/span\u003e: Information of the User.\n* \u003cspan pulumi-lang-nodejs=\"`updatedBy`\" pulumi-lang-dotnet=\"`UpdatedBy`\" pulumi-lang-go=\"`updatedBy`\" pulumi-lang-python=\"`updated_by`\" pulumi-lang-yaml=\"`updatedBy`\" pulumi-lang-java=\"`updatedBy`\"\u003e`updated_by`\u003c/span\u003e: Information of the User.\n\n\n### Links\nThe \u003cspan pulumi-lang-nodejs=\"`links`\" pulumi-lang-dotnet=\"`Links`\" pulumi-lang-go=\"`links`\" pulumi-lang-python=\"`links`\" pulumi-lang-yaml=\"`links`\" pulumi-lang-java=\"`links`\"\u003e`links`\u003c/span\u003e attribute supports the following:\n\n* \u003cspan pulumi-lang-nodejs=\"`href`\" pulumi-lang-dotnet=\"`Href`\" pulumi-lang-go=\"`href`\" pulumi-lang-python=\"`href`\" pulumi-lang-yaml=\"`href`\" pulumi-lang-java=\"`href`\"\u003e`href`\u003c/span\u003e: - The URL at which the entity described by the link can be accessed.\n* \u003cspan pulumi-lang-nodejs=\"`rel`\" pulumi-lang-dotnet=\"`Rel`\" pulumi-lang-go=\"`rel`\" pulumi-lang-python=\"`rel`\" pulumi-lang-yaml=\"`rel`\" pulumi-lang-java=\"`rel`\"\u003e`rel`\u003c/span\u003e: - A name that identifies the relationship of the link to the object that is returned by the URL. The unique value of \"self\" identifies the URL for the object.\n\n\n### Template Version Spec\nThe \u003cspan pulumi-lang-nodejs=\"`templateVersionSpec`\" pulumi-lang-dotnet=\"`TemplateVersionSpec`\" pulumi-lang-go=\"`templateVersionSpec`\" pulumi-lang-python=\"`template_version_spec`\" pulumi-lang-yaml=\"`templateVersionSpec`\" pulumi-lang-java=\"`templateVersionSpec`\"\u003e`template_version_spec`\u003c/span\u003e attribute supports the following:\n\n* \u003cspan pulumi-lang-nodejs=\"`extId`\" pulumi-lang-dotnet=\"`ExtId`\" pulumi-lang-go=\"`extId`\" pulumi-lang-python=\"`ext_id`\" pulumi-lang-yaml=\"`extId`\" pulumi-lang-java=\"`extId`\"\u003e`ext_id`\u003c/span\u003e: A globally unique identifier of an instance that is suitable for external consumption.\n* \u003cspan pulumi-lang-nodejs=\"`versionName`\" pulumi-lang-dotnet=\"`VersionName`\" pulumi-lang-go=\"`versionName`\" pulumi-lang-python=\"`version_name`\" pulumi-lang-yaml=\"`versionName`\" pulumi-lang-java=\"`versionName`\"\u003e`version_name`\u003c/span\u003e: The user defined name of a Template Version.\n* \u003cspan pulumi-lang-nodejs=\"`versionDescription`\" pulumi-lang-dotnet=\"`VersionDescription`\" pulumi-lang-go=\"`versionDescription`\" pulumi-lang-python=\"`version_description`\" pulumi-lang-yaml=\"`versionDescription`\" pulumi-lang-java=\"`versionDescription`\"\u003e`version_description`\u003c/span\u003e: The user defined description of a Template Version.\n* \u003cspan pulumi-lang-nodejs=\"`vmSpec`\" pulumi-lang-dotnet=\"`VmSpec`\" pulumi-lang-go=\"`vmSpec`\" pulumi-lang-python=\"`vm_spec`\" pulumi-lang-yaml=\"`vmSpec`\" pulumi-lang-java=\"`vmSpec`\"\u003e`vm_spec`\u003c/span\u003e: VM configuration.\n* \u003cspan pulumi-lang-nodejs=\"`createTime`\" pulumi-lang-dotnet=\"`CreateTime`\" pulumi-lang-go=\"`createTime`\" pulumi-lang-python=\"`create_time`\" pulumi-lang-yaml=\"`createTime`\" pulumi-lang-java=\"`createTime`\"\u003e`create_time`\u003c/span\u003e: Time when the Template was created.\n* \u003cspan pulumi-lang-nodejs=\"`createdBy`\" pulumi-lang-dotnet=\"`CreatedBy`\" pulumi-lang-go=\"`createdBy`\" pulumi-lang-python=\"`created_by`\" pulumi-lang-yaml=\"`createdBy`\" pulumi-lang-java=\"`createdBy`\"\u003e`created_by`\u003c/span\u003e: Information of the User.\n* \u003cspan pulumi-lang-nodejs=\"`isActiveVersion`\" pulumi-lang-dotnet=\"`IsActiveVersion`\" pulumi-lang-go=\"`isActiveVersion`\" pulumi-lang-python=\"`is_active_version`\" pulumi-lang-yaml=\"`isActiveVersion`\" pulumi-lang-java=\"`isActiveVersion`\"\u003e`is_active_version`\u003c/span\u003e: Specify whether to mark the Template Version as active or not. The newly created Version during Template Creation, Updating or Guest OS Updating is set to Active by default unless specified otherwise.\n* \u003cspan pulumi-lang-nodejs=\"`isGcOverrideEnabled`\" pulumi-lang-dotnet=\"`IsGcOverrideEnabled`\" pulumi-lang-go=\"`isGcOverrideEnabled`\" pulumi-lang-python=\"`is_gc_override_enabled`\" pulumi-lang-yaml=\"`isGcOverrideEnabled`\" pulumi-lang-java=\"`isGcOverrideEnabled`\"\u003e`is_gc_override_enabled`\u003c/span\u003e: Allow or disallow override of the Guest Customization during Template deployment.\n\n\n###\u003cspan pulumi-lang-nodejs=\" guestUpdateStatus\n\" pulumi-lang-dotnet=\" GuestUpdateStatus\n\" pulumi-lang-go=\" guestUpdateStatus\n\" pulumi-lang-python=\" guest_update_status\n\" pulumi-lang-yaml=\" guestUpdateStatus\n\" pulumi-lang-java=\" guestUpdateStatus\n\"\u003e guest_update_status\n\u003c/span\u003eStatus of a Guest Update.\n\n* \u003cspan pulumi-lang-nodejs=\"`deployedVmReference`\" pulumi-lang-dotnet=\"`DeployedVmReference`\" pulumi-lang-go=\"`deployedVmReference`\" pulumi-lang-python=\"`deployed_vm_reference`\" pulumi-lang-yaml=\"`deployedVmReference`\" pulumi-lang-java=\"`deployedVmReference`\"\u003e`deployed_vm_reference`\u003c/span\u003e: The identifier of the temporary VM created on initiating Guest OS Update.\n\n###\u003cspan pulumi-lang-nodejs=\" vmSpec\n\" pulumi-lang-dotnet=\" VmSpec\n\" pulumi-lang-go=\" vmSpec\n\" pulumi-lang-python=\" vm_spec\n\" pulumi-lang-yaml=\" vmSpec\n\" pulumi-lang-java=\" vmSpec\n\"\u003e vm_spec\n\u003c/span\u003e\n* \u003cspan pulumi-lang-nodejs=\"`name`\" pulumi-lang-dotnet=\"`Name`\" pulumi-lang-go=\"`name`\" pulumi-lang-python=\"`name`\" pulumi-lang-yaml=\"`name`\" pulumi-lang-java=\"`name`\"\u003e`name`\u003c/span\u003e: VM name.\n* \u003cspan pulumi-lang-nodejs=\"`description`\" pulumi-lang-dotnet=\"`Description`\" pulumi-lang-go=\"`description`\" pulumi-lang-python=\"`description`\" pulumi-lang-yaml=\"`description`\" pulumi-lang-java=\"`description`\"\u003e`description`\u003c/span\u003e: VM description\n* \u003cspan pulumi-lang-nodejs=\"`createTime`\" pulumi-lang-dotnet=\"`CreateTime`\" pulumi-lang-go=\"`createTime`\" pulumi-lang-python=\"`create_time`\" pulumi-lang-yaml=\"`createTime`\" pulumi-lang-java=\"`createTime`\"\u003e`create_time`\u003c/span\u003e: VM creation time\n* \u003cspan pulumi-lang-nodejs=\"`updateTime`\" pulumi-lang-dotnet=\"`UpdateTime`\" pulumi-lang-go=\"`updateTime`\" pulumi-lang-python=\"`update_time`\" pulumi-lang-yaml=\"`updateTime`\" pulumi-lang-java=\"`updateTime`\"\u003e`update_time`\u003c/span\u003e: VM last updated time.\n* \u003cspan pulumi-lang-nodejs=\"`source`\" pulumi-lang-dotnet=\"`Source`\" pulumi-lang-go=\"`source`\" pulumi-lang-python=\"`source`\" pulumi-lang-yaml=\"`source`\" pulumi-lang-java=\"`source`\"\u003e`source`\u003c/span\u003e: Reference to an entity that the VM should be cloned or created from\n* \u003cspan pulumi-lang-nodejs=\"`numSockets`\" pulumi-lang-dotnet=\"`NumSockets`\" pulumi-lang-go=\"`numSockets`\" pulumi-lang-python=\"`num_sockets`\" pulumi-lang-yaml=\"`numSockets`\" pulumi-lang-java=\"`numSockets`\"\u003e`num_sockets`\u003c/span\u003e: Number of vCPU sockets.\n* \u003cspan pulumi-lang-nodejs=\"`numCoresPerSocket`\" pulumi-lang-dotnet=\"`NumCoresPerSocket`\" pulumi-lang-go=\"`numCoresPerSocket`\" pulumi-lang-python=\"`num_cores_per_socket`\" pulumi-lang-yaml=\"`numCoresPerSocket`\" pulumi-lang-java=\"`numCoresPerSocket`\"\u003e`num_cores_per_socket`\u003c/span\u003e: Number of cores per socket.\n* \u003cspan pulumi-lang-nodejs=\"`numThreadsPerCore`\" pulumi-lang-dotnet=\"`NumThreadsPerCore`\" pulumi-lang-go=\"`numThreadsPerCore`\" pulumi-lang-python=\"`num_threads_per_core`\" pulumi-lang-yaml=\"`numThreadsPerCore`\" pulumi-lang-java=\"`numThreadsPerCore`\"\u003e`num_threads_per_core`\u003c/span\u003e: Number of threads per core\n* \u003cspan pulumi-lang-nodejs=\"`numNumaNodes`\" pulumi-lang-dotnet=\"`NumNumaNodes`\" pulumi-lang-go=\"`numNumaNodes`\" pulumi-lang-python=\"`num_numa_nodes`\" pulumi-lang-yaml=\"`numNumaNodes`\" pulumi-lang-java=\"`numNumaNodes`\"\u003e`num_numa_nodes`\u003c/span\u003e: Number of NUMA nodes. 0 means NUMA is disabled.\n* \u003cspan pulumi-lang-nodejs=\"`memorySizeBytes`\" pulumi-lang-dotnet=\"`MemorySizeBytes`\" pulumi-lang-go=\"`memorySizeBytes`\" pulumi-lang-python=\"`memory_size_bytes`\" pulumi-lang-yaml=\"`memorySizeBytes`\" pulumi-lang-java=\"`memorySizeBytes`\"\u003e`memory_size_bytes`\u003c/span\u003e: Memory size in bytes.\n* \u003cspan pulumi-lang-nodejs=\"`isVcpuHardPinningEnabled`\" pulumi-lang-dotnet=\"`IsVcpuHardPinningEnabled`\" pulumi-lang-go=\"`isVcpuHardPinningEnabled`\" pulumi-lang-python=\"`is_vcpu_hard_pinning_enabled`\" pulumi-lang-yaml=\"`isVcpuHardPinningEnabled`\" pulumi-lang-java=\"`isVcpuHardPinningEnabled`\"\u003e`is_vcpu_hard_pinning_enabled`\u003c/span\u003e: Indicates whether the vCPUs should be hard pinned to specific pCPUs or not.\n* \u003cspan pulumi-lang-nodejs=\"`isCpuPassthroughEnabled`\" pulumi-lang-dotnet=\"`IsCpuPassthroughEnabled`\" pulumi-lang-go=\"`isCpuPassthroughEnabled`\" pulumi-lang-python=\"`is_cpu_passthrough_enabled`\" pulumi-lang-yaml=\"`isCpuPassthroughEnabled`\" pulumi-lang-java=\"`isCpuPassthroughEnabled`\"\u003e`is_cpu_passthrough_enabled`\u003c/span\u003e: Indicates whether to passthrough the host CPU features to the guest or not. Enabling this will make VM incapable of live migration.\n* \u003cspan pulumi-lang-nodejs=\"`enabledCpuFeatures`\" pulumi-lang-dotnet=\"`EnabledCpuFeatures`\" pulumi-lang-go=\"`enabledCpuFeatures`\" pulumi-lang-python=\"`enabled_cpu_features`\" pulumi-lang-yaml=\"`enabledCpuFeatures`\" pulumi-lang-java=\"`enabledCpuFeatures`\"\u003e`enabled_cpu_features`\u003c/span\u003e: The list of additional CPU features to be enabled. HardwareVirtualization: Indicates whether hardware assisted virtualization should be enabled for the Guest OS or not. Once enabled, the Guest OS can deploy a nested hypervisor\n* \u003cspan pulumi-lang-nodejs=\"`isMemoryOvercommitEnabled`\" pulumi-lang-dotnet=\"`IsMemoryOvercommitEnabled`\" pulumi-lang-go=\"`isMemoryOvercommitEnabled`\" pulumi-lang-python=\"`is_memory_overcommit_enabled`\" pulumi-lang-yaml=\"`isMemoryOvercommitEnabled`\" pulumi-lang-java=\"`isMemoryOvercommitEnabled`\"\u003e`is_memory_overcommit_enabled`\u003c/span\u003e: Indicates whether the memory overcommit feature should be enabled for the VM or not. If enabled, parts of the VM memory may reside outside of the hypervisor physical memory. Once enabled, it should be expected that the VM may suffer performance degradation.\n* \u003cspan pulumi-lang-nodejs=\"`isGpuConsoleEnabled`\" pulumi-lang-dotnet=\"`IsGpuConsoleEnabled`\" pulumi-lang-go=\"`isGpuConsoleEnabled`\" pulumi-lang-python=\"`is_gpu_console_enabled`\" pulumi-lang-yaml=\"`isGpuConsoleEnabled`\" pulumi-lang-java=\"`isGpuConsoleEnabled`\"\u003e`is_gpu_console_enabled`\u003c/span\u003e: Indicates whether the vGPU console is enabled or not.\n* \u003cspan pulumi-lang-nodejs=\"`generationUuid`\" pulumi-lang-dotnet=\"`GenerationUuid`\" pulumi-lang-go=\"`generationUuid`\" pulumi-lang-python=\"`generation_uuid`\" pulumi-lang-yaml=\"`generationUuid`\" pulumi-lang-java=\"`generationUuid`\"\u003e`generation_uuid`\u003c/span\u003e: Generation UUID of the VM. It should be of type UUID.\n* \u003cspan pulumi-lang-nodejs=\"`biosUuid`\" pulumi-lang-dotnet=\"`BiosUuid`\" pulumi-lang-go=\"`biosUuid`\" pulumi-lang-python=\"`bios_uuid`\" pulumi-lang-yaml=\"`biosUuid`\" pulumi-lang-java=\"`biosUuid`\"\u003e`bios_uuid`\u003c/span\u003e: BIOS UUID of the VM. It should be of type UUID.\n* \u003cspan pulumi-lang-nodejs=\"`categories`\" pulumi-lang-dotnet=\"`Categories`\" pulumi-lang-go=\"`categories`\" pulumi-lang-python=\"`categories`\" pulumi-lang-yaml=\"`categories`\" pulumi-lang-java=\"`categories`\"\u003e`categories`\u003c/span\u003e: Categories for the VM.\n* \u003cspan pulumi-lang-nodejs=\"`ownershipInfo`\" pulumi-lang-dotnet=\"`OwnershipInfo`\" pulumi-lang-go=\"`ownershipInfo`\" pulumi-lang-python=\"`ownership_info`\" pulumi-lang-yaml=\"`ownershipInfo`\" pulumi-lang-java=\"`ownershipInfo`\"\u003e`ownership_info`\u003c/span\u003e: Ownership information for the VM.\n* \u003cspan pulumi-lang-nodejs=\"`host`\" pulumi-lang-dotnet=\"`Host`\" pulumi-lang-go=\"`host`\" pulumi-lang-python=\"`host`\" pulumi-lang-yaml=\"`host`\" pulumi-lang-java=\"`host`\"\u003e`host`\u003c/span\u003e: Reference to the host, the VM is running on.\n* \u003cspan pulumi-lang-nodejs=\"`cluster`\" pulumi-lang-dotnet=\"`Cluster`\" pulumi-lang-go=\"`cluster`\" pulumi-lang-python=\"`cluster`\" pulumi-lang-yaml=\"`cluster`\" pulumi-lang-java=\"`cluster`\"\u003e`cluster`\u003c/span\u003e: Reference to a cluster.\n* \u003cspan pulumi-lang-nodejs=\"`guestCustomization`\" pulumi-lang-dotnet=\"`GuestCustomization`\" pulumi-lang-go=\"`guestCustomization`\" pulumi-lang-python=\"`guest_customization`\" pulumi-lang-yaml=\"`guestCustomization`\" pulumi-lang-java=\"`guestCustomization`\"\u003e`guest_customization`\u003c/span\u003e: Stage a Sysprep or cloud-init configuration file to be used by the guest for the next boot. Note that the Sysprep command must be used to generalize the Windows VMs before triggering this API call.\n* \u003cspan pulumi-lang-nodejs=\"`guestTools`\" pulumi-lang-dotnet=\"`GuestTools`\" pulumi-lang-go=\"`guestTools`\" pulumi-lang-python=\"`guest_tools`\" pulumi-lang-yaml=\"`guestTools`\" pulumi-lang-java=\"`guestTools`\"\u003e`guest_tools`\u003c/span\u003e: The details about Nutanix Guest Tools for a VM.\n* \u003cspan pulumi-lang-nodejs=\"`hardwareClockTimezone`\" pulumi-lang-dotnet=\"`HardwareClockTimezone`\" pulumi-lang-go=\"`hardwareClockTimezone`\" pulumi-lang-python=\"`hardware_clock_timezone`\" pulumi-lang-yaml=\"`hardwareClockTimezone`\" pulumi-lang-java=\"`hardwareClockTimezone`\"\u003e`hardware_clock_timezone`\u003c/span\u003e: VM hardware clock timezone in IANA TZDB format (America/Los_Angeles).\n* \u003cspan pulumi-lang-nodejs=\"`isBrandingEnabled`\" pulumi-lang-dotnet=\"`IsBrandingEnabled`\" pulumi-lang-go=\"`isBrandingEnabled`\" pulumi-lang-python=\"`is_branding_enabled`\" pulumi-lang-yaml=\"`isBrandingEnabled`\" pulumi-lang-java=\"`isBrandingEnabled`\"\u003e`is_branding_enabled`\u003c/span\u003e: Indicates whether to remove AHV branding from VM firmware tables or not.\n* \u003cspan pulumi-lang-nodejs=\"`bootConfig`\" pulumi-lang-dotnet=\"`BootConfig`\" pulumi-lang-go=\"`bootConfig`\" pulumi-lang-python=\"`boot_config`\" pulumi-lang-yaml=\"`bootConfig`\" pulumi-lang-java=\"`bootConfig`\"\u003e`boot_config`\u003c/span\u003e: Indicates the order of device types in which the VM should try to boot from. If the boot device order is not provided the system will decide an appropriate boot device order.\n* \u003cspan pulumi-lang-nodejs=\"`isVgaConsoleEnabled`\" pulumi-lang-dotnet=\"`IsVgaConsoleEnabled`\" pulumi-lang-go=\"`isVgaConsoleEnabled`\" pulumi-lang-python=\"`is_vga_console_enabled`\" pulumi-lang-yaml=\"`isVgaConsoleEnabled`\" pulumi-lang-java=\"`isVgaConsoleEnabled`\"\u003e`is_vga_console_enabled`\u003c/span\u003e: Indicates whether the VGA console should be disabled or not.\n* \u003cspan pulumi-lang-nodejs=\"`machineType`\" pulumi-lang-dotnet=\"`MachineType`\" pulumi-lang-go=\"`machineType`\" pulumi-lang-python=\"`machine_type`\" pulumi-lang-yaml=\"`machineType`\" pulumi-lang-java=\"`machineType`\"\u003e`machine_type`\u003c/span\u003e: Machine type for the VM. Machine type Q35 is required for secure boot and does not support IDE disks.\n* \u003cspan pulumi-lang-nodejs=\"`vtpmConfig`\" pulumi-lang-dotnet=\"`VtpmConfig`\" pulumi-lang-go=\"`vtpmConfig`\" pulumi-lang-python=\"`vtpm_config`\" pulumi-lang-yaml=\"`vtpmConfig`\" pulumi-lang-java=\"`vtpmConfig`\"\u003e`vtpm_config`\u003c/span\u003e: Indicates how the vTPM for the VM should be configured.\n* \u003cspan pulumi-lang-nodejs=\"`isAgentVm`\" pulumi-lang-dotnet=\"`IsAgentVm`\" pulumi-lang-go=\"`isAgentVm`\" pulumi-lang-python=\"`is_agent_vm`\" pulumi-lang-yaml=\"`isAgentVm`\" pulumi-lang-java=\"`isAgentVm`\"\u003e`is_agent_vm`\u003c/span\u003e: Indicates whether the VM is an agent VM or not. When their host enters maintenance mode, once the normal VMs are evacuated, the agent VMs are powered off. When the host is restored, agent VMs are powered on before the normal VMs are restored. In other words, agent VMs cannot be HA-protected or live migrated.\n* \u003cspan pulumi-lang-nodejs=\"`apcConfig`\" pulumi-lang-dotnet=\"`ApcConfig`\" pulumi-lang-go=\"`apcConfig`\" pulumi-lang-python=\"`apc_config`\" pulumi-lang-yaml=\"`apcConfig`\" pulumi-lang-java=\"`apcConfig`\"\u003e`apc_config`\u003c/span\u003e: Advanced Processor Compatibility configuration for the VM. Enabling this retains the CPU model for the VM across power cycles and migrations.\n* \u003cspan pulumi-lang-nodejs=\"`storageConfig`\" pulumi-lang-dotnet=\"`StorageConfig`\" pulumi-lang-go=\"`storageConfig`\" pulumi-lang-python=\"`storage_config`\" pulumi-lang-yaml=\"`storageConfig`\" pulumi-lang-java=\"`storageConfig`\"\u003e`storage_config`\u003c/span\u003e: Storage configuration for VM.\n* \u003cspan pulumi-lang-nodejs=\"`disks`\" pulumi-lang-dotnet=\"`Disks`\" pulumi-lang-go=\"`disks`\" pulumi-lang-python=\"`disks`\" pulumi-lang-yaml=\"`disks`\" pulumi-lang-java=\"`disks`\"\u003e`disks`\u003c/span\u003e: Disks attached to the VM.\n* \u003cspan pulumi-lang-nodejs=\"`cdRoms`\" pulumi-lang-dotnet=\"`CdRoms`\" pulumi-lang-go=\"`cdRoms`\" pulumi-lang-python=\"`cd_roms`\" pulumi-lang-yaml=\"`cdRoms`\" pulumi-lang-java=\"`cdRoms`\"\u003e`cd_roms`\u003c/span\u003e: CD-ROMs attached to the VM.\n* \u003cspan pulumi-lang-nodejs=\"`nics`\" pulumi-lang-dotnet=\"`Nics`\" pulumi-lang-go=\"`nics`\" pulumi-lang-python=\"`nics`\" pulumi-lang-yaml=\"`nics`\" pulumi-lang-java=\"`nics`\"\u003e`nics`\u003c/span\u003e: NICs attached to the VM.\n* \u003cspan pulumi-lang-nodejs=\"`gpus`\" pulumi-lang-dotnet=\"`Gpus`\" pulumi-lang-go=\"`gpus`\" pulumi-lang-python=\"`gpus`\" pulumi-lang-yaml=\"`gpus`\" pulumi-lang-java=\"`gpus`\"\u003e`gpus`\u003c/span\u003e: GPUs attached to the VM.\n* \u003cspan pulumi-lang-nodejs=\"`serialPorts`\" pulumi-lang-dotnet=\"`SerialPorts`\" pulumi-lang-go=\"`serialPorts`\" pulumi-lang-python=\"`serial_ports`\" pulumi-lang-yaml=\"`serialPorts`\" pulumi-lang-java=\"`serialPorts`\"\u003e`serial_ports`\u003c/span\u003e: Serial ports configured on the VM.\n* \u003cspan pulumi-lang-nodejs=\"`protectionType`\" pulumi-lang-dotnet=\"`ProtectionType`\" pulumi-lang-go=\"`protectionType`\" pulumi-lang-python=\"`protection_type`\" pulumi-lang-yaml=\"`protectionType`\" pulumi-lang-java=\"`protectionType`\"\u003e`protection_type`\u003c/span\u003e: The type of protection applied on a VM. PD_PROTECTED indicates a VM is protected using the Prism Element. RULE_PROTECTED indicates a VM protection using the Prism Central.\n* \u003cspan pulumi-lang-nodejs=\"`protectionPolicyState`\" pulumi-lang-dotnet=\"`ProtectionPolicyState`\" pulumi-lang-go=\"`protectionPolicyState`\" pulumi-lang-python=\"`protection_policy_state`\" pulumi-lang-yaml=\"`protectionPolicyState`\" pulumi-lang-java=\"`protectionPolicyState`\"\u003e`protection_policy_state`\u003c/span\u003e: Status of protection policy applied to this VM.\n\n\n### Source\n\nThe \u003cspan pulumi-lang-nodejs=\"`source`\" pulumi-lang-dotnet=\"`Source`\" pulumi-lang-go=\"`source`\" pulumi-lang-python=\"`source`\" pulumi-lang-yaml=\"`source`\" pulumi-lang-java=\"`source`\"\u003e`source`\u003c/span\u003e attribute supports the following:\n\n* \u003cspan pulumi-lang-nodejs=\"`entityType`\" pulumi-lang-dotnet=\"`EntityType`\" pulumi-lang-go=\"`entityType`\" pulumi-lang-python=\"`entity_type`\" pulumi-lang-yaml=\"`entityType`\" pulumi-lang-java=\"`entityType`\"\u003e`entity_type`\u003c/span\u003e: Reference to an entity from which the VM should be cloned or created. Values are:\n  - VM_RECOVERY_POINT: Reference to the recovery point entity from which the VM should be cloned or created.\n  - VM: Reference to an entity from which the VM should be cloned or created.\n* \u003cspan pulumi-lang-nodejs=\"`extId`\" pulumi-lang-dotnet=\"`ExtId`\" pulumi-lang-go=\"`extId`\" pulumi-lang-python=\"`ext_id`\" pulumi-lang-yaml=\"`extId`\" pulumi-lang-java=\"`extId`\"\u003e`ext_id`\u003c/span\u003e: A globally unique identifier of a VM of type UUID.\n\n### Categories\nThe \u003cspan pulumi-lang-nodejs=\"`categories`\" pulumi-lang-dotnet=\"`Categories`\" pulumi-lang-go=\"`categories`\" pulumi-lang-python=\"`categories`\" pulumi-lang-yaml=\"`categories`\" pulumi-lang-java=\"`categories`\"\u003e`categories`\u003c/span\u003e attribute supports the following:\n\n* \u003cspan pulumi-lang-nodejs=\"`extId`\" pulumi-lang-dotnet=\"`ExtId`\" pulumi-lang-go=\"`extId`\" pulumi-lang-python=\"`ext_id`\" pulumi-lang-yaml=\"`extId`\" pulumi-lang-java=\"`extId`\"\u003e`ext_id`\u003c/span\u003e: A globally unique identifier of a VM category of type UUID.\n\n### Ownership Info\nThe \u003cspan pulumi-lang-nodejs=\"`ownershipInfo`\" pulumi-lang-dotnet=\"`OwnershipInfo`\" pulumi-lang-go=\"`ownershipInfo`\" pulumi-lang-python=\"`ownership_info`\" pulumi-lang-yaml=\"`ownershipInfo`\" pulumi-lang-java=\"`ownershipInfo`\"\u003e`ownership_info`\u003c/span\u003e attribute supports the following:\n\n* \u003cspan pulumi-lang-nodejs=\"`owner`\" pulumi-lang-dotnet=\"`Owner`\" pulumi-lang-go=\"`owner`\" pulumi-lang-python=\"`owner`\" pulumi-lang-yaml=\"`owner`\" pulumi-lang-java=\"`owner`\"\u003e`owner`\u003c/span\u003e: Reference to the owner.\n* `owner.ext_id`: A globally unique identifier of a VM owner type UUID.\n\n### Host\nThe \u003cspan pulumi-lang-nodejs=\"`host`\" pulumi-lang-dotnet=\"`Host`\" pulumi-lang-go=\"`host`\" pulumi-lang-python=\"`host`\" pulumi-lang-yaml=\"`host`\" pulumi-lang-java=\"`host`\"\u003e`host`\u003c/span\u003e attribute supports the following:\n\n* \u003cspan pulumi-lang-nodejs=\"`extId`\" pulumi-lang-dotnet=\"`ExtId`\" pulumi-lang-go=\"`extId`\" pulumi-lang-python=\"`ext_id`\" pulumi-lang-yaml=\"`extId`\" pulumi-lang-java=\"`extId`\"\u003e`ext_id`\u003c/span\u003e: A globally unique identifier of a host of type UUID.\n\n### Cluster\nThe \u003cspan pulumi-lang-nodejs=\"`cluster`\" pulumi-lang-dotnet=\"`Cluster`\" pulumi-lang-go=\"`cluster`\" pulumi-lang-python=\"`cluster`\" pulumi-lang-yaml=\"`cluster`\" pulumi-lang-java=\"`cluster`\"\u003e`cluster`\u003c/span\u003e attribute supports the following:\n\n* \u003cspan pulumi-lang-nodejs=\"`extId`\" pulumi-lang-dotnet=\"`ExtId`\" pulumi-lang-go=\"`extId`\" pulumi-lang-python=\"`ext_id`\" pulumi-lang-yaml=\"`extId`\" pulumi-lang-java=\"`extId`\"\u003e`ext_id`\u003c/span\u003e: The globally unique identifier of a cluster type UUID.\n\n### Availability Zone\nThe \u003cspan pulumi-lang-nodejs=\"`availabilityZone`\" pulumi-lang-dotnet=\"`AvailabilityZone`\" pulumi-lang-go=\"`availabilityZone`\" pulumi-lang-python=\"`availability_zone`\" pulumi-lang-yaml=\"`availabilityZone`\" pulumi-lang-java=\"`availabilityZone`\"\u003e`availability_zone`\u003c/span\u003e attribute supports the following:\n\n* \u003cspan pulumi-lang-nodejs=\"`extId`\" pulumi-lang-dotnet=\"`ExtId`\" pulumi-lang-go=\"`extId`\" pulumi-lang-python=\"`ext_id`\" pulumi-lang-yaml=\"`extId`\" pulumi-lang-java=\"`extId`\"\u003e`ext_id`\u003c/span\u003e: The globally unique identifier of an availability zone type UUID.\n\n### Guest Customization\nThe \u003cspan pulumi-lang-nodejs=\"`guestCustomization`\" pulumi-lang-dotnet=\"`GuestCustomization`\" pulumi-lang-go=\"`guestCustomization`\" pulumi-lang-python=\"`guest_customization`\" pulumi-lang-yaml=\"`guestCustomization`\" pulumi-lang-java=\"`guestCustomization`\"\u003e`guest_customization`\u003c/span\u003e attribute supports the following:\n\n* \u003cspan pulumi-lang-nodejs=\"`config`\" pulumi-lang-dotnet=\"`Config`\" pulumi-lang-go=\"`config`\" pulumi-lang-python=\"`config`\" pulumi-lang-yaml=\"`config`\" pulumi-lang-java=\"`config`\"\u003e`config`\u003c/span\u003e: The Nutanix Guest Tools customization settings.\n\n* `config.sysprep`: Sysprep config\n* `config.cloud_init`: CloudInit Config\n\n\n\n#### config.sysprep\n* \u003cspan pulumi-lang-nodejs=\"`installType`\" pulumi-lang-dotnet=\"`InstallType`\" pulumi-lang-go=\"`installType`\" pulumi-lang-python=\"`install_type`\" pulumi-lang-yaml=\"`installType`\" pulumi-lang-java=\"`installType`\"\u003e`install_type`\u003c/span\u003e: Indicates whether the guest will be freshly installed using this unattend configuration, or this unattend configuration will be applied to a pre-prepared image. Default is 'PREPARED'.\n* \u003cspan pulumi-lang-nodejs=\"`sysprepScript`\" pulumi-lang-dotnet=\"`SysprepScript`\" pulumi-lang-go=\"`sysprepScript`\" pulumi-lang-python=\"`sysprep_script`\" pulumi-lang-yaml=\"`sysprepScript`\" pulumi-lang-java=\"`sysprepScript`\"\u003e`sysprep_script`\u003c/span\u003e: Object either UnattendXml or CustomKeyValues\n* `sysprep_script.unattend_xml`: xml object\n* `sysprep_script.custom_key_values`: The list of the individual KeyValuePair elements.\n\n\n#### config.cloud_init\n* \u003cspan pulumi-lang-nodejs=\"`datasourceType`\" pulumi-lang-dotnet=\"`DatasourceType`\" pulumi-lang-go=\"`datasourceType`\" pulumi-lang-python=\"`datasource_type`\" pulumi-lang-yaml=\"`datasourceType`\" pulumi-lang-java=\"`datasourceType`\"\u003e`datasource_type`\u003c/span\u003e: Type of datasource. Default: CONFIG_DRIVE_V2\n* \u003cspan pulumi-lang-nodejs=\"`metadata`\" pulumi-lang-dotnet=\"`Metadata`\" pulumi-lang-go=\"`metadata`\" pulumi-lang-python=\"`metadata`\" pulumi-lang-yaml=\"`metadata`\" pulumi-lang-java=\"`metadata`\"\u003e`metadata`\u003c/span\u003e: The contents of the\u003cspan pulumi-lang-nodejs=\" metaData \" pulumi-lang-dotnet=\" MetaData \" pulumi-lang-go=\" metaData \" pulumi-lang-python=\" meta_data \" pulumi-lang-yaml=\" metaData \" pulumi-lang-java=\" metaData \"\u003e meta_data \u003c/span\u003econfiguration for cloud-init. This can be formatted as YAML or JSON. The value must be base64 encoded.\n* \u003cspan pulumi-lang-nodejs=\"`cloudInitScript`\" pulumi-lang-dotnet=\"`CloudInitScript`\" pulumi-lang-go=\"`cloudInitScript`\" pulumi-lang-python=\"`cloud_init_script`\" pulumi-lang-yaml=\"`cloudInitScript`\" pulumi-lang-java=\"`cloudInitScript`\"\u003e`cloud_init_script`\u003c/span\u003e: The script to use for cloud-init.\n* `cloud_init_script.user_data`: user data object\n* `cloud_init_script.custom_keys`: The list of the individual KeyValuePair elements.\n\n\n### Guest Tools\nThe \u003cspan pulumi-lang-nodejs=\"`guestTools`\" pulumi-lang-dotnet=\"`GuestTools`\" pulumi-lang-go=\"`guestTools`\" pulumi-lang-python=\"`guest_tools`\" pulumi-lang-yaml=\"`guestTools`\" pulumi-lang-java=\"`guestTools`\"\u003e`guest_tools`\u003c/span\u003e attribute supports the following:\n\n* \u003cspan pulumi-lang-nodejs=\"`version`\" pulumi-lang-dotnet=\"`Version`\" pulumi-lang-go=\"`version`\" pulumi-lang-python=\"`version`\" pulumi-lang-yaml=\"`version`\" pulumi-lang-java=\"`version`\"\u003e`version`\u003c/span\u003e: Version of Nutanix Guest Tools installed on the VM.\n* \u003cspan pulumi-lang-nodejs=\"`isInstalled`\" pulumi-lang-dotnet=\"`IsInstalled`\" pulumi-lang-go=\"`isInstalled`\" pulumi-lang-python=\"`is_installed`\" pulumi-lang-yaml=\"`isInstalled`\" pulumi-lang-java=\"`isInstalled`\"\u003e`is_installed`\u003c/span\u003e: Indicates whether Nutanix Guest Tools is installed on the VM or not.\n* \u003cspan pulumi-lang-nodejs=\"`isIsoInserted`\" pulumi-lang-dotnet=\"`IsIsoInserted`\" pulumi-lang-go=\"`isIsoInserted`\" pulumi-lang-python=\"`is_iso_inserted`\" pulumi-lang-yaml=\"`isIsoInserted`\" pulumi-lang-java=\"`isIsoInserted`\"\u003e`is_iso_inserted`\u003c/span\u003e: Indicates whether Nutanix Guest Tools ISO is inserted or not.\n* \u003cspan pulumi-lang-nodejs=\"`availableVersion`\" pulumi-lang-dotnet=\"`AvailableVersion`\" pulumi-lang-go=\"`availableVersion`\" pulumi-lang-python=\"`available_version`\" pulumi-lang-yaml=\"`availableVersion`\" pulumi-lang-java=\"`availableVersion`\"\u003e`available_version`\u003c/span\u003e: Version of Nutanix Guest Tools available on the cluster.\n* \u003cspan pulumi-lang-nodejs=\"`guestOsVersion`\" pulumi-lang-dotnet=\"`GuestOsVersion`\" pulumi-lang-go=\"`guestOsVersion`\" pulumi-lang-python=\"`guest_os_version`\" pulumi-lang-yaml=\"`guestOsVersion`\" pulumi-lang-java=\"`guestOsVersion`\"\u003e`guest_os_version`\u003c/span\u003e: Version of the operating system on the VM\n* \u003cspan pulumi-lang-nodejs=\"`isReachable`\" pulumi-lang-dotnet=\"`IsReachable`\" pulumi-lang-go=\"`isReachable`\" pulumi-lang-python=\"`is_reachable`\" pulumi-lang-yaml=\"`isReachable`\" pulumi-lang-java=\"`isReachable`\"\u003e`is_reachable`\u003c/span\u003e: Indicates whether the communication from VM to CVM is active or not.\n* \u003cspan pulumi-lang-nodejs=\"`isVssSnapshotCapable`\" pulumi-lang-dotnet=\"`IsVssSnapshotCapable`\" pulumi-lang-go=\"`isVssSnapshotCapable`\" pulumi-lang-python=\"`is_vss_snapshot_capable`\" pulumi-lang-yaml=\"`isVssSnapshotCapable`\" pulumi-lang-java=\"`isVssSnapshotCapable`\"\u003e`is_vss_snapshot_capable`\u003c/span\u003e: Indicates whether the VM is configured to take VSS snapshots through NGT or not.\n* \u003cspan pulumi-lang-nodejs=\"`isVmMobilityDriversInstalled`\" pulumi-lang-dotnet=\"`IsVmMobilityDriversInstalled`\" pulumi-lang-go=\"`isVmMobilityDriversInstalled`\" pulumi-lang-python=\"`is_vm_mobility_drivers_installed`\" pulumi-lang-yaml=\"`isVmMobilityDriversInstalled`\" pulumi-lang-java=\"`isVmMobilityDriversInstalled`\"\u003e`is_vm_mobility_drivers_installed`\u003c/span\u003e: Indicates whether the VM mobility drivers are installed on the VM or not.\n* \u003cspan pulumi-lang-nodejs=\"`isEnabled`\" pulumi-lang-dotnet=\"`IsEnabled`\" pulumi-lang-go=\"`isEnabled`\" pulumi-lang-python=\"`is_enabled`\" pulumi-lang-yaml=\"`isEnabled`\" pulumi-lang-java=\"`isEnabled`\"\u003e`is_enabled`\u003c/span\u003e: Indicates whether Nutanix Guest Tools is enabled or not.\n* \u003cspan pulumi-lang-nodejs=\"`capabilities`\" pulumi-lang-dotnet=\"`Capabilities`\" pulumi-lang-go=\"`capabilities`\" pulumi-lang-python=\"`capabilities`\" pulumi-lang-yaml=\"`capabilities`\" pulumi-lang-java=\"`capabilities`\"\u003e`capabilities`\u003c/span\u003e: The list of the application names that are enabled on the guest VM.\n\n### Boot Config\nThe \u003cspan pulumi-lang-nodejs=\"`bootConfig`\" pulumi-lang-dotnet=\"`BootConfig`\" pulumi-lang-go=\"`bootConfig`\" pulumi-lang-python=\"`boot_config`\" pulumi-lang-yaml=\"`bootConfig`\" pulumi-lang-java=\"`bootConfig`\"\u003e`boot_config`\u003c/span\u003e attribute supports the following:\n\n* \u003cspan pulumi-lang-nodejs=\"`legacyBoot`\" pulumi-lang-dotnet=\"`LegacyBoot`\" pulumi-lang-go=\"`legacyBoot`\" pulumi-lang-python=\"`legacy_boot`\" pulumi-lang-yaml=\"`legacyBoot`\" pulumi-lang-java=\"`legacyBoot`\"\u003e`legacy_boot`\u003c/span\u003e: LegacyBoot config Object\n* \u003cspan pulumi-lang-nodejs=\"`uefiBoot`\" pulumi-lang-dotnet=\"`UefiBoot`\" pulumi-lang-go=\"`uefiBoot`\" pulumi-lang-python=\"`uefi_boot`\" pulumi-lang-yaml=\"`uefiBoot`\" pulumi-lang-java=\"`uefiBoot`\"\u003e`uefi_boot`\u003c/span\u003e: UefiBoot config Object\n\n#### boot_config.legacy_boot\n* \u003cspan pulumi-lang-nodejs=\"`bootDevice`\" pulumi-lang-dotnet=\"`BootDevice`\" pulumi-lang-go=\"`bootDevice`\" pulumi-lang-python=\"`boot_device`\" pulumi-lang-yaml=\"`bootDevice`\" pulumi-lang-java=\"`bootDevice`\"\u003e`boot_device`\u003c/span\u003e: Boot Device object\n* `boot_device.boot_device_disk`: Disk address.\n* `boot_device.boot_device_disk.disk_address.bus_type`: Bus type for the device\n* `boot_device.boot_device_disk.disk_address.index`: Device index on the bus. This field is ignored unless the bus details are specified.\n\n* `boot_device.boot_device_nic`: Disk Nic address.\n* `boot_device.boot_device_nic.mac_address`: mac address\n\n* \u003cspan pulumi-lang-nodejs=\"`bootOrder`\" pulumi-lang-dotnet=\"`BootOrder`\" pulumi-lang-go=\"`bootOrder`\" pulumi-lang-python=\"`boot_order`\" pulumi-lang-yaml=\"`bootOrder`\" pulumi-lang-java=\"`bootOrder`\"\u003e`boot_order`\u003c/span\u003e: Indicates the order of device types in which the VM should try to boot from. If the boot device order is not provided the system will decide an appropriate boot device order.\n\n\n#### boot_config.uefi_boot\n* \u003cspan pulumi-lang-nodejs=\"`isSecureBootEnabled`\" pulumi-lang-dotnet=\"`IsSecureBootEnabled`\" pulumi-lang-go=\"`isSecureBootEnabled`\" pulumi-lang-python=\"`is_secure_boot_enabled`\" pulumi-lang-yaml=\"`isSecureBootEnabled`\" pulumi-lang-java=\"`isSecureBootEnabled`\"\u003e`is_secure_boot_enabled`\u003c/span\u003e: Indicate whether to enable secure boot or not\n* \u003cspan pulumi-lang-nodejs=\"`nvramDevice`\" pulumi-lang-dotnet=\"`NvramDevice`\" pulumi-lang-go=\"`nvramDevice`\" pulumi-lang-python=\"`nvram_device`\" pulumi-lang-yaml=\"`nvramDevice`\" pulumi-lang-java=\"`nvramDevice`\"\u003e`nvram_device`\u003c/span\u003e: Configuration for NVRAM to be presented to the VM.\n* `nvram_device.backing_storage_info`: Storage provided by Nutanix ADSF\n\n##### nvram_device.backing_storage_info\n* \u003cspan pulumi-lang-nodejs=\"`diskExtId`\" pulumi-lang-dotnet=\"`DiskExtId`\" pulumi-lang-go=\"`diskExtId`\" pulumi-lang-python=\"`disk_ext_id`\" pulumi-lang-yaml=\"`diskExtId`\" pulumi-lang-java=\"`diskExtId`\"\u003e`disk_ext_id`\u003c/span\u003e: The globally unique identifier of a VM disk. It should be of type UUID.\n* \u003cspan pulumi-lang-nodejs=\"`diskSizeBytes`\" pulumi-lang-dotnet=\"`DiskSizeBytes`\" pulumi-lang-go=\"`diskSizeBytes`\" pulumi-lang-python=\"`disk_size_bytes`\" pulumi-lang-yaml=\"`diskSizeBytes`\" pulumi-lang-java=\"`diskSizeBytes`\"\u003e`disk_size_bytes`\u003c/span\u003e: Size of the disk in Bytes\n* \u003cspan pulumi-lang-nodejs=\"`storageContainer`\" pulumi-lang-dotnet=\"`StorageContainer`\" pulumi-lang-go=\"`storageContainer`\" pulumi-lang-python=\"`storage_container`\" pulumi-lang-yaml=\"`storageContainer`\" pulumi-lang-java=\"`storageContainer`\"\u003e`storage_container`\u003c/span\u003e: This reference is for disk level storage container preference. This preference specifies the storage container to which this disk belongs.\n* \u003cspan pulumi-lang-nodejs=\"`storageConfig`\" pulumi-lang-dotnet=\"`StorageConfig`\" pulumi-lang-go=\"`storageConfig`\" pulumi-lang-python=\"`storage_config`\" pulumi-lang-yaml=\"`storageConfig`\" pulumi-lang-java=\"`storageConfig`\"\u003e`storage_config`\u003c/span\u003e: Storage configuration for VM disks\n* `storage_config.is_flash_mode_enabled`: Indicates whether the virtual disk is pinned to the hot tier or not.\n* \u003cspan pulumi-lang-nodejs=\"`dataSource`\" pulumi-lang-dotnet=\"`DataSource`\" pulumi-lang-go=\"`dataSource`\" pulumi-lang-python=\"`data_source`\" pulumi-lang-yaml=\"`dataSource`\" pulumi-lang-java=\"`dataSource`\"\u003e`data_source`\u003c/span\u003e: A reference to a disk or image that contains the contents of a disk.\n* \u003cspan pulumi-lang-nodejs=\"`isMigrationInProgress`\" pulumi-lang-dotnet=\"`IsMigrationInProgress`\" pulumi-lang-go=\"`isMigrationInProgress`\" pulumi-lang-python=\"`is_migration_in_progress`\" pulumi-lang-yaml=\"`isMigrationInProgress`\" pulumi-lang-java=\"`isMigrationInProgress`\"\u003e`is_migration_in_progress`\u003c/span\u003e: Indicates if the disk is undergoing migration to another container.\n\n### VTPM Config\nThe \u003cspan pulumi-lang-nodejs=\"`vtpmConfig`\" pulumi-lang-dotnet=\"`VtpmConfig`\" pulumi-lang-go=\"`vtpmConfig`\" pulumi-lang-python=\"`vtpm_config`\" pulumi-lang-yaml=\"`vtpmConfig`\" pulumi-lang-java=\"`vtpmConfig`\"\u003e`vtpm_config`\u003c/span\u003e attribute supports the following:\n\n* \u003cspan pulumi-lang-nodejs=\"`isVtpmEnabled`\" pulumi-lang-dotnet=\"`IsVtpmEnabled`\" pulumi-lang-go=\"`isVtpmEnabled`\" pulumi-lang-python=\"`is_vtpm_enabled`\" pulumi-lang-yaml=\"`isVtpmEnabled`\" pulumi-lang-java=\"`isVtpmEnabled`\"\u003e`is_vtpm_enabled`\u003c/span\u003e: Indicates whether the virtual trusted platform module is enabled for the Guest OS or not.\n* \u003cspan pulumi-lang-nodejs=\"`version`\" pulumi-lang-dotnet=\"`Version`\" pulumi-lang-go=\"`version`\" pulumi-lang-python=\"`version`\" pulumi-lang-yaml=\"`version`\" pulumi-lang-java=\"`version`\"\u003e`version`\u003c/span\u003e: Virtual trusted platform module version.\n\n### APC Config\nThe \u003cspan pulumi-lang-nodejs=\"`apcConfig`\" pulumi-lang-dotnet=\"`ApcConfig`\" pulumi-lang-go=\"`apcConfig`\" pulumi-lang-python=\"`apc_config`\" pulumi-lang-yaml=\"`apcConfig`\" pulumi-lang-java=\"`apcConfig`\"\u003e`apc_config`\u003c/span\u003e attribute supports the following:\n\n* \u003cspan pulumi-lang-nodejs=\"`isApcEnabled`\" pulumi-lang-dotnet=\"`IsApcEnabled`\" pulumi-lang-go=\"`isApcEnabled`\" pulumi-lang-python=\"`is_apc_enabled`\" pulumi-lang-yaml=\"`isApcEnabled`\" pulumi-lang-java=\"`isApcEnabled`\"\u003e`is_apc_enabled`\u003c/span\u003e: If enabled, the selected CPU model will be retained across live and cold migrations of the VM.\n* \u003cspan pulumi-lang-nodejs=\"`cpuModel`\" pulumi-lang-dotnet=\"`CpuModel`\" pulumi-lang-go=\"`cpuModel`\" pulumi-lang-python=\"`cpu_model`\" pulumi-lang-yaml=\"`cpuModel`\" pulumi-lang-java=\"`cpuModel`\"\u003e`cpu_model`\u003c/span\u003e: CPU model associated with the VM if Advanced Processor Compatibility(APC) is enabled. If APC is enabled and no CPU model is explicitly set, a default baseline CPU model is picked by the system. See the APC documentation for more information\n* `cpu_model.ext_id`: The globally unique identifier of the CPU model associated with the VM.\n* `cpu_model.name`: Name of the CPU model associated with the VM.\n\n\n### Storage Config\nThe \u003cspan pulumi-lang-nodejs=\"`storageConfig`\" pulumi-lang-dotnet=\"`StorageConfig`\" pulumi-lang-go=\"`storageConfig`\" pulumi-lang-python=\"`storage_config`\" pulumi-lang-yaml=\"`storageConfig`\" pulumi-lang-java=\"`storageConfig`\"\u003e`storage_config`\u003c/span\u003e attribute supports the following:\n\n* \u003cspan pulumi-lang-nodejs=\"`isFlashModeEnabled`\" pulumi-lang-dotnet=\"`IsFlashModeEnabled`\" pulumi-lang-go=\"`isFlashModeEnabled`\" pulumi-lang-python=\"`is_flash_mode_enabled`\" pulumi-lang-yaml=\"`isFlashModeEnabled`\" pulumi-lang-java=\"`isFlashModeEnabled`\"\u003e`is_flash_mode_enabled`\u003c/span\u003e: Indicates whether the virtual disk is pinned to the hot tier or not.\n* \u003cspan pulumi-lang-nodejs=\"`qosConfig`\" pulumi-lang-dotnet=\"`QosConfig`\" pulumi-lang-go=\"`qosConfig`\" pulumi-lang-python=\"`qos_config`\" pulumi-lang-yaml=\"`qosConfig`\" pulumi-lang-java=\"`qosConfig`\"\u003e`qos_config`\u003c/span\u003e: QoS parameters to be enforced.\n* `qos_config.throttled_iops`: Throttled IOPS for the governed entities. The block size for the I/O is 32 kB.\n\n### Disks\nThe \u003cspan pulumi-lang-nodejs=\"`disks`\" pulumi-lang-dotnet=\"`Disks`\" pulumi-lang-go=\"`disks`\" pulumi-lang-python=\"`disks`\" pulumi-lang-yaml=\"`disks`\" pulumi-lang-java=\"`disks`\"\u003e`disks`\u003c/span\u003e attribute supports the following:\n\n* \u003cspan pulumi-lang-nodejs=\"`extId`\" pulumi-lang-dotnet=\"`ExtId`\" pulumi-lang-go=\"`extId`\" pulumi-lang-python=\"`ext_id`\" pulumi-lang-yaml=\"`extId`\" pulumi-lang-java=\"`extId`\"\u003e`ext_id`\u003c/span\u003e: A globally unique identifier of an instance that is suitable for external consumption.\n* \u003cspan pulumi-lang-nodejs=\"`diskAddress`\" pulumi-lang-dotnet=\"`DiskAddress`\" pulumi-lang-go=\"`diskAddress`\" pulumi-lang-python=\"`disk_address`\" pulumi-lang-yaml=\"`diskAddress`\" pulumi-lang-java=\"`diskAddress`\"\u003e`disk_address`\u003c/span\u003e: Disk address.\n* `disk_address.bus_type`: Bus type for the device. The acceptable values are: SCSI, IDE, PCI, SATA, SPAPR (only PPC).\n* `disk_address.index`: Device index on the bus. This field is ignored unless the bus details are specified.\n* \u003cspan pulumi-lang-nodejs=\"`backingInfo`\" pulumi-lang-dotnet=\"`BackingInfo`\" pulumi-lang-go=\"`backingInfo`\" pulumi-lang-python=\"`backing_info`\" pulumi-lang-yaml=\"`backingInfo`\" pulumi-lang-java=\"`backingInfo`\"\u003e`backing_info`\u003c/span\u003e: Supporting storage to create virtual disk on.\n* `backing_info.vm_disk`: backing Info for vmDisk\n* `backing_info.adfs_volume_group_reference`: Volume Group Reference\n* `backing_info.adfs_volume_group_reference.volume_group_ext_id`: The globally unique identifier of an ADSF volume group. It should be of type UUID.\n\n\n#### backing_info.vm_disk\n* \u003cspan pulumi-lang-nodejs=\"`diskExtId`\" pulumi-lang-dotnet=\"`DiskExtId`\" pulumi-lang-go=\"`diskExtId`\" pulumi-lang-python=\"`disk_ext_id`\" pulumi-lang-yaml=\"`diskExtId`\" pulumi-lang-java=\"`diskExtId`\"\u003e`disk_ext_id`\u003c/span\u003e: The globally unique identifier of a VM disk. It should be of type UUID.\n* \u003cspan pulumi-lang-nodejs=\"`diskSizeBytes`\" pulumi-lang-dotnet=\"`DiskSizeBytes`\" pulumi-lang-go=\"`diskSizeBytes`\" pulumi-lang-python=\"`disk_size_bytes`\" pulumi-lang-yaml=\"`diskSizeBytes`\" pulumi-lang-java=\"`diskSizeBytes`\"\u003e`disk_size_bytes`\u003c/span\u003e: Size of the disk in Bytes\n* \u003cspan pulumi-lang-nodejs=\"`storageContainer`\" pulumi-lang-dotnet=\"`StorageContainer`\" pulumi-lang-go=\"`storageContainer`\" pulumi-lang-python=\"`storage_container`\" pulumi-lang-yaml=\"`storageContainer`\" pulumi-lang-java=\"`storageContainer`\"\u003e`storage_container`\u003c/span\u003e: This reference is for disk level storage container preference. This preference specifies the storage container to which this disk belongs.\n* `storage_container.ext_id`: A globally unique identifier of a VM disk container. It should be of type UUID.\n* \u003cspan pulumi-lang-nodejs=\"`storageConfig`\" pulumi-lang-dotnet=\"`StorageConfig`\" pulumi-lang-go=\"`storageConfig`\" pulumi-lang-python=\"`storage_config`\" pulumi-lang-yaml=\"`storageConfig`\" pulumi-lang-java=\"`storageConfig`\"\u003e`storage_config`\u003c/span\u003e: Storage configuration for VM disks\n* `storage_config.is_flash_mode_enabled`: Indicates whether the virtual disk is pinned to the hot tier or not.\n* \u003cspan pulumi-lang-nodejs=\"`dataSource`\" pulumi-lang-dotnet=\"`DataSource`\" pulumi-lang-go=\"`dataSource`\" pulumi-lang-python=\"`data_source`\" pulumi-lang-yaml=\"`dataSource`\" pulumi-lang-java=\"`dataSource`\"\u003e`data_source`\u003c/span\u003e: A reference to a disk or image that contains the contents of a disk.\n* \u003cspan pulumi-lang-nodejs=\"`isMigrationInProgress`\" pulumi-lang-dotnet=\"`IsMigrationInProgress`\" pulumi-lang-go=\"`isMigrationInProgress`\" pulumi-lang-python=\"`is_migration_in_progress`\" pulumi-lang-yaml=\"`isMigrationInProgress`\" pulumi-lang-java=\"`isMigrationInProgress`\"\u003e`is_migration_in_progress`\u003c/span\u003e: Indicates if the disk is undergoing migration to another container.\n\n#### backing_info.vm_disk.data_source\n* \u003cspan pulumi-lang-nodejs=\"`reference`\" pulumi-lang-dotnet=\"`Reference`\" pulumi-lang-go=\"`reference`\" pulumi-lang-python=\"`reference`\" pulumi-lang-yaml=\"`reference`\" pulumi-lang-java=\"`reference`\"\u003e`reference`\u003c/span\u003e: Reference to image or vm disk\n* `reference.image_reference`: Image Reference\n* `reference.image_reference.image_ext_id`: The globally unique identifier of an image. It should be of type UUID.\n* `reference.vm_disk_reference`: Vm Disk Reference\n* `reference.vm_disk_reference.disk_ext_id`:  The globally unique identifier of a VM disk. It should be of type UUID.\n* `reference.vm_disk_reference.disk_address`: Disk address.\n* `reference.vm_disk_reference.disk_address.bus_type`: Bus type for the device. The acceptable values are: SCSI, IDE, PCI, SATA, SPAPR (only PPC).\n* `reference.vm_disk_reference.disk_address.index`: Device index on the bus. This field is ignored unless the bus details are specified.\n* `reference.vm_disk_reference.vm_reference`: This is a reference to a VM.\n* `reference.vm_disk_reference.vm_reference.ext_id`: A globally unique identifier of a VM of type UUID.\n\n\n\n### CD-ROMs\nThe \u003cspan pulumi-lang-nodejs=\"`cdRoms`\" pulumi-lang-dotnet=\"`CdRoms`\" pulumi-lang-go=\"`cdRoms`\" pulumi-lang-python=\"`cd_roms`\" pulumi-lang-yaml=\"`cdRoms`\" pulumi-lang-java=\"`cdRoms`\"\u003e`cd_roms`\u003c/span\u003e attribute supports the following:\n\n* \u003cspan pulumi-lang-nodejs=\"`extId`\" pulumi-lang-dotnet=\"`ExtId`\" pulumi-lang-go=\"`extId`\" pulumi-lang-python=\"`ext_id`\" pulumi-lang-yaml=\"`extId`\" pulumi-lang-java=\"`extId`\"\u003e`ext_id`\u003c/span\u003e: A globally unique identifier of an instance that is suitable for external consumption.\n* \u003cspan pulumi-lang-nodejs=\"`diskAddress`\" pulumi-lang-dotnet=\"`DiskAddress`\" pulumi-lang-go=\"`diskAddress`\" pulumi-lang-python=\"`disk_address`\" pulumi-lang-yaml=\"`diskAddress`\" pulumi-lang-java=\"`diskAddress`\"\u003e`disk_address`\u003c/span\u003e: Virtual Machine disk (VM disk).\n* \u003cspan pulumi-lang-nodejs=\"`backingInfo`\" pulumi-lang-dotnet=\"`BackingInfo`\" pulumi-lang-go=\"`backingInfo`\" pulumi-lang-python=\"`backing_info`\" pulumi-lang-yaml=\"`backingInfo`\" pulumi-lang-java=\"`backingInfo`\"\u003e`backing_info`\u003c/span\u003e: Storage provided by Nutanix ADSF\n* \u003cspan pulumi-lang-nodejs=\"`isoType`\" pulumi-lang-dotnet=\"`IsoType`\" pulumi-lang-go=\"`isoType`\" pulumi-lang-python=\"`iso_type`\" pulumi-lang-yaml=\"`isoType`\" pulumi-lang-java=\"`isoType`\"\u003e`iso_type`\u003c/span\u003e: Type of ISO image inserted in CD-ROM\n\n\n### NICs\nThe \u003cspan pulumi-lang-nodejs=\"`nics`\" pulumi-lang-dotnet=\"`Nics`\" pulumi-lang-go=\"`nics`\" pulumi-lang-python=\"`nics`\" pulumi-lang-yaml=\"`nics`\" pulumi-lang-java=\"`nics`\"\u003e`nics`\u003c/span\u003e attribute supports the following:\n\n* \u003cspan pulumi-lang-nodejs=\"`extId`\" pulumi-lang-dotnet=\"`ExtId`\" pulumi-lang-go=\"`extId`\" pulumi-lang-python=\"`ext_id`\" pulumi-lang-yaml=\"`extId`\" pulumi-lang-java=\"`extId`\"\u003e`ext_id`\u003c/span\u003e: A globally unique identifier of an instance that is suitable for external consumption\n* \u003cspan pulumi-lang-nodejs=\"`backingInfo`\" pulumi-lang-dotnet=\"`BackingInfo`\" pulumi-lang-go=\"`backingInfo`\" pulumi-lang-python=\"`backing_info`\" pulumi-lang-yaml=\"`backingInfo`\" pulumi-lang-java=\"`backingInfo`\"\u003e`backing_info`\u003c/span\u003e: Defines a NIC emulated by the hypervisor\n* \u003cspan pulumi-lang-nodejs=\"`networkInfo`\" pulumi-lang-dotnet=\"`NetworkInfo`\" pulumi-lang-go=\"`networkInfo`\" pulumi-lang-python=\"`network_info`\" pulumi-lang-yaml=\"`networkInfo`\" pulumi-lang-java=\"`networkInfo`\"\u003e`network_info`\u003c/span\u003e: Network information for a NIC.\n\n### nics.backing_info\n* \u003cspan pulumi-lang-nodejs=\"`model`\" pulumi-lang-dotnet=\"`Model`\" pulumi-lang-go=\"`model`\" pulumi-lang-python=\"`model`\" pulumi-lang-yaml=\"`model`\" pulumi-lang-java=\"`model`\"\u003e`model`\u003c/span\u003e: Options for the NIC emulation.\n* \u003cspan pulumi-lang-nodejs=\"`macAddress`\" pulumi-lang-dotnet=\"`MacAddress`\" pulumi-lang-go=\"`macAddress`\" pulumi-lang-python=\"`mac_address`\" pulumi-lang-yaml=\"`macAddress`\" pulumi-lang-java=\"`macAddress`\"\u003e`mac_address`\u003c/span\u003e: MAC address of the emulated NIC.\n* \u003cspan pulumi-lang-nodejs=\"`isConnected`\" pulumi-lang-dotnet=\"`IsConnected`\" pulumi-lang-go=\"`isConnected`\" pulumi-lang-python=\"`is_connected`\" pulumi-lang-yaml=\"`isConnected`\" pulumi-lang-java=\"`isConnected`\"\u003e`is_connected`\u003c/span\u003e: Indicates whether the NIC is connected or not. Default is True.\n* \u003cspan pulumi-lang-nodejs=\"`numQueues`\" pulumi-lang-dotnet=\"`NumQueues`\" pulumi-lang-go=\"`numQueues`\" pulumi-lang-python=\"`num_queues`\" pulumi-lang-yaml=\"`numQueues`\" pulumi-lang-java=\"`numQueues`\"\u003e`num_queues`\u003c/span\u003e: The number of Tx/Rx queue pairs for this NIC\n\n### nics.network_info\n* \u003cspan pulumi-lang-nodejs=\"`nicType`\" pulumi-lang-dotnet=\"`NicType`\" pulumi-lang-go=\"`nicType`\" pulumi-lang-python=\"`nic_type`\" pulumi-lang-yaml=\"`nicType`\" pulumi-lang-java=\"`nicType`\"\u003e`nic_type`\u003c/span\u003e: NIC type. Defaults to NORMAL_NIC. The acceptable values are: SPAN_DESTINATION_NIC, NORMAL_NIC, DIRECT_NIC, NETWORK_FUNCTION_NIC.\n* \u003cspan pulumi-lang-nodejs=\"`networkFunctionChain`\" pulumi-lang-dotnet=\"`NetworkFunctionChain`\" pulumi-lang-go=\"`networkFunctionChain`\" pulumi-lang-python=\"`network_function_chain`\" pulumi-lang-yaml=\"`networkFunctionChain`\" pulumi-lang-java=\"`networkFunctionChain`\"\u003e`network_function_chain`\u003c/span\u003e: The network function chain associates with the NIC. Only valid if\u003cspan pulumi-lang-nodejs=\" nicType \" pulumi-lang-dotnet=\" NicType \" pulumi-lang-go=\" nicType \" pulumi-lang-python=\" nic_type \" pulumi-lang-yaml=\" nicType \" pulumi-lang-java=\" nicType \"\u003e nic_type \u003c/span\u003eis NORMAL_NIC.\n* `network_function_chain.ext_id`: The globally unique identifier of a network function chain. It should be of type UUID.\n* \u003cspan pulumi-lang-nodejs=\"`networkFunctionNicType`\" pulumi-lang-dotnet=\"`NetworkFunctionNicType`\" pulumi-lang-go=\"`networkFunctionNicType`\" pulumi-lang-python=\"`network_function_nic_type`\" pulumi-lang-yaml=\"`networkFunctionNicType`\" pulumi-lang-java=\"`networkFunctionNicType`\"\u003e`network_function_nic_type`\u003c/span\u003e: The type of this Network function NIC. Defaults to INGRESS.  values are: TAP, EGRESS, INGRESS.\n* \u003cspan pulumi-lang-nodejs=\"`subnet`\" pulumi-lang-dotnet=\"`Subnet`\" pulumi-lang-go=\"`subnet`\" pulumi-lang-python=\"`subnet`\" pulumi-lang-yaml=\"`subnet`\" pulumi-lang-java=\"`subnet`\"\u003e`subnet`\u003c/span\u003e: Network identifier for this adapter. Only valid if\u003cspan pulumi-lang-nodejs=\" nicType \" pulumi-lang-dotnet=\" NicType \" pulumi-lang-go=\" nicType \" pulumi-lang-python=\" nic_type \" pulumi-lang-yaml=\" nicType \" pulumi-lang-java=\" nicType \"\u003e nic_type \u003c/span\u003eis NORMAL_NIC or DIRECT_NIC.\n* `subnet.ext_id`: The globally unique identifier of a subnet of type UUID.\n* \u003cspan pulumi-lang-nodejs=\"`vlanMode`\" pulumi-lang-dotnet=\"`VlanMode`\" pulumi-lang-go=\"`vlanMode`\" pulumi-lang-python=\"`vlan_mode`\" pulumi-lang-yaml=\"`vlanMode`\" pulumi-lang-java=\"`vlanMode`\"\u003e`vlan_mode`\u003c/span\u003e: all the virtual NICs are created in ACCESS mode, which permits only one VLAN per virtual network. TRUNKED mode allows multiple VLANs on a single VM NIC for network-aware user VMs. values are: ACCESS, TRUNKED.\n* \u003cspan pulumi-lang-nodejs=\"`trunkedVlans`\" pulumi-lang-dotnet=\"`TrunkedVlans`\" pulumi-lang-go=\"`trunkedVlans`\" pulumi-lang-python=\"`trunked_vlans`\" pulumi-lang-yaml=\"`trunkedVlans`\" pulumi-lang-java=\"`trunkedVlans`\"\u003e`trunked_vlans`\u003c/span\u003e: List of networks to trunk if VLAN mode is marked as TRUNKED. If empty and VLAN mode is set to TRUNKED, all the VLANs are trunked.\n* \u003cspan pulumi-lang-nodejs=\"`shouldAllowUnknownMacs`\" pulumi-lang-dotnet=\"`ShouldAllowUnknownMacs`\" pulumi-lang-go=\"`shouldAllowUnknownMacs`\" pulumi-lang-python=\"`should_allow_unknown_macs`\" pulumi-lang-yaml=\"`shouldAllowUnknownMacs`\" pulumi-lang-java=\"`shouldAllowUnknownMacs`\"\u003e`should_allow_unknown_macs`\u003c/span\u003e: Indicates whether an unknown unicast traffic is forwarded to this NIC or not. This is applicable only for the NICs on the overlay subnets.\n* \u003cspan pulumi-lang-nodejs=\"`ipv4Config`\" pulumi-lang-dotnet=\"`Ipv4Config`\" pulumi-lang-go=\"`ipv4Config`\" pulumi-lang-python=\"`ipv4_config`\" pulumi-lang-yaml=\"`ipv4Config`\" pulumi-lang-java=\"`ipv4Config`\"\u003e`ipv4_config`\u003c/span\u003e: The IP address configurations.\n* \u003cspan pulumi-lang-nodejs=\"`ipv4Info`\" pulumi-lang-dotnet=\"`Ipv4Info`\" pulumi-lang-go=\"`ipv4Info`\" pulumi-lang-python=\"`ipv4_info`\" pulumi-lang-yaml=\"`ipv4Info`\" pulumi-lang-java=\"`ipv4Info`\"\u003e`ipv4_info`\u003c/span\u003e: The runtime IP address information of the NIC.\n\n#### nics.ipv4_config\n* \u003cspan pulumi-lang-nodejs=\"`shouldAssignIp`\" pulumi-lang-dotnet=\"`ShouldAssignIp`\" pulumi-lang-go=\"`shouldAssignIp`\" pulumi-lang-python=\"`should_assign_ip`\" pulumi-lang-yaml=\"`shouldAssignIp`\" pulumi-lang-java=\"`shouldAssignIp`\"\u003e`should_assign_ip`\u003c/span\u003e: If set to true (default value), an IP address must be assigned to the VM NIC - either the one explicitly specified by the user or allocated automatically by the IPAM service by not specifying the IP address. If false, then no IP assignment is required for this VM NIC.\n* \u003cspan pulumi-lang-nodejs=\"`ipAddress`\" pulumi-lang-dotnet=\"`IpAddress`\" pulumi-lang-go=\"`ipAddress`\" pulumi-lang-python=\"`ip_address`\" pulumi-lang-yaml=\"`ipAddress`\" pulumi-lang-java=\"`ipAddress`\"\u003e`ip_address`\u003c/span\u003e: The IP address of the NIC.\n* \u003cspan pulumi-lang-nodejs=\"`secondaryIpAddressList`\" pulumi-lang-dotnet=\"`SecondaryIpAddressList`\" pulumi-lang-go=\"`secondaryIpAddressList`\" pulumi-lang-python=\"`secondary_ip_address_list`\" pulumi-lang-yaml=\"`secondaryIpAddressList`\" pulumi-lang-java=\"`secondaryIpAddressList`\"\u003e`secondary_ip_address_list`\u003c/span\u003e: Secondary IP addresses for the NIC.\n\n##### ip_address,\u003cspan pulumi-lang-nodejs=\" secondaryIpAddressList\n\" pulumi-lang-dotnet=\" SecondaryIpAddressList\n\" pulumi-lang-go=\" secondaryIpAddressList\n\" pulumi-lang-python=\" secondary_ip_address_list\n\" pulumi-lang-yaml=\" secondaryIpAddressList\n\" pulumi-lang-java=\" secondaryIpAddressList\n\"\u003e secondary_ip_address_list\n\u003c/span\u003e* \u003cspan pulumi-lang-nodejs=\"`value`\" pulumi-lang-dotnet=\"`Value`\" pulumi-lang-go=\"`value`\" pulumi-lang-python=\"`value`\" pulumi-lang-yaml=\"`value`\" pulumi-lang-java=\"`value`\"\u003e`value`\u003c/span\u003e: The IPv4 address of the host.\n* \u003cspan pulumi-lang-nodejs=\"`prefixLength`\" pulumi-lang-dotnet=\"`PrefixLength`\" pulumi-lang-go=\"`prefixLength`\" pulumi-lang-python=\"`prefix_length`\" pulumi-lang-yaml=\"`prefixLength`\" pulumi-lang-java=\"`prefixLength`\"\u003e`prefix_length`\u003c/span\u003e: The prefix length of the IP address.\n\n#### nics.ipv4_info\n* \u003cspan pulumi-lang-nodejs=\"`learnedIpAddresses`\" pulumi-lang-dotnet=\"`LearnedIpAddresses`\" pulumi-lang-go=\"`learnedIpAddresses`\" pulumi-lang-python=\"`learned_ip_addresses`\" pulumi-lang-yaml=\"`learnedIpAddresses`\" pulumi-lang-java=\"`learnedIpAddresses`\"\u003e`learned_ip_addresses`\u003c/span\u003e: The list of IP addresses learned by the NIC.\n\n#####\u003cspan pulumi-lang-nodejs=\" learnedIpAddresses\n\" pulumi-lang-dotnet=\" LearnedIpAddresses\n\" pulumi-lang-go=\" learnedIpAddresses\n\" pulumi-lang-python=\" learned_ip_addresses\n\" pulumi-lang-yaml=\" learnedIpAddresses\n\" pulumi-lang-java=\" learnedIpAddresses\n\"\u003e learned_ip_addresses\n\u003c/span\u003e* \u003cspan pulumi-lang-nodejs=\"`value`\" pulumi-lang-dotnet=\"`Value`\" pulumi-lang-go=\"`value`\" pulumi-lang-python=\"`value`\" pulumi-lang-yaml=\"`value`\" pulumi-lang-java=\"`value`\"\u003e`value`\u003c/span\u003e: The IPv4 address of the host.\n* \u003cspan pulumi-lang-nodejs=\"`prefixLength`\" pulumi-lang-dotnet=\"`PrefixLength`\" pulumi-lang-go=\"`prefixLength`\" pulumi-lang-python=\"`prefix_length`\" pulumi-lang-yaml=\"`prefixLength`\" pulumi-lang-java=\"`prefixLength`\"\u003e`prefix_length`\u003c/span\u003e: The prefix length of the IP address.\n\n### gpus\n* \u003cspan pulumi-lang-nodejs=\"`extId`\" pulumi-lang-dotnet=\"`ExtId`\" pulumi-lang-go=\"`extId`\" pulumi-lang-python=\"`ext_id`\" pulumi-lang-yaml=\"`extId`\" pulumi-lang-java=\"`extId`\"\u003e`ext_id`\u003c/span\u003e: A globally unique identifier of an instance that is suitable for external consumption.\n* \u003cspan pulumi-lang-nodejs=\"`mode`\" pulumi-lang-dotnet=\"`Mode`\" pulumi-lang-go=\"`mode`\" pulumi-lang-python=\"`mode`\" pulumi-lang-yaml=\"`mode`\" pulumi-lang-java=\"`mode`\"\u003e`mode`\u003c/span\u003e: The mode of this GPU.\n* \u003cspan pulumi-lang-nodejs=\"`deviceId`\" pulumi-lang-dotnet=\"`DeviceId`\" pulumi-lang-go=\"`deviceId`\" pulumi-lang-python=\"`device_id`\" pulumi-lang-yaml=\"`deviceId`\" pulumi-lang-java=\"`deviceId`\"\u003e`device_id`\u003c/span\u003e: The device Id of the GPU.\n* \u003cspan pulumi-lang-nodejs=\"`vendor`\" pulumi-lang-dotnet=\"`Vendor`\" pulumi-lang-go=\"`vendor`\" pulumi-lang-python=\"`vendor`\" pulumi-lang-yaml=\"`vendor`\" pulumi-lang-java=\"`vendor`\"\u003e`vendor`\u003c/span\u003e: The vendor of the GPU.\n* \u003cspan pulumi-lang-nodejs=\"`pciAddress`\" pulumi-lang-dotnet=\"`PciAddress`\" pulumi-lang-go=\"`pciAddress`\" pulumi-lang-python=\"`pci_address`\" pulumi-lang-yaml=\"`pciAddress`\" pulumi-lang-java=\"`pciAddress`\"\u003e`pci_address`\u003c/span\u003e: The (S)egment:(B)us:(D)evice.(F)unction hardware address. See\n* \u003cspan pulumi-lang-nodejs=\"`guestDriverVersion`\" pulumi-lang-dotnet=\"`GuestDriverVersion`\" pulumi-lang-go=\"`guestDriverVersion`\" pulumi-lang-python=\"`guest_driver_version`\" pulumi-lang-yaml=\"`guestDriverVersion`\" pulumi-lang-java=\"`guestDriverVersion`\"\u003e`guest_driver_version`\u003c/span\u003e: Last determined guest driver version.\n* \u003cspan pulumi-lang-nodejs=\"`name`\" pulumi-lang-dotnet=\"`Name`\" pulumi-lang-go=\"`name`\" pulumi-lang-python=\"`name`\" pulumi-lang-yaml=\"`name`\" pulumi-lang-java=\"`name`\"\u003e`name`\u003c/span\u003e: Name of the GPU resource.\n* \u003cspan pulumi-lang-nodejs=\"`frameBufferSizeBytes`\" pulumi-lang-dotnet=\"`FrameBufferSizeBytes`\" pulumi-lang-go=\"`frameBufferSizeBytes`\" pulumi-lang-python=\"`frame_buffer_size_bytes`\" pulumi-lang-yaml=\"`frameBufferSizeBytes`\" pulumi-lang-java=\"`frameBufferSizeBytes`\"\u003e`frame_buffer_size_bytes`\u003c/span\u003e: GPU frame buffer size in bytes.\n* \u003cspan pulumi-lang-nodejs=\"`numVirtualDisplayHeads`\" pulumi-lang-dotnet=\"`NumVirtualDisplayHeads`\" pulumi-lang-go=\"`numVirtualDisplayHeads`\" pulumi-lang-python=\"`num_virtual_display_heads`\" pulumi-lang-yaml=\"`numVirtualDisplayHeads`\" pulumi-lang-java=\"`numVirtualDisplayHeads`\"\u003e`num_virtual_display_heads`\u003c/span\u003e: Number of supported virtual display heads.\n* \u003cspan pulumi-lang-nodejs=\"`fraction`\" pulumi-lang-dotnet=\"`Fraction`\" pulumi-lang-go=\"`fraction`\" pulumi-lang-python=\"`fraction`\" pulumi-lang-yaml=\"`fraction`\" pulumi-lang-java=\"`fraction`\"\u003e`fraction`\u003c/span\u003e: Fraction of the physical GPU assigned.\n\n### gpus.pci_address\n* \u003cspan pulumi-lang-nodejs=\"`segment`\" pulumi-lang-dotnet=\"`Segment`\" pulumi-lang-go=\"`segment`\" pulumi-lang-python=\"`segment`\" pulumi-lang-yaml=\"`segment`\" pulumi-lang-java=\"`segment`\"\u003e`segment`\u003c/span\u003e\n* \u003cspan pulumi-lang-nodejs=\"`bus`\" pulumi-lang-dotnet=\"`Bus`\" pulumi-lang-go=\"`bus`\" pulumi-lang-python=\"`bus`\" pulumi-lang-yaml=\"`bus`\" pulumi-lang-java=\"`bus`\"\u003e`bus`\u003c/span\u003e\n* \u003cspan pulumi-lang-nodejs=\"`device`\" pulumi-lang-dotnet=\"`Device`\" pulumi-lang-go=\"`device`\" pulumi-lang-python=\"`device`\" pulumi-lang-yaml=\"`device`\" pulumi-lang-java=\"`device`\"\u003e`device`\u003c/span\u003e\n* \u003cspan pulumi-lang-nodejs=\"`func`\" pulumi-lang-dotnet=\"`Func`\" pulumi-lang-go=\"`func`\" pulumi-lang-python=\"`func`\" pulumi-lang-yaml=\"`func`\" pulumi-lang-java=\"`func`\"\u003e`func`\u003c/span\u003e\n\n###\u003cspan pulumi-lang-nodejs=\" serialPorts\n\" pulumi-lang-dotnet=\" SerialPorts\n\" pulumi-lang-go=\" serialPorts\n\" pulumi-lang-python=\" serial_ports\n\" pulumi-lang-yaml=\" serialPorts\n\" pulumi-lang-java=\" serialPorts\n\"\u003e serial_ports\n\u003c/span\u003e* \u003cspan pulumi-lang-nodejs=\"`extId`\" pulumi-lang-dotnet=\"`ExtId`\" pulumi-lang-go=\"`extId`\" pulumi-lang-python=\"`ext_id`\" pulumi-lang-yaml=\"`extId`\" pulumi-lang-java=\"`extId`\"\u003e`ext_id`\u003c/span\u003e: A globally unique identifier of an instance that is suitable for external consumption.\n* \u003cspan pulumi-lang-nodejs=\"`isConnected`\" pulumi-lang-dotnet=\"`IsConnected`\" pulumi-lang-go=\"`isConnected`\" pulumi-lang-python=\"`is_connected`\" pulumi-lang-yaml=\"`isConnected`\" pulumi-lang-java=\"`isConnected`\"\u003e`is_connected`\u003c/span\u003e: Indicates whether the serial port is connected or not.\n* \u003cspan pulumi-lang-nodejs=\"`index`\" pulumi-lang-dotnet=\"`Index`\" pulumi-lang-go=\"`index`\" pulumi-lang-python=\"`index`\" pulumi-lang-yaml=\"`index`\" pulumi-lang-java=\"`index`\"\u003e`index`\u003c/span\u003e: Index of the serial port.\n\n###\u003cspan pulumi-lang-nodejs=\" protectionPolicyState\n\" pulumi-lang-dotnet=\" ProtectionPolicyState\n\" pulumi-lang-go=\" protectionPolicyState\n\" pulumi-lang-python=\" protection_policy_state\n\" pulumi-lang-yaml=\" protectionPolicyState\n\" pulumi-lang-java=\" protectionPolicyState\n\"\u003e protection_policy_state\n\u003c/span\u003e* \u003cspan pulumi-lang-nodejs=\"`policy`\" pulumi-lang-dotnet=\"`Policy`\" pulumi-lang-go=\"`policy`\" pulumi-lang-python=\"`policy`\" pulumi-lang-yaml=\"`policy`\" pulumi-lang-java=\"`policy`\"\u003e`policy`\u003c/span\u003e: Reference to the policy object in use.\n\n### created_by,\u003cspan pulumi-lang-nodejs=\" lastUpdatedBy\n\" pulumi-lang-dotnet=\" LastUpdatedBy\n\" pulumi-lang-go=\" lastUpdatedBy\n\" pulumi-lang-python=\" last_updated_by\n\" pulumi-lang-yaml=\" lastUpdatedBy\n\" pulumi-lang-java=\" lastUpdatedBy\n\"\u003e last_updated_by\n\u003c/span\u003e\n* \u003cspan pulumi-lang-nodejs=\"`extId`\" pulumi-lang-dotnet=\"`ExtId`\" pulumi-lang-go=\"`extId`\" pulumi-lang-python=\"`ext_id`\" pulumi-lang-yaml=\"`extId`\" pulumi-lang-java=\"`extId`\"\u003e`ext_id`\u003c/span\u003e: A globally unique identifier of an instance that is suitable for external consumption.\n* \u003cspan pulumi-lang-nodejs=\"`username`\" pulumi-lang-dotnet=\"`Username`\" pulumi-lang-go=\"`username`\" pulumi-lang-python=\"`username`\" pulumi-lang-yaml=\"`username`\" pulumi-lang-java=\"`username`\"\u003e`username`\u003c/span\u003e: Identifier for the User in the form an email address.\n* \u003cspan pulumi-lang-nodejs=\"`userType`\" pulumi-lang-dotnet=\"`UserType`\" pulumi-lang-go=\"`userType`\" pulumi-lang-python=\"`user_type`\" pulumi-lang-yaml=\"`userType`\" pulumi-lang-java=\"`userType`\"\u003e`user_type`\u003c/span\u003e: Type of the User.\n* \u003cspan pulumi-lang-nodejs=\"`idpId`\" pulumi-lang-dotnet=\"`IdpId`\" pulumi-lang-go=\"`idpId`\" pulumi-lang-python=\"`idp_id`\" pulumi-lang-yaml=\"`idpId`\" pulumi-lang-java=\"`idpId`\"\u003e`idp_id`\u003c/span\u003e: Identifier of the IDP for the User.\n* \u003cspan pulumi-lang-nodejs=\"`displayName`\" pulumi-lang-dotnet=\"`DisplayName`\" pulumi-lang-go=\"`displayName`\" pulumi-lang-python=\"`display_name`\" pulumi-lang-yaml=\"`displayName`\" pulumi-lang-java=\"`displayName`\"\u003e`display_name`\u003c/span\u003e: Display name for the User.\n* \u003cspan pulumi-lang-nodejs=\"`firstName`\" pulumi-lang-dotnet=\"`FirstName`\" pulumi-lang-go=\"`firstName`\" pulumi-lang-python=\"`first_name`\" pulumi-lang-yaml=\"`firstName`\" pulumi-lang-java=\"`firstName`\"\u003e`first_name`\u003c/span\u003e: First name for the User.\n* \u003cspan pulumi-lang-nodejs=\"`middleInitial`\" pulumi-lang-dotnet=\"`MiddleInitial`\" pulumi-lang-go=\"`middleInitial`\" pulumi-lang-python=\"`middle_initial`\" pulumi-lang-yaml=\"`middleInitial`\" pulumi-lang-java=\"`middleInitial`\"\u003e`middle_initial`\u003c/span\u003e: Middle name for the User.\n* \u003cspan pulumi-lang-nodejs=\"`lastName`\" pulumi-lang-dotnet=\"`LastName`\" pulumi-lang-go=\"`lastName`\" pulumi-lang-python=\"`last_name`\" pulumi-lang-yaml=\"`lastName`\" pulumi-lang-java=\"`lastName`\"\u003e`last_name`\u003c/span\u003e: Last name for the User.\n* \u003cspan pulumi-lang-nodejs=\"`emailId`\" pulumi-lang-dotnet=\"`EmailId`\" pulumi-lang-go=\"`emailId`\" pulumi-lang-python=\"`email_id`\" pulumi-lang-yaml=\"`emailId`\" pulumi-lang-java=\"`emailId`\"\u003e`email_id`\u003c/span\u003e: Email Id for the User.\n* \u003cspan pulumi-lang-nodejs=\"`locale`\" pulumi-lang-dotnet=\"`Locale`\" pulumi-lang-go=\"`locale`\" pulumi-lang-python=\"`locale`\" pulumi-lang-yaml=\"`locale`\" pulumi-lang-java=\"`locale`\"\u003e`locale`\u003c/span\u003e: Default locale for the User.\n* \u003cspan pulumi-lang-nodejs=\"`region`\" pulumi-lang-dotnet=\"`Region`\" pulumi-lang-go=\"`region`\" pulumi-lang-python=\"`region`\" pulumi-lang-yaml=\"`region`\" pulumi-lang-java=\"`region`\"\u003e`region`\u003c/span\u003e: Default Region for the User.\n* \u003cspan pulumi-lang-nodejs=\"`isForceResetPasswordEnabled`\" pulumi-lang-dotnet=\"`IsForceResetPasswordEnabled`\" pulumi-lang-go=\"`isForceResetPasswordEnabled`\" pulumi-lang-python=\"`is_force_reset_password_enabled`\" pulumi-lang-yaml=\"`isForceResetPasswordEnabled`\" pulumi-lang-java=\"`isForceResetPasswordEnabled`\"\u003e`is_force_reset_password_enabled`\u003c/span\u003e: Flag to force the User to reset password.\n* \u003cspan pulumi-lang-nodejs=\"`additionalAttributes`\" pulumi-lang-dotnet=\"`AdditionalAttributes`\" pulumi-lang-go=\"`additionalAttributes`\" pulumi-lang-python=\"`additional_attributes`\" pulumi-lang-yaml=\"`additionalAttributes`\" pulumi-lang-java=\"`additionalAttributes`\"\u003e`additional_attributes`\u003c/span\u003e: Any additional attribute for the User.\n* \u003cspan pulumi-lang-nodejs=\"`status`\" pulumi-lang-dotnet=\"`Status`\" pulumi-lang-go=\"`status`\" pulumi-lang-python=\"`status`\" pulumi-lang-yaml=\"`status`\" pulumi-lang-java=\"`status`\"\u003e`status`\u003c/span\u003e: Status of the User.\n* \u003cspan pulumi-lang-nodejs=\"`bucketsAccessKeys`\" pulumi-lang-dotnet=\"`BucketsAccessKeys`\" pulumi-lang-go=\"`bucketsAccessKeys`\" pulumi-lang-python=\"`buckets_access_keys`\" pulumi-lang-yaml=\"`bucketsAccessKeys`\" pulumi-lang-java=\"`bucketsAccessKeys`\"\u003e`buckets_access_keys`\u003c/span\u003e: Bucket Access Keys for the User.\n* \u003cspan pulumi-lang-nodejs=\"`lastLoginTime`\" pulumi-lang-dotnet=\"`LastLoginTime`\" pulumi-lang-go=\"`lastLoginTime`\" pulumi-lang-python=\"`last_login_time`\" pulumi-lang-yaml=\"`lastLoginTime`\" pulumi-lang-java=\"`lastLoginTime`\"\u003e`last_login_time`\u003c/span\u003e: Last successful logged in time for the User.\n* \u003cspan pulumi-lang-nodejs=\"`createdTime`\" pulumi-lang-dotnet=\"`CreatedTime`\" pulumi-lang-go=\"`createdTime`\" pulumi-lang-python=\"`created_time`\" pulumi-lang-yaml=\"`createdTime`\" pulumi-lang-java=\"`createdTime`\"\u003e`created_time`\u003c/span\u003e: Creation time of the User.\n* \u003cspan pulumi-lang-nodejs=\"`lastUpdatedTime`\" pulumi-lang-dotnet=\"`LastUpdatedTime`\" pulumi-lang-go=\"`lastUpdatedTime`\" pulumi-lang-python=\"`last_updated_time`\" pulumi-lang-yaml=\"`lastUpdatedTime`\" pulumi-lang-java=\"`lastUpdatedTime`\"\u003e`last_updated_time`\u003c/span\u003e: Last updated time of the User.\n* \u003cspan pulumi-lang-nodejs=\"`createdBy`\" pulumi-lang-dotnet=\"`CreatedBy`\" pulumi-lang-go=\"`createdBy`\" pulumi-lang-python=\"`created_by`\" pulumi-lang-yaml=\"`createdBy`\" pulumi-lang-java=\"`createdBy`\"\u003e`created_by`\u003c/span\u003e: User or Service who created the User.\n* \u003cspan pulumi-lang-nodejs=\"`lastUpdatedBy`\" pulumi-lang-dotnet=\"`LastUpdatedBy`\" pulumi-lang-go=\"`lastUpdatedBy`\" pulumi-lang-python=\"`last_updated_by`\" pulumi-lang-yaml=\"`lastUpdatedBy`\" pulumi-lang-java=\"`lastUpdatedBy`\"\u003e`last_updated_by`\u003c/span\u003e: Last updated by this User ID.\n\n\n\nSee detailed information in [Nutanix List Templates V4](https://developers.nutanix.com/api-reference?namespace=vmm\u0026version=v4.0#tag/Templates/operation/listTemplates).\n",
      "inputs": {
        "description": "A collection of arguments for invoking getTemplatesV2.\n",
        "properties": {
          "filter": {
            "type": "string",
            "description": "A URL query parameter that allows clients to filter a collection of resources. The expression specified with \\$filter is evaluated for each resource in the collection, and only items where the expression evaluates to true are included in the response. Expression specified with the \\$filter must conform to the OData V4.01 URL conventions. For example, filter '\\$filter=name eq 'karbon-ntnx-1.0' would filter the result on cluster name 'karbon-ntnx1.0', filter '\\$filter=startswith(name, 'C')' would filter on cluster name starting with 'C'. The filter can be applied to the following fields:\n- templateName\n"
          },
          "limit": {
            "type": "integer",
            "description": "A URL query parameter that specifies the total number of records returned in the result set. Must be a positive integer between 1 and 100. Any number out of this range will lead to a validation error. If the limit is not provided, a default value of 50 records will be returned in the result set.\n"
          },
          "orderBy": {
            "type": "string",
            "description": "A URL query parameter that allows clients to specify the sort criteria for the returned list of objects. Resources can be sorted in ascending order using asc or descending order using desc. If asc or desc are not specified, the resources will be sorted in ascending order by default. For example, '\\$orderby=templateName desc' would get all templates sorted by templateName in descending order. The orderby can be applied to the following fields:\n- templateName\n- updateTime\n"
          },
          "page": {
            "type": "integer",
            "description": "A URL query parameter that specifies the page number of the result set. It must be a positive integer between 0 and the maximum number of pages that are available for that resource. Any number out of this range might lead to no results. Default is 0.\n"
          },
          "select": {
            "type": "string",
            "description": "A URL query parameter that allows clients to request a specific set of properties for each entity or complex type. Expression specified with the $select must conform to the OData V4.01 URL conventions. If a $select expression consists of a single select item that is an asterisk (i.e., *), then all properties on the matching resource will be returned. The select can be applied to the following fields:\n- createTime\n- createdBy\n- guestUpdateStatus\n- templateDescription\n- templateName\n- templateVersionSpec\n- updateTime\n- updatedBy\n"
          }
        },
        "type": "object"
      },
      "outputs": {
        "description": "A collection of values returned by getTemplatesV2.\n",
        "properties": {
          "filter": {
            "type": "string"
          },
          "id": {
            "description": "The provider-assigned unique ID for this managed resource.",
            "type": "string"
          },
          "limit": {
            "type": "integer"
          },
          "orderBy": {
            "type": "string"
          },
          "page": {
            "type": "integer"
          },
          "select": {
            "type": "string"
          },
          "templates": {
            "description": "List of all templates.\n",
            "items": {
              "$ref": "#/types/nutanix:index%2FgetTemplatesV2Template:getTemplatesV2Template"
            },
            "type": "array"
          }
        },
        "required": [
          "id",
          "templates"
        ],
        "type": "object"
      }
    },
    "nutanix:index/getUser:getUser": {
      "description": "Provides a datasource to retrieve a user based on the input parameters.\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as nutanix from \"@pierskarsenbarg/nutanix\";\n\nconst userUser = new nutanix.User(\"user\", {directoryServiceUser: {\n    userPrincipalName: \"test-user@ntnxlab.local\",\n    directoryServiceReference: {\n        uuid: \"\u003cdirectory-service-uuid\u003e\",\n    },\n}});\n//Retrieve by UUID\nconst user = nutanix.getUserOutput({\n    userId: userUser.id,\n});\n//Retrieve by Name\nconst userbyname = nutanix.getUserOutput({\n    userName: userUser.name,\n});\n```\n```python\nimport pulumi\nimport pulumi_nutanix as nutanix\n\nuser_user = nutanix.User(\"user\", directory_service_user={\n    \"user_principal_name\": \"test-user@ntnxlab.local\",\n    \"directory_service_reference\": {\n        \"uuid\": \"\u003cdirectory-service-uuid\u003e\",\n    },\n})\n#Retrieve by UUID\nuser = nutanix.get_user_output(user_id=user_user.id)\n#Retrieve by Name\nuserbyname = nutanix.get_user_output(user_name=user_user.name)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Nutanix = PiersKarsenbarg.Nutanix;\nusing Nutanix = Pulumi.Nutanix;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var userUser = new Nutanix.User(\"user\", new()\n    {\n        DirectoryServiceUser = new Nutanix.Inputs.UserDirectoryServiceUserArgs\n        {\n            UserPrincipalName = \"test-user@ntnxlab.local\",\n            DirectoryServiceReference = new Nutanix.Inputs.UserDirectoryServiceUserDirectoryServiceReferenceArgs\n            {\n                Uuid = \"\u003cdirectory-service-uuid\u003e\",\n            },\n        },\n    });\n\n    //Retrieve by UUID\n    var user = Nutanix.GetUser.Invoke(new()\n    {\n        UserId = userUser.Id,\n    });\n\n    //Retrieve by Name\n    var userbyname = Nutanix.GetUser.Invoke(new()\n    {\n        UserName = userUser.Name,\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pierskarsenbarg/pulumi-nutanix/sdk/go/nutanix\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\tuserUser, err := nutanix.NewUser(ctx, \"user\", \u0026nutanix.UserArgs{\n\t\t\tDirectoryServiceUser: \u0026nutanix.UserDirectoryServiceUserArgs{\n\t\t\t\tUserPrincipalName: pulumi.String(\"test-user@ntnxlab.local\"),\n\t\t\t\tDirectoryServiceReference: \u0026nutanix.UserDirectoryServiceUserDirectoryServiceReferenceArgs{\n\t\t\t\t\tUuid: pulumi.String(\"\u003cdirectory-service-uuid\u003e\"),\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t// Retrieve by UUID\n\t\t_ = nutanix.LookupUserOutput(ctx, nutanix.GetUserOutputArgs{\n\t\t\tUserId: userUser.ID(),\n\t\t}, nil)\n\t\t// Retrieve by Name\n\t\t_ = nutanix.LookupUserOutput(ctx, nutanix.GetUserOutputArgs{\n\t\t\tUserName: userUser.Name,\n\t\t}, nil)\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.nutanix.User;\nimport com.pulumi.nutanix.UserArgs;\nimport com.pulumi.nutanix.inputs.UserDirectoryServiceUserArgs;\nimport com.pulumi.nutanix.inputs.UserDirectoryServiceUserDirectoryServiceReferenceArgs;\nimport com.pulumi.nutanix.NutanixFunctions;\nimport com.pulumi.nutanix.inputs.GetUserArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var userUser = new User(\"userUser\", UserArgs.builder()\n            .directoryServiceUser(UserDirectoryServiceUserArgs.builder()\n                .userPrincipalName(\"test-user@ntnxlab.local\")\n                .directoryServiceReference(UserDirectoryServiceUserDirectoryServiceReferenceArgs.builder()\n                    .uuid(\"\u003cdirectory-service-uuid\u003e\")\n                    .build())\n                .build())\n            .build());\n\n        //Retrieve by UUID\n        final var user = NutanixFunctions.getUser(GetUserArgs.builder()\n            .userId(userUser.id())\n            .build());\n\n        //Retrieve by Name\n        final var userbyname = NutanixFunctions.getUser(GetUserArgs.builder()\n            .userName(userUser.name())\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  userUser:\n    type: nutanix:User\n    name: user\n    properties:\n      directoryServiceUser:\n        userPrincipalName: test-user@ntnxlab.local\n        directoryServiceReference:\n          uuid: \u003cdirectory-service-uuid\u003e\nvariables:\n  # Retrieve by UUID\n  user:\n    fn::invoke:\n      function: nutanix:getUser\n      arguments:\n        userId: ${userUser.id}\n  # Retrieve by Name\n  userbyname:\n    fn::invoke:\n      function: nutanix:getUser\n      arguments:\n        userName: ${userUser.name}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
      "inputs": {
        "description": "A collection of arguments for invoking getUser.\n",
        "properties": {
          "categories": {
            "type": "array",
            "items": {
              "$ref": "#/types/nutanix:index%2FgetUserCategory:getUserCategory"
            },
            "description": "- (Optional) Categories for the Access Control Policy.\n"
          },
          "ownerReference": {
            "type": "object",
            "additionalProperties": {
              "type": "string"
            },
            "description": "- (Optional) The reference to a user.\n"
          },
          "projectReference": {
            "type": "object",
            "additionalProperties": {
              "type": "string"
            },
            "description": "- (Optional) The reference to a project.\n"
          },
          "userId": {
            "type": "string"
          },
          "userName": {
            "type": "string"
          }
        },
        "type": "object"
      },
      "outputs": {
        "description": "A collection of values returned by getUser.\n",
        "properties": {
          "accessControlPolicyReferenceLists": {
            "description": "- List of ACP references. See #reference for more details.\n",
            "items": {
              "$ref": "#/types/nutanix:index%2FgetUserAccessControlPolicyReferenceList:getUserAccessControlPolicyReferenceList"
            },
            "type": "array"
          },
          "apiVersion": {
            "description": "The version of the API.\n",
            "type": "string"
          },
          "categories": {
            "description": "- (Optional) Categories for the Access Control Policy.\n",
            "items": {
              "$ref": "#/types/nutanix:index%2FgetUserCategory:getUserCategory"
            },
            "type": "array"
          },
          "directoryServiceUsers": {
            "description": "- (Optional) The directory service user configuration. See below for more information.\n",
            "items": {
              "$ref": "#/types/nutanix:index%2FgetUserDirectoryServiceUser:getUserDirectoryServiceUser"
            },
            "type": "array"
          },
          "displayName": {
            "description": "- The display name of the user (common name) provided by the directory service.\n",
            "type": "string"
          },
          "id": {
            "description": "The provider-assigned unique ID for this managed resource.",
            "type": "string"
          },
          "identityProviderUsers": {
            "description": "- (Optional) (Optional) The identity provider user configuration. See below for more information.\n",
            "items": {
              "$ref": "#/types/nutanix:index%2FgetUserIdentityProviderUser:getUserIdentityProviderUser"
            },
            "type": "array"
          },
          "metadata": {
            "additionalProperties": {
              "type": "string"
            },
            "description": "- The user kind metadata.\n",
            "type": "object"
          },
          "ownerReference": {
            "additionalProperties": {
              "type": "string"
            },
            "description": "- (Optional) The reference to a user.\n",
            "type": "object"
          },
          "projectReference": {
            "additionalProperties": {
              "type": "string"
            },
            "description": "- (Optional) The reference to a project.\n",
            "type": "object"
          },
          "projectReferenceLists": {
            "description": "- A list of projects the user is part of. See #reference for more details.\n",
            "items": {
              "$ref": "#/types/nutanix:index%2FgetUserProjectReferenceList:getUserProjectReferenceList"
            },
            "type": "array"
          },
          "state": {
            "description": "- The state of the entity.\n",
            "type": "string"
          },
          "userId": {
            "type": "string"
          },
          "userName": {
            "type": "string"
          },
          "userType": {
            "description": "- The name of the user.\n",
            "type": "string"
          }
        },
        "required": [
          "accessControlPolicyReferenceLists",
          "apiVersion",
          "categories",
          "directoryServiceUsers",
          "displayName",
          "id",
          "identityProviderUsers",
          "metadata",
          "ownerReference",
          "projectReferenceLists",
          "state",
          "userType"
        ],
        "type": "object"
      }
    },
    "nutanix:index/getUserGroup:getUserGroup": {
      "description": "Provides a datasource to retrieve a user group based on the input parameters.\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as nutanix from \"@pierskarsenbarg/nutanix\";\n\n//Retrieve by UUID\nconst usergroup = nutanix.getUserGroup({\n    userGroupId: \"dd30a856-8e72-4158-b716-98455ceda220\",\n});\n//Retrieve by Name\nconst usergroupbyname = nutanix.getUserGroup({\n    userGroupName: \"example-group-1\",\n});\n//Retrieve by Distinguished Name\nconst test = nutanix.getUserGroup({\n    userGroupDistinguishedName: \"cn=example-group-1,cn=users,dc=ntnxlab,dc=local\",\n});\n```\n```python\nimport pulumi\nimport pulumi_nutanix as nutanix\n\n#Retrieve by UUID\nusergroup = nutanix.get_user_group(user_group_id=\"dd30a856-8e72-4158-b716-98455ceda220\")\n#Retrieve by Name\nusergroupbyname = nutanix.get_user_group(user_group_name=\"example-group-1\")\n#Retrieve by Distinguished Name\ntest = nutanix.get_user_group(user_group_distinguished_name=\"cn=example-group-1,cn=users,dc=ntnxlab,dc=local\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Nutanix = Pulumi.Nutanix;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    //Retrieve by UUID\n    var usergroup = Nutanix.GetUserGroup.Invoke(new()\n    {\n        UserGroupId = \"dd30a856-8e72-4158-b716-98455ceda220\",\n    });\n\n    //Retrieve by Name\n    var usergroupbyname = Nutanix.GetUserGroup.Invoke(new()\n    {\n        UserGroupName = \"example-group-1\",\n    });\n\n    //Retrieve by Distinguished Name\n    var test = Nutanix.GetUserGroup.Invoke(new()\n    {\n        UserGroupDistinguishedName = \"cn=example-group-1,cn=users,dc=ntnxlab,dc=local\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pierskarsenbarg/pulumi-nutanix/sdk/go/nutanix\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t// Retrieve by UUID\n\t\t_, err := nutanix.GetUserGroup(ctx, \u0026nutanix.GetUserGroupArgs{\n\t\t\tUserGroupId: pulumi.StringRef(\"dd30a856-8e72-4158-b716-98455ceda220\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t// Retrieve by Name\n\t\t_, err = nutanix.GetUserGroup(ctx, \u0026nutanix.GetUserGroupArgs{\n\t\t\tUserGroupName: pulumi.StringRef(\"example-group-1\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t// Retrieve by Distinguished Name\n\t\t_, err = nutanix.GetUserGroup(ctx, \u0026nutanix.GetUserGroupArgs{\n\t\t\tUserGroupDistinguishedName: pulumi.StringRef(\"cn=example-group-1,cn=users,dc=ntnxlab,dc=local\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.nutanix.NutanixFunctions;\nimport com.pulumi.nutanix.inputs.GetUserGroupArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        //Retrieve by UUID\n        final var usergroup = NutanixFunctions.getUserGroup(GetUserGroupArgs.builder()\n            .userGroupId(\"dd30a856-8e72-4158-b716-98455ceda220\")\n            .build());\n\n        //Retrieve by Name\n        final var usergroupbyname = NutanixFunctions.getUserGroup(GetUserGroupArgs.builder()\n            .userGroupName(\"example-group-1\")\n            .build());\n\n        //Retrieve by Distinguished Name\n        final var test = NutanixFunctions.getUserGroup(GetUserGroupArgs.builder()\n            .userGroupDistinguishedName(\"cn=example-group-1,cn=users,dc=ntnxlab,dc=local\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  # Retrieve by UUID\n  usergroup:\n    fn::invoke:\n      function: nutanix:getUserGroup\n      arguments:\n        userGroupId: dd30a856-8e72-4158-b716-98455ceda220\n  # Retrieve by Name\n  usergroupbyname:\n    fn::invoke:\n      function: nutanix:getUserGroup\n      arguments:\n        userGroupName: example-group-1\n  # Retrieve by Distinguished Name\n  test:\n    fn::invoke:\n      function: nutanix:getUserGroup\n      arguments:\n        userGroupDistinguishedName: cn=example-group-1,cn=users,dc=ntnxlab,dc=local\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
      "inputs": {
        "description": "A collection of arguments for invoking getUserGroup.\n",
        "properties": {
          "categories": {
            "type": "array",
            "items": {
              "$ref": "#/types/nutanix:index%2FgetUserGroupCategory:getUserGroupCategory"
            },
            "description": "- The Distinguished Categories for the user group.\n"
          },
          "ownerReference": {
            "type": "object",
            "additionalProperties": {
              "type": "string"
            },
            "description": "- The reference to a user.\n"
          },
          "projectReference": {
            "type": "object",
            "additionalProperties": {
              "type": "string"
            },
            "description": "- The Distinguished The reference to a project.\n"
          },
          "userGroupDistinguishedName": {
            "type": "string",
            "description": "The distinguished name for the user group\n"
          },
          "userGroupId": {
            "type": "string",
            "description": "- (Optional) The UUID for the user group\n"
          },
          "userGroupName": {
            "type": "string",
            "description": "- (Optional) The name for the user group\n"
          }
        },
        "type": "object"
      },
      "outputs": {
        "description": "A collection of values returned by getUserGroup.\n",
        "properties": {
          "accessControlPolicyReferenceLists": {
            "description": "- List of ACP references. See #reference for more details.\n",
            "items": {
              "$ref": "#/types/nutanix:index%2FgetUserGroupAccessControlPolicyReferenceList:getUserGroupAccessControlPolicyReferenceList"
            },
            "type": "array"
          },
          "apiVersion": {
            "description": "The version of the API.\n",
            "type": "string"
          },
          "categories": {
            "description": "- The Distinguished Categories for the user group.\n",
            "items": {
              "$ref": "#/types/nutanix:index%2FgetUserGroupCategory:getUserGroupCategory"
            },
            "type": "array"
          },
          "directoryServiceUserGroups": {
            "description": "- A Directory Service User Group.\n",
            "items": {
              "$ref": "#/types/nutanix:index%2FgetUserGroupDirectoryServiceUserGroup:getUserGroupDirectoryServiceUserGroup"
            },
            "type": "array"
          },
          "displayName": {
            "description": "- The display name of the user group.\n",
            "type": "string"
          },
          "id": {
            "description": "The provider-assigned unique ID for this managed resource.",
            "type": "string"
          },
          "metadata": {
            "additionalProperties": {
              "type": "string"
            },
            "description": "- The user group kind metadata.\n",
            "type": "object"
          },
          "ownerReference": {
            "additionalProperties": {
              "type": "string"
            },
            "description": "- The reference to a user.\n",
            "type": "object"
          },
          "projectReference": {
            "additionalProperties": {
              "type": "string"
            },
            "description": "- The Distinguished The reference to a project.\n",
            "type": "object"
          },
          "projectReferenceLists": {
            "description": "- A list of projects the user is part of. See #reference for more details.\n",
            "items": {
              "$ref": "#/types/nutanix:index%2FgetUserGroupProjectReferenceList:getUserGroupProjectReferenceList"
            },
            "type": "array"
          },
          "state": {
            "description": "- The state of the entity.\n",
            "type": "string"
          },
          "userGroupDistinguishedName": {
            "type": "string"
          },
          "userGroupId": {
            "type": "string"
          },
          "userGroupName": {
            "type": "string"
          },
          "userGroupType": {
            "description": "- The type of the user group.\n",
            "type": "string"
          }
        },
        "required": [
          "accessControlPolicyReferenceLists",
          "apiVersion",
          "categories",
          "directoryServiceUserGroups",
          "displayName",
          "id",
          "metadata",
          "ownerReference",
          "projectReferenceLists",
          "state",
          "userGroupType"
        ],
        "type": "object"
      }
    },
    "nutanix:index/getUserGroupV2:getUserGroupV2": {
      "description": "Provides a datasource to retrieve a user group based on the External Identifier of the User Group.\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as nutanix from \"@pierskarsenbarg/nutanix\";\n\nconst get_ug = nutanix.getUserGroupV2({\n    extId: \"a2a8650a-358a-4791-90c9-7a8b6e2989d6\",\n});\n```\n```python\nimport pulumi\nimport pulumi_nutanix as nutanix\n\nget_ug = nutanix.get_user_group_v2(ext_id=\"a2a8650a-358a-4791-90c9-7a8b6e2989d6\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Nutanix = Pulumi.Nutanix;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var get_ug = Nutanix.GetUserGroupV2.Invoke(new()\n    {\n        ExtId = \"a2a8650a-358a-4791-90c9-7a8b6e2989d6\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pierskarsenbarg/pulumi-nutanix/sdk/go/nutanix\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := nutanix.GetUserGroupV2(ctx, \u0026nutanix.GetUserGroupV2Args{\n\t\t\tExtId: \"a2a8650a-358a-4791-90c9-7a8b6e2989d6\",\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.nutanix.NutanixFunctions;\nimport com.pulumi.nutanix.inputs.GetUserGroupV2Args;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var get-ug = NutanixFunctions.getUserGroupV2(GetUserGroupV2Args.builder()\n            .extId(\"a2a8650a-358a-4791-90c9-7a8b6e2989d6\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  get-ug:\n    fn::invoke:\n      function: nutanix:getUserGroupV2\n      arguments:\n        extId: a2a8650a-358a-4791-90c9-7a8b6e2989d6\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
      "inputs": {
        "description": "A collection of arguments for invoking getUserGroupV2.\n",
        "properties": {
          "extId": {
            "type": "string",
            "description": "- (Required) The External Identifier of the User Group.\n"
          }
        },
        "type": "object",
        "required": [
          "extId"
        ]
      },
      "outputs": {
        "description": "A collection of values returned by getUserGroupV2.\n",
        "properties": {
          "createdBy": {
            "description": "- User or Service who created the User Group.\n",
            "type": "string"
          },
          "createdTime": {
            "description": "- Creation time of the User Group.\n",
            "type": "string"
          },
          "distinguishedName": {
            "description": "- Identifier for the User Group in the form of a distinguished name.\n",
            "type": "string"
          },
          "extId": {
            "description": "The External Identifier of the User Group.\n",
            "type": "string"
          },
          "groupType": {
            "description": "- Type of the User Group. LDAP (User Group belonging to a Directory Service (Open LDAP/AD)),  SAML (User Group belonging to a SAML IDP.)\n",
            "type": "string"
          },
          "id": {
            "description": "The provider-assigned unique ID for this managed resource.",
            "type": "string"
          },
          "idpId": {
            "description": "- Identifier of the IDP for the User Group.\n",
            "type": "string"
          },
          "lastUpdatedTime": {
            "description": "- Last updated time of the User Group.\n",
            "type": "string"
          },
          "name": {
            "description": "- Common Name of the User Group.\n",
            "type": "string"
          }
        },
        "required": [
          "createdBy",
          "createdTime",
          "distinguishedName",
          "extId",
          "groupType",
          "id",
          "idpId",
          "lastUpdatedTime",
          "name"
        ],
        "type": "object"
      }
    },
    "nutanix:index/getUserGroups:getUserGroups": {
      "description": "Provides a datasource to retrieve all the user groups.\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as nutanix from \"@pierskarsenbarg/nutanix\";\n\nconst usergroups = nutanix.getUserGroups({});\n```\n```python\nimport pulumi\nimport pulumi_nutanix as nutanix\n\nusergroups = nutanix.get_user_groups()\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Nutanix = Pulumi.Nutanix;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var usergroups = Nutanix.GetUserGroups.Invoke();\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pierskarsenbarg/pulumi-nutanix/sdk/go/nutanix\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := nutanix.LookupUserGroups(ctx, \u0026nutanix.LookupUserGroupsArgs{}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.nutanix.NutanixFunctions;\nimport com.pulumi.nutanix.inputs.GetUserGroupsArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var usergroups = NutanixFunctions.getUserGroups(GetUserGroupsArgs.builder()\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  usergroups:\n    fn::invoke:\n      function: nutanix:getUserGroups\n      arguments: {}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
      "inputs": {
        "description": "A collection of arguments for invoking getUserGroups.\n",
        "properties": {
          "metadatas": {
            "type": "array",
            "items": {
              "$ref": "#/types/nutanix:index%2FgetUserGroupsMetadata:getUserGroupsMetadata"
            },
            "description": "- The user group kind metadata.\n"
          }
        },
        "type": "object"
      },
      "outputs": {
        "description": "A collection of values returned by getUserGroups.\n",
        "properties": {
          "apiVersion": {
            "type": "string"
          },
          "entities": {
            "items": {
              "$ref": "#/types/nutanix:index%2FgetUserGroupsEntity:getUserGroupsEntity"
            },
            "type": "array"
          },
          "id": {
            "description": "The provider-assigned unique ID for this managed resource.",
            "type": "string"
          },
          "metadatas": {
            "items": {
              "$ref": "#/types/nutanix:index%2FgetUserGroupsMetadata:getUserGroupsMetadata"
            },
            "type": "array"
          }
        },
        "required": [
          "apiVersion",
          "entities",
          "id",
          "metadatas"
        ],
        "type": "object"
      }
    },
    "nutanix:index/getUserGroupsV2:getUserGroupsV2": {
      "description": "Provides a datasource to retrieve all the user groups.\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as nutanix from \"@pierskarsenbarg/nutanix\";\n\nconst user_groups = nutanix.getUserGroupsV2({});\n```\n```python\nimport pulumi\nimport pulumi_nutanix as nutanix\n\nuser_groups = nutanix.get_user_groups_v2()\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Nutanix = Pulumi.Nutanix;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var user_groups = Nutanix.GetUserGroupsV2.Invoke();\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pierskarsenbarg/pulumi-nutanix/sdk/go/nutanix\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := nutanix.LookupUserGroupsV2(ctx, \u0026nutanix.LookupUserGroupsV2Args{}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.nutanix.NutanixFunctions;\nimport com.pulumi.nutanix.inputs.GetUserGroupsV2Args;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var user-groups = NutanixFunctions.getUserGroupsV2(GetUserGroupsV2Args.builder()\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  user-groups:\n    fn::invoke:\n      function: nutanix:getUserGroupsV2\n      arguments: {}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n##  Argument Reference\n\nThe following arguments are supported:\n\n* \u003cspan pulumi-lang-nodejs=\"`page`\" pulumi-lang-dotnet=\"`Page`\" pulumi-lang-go=\"`page`\" pulumi-lang-python=\"`page`\" pulumi-lang-yaml=\"`page`\" pulumi-lang-java=\"`page`\"\u003e`page`\u003c/span\u003e: - A URL query parameter that specifies the page number of the result set. It must be a positive integer between 0 and the maximum number of pages that are available for that resource. Any number out of this range might lead to no results.\n* \u003cspan pulumi-lang-nodejs=\"`limit`\" pulumi-lang-dotnet=\"`Limit`\" pulumi-lang-go=\"`limit`\" pulumi-lang-python=\"`limit`\" pulumi-lang-yaml=\"`limit`\" pulumi-lang-java=\"`limit`\"\u003e`limit`\u003c/span\u003e : A URL query parameter that specifies the total number of records returned in the result set. Must be a positive integer between 1 and 100. Any number out of this range will lead to a validation error. If the limit is not provided, a default value of 50 records will be returned in the result set.\n* \u003cspan pulumi-lang-nodejs=\"`filter`\" pulumi-lang-dotnet=\"`Filter`\" pulumi-lang-go=\"`filter`\" pulumi-lang-python=\"`filter`\" pulumi-lang-yaml=\"`filter`\" pulumi-lang-java=\"`filter`\"\u003e`filter`\u003c/span\u003e :A URL query parameter that allows clients to filter a collection of resources. The expression specified with \\$filter is evaluated for each resource in the collection, and only items where the expression evaluates to true are included in the response. Expression specified with the \\$filter must conform to the OData V4.01 URL conventions. For example, filter '\\$filter=name eq 'karbon-ntnx-1.0' would filter the result on cluster name 'karbon-ntnx1.0', filter '\\$filter=startswith(name, 'C')' would filter on cluster name starting with 'C'. The filter can be applied to the following fields:\n  - createdBy\n  - distinguishedName\n  - extId\n  - groupType\n  - idpId\n  - name\n* \u003cspan pulumi-lang-nodejs=\"`orderby`\" pulumi-lang-dotnet=\"`Orderby`\" pulumi-lang-go=\"`orderby`\" pulumi-lang-python=\"`orderby`\" pulumi-lang-yaml=\"`orderby`\" pulumi-lang-java=\"`orderby`\"\u003e`orderby`\u003c/span\u003e : A URL query parameter that allows clients to specify the sort criteria for the returned list of objects. Resources can be sorted in ascending order using asc or descending order using desc. If asc or desc are not specified, the resources will be sorted in ascending order by default. For example, '\\$orderby=templateName desc' would get all templates sorted by templateName in descending order. The orderby can be applied to the following fields:\n  - createdTime\n  - distinguishedName\n  - groupType\n  - lastUpdatedTime\n  - name\n* \u003cspan pulumi-lang-nodejs=\"`select`\" pulumi-lang-dotnet=\"`Select`\" pulumi-lang-go=\"`select`\" pulumi-lang-python=\"`select`\" pulumi-lang-yaml=\"`select`\" pulumi-lang-java=\"`select`\"\u003e`select`\u003c/span\u003e : A URL query parameter that allows clients to request a specific set of properties for each entity or complex type. Expression specified with the \\$select must conform to the OData V4.01 URL conventions. If a \\$select expression consists of a single select item that is an asterisk (i.e., *), then all properties on the matching resource will be returned.The select can be applied to the following fields:\n  - createdBy\n  - createdTime\n  - distinguishedName\n  - extId\n  - groupType\n  - idpId\n  - lastUpdatedTime\n  - links\n  - name\n  - tenantId\n",
      "inputs": {
        "description": "A collection of arguments for invoking getUserGroupsV2.\n",
        "properties": {
          "filter": {
            "type": "string"
          },
          "limit": {
            "type": "integer"
          },
          "orderBy": {
            "type": "string"
          },
          "page": {
            "type": "integer"
          },
          "select": {
            "type": "string"
          }
        },
        "type": "object"
      },
      "outputs": {
        "description": "A collection of values returned by getUserGroupsV2.\n",
        "properties": {
          "filter": {
            "type": "string"
          },
          "id": {
            "description": "The provider-assigned unique ID for this managed resource.",
            "type": "string"
          },
          "limit": {
            "type": "integer"
          },
          "orderBy": {
            "type": "string"
          },
          "page": {
            "type": "integer"
          },
          "select": {
            "type": "string"
          },
          "userGroups": {
            "description": "List all User Group(s).\n",
            "items": {
              "$ref": "#/types/nutanix:index%2FgetUserGroupsV2UserGroup:getUserGroupsV2UserGroup"
            },
            "type": "array"
          }
        },
        "required": [
          "id",
          "userGroups"
        ],
        "type": "object"
      }
    },
    "nutanix:index/getUserKeyV2:getUserKeyV2": {
      "description": "Fetches the requested key through the provided external identifier for the user and the key.\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as nutanix from \"@pierskarsenbarg/nutanix\";\n\n// Get key\nconst getKey = nutanix.getUserKeyV2({\n    userExtId: \"\u003cSERVICE_ACCOUNT_UUID\u003e\",\n    extId: \"\u003cUSER_KEY_UUID\u003e\",\n});\n```\n```python\nimport pulumi\nimport pulumi_nutanix as nutanix\n\n# Get key\nget_key = nutanix.get_user_key_v2(user_ext_id=\"\u003cSERVICE_ACCOUNT_UUID\u003e\",\n    ext_id=\"\u003cUSER_KEY_UUID\u003e\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Nutanix = Pulumi.Nutanix;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    // Get key\n    var getKey = Nutanix.GetUserKeyV2.Invoke(new()\n    {\n        UserExtId = \"\u003cSERVICE_ACCOUNT_UUID\u003e\",\n        ExtId = \"\u003cUSER_KEY_UUID\u003e\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pierskarsenbarg/pulumi-nutanix/sdk/go/nutanix\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t// Get key\n\t\t_, err := nutanix.LookupUserKeyV2(ctx, \u0026nutanix.LookupUserKeyV2Args{\n\t\t\tUserExtId: \"\u003cSERVICE_ACCOUNT_UUID\u003e\",\n\t\t\tExtId:     \"\u003cUSER_KEY_UUID\u003e\",\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.nutanix.NutanixFunctions;\nimport com.pulumi.nutanix.inputs.GetUserKeyV2Args;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        // Get key\n        final var getKey = NutanixFunctions.getUserKeyV2(GetUserKeyV2Args.builder()\n            .userExtId(\"\u003cSERVICE_ACCOUNT_UUID\u003e\")\n            .extId(\"\u003cUSER_KEY_UUID\u003e\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  # Get key\n  getKey:\n    fn::invoke:\n      function: nutanix:getUserKeyV2\n      arguments:\n        userExtId: \u003cSERVICE_ACCOUNT_UUID\u003e\n        extId: \u003cUSER_KEY_UUID\u003e\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n##  Argument Reference\n\nThe following arguments are supported:\n\n* \u003cspan pulumi-lang-nodejs=\"`userExtId`\" pulumi-lang-dotnet=\"`UserExtId`\" pulumi-lang-go=\"`userExtId`\" pulumi-lang-python=\"`user_ext_id`\" pulumi-lang-yaml=\"`userExtId`\" pulumi-lang-java=\"`userExtId`\"\u003e`user_ext_id`\u003c/span\u003e: - ( Required ) External Identifier of the User.\n* \u003cspan pulumi-lang-nodejs=\"`extId`\" pulumi-lang-dotnet=\"`ExtId`\" pulumi-lang-go=\"`extId`\" pulumi-lang-python=\"`ext_id`\" pulumi-lang-yaml=\"`extId`\" pulumi-lang-java=\"`extId`\"\u003e`ext_id`\u003c/span\u003e: - ( Required ) External identifier of the key.\n",
      "inputs": {
        "description": "A collection of arguments for invoking getUserKeyV2.\n",
        "properties": {
          "description": {
            "type": "string",
            "description": "- Brief description of the key.\n"
          },
          "extId": {
            "type": "string",
            "description": "The External Identifier of the User Group.\n"
          },
          "userExtId": {
            "type": "string"
          }
        },
        "type": "object",
        "required": [
          "extId",
          "userExtId"
        ]
      },
      "outputs": {
        "description": "A collection of values returned by getUserKeyV2.\n",
        "properties": {
          "assignedTo": {
            "description": "- External client to whom the given key is allocated.\n",
            "type": "string"
          },
          "createdBy": {
            "description": "- User or service who created the key.\n",
            "type": "string"
          },
          "createdTime": {
            "description": "- The creation time of the key.\n",
            "type": "string"
          },
          "creationType": {
            "description": "- The creation mechanism of this entity.\n",
            "type": "string"
          },
          "description": {
            "description": "- Brief description of the key.\n",
            "type": "string"
          },
          "expiryTime": {
            "description": "- The time when the key will expire.\n",
            "type": "string"
          },
          "extId": {
            "description": "The External Identifier of the User Group.\n",
            "type": "string"
          },
          "id": {
            "description": "The provider-assigned unique ID for this managed resource.",
            "type": "string"
          },
          "keyDetails": {
            "description": "- Details specific to type of the key.\n",
            "items": {
              "$ref": "#/types/nutanix:index%2FgetUserKeyV2KeyDetail:getUserKeyV2KeyDetail"
            },
            "type": "array"
          },
          "keyType": {
            "description": "- The type of key.\n",
            "type": "string"
          },
          "lastUpdatedBy": {
            "description": "- User who updated the key.\n",
            "type": "string"
          },
          "lastUpdatedTime": {
            "description": "- The time when the key was updated.\n",
            "type": "string"
          },
          "lastUsedTime": {
            "description": "- The time when the key was last used.\n",
            "type": "string"
          },
          "links": {
            "description": "- A HATEOAS style link for the response. Each link contains a user-friendly name identifying the link and an address for retrieving the particular resource.\n",
            "items": {
              "$ref": "#/types/nutanix:index%2FgetUserKeyV2Link:getUserKeyV2Link"
            },
            "type": "array"
          },
          "name": {
            "description": "- Identifier for the key in the form of a name.\n",
            "type": "string"
          },
          "status": {
            "description": "- The status of the key.\n",
            "type": "string"
          },
          "tenantId": {
            "description": "A globally unique identifier that represents the tenant that owns this entity. The system automatically assigns it, and it and is immutable from an API consumer perspective (some use cases may cause this Id to change - For instance, a use case may require the transfer of ownership of the entity, but these cases are handled automatically on the server).\n",
            "type": "string"
          },
          "userExtId": {
            "type": "string"
          }
        },
        "required": [
          "assignedTo",
          "createdBy",
          "createdTime",
          "creationType",
          "expiryTime",
          "extId",
          "id",
          "keyDetails",
          "keyType",
          "lastUpdatedBy",
          "lastUpdatedTime",
          "lastUsedTime",
          "links",
          "name",
          "status",
          "tenantId",
          "userExtId"
        ],
        "type": "object"
      }
    },
    "nutanix:index/getUserKeysV2:getUserKeysV2": {
      "description": "List all keys identified by the external identifier of a user.\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as nutanix from \"@pierskarsenbarg/nutanix\";\n\n// Data source to fetch the list of keys\nconst getKeys = nutanix.getUserKeysV2({\n    userExtId: \"\u003cSERVICE_ACCOUNT_UUID\u003e\",\n});\n// Data source to fetch the key by name\nconst getKeysFilter = nutanix.getUserKeysV2({\n    userExtId: \"\u003cSERVICE_ACCOUNT_UUID\u003e\",\n    filter: \"name eq '\u003cNAME_OF_API_KEY\u003e'\",\n});\n```\n```python\nimport pulumi\nimport pulumi_nutanix as nutanix\n\n# Data source to fetch the list of keys\nget_keys = nutanix.get_user_keys_v2(user_ext_id=\"\u003cSERVICE_ACCOUNT_UUID\u003e\")\n# Data source to fetch the key by name\nget_keys_filter = nutanix.get_user_keys_v2(user_ext_id=\"\u003cSERVICE_ACCOUNT_UUID\u003e\",\n    filter=\"name eq '\u003cNAME_OF_API_KEY\u003e'\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Nutanix = Pulumi.Nutanix;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    // Data source to fetch the list of keys\n    var getKeys = Nutanix.GetUserKeysV2.Invoke(new()\n    {\n        UserExtId = \"\u003cSERVICE_ACCOUNT_UUID\u003e\",\n    });\n\n    // Data source to fetch the key by name\n    var getKeysFilter = Nutanix.GetUserKeysV2.Invoke(new()\n    {\n        UserExtId = \"\u003cSERVICE_ACCOUNT_UUID\u003e\",\n        Filter = \"name eq '\u003cNAME_OF_API_KEY\u003e'\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pierskarsenbarg/pulumi-nutanix/sdk/go/nutanix\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t// Data source to fetch the list of keys\n\t\t_, err := nutanix.GetUserKeysV2(ctx, \u0026nutanix.GetUserKeysV2Args{\n\t\t\tUserExtId: \"\u003cSERVICE_ACCOUNT_UUID\u003e\",\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t// Data source to fetch the key by name\n\t\t_, err = nutanix.GetUserKeysV2(ctx, \u0026nutanix.GetUserKeysV2Args{\n\t\t\tUserExtId: \"\u003cSERVICE_ACCOUNT_UUID\u003e\",\n\t\t\tFilter:    pulumi.StringRef(\"name eq '\u003cNAME_OF_API_KEY\u003e'\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.nutanix.NutanixFunctions;\nimport com.pulumi.nutanix.inputs.GetUserKeysV2Args;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        // Data source to fetch the list of keys\n        final var getKeys = NutanixFunctions.getUserKeysV2(GetUserKeysV2Args.builder()\n            .userExtId(\"\u003cSERVICE_ACCOUNT_UUID\u003e\")\n            .build());\n\n        // Data source to fetch the key by name\n        final var getKeysFilter = NutanixFunctions.getUserKeysV2(GetUserKeysV2Args.builder()\n            .userExtId(\"\u003cSERVICE_ACCOUNT_UUID\u003e\")\n            .filter(\"name eq '\u003cNAME_OF_API_KEY\u003e'\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  # Data source to fetch the list of keys\n  getKeys:\n    fn::invoke:\n      function: nutanix:getUserKeysV2\n      arguments:\n        userExtId: \u003cSERVICE_ACCOUNT_UUID\u003e\n  # Data source to fetch the key by name\n  getKeysFilter:\n    fn::invoke:\n      function: nutanix:getUserKeysV2\n      arguments:\n        userExtId: \u003cSERVICE_ACCOUNT_UUID\u003e\n        filter: name eq '\u003cNAME_OF_API_KEY\u003e'\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n##  Argument Reference\n\nThe following arguments are supported:\n\n* \u003cspan pulumi-lang-nodejs=\"`userExtId`\" pulumi-lang-dotnet=\"`UserExtId`\" pulumi-lang-go=\"`userExtId`\" pulumi-lang-python=\"`user_ext_id`\" pulumi-lang-yaml=\"`userExtId`\" pulumi-lang-java=\"`userExtId`\"\u003e`user_ext_id`\u003c/span\u003e: - ( Required ) External Identifier of the User.\n* \u003cspan pulumi-lang-nodejs=\"`page`\" pulumi-lang-dotnet=\"`Page`\" pulumi-lang-go=\"`page`\" pulumi-lang-python=\"`page`\" pulumi-lang-yaml=\"`page`\" pulumi-lang-java=\"`page`\"\u003e`page`\u003c/span\u003e:- (Optional)A URL query parameter that specifies the page number of the result set. It must be a positive integer between 0 and the maximum number of pages that are available for that resource. Any number out of this range might lead to no results.\n* \u003cspan pulumi-lang-nodejs=\"`limit`\" pulumi-lang-dotnet=\"`Limit`\" pulumi-lang-go=\"`limit`\" pulumi-lang-python=\"`limit`\" pulumi-lang-yaml=\"`limit`\" pulumi-lang-java=\"`limit`\"\u003e`limit`\u003c/span\u003e:- (Optional) A URL query parameter that specifies the total number of records returned in the result set. Must be a positive integer between 1 and 100. Any number out of this range will lead to a validation error. If the limit is not provided, a default value of 50 records will be returned in the result set.\n* \u003cspan pulumi-lang-nodejs=\"`filter`\" pulumi-lang-dotnet=\"`Filter`\" pulumi-lang-go=\"`filter`\" pulumi-lang-python=\"`filter`\" pulumi-lang-yaml=\"`filter`\" pulumi-lang-java=\"`filter`\"\u003e`filter`\u003c/span\u003e :- (Optional) A URL query parameter that allows clients to filter a collection of resources. The expression specified with \\$filter is evaluated for each resource in the collection, and only items where the expression evaluates to true are included in the response. Expression specified with the \\$filter must conform to the OData V4.01 URL conventions. For example, filter '\\$filter=name eq 'karbon-ntnx-1.0' would filter the result on cluster name 'karbon-ntnx1.0', filter '\\$filter=startswith(name, 'C')' would filter on cluster name starting with 'C'. The filter can be applied to the following fields:\n    * assignedTo\n    * creationType\n    * extId\n    * keyType\n    * lastUpdatedBy\n    * name\n    * status\n    * tenantId  \n* \u003cspan pulumi-lang-nodejs=\"`orderby`\" pulumi-lang-dotnet=\"`Orderby`\" pulumi-lang-go=\"`orderby`\" pulumi-lang-python=\"`orderby`\" pulumi-lang-yaml=\"`orderby`\" pulumi-lang-java=\"`orderby`\"\u003e`orderby`\u003c/span\u003e :- (Optional) A URL query parameter that allows clients to specify the sort criteria for the returned list of objects. Resources can be sorted in ascending order using asc or descending order using desc. If asc or desc are not specified, the resources will be sorted in ascending order by default. For example, '\\$orderby=templateName desc' would get all templates sorted by templateName in descending order. The orderby can be applied to the following fields:     * createdBy\n    * assignedTo\n    * createdBy\n    * createdTime\n    * expiryTime\n    * keyType\n    * lastUpdatedTime\n    * lastUsedTime\n    * name\n    * status\n    * tenantId\n* \u003cspan pulumi-lang-nodejs=\"`select`\" pulumi-lang-dotnet=\"`Select`\" pulumi-lang-go=\"`select`\" pulumi-lang-python=\"`select`\" pulumi-lang-yaml=\"`select`\" pulumi-lang-java=\"`select`\"\u003e`select`\u003c/span\u003e :- (Optional) A URL query parameter that allows clients to request a specific set of properties for each entity or complex type. Expression specified with the \\$select must conform to the OData V4.01 URL conventions. If a \\$select expression consists of a single select item that is an asterisk (i.e., *), then all properties on the matching resource will be returned. following fields:\n    * assignedTo\n    * createdBy\n    * createdTime\n    * creationType\n    * description\n    * expiryTime\n    * extId\n    * keyType\n    * lastUpdatedBy\n    * lastUpdatedTime\n    * lastUsedTime\n    * name\n    * status\n    * tenantId\n",
      "inputs": {
        "description": "A collection of arguments for invoking getUserKeysV2.\n",
        "properties": {
          "filter": {
            "type": "string"
          },
          "limit": {
            "type": "integer"
          },
          "orderBy": {
            "type": "string"
          },
          "page": {
            "type": "integer"
          },
          "select": {
            "type": "string"
          },
          "userExtId": {
            "type": "string"
          }
        },
        "type": "object",
        "required": [
          "userExtId"
        ]
      },
      "outputs": {
        "description": "A collection of values returned by getUserKeysV2.\n",
        "properties": {
          "filter": {
            "type": "string"
          },
          "id": {
            "description": "The provider-assigned unique ID for this managed resource.",
            "type": "string"
          },
          "keys": {
            "items": {
              "$ref": "#/types/nutanix:index%2FgetUserKeysV2Key:getUserKeysV2Key"
            },
            "type": "array"
          },
          "limit": {
            "type": "integer"
          },
          "orderBy": {
            "type": "string"
          },
          "page": {
            "type": "integer"
          },
          "select": {
            "type": "string"
          },
          "userExtId": {
            "type": "string"
          }
        },
        "required": [
          "id",
          "keys",
          "userExtId"
        ],
        "type": "object"
      }
    },
    "nutanix:index/getUserV2:getUserV2": {
      "description": "Provides a datasource to View a User.\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as nutanix from \"@pierskarsenbarg/nutanix\";\n\nconst get_user = nutanix.getUserV2({\n    extId: \"d3a3232a-9055-4740-b54f-b21a33524565\",\n});\n```\n```python\nimport pulumi\nimport pulumi_nutanix as nutanix\n\nget_user = nutanix.get_user_v2(ext_id=\"d3a3232a-9055-4740-b54f-b21a33524565\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Nutanix = Pulumi.Nutanix;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var get_user = Nutanix.GetUserV2.Invoke(new()\n    {\n        ExtId = \"d3a3232a-9055-4740-b54f-b21a33524565\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pierskarsenbarg/pulumi-nutanix/sdk/go/nutanix\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := nutanix.GetUserV2(ctx, \u0026nutanix.GetUserV2Args{\n\t\t\tExtId: \"d3a3232a-9055-4740-b54f-b21a33524565\",\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.nutanix.NutanixFunctions;\nimport com.pulumi.nutanix.inputs.GetUserV2Args;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var get-user = NutanixFunctions.getUserV2(GetUserV2Args.builder()\n            .extId(\"d3a3232a-9055-4740-b54f-b21a33524565\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  get-user:\n    fn::invoke:\n      function: nutanix:getUserV2\n      arguments:\n        extId: d3a3232a-9055-4740-b54f-b21a33524565\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n##  Argument Reference\n\nThe following arguments are supported:\n\n* \u003cspan pulumi-lang-nodejs=\"`extId`\" pulumi-lang-dotnet=\"`ExtId`\" pulumi-lang-go=\"`extId`\" pulumi-lang-python=\"`ext_id`\" pulumi-lang-yaml=\"`extId`\" pulumi-lang-java=\"`extId`\"\u003e`ext_id`\u003c/span\u003e: -(Required) External Identifier of the User.\n",
      "inputs": {
        "description": "A collection of arguments for invoking getUserV2.\n",
        "properties": {
          "extId": {
            "type": "string",
            "description": "- A globally unique identifier of an instance that is suitable for external consumption.\n"
          }
        },
        "type": "object",
        "required": [
          "extId"
        ]
      },
      "outputs": {
        "description": "A collection of values returned by getUserV2.\n",
        "properties": {
          "additionalAttributes": {
            "description": "-  Any additional attribute for the User.\n",
            "items": {
              "$ref": "#/types/nutanix:index%2FgetUserV2AdditionalAttribute:getUserV2AdditionalAttribute"
            },
            "type": "array"
          },
          "bucketsAccessKeys": {
            "description": "- Bucket Access Keys for the User.\n",
            "items": {
              "$ref": "#/types/nutanix:index%2FgetUserV2BucketsAccessKey:getUserV2BucketsAccessKey"
            },
            "type": "array"
          },
          "createdBy": {
            "description": "- User or Service who created the User.\n",
            "type": "string"
          },
          "createdTime": {
            "description": "- Creation time for the Bucket Access Key.\n",
            "type": "string"
          },
          "description": {
            "description": "- Description of the user.\n",
            "type": "string"
          },
          "displayName": {
            "description": "- Display name for the User.\n",
            "type": "string"
          },
          "emailId": {
            "description": "- Email Id for the User.\n",
            "type": "string"
          },
          "extId": {
            "description": "- A globally unique identifier of an instance that is suitable for external consumption.\n",
            "type": "string"
          },
          "firstName": {
            "description": "- First name for the User.\n",
            "type": "string"
          },
          "id": {
            "description": "The provider-assigned unique ID for this managed resource.",
            "type": "string"
          },
          "idpId": {
            "description": "- Identifier of the IDP for the User.\n",
            "type": "string"
          },
          "isForceResetPassword": {
            "description": "- Flag to force the User to reset password.\n",
            "type": "boolean"
          },
          "lastLoginTime": {
            "description": "- Last successful logged in time for the User.\n",
            "type": "string"
          },
          "lastName": {
            "description": "- Last name for the User.\n",
            "type": "string"
          },
          "lastUpdatedTime": {
            "description": "- Last updated time of the User.\n",
            "type": "string"
          },
          "links": {
            "description": "- A HATEOAS style link for the response. Each link contains a user-friendly name identifying the link and an address for retrieving the particular resource.\n",
            "items": {
              "$ref": "#/types/nutanix:index%2FgetUserV2Link:getUserV2Link"
            },
            "type": "array"
          },
          "locale": {
            "description": "- Default locale for the User.\n",
            "type": "string"
          },
          "middleInitial": {
            "description": "- Middle name for the User.\n",
            "type": "string"
          },
          "password": {
            "secret": true,
            "type": "string"
          },
          "region": {
            "description": "- Default Region for the User.\n",
            "type": "string"
          },
          "status": {
            "description": "- Status of the User. `ACTIVE`: Denotes that the local User is active. `INACTIVE`: Denotes that the local User is inactive and needs to be reactivated.\n",
            "type": "string"
          },
          "userType": {
            "description": "- Enum: `$UNKNOWN` `$REDACTED` `LOCAL` `SAML` `LDAP` `EXTERNAL`\nType of the User.\n",
            "type": "string"
          },
          "username": {
            "description": "- Identifier for the User in the form an email address.\n",
            "type": "string"
          }
        },
        "required": [
          "additionalAttributes",
          "bucketsAccessKeys",
          "createdBy",
          "createdTime",
          "description",
          "displayName",
          "emailId",
          "extId",
          "firstName",
          "id",
          "idpId",
          "isForceResetPassword",
          "lastLoginTime",
          "lastName",
          "lastUpdatedTime",
          "links",
          "locale",
          "middleInitial",
          "password",
          "region",
          "status",
          "userType",
          "username"
        ],
        "type": "object"
      }
    },
    "nutanix:index/getUsers:getUsers": {
      "description": "Provides a datasource to retrieve all the users.\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as nutanix from \"@pierskarsenbarg/nutanix\";\n\nconst user = new nutanix.User(\"user\", {directoryServiceUser: {\n    userPrincipalName: \"test-user@ntnxlab.local\",\n    directoryServiceReference: {\n        uuid: \"\u003cdirectory-service-uuid\u003e\",\n    },\n}});\nconst users = nutanix.getUser({});\n```\n```python\nimport pulumi\nimport pulumi_nutanix as nutanix\n\nuser = nutanix.User(\"user\", directory_service_user={\n    \"user_principal_name\": \"test-user@ntnxlab.local\",\n    \"directory_service_reference\": {\n        \"uuid\": \"\u003cdirectory-service-uuid\u003e\",\n    },\n})\nusers = nutanix.get_user()\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Nutanix = PiersKarsenbarg.Nutanix;\nusing Nutanix = Pulumi.Nutanix;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var user = new Nutanix.User(\"user\", new()\n    {\n        DirectoryServiceUser = new Nutanix.Inputs.UserDirectoryServiceUserArgs\n        {\n            UserPrincipalName = \"test-user@ntnxlab.local\",\n            DirectoryServiceReference = new Nutanix.Inputs.UserDirectoryServiceUserDirectoryServiceReferenceArgs\n            {\n                Uuid = \"\u003cdirectory-service-uuid\u003e\",\n            },\n        },\n    });\n\n    var users = Nutanix.GetUser.Invoke();\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pierskarsenbarg/pulumi-nutanix/sdk/go/nutanix\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := nutanix.NewUser(ctx, \"user\", \u0026nutanix.UserArgs{\n\t\t\tDirectoryServiceUser: \u0026nutanix.UserDirectoryServiceUserArgs{\n\t\t\t\tUserPrincipalName: pulumi.String(\"test-user@ntnxlab.local\"),\n\t\t\t\tDirectoryServiceReference: \u0026nutanix.UserDirectoryServiceUserDirectoryServiceReferenceArgs{\n\t\t\t\t\tUuid: pulumi.String(\"\u003cdirectory-service-uuid\u003e\"),\n\t\t\t\t},\n\t\t\t},\n\t\t})\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = nutanix.LookupUser(ctx, \u0026nutanix.LookupUserArgs{}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.nutanix.User;\nimport com.pulumi.nutanix.UserArgs;\nimport com.pulumi.nutanix.inputs.UserDirectoryServiceUserArgs;\nimport com.pulumi.nutanix.inputs.UserDirectoryServiceUserDirectoryServiceReferenceArgs;\nimport com.pulumi.nutanix.NutanixFunctions;\nimport com.pulumi.nutanix.inputs.GetUserArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        var user = new User(\"user\", UserArgs.builder()\n            .directoryServiceUser(UserDirectoryServiceUserArgs.builder()\n                .userPrincipalName(\"test-user@ntnxlab.local\")\n                .directoryServiceReference(UserDirectoryServiceUserDirectoryServiceReferenceArgs.builder()\n                    .uuid(\"\u003cdirectory-service-uuid\u003e\")\n                    .build())\n                .build())\n            .build());\n\n        final var users = NutanixFunctions.getUser(GetUserArgs.builder()\n            .build());\n\n    }\n}\n```\n```yaml\nresources:\n  user:\n    type: nutanix:User\n    properties:\n      directoryServiceUser:\n        userPrincipalName: test-user@ntnxlab.local\n        directoryServiceReference:\n          uuid: \u003cdirectory-service-uuid\u003e\nvariables:\n  users:\n    fn::invoke:\n      function: nutanix:getUser\n      arguments: {}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
      "inputs": {
        "description": "A collection of arguments for invoking getUsers.\n",
        "properties": {
          "metadatas": {
            "type": "array",
            "items": {
              "$ref": "#/types/nutanix:index%2FgetUsersMetadata:getUsersMetadata"
            },
            "description": "- The user kind metadata.\n"
          }
        },
        "type": "object"
      },
      "outputs": {
        "description": "A collection of values returned by getUsers.\n",
        "properties": {
          "apiVersion": {
            "description": "The version of the API.\n",
            "type": "string"
          },
          "entities": {
            "description": "List of Users\n",
            "items": {
              "$ref": "#/types/nutanix:index%2FgetUsersEntity:getUsersEntity"
            },
            "type": "array"
          },
          "id": {
            "description": "The provider-assigned unique ID for this managed resource.",
            "type": "string"
          },
          "metadatas": {
            "description": "- The user kind metadata.\n",
            "items": {
              "$ref": "#/types/nutanix:index%2FgetUsersMetadata:getUsersMetadata"
            },
            "type": "array"
          }
        },
        "required": [
          "apiVersion",
          "entities",
          "id",
          "metadatas"
        ],
        "type": "object"
      }
    },
    "nutanix:index/getUsersV2:getUsersV2": {
      "description": "Provides a datasource to retrieve all User(s).\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as nutanix from \"@pierskarsenbarg/nutanix\";\n\n// list all users\nconst list_users = nutanix.getUsersV2({});\nconst filtered_users = nutanix.getUsersV2({\n    filter: \"username eq 'username-example'\",\n});\n// list users of user_type SERVICE_ACCOUNT\nconst listServiceAccount = nutanix.getUsersV2({\n    filter: \"userType eq Schema.Enums.UserType'SERVICE_ACCOUNT'\",\n});\n```\n```python\nimport pulumi\nimport pulumi_nutanix as nutanix\n\n# list all users\nlist_users = nutanix.get_users_v2()\nfiltered_users = nutanix.get_users_v2(filter=\"username eq 'username-example'\")\n# list users of user_type SERVICE_ACCOUNT\nlist_service_account = nutanix.get_users_v2(filter=\"userType eq Schema.Enums.UserType'SERVICE_ACCOUNT'\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Nutanix = Pulumi.Nutanix;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    // list all users\n    var list_users = Nutanix.GetUsersV2.Invoke();\n\n    var filtered_users = Nutanix.GetUsersV2.Invoke(new()\n    {\n        Filter = \"username eq 'username-example'\",\n    });\n\n    // list users of user_type SERVICE_ACCOUNT\n    var listServiceAccount = Nutanix.GetUsersV2.Invoke(new()\n    {\n        Filter = \"userType eq Schema.Enums.UserType'SERVICE_ACCOUNT'\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pierskarsenbarg/pulumi-nutanix/sdk/go/nutanix\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t// list all users\n\t\t_, err := nutanix.LookupUsersV2(ctx, \u0026nutanix.LookupUsersV2Args{}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t_, err = nutanix.LookupUsersV2(ctx, \u0026nutanix.LookupUsersV2Args{\n\t\t\tFilter: pulumi.StringRef(\"username eq 'username-example'\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t// list users of user_type SERVICE_ACCOUNT\n\t\t_, err = nutanix.LookupUsersV2(ctx, \u0026nutanix.LookupUsersV2Args{\n\t\t\tFilter: pulumi.StringRef(\"userType eq Schema.Enums.UserType'SERVICE_ACCOUNT'\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.nutanix.NutanixFunctions;\nimport com.pulumi.nutanix.inputs.GetUsersV2Args;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        // list all users\n        final var list-users = NutanixFunctions.getUsersV2(GetUsersV2Args.builder()\n            .build());\n\n        final var filtered-users = NutanixFunctions.getUsersV2(GetUsersV2Args.builder()\n            .filter(\"username eq 'username-example'\")\n            .build());\n\n        // list users of user_type SERVICE_ACCOUNT\n        final var listServiceAccount = NutanixFunctions.getUsersV2(GetUsersV2Args.builder()\n            .filter(\"userType eq Schema.Enums.UserType'SERVICE_ACCOUNT'\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  # list all users\n  list-users:\n    fn::invoke:\n      function: nutanix:getUsersV2\n      arguments: {}\n  filtered-users:\n    fn::invoke:\n      function: nutanix:getUsersV2\n      arguments:\n        filter: username eq 'username-example'\n  # list users of user_type SERVICE_ACCOUNT\n  listServiceAccount:\n    fn::invoke:\n      function: nutanix:getUsersV2\n      arguments:\n        filter: userType eq Schema.Enums.UserType'SERVICE_ACCOUNT'\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n##  Argument Reference\n\nThe following arguments are supported:\n\n* \u003cspan pulumi-lang-nodejs=\"`page`\" pulumi-lang-dotnet=\"`Page`\" pulumi-lang-go=\"`page`\" pulumi-lang-python=\"`page`\" pulumi-lang-yaml=\"`page`\" pulumi-lang-java=\"`page`\"\u003e`page`\u003c/span\u003e: - A URL query parameter that specifies the page number of the result set. It must be a positive integer between 0 and the maximum number of pages that are available for that resource. Any number out of this range might lead to no results.\n* \u003cspan pulumi-lang-nodejs=\"`limit`\" pulumi-lang-dotnet=\"`Limit`\" pulumi-lang-go=\"`limit`\" pulumi-lang-python=\"`limit`\" pulumi-lang-yaml=\"`limit`\" pulumi-lang-java=\"`limit`\"\u003e`limit`\u003c/span\u003e : A URL query parameter that specifies the total number of records returned in the result set. Must be a positive integer between 1 and 100. Any number out of this range will lead to a validation error. If the limit is not provided, a default value of 50 records will be returned in the result set.\n* \u003cspan pulumi-lang-nodejs=\"`filter`\" pulumi-lang-dotnet=\"`Filter`\" pulumi-lang-go=\"`filter`\" pulumi-lang-python=\"`filter`\" pulumi-lang-yaml=\"`filter`\" pulumi-lang-java=\"`filter`\"\u003e`filter`\u003c/span\u003e :A URL query parameter that allows clients to filter a collection of resources. The expression specified with \\$filter is evaluated for each resource in the collection, and only items where the expression evaluates to true are included in the response. Expression specified with the \\$filter must conform to the OData V4.01 URL conventions. For example, filter '\\$filter=name eq 'karbon-ntnx-1.0' would filter the result on cluster name 'karbon-ntnx1.0', filter '\\$filter=startswith(name, 'C')' would filter on cluster name starting with 'C'. The filter can be applied to the following fields:\n    * createdBy\n    * displayName\n    * emailId\n    * extId\n    * firstName\n    * idpId\n    * lastName\n    * lastUpdatedBy\n    * status\n    * userType\n    * username\n* \u003cspan pulumi-lang-nodejs=\"`orderby`\" pulumi-lang-dotnet=\"`Orderby`\" pulumi-lang-go=\"`orderby`\" pulumi-lang-python=\"`orderby`\" pulumi-lang-yaml=\"`orderby`\" pulumi-lang-java=\"`orderby`\"\u003e`orderby`\u003c/span\u003e : A URL query parameter that allows clients to specify the sort criteria for the returned list of objects. Resources can be sorted in ascending order using asc or descending order using desc. If asc or desc are not specified, the resources will be sorted in ascending order by default. For example, '\\$orderby=templateName desc' would get all templates sorted by templateName in descending order. The orderby can be applied to the following fields:     * createdBy\n    * createdTime\n    * displayName\n    * emailId\n    * extId\n    * firstName\n    * lastLoginTime\n    * lastName\n    * lastUpdatedTime\n    * userType\n    * username\n* \u003cspan pulumi-lang-nodejs=\"`select`\" pulumi-lang-dotnet=\"`Select`\" pulumi-lang-go=\"`select`\" pulumi-lang-python=\"`select`\" pulumi-lang-yaml=\"`select`\" pulumi-lang-java=\"`select`\"\u003e`select`\u003c/span\u003e : A URL query parameter that allows clients to request a specific set of properties for each entity or complex type. Expression specified with the \\$select must conform to the OData V4.01 URL conventions. If a \\$select expression consists of a single select item that is an asterisk (i.e., *), then all properties on the matching resource will be returned. following fields:\n    * additionalAttributes\n    * bucketsAccessKeys\n    * createdBy\n    * createdTime\n    * displayName\n    * emailId\n    * extId\n    * firstName\n    * idpId\n    * isForceResetPasswordEnabled\n    * lastLoginTime\n    * lastName\n    * lastUpdatedBy\n    * lastUpdatedTime\n    * links\n    * locale\n    * middleInitial\n    * region\n    * status\n    * tenantId\n    * userType\n    * username\n",
      "inputs": {
        "description": "A collection of arguments for invoking getUsersV2.\n",
        "properties": {
          "filter": {
            "type": "string"
          },
          "limit": {
            "type": "integer"
          },
          "orderBy": {
            "type": "string"
          },
          "page": {
            "type": "integer"
          },
          "select": {
            "type": "string"
          }
        },
        "type": "object"
      },
      "outputs": {
        "description": "A collection of values returned by getUsersV2.\n",
        "properties": {
          "filter": {
            "type": "string"
          },
          "id": {
            "description": "The provider-assigned unique ID for this managed resource.",
            "type": "string"
          },
          "limit": {
            "type": "integer"
          },
          "orderBy": {
            "type": "string"
          },
          "page": {
            "type": "integer"
          },
          "select": {
            "type": "string"
          },
          "users": {
            "description": "List all User(s).\n",
            "items": {
              "$ref": "#/types/nutanix:index%2FgetUsersV2User:getUsersV2User"
            },
            "type": "array"
          }
        },
        "required": [
          "id",
          "users"
        ],
        "type": "object"
      }
    },
    "nutanix:index/getVirtualMachine:getVirtualMachine": {
      "description": "Describes a Virtual Machine\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```yaml\nresources:\n  vm1:\n    type: nutanix:VirtualMachine\n    properties:\n      name: test-dou-%d\n      clusterUuid: ${clusters.entities[0].metadata.uuid}\n      numVcpusPerSocket: 1\n      numSockets: 1\n      memorySizeMib: 2048\n      powerState: ON\nvariables:\n  clusters:\n    fn::invoke:\n      function: nutanix:getClusters\n      arguments:\n        metadata:\n          length: 2\n  nutanixVirtualMachine:\n    fn::invoke:\n      function: nutanix:getVirtualMachine\n      arguments:\n        vmId: ${vm1.id}\noutputs:\n  cluster: ${clusters.entities[0].metadata.uuid}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
      "inputs": {
        "description": "A collection of arguments for invoking getVirtualMachine.\n",
        "properties": {
          "bootDeviceDiskAddress": {
            "type": "object",
            "additionalProperties": {
              "type": "string"
            },
            "description": "- Address of disk to boot from.\n"
          },
          "bootDeviceMacAddress": {
            "type": "string",
            "description": "- MAC address of nic to boot from.\n"
          },
          "categories": {
            "type": "array",
            "items": {
              "$ref": "#/types/nutanix:index%2FgetVirtualMachineCategory:getVirtualMachineCategory"
            },
            "description": "- Categories for the vm.\n"
          },
          "vmId": {
            "type": "string",
            "description": "Represents virtual machine UUID\n"
          }
        },
        "type": "object",
        "required": [
          "vmId"
        ]
      },
      "outputs": {
        "description": "A collection of values returned by getVirtualMachine.\n",
        "properties": {
          "apiVersion": {
            "description": "The version of the API.\n",
            "type": "string"
          },
          "availabilityZoneReference": {
            "additionalProperties": {
              "type": "string"
            },
            "description": "- The reference to a availability_zone.\n",
            "type": "object"
          },
          "bootDeviceDiskAddress": {
            "additionalProperties": {
              "type": "string"
            },
            "description": "- Address of disk to boot from.\n",
            "type": "object"
          },
          "bootDeviceMacAddress": {
            "description": "- MAC address of nic to boot from.\n",
            "type": "string"
          },
          "bootDeviceOrderLists": {
            "description": "- Indicates the order of device types in which VM should try to boot from. If boot device order is not provided the system will decide appropriate boot device order.\n",
            "items": {
              "type": "string"
            },
            "type": "array"
          },
          "bootType": {
            "description": "- Indicates whether the VM should use Secure boot, UEFI boot or Legacy boot.If UEFI or; Secure boot is enabled then other legacy boot options (like\u003cspan pulumi-lang-nodejs=\" bootDevice \" pulumi-lang-dotnet=\" BootDevice \" pulumi-lang-go=\" bootDevice \" pulumi-lang-python=\" boot_device \" pulumi-lang-yaml=\" bootDevice \" pulumi-lang-java=\" bootDevice \"\u003e boot_device \u003c/span\u003eand; boot_device_order_list) are ignored. Secure boot depends on UEFI boot, i.e. enabling; Secure boot means that UEFI boot is also enabled. The possible value are: UEFI\", \"LEGACY\", \"SECURE_BOOT\".\n",
            "type": "string"
          },
          "categories": {
            "description": "- Categories for the vm.\n",
            "items": {
              "$ref": "#/types/nutanix:index%2FgetVirtualMachineCategory:getVirtualMachineCategory"
            },
            "type": "array"
          },
          "clusterName": {
            "description": "- The name of the reference to the cluster.\n",
            "type": "string"
          },
          "clusterUuid": {
            "type": "string"
          },
          "description": {
            "description": "- A description for vm.\n",
            "type": "string"
          },
          "diskLists": {
            "description": "Disks attached to the VM.\n",
            "items": {
              "$ref": "#/types/nutanix:index%2FgetVirtualMachineDiskList:getVirtualMachineDiskList"
            },
            "type": "array"
          },
          "enableCpuPassthrough": {
            "type": "boolean"
          },
          "enableScriptExec": {
            "description": "- Extra configs related to power state transition. Indicates whether to execute set script before ngt shutdown/reboot.\n",
            "type": "boolean"
          },
          "gpuLists": {
            "description": "- GPUs attached to the VM.\n",
            "items": {
              "$ref": "#/types/nutanix:index%2FgetVirtualMachineGpuList:getVirtualMachineGpuList"
            },
            "type": "array"
          },
          "guestCustomizationCloudInitCustomKeyValues": {
            "additionalProperties": {
              "type": "string"
            },
            "description": "- Generic key value pair used for custom attributes in cloud init.\n",
            "type": "object"
          },
          "guestCustomizationCloudInitMetaData": {
            "description": "The contents of the\u003cspan pulumi-lang-nodejs=\" metaData \" pulumi-lang-dotnet=\" MetaData \" pulumi-lang-go=\" metaData \" pulumi-lang-python=\" meta_data \" pulumi-lang-yaml=\" metaData \" pulumi-lang-java=\" metaData \"\u003e meta_data \u003c/span\u003econfiguration for cloud-init. This can be formatted as YAML or JSON. The value must be base64 encoded.\n",
            "type": "string"
          },
          "guestCustomizationCloudInitUserData": {
            "description": "- The contents of the\u003cspan pulumi-lang-nodejs=\" userData \" pulumi-lang-dotnet=\" UserData \" pulumi-lang-go=\" userData \" pulumi-lang-python=\" user_data \" pulumi-lang-yaml=\" userData \" pulumi-lang-java=\" userData \"\u003e user_data \u003c/span\u003econfiguration for cloud-init. This can be formatted as YAML, JSON, or could be a shell script. The value must be base64 encoded.\n",
            "type": "string"
          },
          "guestCustomizationIsOverridable": {
            "description": "- Flag to allow override of customization by deployer.\n",
            "type": "boolean"
          },
          "guestCustomizationSysprep": {
            "additionalProperties": {
              "type": "string"
            },
            "description": "- VM guests may be customized at boot time using one of several different methods. Currently, cloud-init w/ ConfigDriveV2 (for Linux VMs) and Sysprep (for Windows VMs) are supported. Only ONE OF sysprep or\u003cspan pulumi-lang-nodejs=\" cloudInit \" pulumi-lang-dotnet=\" CloudInit \" pulumi-lang-go=\" cloudInit \" pulumi-lang-python=\" cloud_init \" pulumi-lang-yaml=\" cloudInit \" pulumi-lang-java=\" cloudInit \"\u003e cloud_init \u003c/span\u003eshould be provided. Note that guest customization can currently only be set during VM creation. Attempting to change it after creation will result in an error. Additional properties can be specified. For example - in the context of VM template creation if \\\"override_script\\\" is set to \\\"True\\\" then the deployer can upload their own custom script.\n",
            "type": "object"
          },
          "guestCustomizationSysprepCustomKeyValues": {
            "additionalProperties": {
              "type": "string"
            },
            "description": "- Generic key value pair used for custom attributes in sysprep.\n",
            "type": "object"
          },
          "guestOsId": {
            "description": "- Guest OS Identifier. For ESX, refer to VMware documentation [link](https://www.vmware.com/support/developer/converter-sdk/conv43_apireference/vim.vm.GuestOsDescriptor.GuestOsIdentifier.html) for the list of guest OS identifiers.\n",
            "type": "string"
          },
          "hardwareClockTimezone": {
            "description": "- VM's hardware clock timezone in IANA TZDB format (America/Los_Angeles).\n",
            "type": "string"
          },
          "hostReference": {
            "additionalProperties": {
              "type": "string"
            },
            "description": "- Reference to a host.\n",
            "type": "object"
          },
          "hypervisorType": {
            "description": "- The hypervisor type for the hypervisor the VM is hosted on.\n",
            "type": "string"
          },
          "id": {
            "description": "The provider-assigned unique ID for this managed resource.",
            "type": "string"
          },
          "isVcpuHardPinned": {
            "type": "boolean"
          },
          "machineType": {
            "description": "- Machine type for the VM. Machine type Q35 is required for secure boot and does not support IDE disks.\n",
            "type": "string"
          },
          "memorySizeMib": {
            "description": "- Memory size in MiB.\n",
            "type": "integer"
          },
          "messageLists": {
            "items": {
              "$ref": "#/types/nutanix:index%2FgetVirtualMachineMessageList:getVirtualMachineMessageList"
            },
            "type": "array"
          },
          "metadata": {
            "additionalProperties": {
              "type": "string"
            },
            "description": "- The vm kind metadata.\n",
            "type": "object"
          },
          "name": {
            "description": "- the name.\n",
            "type": "string"
          },
          "ngtCredentials": {
            "additionalProperties": {
              "type": "string"
            },
            "description": "- Credentials to login server.\n",
            "type": "object"
          },
          "ngtEnabledCapabilityLists": {
            "description": "Application names that are enabled.\n",
            "items": {
              "type": "string"
            },
            "type": "array"
          },
          "nicLists": {
            "description": "- NICs attached to the VM.\n",
            "items": {
              "$ref": "#/types/nutanix:index%2FgetVirtualMachineNicList:getVirtualMachineNicList"
            },
            "type": "array"
          },
          "numSockets": {
            "description": "- Number of vCPU sockets.\n",
            "type": "integer"
          },
          "numVcpusPerSocket": {
            "description": "- Number of vCPUs per socket.\n",
            "type": "integer"
          },
          "numVnumaNodes": {
            "description": "- Number of vNUMA nodes. 0 means vNUMA is disabled.\n",
            "type": "integer"
          },
          "nutanixGuestTools": {
            "additionalProperties": {
              "type": "string"
            },
            "description": "- Information regarding Nutanix Guest Tools.\n",
            "type": "object"
          },
          "ownerReference": {
            "additionalProperties": {
              "type": "string"
            },
            "description": "- The reference to a user.\n",
            "type": "object"
          },
          "parentReference": {
            "additionalProperties": {
              "type": "string"
            },
            "type": "object"
          },
          "powerState": {
            "description": "- The current or desired power state of the VM. (Options : ON , OFF)\n",
            "type": "string"
          },
          "powerStateMechanism": {
            "description": "- Indicates the mechanism guiding the VM power state transition. Currently used for the transition to \\\"OFF\\\" state. Power state mechanism (ACPI/GUEST/HARD).\n",
            "type": "string"
          },
          "projectReference": {
            "additionalProperties": {
              "type": "string"
            },
            "description": "- The reference to a project.\n",
            "type": "object"
          },
          "serialPortLists": {
            "description": "- (Optional) Serial Ports configured on the VM.\n",
            "items": {
              "$ref": "#/types/nutanix:index%2FgetVirtualMachineSerialPortList:getVirtualMachineSerialPortList"
            },
            "type": "array"
          },
          "shouldFailOnScriptFailure": {
            "description": "-  Extra configs related to power state transition. Indicates whether to abort ngt shutdown/reboot if script fails.\n",
            "type": "boolean"
          },
          "state": {
            "description": "- Nutanix Guest Tools is enabled or not.\n",
            "type": "string"
          },
          "vgaConsoleEnabled": {
            "description": "- Indicates whether VGA console should be enabled or not.\n",
            "type": "boolean"
          },
          "vmId": {
            "type": "string"
          }
        },
        "required": [
          "apiVersion",
          "availabilityZoneReference",
          "bootDeviceDiskAddress",
          "bootDeviceMacAddress",
          "bootDeviceOrderLists",
          "bootType",
          "categories",
          "clusterName",
          "clusterUuid",
          "description",
          "diskLists",
          "enableCpuPassthrough",
          "enableScriptExec",
          "gpuLists",
          "guestCustomizationCloudInitCustomKeyValues",
          "guestCustomizationCloudInitMetaData",
          "guestCustomizationCloudInitUserData",
          "guestCustomizationIsOverridable",
          "guestCustomizationSysprep",
          "guestCustomizationSysprepCustomKeyValues",
          "guestOsId",
          "hardwareClockTimezone",
          "hostReference",
          "hypervisorType",
          "id",
          "isVcpuHardPinned",
          "machineType",
          "memorySizeMib",
          "messageLists",
          "metadata",
          "name",
          "ngtCredentials",
          "ngtEnabledCapabilityLists",
          "nicLists",
          "numSockets",
          "numVcpusPerSocket",
          "numVnumaNodes",
          "nutanixGuestTools",
          "ownerReference",
          "parentReference",
          "powerState",
          "powerStateMechanism",
          "projectReference",
          "serialPortLists",
          "shouldFailOnScriptFailure",
          "state",
          "vgaConsoleEnabled",
          "vmId"
        ],
        "type": "object"
      }
    },
    "nutanix:index/getVirtualMachineV2:getVirtualMachineV2": {
      "description": "Retrieves configuration details for a Virtual Machine.\n\n## Example\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as nutanix from \"@pierskarsenbarg/nutanix\";\n\nconst vm = nutanix.getVirtualMachineV2({\n    extId: \"{{ ext_id of vm }}\",\n});\n```\n```python\nimport pulumi\nimport pulumi_nutanix as nutanix\n\nvm = nutanix.get_virtual_machine_v2(ext_id=\"{{ ext_id of vm }}\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Nutanix = Pulumi.Nutanix;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var vm = Nutanix.GetVirtualMachineV2.Invoke(new()\n    {\n        ExtId = \"{{ ext_id of vm }}\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pierskarsenbarg/pulumi-nutanix/sdk/go/nutanix\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := nutanix.LookupVirtualMachineV2(ctx, \u0026nutanix.LookupVirtualMachineV2Args{\n\t\t\tExtId: \"{{ ext_id of vm }}\",\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.nutanix.NutanixFunctions;\nimport com.pulumi.nutanix.inputs.GetVirtualMachineV2Args;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var vm = NutanixFunctions.getVirtualMachineV2(GetVirtualMachineV2Args.builder()\n            .extId(\"{{ ext_id of vm }}\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  vm:\n    fn::invoke:\n      function: nutanix:getVirtualMachineV2\n      arguments:\n        extId: '{{ ext_id of vm }}'\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
      "inputs": {
        "description": "A collection of arguments for invoking getVirtualMachineV2.\n",
        "properties": {
          "extId": {
            "type": "string",
            "description": "Represents virtual machine UUID\n"
          }
        },
        "type": "object",
        "required": [
          "extId"
        ]
      },
      "outputs": {
        "description": "A collection of values returned by getVirtualMachineV2.\n",
        "properties": {
          "apcConfigs": {
            "description": "Advanced Processor Compatibility configuration for the VM. Enabling this retains the CPU model for the VM across power cycles and migrations.\n",
            "items": {
              "$ref": "#/types/nutanix:index%2FgetVirtualMachineV2ApcConfig:getVirtualMachineV2ApcConfig"
            },
            "type": "array"
          },
          "availabilityZones": {
            "items": {
              "$ref": "#/types/nutanix:index%2FgetVirtualMachineV2AvailabilityZone:getVirtualMachineV2AvailabilityZone"
            },
            "type": "array"
          },
          "biosUuid": {
            "description": "BIOS UUID of the VM. It should be of type UUID.\n",
            "type": "string"
          },
          "bootConfigs": {
            "description": "Indicates the order of device types in which the VM should try to boot from. If the boot device order is not provided the system will decide an appropriate boot device order.\n",
            "items": {
              "$ref": "#/types/nutanix:index%2FgetVirtualMachineV2BootConfig:getVirtualMachineV2BootConfig"
            },
            "type": "array"
          },
          "categories": {
            "description": "Categories for the VM.\n",
            "items": {
              "$ref": "#/types/nutanix:index%2FgetVirtualMachineV2Category:getVirtualMachineV2Category"
            },
            "type": "array"
          },
          "cdRoms": {
            "description": "CD-ROMs attached to the VM.\n",
            "items": {
              "$ref": "#/types/nutanix:index%2FgetVirtualMachineV2CdRom:getVirtualMachineV2CdRom"
            },
            "type": "array"
          },
          "clusters": {
            "description": "Reference to a cluster.\n",
            "items": {
              "$ref": "#/types/nutanix:index%2FgetVirtualMachineV2Cluster:getVirtualMachineV2Cluster"
            },
            "type": "array"
          },
          "createTime": {
            "description": "VM creation time\n",
            "type": "string"
          },
          "description": {
            "description": "VM description\n",
            "type": "string"
          },
          "disks": {
            "description": "Disks attached to the VM.\n",
            "items": {
              "$ref": "#/types/nutanix:index%2FgetVirtualMachineV2Disk:getVirtualMachineV2Disk"
            },
            "type": "array"
          },
          "enabledCpuFeatures": {
            "description": "The list of additional CPU features to be enabled. HardwareVirtualization: Indicates whether hardware assisted virtualization should be enabled for the Guest OS or not. Once enabled, the Guest OS can deploy a nested hypervisor\n",
            "items": {
              "type": "string"
            },
            "type": "array"
          },
          "extId": {
            "description": "A globally unique identifier of an instance that is suitable for external consumption.\n",
            "type": "string"
          },
          "generationUuid": {
            "description": "Generation UUID of the VM. It should be of type UUID.\n",
            "type": "string"
          },
          "gpuses": {
            "description": "GPUs attached to the VM.\n",
            "items": {
              "$ref": "#/types/nutanix:index%2FgetVirtualMachineV2Gpus:getVirtualMachineV2Gpus"
            },
            "type": "array"
          },
          "guestCustomizations": {
            "description": "Stage a Sysprep or cloud-init configuration file to be used by the guest for the next boot. Note that the Sysprep command must be used to generalize the Windows VMs before triggering this API call.\n",
            "items": {
              "$ref": "#/types/nutanix:index%2FgetVirtualMachineV2GuestCustomization:getVirtualMachineV2GuestCustomization"
            },
            "type": "array"
          },
          "guestTools": {
            "description": "The details about Nutanix Guest Tools for a VM.\n",
            "items": {
              "$ref": "#/types/nutanix:index%2FgetVirtualMachineV2GuestTool:getVirtualMachineV2GuestTool"
            },
            "type": "array"
          },
          "hardwareClockTimezone": {
            "description": "VM hardware clock timezone in IANA TZDB format (America/Los_Angeles).\n",
            "type": "string"
          },
          "hosts": {
            "description": "Reference to the host, the VM is running on.\n",
            "items": {
              "$ref": "#/types/nutanix:index%2FgetVirtualMachineV2Host:getVirtualMachineV2Host"
            },
            "type": "array"
          },
          "id": {
            "description": "The provider-assigned unique ID for this managed resource.",
            "type": "string"
          },
          "isAgentVm": {
            "description": "Indicates whether the VM is an agent VM or not. When their host enters maintenance mode, once the normal VMs are evacuated, the agent VMs are powered off. When the host is restored, agent VMs are powered on before the normal VMs are restored. In other words, agent VMs cannot be HA-protected or live migrated.\n",
            "type": "boolean"
          },
          "isBrandingEnabled": {
            "description": "Indicates whether to remove AHV branding from VM firmware tables or not.\n",
            "type": "boolean"
          },
          "isCpuHotplugEnabled": {
            "description": "Indicates whether the VM CPU hotplug is enabled.\n",
            "type": "boolean"
          },
          "isCpuPassthroughEnabled": {
            "description": "Indicates whether to passthrough the host CPU features to the guest or not. Enabling this will make VM incapable of live migration.\n",
            "type": "boolean"
          },
          "isGpuConsoleEnabled": {
            "description": "Indicates whether the vGPU console is enabled or not.\n",
            "type": "boolean"
          },
          "isMemoryOvercommitEnabled": {
            "description": "Indicates whether the memory overcommit feature should be enabled for the VM or not. If enabled, parts of the VM memory may reside outside of the hypervisor physical memory. Once enabled, it should be expected that the VM may suffer performance degradation.\n",
            "type": "boolean"
          },
          "isScsiControllerEnabled": {
            "description": "Indicates whether the VM SCSI controller is enabled.\n",
            "type": "boolean"
          },
          "isVcpuHardPinningEnabled": {
            "description": "Indicates whether the vCPUs should be hard pinned to specific pCPUs or not.\n",
            "type": "boolean"
          },
          "isVgaConsoleEnabled": {
            "description": "Indicates whether the VGA console should be disabled or not.\n",
            "type": "boolean"
          },
          "machineType": {
            "description": "Machine type for the VM. Machine type Q35 is required for secure boot and does not support IDE disks.\n",
            "type": "string"
          },
          "memorySizeBytes": {
            "description": "Memory size in bytes.\n",
            "type": "integer"
          },
          "name": {
            "description": "Name of the GPU resource.\n",
            "type": "string"
          },
          "nics": {
            "description": "NICs attached to the VM.\n",
            "items": {
              "$ref": "#/types/nutanix:index%2FgetVirtualMachineV2Nic:getVirtualMachineV2Nic"
            },
            "type": "array"
          },
          "numCoresPerSocket": {
            "description": "Number of cores per socket.\n",
            "type": "integer"
          },
          "numNumaNodes": {
            "description": "Number of NUMA nodes. 0 means NUMA is disabled.\n",
            "type": "integer"
          },
          "numSockets": {
            "description": "Number of vCPU sockets.\n",
            "type": "integer"
          },
          "numThreadsPerCore": {
            "description": "Number of threads per core\n",
            "type": "integer"
          },
          "ownershipInfos": {
            "description": "Ownership information for the VM.\n",
            "items": {
              "$ref": "#/types/nutanix:index%2FgetVirtualMachineV2OwnershipInfo:getVirtualMachineV2OwnershipInfo"
            },
            "type": "array"
          },
          "powerState": {
            "type": "string"
          },
          "protectionPolicyStates": {
            "description": "Status of protection policy applied to this VM.\n",
            "items": {
              "$ref": "#/types/nutanix:index%2FgetVirtualMachineV2ProtectionPolicyState:getVirtualMachineV2ProtectionPolicyState"
            },
            "type": "array"
          },
          "protectionType": {
            "description": "The type of protection applied on a VM. PD_PROTECTED indicates a VM is protected using the Prism Element. RULE_PROTECTED indicates a VM protection using the Prism Central.\n",
            "type": "string"
          },
          "serialPorts": {
            "description": "Serial ports configured on the VM.\n",
            "items": {
              "$ref": "#/types/nutanix:index%2FgetVirtualMachineV2SerialPort:getVirtualMachineV2SerialPort"
            },
            "type": "array"
          },
          "sources": {
            "description": "Reference to an entity that the VM should be cloned or created from\n",
            "items": {
              "$ref": "#/types/nutanix:index%2FgetVirtualMachineV2Source:getVirtualMachineV2Source"
            },
            "type": "array"
          },
          "storageConfigs": {
            "description": "Storage configuration for VM disks\n",
            "items": {
              "$ref": "#/types/nutanix:index%2FgetVirtualMachineV2StorageConfig:getVirtualMachineV2StorageConfig"
            },
            "type": "array"
          },
          "updateTime": {
            "description": "VM last updated time.\n",
            "type": "string"
          },
          "vtpmConfigs": {
            "description": "Indicates how the vTPM for the VM should be configured.\n",
            "items": {
              "$ref": "#/types/nutanix:index%2FgetVirtualMachineV2VtpmConfig:getVirtualMachineV2VtpmConfig"
            },
            "type": "array"
          }
        },
        "required": [
          "apcConfigs",
          "availabilityZones",
          "biosUuid",
          "bootConfigs",
          "categories",
          "cdRoms",
          "clusters",
          "createTime",
          "description",
          "disks",
          "enabledCpuFeatures",
          "extId",
          "generationUuid",
          "gpuses",
          "guestCustomizations",
          "guestTools",
          "hardwareClockTimezone",
          "hosts",
          "id",
          "isAgentVm",
          "isBrandingEnabled",
          "isCpuHotplugEnabled",
          "isCpuPassthroughEnabled",
          "isGpuConsoleEnabled",
          "isMemoryOvercommitEnabled",
          "isScsiControllerEnabled",
          "isVcpuHardPinningEnabled",
          "isVgaConsoleEnabled",
          "machineType",
          "memorySizeBytes",
          "name",
          "nics",
          "numCoresPerSocket",
          "numNumaNodes",
          "numSockets",
          "numThreadsPerCore",
          "ownershipInfos",
          "powerState",
          "protectionPolicyStates",
          "protectionType",
          "serialPorts",
          "sources",
          "storageConfigs",
          "updateTime",
          "vtpmConfigs"
        ],
        "type": "object"
      }
    },
    "nutanix:index/getVirtualMachinesV2:getVirtualMachinesV2": {
      "description": "Lists the Virtual Machines defined on the system. List of Virtual Machines can be further filtered out using various filtering options.\n\n## Example\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as nutanix from \"@pierskarsenbarg/nutanix\";\n\n// List all virtual machines\nconst list_vms = nutanix.getVirtualMachinesV2({});\n// List virtual machines with  page and limit\nconst paged_vms = nutanix.getVirtualMachinesV2({\n    page: 0,\n    limit: 2,\n});\n// List virtual machines with filter\nconst filtered_vms = nutanix.getVirtualMachinesV2({\n    filter: \"name eq 'example-vm-filter'\",\n});\n```\n```python\nimport pulumi\nimport pulumi_nutanix as nutanix\n\n# List all virtual machines\nlist_vms = nutanix.get_virtual_machines_v2()\n# List virtual machines with  page and limit\npaged_vms = nutanix.get_virtual_machines_v2(page=0,\n    limit=2)\n# List virtual machines with filter\nfiltered_vms = nutanix.get_virtual_machines_v2(filter=\"name eq 'example-vm-filter'\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Nutanix = Pulumi.Nutanix;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    // List all virtual machines\n    var list_vms = Nutanix.GetVirtualMachinesV2.Invoke();\n\n    // List virtual machines with  page and limit\n    var paged_vms = Nutanix.GetVirtualMachinesV2.Invoke(new()\n    {\n        Page = 0,\n        Limit = 2,\n    });\n\n    // List virtual machines with filter\n    var filtered_vms = Nutanix.GetVirtualMachinesV2.Invoke(new()\n    {\n        Filter = \"name eq 'example-vm-filter'\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pierskarsenbarg/pulumi-nutanix/sdk/go/nutanix\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t// List all virtual machines\n\t\t_, err := nutanix.GetVirtualMachinesV2(ctx, \u0026nutanix.GetVirtualMachinesV2Args{}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t// List virtual machines with  page and limit\n\t\t_, err = nutanix.GetVirtualMachinesV2(ctx, \u0026nutanix.GetVirtualMachinesV2Args{\n\t\t\tPage:  pulumi.IntRef(0),\n\t\t\tLimit: pulumi.IntRef(2),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t// List virtual machines with filter\n\t\t_, err = nutanix.GetVirtualMachinesV2(ctx, \u0026nutanix.GetVirtualMachinesV2Args{\n\t\t\tFilter: pulumi.StringRef(\"name eq 'example-vm-filter'\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.nutanix.NutanixFunctions;\nimport com.pulumi.nutanix.inputs.GetVirtualMachinesV2Args;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        // List all virtual machines\n        final var list-vms = NutanixFunctions.getVirtualMachinesV2(GetVirtualMachinesV2Args.builder()\n            .build());\n\n        // List virtual machines with  page and limit\n        final var paged-vms = NutanixFunctions.getVirtualMachinesV2(GetVirtualMachinesV2Args.builder()\n            .page(0)\n            .limit(2)\n            .build());\n\n        // List virtual machines with filter\n        final var filtered-vms = NutanixFunctions.getVirtualMachinesV2(GetVirtualMachinesV2Args.builder()\n            .filter(\"name eq 'example-vm-filter'\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  # List all virtual machines\n  list-vms:\n    fn::invoke:\n      function: nutanix:getVirtualMachinesV2\n      arguments: {}\n  # List virtual machines with  page and limit\n  paged-vms:\n    fn::invoke:\n      function: nutanix:getVirtualMachinesV2\n      arguments:\n        page: 0\n        limit: 2\n  # List virtual machines with filter\n  filtered-vms:\n    fn::invoke:\n      function: nutanix:getVirtualMachinesV2\n      arguments:\n        filter: name eq 'example-vm-filter'\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## VMs\n\nThe \u003cspan pulumi-lang-nodejs=\"`vms`\" pulumi-lang-dotnet=\"`Vms`\" pulumi-lang-go=\"`vms`\" pulumi-lang-python=\"`vms`\" pulumi-lang-yaml=\"`vms`\" pulumi-lang-java=\"`vms`\"\u003e`vms`\u003c/span\u003e is a list of all virtual machines. Each virtual machine has the following attributes:\n\n* \u003cspan pulumi-lang-nodejs=\"`tenantId`\" pulumi-lang-dotnet=\"`TenantId`\" pulumi-lang-go=\"`tenantId`\" pulumi-lang-python=\"`tenant_id`\" pulumi-lang-yaml=\"`tenantId`\" pulumi-lang-java=\"`tenantId`\"\u003e`tenant_id`\u003c/span\u003e - A globally unique identifier that represents the tenant that owns this entity. The system automatically assigns it, and it and is immutable from an API consumer perspective (some use cases may cause this Id to change - For instance, a use case may require the transfer of ownership of the entity, but these cases are handled automatically on the server).\n* \u003cspan pulumi-lang-nodejs=\"`links`\" pulumi-lang-dotnet=\"`Links`\" pulumi-lang-go=\"`links`\" pulumi-lang-python=\"`links`\" pulumi-lang-yaml=\"`links`\" pulumi-lang-java=\"`links`\"\u003e`links`\u003c/span\u003e: A HATEOAS style link for the response. Each link contains a user-friendly name identifying the link and an address for retrieving the particular resource.\n- \u003cspan pulumi-lang-nodejs=\"`extId`\" pulumi-lang-dotnet=\"`ExtId`\" pulumi-lang-go=\"`extId`\" pulumi-lang-python=\"`ext_id`\" pulumi-lang-yaml=\"`extId`\" pulumi-lang-java=\"`extId`\"\u003e`ext_id`\u003c/span\u003e: A globally unique identifier of an instance that is suitable for external consumption.\n- \u003cspan pulumi-lang-nodejs=\"`name`\" pulumi-lang-dotnet=\"`Name`\" pulumi-lang-go=\"`name`\" pulumi-lang-python=\"`name`\" pulumi-lang-yaml=\"`name`\" pulumi-lang-java=\"`name`\"\u003e`name`\u003c/span\u003e: VM name.\n- \u003cspan pulumi-lang-nodejs=\"`description`\" pulumi-lang-dotnet=\"`Description`\" pulumi-lang-go=\"`description`\" pulumi-lang-python=\"`description`\" pulumi-lang-yaml=\"`description`\" pulumi-lang-java=\"`description`\"\u003e`description`\u003c/span\u003e: VM description\n- \u003cspan pulumi-lang-nodejs=\"`createTime`\" pulumi-lang-dotnet=\"`CreateTime`\" pulumi-lang-go=\"`createTime`\" pulumi-lang-python=\"`create_time`\" pulumi-lang-yaml=\"`createTime`\" pulumi-lang-java=\"`createTime`\"\u003e`create_time`\u003c/span\u003e: VM creation time\n- \u003cspan pulumi-lang-nodejs=\"`updateTime`\" pulumi-lang-dotnet=\"`UpdateTime`\" pulumi-lang-go=\"`updateTime`\" pulumi-lang-python=\"`update_time`\" pulumi-lang-yaml=\"`updateTime`\" pulumi-lang-java=\"`updateTime`\"\u003e`update_time`\u003c/span\u003e: VM last updated time.\n- \u003cspan pulumi-lang-nodejs=\"`source`\" pulumi-lang-dotnet=\"`Source`\" pulumi-lang-go=\"`source`\" pulumi-lang-python=\"`source`\" pulumi-lang-yaml=\"`source`\" pulumi-lang-java=\"`source`\"\u003e`source`\u003c/span\u003e: Reference to an entity that the VM should be cloned or created from\n- \u003cspan pulumi-lang-nodejs=\"`numSockets`\" pulumi-lang-dotnet=\"`NumSockets`\" pulumi-lang-go=\"`numSockets`\" pulumi-lang-python=\"`num_sockets`\" pulumi-lang-yaml=\"`numSockets`\" pulumi-lang-java=\"`numSockets`\"\u003e`num_sockets`\u003c/span\u003e: Number of vCPU sockets.\n- \u003cspan pulumi-lang-nodejs=\"`numCoresPerSocket`\" pulumi-lang-dotnet=\"`NumCoresPerSocket`\" pulumi-lang-go=\"`numCoresPerSocket`\" pulumi-lang-python=\"`num_cores_per_socket`\" pulumi-lang-yaml=\"`numCoresPerSocket`\" pulumi-lang-java=\"`numCoresPerSocket`\"\u003e`num_cores_per_socket`\u003c/span\u003e: Number of cores per socket.\n- \u003cspan pulumi-lang-nodejs=\"`numThreadsPerCore`\" pulumi-lang-dotnet=\"`NumThreadsPerCore`\" pulumi-lang-go=\"`numThreadsPerCore`\" pulumi-lang-python=\"`num_threads_per_core`\" pulumi-lang-yaml=\"`numThreadsPerCore`\" pulumi-lang-java=\"`numThreadsPerCore`\"\u003e`num_threads_per_core`\u003c/span\u003e: Number of threads per core\n- \u003cspan pulumi-lang-nodejs=\"`numNumaNodes`\" pulumi-lang-dotnet=\"`NumNumaNodes`\" pulumi-lang-go=\"`numNumaNodes`\" pulumi-lang-python=\"`num_numa_nodes`\" pulumi-lang-yaml=\"`numNumaNodes`\" pulumi-lang-java=\"`numNumaNodes`\"\u003e`num_numa_nodes`\u003c/span\u003e: Number of NUMA nodes. 0 means NUMA is disabled.\n- \u003cspan pulumi-lang-nodejs=\"`memorySizeBytes`\" pulumi-lang-dotnet=\"`MemorySizeBytes`\" pulumi-lang-go=\"`memorySizeBytes`\" pulumi-lang-python=\"`memory_size_bytes`\" pulumi-lang-yaml=\"`memorySizeBytes`\" pulumi-lang-java=\"`memorySizeBytes`\"\u003e`memory_size_bytes`\u003c/span\u003e: Memory size in bytes.\n- \u003cspan pulumi-lang-nodejs=\"`isVcpuHardPinningEnabled`\" pulumi-lang-dotnet=\"`IsVcpuHardPinningEnabled`\" pulumi-lang-go=\"`isVcpuHardPinningEnabled`\" pulumi-lang-python=\"`is_vcpu_hard_pinning_enabled`\" pulumi-lang-yaml=\"`isVcpuHardPinningEnabled`\" pulumi-lang-java=\"`isVcpuHardPinningEnabled`\"\u003e`is_vcpu_hard_pinning_enabled`\u003c/span\u003e: Indicates whether the vCPUs should be hard pinned to specific pCPUs or not.\n- \u003cspan pulumi-lang-nodejs=\"`isCpuPassthroughEnabled`\" pulumi-lang-dotnet=\"`IsCpuPassthroughEnabled`\" pulumi-lang-go=\"`isCpuPassthroughEnabled`\" pulumi-lang-python=\"`is_cpu_passthrough_enabled`\" pulumi-lang-yaml=\"`isCpuPassthroughEnabled`\" pulumi-lang-java=\"`isCpuPassthroughEnabled`\"\u003e`is_cpu_passthrough_enabled`\u003c/span\u003e: Indicates whether to passthrough the host CPU features to the guest or not. Enabling this will make VM incapable of live migration.\n- \u003cspan pulumi-lang-nodejs=\"`enabledCpuFeatures`\" pulumi-lang-dotnet=\"`EnabledCpuFeatures`\" pulumi-lang-go=\"`enabledCpuFeatures`\" pulumi-lang-python=\"`enabled_cpu_features`\" pulumi-lang-yaml=\"`enabledCpuFeatures`\" pulumi-lang-java=\"`enabledCpuFeatures`\"\u003e`enabled_cpu_features`\u003c/span\u003e: The list of additional CPU features to be enabled. HardwareVirtualization: Indicates whether hardware assisted virtualization should be enabled for the Guest OS or not. Once enabled, the Guest OS can deploy a nested hypervisor\n- \u003cspan pulumi-lang-nodejs=\"`isMemoryOvercommitEnabled`\" pulumi-lang-dotnet=\"`IsMemoryOvercommitEnabled`\" pulumi-lang-go=\"`isMemoryOvercommitEnabled`\" pulumi-lang-python=\"`is_memory_overcommit_enabled`\" pulumi-lang-yaml=\"`isMemoryOvercommitEnabled`\" pulumi-lang-java=\"`isMemoryOvercommitEnabled`\"\u003e`is_memory_overcommit_enabled`\u003c/span\u003e: Indicates whether the memory overcommit feature should be enabled for the VM or not. If enabled, parts of the VM memory may reside outside of the hypervisor physical memory. Once enabled, it should be expected that the VM may suffer performance degradation.\n- \u003cspan pulumi-lang-nodejs=\"`isGpuConsoleEnabled`\" pulumi-lang-dotnet=\"`IsGpuConsoleEnabled`\" pulumi-lang-go=\"`isGpuConsoleEnabled`\" pulumi-lang-python=\"`is_gpu_console_enabled`\" pulumi-lang-yaml=\"`isGpuConsoleEnabled`\" pulumi-lang-java=\"`isGpuConsoleEnabled`\"\u003e`is_gpu_console_enabled`\u003c/span\u003e: Indicates whether the vGPU console is enabled or not.\n- \u003cspan pulumi-lang-nodejs=\"`isCpuHotplugEnabled`\" pulumi-lang-dotnet=\"`IsCpuHotplugEnabled`\" pulumi-lang-go=\"`isCpuHotplugEnabled`\" pulumi-lang-python=\"`is_cpu_hotplug_enabled`\" pulumi-lang-yaml=\"`isCpuHotplugEnabled`\" pulumi-lang-java=\"`isCpuHotplugEnabled`\"\u003e`is_cpu_hotplug_enabled`\u003c/span\u003e: Indicates whether the VM CPU hotplug is enabled.\n- \u003cspan pulumi-lang-nodejs=\"`isScsiControllerEnabled`\" pulumi-lang-dotnet=\"`IsScsiControllerEnabled`\" pulumi-lang-go=\"`isScsiControllerEnabled`\" pulumi-lang-python=\"`is_scsi_controller_enabled`\" pulumi-lang-yaml=\"`isScsiControllerEnabled`\" pulumi-lang-java=\"`isScsiControllerEnabled`\"\u003e`is_scsi_controller_enabled`\u003c/span\u003e: Indicates whether the VM SCSI controller is enabled.\n- \u003cspan pulumi-lang-nodejs=\"`generationUuid`\" pulumi-lang-dotnet=\"`GenerationUuid`\" pulumi-lang-go=\"`generationUuid`\" pulumi-lang-python=\"`generation_uuid`\" pulumi-lang-yaml=\"`generationUuid`\" pulumi-lang-java=\"`generationUuid`\"\u003e`generation_uuid`\u003c/span\u003e: Generation UUID of the VM. It should be of type UUID.\n- \u003cspan pulumi-lang-nodejs=\"`biosUuid`\" pulumi-lang-dotnet=\"`BiosUuid`\" pulumi-lang-go=\"`biosUuid`\" pulumi-lang-python=\"`bios_uuid`\" pulumi-lang-yaml=\"`biosUuid`\" pulumi-lang-java=\"`biosUuid`\"\u003e`bios_uuid`\u003c/span\u003e: BIOS UUID of the VM. It should be of type UUID.\n- \u003cspan pulumi-lang-nodejs=\"`categories`\" pulumi-lang-dotnet=\"`Categories`\" pulumi-lang-go=\"`categories`\" pulumi-lang-python=\"`categories`\" pulumi-lang-yaml=\"`categories`\" pulumi-lang-java=\"`categories`\"\u003e`categories`\u003c/span\u003e: Categories for the VM.\n- \u003cspan pulumi-lang-nodejs=\"`ownershipInfo`\" pulumi-lang-dotnet=\"`OwnershipInfo`\" pulumi-lang-go=\"`ownershipInfo`\" pulumi-lang-python=\"`ownership_info`\" pulumi-lang-yaml=\"`ownershipInfo`\" pulumi-lang-java=\"`ownershipInfo`\"\u003e`ownership_info`\u003c/span\u003e: Ownership information for the VM.\n- \u003cspan pulumi-lang-nodejs=\"`host`\" pulumi-lang-dotnet=\"`Host`\" pulumi-lang-go=\"`host`\" pulumi-lang-python=\"`host`\" pulumi-lang-yaml=\"`host`\" pulumi-lang-java=\"`host`\"\u003e`host`\u003c/span\u003e: Reference to the host, the VM is running on.\n- \u003cspan pulumi-lang-nodejs=\"`cluster`\" pulumi-lang-dotnet=\"`Cluster`\" pulumi-lang-go=\"`cluster`\" pulumi-lang-python=\"`cluster`\" pulumi-lang-yaml=\"`cluster`\" pulumi-lang-java=\"`cluster`\"\u003e`cluster`\u003c/span\u003e: Reference to a cluster.\n- \u003cspan pulumi-lang-nodejs=\"`guestCustomization`\" pulumi-lang-dotnet=\"`GuestCustomization`\" pulumi-lang-go=\"`guestCustomization`\" pulumi-lang-python=\"`guest_customization`\" pulumi-lang-yaml=\"`guestCustomization`\" pulumi-lang-java=\"`guestCustomization`\"\u003e`guest_customization`\u003c/span\u003e: Stage a Sysprep or cloud-init configuration file to be used by the guest for the next boot. Note that the Sysprep command must be used to generalize the Windows VMs before triggering this API call.\n- \u003cspan pulumi-lang-nodejs=\"`guestTools`\" pulumi-lang-dotnet=\"`GuestTools`\" pulumi-lang-go=\"`guestTools`\" pulumi-lang-python=\"`guest_tools`\" pulumi-lang-yaml=\"`guestTools`\" pulumi-lang-java=\"`guestTools`\"\u003e`guest_tools`\u003c/span\u003e: The details about Nutanix Guest Tools for a VM.\n- \u003cspan pulumi-lang-nodejs=\"`hardwareClockTimezone`\" pulumi-lang-dotnet=\"`HardwareClockTimezone`\" pulumi-lang-go=\"`hardwareClockTimezone`\" pulumi-lang-python=\"`hardware_clock_timezone`\" pulumi-lang-yaml=\"`hardwareClockTimezone`\" pulumi-lang-java=\"`hardwareClockTimezone`\"\u003e`hardware_clock_timezone`\u003c/span\u003e: VM hardware clock timezone in IANA TZDB format (America/Los_Angeles).\n- \u003cspan pulumi-lang-nodejs=\"`isBrandingEnabled`\" pulumi-lang-dotnet=\"`IsBrandingEnabled`\" pulumi-lang-go=\"`isBrandingEnabled`\" pulumi-lang-python=\"`is_branding_enabled`\" pulumi-lang-yaml=\"`isBrandingEnabled`\" pulumi-lang-java=\"`isBrandingEnabled`\"\u003e`is_branding_enabled`\u003c/span\u003e: Indicates whether to remove AHV branding from VM firmware tables or not.\n- \u003cspan pulumi-lang-nodejs=\"`bootConfig`\" pulumi-lang-dotnet=\"`BootConfig`\" pulumi-lang-go=\"`bootConfig`\" pulumi-lang-python=\"`boot_config`\" pulumi-lang-yaml=\"`bootConfig`\" pulumi-lang-java=\"`bootConfig`\"\u003e`boot_config`\u003c/span\u003e: Indicates the order of device types in which the VM should try to boot from. If the boot device order is not provided the system will decide an appropriate boot device order.\n- \u003cspan pulumi-lang-nodejs=\"`isVgaConsoleEnabled`\" pulumi-lang-dotnet=\"`IsVgaConsoleEnabled`\" pulumi-lang-go=\"`isVgaConsoleEnabled`\" pulumi-lang-python=\"`is_vga_console_enabled`\" pulumi-lang-yaml=\"`isVgaConsoleEnabled`\" pulumi-lang-java=\"`isVgaConsoleEnabled`\"\u003e`is_vga_console_enabled`\u003c/span\u003e: Indicates whether the VGA console should be disabled or not.\n- \u003cspan pulumi-lang-nodejs=\"`machineType`\" pulumi-lang-dotnet=\"`MachineType`\" pulumi-lang-go=\"`machineType`\" pulumi-lang-python=\"`machine_type`\" pulumi-lang-yaml=\"`machineType`\" pulumi-lang-java=\"`machineType`\"\u003e`machine_type`\u003c/span\u003e: Machine type for the VM. Machine type Q35 is required for secure boot and does not support IDE disks.\n- \u003cspan pulumi-lang-nodejs=\"`vtpmConfig`\" pulumi-lang-dotnet=\"`VtpmConfig`\" pulumi-lang-go=\"`vtpmConfig`\" pulumi-lang-python=\"`vtpm_config`\" pulumi-lang-yaml=\"`vtpmConfig`\" pulumi-lang-java=\"`vtpmConfig`\"\u003e`vtpm_config`\u003c/span\u003e: Indicates how the vTPM for the VM should be configured.\n- \u003cspan pulumi-lang-nodejs=\"`isAgentVm`\" pulumi-lang-dotnet=\"`IsAgentVm`\" pulumi-lang-go=\"`isAgentVm`\" pulumi-lang-python=\"`is_agent_vm`\" pulumi-lang-yaml=\"`isAgentVm`\" pulumi-lang-java=\"`isAgentVm`\"\u003e`is_agent_vm`\u003c/span\u003e: Indicates whether the VM is an agent VM or not. When their host enters maintenance mode, once the normal VMs are evacuated, the agent VMs are powered off. When the host is restored, agent VMs are powered on before the normal VMs are restored. In other words, agent VMs cannot be HA-protected or live migrated.\n- \u003cspan pulumi-lang-nodejs=\"`apcConfig`\" pulumi-lang-dotnet=\"`ApcConfig`\" pulumi-lang-go=\"`apcConfig`\" pulumi-lang-python=\"`apc_config`\" pulumi-lang-yaml=\"`apcConfig`\" pulumi-lang-java=\"`apcConfig`\"\u003e`apc_config`\u003c/span\u003e: Advanced Processor Compatibility configuration for the VM. Enabling this retains the CPU model for the VM across power cycles and migrations.\n- \u003cspan pulumi-lang-nodejs=\"`storageConfig`\" pulumi-lang-dotnet=\"`StorageConfig`\" pulumi-lang-go=\"`storageConfig`\" pulumi-lang-python=\"`storage_config`\" pulumi-lang-yaml=\"`storageConfig`\" pulumi-lang-java=\"`storageConfig`\"\u003e`storage_config`\u003c/span\u003e: Storage configuration for VM.\n- \u003cspan pulumi-lang-nodejs=\"`disks`\" pulumi-lang-dotnet=\"`Disks`\" pulumi-lang-go=\"`disks`\" pulumi-lang-python=\"`disks`\" pulumi-lang-yaml=\"`disks`\" pulumi-lang-java=\"`disks`\"\u003e`disks`\u003c/span\u003e: Disks attached to the VM.\n- \u003cspan pulumi-lang-nodejs=\"`cdRoms`\" pulumi-lang-dotnet=\"`CdRoms`\" pulumi-lang-go=\"`cdRoms`\" pulumi-lang-python=\"`cd_roms`\" pulumi-lang-yaml=\"`cdRoms`\" pulumi-lang-java=\"`cdRoms`\"\u003e`cd_roms`\u003c/span\u003e: CD-ROMs attached to the VM.\n- \u003cspan pulumi-lang-nodejs=\"`nics`\" pulumi-lang-dotnet=\"`Nics`\" pulumi-lang-go=\"`nics`\" pulumi-lang-python=\"`nics`\" pulumi-lang-yaml=\"`nics`\" pulumi-lang-java=\"`nics`\"\u003e`nics`\u003c/span\u003e: NICs attached to the VM.\n- \u003cspan pulumi-lang-nodejs=\"`gpus`\" pulumi-lang-dotnet=\"`Gpus`\" pulumi-lang-go=\"`gpus`\" pulumi-lang-python=\"`gpus`\" pulumi-lang-yaml=\"`gpus`\" pulumi-lang-java=\"`gpus`\"\u003e`gpus`\u003c/span\u003e: GPUs attached to the VM.\n- \u003cspan pulumi-lang-nodejs=\"`serialPorts`\" pulumi-lang-dotnet=\"`SerialPorts`\" pulumi-lang-go=\"`serialPorts`\" pulumi-lang-python=\"`serial_ports`\" pulumi-lang-yaml=\"`serialPorts`\" pulumi-lang-java=\"`serialPorts`\"\u003e`serial_ports`\u003c/span\u003e: Serial ports configured on the VM.\n- \u003cspan pulumi-lang-nodejs=\"`protectionType`\" pulumi-lang-dotnet=\"`ProtectionType`\" pulumi-lang-go=\"`protectionType`\" pulumi-lang-python=\"`protection_type`\" pulumi-lang-yaml=\"`protectionType`\" pulumi-lang-java=\"`protectionType`\"\u003e`protection_type`\u003c/span\u003e: The type of protection applied on a VM. PD_PROTECTED indicates a VM is protected using the Prism Element. RULE_PROTECTED indicates a VM protection using the Prism Central.\n- \u003cspan pulumi-lang-nodejs=\"`protectionPolicyState`\" pulumi-lang-dotnet=\"`ProtectionPolicyState`\" pulumi-lang-go=\"`protectionPolicyState`\" pulumi-lang-python=\"`protection_policy_state`\" pulumi-lang-yaml=\"`protectionPolicyState`\" pulumi-lang-java=\"`protectionPolicyState`\"\u003e`protection_policy_state`\u003c/span\u003e: Status of protection policy applied to this VM.\n\n### Links\n\nThe links attribute supports the following:\n\n* \u003cspan pulumi-lang-nodejs=\"`href`\" pulumi-lang-dotnet=\"`Href`\" pulumi-lang-go=\"`href`\" pulumi-lang-python=\"`href`\" pulumi-lang-yaml=\"`href`\" pulumi-lang-java=\"`href`\"\u003e`href`\u003c/span\u003e: - The URL at which the entity described by the link can be accessed.\n* \u003cspan pulumi-lang-nodejs=\"`rel`\" pulumi-lang-dotnet=\"`Rel`\" pulumi-lang-go=\"`rel`\" pulumi-lang-python=\"`rel`\" pulumi-lang-yaml=\"`rel`\" pulumi-lang-java=\"`rel`\"\u003e`rel`\u003c/span\u003e: - A name that identifies the relationship of the link to the object that is returned by the URL. The unique value of \"self\" identifies the URL for the object.\n\n### Source\n\nThe \u003cspan pulumi-lang-nodejs=\"`source`\" pulumi-lang-dotnet=\"`Source`\" pulumi-lang-go=\"`source`\" pulumi-lang-python=\"`source`\" pulumi-lang-yaml=\"`source`\" pulumi-lang-java=\"`source`\"\u003e`source`\u003c/span\u003e attribute supports the following:\n\n* \u003cspan pulumi-lang-nodejs=\"`entityType`\" pulumi-lang-dotnet=\"`EntityType`\" pulumi-lang-go=\"`entityType`\" pulumi-lang-python=\"`entity_type`\" pulumi-lang-yaml=\"`entityType`\" pulumi-lang-java=\"`entityType`\"\u003e`entity_type`\u003c/span\u003e: Reference to an entity from which the VM should be cloned or created. Values are:\n  - VM_RECOVERY_POINT: Reference to the recovery point entity from which the VM should be cloned or created.\n  - VM: Reference to an entity from which the VM should be cloned or created.\n* \u003cspan pulumi-lang-nodejs=\"`extId`\" pulumi-lang-dotnet=\"`ExtId`\" pulumi-lang-go=\"`extId`\" pulumi-lang-python=\"`ext_id`\" pulumi-lang-yaml=\"`extId`\" pulumi-lang-java=\"`extId`\"\u003e`ext_id`\u003c/span\u003e: A globally unique identifier of a VM of type UUID.\n\n### Categories\nThe \u003cspan pulumi-lang-nodejs=\"`categories`\" pulumi-lang-dotnet=\"`Categories`\" pulumi-lang-go=\"`categories`\" pulumi-lang-python=\"`categories`\" pulumi-lang-yaml=\"`categories`\" pulumi-lang-java=\"`categories`\"\u003e`categories`\u003c/span\u003e attribute supports the following:\n\n* \u003cspan pulumi-lang-nodejs=\"`extId`\" pulumi-lang-dotnet=\"`ExtId`\" pulumi-lang-go=\"`extId`\" pulumi-lang-python=\"`ext_id`\" pulumi-lang-yaml=\"`extId`\" pulumi-lang-java=\"`extId`\"\u003e`ext_id`\u003c/span\u003e: A globally unique identifier of a VM category of type UUID.\n\n### Ownership Info\nThe \u003cspan pulumi-lang-nodejs=\"`ownershipInfo`\" pulumi-lang-dotnet=\"`OwnershipInfo`\" pulumi-lang-go=\"`ownershipInfo`\" pulumi-lang-python=\"`ownership_info`\" pulumi-lang-yaml=\"`ownershipInfo`\" pulumi-lang-java=\"`ownershipInfo`\"\u003e`ownership_info`\u003c/span\u003e attribute supports the following:\n\n* \u003cspan pulumi-lang-nodejs=\"`owner`\" pulumi-lang-dotnet=\"`Owner`\" pulumi-lang-go=\"`owner`\" pulumi-lang-python=\"`owner`\" pulumi-lang-yaml=\"`owner`\" pulumi-lang-java=\"`owner`\"\u003e`owner`\u003c/span\u003e: Reference to the owner.\n* `owner.ext_id`: A globally unique identifier of a VM owner type UUID.\n\n### Host\nThe \u003cspan pulumi-lang-nodejs=\"`host`\" pulumi-lang-dotnet=\"`Host`\" pulumi-lang-go=\"`host`\" pulumi-lang-python=\"`host`\" pulumi-lang-yaml=\"`host`\" pulumi-lang-java=\"`host`\"\u003e`host`\u003c/span\u003e attribute supports the following:\n\n* \u003cspan pulumi-lang-nodejs=\"`extId`\" pulumi-lang-dotnet=\"`ExtId`\" pulumi-lang-go=\"`extId`\" pulumi-lang-python=\"`ext_id`\" pulumi-lang-yaml=\"`extId`\" pulumi-lang-java=\"`extId`\"\u003e`ext_id`\u003c/span\u003e: A globally unique identifier of a host of type UUID.\n\n### Cluster\nThe \u003cspan pulumi-lang-nodejs=\"`cluster`\" pulumi-lang-dotnet=\"`Cluster`\" pulumi-lang-go=\"`cluster`\" pulumi-lang-python=\"`cluster`\" pulumi-lang-yaml=\"`cluster`\" pulumi-lang-java=\"`cluster`\"\u003e`cluster`\u003c/span\u003e attribute supports the following:\n\n* \u003cspan pulumi-lang-nodejs=\"`extId`\" pulumi-lang-dotnet=\"`ExtId`\" pulumi-lang-go=\"`extId`\" pulumi-lang-python=\"`ext_id`\" pulumi-lang-yaml=\"`extId`\" pulumi-lang-java=\"`extId`\"\u003e`ext_id`\u003c/span\u003e: The globally unique identifier of a cluster type UUID.\n\n### Availability Zone\nThe \u003cspan pulumi-lang-nodejs=\"`availabilityZone`\" pulumi-lang-dotnet=\"`AvailabilityZone`\" pulumi-lang-go=\"`availabilityZone`\" pulumi-lang-python=\"`availability_zone`\" pulumi-lang-yaml=\"`availabilityZone`\" pulumi-lang-java=\"`availabilityZone`\"\u003e`availability_zone`\u003c/span\u003e attribute supports the following:\n\n* \u003cspan pulumi-lang-nodejs=\"`extId`\" pulumi-lang-dotnet=\"`ExtId`\" pulumi-lang-go=\"`extId`\" pulumi-lang-python=\"`ext_id`\" pulumi-lang-yaml=\"`extId`\" pulumi-lang-java=\"`extId`\"\u003e`ext_id`\u003c/span\u003e: The globally unique identifier of an availability zone type UUID.\n\n### Guest Customization\nThe \u003cspan pulumi-lang-nodejs=\"`guestCustomization`\" pulumi-lang-dotnet=\"`GuestCustomization`\" pulumi-lang-go=\"`guestCustomization`\" pulumi-lang-python=\"`guest_customization`\" pulumi-lang-yaml=\"`guestCustomization`\" pulumi-lang-java=\"`guestCustomization`\"\u003e`guest_customization`\u003c/span\u003e attribute supports the following:\n\n* \u003cspan pulumi-lang-nodejs=\"`config`\" pulumi-lang-dotnet=\"`Config`\" pulumi-lang-go=\"`config`\" pulumi-lang-python=\"`config`\" pulumi-lang-yaml=\"`config`\" pulumi-lang-java=\"`config`\"\u003e`config`\u003c/span\u003e: The Nutanix Guest Tools customization settings.\n\n* `config.sysprep`: Sysprep config\n* `config.cloud_init`: CloudInit Config\n\n\n\n#### config.sysprep\n* \u003cspan pulumi-lang-nodejs=\"`installType`\" pulumi-lang-dotnet=\"`InstallType`\" pulumi-lang-go=\"`installType`\" pulumi-lang-python=\"`install_type`\" pulumi-lang-yaml=\"`installType`\" pulumi-lang-java=\"`installType`\"\u003e`install_type`\u003c/span\u003e: Indicates whether the guest will be freshly installed using this unattend configuration, or this unattend configuration will be applied to a pre-prepared image. Default is 'PREPARED'.\n* \u003cspan pulumi-lang-nodejs=\"`sysprepScript`\" pulumi-lang-dotnet=\"`SysprepScript`\" pulumi-lang-go=\"`sysprepScript`\" pulumi-lang-python=\"`sysprep_script`\" pulumi-lang-yaml=\"`sysprepScript`\" pulumi-lang-java=\"`sysprepScript`\"\u003e`sysprep_script`\u003c/span\u003e: Object either UnattendXml or CustomKeyValues\n* `sysprep_script.unattend_xml`: xml object\n* `sysprep_script.custom_key_values`: The list of the individual KeyValuePair elements.\n\n\n#### config.cloud_init\n* \u003cspan pulumi-lang-nodejs=\"`datasourceType`\" pulumi-lang-dotnet=\"`DatasourceType`\" pulumi-lang-go=\"`datasourceType`\" pulumi-lang-python=\"`datasource_type`\" pulumi-lang-yaml=\"`datasourceType`\" pulumi-lang-java=\"`datasourceType`\"\u003e`datasource_type`\u003c/span\u003e: Type of datasource. Default: CONFIG_DRIVE_V2\n* \u003cspan pulumi-lang-nodejs=\"`metadata`\" pulumi-lang-dotnet=\"`Metadata`\" pulumi-lang-go=\"`metadata`\" pulumi-lang-python=\"`metadata`\" pulumi-lang-yaml=\"`metadata`\" pulumi-lang-java=\"`metadata`\"\u003e`metadata`\u003c/span\u003e: The contents of the\u003cspan pulumi-lang-nodejs=\" metaData \" pulumi-lang-dotnet=\" MetaData \" pulumi-lang-go=\" metaData \" pulumi-lang-python=\" meta_data \" pulumi-lang-yaml=\" metaData \" pulumi-lang-java=\" metaData \"\u003e meta_data \u003c/span\u003econfiguration for cloud-init. This can be formatted as YAML or JSON. The value must be base64 encoded.\n* \u003cspan pulumi-lang-nodejs=\"`cloudInitScript`\" pulumi-lang-dotnet=\"`CloudInitScript`\" pulumi-lang-go=\"`cloudInitScript`\" pulumi-lang-python=\"`cloud_init_script`\" pulumi-lang-yaml=\"`cloudInitScript`\" pulumi-lang-java=\"`cloudInitScript`\"\u003e`cloud_init_script`\u003c/span\u003e: The script to use for cloud-init.\n* `cloud_init_script.user_data`: user data object\n* `cloud_init_script.custom_keys`: The list of the individual KeyValuePair elements.\n\n\n### Guest Tools\nThe \u003cspan pulumi-lang-nodejs=\"`guestTools`\" pulumi-lang-dotnet=\"`GuestTools`\" pulumi-lang-go=\"`guestTools`\" pulumi-lang-python=\"`guest_tools`\" pulumi-lang-yaml=\"`guestTools`\" pulumi-lang-java=\"`guestTools`\"\u003e`guest_tools`\u003c/span\u003e attribute supports the following:\n\n* \u003cspan pulumi-lang-nodejs=\"`version`\" pulumi-lang-dotnet=\"`Version`\" pulumi-lang-go=\"`version`\" pulumi-lang-python=\"`version`\" pulumi-lang-yaml=\"`version`\" pulumi-lang-java=\"`version`\"\u003e`version`\u003c/span\u003e: Version of Nutanix Guest Tools installed on the VM.\n* \u003cspan pulumi-lang-nodejs=\"`isInstalled`\" pulumi-lang-dotnet=\"`IsInstalled`\" pulumi-lang-go=\"`isInstalled`\" pulumi-lang-python=\"`is_installed`\" pulumi-lang-yaml=\"`isInstalled`\" pulumi-lang-java=\"`isInstalled`\"\u003e`is_installed`\u003c/span\u003e: Indicates whether Nutanix Guest Tools is installed on the VM or not.\n* \u003cspan pulumi-lang-nodejs=\"`isIsoInserted`\" pulumi-lang-dotnet=\"`IsIsoInserted`\" pulumi-lang-go=\"`isIsoInserted`\" pulumi-lang-python=\"`is_iso_inserted`\" pulumi-lang-yaml=\"`isIsoInserted`\" pulumi-lang-java=\"`isIsoInserted`\"\u003e`is_iso_inserted`\u003c/span\u003e: Indicates whether Nutanix Guest Tools ISO is inserted or not.\n* \u003cspan pulumi-lang-nodejs=\"`availableVersion`\" pulumi-lang-dotnet=\"`AvailableVersion`\" pulumi-lang-go=\"`availableVersion`\" pulumi-lang-python=\"`available_version`\" pulumi-lang-yaml=\"`availableVersion`\" pulumi-lang-java=\"`availableVersion`\"\u003e`available_version`\u003c/span\u003e: Version of Nutanix Guest Tools available on the cluster.\n* \u003cspan pulumi-lang-nodejs=\"`guestOsVersion`\" pulumi-lang-dotnet=\"`GuestOsVersion`\" pulumi-lang-go=\"`guestOsVersion`\" pulumi-lang-python=\"`guest_os_version`\" pulumi-lang-yaml=\"`guestOsVersion`\" pulumi-lang-java=\"`guestOsVersion`\"\u003e`guest_os_version`\u003c/span\u003e: Version of the operating system on the VM\n* \u003cspan pulumi-lang-nodejs=\"`isReachable`\" pulumi-lang-dotnet=\"`IsReachable`\" pulumi-lang-go=\"`isReachable`\" pulumi-lang-python=\"`is_reachable`\" pulumi-lang-yaml=\"`isReachable`\" pulumi-lang-java=\"`isReachable`\"\u003e`is_reachable`\u003c/span\u003e: Indicates whether the communication from VM to CVM is active or not.\n* \u003cspan pulumi-lang-nodejs=\"`isVssSnapshotCapable`\" pulumi-lang-dotnet=\"`IsVssSnapshotCapable`\" pulumi-lang-go=\"`isVssSnapshotCapable`\" pulumi-lang-python=\"`is_vss_snapshot_capable`\" pulumi-lang-yaml=\"`isVssSnapshotCapable`\" pulumi-lang-java=\"`isVssSnapshotCapable`\"\u003e`is_vss_snapshot_capable`\u003c/span\u003e: Indicates whether the VM is configured to take VSS snapshots through NGT or not.\n* \u003cspan pulumi-lang-nodejs=\"`isVmMobilityDriversInstalled`\" pulumi-lang-dotnet=\"`IsVmMobilityDriversInstalled`\" pulumi-lang-go=\"`isVmMobilityDriversInstalled`\" pulumi-lang-python=\"`is_vm_mobility_drivers_installed`\" pulumi-lang-yaml=\"`isVmMobilityDriversInstalled`\" pulumi-lang-java=\"`isVmMobilityDriversInstalled`\"\u003e`is_vm_mobility_drivers_installed`\u003c/span\u003e: Indicates whether the VM mobility drivers are installed on the VM or not.\n* \u003cspan pulumi-lang-nodejs=\"`isEnabled`\" pulumi-lang-dotnet=\"`IsEnabled`\" pulumi-lang-go=\"`isEnabled`\" pulumi-lang-python=\"`is_enabled`\" pulumi-lang-yaml=\"`isEnabled`\" pulumi-lang-java=\"`isEnabled`\"\u003e`is_enabled`\u003c/span\u003e: Indicates whether Nutanix Guest Tools is enabled or not.\n* \u003cspan pulumi-lang-nodejs=\"`capabilities`\" pulumi-lang-dotnet=\"`Capabilities`\" pulumi-lang-go=\"`capabilities`\" pulumi-lang-python=\"`capabilities`\" pulumi-lang-yaml=\"`capabilities`\" pulumi-lang-java=\"`capabilities`\"\u003e`capabilities`\u003c/span\u003e: The list of the application names that are enabled on the guest VM.\n\n### Boot Config\nThe \u003cspan pulumi-lang-nodejs=\"`bootConfig`\" pulumi-lang-dotnet=\"`BootConfig`\" pulumi-lang-go=\"`bootConfig`\" pulumi-lang-python=\"`boot_config`\" pulumi-lang-yaml=\"`bootConfig`\" pulumi-lang-java=\"`bootConfig`\"\u003e`boot_config`\u003c/span\u003e attribute supports the following:\n\n* \u003cspan pulumi-lang-nodejs=\"`legacyBoot`\" pulumi-lang-dotnet=\"`LegacyBoot`\" pulumi-lang-go=\"`legacyBoot`\" pulumi-lang-python=\"`legacy_boot`\" pulumi-lang-yaml=\"`legacyBoot`\" pulumi-lang-java=\"`legacyBoot`\"\u003e`legacy_boot`\u003c/span\u003e: LegacyBoot config Object\n* \u003cspan pulumi-lang-nodejs=\"`uefiBoot`\" pulumi-lang-dotnet=\"`UefiBoot`\" pulumi-lang-go=\"`uefiBoot`\" pulumi-lang-python=\"`uefi_boot`\" pulumi-lang-yaml=\"`uefiBoot`\" pulumi-lang-java=\"`uefiBoot`\"\u003e`uefi_boot`\u003c/span\u003e: UefiBoot config Object\n\n#### boot_config.legacy_boot\n* \u003cspan pulumi-lang-nodejs=\"`bootDevice`\" pulumi-lang-dotnet=\"`BootDevice`\" pulumi-lang-go=\"`bootDevice`\" pulumi-lang-python=\"`boot_device`\" pulumi-lang-yaml=\"`bootDevice`\" pulumi-lang-java=\"`bootDevice`\"\u003e`boot_device`\u003c/span\u003e: Boot Device object\n* `boot_device.boot_device_disk`: Disk address.\n* `boot_device.boot_device_disk.disk_address.bus_type`: Bus type for the device\n* `boot_device.boot_device_disk.disk_address.index`: Device index on the bus. This field is ignored unless the bus details are specified.\n\n* `boot_device.boot_device_nic`: Disk Nic address.\n* `boot_device.boot_device_nic.mac_address`: mac address\n\n* \u003cspan pulumi-lang-nodejs=\"`bootOrder`\" pulumi-lang-dotnet=\"`BootOrder`\" pulumi-lang-go=\"`bootOrder`\" pulumi-lang-python=\"`boot_order`\" pulumi-lang-yaml=\"`bootOrder`\" pulumi-lang-java=\"`bootOrder`\"\u003e`boot_order`\u003c/span\u003e: Indicates the order of device types in which the VM should try to boot from. If the boot device order is not provided the system will decide an appropriate boot device order.\n\n\n#### boot_config.uefi_boot\n* \u003cspan pulumi-lang-nodejs=\"`isSecureBootEnabled`\" pulumi-lang-dotnet=\"`IsSecureBootEnabled`\" pulumi-lang-go=\"`isSecureBootEnabled`\" pulumi-lang-python=\"`is_secure_boot_enabled`\" pulumi-lang-yaml=\"`isSecureBootEnabled`\" pulumi-lang-java=\"`isSecureBootEnabled`\"\u003e`is_secure_boot_enabled`\u003c/span\u003e: Indicate whether to enable secure boot or not\n* \u003cspan pulumi-lang-nodejs=\"`nvramDevice`\" pulumi-lang-dotnet=\"`NvramDevice`\" pulumi-lang-go=\"`nvramDevice`\" pulumi-lang-python=\"`nvram_device`\" pulumi-lang-yaml=\"`nvramDevice`\" pulumi-lang-java=\"`nvramDevice`\"\u003e`nvram_device`\u003c/span\u003e: Configuration for NVRAM to be presented to the VM.\n* `nvram_device.backing_storage_info`: Storage provided by Nutanix ADSF\n\n##### nvram_device.backing_storage_info\n* \u003cspan pulumi-lang-nodejs=\"`diskExtId`\" pulumi-lang-dotnet=\"`DiskExtId`\" pulumi-lang-go=\"`diskExtId`\" pulumi-lang-python=\"`disk_ext_id`\" pulumi-lang-yaml=\"`diskExtId`\" pulumi-lang-java=\"`diskExtId`\"\u003e`disk_ext_id`\u003c/span\u003e: The globally unique identifier of a VM disk. It should be of type UUID.\n* \u003cspan pulumi-lang-nodejs=\"`diskSizeBytes`\" pulumi-lang-dotnet=\"`DiskSizeBytes`\" pulumi-lang-go=\"`diskSizeBytes`\" pulumi-lang-python=\"`disk_size_bytes`\" pulumi-lang-yaml=\"`diskSizeBytes`\" pulumi-lang-java=\"`diskSizeBytes`\"\u003e`disk_size_bytes`\u003c/span\u003e: Size of the disk in Bytes\n* \u003cspan pulumi-lang-nodejs=\"`storageContainer`\" pulumi-lang-dotnet=\"`StorageContainer`\" pulumi-lang-go=\"`storageContainer`\" pulumi-lang-python=\"`storage_container`\" pulumi-lang-yaml=\"`storageContainer`\" pulumi-lang-java=\"`storageContainer`\"\u003e`storage_container`\u003c/span\u003e: This reference is for disk level storage container preference. This preference specifies the storage container to which this disk belongs.\n* \u003cspan pulumi-lang-nodejs=\"`storageConfig`\" pulumi-lang-dotnet=\"`StorageConfig`\" pulumi-lang-go=\"`storageConfig`\" pulumi-lang-python=\"`storage_config`\" pulumi-lang-yaml=\"`storageConfig`\" pulumi-lang-java=\"`storageConfig`\"\u003e`storage_config`\u003c/span\u003e: Storage configuration for VM disks\n* `storage_config.is_flash_mode_enabled`: Indicates whether the virtual disk is pinned to the hot tier or not.\n* \u003cspan pulumi-lang-nodejs=\"`dataSource`\" pulumi-lang-dotnet=\"`DataSource`\" pulumi-lang-go=\"`dataSource`\" pulumi-lang-python=\"`data_source`\" pulumi-lang-yaml=\"`dataSource`\" pulumi-lang-java=\"`dataSource`\"\u003e`data_source`\u003c/span\u003e: A reference to a disk or image that contains the contents of a disk.\n* \u003cspan pulumi-lang-nodejs=\"`isMigrationInProgress`\" pulumi-lang-dotnet=\"`IsMigrationInProgress`\" pulumi-lang-go=\"`isMigrationInProgress`\" pulumi-lang-python=\"`is_migration_in_progress`\" pulumi-lang-yaml=\"`isMigrationInProgress`\" pulumi-lang-java=\"`isMigrationInProgress`\"\u003e`is_migration_in_progress`\u003c/span\u003e: Indicates if the disk is undergoing migration to another container.\n\n### VTPM Config\nThe \u003cspan pulumi-lang-nodejs=\"`vtpmConfig`\" pulumi-lang-dotnet=\"`VtpmConfig`\" pulumi-lang-go=\"`vtpmConfig`\" pulumi-lang-python=\"`vtpm_config`\" pulumi-lang-yaml=\"`vtpmConfig`\" pulumi-lang-java=\"`vtpmConfig`\"\u003e`vtpm_config`\u003c/span\u003e attribute supports the following:\n\n* \u003cspan pulumi-lang-nodejs=\"`isVtpmEnabled`\" pulumi-lang-dotnet=\"`IsVtpmEnabled`\" pulumi-lang-go=\"`isVtpmEnabled`\" pulumi-lang-python=\"`is_vtpm_enabled`\" pulumi-lang-yaml=\"`isVtpmEnabled`\" pulumi-lang-java=\"`isVtpmEnabled`\"\u003e`is_vtpm_enabled`\u003c/span\u003e: Indicates whether the virtual trusted platform module is enabled for the Guest OS or not.\n* \u003cspan pulumi-lang-nodejs=\"`version`\" pulumi-lang-dotnet=\"`Version`\" pulumi-lang-go=\"`version`\" pulumi-lang-python=\"`version`\" pulumi-lang-yaml=\"`version`\" pulumi-lang-java=\"`version`\"\u003e`version`\u003c/span\u003e: Virtual trusted platform module version.\n\n### APC Config\nThe \u003cspan pulumi-lang-nodejs=\"`apcConfig`\" pulumi-lang-dotnet=\"`ApcConfig`\" pulumi-lang-go=\"`apcConfig`\" pulumi-lang-python=\"`apc_config`\" pulumi-lang-yaml=\"`apcConfig`\" pulumi-lang-java=\"`apcConfig`\"\u003e`apc_config`\u003c/span\u003e attribute supports the following:\n\n* \u003cspan pulumi-lang-nodejs=\"`isApcEnabled`\" pulumi-lang-dotnet=\"`IsApcEnabled`\" pulumi-lang-go=\"`isApcEnabled`\" pulumi-lang-python=\"`is_apc_enabled`\" pulumi-lang-yaml=\"`isApcEnabled`\" pulumi-lang-java=\"`isApcEnabled`\"\u003e`is_apc_enabled`\u003c/span\u003e: If enabled, the selected CPU model will be retained across live and cold migrations of the VM.\n* \u003cspan pulumi-lang-nodejs=\"`cpuModel`\" pulumi-lang-dotnet=\"`CpuModel`\" pulumi-lang-go=\"`cpuModel`\" pulumi-lang-python=\"`cpu_model`\" pulumi-lang-yaml=\"`cpuModel`\" pulumi-lang-java=\"`cpuModel`\"\u003e`cpu_model`\u003c/span\u003e: CPU model associated with the VM if Advanced Processor Compatibility(APC) is enabled. If APC is enabled and no CPU model is explicitly set, a default baseline CPU model is picked by the system. See the APC documentation for more information\n* `cpu_model.ext_id`: The globally unique identifier of the CPU model associated with the VM.\n* `cpu_model.name`: Name of the CPU model associated with the VM.\n\n\n### Storage Config\nThe \u003cspan pulumi-lang-nodejs=\"`storageConfig`\" pulumi-lang-dotnet=\"`StorageConfig`\" pulumi-lang-go=\"`storageConfig`\" pulumi-lang-python=\"`storage_config`\" pulumi-lang-yaml=\"`storageConfig`\" pulumi-lang-java=\"`storageConfig`\"\u003e`storage_config`\u003c/span\u003e attribute supports the following:\n\n* \u003cspan pulumi-lang-nodejs=\"`isFlashModeEnabled`\" pulumi-lang-dotnet=\"`IsFlashModeEnabled`\" pulumi-lang-go=\"`isFlashModeEnabled`\" pulumi-lang-python=\"`is_flash_mode_enabled`\" pulumi-lang-yaml=\"`isFlashModeEnabled`\" pulumi-lang-java=\"`isFlashModeEnabled`\"\u003e`is_flash_mode_enabled`\u003c/span\u003e: Indicates whether the virtual disk is pinned to the hot tier or not.\n* \u003cspan pulumi-lang-nodejs=\"`qosConfig`\" pulumi-lang-dotnet=\"`QosConfig`\" pulumi-lang-go=\"`qosConfig`\" pulumi-lang-python=\"`qos_config`\" pulumi-lang-yaml=\"`qosConfig`\" pulumi-lang-java=\"`qosConfig`\"\u003e`qos_config`\u003c/span\u003e: QoS parameters to be enforced.\n* `qos_config.throttled_iops`: Throttled IOPS for the governed entities. The block size for the I/O is 32 kB.\n\n### Disks\nThe \u003cspan pulumi-lang-nodejs=\"`disks`\" pulumi-lang-dotnet=\"`Disks`\" pulumi-lang-go=\"`disks`\" pulumi-lang-python=\"`disks`\" pulumi-lang-yaml=\"`disks`\" pulumi-lang-java=\"`disks`\"\u003e`disks`\u003c/span\u003e attribute supports the following:\n\n* \u003cspan pulumi-lang-nodejs=\"`extId`\" pulumi-lang-dotnet=\"`ExtId`\" pulumi-lang-go=\"`extId`\" pulumi-lang-python=\"`ext_id`\" pulumi-lang-yaml=\"`extId`\" pulumi-lang-java=\"`extId`\"\u003e`ext_id`\u003c/span\u003e: A globally unique identifier of an instance that is suitable for external consumption.\n* \u003cspan pulumi-lang-nodejs=\"`diskAddress`\" pulumi-lang-dotnet=\"`DiskAddress`\" pulumi-lang-go=\"`diskAddress`\" pulumi-lang-python=\"`disk_address`\" pulumi-lang-yaml=\"`diskAddress`\" pulumi-lang-java=\"`diskAddress`\"\u003e`disk_address`\u003c/span\u003e: Disk address.\n* `disk_address.bus_type`: Bus type for the device. The acceptable values are: SCSI, IDE, PCI, SATA, SPAPR (only PPC).\n* `disk_address.index`: Device index on the bus. This field is ignored unless the bus details are specified.\n* \u003cspan pulumi-lang-nodejs=\"`backingInfo`\" pulumi-lang-dotnet=\"`BackingInfo`\" pulumi-lang-go=\"`backingInfo`\" pulumi-lang-python=\"`backing_info`\" pulumi-lang-yaml=\"`backingInfo`\" pulumi-lang-java=\"`backingInfo`\"\u003e`backing_info`\u003c/span\u003e: Supporting storage to create virtual disk on.\n* `backing_info.vm_disk`: backing Info for vmDisk\n* `backing_info.adfs_volume_group_reference`: Volume Group Reference\n* `backing_info.adfs_volume_group_reference.volume_group_ext_id`: The globally unique identifier of an ADSF volume group. It should be of type UUID.\n\n\n#### backing_info.vm_disk\n* \u003cspan pulumi-lang-nodejs=\"`diskExtId`\" pulumi-lang-dotnet=\"`DiskExtId`\" pulumi-lang-go=\"`diskExtId`\" pulumi-lang-python=\"`disk_ext_id`\" pulumi-lang-yaml=\"`diskExtId`\" pulumi-lang-java=\"`diskExtId`\"\u003e`disk_ext_id`\u003c/span\u003e: The globally unique identifier of a VM disk. It should be of type UUID.\n* \u003cspan pulumi-lang-nodejs=\"`diskSizeBytes`\" pulumi-lang-dotnet=\"`DiskSizeBytes`\" pulumi-lang-go=\"`diskSizeBytes`\" pulumi-lang-python=\"`disk_size_bytes`\" pulumi-lang-yaml=\"`diskSizeBytes`\" pulumi-lang-java=\"`diskSizeBytes`\"\u003e`disk_size_bytes`\u003c/span\u003e: Size of the disk in Bytes\n* \u003cspan pulumi-lang-nodejs=\"`storageContainer`\" pulumi-lang-dotnet=\"`StorageContainer`\" pulumi-lang-go=\"`storageContainer`\" pulumi-lang-python=\"`storage_container`\" pulumi-lang-yaml=\"`storageContainer`\" pulumi-lang-java=\"`storageContainer`\"\u003e`storage_container`\u003c/span\u003e: This reference is for disk level storage container preference. This preference specifies the storage container to which this disk belongs.\n* `storage_container.ext_id`: A globally unique identifier of a VM disk container. It should be of type UUID.\n* \u003cspan pulumi-lang-nodejs=\"`storageConfig`\" pulumi-lang-dotnet=\"`StorageConfig`\" pulumi-lang-go=\"`storageConfig`\" pulumi-lang-python=\"`storage_config`\" pulumi-lang-yaml=\"`storageConfig`\" pulumi-lang-java=\"`storageConfig`\"\u003e`storage_config`\u003c/span\u003e: Storage configuration for VM disks\n* `storage_config.is_flash_mode_enabled`: Indicates whether the virtual disk is pinned to the hot tier or not.\n* \u003cspan pulumi-lang-nodejs=\"`dataSource`\" pulumi-lang-dotnet=\"`DataSource`\" pulumi-lang-go=\"`dataSource`\" pulumi-lang-python=\"`data_source`\" pulumi-lang-yaml=\"`dataSource`\" pulumi-lang-java=\"`dataSource`\"\u003e`data_source`\u003c/span\u003e: A reference to a disk or image that contains the contents of a disk.\n* \u003cspan pulumi-lang-nodejs=\"`isMigrationInProgress`\" pulumi-lang-dotnet=\"`IsMigrationInProgress`\" pulumi-lang-go=\"`isMigrationInProgress`\" pulumi-lang-python=\"`is_migration_in_progress`\" pulumi-lang-yaml=\"`isMigrationInProgress`\" pulumi-lang-java=\"`isMigrationInProgress`\"\u003e`is_migration_in_progress`\u003c/span\u003e: Indicates if the disk is undergoing migration to another container.\n\n#### backing_info.vm_disk.data_source\n* \u003cspan pulumi-lang-nodejs=\"`reference`\" pulumi-lang-dotnet=\"`Reference`\" pulumi-lang-go=\"`reference`\" pulumi-lang-python=\"`reference`\" pulumi-lang-yaml=\"`reference`\" pulumi-lang-java=\"`reference`\"\u003e`reference`\u003c/span\u003e: Reference to image or vm disk\n* `reference.image_reference`: Image Reference\n* `reference.image_reference.image_ext_id`: The globally unique identifier of an image. It should be of type UUID.\n* `reference.vm_disk_reference`: Vm Disk Reference\n* `reference.vm_disk_reference.disk_ext_id`:  The globally unique identifier of a VM disk. It should be of type UUID.\n* `reference.vm_disk_reference.disk_address`: Disk address.\n* `reference.vm_disk_reference.disk_address.bus_type`: Bus type for the device. The acceptable values are: SCSI, IDE, PCI, SATA, SPAPR (only PPC).\n* `reference.vm_disk_reference.disk_address.index`: Device index on the bus. This field is ignored unless the bus details are specified.\n* `reference.vm_disk_reference.vm_reference`: This is a reference to a VM.\n* `reference.vm_disk_reference.vm_reference.ext_id`: A globally unique identifier of a VM of type UUID.\n\n\n\n\n### CD-ROMs\nThe \u003cspan pulumi-lang-nodejs=\"`cdRoms`\" pulumi-lang-dotnet=\"`CdRoms`\" pulumi-lang-go=\"`cdRoms`\" pulumi-lang-python=\"`cd_roms`\" pulumi-lang-yaml=\"`cdRoms`\" pulumi-lang-java=\"`cdRoms`\"\u003e`cd_roms`\u003c/span\u003e attribute supports the following:\n\n* \u003cspan pulumi-lang-nodejs=\"`extId`\" pulumi-lang-dotnet=\"`ExtId`\" pulumi-lang-go=\"`extId`\" pulumi-lang-python=\"`ext_id`\" pulumi-lang-yaml=\"`extId`\" pulumi-lang-java=\"`extId`\"\u003e`ext_id`\u003c/span\u003e: A globally unique identifier of an instance that is suitable for external consumption.\n* \u003cspan pulumi-lang-nodejs=\"`diskAddress`\" pulumi-lang-dotnet=\"`DiskAddress`\" pulumi-lang-go=\"`diskAddress`\" pulumi-lang-python=\"`disk_address`\" pulumi-lang-yaml=\"`diskAddress`\" pulumi-lang-java=\"`diskAddress`\"\u003e`disk_address`\u003c/span\u003e: Virtual Machine disk (VM disk).\n* \u003cspan pulumi-lang-nodejs=\"`backingInfo`\" pulumi-lang-dotnet=\"`BackingInfo`\" pulumi-lang-go=\"`backingInfo`\" pulumi-lang-python=\"`backing_info`\" pulumi-lang-yaml=\"`backingInfo`\" pulumi-lang-java=\"`backingInfo`\"\u003e`backing_info`\u003c/span\u003e: Storage provided by Nutanix ADSF\n* \u003cspan pulumi-lang-nodejs=\"`isoType`\" pulumi-lang-dotnet=\"`IsoType`\" pulumi-lang-go=\"`isoType`\" pulumi-lang-python=\"`iso_type`\" pulumi-lang-yaml=\"`isoType`\" pulumi-lang-java=\"`isoType`\"\u003e`iso_type`\u003c/span\u003e: Type of ISO image inserted in CD-ROM\n\n### NICs\nThe \u003cspan pulumi-lang-nodejs=\"`nics`\" pulumi-lang-dotnet=\"`Nics`\" pulumi-lang-go=\"`nics`\" pulumi-lang-python=\"`nics`\" pulumi-lang-yaml=\"`nics`\" pulumi-lang-java=\"`nics`\"\u003e`nics`\u003c/span\u003e attribute supports the following:\n\n* \u003cspan pulumi-lang-nodejs=\"`extId`\" pulumi-lang-dotnet=\"`ExtId`\" pulumi-lang-go=\"`extId`\" pulumi-lang-python=\"`ext_id`\" pulumi-lang-yaml=\"`extId`\" pulumi-lang-java=\"`extId`\"\u003e`ext_id`\u003c/span\u003e: A globally unique identifier of an instance that is suitable for external consumption\n* \u003cspan pulumi-lang-nodejs=\"`backingInfo`\" pulumi-lang-dotnet=\"`BackingInfo`\" pulumi-lang-go=\"`backingInfo`\" pulumi-lang-python=\"`backing_info`\" pulumi-lang-yaml=\"`backingInfo`\" pulumi-lang-java=\"`backingInfo`\"\u003e`backing_info`\u003c/span\u003e: Defines a NIC emulated by the hypervisor\n* \u003cspan pulumi-lang-nodejs=\"`networkInfo`\" pulumi-lang-dotnet=\"`NetworkInfo`\" pulumi-lang-go=\"`networkInfo`\" pulumi-lang-python=\"`network_info`\" pulumi-lang-yaml=\"`networkInfo`\" pulumi-lang-java=\"`networkInfo`\"\u003e`network_info`\u003c/span\u003e: Network information for a NIC.\n\n### nics.backing_info\n* \u003cspan pulumi-lang-nodejs=\"`model`\" pulumi-lang-dotnet=\"`Model`\" pulumi-lang-go=\"`model`\" pulumi-lang-python=\"`model`\" pulumi-lang-yaml=\"`model`\" pulumi-lang-java=\"`model`\"\u003e`model`\u003c/span\u003e: Options for the NIC emulation.\n* \u003cspan pulumi-lang-nodejs=\"`macAddress`\" pulumi-lang-dotnet=\"`MacAddress`\" pulumi-lang-go=\"`macAddress`\" pulumi-lang-python=\"`mac_address`\" pulumi-lang-yaml=\"`macAddress`\" pulumi-lang-java=\"`macAddress`\"\u003e`mac_address`\u003c/span\u003e: MAC address of the emulated NIC.\n* \u003cspan pulumi-lang-nodejs=\"`isConnected`\" pulumi-lang-dotnet=\"`IsConnected`\" pulumi-lang-go=\"`isConnected`\" pulumi-lang-python=\"`is_connected`\" pulumi-lang-yaml=\"`isConnected`\" pulumi-lang-java=\"`isConnected`\"\u003e`is_connected`\u003c/span\u003e: Indicates whether the NIC is connected or not. Default is True.\n* \u003cspan pulumi-lang-nodejs=\"`numQueues`\" pulumi-lang-dotnet=\"`NumQueues`\" pulumi-lang-go=\"`numQueues`\" pulumi-lang-python=\"`num_queues`\" pulumi-lang-yaml=\"`numQueues`\" pulumi-lang-java=\"`numQueues`\"\u003e`num_queues`\u003c/span\u003e: The number of Tx/Rx queue pairs for this NIC\n\n### nics.network_info\n* \u003cspan pulumi-lang-nodejs=\"`nicType`\" pulumi-lang-dotnet=\"`NicType`\" pulumi-lang-go=\"`nicType`\" pulumi-lang-python=\"`nic_type`\" pulumi-lang-yaml=\"`nicType`\" pulumi-lang-java=\"`nicType`\"\u003e`nic_type`\u003c/span\u003e: NIC type. Defaults to NORMAL_NIC. The acceptable values are: SPAN_DESTINATION_NIC, NORMAL_NIC, DIRECT_NIC, NETWORK_FUNCTION_NIC.\n* \u003cspan pulumi-lang-nodejs=\"`networkFunctionChain`\" pulumi-lang-dotnet=\"`NetworkFunctionChain`\" pulumi-lang-go=\"`networkFunctionChain`\" pulumi-lang-python=\"`network_function_chain`\" pulumi-lang-yaml=\"`networkFunctionChain`\" pulumi-lang-java=\"`networkFunctionChain`\"\u003e`network_function_chain`\u003c/span\u003e: The network function chain associates with the NIC. Only valid if\u003cspan pulumi-lang-nodejs=\" nicType \" pulumi-lang-dotnet=\" NicType \" pulumi-lang-go=\" nicType \" pulumi-lang-python=\" nic_type \" pulumi-lang-yaml=\" nicType \" pulumi-lang-java=\" nicType \"\u003e nic_type \u003c/span\u003eis NORMAL_NIC.\n* `network_function_chain.ext_id`: The globally unique identifier of a network function chain. It should be of type UUID.\n* \u003cspan pulumi-lang-nodejs=\"`networkFunctionNicType`\" pulumi-lang-dotnet=\"`NetworkFunctionNicType`\" pulumi-lang-go=\"`networkFunctionNicType`\" pulumi-lang-python=\"`network_function_nic_type`\" pulumi-lang-yaml=\"`networkFunctionNicType`\" pulumi-lang-java=\"`networkFunctionNicType`\"\u003e`network_function_nic_type`\u003c/span\u003e: The type of this Network function NIC. Defaults to INGRESS.  values are: TAP, EGRESS, INGRESS.\n* \u003cspan pulumi-lang-nodejs=\"`subnet`\" pulumi-lang-dotnet=\"`Subnet`\" pulumi-lang-go=\"`subnet`\" pulumi-lang-python=\"`subnet`\" pulumi-lang-yaml=\"`subnet`\" pulumi-lang-java=\"`subnet`\"\u003e`subnet`\u003c/span\u003e: Network identifier for this adapter. Only valid if\u003cspan pulumi-lang-nodejs=\" nicType \" pulumi-lang-dotnet=\" NicType \" pulumi-lang-go=\" nicType \" pulumi-lang-python=\" nic_type \" pulumi-lang-yaml=\" nicType \" pulumi-lang-java=\" nicType \"\u003e nic_type \u003c/span\u003eis NORMAL_NIC or DIRECT_NIC.\n* `subnet.ext_id`: The globally unique identifier of a subnet of type UUID.\n* \u003cspan pulumi-lang-nodejs=\"`vlanMode`\" pulumi-lang-dotnet=\"`VlanMode`\" pulumi-lang-go=\"`vlanMode`\" pulumi-lang-python=\"`vlan_mode`\" pulumi-lang-yaml=\"`vlanMode`\" pulumi-lang-java=\"`vlanMode`\"\u003e`vlan_mode`\u003c/span\u003e: all the virtual NICs are created in ACCESS mode, which permits only one VLAN per virtual network. TRUNKED mode allows multiple VLANs on a single VM NIC for network-aware user VMs. values are: ACCESS, TRUNKED.\n* \u003cspan pulumi-lang-nodejs=\"`trunkedVlans`\" pulumi-lang-dotnet=\"`TrunkedVlans`\" pulumi-lang-go=\"`trunkedVlans`\" pulumi-lang-python=\"`trunked_vlans`\" pulumi-lang-yaml=\"`trunkedVlans`\" pulumi-lang-java=\"`trunkedVlans`\"\u003e`trunked_vlans`\u003c/span\u003e: List of networks to trunk if VLAN mode is marked as TRUNKED. If empty and VLAN mode is set to TRUNKED, all the VLANs are trunked.\n* \u003cspan pulumi-lang-nodejs=\"`shouldAllowUnknownMacs`\" pulumi-lang-dotnet=\"`ShouldAllowUnknownMacs`\" pulumi-lang-go=\"`shouldAllowUnknownMacs`\" pulumi-lang-python=\"`should_allow_unknown_macs`\" pulumi-lang-yaml=\"`shouldAllowUnknownMacs`\" pulumi-lang-java=\"`shouldAllowUnknownMacs`\"\u003e`should_allow_unknown_macs`\u003c/span\u003e: Indicates whether an unknown unicast traffic is forwarded to this NIC or not. This is applicable only for the NICs on the overlay subnets.\n* \u003cspan pulumi-lang-nodejs=\"`ipv4Config`\" pulumi-lang-dotnet=\"`Ipv4Config`\" pulumi-lang-go=\"`ipv4Config`\" pulumi-lang-python=\"`ipv4_config`\" pulumi-lang-yaml=\"`ipv4Config`\" pulumi-lang-java=\"`ipv4Config`\"\u003e`ipv4_config`\u003c/span\u003e: The IP address configurations.\n* \u003cspan pulumi-lang-nodejs=\"`ipv4Info`\" pulumi-lang-dotnet=\"`Ipv4Info`\" pulumi-lang-go=\"`ipv4Info`\" pulumi-lang-python=\"`ipv4_info`\" pulumi-lang-yaml=\"`ipv4Info`\" pulumi-lang-java=\"`ipv4Info`\"\u003e`ipv4_info`\u003c/span\u003e: The runtime IP address information of the NIC.\n\n#### nics.ipv4_config\n* \u003cspan pulumi-lang-nodejs=\"`shouldAssignIp`\" pulumi-lang-dotnet=\"`ShouldAssignIp`\" pulumi-lang-go=\"`shouldAssignIp`\" pulumi-lang-python=\"`should_assign_ip`\" pulumi-lang-yaml=\"`shouldAssignIp`\" pulumi-lang-java=\"`shouldAssignIp`\"\u003e`should_assign_ip`\u003c/span\u003e: If set to true (default value), an IP address must be assigned to the VM NIC - either the one explicitly specified by the user or allocated automatically by the IPAM service by not specifying the IP address. If false, then no IP assignment is required for this VM NIC.\n* \u003cspan pulumi-lang-nodejs=\"`ipAddress`\" pulumi-lang-dotnet=\"`IpAddress`\" pulumi-lang-go=\"`ipAddress`\" pulumi-lang-python=\"`ip_address`\" pulumi-lang-yaml=\"`ipAddress`\" pulumi-lang-java=\"`ipAddress`\"\u003e`ip_address`\u003c/span\u003e: The IP address of the NIC.\n* \u003cspan pulumi-lang-nodejs=\"`secondaryIpAddressList`\" pulumi-lang-dotnet=\"`SecondaryIpAddressList`\" pulumi-lang-go=\"`secondaryIpAddressList`\" pulumi-lang-python=\"`secondary_ip_address_list`\" pulumi-lang-yaml=\"`secondaryIpAddressList`\" pulumi-lang-java=\"`secondaryIpAddressList`\"\u003e`secondary_ip_address_list`\u003c/span\u003e: Secondary IP addresses for the NIC.\n\n##### ip_address,\u003cspan pulumi-lang-nodejs=\" secondaryIpAddressList\n\" pulumi-lang-dotnet=\" SecondaryIpAddressList\n\" pulumi-lang-go=\" secondaryIpAddressList\n\" pulumi-lang-python=\" secondary_ip_address_list\n\" pulumi-lang-yaml=\" secondaryIpAddressList\n\" pulumi-lang-java=\" secondaryIpAddressList\n\"\u003e secondary_ip_address_list\n\u003c/span\u003e* \u003cspan pulumi-lang-nodejs=\"`value`\" pulumi-lang-dotnet=\"`Value`\" pulumi-lang-go=\"`value`\" pulumi-lang-python=\"`value`\" pulumi-lang-yaml=\"`value`\" pulumi-lang-java=\"`value`\"\u003e`value`\u003c/span\u003e: The IPv4 address of the host.\n* \u003cspan pulumi-lang-nodejs=\"`prefixLength`\" pulumi-lang-dotnet=\"`PrefixLength`\" pulumi-lang-go=\"`prefixLength`\" pulumi-lang-python=\"`prefix_length`\" pulumi-lang-yaml=\"`prefixLength`\" pulumi-lang-java=\"`prefixLength`\"\u003e`prefix_length`\u003c/span\u003e: The prefix length of the IP address.\n\n#### nics.ipv4_info\n* \u003cspan pulumi-lang-nodejs=\"`learnedIpAddresses`\" pulumi-lang-dotnet=\"`LearnedIpAddresses`\" pulumi-lang-go=\"`learnedIpAddresses`\" pulumi-lang-python=\"`learned_ip_addresses`\" pulumi-lang-yaml=\"`learnedIpAddresses`\" pulumi-lang-java=\"`learnedIpAddresses`\"\u003e`learned_ip_addresses`\u003c/span\u003e: The list of IP addresses learned by the NIC.\n\n#####\u003cspan pulumi-lang-nodejs=\" learnedIpAddresses\n\" pulumi-lang-dotnet=\" LearnedIpAddresses\n\" pulumi-lang-go=\" learnedIpAddresses\n\" pulumi-lang-python=\" learned_ip_addresses\n\" pulumi-lang-yaml=\" learnedIpAddresses\n\" pulumi-lang-java=\" learnedIpAddresses\n\"\u003e learned_ip_addresses\n\u003c/span\u003e* \u003cspan pulumi-lang-nodejs=\"`value`\" pulumi-lang-dotnet=\"`Value`\" pulumi-lang-go=\"`value`\" pulumi-lang-python=\"`value`\" pulumi-lang-yaml=\"`value`\" pulumi-lang-java=\"`value`\"\u003e`value`\u003c/span\u003e: The IPv4 address of the host.\n* \u003cspan pulumi-lang-nodejs=\"`prefixLength`\" pulumi-lang-dotnet=\"`PrefixLength`\" pulumi-lang-go=\"`prefixLength`\" pulumi-lang-python=\"`prefix_length`\" pulumi-lang-yaml=\"`prefixLength`\" pulumi-lang-java=\"`prefixLength`\"\u003e`prefix_length`\u003c/span\u003e: The prefix length of the IP address.\n\n\n### gpus\n* \u003cspan pulumi-lang-nodejs=\"`extId`\" pulumi-lang-dotnet=\"`ExtId`\" pulumi-lang-go=\"`extId`\" pulumi-lang-python=\"`ext_id`\" pulumi-lang-yaml=\"`extId`\" pulumi-lang-java=\"`extId`\"\u003e`ext_id`\u003c/span\u003e: A globally unique identifier of an instance that is suitable for external consumption.\n* \u003cspan pulumi-lang-nodejs=\"`mode`\" pulumi-lang-dotnet=\"`Mode`\" pulumi-lang-go=\"`mode`\" pulumi-lang-python=\"`mode`\" pulumi-lang-yaml=\"`mode`\" pulumi-lang-java=\"`mode`\"\u003e`mode`\u003c/span\u003e: The mode of this GPU.\n* \u003cspan pulumi-lang-nodejs=\"`deviceId`\" pulumi-lang-dotnet=\"`DeviceId`\" pulumi-lang-go=\"`deviceId`\" pulumi-lang-python=\"`device_id`\" pulumi-lang-yaml=\"`deviceId`\" pulumi-lang-java=\"`deviceId`\"\u003e`device_id`\u003c/span\u003e: The device Id of the GPU.\n* \u003cspan pulumi-lang-nodejs=\"`vendor`\" pulumi-lang-dotnet=\"`Vendor`\" pulumi-lang-go=\"`vendor`\" pulumi-lang-python=\"`vendor`\" pulumi-lang-yaml=\"`vendor`\" pulumi-lang-java=\"`vendor`\"\u003e`vendor`\u003c/span\u003e: The vendor of the GPU.\n* \u003cspan pulumi-lang-nodejs=\"`pciAddress`\" pulumi-lang-dotnet=\"`PciAddress`\" pulumi-lang-go=\"`pciAddress`\" pulumi-lang-python=\"`pci_address`\" pulumi-lang-yaml=\"`pciAddress`\" pulumi-lang-java=\"`pciAddress`\"\u003e`pci_address`\u003c/span\u003e: The (S)egment:(B)us:(D)evice.(F)unction hardware address. See\n* \u003cspan pulumi-lang-nodejs=\"`guestDriverVersion`\" pulumi-lang-dotnet=\"`GuestDriverVersion`\" pulumi-lang-go=\"`guestDriverVersion`\" pulumi-lang-python=\"`guest_driver_version`\" pulumi-lang-yaml=\"`guestDriverVersion`\" pulumi-lang-java=\"`guestDriverVersion`\"\u003e`guest_driver_version`\u003c/span\u003e: Last determined guest driver version.\n* \u003cspan pulumi-lang-nodejs=\"`name`\" pulumi-lang-dotnet=\"`Name`\" pulumi-lang-go=\"`name`\" pulumi-lang-python=\"`name`\" pulumi-lang-yaml=\"`name`\" pulumi-lang-java=\"`name`\"\u003e`name`\u003c/span\u003e: Name of the GPU resource.\n* \u003cspan pulumi-lang-nodejs=\"`frameBufferSizeBytes`\" pulumi-lang-dotnet=\"`FrameBufferSizeBytes`\" pulumi-lang-go=\"`frameBufferSizeBytes`\" pulumi-lang-python=\"`frame_buffer_size_bytes`\" pulumi-lang-yaml=\"`frameBufferSizeBytes`\" pulumi-lang-java=\"`frameBufferSizeBytes`\"\u003e`frame_buffer_size_bytes`\u003c/span\u003e: GPU frame buffer size in bytes.\n* \u003cspan pulumi-lang-nodejs=\"`numVirtualDisplayHeads`\" pulumi-lang-dotnet=\"`NumVirtualDisplayHeads`\" pulumi-lang-go=\"`numVirtualDisplayHeads`\" pulumi-lang-python=\"`num_virtual_display_heads`\" pulumi-lang-yaml=\"`numVirtualDisplayHeads`\" pulumi-lang-java=\"`numVirtualDisplayHeads`\"\u003e`num_virtual_display_heads`\u003c/span\u003e: Number of supported virtual display heads.\n* \u003cspan pulumi-lang-nodejs=\"`fraction`\" pulumi-lang-dotnet=\"`Fraction`\" pulumi-lang-go=\"`fraction`\" pulumi-lang-python=\"`fraction`\" pulumi-lang-yaml=\"`fraction`\" pulumi-lang-java=\"`fraction`\"\u003e`fraction`\u003c/span\u003e: Fraction of the physical GPU assigned.\n\n### gpus.pci_address\n* \u003cspan pulumi-lang-nodejs=\"`segment`\" pulumi-lang-dotnet=\"`Segment`\" pulumi-lang-go=\"`segment`\" pulumi-lang-python=\"`segment`\" pulumi-lang-yaml=\"`segment`\" pulumi-lang-java=\"`segment`\"\u003e`segment`\u003c/span\u003e\n* \u003cspan pulumi-lang-nodejs=\"`bus`\" pulumi-lang-dotnet=\"`Bus`\" pulumi-lang-go=\"`bus`\" pulumi-lang-python=\"`bus`\" pulumi-lang-yaml=\"`bus`\" pulumi-lang-java=\"`bus`\"\u003e`bus`\u003c/span\u003e\n* \u003cspan pulumi-lang-nodejs=\"`device`\" pulumi-lang-dotnet=\"`Device`\" pulumi-lang-go=\"`device`\" pulumi-lang-python=\"`device`\" pulumi-lang-yaml=\"`device`\" pulumi-lang-java=\"`device`\"\u003e`device`\u003c/span\u003e\n* \u003cspan pulumi-lang-nodejs=\"`func`\" pulumi-lang-dotnet=\"`Func`\" pulumi-lang-go=\"`func`\" pulumi-lang-python=\"`func`\" pulumi-lang-yaml=\"`func`\" pulumi-lang-java=\"`func`\"\u003e`func`\u003c/span\u003e\n\n###\u003cspan pulumi-lang-nodejs=\" serialPorts\n\" pulumi-lang-dotnet=\" SerialPorts\n\" pulumi-lang-go=\" serialPorts\n\" pulumi-lang-python=\" serial_ports\n\" pulumi-lang-yaml=\" serialPorts\n\" pulumi-lang-java=\" serialPorts\n\"\u003e serial_ports\n\u003c/span\u003e* \u003cspan pulumi-lang-nodejs=\"`extId`\" pulumi-lang-dotnet=\"`ExtId`\" pulumi-lang-go=\"`extId`\" pulumi-lang-python=\"`ext_id`\" pulumi-lang-yaml=\"`extId`\" pulumi-lang-java=\"`extId`\"\u003e`ext_id`\u003c/span\u003e: A globally unique identifier of an instance that is suitable for external consumption.\n* \u003cspan pulumi-lang-nodejs=\"`isConnected`\" pulumi-lang-dotnet=\"`IsConnected`\" pulumi-lang-go=\"`isConnected`\" pulumi-lang-python=\"`is_connected`\" pulumi-lang-yaml=\"`isConnected`\" pulumi-lang-java=\"`isConnected`\"\u003e`is_connected`\u003c/span\u003e: Indicates whether the serial port is connected or not.\n* \u003cspan pulumi-lang-nodejs=\"`index`\" pulumi-lang-dotnet=\"`Index`\" pulumi-lang-go=\"`index`\" pulumi-lang-python=\"`index`\" pulumi-lang-yaml=\"`index`\" pulumi-lang-java=\"`index`\"\u003e`index`\u003c/span\u003e: Index of the serial port.\n\n###\u003cspan pulumi-lang-nodejs=\" protectionPolicyState\n\" pulumi-lang-dotnet=\" ProtectionPolicyState\n\" pulumi-lang-go=\" protectionPolicyState\n\" pulumi-lang-python=\" protection_policy_state\n\" pulumi-lang-yaml=\" protectionPolicyState\n\" pulumi-lang-java=\" protectionPolicyState\n\"\u003e protection_policy_state\n\u003c/span\u003e* \u003cspan pulumi-lang-nodejs=\"`policy`\" pulumi-lang-dotnet=\"`Policy`\" pulumi-lang-go=\"`policy`\" pulumi-lang-python=\"`policy`\" pulumi-lang-yaml=\"`policy`\" pulumi-lang-java=\"`policy`\"\u003e`policy`\u003c/span\u003e: Reference to the policy object in use.\n\n\n\n\nSee detailed information in [Nutanix List Virtual Machines V4](https://developers.nutanix.com/api-reference?namespace=vmm\u0026version=v4.0#tag/Vm/operation/listVms).\n",
      "inputs": {
        "description": "A collection of arguments for invoking getVirtualMachinesV2.\n",
        "properties": {
          "filter": {
            "type": "string",
            "description": "A URL query parameter that allows clients to filter a collection of resources. The expression specified with \\$filter is evaluated for each resource in the collection, and only items where the expression evaluates to true are included in the response. Expression specified with the \\$filter must conform to the OData V4.01 URL conventions. For example, filter '\\$filter=name eq 'karbon-ntnx-1.0' would filter the result on cluster name 'karbon-ntnx1.0', filter '\\$filter=startswith(name, 'C')' would filter on cluster name starting with 'C'. The filter can be applied to the following fields:\n- apcConfig/cpuModel/extId\n- apcConfig/cpuModel/name\n- apcConfig/isApcEnabled\n- cluster/extId\n- extId\n- gpus\n- hardwareClockTimezone\n- host/extId\n- isAgentVm\n- isCpuHotplugEnabled\n- isCpuPassthroughEnabled\n- isGpuConsoleEnabled\n- isLiveMigrateCapable\n- isMemoryOvercommitEnabled\n- isScsiControllerEnabled\n- isVcpuHardPinningEnabled\n- isVgaConsoleEnabled\n- machineType\n- memorySizeBytes\n- name\n- nics\n- numCoresPerSocket\n- numNumaNodes\n- numSockets\n- numThreadsPerCore\n- powerState\n"
          },
          "limit": {
            "type": "integer",
            "description": "A URL query parameter that specifies the total number of records returned in the result set. Must be a positive integer between 1 and 100. Any number out of this range will lead to a validation error. If the limit is not provided, a default value of 50 records will be returned in the result set.\n"
          },
          "orderBy": {
            "type": "string",
            "description": "A URL query parameter that allows clients to specify the sort criteria for the returned list of objects. Resources can be sorted in ascending order using asc or descending order using desc. If asc or desc are not specified, the resources will be sorted in ascending order by default. For example, '\\$orderby=templateName desc' would get all templates sorted by templateName in descending order. The orderby can be applied to the following fields:\n- memorySizeBytes\n- name\n- numCoresPerSocket\n- numNumaNodes\n- numSockets\n- numThreadsPerCore\n"
          },
          "page": {
            "type": "integer",
            "description": "A URL query parameter that specifies the page number of the result set. It must be a positive integer between 0 and the maximum number of pages that are available for that resource. Any number out of this range might lead to no results.\n"
          },
          "select": {
            "type": "string",
            "description": "A URL query parameter that allows clients to request a specific set of properties for each entity or complex type. Expression specified with the \\$select must conform to the OData V4.01 URL conventions. If a \\$select expression consists of a single select item that is an asterisk (i.e., *), then all properties on the matching resource will be returned. The select can be applied to the following fields:\n- apcConfig/cpuModel/extId\n- apcConfig/cpuModel/name\n- apcConfig/isApcEnabled\n- availabilityZone\n- biosUuid\n- bootConfig\n- categories\n- cdRoms\n- cluster/extId\n- createTime\n- description\n- disks\n- enabledCpuFeatures\n- extId\n- generationUuid\n- gpus\n- guestCustomization\n- guestTools\n- hardwareClockTimezone\n- host/extId\n- isAgentVm\n- isBrandingEnabled\n- isCpuHotplugEnabled\n- isCpuPassthroughEnabled\n- isCrossClusterMigrationInProgress\n- isGpuConsoleEnabled\n- isLiveMigrateCapable\n- isMemoryOvercommitEnabled\n- isScsiControllerEnabled\n- isVcpuHardPinningEnabled\n- isVgaConsoleEnabled\n- links\n- machineType\n- memorySizeBytes\n- name\n- nics\n- numCoresPerSocket\n- numNumaNodes\n- numSockets\n- numThreadsPerCore\n- ownershipInfo\n- pcieDevices\n- powerState\n- protectionPolicyState\n- protectionType\n- serialPorts\n- source\n- storageConfig\n- tenantId\n- updateTime\n- vtpmConfig\n"
          }
        },
        "type": "object"
      },
      "outputs": {
        "description": "A collection of values returned by getVirtualMachinesV2.\n",
        "properties": {
          "filter": {
            "type": "string"
          },
          "id": {
            "description": "The provider-assigned unique ID for this managed resource.",
            "type": "string"
          },
          "limit": {
            "type": "integer"
          },
          "orderBy": {
            "type": "string"
          },
          "page": {
            "type": "integer"
          },
          "select": {
            "type": "string"
          },
          "vms": {
            "description": "List of all vms\n",
            "items": {
              "$ref": "#/types/nutanix:index%2FgetVirtualMachinesV2Vm:getVirtualMachinesV2Vm"
            },
            "type": "array"
          }
        },
        "required": [
          "id",
          "vms"
        ],
        "type": "object"
      }
    },
    "nutanix:index/getVmRecoveryPointInfoV2:getVmRecoveryPointInfoV2": {
      "description": "Get the VM recovery point identified by ex_id.\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as nutanix from \"@pierskarsenbarg/nutanix\";\n\n// vm recovery point details\nconst rp_vm_info = nutanix.getVmRecoveryPointInfoV2({\n    recoveryPointExtId: \"af1070f7-c946-49da-9b17-e337e06e0a18\",\n    extId: \"85ac418e-c847-45ab-9816-40a3c4de148c\",\n});\n```\n```python\nimport pulumi\nimport pulumi_nutanix as nutanix\n\n# vm recovery point details\nrp_vm_info = nutanix.get_vm_recovery_point_info_v2(recovery_point_ext_id=\"af1070f7-c946-49da-9b17-e337e06e0a18\",\n    ext_id=\"85ac418e-c847-45ab-9816-40a3c4de148c\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Nutanix = Pulumi.Nutanix;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    // vm recovery point details\n    var rp_vm_info = Nutanix.GetVmRecoveryPointInfoV2.Invoke(new()\n    {\n        RecoveryPointExtId = \"af1070f7-c946-49da-9b17-e337e06e0a18\",\n        ExtId = \"85ac418e-c847-45ab-9816-40a3c4de148c\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pierskarsenbarg/pulumi-nutanix/sdk/go/nutanix\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t// vm recovery point details\n\t\t_, err := nutanix.GetVmRecoveryPointInfoV2(ctx, \u0026nutanix.GetVmRecoveryPointInfoV2Args{\n\t\t\tRecoveryPointExtId: \"af1070f7-c946-49da-9b17-e337e06e0a18\",\n\t\t\tExtId:              \"85ac418e-c847-45ab-9816-40a3c4de148c\",\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.nutanix.NutanixFunctions;\nimport com.pulumi.nutanix.inputs.GetVmRecoveryPointInfoV2Args;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        // vm recovery point details\n        final var rp-vm-info = NutanixFunctions.getVmRecoveryPointInfoV2(GetVmRecoveryPointInfoV2Args.builder()\n            .recoveryPointExtId(\"af1070f7-c946-49da-9b17-e337e06e0a18\")\n            .extId(\"85ac418e-c847-45ab-9816-40a3c4de148c\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  # vm recovery point details\n  rp-vm-info:\n    fn::invoke:\n      function: nutanix:getVmRecoveryPointInfoV2\n      arguments:\n        recoveryPointExtId: af1070f7-c946-49da-9b17-e337e06e0a18\n        extId: 85ac418e-c847-45ab-9816-40a3c4de148c\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
      "inputs": {
        "description": "A collection of arguments for invoking getVmRecoveryPointInfoV2.\n",
        "properties": {
          "diskRecoveryPoints": {
            "type": "array",
            "items": {
              "$ref": "#/types/nutanix:index%2FgetVmRecoveryPointInfoV2DiskRecoveryPoint:getVmRecoveryPointInfoV2DiskRecoveryPoint"
            },
            "description": "array of disk recovery points.\n"
          },
          "extId": {
            "type": "string",
            "description": "The external identifier that can be used to identify a VM recovery point.\n"
          },
          "recoveryPointExtId": {
            "type": "string",
            "description": "The external identifier that can be used to retrieve the recovery point using its URL.\n"
          }
        },
        "type": "object",
        "required": [
          "extId",
          "recoveryPointExtId"
        ]
      },
      "outputs": {
        "description": "A collection of values returned by getVmRecoveryPointInfoV2.\n",
        "properties": {
          "applicationConsistentProperties": {
            "description": "User-defined application-consistent properties for the recovery point.\n*\n",
            "items": {
              "$ref": "#/types/nutanix:index%2FgetVmRecoveryPointInfoV2ApplicationConsistentProperty:getVmRecoveryPointInfoV2ApplicationConsistentProperty"
            },
            "type": "array"
          },
          "consistencyGroupExtId": {
            "description": "External identifier of the Consistency group which the VM was part of at the time of recovery point creation.\n",
            "type": "string"
          },
          "diskRecoveryPoints": {
            "description": "array of disk recovery points.\n",
            "items": {
              "$ref": "#/types/nutanix:index%2FgetVmRecoveryPointInfoV2DiskRecoveryPoint:getVmRecoveryPointInfoV2DiskRecoveryPoint"
            },
            "type": "array"
          },
          "extId": {
            "description": "recovery point UUID\n",
            "type": "string"
          },
          "id": {
            "description": "The provider-assigned unique ID for this managed resource.",
            "type": "string"
          },
          "links": {
            "description": "A HATEOAS style link for the response. Each link contains a user-friendly name identifying the link and an address for retrieving the particular resource.\n",
            "items": {
              "$ref": "#/types/nutanix:index%2FgetVmRecoveryPointInfoV2Link:getVmRecoveryPointInfoV2Link"
            },
            "type": "array"
          },
          "locationAgnosticId": {
            "description": "Location agnostic identifier of the Recovery point.\n",
            "type": "string"
          },
          "recoveryPointExtId": {
            "type": "string"
          },
          "tenantId": {
            "description": "A globally unique identifier that represents the tenant that owns this entity\n",
            "type": "string"
          },
          "vmCategories": {
            "description": "Category key-value pairs associated with the VM at the time of recovery point creation. The category key and value are separated by '/'. For example, a category with key 'dept' and value 'hr' is displayed as 'dept/hr'.\n",
            "items": {
              "type": "string"
            },
            "type": "array"
          },
          "vmExtId": {
            "description": "VM external identifier which is captured as a part of this recovery point.\n",
            "type": "string"
          }
        },
        "required": [
          "applicationConsistentProperties",
          "consistencyGroupExtId",
          "diskRecoveryPoints",
          "extId",
          "id",
          "links",
          "locationAgnosticId",
          "recoveryPointExtId",
          "tenantId",
          "vmCategories",
          "vmExtId"
        ],
        "type": "object"
      }
    },
    "nutanix:index/getVolumeGroupDiskV2:getVolumeGroupDiskV2": {
      "description": "Describes a Query the Volume Disk identified by {extId} in the Volume Group identified by {volumeGroupExtId}.\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as nutanix from \"@pierskarsenbarg/nutanix\";\n\n// Get the details of a Volume Disk attached to the Volume Group.\nconst example = nutanix.getVolumeGroupDiskV2({\n    volumeGroupExtId: \"3770be9d-06be-4e25-b85d-3457d9b0ceb1\",\n    extId: \"1d92110d-26b5-46c0-8c93-20b8171373e0\",\n});\n```\n```python\nimport pulumi\nimport pulumi_nutanix as nutanix\n\n# Get the details of a Volume Disk attached to the Volume Group.\nexample = nutanix.get_volume_group_disk_v2(volume_group_ext_id=\"3770be9d-06be-4e25-b85d-3457d9b0ceb1\",\n    ext_id=\"1d92110d-26b5-46c0-8c93-20b8171373e0\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Nutanix = Pulumi.Nutanix;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    // Get the details of a Volume Disk attached to the Volume Group.\n    var example = Nutanix.GetVolumeGroupDiskV2.Invoke(new()\n    {\n        VolumeGroupExtId = \"3770be9d-06be-4e25-b85d-3457d9b0ceb1\",\n        ExtId = \"1d92110d-26b5-46c0-8c93-20b8171373e0\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pierskarsenbarg/pulumi-nutanix/sdk/go/nutanix\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t// Get the details of a Volume Disk attached to the Volume Group.\n\t\t_, err := nutanix.LookupVolumeGroupDiskV2(ctx, \u0026nutanix.LookupVolumeGroupDiskV2Args{\n\t\t\tVolumeGroupExtId: \"3770be9d-06be-4e25-b85d-3457d9b0ceb1\",\n\t\t\tExtId:            \"1d92110d-26b5-46c0-8c93-20b8171373e0\",\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.nutanix.NutanixFunctions;\nimport com.pulumi.nutanix.inputs.GetVolumeGroupDiskV2Args;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        // Get the details of a Volume Disk attached to the Volume Group.\n        final var example = NutanixFunctions.getVolumeGroupDiskV2(GetVolumeGroupDiskV2Args.builder()\n            .volumeGroupExtId(\"3770be9d-06be-4e25-b85d-3457d9b0ceb1\")\n            .extId(\"1d92110d-26b5-46c0-8c93-20b8171373e0\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  # Get the details of a Volume Disk attached to the Volume Group.\n  example:\n    fn::invoke:\n      function: nutanix:getVolumeGroupDiskV2\n      arguments:\n        volumeGroupExtId: 3770be9d-06be-4e25-b85d-3457d9b0ceb1\n        extId: 1d92110d-26b5-46c0-8c93-20b8171373e0\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
      "inputs": {
        "description": "A collection of arguments for invoking getVolumeGroupDiskV2.\n",
        "properties": {
          "extId": {
            "type": "string",
            "description": "- The external identifier of the Data Source Reference.\n"
          },
          "volumeGroupExtId": {
            "type": "string"
          }
        },
        "type": "object",
        "required": [
          "extId",
          "volumeGroupExtId"
        ]
      },
      "outputs": {
        "description": "A collection of values returned by getVolumeGroupDiskV2.\n",
        "properties": {
          "description": {
            "description": "- Volume Disk description.\n",
            "type": "string"
          },
          "diskDataSourceReferences": {
            "description": "- Disk Data Source Reference.\n",
            "items": {
              "$ref": "#/types/nutanix:index%2FgetVolumeGroupDiskV2DiskDataSourceReference:getVolumeGroupDiskV2DiskDataSourceReference"
            },
            "type": "array"
          },
          "diskSizeBytes": {
            "description": "- ize of the disk in bytes. This field is mandatory during Volume Group creation if a new disk is being created on the storage container.\n",
            "type": "integer"
          },
          "diskStorageFeatures": {
            "description": "- Storage optimization features which must be enabled on the Volume Disks. This is an optional field. If omitted, the disks will honor the Volume Group specific storage features setting.\n",
            "items": {
              "$ref": "#/types/nutanix:index%2FgetVolumeGroupDiskV2DiskStorageFeature:getVolumeGroupDiskV2DiskStorageFeature"
            },
            "type": "array"
          },
          "extId": {
            "description": "- The external identifier of the Data Source Reference.\n",
            "type": "string"
          },
          "id": {
            "description": "The provider-assigned unique ID for this managed resource.",
            "type": "string"
          },
          "index": {
            "description": "- Index of the disk in a Volume Group. This field is optional and immutable.\n",
            "type": "integer"
          },
          "links": {
            "description": "- A HATEOAS style link for the response. Each link contains a user-friendly name identifying the link and an address for retrieving the particular resource.\n",
            "items": {
              "$ref": "#/types/nutanix:index%2FgetVolumeGroupDiskV2Link:getVolumeGroupDiskV2Link"
            },
            "type": "array"
          },
          "storageContainerId": {
            "description": "- Storage container on which the disk must be created. This is a read-only field.\n",
            "type": "string"
          },
          "tenantId": {
            "description": "- A globally unique identifier that represents the tenant that owns this entity. The system automatically assigns it, and it and is immutable from an API consumer perspective (some use cases may cause this Id to change - For instance, a use case may require the transfer of ownership of the entity, but these cases are handled automatically on the server).\n",
            "type": "string"
          },
          "volumeGroupExtId": {
            "type": "string"
          }
        },
        "required": [
          "description",
          "diskDataSourceReferences",
          "diskSizeBytes",
          "diskStorageFeatures",
          "extId",
          "id",
          "index",
          "links",
          "storageContainerId",
          "tenantId",
          "volumeGroupExtId"
        ],
        "type": "object"
      }
    },
    "nutanix:index/getVolumeGroupDisksV2:getVolumeGroupDisksV2": {
      "description": "Query the list of disks corresponding to a Volume Group identified by {volumeGroupExtId}.\n",
      "inputs": {
        "description": "A collection of arguments for invoking getVolumeGroupDisksV2.\n",
        "properties": {
          "filter": {
            "type": "string"
          },
          "limit": {
            "type": "integer"
          },
          "orderby": {
            "type": "string"
          },
          "page": {
            "type": "integer"
          },
          "select": {
            "type": "string"
          },
          "volumeGroupExtId": {
            "type": "string"
          }
        },
        "type": "object",
        "required": [
          "volumeGroupExtId"
        ]
      },
      "outputs": {
        "description": "A collection of values returned by getVolumeGroupDisksV2.\n",
        "properties": {
          "disks": {
            "description": "- List of disks corresponding to a Volume Group identified by {volumeGroupExtId}.\n",
            "items": {
              "$ref": "#/types/nutanix:index%2FgetVolumeGroupDisksV2Disk:getVolumeGroupDisksV2Disk"
            },
            "type": "array"
          },
          "filter": {
            "type": "string"
          },
          "id": {
            "description": "The provider-assigned unique ID for this managed resource.",
            "type": "string"
          },
          "limit": {
            "type": "integer"
          },
          "orderby": {
            "type": "string"
          },
          "page": {
            "type": "integer"
          },
          "select": {
            "type": "string"
          },
          "volumeGroupExtId": {
            "type": "string"
          }
        },
        "required": [
          "disks",
          "id",
          "volumeGroupExtId"
        ],
        "type": "object"
      }
    },
    "nutanix:index/getVolumeGroupV2:getVolumeGroupV2": {
      "description": "Query the Volume Group identified by {extId}.\n\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as nutanix from \"@pierskarsenbarg/nutanix\";\n\nconst volumeGroup = nutanix.getVolumeGroupV2({\n    extId: \"d09aeec9-5bb7-4bfd-9717-a051178f6e7c\",\n});\n```\n```python\nimport pulumi\nimport pulumi_nutanix as nutanix\n\nvolume_group = nutanix.get_volume_group_v2(ext_id=\"d09aeec9-5bb7-4bfd-9717-a051178f6e7c\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Nutanix = Pulumi.Nutanix;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var volumeGroup = Nutanix.GetVolumeGroupV2.Invoke(new()\n    {\n        ExtId = \"d09aeec9-5bb7-4bfd-9717-a051178f6e7c\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pierskarsenbarg/pulumi-nutanix/sdk/go/nutanix\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := nutanix.LookupVolumeGroupV2(ctx, \u0026nutanix.LookupVolumeGroupV2Args{\n\t\t\tExtId: \"d09aeec9-5bb7-4bfd-9717-a051178f6e7c\",\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.nutanix.NutanixFunctions;\nimport com.pulumi.nutanix.inputs.GetVolumeGroupV2Args;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var volumeGroup = NutanixFunctions.getVolumeGroupV2(GetVolumeGroupV2Args.builder()\n            .extId(\"d09aeec9-5bb7-4bfd-9717-a051178f6e7c\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  volumeGroup:\n    fn::invoke:\n      function: nutanix:getVolumeGroupV2\n      arguments:\n        extId: d09aeec9-5bb7-4bfd-9717-a051178f6e7c\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
      "inputs": {
        "description": "A collection of arguments for invoking getVolumeGroupV2.\n",
        "properties": {
          "extId": {
            "type": "string",
            "description": "- A globally unique identifier of an instance that is suitable for external consumption.\n"
          }
        },
        "type": "object",
        "required": [
          "extId"
        ]
      },
      "outputs": {
        "description": "A collection of values returned by getVolumeGroupV2.\n",
        "properties": {
          "clusterReference": {
            "description": "- The UUID of the cluster that will host the Volume Group.\n",
            "type": "string"
          },
          "createdBy": {
            "description": "- Service/user who created this Volume Group.\n",
            "type": "string"
          },
          "description": {
            "description": "- Volume Group description. This is an optional field.\n",
            "type": "string"
          },
          "enabledAuthentications": {
            "description": "- The authentication type enabled for the Volume Group.\n",
            "type": "string"
          },
          "extId": {
            "description": "- A globally unique identifier of an instance that is suitable for external consumption.\n",
            "type": "string"
          },
          "id": {
            "description": "The provider-assigned unique ID for this managed resource.",
            "type": "string"
          },
          "isHidden": {
            "description": "- Indicates whether the Volume Group is meant to be hidden or not.\n",
            "type": "boolean"
          },
          "iscsiFeatures": {
            "description": "- iSCSI specific settings for the Volume Group.\n",
            "items": {
              "$ref": "#/types/nutanix:index%2FgetVolumeGroupV2IscsiFeature:getVolumeGroupV2IscsiFeature"
            },
            "type": "array"
          },
          "links": {
            "description": "- A HATEOAS style link for the response. Each link contains a user-friendly name identifying the link and an address for retrieving the particular resource.\n",
            "items": {
              "$ref": "#/types/nutanix:index%2FgetVolumeGroupV2Link:getVolumeGroupV2Link"
            },
            "type": "array"
          },
          "name": {
            "description": "-(Required) Volume Group name. This is an optional field.\n",
            "type": "string"
          },
          "sharingStatus": {
            "description": "- Indicates whether the Volume Group can be shared across multiple iSCSI initiators. The mode cannot be changed from SHARED to NOT_SHARED on a Volume Group with multiple attachments. Similarly, a Volume Group cannot be associated with more than one attachment as long as it is in exclusive mode. This is an optional field. Valid values are SHARED, NOT_SHARED\n",
            "type": "string"
          },
          "shouldLoadBalanceVmAttachments": {
            "description": "- Indicates whether to enable Volume Group load balancing for VM attachments. This cannot be enabled if there are iSCSI client attachments already associated with the Volume Group, and vice-versa. This is an optional field.\n",
            "type": "boolean"
          },
          "storageFeatures": {
            "description": "- Storage optimization features which must be enabled on the Volume Group.\n",
            "items": {
              "$ref": "#/types/nutanix:index%2FgetVolumeGroupV2StorageFeature:getVolumeGroupV2StorageFeature"
            },
            "type": "array"
          },
          "targetName": {
            "description": "- Name of the external client target that will be visible and accessible to the client.\n",
            "type": "string"
          },
          "tenantId": {
            "description": "- A globally unique identifier that represents the tenant that owns this entity. The system automatically assigns it, and it and is immutable from an API consumer perspective (some use cases may cause this Id to change - For instance, a use case may require the transfer of ownership of the entity, but these cases are handled automatically on the server).\n",
            "type": "string"
          },
          "usageType": {
            "description": "- Expected usage type for the Volume Group. This is an indicative hint on how the caller will consume the Volume Group.  Valid values are BACKUP_TARGET, INTERNAL, TEMPORARY, USER\n",
            "type": "string"
          }
        },
        "required": [
          "clusterReference",
          "createdBy",
          "description",
          "enabledAuthentications",
          "extId",
          "id",
          "isHidden",
          "iscsiFeatures",
          "links",
          "name",
          "sharingStatus",
          "shouldLoadBalanceVmAttachments",
          "storageFeatures",
          "targetName",
          "tenantId",
          "usageType"
        ],
        "type": "object"
      }
    },
    "nutanix:index/getVolumeGroupsV2:getVolumeGroupsV2": {
      "description": "Describes a List all the Volume Groups.\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as nutanix from \"@pierskarsenbarg/nutanix\";\n\n// list all the Volume Groups.\nconst volumeGroups = nutanix.getVolumeGroupsV2({});\n// list all the Volume Groups with pagination.\nconst vg_pagination = nutanix.getVolumeGroupsV2({\n    page: 1,\n    limit: 10,\n});\n// list all the Volume Groups with filter.\nconst vg_filter = nutanix.getVolumeGroupsV2({\n    filter: \"name eq 'volume_group_test'\",\n});\n```\n```python\nimport pulumi\nimport pulumi_nutanix as nutanix\n\n# list all the Volume Groups.\nvolume_groups = nutanix.get_volume_groups_v2()\n# list all the Volume Groups with pagination.\nvg_pagination = nutanix.get_volume_groups_v2(page=1,\n    limit=10)\n# list all the Volume Groups with filter.\nvg_filter = nutanix.get_volume_groups_v2(filter=\"name eq 'volume_group_test'\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Nutanix = Pulumi.Nutanix;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    // list all the Volume Groups.\n    var volumeGroups = Nutanix.GetVolumeGroupsV2.Invoke();\n\n    // list all the Volume Groups with pagination.\n    var vg_pagination = Nutanix.GetVolumeGroupsV2.Invoke(new()\n    {\n        Page = 1,\n        Limit = 10,\n    });\n\n    // list all the Volume Groups with filter.\n    var vg_filter = Nutanix.GetVolumeGroupsV2.Invoke(new()\n    {\n        Filter = \"name eq 'volume_group_test'\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pierskarsenbarg/pulumi-nutanix/sdk/go/nutanix\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t// list all the Volume Groups.\n\t\t_, err := nutanix.GetVolumeGroupsV2(ctx, \u0026nutanix.GetVolumeGroupsV2Args{}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t// list all the Volume Groups with pagination.\n\t\t_, err = nutanix.GetVolumeGroupsV2(ctx, \u0026nutanix.GetVolumeGroupsV2Args{\n\t\t\tPage:  pulumi.IntRef(1),\n\t\t\tLimit: pulumi.IntRef(10),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t// list all the Volume Groups with filter.\n\t\t_, err = nutanix.GetVolumeGroupsV2(ctx, \u0026nutanix.GetVolumeGroupsV2Args{\n\t\t\tFilter: pulumi.StringRef(\"name eq 'volume_group_test'\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.nutanix.NutanixFunctions;\nimport com.pulumi.nutanix.inputs.GetVolumeGroupsV2Args;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        // list all the Volume Groups.\n        final var volumeGroups = NutanixFunctions.getVolumeGroupsV2(GetVolumeGroupsV2Args.builder()\n            .build());\n\n        // list all the Volume Groups with pagination.\n        final var vg-pagination = NutanixFunctions.getVolumeGroupsV2(GetVolumeGroupsV2Args.builder()\n            .page(1)\n            .limit(10)\n            .build());\n\n        // list all the Volume Groups with filter.\n        final var vg-filter = NutanixFunctions.getVolumeGroupsV2(GetVolumeGroupsV2Args.builder()\n            .filter(\"name eq 'volume_group_test'\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  # list all the Volume Groups.\n  volumeGroups:\n    fn::invoke:\n      function: nutanix:getVolumeGroupsV2\n      arguments: {}\n  # list all the Volume Groups with pagination.\n  vg-pagination:\n    fn::invoke:\n      function: nutanix:getVolumeGroupsV2\n      arguments:\n        page: 1\n        limit: 10\n  # list all the Volume Groups with filter.\n  vg-filter:\n    fn::invoke:\n      function: nutanix:getVolumeGroupsV2\n      arguments:\n        filter: name eq 'volume_group_test'\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n##  Argument Reference\n\nThe following arguments are supported:\n\n* \u003cspan pulumi-lang-nodejs=\"`page`\" pulumi-lang-dotnet=\"`Page`\" pulumi-lang-go=\"`page`\" pulumi-lang-python=\"`page`\" pulumi-lang-yaml=\"`page`\" pulumi-lang-java=\"`page`\"\u003e`page`\u003c/span\u003e: - A query parameter that specifies the page number of the result set. It must be a positive integer between 0 and the maximum number of pages that are available for that resource.\n* \u003cspan pulumi-lang-nodejs=\"`limit`\" pulumi-lang-dotnet=\"`Limit`\" pulumi-lang-go=\"`limit`\" pulumi-lang-python=\"`limit`\" pulumi-lang-yaml=\"`limit`\" pulumi-lang-java=\"`limit`\"\u003e`limit`\u003c/span\u003e : A URL query parameter that specifies the total number of records returned in the result set. Must be a positive integer between 1 and 100. Any number out of this range will lead to a validation error. If the limit is not provided, a default value of 50 records will be returned in the result set.\n* \u003cspan pulumi-lang-nodejs=\"`filter`\" pulumi-lang-dotnet=\"`Filter`\" pulumi-lang-go=\"`filter`\" pulumi-lang-python=\"`filter`\" pulumi-lang-yaml=\"`filter`\" pulumi-lang-java=\"`filter`\"\u003e`filter`\u003c/span\u003e : A URL query parameter that allows clients to filter a collection of resources. The expression specified with \\$filter is evaluated for each resource in the collection, and only items where the expression evaluates to true are included in the response. Expression specified with the \\$filter must conform to the OData V4.01 URL conventions. For example, filter '\\$filter=name eq 'karbon-ntnx-1.0' would filter the result on cluster name 'karbon-ntnx1.0', filter '\\$filter=startswith(name, 'C')' would filter on cluster name starting with 'C'. The filter can be applied to the following fields:\n  - clusterReference\n  - extId\n  - name\n* \u003cspan pulumi-lang-nodejs=\"`orderby`\" pulumi-lang-dotnet=\"`Orderby`\" pulumi-lang-go=\"`orderby`\" pulumi-lang-python=\"`orderby`\" pulumi-lang-yaml=\"`orderby`\" pulumi-lang-java=\"`orderby`\"\u003e`orderby`\u003c/span\u003e : A URL query parameter that allows clients to specify the sort criteria for the returned list of objects. Resources can be sorted in ascending order using asc or descending order using desc. If asc or desc are not specified, the resources will be sorted in ascending order by default. For example, '\\$orderby=templateName desc' would get all templates sorted by templateName in descending order. The orderby can be applied to the following fields:\n  - clusterReference\n  - extId\n  - name\n* \u003cspan pulumi-lang-nodejs=\"`expand`\" pulumi-lang-dotnet=\"`Expand`\" pulumi-lang-go=\"`expand`\" pulumi-lang-python=\"`expand`\" pulumi-lang-yaml=\"`expand`\" pulumi-lang-java=\"`expand`\"\u003e`expand`\u003c/span\u003e : A URL query parameter that allows clients to request related resources when a resource that satisfies a particular request is retrieved. Each expanded item is evaluated relative to the entity containing the property being expanded. Other query options can be applied to an expanded property by appending a semicolon-separated list of query options, enclosed in parentheses, to the property name. Permissible system query options are \\$filter, \\$select and \\$orderby. The following expansion keys are supported. The expand can be applied to the following fields:\n  - clusterReference\n  - metadata\n* \u003cspan pulumi-lang-nodejs=\"`select`\" pulumi-lang-dotnet=\"`Select`\" pulumi-lang-go=\"`select`\" pulumi-lang-python=\"`select`\" pulumi-lang-yaml=\"`select`\" pulumi-lang-java=\"`select`\"\u003e`select`\u003c/span\u003e : A query parameter that allows clients to request a specific set of properties for each entity or complex type. Expression specified with the \\$select must conform to the OData V4.01 URL conventions. If a \\$select expression consists of a single select item that is an asterisk (i.e., \\*), then all properties on the matching resource will be returned. The select can be applied to the following fields:\n  - clusterReference\n  - extId\n  - name\n\n## Volume Groups\n\nThe \u003cspan pulumi-lang-nodejs=\"`volumeGroups`\" pulumi-lang-dotnet=\"`VolumeGroups`\" pulumi-lang-go=\"`volumeGroups`\" pulumi-lang-python=\"`volume_groups`\" pulumi-lang-yaml=\"`volumeGroups`\" pulumi-lang-java=\"`volumeGroups`\"\u003e`volume_groups`\u003c/span\u003e contains list of Volume Groups. Each Volume Group contains the following attributes:\n\n* \u003cspan pulumi-lang-nodejs=\"`tenantId`\" pulumi-lang-dotnet=\"`TenantId`\" pulumi-lang-go=\"`tenantId`\" pulumi-lang-python=\"`tenant_id`\" pulumi-lang-yaml=\"`tenantId`\" pulumi-lang-java=\"`tenantId`\"\u003e`tenant_id`\u003c/span\u003e: - A globally unique identifier that represents the tenant that owns this entity. The system automatically assigns it, and it and is immutable from an API consumer perspective (some use cases may cause this Id to change - For instance, a use case may require the transfer of ownership of the entity, but these cases are handled automatically on the server).\n* \u003cspan pulumi-lang-nodejs=\"`extId`\" pulumi-lang-dotnet=\"`ExtId`\" pulumi-lang-go=\"`extId`\" pulumi-lang-python=\"`ext_id`\" pulumi-lang-yaml=\"`extId`\" pulumi-lang-java=\"`extId`\"\u003e`ext_id`\u003c/span\u003e: - A globally unique identifier of an instance that is suitable for external consumption.\n* \u003cspan pulumi-lang-nodejs=\"`links`\" pulumi-lang-dotnet=\"`Links`\" pulumi-lang-go=\"`links`\" pulumi-lang-python=\"`links`\" pulumi-lang-yaml=\"`links`\" pulumi-lang-java=\"`links`\"\u003e`links`\u003c/span\u003e: - A HATEOAS style link for the response. Each link contains a user-friendly name identifying the link and an address for retrieving the particular resource.\n* \u003cspan pulumi-lang-nodejs=\"`name`\" pulumi-lang-dotnet=\"`Name`\" pulumi-lang-go=\"`name`\" pulumi-lang-python=\"`name`\" pulumi-lang-yaml=\"`name`\" pulumi-lang-java=\"`name`\"\u003e`name`\u003c/span\u003e: -(Required) Volume Group name. This is an optional field.\n* \u003cspan pulumi-lang-nodejs=\"`description`\" pulumi-lang-dotnet=\"`Description`\" pulumi-lang-go=\"`description`\" pulumi-lang-python=\"`description`\" pulumi-lang-yaml=\"`description`\" pulumi-lang-java=\"`description`\"\u003e`description`\u003c/span\u003e: - Volume Group description. This is an optional field.\n* \u003cspan pulumi-lang-nodejs=\"`shouldLoadBalanceVmAttachments`\" pulumi-lang-dotnet=\"`ShouldLoadBalanceVmAttachments`\" pulumi-lang-go=\"`shouldLoadBalanceVmAttachments`\" pulumi-lang-python=\"`should_load_balance_vm_attachments`\" pulumi-lang-yaml=\"`shouldLoadBalanceVmAttachments`\" pulumi-lang-java=\"`shouldLoadBalanceVmAttachments`\"\u003e`should_load_balance_vm_attachments`\u003c/span\u003e: - Indicates whether to enable Volume Group load balancing for VM attachments. This cannot be enabled if there are iSCSI client attachments already associated with the Volume Group, and vice-versa. This is an optional field.\n* \u003cspan pulumi-lang-nodejs=\"`sharingStatus`\" pulumi-lang-dotnet=\"`SharingStatus`\" pulumi-lang-go=\"`sharingStatus`\" pulumi-lang-python=\"`sharing_status`\" pulumi-lang-yaml=\"`sharingStatus`\" pulumi-lang-java=\"`sharingStatus`\"\u003e`sharing_status`\u003c/span\u003e: - Indicates whether the Volume Group can be shared across multiple iSCSI initiators. The mode cannot be changed from SHARED to NOT_SHARED on a Volume Group with multiple attachments. Similarly, a Volume Group cannot be associated with more than one attachment as long as it is in exclusive mode. This is an optional field. Valid values are SHARED, NOT_SHARED\n* \u003cspan pulumi-lang-nodejs=\"`targetName`\" pulumi-lang-dotnet=\"`TargetName`\" pulumi-lang-go=\"`targetName`\" pulumi-lang-python=\"`target_name`\" pulumi-lang-yaml=\"`targetName`\" pulumi-lang-java=\"`targetName`\"\u003e`target_name`\u003c/span\u003e: - Name of the external client target that will be visible and accessible to the client.\n* \u003cspan pulumi-lang-nodejs=\"`enabledAuthentications`\" pulumi-lang-dotnet=\"`EnabledAuthentications`\" pulumi-lang-go=\"`enabledAuthentications`\" pulumi-lang-python=\"`enabled_authentications`\" pulumi-lang-yaml=\"`enabledAuthentications`\" pulumi-lang-java=\"`enabledAuthentications`\"\u003e`enabled_authentications`\u003c/span\u003e: - The authentication type enabled for the Volume Group. Valid values are CHAP, NONE\n* \u003cspan pulumi-lang-nodejs=\"`iscsiFeatures`\" pulumi-lang-dotnet=\"`IscsiFeatures`\" pulumi-lang-go=\"`iscsiFeatures`\" pulumi-lang-python=\"`iscsi_features`\" pulumi-lang-yaml=\"`iscsiFeatures`\" pulumi-lang-java=\"`iscsiFeatures`\"\u003e`iscsi_features`\u003c/span\u003e: - iSCSI specific settings for the Volume Group.\n* \u003cspan pulumi-lang-nodejs=\"`createdBy`\" pulumi-lang-dotnet=\"`CreatedBy`\" pulumi-lang-go=\"`createdBy`\" pulumi-lang-python=\"`created_by`\" pulumi-lang-yaml=\"`createdBy`\" pulumi-lang-java=\"`createdBy`\"\u003e`created_by`\u003c/span\u003e: - Service/user who created this Volume Group.\n* \u003cspan pulumi-lang-nodejs=\"`clusterReference`\" pulumi-lang-dotnet=\"`ClusterReference`\" pulumi-lang-go=\"`clusterReference`\" pulumi-lang-python=\"`cluster_reference`\" pulumi-lang-yaml=\"`clusterReference`\" pulumi-lang-java=\"`clusterReference`\"\u003e`cluster_reference`\u003c/span\u003e: - The UUID of the cluster that will host the Volume Group.\n* \u003cspan pulumi-lang-nodejs=\"`storageFeatures`\" pulumi-lang-dotnet=\"`StorageFeatures`\" pulumi-lang-go=\"`storageFeatures`\" pulumi-lang-python=\"`storage_features`\" pulumi-lang-yaml=\"`storageFeatures`\" pulumi-lang-java=\"`storageFeatures`\"\u003e`storage_features`\u003c/span\u003e: - Storage optimization features which must be enabled on the Volume Group.\n* \u003cspan pulumi-lang-nodejs=\"`usageType`\" pulumi-lang-dotnet=\"`UsageType`\" pulumi-lang-go=\"`usageType`\" pulumi-lang-python=\"`usage_type`\" pulumi-lang-yaml=\"`usageType`\" pulumi-lang-java=\"`usageType`\"\u003e`usage_type`\u003c/span\u003e: - Expected usage type for the Volume Group. This is an indicative hint on how the caller will consume the Volume Group.  Valid values are BACKUP_TARGET, INTERNAL, TEMPORARY, USER\n* \u003cspan pulumi-lang-nodejs=\"`isHidden`\" pulumi-lang-dotnet=\"`IsHidden`\" pulumi-lang-go=\"`isHidden`\" pulumi-lang-python=\"`is_hidden`\" pulumi-lang-yaml=\"`isHidden`\" pulumi-lang-java=\"`isHidden`\"\u003e`is_hidden`\u003c/span\u003e: - Indicates whether the Volume Group is meant to be hidden or not.\n\n#### Links\n\nThe links attribute supports the following:\n\n* \u003cspan pulumi-lang-nodejs=\"`href`\" pulumi-lang-dotnet=\"`Href`\" pulumi-lang-go=\"`href`\" pulumi-lang-python=\"`href`\" pulumi-lang-yaml=\"`href`\" pulumi-lang-java=\"`href`\"\u003e`href`\u003c/span\u003e: - The URL at which the entity described by the link can be accessed.\n* \u003cspan pulumi-lang-nodejs=\"`rel`\" pulumi-lang-dotnet=\"`Rel`\" pulumi-lang-go=\"`rel`\" pulumi-lang-python=\"`rel`\" pulumi-lang-yaml=\"`rel`\" pulumi-lang-java=\"`rel`\"\u003e`rel`\u003c/span\u003e: - A name that identifies the relationship of the link to the object that is returned by the URL. The unique value of \"self\" identifies the URL for the object.\n\n#### Iscsi Features\n\nThe\u003cspan pulumi-lang-nodejs=\" iscsiFeatures \" pulumi-lang-dotnet=\" IscsiFeatures \" pulumi-lang-go=\" iscsiFeatures \" pulumi-lang-python=\" iscsi_features \" pulumi-lang-yaml=\" iscsiFeatures \" pulumi-lang-java=\" iscsiFeatures \"\u003e iscsi_features \u003c/span\u003eattribute supports the following:\n\n* \u003cspan pulumi-lang-nodejs=\"`enabledAuthentications`\" pulumi-lang-dotnet=\"`EnabledAuthentications`\" pulumi-lang-go=\"`enabledAuthentications`\" pulumi-lang-python=\"`enabled_authentications`\" pulumi-lang-yaml=\"`enabledAuthentications`\" pulumi-lang-java=\"`enabledAuthentications`\"\u003e`enabled_authentications`\u003c/span\u003e: - The authentication type enabled for the Volume Group.\n\n#### Storage Features\n\nThe storage features attribute supports the following:\n\n* \u003cspan pulumi-lang-nodejs=\"`flashMode`\" pulumi-lang-dotnet=\"`FlashMode`\" pulumi-lang-go=\"`flashMode`\" pulumi-lang-python=\"`flash_mode`\" pulumi-lang-yaml=\"`flashMode`\" pulumi-lang-java=\"`flashMode`\"\u003e`flash_mode`\u003c/span\u003e: - this field will avoid down migration of data from the hot tier unless the overrides field is specified for the virtual disks.\n\n##### Flash Mode\n\nThe flash mode features attribute supports the following:\n\n* \u003cspan pulumi-lang-nodejs=\"`isEnabled`\" pulumi-lang-dotnet=\"`IsEnabled`\" pulumi-lang-go=\"`isEnabled`\" pulumi-lang-python=\"`is_enabled`\" pulumi-lang-yaml=\"`isEnabled`\" pulumi-lang-java=\"`isEnabled`\"\u003e`is_enabled`\u003c/span\u003e: - Indicates whether the flash mode is enabled for the Volume Group.\n\nSee detailed information in [Nutanix List Volume Groups V4](https://developers.nutanix.com/api-reference?namespace=volumes\u0026version=v4.0#tag/VolumeGroups/operation/listVolumeGroups).\n",
      "inputs": {
        "description": "A collection of arguments for invoking getVolumeGroupsV2.\n",
        "properties": {
          "expand": {
            "type": "string"
          },
          "filter": {
            "type": "string"
          },
          "limit": {
            "type": "integer"
          },
          "orderby": {
            "type": "string"
          },
          "page": {
            "type": "integer"
          },
          "select": {
            "type": "string"
          }
        },
        "type": "object"
      },
      "outputs": {
        "description": "A collection of values returned by getVolumeGroupsV2.\n",
        "properties": {
          "expand": {
            "type": "string"
          },
          "filter": {
            "type": "string"
          },
          "id": {
            "description": "The provider-assigned unique ID for this managed resource.",
            "type": "string"
          },
          "limit": {
            "type": "integer"
          },
          "orderby": {
            "type": "string"
          },
          "page": {
            "type": "integer"
          },
          "select": {
            "type": "string"
          },
          "volumes": {
            "items": {
              "$ref": "#/types/nutanix:index%2FgetVolumeGroupsV2Volume:getVolumeGroupsV2Volume"
            },
            "type": "array"
          }
        },
        "required": [
          "id",
          "volumes"
        ],
        "type": "object"
      }
    },
    "nutanix:index/getVolumeIscsiClientV2:getVolumeIscsiClientV2": {
      "description": "Fetches the iSCSI client details identified by {extId}.\n\n\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as nutanix from \"@pierskarsenbarg/nutanix\";\n\nconst example = nutanix.getVolumeIscsiClientV2({\n    extId: \"be0e4630-23da-4b9c-a76b-f24fd64b46b6\",\n});\n```\n```python\nimport pulumi\nimport pulumi_nutanix as nutanix\n\nexample = nutanix.get_volume_iscsi_client_v2(ext_id=\"be0e4630-23da-4b9c-a76b-f24fd64b46b6\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Nutanix = Pulumi.Nutanix;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var example = Nutanix.GetVolumeIscsiClientV2.Invoke(new()\n    {\n        ExtId = \"be0e4630-23da-4b9c-a76b-f24fd64b46b6\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pierskarsenbarg/pulumi-nutanix/sdk/go/nutanix\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := nutanix.GetVolumeIscsiClientV2(ctx, \u0026nutanix.GetVolumeIscsiClientV2Args{\n\t\t\tExtId: \"be0e4630-23da-4b9c-a76b-f24fd64b46b6\",\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.nutanix.NutanixFunctions;\nimport com.pulumi.nutanix.inputs.GetVolumeIscsiClientV2Args;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var example = NutanixFunctions.getVolumeIscsiClientV2(GetVolumeIscsiClientV2Args.builder()\n            .extId(\"be0e4630-23da-4b9c-a76b-f24fd64b46b6\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  example:\n    fn::invoke:\n      function: nutanix:getVolumeIscsiClientV2\n      arguments:\n        extId: be0e4630-23da-4b9c-a76b-f24fd64b46b6\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n##  Argument Reference\n\nThe following arguments are supported:\n\n\n* \u003cspan pulumi-lang-nodejs=\"`extId`\" pulumi-lang-dotnet=\"`ExtId`\" pulumi-lang-go=\"`extId`\" pulumi-lang-python=\"`ext_id`\" pulumi-lang-yaml=\"`extId`\" pulumi-lang-java=\"`extId`\"\u003e`ext_id`\u003c/span\u003e: -(Required) A query parameter that specifies the page number of the result set. It must be a positive integer between 0 and the maximum number of pages that are available for that resource.\n",
      "inputs": {
        "description": "A collection of arguments for invoking getVolumeIscsiClientV2.\n",
        "properties": {
          "extId": {
            "type": "string",
            "description": "- A globally unique identifier of an instance that is suitable for external consumption.\n"
          },
          "iscsiInitiatorNetworkIds": {
            "type": "array",
            "items": {
              "$ref": "#/types/nutanix:index%2FgetVolumeIscsiClientV2IscsiInitiatorNetworkId:getVolumeIscsiClientV2IscsiInitiatorNetworkId"
            },
            "description": "- An unique address that identifies a device on the internet or a local network in IPv4/IPv6 format or a Fully Qualified Domain Name.\n"
          }
        },
        "type": "object",
        "required": [
          "extId"
        ]
      },
      "outputs": {
        "description": "A collection of values returned by getVolumeIscsiClientV2.\n",
        "properties": {
          "attachedTargets": {
            "items": {
              "$ref": "#/types/nutanix:index%2FgetVolumeIscsiClientV2AttachedTarget:getVolumeIscsiClientV2AttachedTarget"
            },
            "type": "array"
          },
          "attachmentSite": {
            "description": "-(Optional) The site where the Volume Group attach operation should be processed. This is an optional field. This field may only be set if Metro DR has been configured for this Volume Group. Valid values are SECONDARY, PRIMARY.\n",
            "type": "string"
          },
          "clusterReference": {
            "type": "string"
          },
          "enabledAuthentications": {
            "description": "-(Optional) (Optional) The authentication type enabled for the Volume Group. This is an optional field. If omitted, authentication is not configured for the Volume Group. If this is set to CHAP, the target/client secret must be provided. Valid values are CHAP, NONE\n",
            "type": "string"
          },
          "extId": {
            "description": "- A globally unique identifier of an instance that is suitable for external consumption.\n",
            "type": "string"
          },
          "id": {
            "description": "The provider-assigned unique ID for this managed resource.",
            "type": "string"
          },
          "iscsiInitiatorName": {
            "description": "-iSCSI initiator name. During the attach operation, exactly one of iscsiInitiatorName and iscsiInitiatorNetworkId must be specified. This field is immutable.\n",
            "type": "string"
          },
          "iscsiInitiatorNetworkIds": {
            "description": "- An unique address that identifies a device on the internet or a local network in IPv4/IPv6 format or a Fully Qualified Domain Name.\n",
            "items": {
              "$ref": "#/types/nutanix:index%2FgetVolumeIscsiClientV2IscsiInitiatorNetworkId:getVolumeIscsiClientV2IscsiInitiatorNetworkId"
            },
            "type": "array"
          },
          "links": {
            "description": "- A HATEOAS style link for the response. Each link contains a user-friendly name identifying the link and an address for retrieving the particular resource.\n",
            "items": {
              "$ref": "#/types/nutanix:index%2FgetVolumeIscsiClientV2Link:getVolumeIscsiClientV2Link"
            },
            "type": "array"
          },
          "tenantId": {
            "description": "- A globally unique identifier that represents the tenant that owns this entity. The system automatically assigns it, and it and is immutable from an API consumer perspective (some use cases may cause this Id to change - For instance, a use case may require the transfer of ownership of the entity, but these cases are handled automatically on the server).\n",
            "type": "string"
          }
        },
        "required": [
          "attachedTargets",
          "attachmentSite",
          "clusterReference",
          "enabledAuthentications",
          "extId",
          "id",
          "iscsiInitiatorName",
          "links",
          "tenantId"
        ],
        "type": "object"
      }
    },
    "nutanix:index/getVolumeIscsiClientsV2:getVolumeIscsiClientsV2": {
      "description": "Fetches the list of iSCSI clients.\n\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as nutanix from \"@pierskarsenbarg/nutanix\";\n\n// List all the iSCSI clients.\nconst list_iscsi_clients = nutanix.getVolumeIscsiClientsV2({});\n// list iSCSI clients with a filter.\nconst list_iscsi_clients_filter = nutanix.getVolumeIscsiClientsV2({\n    filter: \"clusterReference eq '00057b8b-0b7b-4b7b-0000-000000000000'\",\n});\n// list iSCSI clients with a limit and pagination.\nconst list_iscsi_clients_limit = nutanix.getVolumeIscsiClientsV2({\n    page: 2,\n    limit: 1,\n});\n```\n```python\nimport pulumi\nimport pulumi_nutanix as nutanix\n\n# List all the iSCSI clients.\nlist_iscsi_clients = nutanix.get_volume_iscsi_clients_v2()\n# list iSCSI clients with a filter.\nlist_iscsi_clients_filter = nutanix.get_volume_iscsi_clients_v2(filter=\"clusterReference eq '00057b8b-0b7b-4b7b-0000-000000000000'\")\n# list iSCSI clients with a limit and pagination.\nlist_iscsi_clients_limit = nutanix.get_volume_iscsi_clients_v2(page=2,\n    limit=1)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Nutanix = Pulumi.Nutanix;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    // List all the iSCSI clients.\n    var list_iscsi_clients = Nutanix.GetVolumeIscsiClientsV2.Invoke();\n\n    // list iSCSI clients with a filter.\n    var list_iscsi_clients_filter = Nutanix.GetVolumeIscsiClientsV2.Invoke(new()\n    {\n        Filter = \"clusterReference eq '00057b8b-0b7b-4b7b-0000-000000000000'\",\n    });\n\n    // list iSCSI clients with a limit and pagination.\n    var list_iscsi_clients_limit = Nutanix.GetVolumeIscsiClientsV2.Invoke(new()\n    {\n        Page = 2,\n        Limit = 1,\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pierskarsenbarg/pulumi-nutanix/sdk/go/nutanix\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t// List all the iSCSI clients.\n\t\t_, err := nutanix.GetVolumeIscsiClientsV2(ctx, \u0026nutanix.GetVolumeIscsiClientsV2Args{}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t// list iSCSI clients with a filter.\n\t\t_, err = nutanix.GetVolumeIscsiClientsV2(ctx, \u0026nutanix.GetVolumeIscsiClientsV2Args{\n\t\t\tFilter: pulumi.StringRef(\"clusterReference eq '00057b8b-0b7b-4b7b-0000-000000000000'\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t// list iSCSI clients with a limit and pagination.\n\t\t_, err = nutanix.GetVolumeIscsiClientsV2(ctx, \u0026nutanix.GetVolumeIscsiClientsV2Args{\n\t\t\tPage:  pulumi.IntRef(2),\n\t\t\tLimit: pulumi.IntRef(1),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.nutanix.NutanixFunctions;\nimport com.pulumi.nutanix.inputs.GetVolumeIscsiClientsV2Args;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        // List all the iSCSI clients.\n        final var list-iscsi-clients = NutanixFunctions.getVolumeIscsiClientsV2(GetVolumeIscsiClientsV2Args.builder()\n            .build());\n\n        // list iSCSI clients with a filter.\n        final var list-iscsi-clients-filter = NutanixFunctions.getVolumeIscsiClientsV2(GetVolumeIscsiClientsV2Args.builder()\n            .filter(\"clusterReference eq '00057b8b-0b7b-4b7b-0000-000000000000'\")\n            .build());\n\n        // list iSCSI clients with a limit and pagination.\n        final var list-iscsi-clients-limit = NutanixFunctions.getVolumeIscsiClientsV2(GetVolumeIscsiClientsV2Args.builder()\n            .page(2)\n            .limit(1)\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  # List all the iSCSI clients.\n  list-iscsi-clients:\n    fn::invoke:\n      function: nutanix:getVolumeIscsiClientsV2\n      arguments: {}\n  # list iSCSI clients with a filter.\n  list-iscsi-clients-filter:\n    fn::invoke:\n      function: nutanix:getVolumeIscsiClientsV2\n      arguments:\n        filter: clusterReference eq '00057b8b-0b7b-4b7b-0000-000000000000'\n  # list iSCSI clients with a limit and pagination.\n  list-iscsi-clients-limit:\n    fn::invoke:\n      function: nutanix:getVolumeIscsiClientsV2\n      arguments:\n        page: 2\n        limit: 1\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n##  Argument Reference\n\nThe following arguments are supported:\n\n* \u003cspan pulumi-lang-nodejs=\"`page`\" pulumi-lang-dotnet=\"`Page`\" pulumi-lang-go=\"`page`\" pulumi-lang-python=\"`page`\" pulumi-lang-yaml=\"`page`\" pulumi-lang-java=\"`page`\"\u003e`page`\u003c/span\u003e: - A query parameter that specifies the page number of the result set. It must be a positive integer between 0 and the maximum number of pages that are available for that resource.\n* \u003cspan pulumi-lang-nodejs=\"`limit`\" pulumi-lang-dotnet=\"`Limit`\" pulumi-lang-go=\"`limit`\" pulumi-lang-python=\"`limit`\" pulumi-lang-yaml=\"`limit`\" pulumi-lang-java=\"`limit`\"\u003e`limit`\u003c/span\u003e : A URL query parameter that specifies the total number of records returned in the result set. Must be a positive integer between 1 and 100. Any number out of this range will lead to a validation error. If the limit is not provided, a default value of 50 records will be returned in the result set.\n* \u003cspan pulumi-lang-nodejs=\"`filter`\" pulumi-lang-dotnet=\"`Filter`\" pulumi-lang-go=\"`filter`\" pulumi-lang-python=\"`filter`\" pulumi-lang-yaml=\"`filter`\" pulumi-lang-java=\"`filter`\"\u003e`filter`\u003c/span\u003e : A URL query parameter that allows clients to filter a collection of resources. The expression specified with \\$filter is evaluated for each resource in the collection, and only items where the expression evaluates to true are included in the response. Expression specified with the \\$filter must conform to the OData V4.01 URL conventions. For example, filter '\\$filter=name eq 'karbon-ntnx-1.0' would filter the result on cluster name 'karbon-ntnx1.0', filter '\\$filter=startswith(name, 'C')' would filter on cluster name starting with 'C'. The filter can be applied to the following fields:\n  - clusterReference\n  - extId\n* \u003cspan pulumi-lang-nodejs=\"`orderby`\" pulumi-lang-dotnet=\"`Orderby`\" pulumi-lang-go=\"`orderby`\" pulumi-lang-python=\"`orderby`\" pulumi-lang-yaml=\"`orderby`\" pulumi-lang-java=\"`orderby`\"\u003e`orderby`\u003c/span\u003e : A URL query parameter that allows clients to specify the sort criteria for the returned list of objects. Resources can be sorted in ascending order using asc or descending order using desc. If asc or desc are not specified, the resources will be sorted in ascending order by default. For example, '\\$orderby=templateName desc' would get all templates sorted by templateName in descending order. The orderby can be applied to the following fields:\n  - clusterReference\n  - extId\n* \u003cspan pulumi-lang-nodejs=\"`expand`\" pulumi-lang-dotnet=\"`Expand`\" pulumi-lang-go=\"`expand`\" pulumi-lang-python=\"`expand`\" pulumi-lang-yaml=\"`expand`\" pulumi-lang-java=\"`expand`\"\u003e`expand`\u003c/span\u003e : A URL query parameter that allows clients to request related resources when a resource that satisfies a particular request is retrieved. Each expanded item is evaluated relative to the entity containing the property being expanded. Other query options can be applied to an expanded property by appending a semicolon-separated list of query options, enclosed in parentheses, to the property name. Permissible system query options are \\$filter, \\$select and \\$orderby. The following expansion keys are supported. The expand can be applied to the following fields:\n  - cluster\n* \u003cspan pulumi-lang-nodejs=\"`select`\" pulumi-lang-dotnet=\"`Select`\" pulumi-lang-go=\"`select`\" pulumi-lang-python=\"`select`\" pulumi-lang-yaml=\"`select`\" pulumi-lang-java=\"`select`\"\u003e`select`\u003c/span\u003e : A query parameter that allows clients to request a specific set of properties for each entity or complex type. Expression specified with the \\$select must conform to the OData V4.01 URL conventions. If a \\$select expression consists of a single select item that is an asterisk (i.e., \\*), then all properties on the matching resource will be returned. The select can be applied to the following fields:\n  - clusterReference\n  - extId\n\n## Iscsi Clients\n\nThe \u003cspan pulumi-lang-nodejs=\"`iscsiClients`\" pulumi-lang-dotnet=\"`IscsiClients`\" pulumi-lang-go=\"`iscsiClients`\" pulumi-lang-python=\"`iscsi_clients`\" pulumi-lang-yaml=\"`iscsiClients`\" pulumi-lang-java=\"`iscsiClients`\"\u003e`iscsi_clients`\u003c/span\u003e contains list of iSCSI clients. Each iSCSI client contains the following attributes:\n\n* \u003cspan pulumi-lang-nodejs=\"`tenantId`\" pulumi-lang-dotnet=\"`TenantId`\" pulumi-lang-go=\"`tenantId`\" pulumi-lang-python=\"`tenant_id`\" pulumi-lang-yaml=\"`tenantId`\" pulumi-lang-java=\"`tenantId`\"\u003e`tenant_id`\u003c/span\u003e: - A globally unique identifier that represents the tenant that owns this entity. The system automatically assigns it, and it and is immutable from an API consumer perspective (some use cases may cause this Id to change - For instance, a use case may require the transfer of ownership of the entity, but these cases are handled automatically on the server).\n* \u003cspan pulumi-lang-nodejs=\"`extId`\" pulumi-lang-dotnet=\"`ExtId`\" pulumi-lang-go=\"`extId`\" pulumi-lang-python=\"`ext_id`\" pulumi-lang-yaml=\"`extId`\" pulumi-lang-java=\"`extId`\"\u003e`ext_id`\u003c/span\u003e: - A globally unique identifier of an instance that is suitable for external consumption.\n* \u003cspan pulumi-lang-nodejs=\"`links`\" pulumi-lang-dotnet=\"`Links`\" pulumi-lang-go=\"`links`\" pulumi-lang-python=\"`links`\" pulumi-lang-yaml=\"`links`\" pulumi-lang-java=\"`links`\"\u003e`links`\u003c/span\u003e: - A HATEOAS style link for the response. Each link contains a user-friendly name identifying the link and an address for retrieving the particular resource.\n* \u003cspan pulumi-lang-nodejs=\"`iscsiInitiatorName`\" pulumi-lang-dotnet=\"`IscsiInitiatorName`\" pulumi-lang-go=\"`iscsiInitiatorName`\" pulumi-lang-python=\"`iscsi_initiator_name`\" pulumi-lang-yaml=\"`iscsiInitiatorName`\" pulumi-lang-java=\"`iscsiInitiatorName`\"\u003e`iscsi_initiator_name`\u003c/span\u003e: -iSCSI initiator name. During the attach operation, exactly one of iscsiInitiatorName and iscsiInitiatorNetworkId must be specified. This field is immutable.\n* \u003cspan pulumi-lang-nodejs=\"`iscsiInitiatorNetworkId`\" pulumi-lang-dotnet=\"`IscsiInitiatorNetworkId`\" pulumi-lang-go=\"`iscsiInitiatorNetworkId`\" pulumi-lang-python=\"`iscsi_initiator_network_id`\" pulumi-lang-yaml=\"`iscsiInitiatorNetworkId`\" pulumi-lang-java=\"`iscsiInitiatorNetworkId`\"\u003e`iscsi_initiator_network_id`\u003c/span\u003e: - An unique address that identifies a device on the internet or a local network in IPv4/IPv6 format or a Fully Qualified Domain Name.\n* \u003cspan pulumi-lang-nodejs=\"`clientSecret`\" pulumi-lang-dotnet=\"`ClientSecret`\" pulumi-lang-go=\"`clientSecret`\" pulumi-lang-python=\"`client_secret`\" pulumi-lang-yaml=\"`clientSecret`\" pulumi-lang-java=\"`clientSecret`\"\u003e`client_secret`\u003c/span\u003e: -(Optional) iSCSI initiator client secret in case of CHAP authentication. This field should not be provided in case the authentication type is not set to CHAP.\n* \u003cspan pulumi-lang-nodejs=\"`enabledAuthentications`\" pulumi-lang-dotnet=\"`EnabledAuthentications`\" pulumi-lang-go=\"`enabledAuthentications`\" pulumi-lang-python=\"`enabled_authentications`\" pulumi-lang-yaml=\"`enabledAuthentications`\" pulumi-lang-java=\"`enabledAuthentications`\"\u003e`enabled_authentications`\u003c/span\u003e: -(Optional) (Optional) The authentication type enabled for the Volume Group. This is an optional field. If omitted, authentication is not configured for the Volume Group. If this is set to CHAP, the target/client secret must be provided. Valid values are CHAP, NONE\n* \u003cspan pulumi-lang-nodejs=\"`numVirtualTargets`\" pulumi-lang-dotnet=\"`NumVirtualTargets`\" pulumi-lang-go=\"`numVirtualTargets`\" pulumi-lang-python=\"`num_virtual_targets`\" pulumi-lang-yaml=\"`numVirtualTargets`\" pulumi-lang-java=\"`numVirtualTargets`\"\u003e`num_virtual_targets`\u003c/span\u003e: -(Optional) Number of virtual targets generated for the iSCSI target. This field is immutable.\n* \u003cspan pulumi-lang-nodejs=\"`attachmentSite`\" pulumi-lang-dotnet=\"`AttachmentSite`\" pulumi-lang-go=\"`attachmentSite`\" pulumi-lang-python=\"`attachment_site`\" pulumi-lang-yaml=\"`attachmentSite`\" pulumi-lang-java=\"`attachmentSite`\"\u003e`attachment_site`\u003c/span\u003e: -(Optional) The site where the Volume Group attach operation should be processed. This is an optional field. This field may only be set if Metro DR has been configured for this Volume Group. Valid values are SECONDARY, PRIMARY.\n\n\n#### Links\n\nThe links attribute supports the following:\n\n* \u003cspan pulumi-lang-nodejs=\"`href`\" pulumi-lang-dotnet=\"`Href`\" pulumi-lang-go=\"`href`\" pulumi-lang-python=\"`href`\" pulumi-lang-yaml=\"`href`\" pulumi-lang-java=\"`href`\"\u003e`href`\u003c/span\u003e: - The URL at which the entity described by the link can be accessed.\n* \u003cspan pulumi-lang-nodejs=\"`rel`\" pulumi-lang-dotnet=\"`Rel`\" pulumi-lang-go=\"`rel`\" pulumi-lang-python=\"`rel`\" pulumi-lang-yaml=\"`rel`\" pulumi-lang-java=\"`rel`\"\u003e`rel`\u003c/span\u003e: - A name that identifies the relationship of the link to the object that is returned by the URL. The unique value of \"self\" identifies the URL for the object.\n\n#### iscsi initiator network id\n\nThe\u003cspan pulumi-lang-nodejs=\" iscsiInitiatorNetworkId \" pulumi-lang-dotnet=\" IscsiInitiatorNetworkId \" pulumi-lang-go=\" iscsiInitiatorNetworkId \" pulumi-lang-python=\" iscsi_initiator_network_id \" pulumi-lang-yaml=\" iscsiInitiatorNetworkId \" pulumi-lang-java=\" iscsiInitiatorNetworkId \"\u003e iscsi_initiator_network_id \u003c/span\u003eattribute supports the following:\n\n* \u003cspan pulumi-lang-nodejs=\"`ipv4`\" pulumi-lang-dotnet=\"`Ipv4`\" pulumi-lang-go=\"`ipv4`\" pulumi-lang-python=\"`ipv4`\" pulumi-lang-yaml=\"`ipv4`\" pulumi-lang-java=\"`ipv4`\"\u003e`ipv4`\u003c/span\u003e: - An unique address that identifies a device on the internet or a local network in IPv4 format.\n* \u003cspan pulumi-lang-nodejs=\"`ipv6`\" pulumi-lang-dotnet=\"`Ipv6`\" pulumi-lang-go=\"`ipv6`\" pulumi-lang-python=\"`ipv6`\" pulumi-lang-yaml=\"`ipv6`\" pulumi-lang-java=\"`ipv6`\"\u003e`ipv6`\u003c/span\u003e: - An unique address that identifies a device on the internet or a local network in IPv6 format.\n* \u003cspan pulumi-lang-nodejs=\"`fqdn`\" pulumi-lang-dotnet=\"`Fqdn`\" pulumi-lang-go=\"`fqdn`\" pulumi-lang-python=\"`fqdn`\" pulumi-lang-yaml=\"`fqdn`\" pulumi-lang-java=\"`fqdn`\"\u003e`fqdn`\u003c/span\u003e: - A fully qualified domain name that specifies its exact location in the tree hierarchy of the Domain Name System.\n\n##### IPV4\n\nThe ipv4 attribute supports the following:\n\n* \u003cspan pulumi-lang-nodejs=\"`value`\" pulumi-lang-dotnet=\"`Value`\" pulumi-lang-go=\"`value`\" pulumi-lang-python=\"`value`\" pulumi-lang-yaml=\"`value`\" pulumi-lang-java=\"`value`\"\u003e`value`\u003c/span\u003e: - An unique address that identifies a device on the internet or a local network in IPv4 format.\n* \u003cspan pulumi-lang-nodejs=\"`prefixLength`\" pulumi-lang-dotnet=\"`PrefixLength`\" pulumi-lang-go=\"`prefixLength`\" pulumi-lang-python=\"`prefix_length`\" pulumi-lang-yaml=\"`prefixLength`\" pulumi-lang-java=\"`prefixLength`\"\u003e`prefix_length`\u003c/span\u003e: - The prefix length of the network to which this host IPv4 address belongs.\n\n##### IPV6\n\nThe ipv6 attribute supports the following:\n\n* \u003cspan pulumi-lang-nodejs=\"`value`\" pulumi-lang-dotnet=\"`Value`\" pulumi-lang-go=\"`value`\" pulumi-lang-python=\"`value`\" pulumi-lang-yaml=\"`value`\" pulumi-lang-java=\"`value`\"\u003e`value`\u003c/span\u003e: - An unique address that identifies a device on the internet or a local network in IPv6 format.\n* \u003cspan pulumi-lang-nodejs=\"`prefixLength`\" pulumi-lang-dotnet=\"`PrefixLength`\" pulumi-lang-go=\"`prefixLength`\" pulumi-lang-python=\"`prefix_length`\" pulumi-lang-yaml=\"`prefixLength`\" pulumi-lang-java=\"`prefixLength`\"\u003e`prefix_length`\u003c/span\u003e: - The prefix length of the network to which this host IPv6 address belongs.\n\n##### FQDN\n\nThe fqdn attribute supports the following:\n\n* \u003cspan pulumi-lang-nodejs=\"`value`\" pulumi-lang-dotnet=\"`Value`\" pulumi-lang-go=\"`value`\" pulumi-lang-python=\"`value`\" pulumi-lang-yaml=\"`value`\" pulumi-lang-java=\"`value`\"\u003e`value`\u003c/span\u003e: - The fully qualified domain name.\n\n\n#### Attached Targets\n\nThe\u003cspan pulumi-lang-nodejs=\" attachedTargets \" pulumi-lang-dotnet=\" AttachedTargets \" pulumi-lang-go=\" attachedTargets \" pulumi-lang-python=\" attached_targets \" pulumi-lang-yaml=\" attachedTargets \" pulumi-lang-java=\" attachedTargets \"\u003e attached_targets \u003c/span\u003eattribute supports the following:\n\n* \u003cspan pulumi-lang-nodejs=\"`numVirtualTargets`\" pulumi-lang-dotnet=\"`NumVirtualTargets`\" pulumi-lang-go=\"`numVirtualTargets`\" pulumi-lang-python=\"`num_virtual_targets`\" pulumi-lang-yaml=\"`numVirtualTargets`\" pulumi-lang-java=\"`numVirtualTargets`\"\u003e`num_virtual_targets`\u003c/span\u003e: - Number of virtual targets generated for the iSCSI target. This field is immutable.\n* \u003cspan pulumi-lang-nodejs=\"`iscsiTargetName`\" pulumi-lang-dotnet=\"`IscsiTargetName`\" pulumi-lang-go=\"`iscsiTargetName`\" pulumi-lang-python=\"`iscsi_target_name`\" pulumi-lang-yaml=\"`iscsiTargetName`\" pulumi-lang-java=\"`iscsiTargetName`\"\u003e`iscsi_target_name`\u003c/span\u003e: - Name of the iSCSI target that the iSCSI client is connected to. This is a read-only field.\n\n\n\nSee detailed information in [Nutanix List iSCSI Clients V4](https://developers.nutanix.com/api-reference?namespace=volumes\u0026version=v4.0#tag/IscsiClients/operation/listIscsiClients).\n",
      "inputs": {
        "description": "A collection of arguments for invoking getVolumeIscsiClientsV2.\n",
        "properties": {
          "expand": {
            "type": "string"
          },
          "filter": {
            "type": "string"
          },
          "limit": {
            "type": "integer"
          },
          "orderby": {
            "type": "string"
          },
          "page": {
            "type": "integer"
          },
          "select": {
            "type": "string"
          }
        },
        "type": "object"
      },
      "outputs": {
        "description": "A collection of values returned by getVolumeIscsiClientsV2.\n",
        "properties": {
          "expand": {
            "type": "string"
          },
          "filter": {
            "type": "string"
          },
          "id": {
            "description": "The provider-assigned unique ID for this managed resource.",
            "type": "string"
          },
          "iscsiClients": {
            "description": "- List all the iSCSI clients.\n",
            "items": {
              "$ref": "#/types/nutanix:index%2FgetVolumeIscsiClientsV2IscsiClient:getVolumeIscsiClientsV2IscsiClient"
            },
            "type": "array"
          },
          "limit": {
            "type": "integer"
          },
          "orderby": {
            "type": "string"
          },
          "page": {
            "type": "integer"
          },
          "select": {
            "type": "string"
          }
        },
        "required": [
          "id",
          "iscsiClients"
        ],
        "type": "object"
      }
    },
    "nutanix:index/getVpc:getVpc": {
      "description": "Provides a datasource to retrieve VPC with\u003cspan pulumi-lang-nodejs=\" vpcUuid \" pulumi-lang-dotnet=\" VpcUuid \" pulumi-lang-go=\" vpcUuid \" pulumi-lang-python=\" vpc_uuid \" pulumi-lang-yaml=\" vpcUuid \" pulumi-lang-java=\" vpcUuid \"\u003e vpc_uuid \u003c/span\u003eor\u003cspan pulumi-lang-nodejs=\" vpcName \" pulumi-lang-dotnet=\" VpcName \" pulumi-lang-go=\" vpcName \" pulumi-lang-python=\" vpc_name \" pulumi-lang-yaml=\" vpcName \" pulumi-lang-java=\" vpcName \"\u003e vpc_name \u003c/span\u003e.\n\n",
      "inputs": {
        "description": "A collection of arguments for invoking getVpc.\n",
        "properties": {
          "vpcName": {
            "type": "string",
            "description": "vpc Name\n"
          },
          "vpcUuid": {
            "type": "string",
            "description": "vpc UUID\n"
          }
        },
        "type": "object"
      },
      "outputs": {
        "description": "A collection of values returned by getVpc.\n",
        "properties": {
          "apiVersion": {
            "description": "The version of the API.\n",
            "type": "string"
          },
          "id": {
            "description": "The provider-assigned unique ID for this managed resource.",
            "type": "string"
          },
          "metadata": {
            "additionalProperties": {
              "type": "string"
            },
            "description": "- The vpc kind metadata.\n",
            "type": "object"
          },
          "specs": {
            "description": "VPC input spec\n",
            "items": {
              "$ref": "#/types/nutanix:index%2FgetVpcSpec:getVpcSpec"
            },
            "type": "array"
          },
          "statuses": {
            "description": "VPC output status\n",
            "items": {
              "$ref": "#/types/nutanix:index%2FgetVpcStatus:getVpcStatus"
            },
            "type": "array"
          },
          "vpcName": {
            "type": "string"
          },
          "vpcUuid": {
            "type": "string"
          }
        },
        "required": [
          "apiVersion",
          "id",
          "metadata",
          "specs",
          "statuses"
        ],
        "type": "object"
      }
    },
    "nutanix:index/getVpcV2:getVpcV2": {
      "description": "Provides a datasource to retrieve VPC with\u003cspan pulumi-lang-nodejs=\" vpcUuid \" pulumi-lang-dotnet=\" VpcUuid \" pulumi-lang-go=\" vpcUuid \" pulumi-lang-python=\" vpc_uuid \" pulumi-lang-yaml=\" vpcUuid \" pulumi-lang-java=\" vpcUuid \"\u003e vpc_uuid \u003c/span\u003e.\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as nutanix from \"@pierskarsenbarg/nutanix\";\n\nconst get_vpc = nutanix.getVpcV2({\n    extId: \"8a938cc5-282b-48c4-81be-de22de145d07\",\n});\n```\n```python\nimport pulumi\nimport pulumi_nutanix as nutanix\n\nget_vpc = nutanix.get_vpc_v2(ext_id=\"8a938cc5-282b-48c4-81be-de22de145d07\")\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Nutanix = Pulumi.Nutanix;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var get_vpc = Nutanix.GetVpcV2.Invoke(new()\n    {\n        ExtId = \"8a938cc5-282b-48c4-81be-de22de145d07\",\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pierskarsenbarg/pulumi-nutanix/sdk/go/nutanix\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := nutanix.LookupVpcV2(ctx, \u0026nutanix.LookupVpcV2Args{\n\t\t\tExtId: \"8a938cc5-282b-48c4-81be-de22de145d07\",\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.nutanix.NutanixFunctions;\nimport com.pulumi.nutanix.inputs.GetVpcV2Args;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var get-vpc = NutanixFunctions.getVpcV2(GetVpcV2Args.builder()\n            .extId(\"8a938cc5-282b-48c4-81be-de22de145d07\")\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  get-vpc:\n    fn::invoke:\n      function: nutanix:getVpcV2\n      arguments:\n        extId: 8a938cc5-282b-48c4-81be-de22de145d07\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
      "inputs": {
        "description": "A collection of arguments for invoking getVpcV2.\n",
        "properties": {
          "extId": {
            "type": "string",
            "description": "vpc UUID\n"
          }
        },
        "type": "object",
        "required": [
          "extId"
        ]
      },
      "outputs": {
        "description": "A collection of values returned by getVpcV2.\n",
        "properties": {
          "commonDhcpOptions": {
            "description": "List of DHCP options to be configured.\n",
            "items": {
              "$ref": "#/types/nutanix:index%2FgetVpcV2CommonDhcpOption:getVpcV2CommonDhcpOption"
            },
            "type": "array"
          },
          "description": {
            "description": "Description of the VPC.\n",
            "type": "string"
          },
          "extId": {
            "type": "string"
          },
          "externalRoutingDomainReference": {
            "description": "External routing domain associated with this route table\n",
            "type": "string"
          },
          "externalSubnets": {
            "description": "List of external subnets that the VPC is attached to.\n",
            "items": {
              "$ref": "#/types/nutanix:index%2FgetVpcV2ExternalSubnet:getVpcV2ExternalSubnet"
            },
            "type": "array"
          },
          "externallyRoutablePrefixes": {
            "description": "CIDR blocks from the VPC which can talk externally without performing NAT. This is applicable when connecting to external subnets which have disabled NAT.\n",
            "items": {
              "$ref": "#/types/nutanix:index%2FgetVpcV2ExternallyRoutablePrefix:getVpcV2ExternallyRoutablePrefix"
            },
            "type": "array"
          },
          "id": {
            "description": "The provider-assigned unique ID for this managed resource.",
            "type": "string"
          },
          "links": {
            "description": "A HATEOAS style link for the response. Each link contains a user-friendly name identifying the link and an address for retrieving the particular resource.\n",
            "items": {
              "$ref": "#/types/nutanix:index%2FgetVpcV2Link:getVpcV2Link"
            },
            "type": "array"
          },
          "metadatas": {
            "description": "Metadata associated with this resource.\n",
            "items": {
              "$ref": "#/types/nutanix:index%2FgetVpcV2Metadata:getVpcV2Metadata"
            },
            "type": "array"
          },
          "name": {
            "description": "Name of the VPC.\n",
            "type": "string"
          },
          "snatIps": {
            "description": "List of IP Addresses used for SNAT.\n",
            "items": {
              "$ref": "#/types/nutanix:index%2FgetVpcV2SnatIp:getVpcV2SnatIp"
            },
            "type": "array"
          },
          "tenantId": {
            "description": "A globally unique identifier that represents the tenant that owns this entity.\n",
            "type": "string"
          },
          "vpcType": {
            "description": "Type of VPC.\n",
            "type": "string"
          }
        },
        "required": [
          "commonDhcpOptions",
          "description",
          "extId",
          "externalRoutingDomainReference",
          "externalSubnets",
          "externallyRoutablePrefixes",
          "id",
          "links",
          "metadatas",
          "name",
          "snatIps",
          "tenantId",
          "vpcType"
        ],
        "type": "object"
      }
    },
    "nutanix:index/getVpcs:getVpcs": {
      "description": "Provides a datasource to retrieve all the vpcs.\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as nutanix from \"@pierskarsenbarg/nutanix\";\n\nconst test = nutanix.getVpcs({});\n```\n```python\nimport pulumi\nimport pulumi_nutanix as nutanix\n\ntest = nutanix.get_vpcs()\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Nutanix = Pulumi.Nutanix;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    var test = Nutanix.GetVpcs.Invoke();\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pierskarsenbarg/pulumi-nutanix/sdk/go/nutanix\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t_, err := nutanix.GetVpcs(ctx, \u0026nutanix.GetVpcsArgs{}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.nutanix.NutanixFunctions;\nimport com.pulumi.nutanix.inputs.GetVpcsArgs;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        final var test = NutanixFunctions.getVpcs(GetVpcsArgs.builder()\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  test:\n    fn::invoke:\n      function: nutanix:getVpcs\n      arguments: {}\n```\n\u003c!--End PulumiCodeChooser --\u003e\n",
      "inputs": {
        "description": "A collection of arguments for invoking getVpcs.\n",
        "properties": {
          "metadatas": {
            "type": "array",
            "items": {
              "$ref": "#/types/nutanix:index%2FgetVpcsMetadata:getVpcsMetadata"
            },
            "description": "- The vpc kind metadata.\n"
          }
        },
        "type": "object"
      },
      "outputs": {
        "description": "A collection of values returned by getVpcs.\n",
        "properties": {
          "apiVersion": {
            "description": "version of the API\n",
            "type": "string"
          },
          "entities": {
            "description": "List of VPCs\n",
            "items": {
              "$ref": "#/types/nutanix:index%2FgetVpcsEntity:getVpcsEntity"
            },
            "type": "array"
          },
          "id": {
            "description": "The provider-assigned unique ID for this managed resource.",
            "type": "string"
          },
          "metadatas": {
            "description": "- The vpc kind metadata.\n",
            "items": {
              "$ref": "#/types/nutanix:index%2FgetVpcsMetadata:getVpcsMetadata"
            },
            "type": "array"
          }
        },
        "required": [
          "apiVersion",
          "entities",
          "id",
          "metadatas"
        ],
        "type": "object"
      }
    },
    "nutanix:index/getVpcsV2:getVpcsV2": {
      "description": "Provides a datasource to retrieve the list of existing VPCs.\n\n## Example Usage\n\n\u003c!--Start PulumiCodeChooser --\u003e\n```typescript\nimport * as pulumi from \"@pulumi/pulumi\";\nimport * as nutanix from \"@pierskarsenbarg/nutanix\";\n\n// Get all VPCs\nconst list_vpcs = nutanix.getVpcsV2({});\n// Get all VPCs with filter\nconst list_vpcs_with_filter = nutanix.getVpcsV2({\n    filter: \"vpcType eq 'VLAN'\",\n});\n// Get all VPCs with order by and limit and filter\nconst list_vpcs_with_order_by_limit_filter = nutanix.getVpcsV2({\n    filter: \"vpcType eq 'VLAN'\",\n    orderBy: \"name desc\",\n    limit: 10,\n});\n```\n```python\nimport pulumi\nimport pulumi_nutanix as nutanix\n\n# Get all VPCs\nlist_vpcs = nutanix.get_vpcs_v2()\n# Get all VPCs with filter\nlist_vpcs_with_filter = nutanix.get_vpcs_v2(filter=\"vpcType eq 'VLAN'\")\n# Get all VPCs with order by and limit and filter\nlist_vpcs_with_order_by_limit_filter = nutanix.get_vpcs_v2(filter=\"vpcType eq 'VLAN'\",\n    order_by=\"name desc\",\n    limit=10)\n```\n```csharp\nusing System.Collections.Generic;\nusing System.Linq;\nusing Pulumi;\nusing Nutanix = Pulumi.Nutanix;\n\nreturn await Deployment.RunAsync(() =\u003e \n{\n    // Get all VPCs\n    var list_vpcs = Nutanix.GetVpcsV2.Invoke();\n\n    // Get all VPCs with filter\n    var list_vpcs_with_filter = Nutanix.GetVpcsV2.Invoke(new()\n    {\n        Filter = \"vpcType eq 'VLAN'\",\n    });\n\n    // Get all VPCs with order by and limit and filter\n    var list_vpcs_with_order_by_limit_filter = Nutanix.GetVpcsV2.Invoke(new()\n    {\n        Filter = \"vpcType eq 'VLAN'\",\n        OrderBy = \"name desc\",\n        Limit = 10,\n    });\n\n});\n```\n```go\npackage main\n\nimport (\n\t\"github.com/pierskarsenbarg/pulumi-nutanix/sdk/go/nutanix\"\n\t\"github.com/pulumi/pulumi/sdk/v3/go/pulumi\"\n)\n\nfunc main() {\n\tpulumi.Run(func(ctx *pulumi.Context) error {\n\t\t// Get all VPCs\n\t\t_, err := nutanix.GetVpcsV2(ctx, \u0026nutanix.GetVpcsV2Args{}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t// Get all VPCs with filter\n\t\t_, err = nutanix.GetVpcsV2(ctx, \u0026nutanix.GetVpcsV2Args{\n\t\t\tFilter: pulumi.StringRef(\"vpcType eq 'VLAN'\"),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\t// Get all VPCs with order by and limit and filter\n\t\t_, err = nutanix.GetVpcsV2(ctx, \u0026nutanix.GetVpcsV2Args{\n\t\t\tFilter:  pulumi.StringRef(\"vpcType eq 'VLAN'\"),\n\t\t\tOrderBy: pulumi.StringRef(\"name desc\"),\n\t\t\tLimit:   pulumi.IntRef(10),\n\t\t}, nil)\n\t\tif err != nil {\n\t\t\treturn err\n\t\t}\n\t\treturn nil\n\t})\n}\n```\n```java\npackage generated_program;\n\nimport com.pulumi.Context;\nimport com.pulumi.Pulumi;\nimport com.pulumi.core.Output;\nimport com.pulumi.nutanix.NutanixFunctions;\nimport com.pulumi.nutanix.inputs.GetVpcsV2Args;\nimport java.util.List;\nimport java.util.ArrayList;\nimport java.util.Map;\nimport java.io.File;\nimport java.nio.file.Files;\nimport java.nio.file.Paths;\n\npublic class App {\n    public static void main(String[] args) {\n        Pulumi.run(App::stack);\n    }\n\n    public static void stack(Context ctx) {\n        // Get all VPCs\n        final var list-vpcs = NutanixFunctions.getVpcsV2(GetVpcsV2Args.builder()\n            .build());\n\n        // Get all VPCs with filter\n        final var list-vpcs-with-filter = NutanixFunctions.getVpcsV2(GetVpcsV2Args.builder()\n            .filter(\"vpcType eq 'VLAN'\")\n            .build());\n\n        // Get all VPCs with order by and limit and filter\n        final var list-vpcs-with-order-by-limit-filter = NutanixFunctions.getVpcsV2(GetVpcsV2Args.builder()\n            .filter(\"vpcType eq 'VLAN'\")\n            .orderBy(\"name desc\")\n            .limit(10)\n            .build());\n\n    }\n}\n```\n```yaml\nvariables:\n  # Get all VPCs\n  list-vpcs:\n    fn::invoke:\n      function: nutanix:getVpcsV2\n      arguments: {}\n  # Get all VPCs with filter\n  list-vpcs-with-filter:\n    fn::invoke:\n      function: nutanix:getVpcsV2\n      arguments:\n        filter: vpcType eq 'VLAN'\n  # Get all VPCs with order by and limit and filter\n  list-vpcs-with-order-by-limit-filter:\n    fn::invoke:\n      function: nutanix:getVpcsV2\n      arguments:\n        filter: vpcType eq 'VLAN'\n        orderBy: name desc\n        limit: 10\n```\n\u003c!--End PulumiCodeChooser --\u003e\n\n## vpcs\n\nThe \u003cspan pulumi-lang-nodejs=\"`vpcs`\" pulumi-lang-dotnet=\"`Vpcs`\" pulumi-lang-go=\"`vpcs`\" pulumi-lang-python=\"`vpcs`\" pulumi-lang-yaml=\"`vpcs`\" pulumi-lang-java=\"`vpcs`\"\u003e`vpcs`\u003c/span\u003e object contains the following attributes:\n\n- \u003cspan pulumi-lang-nodejs=\"`extId`\" pulumi-lang-dotnet=\"`ExtId`\" pulumi-lang-go=\"`extId`\" pulumi-lang-python=\"`ext_id`\" pulumi-lang-yaml=\"`extId`\" pulumi-lang-java=\"`extId`\"\u003e`ext_id`\u003c/span\u003e:\u003cspan pulumi-lang-nodejs=\" extId \" pulumi-lang-dotnet=\" ExtId \" pulumi-lang-go=\" extId \" pulumi-lang-python=\" ext_id \" pulumi-lang-yaml=\" extId \" pulumi-lang-java=\" extId \"\u003e ext_id \u003c/span\u003eof VPC.\n- \u003cspan pulumi-lang-nodejs=\"`name`\" pulumi-lang-dotnet=\"`Name`\" pulumi-lang-go=\"`name`\" pulumi-lang-python=\"`name`\" pulumi-lang-yaml=\"`name`\" pulumi-lang-java=\"`name`\"\u003e`name`\u003c/span\u003e: Name of the VPC.\n- \u003cspan pulumi-lang-nodejs=\"`description`\" pulumi-lang-dotnet=\"`Description`\" pulumi-lang-go=\"`description`\" pulumi-lang-python=\"`description`\" pulumi-lang-yaml=\"`description`\" pulumi-lang-java=\"`description`\"\u003e`description`\u003c/span\u003e: Description of the VPC.\n- \u003cspan pulumi-lang-nodejs=\"`commonDhcpOptions`\" pulumi-lang-dotnet=\"`CommonDhcpOptions`\" pulumi-lang-go=\"`commonDhcpOptions`\" pulumi-lang-python=\"`common_dhcp_options`\" pulumi-lang-yaml=\"`commonDhcpOptions`\" pulumi-lang-java=\"`commonDhcpOptions`\"\u003e`common_dhcp_options`\u003c/span\u003e: List of DHCP options to be configured.\n- \u003cspan pulumi-lang-nodejs=\"`vpcType`\" pulumi-lang-dotnet=\"`VpcType`\" pulumi-lang-go=\"`vpcType`\" pulumi-lang-python=\"`vpc_type`\" pulumi-lang-yaml=\"`vpcType`\" pulumi-lang-java=\"`vpcType`\"\u003e`vpc_type`\u003c/span\u003e: Type of VPC.\n- \u003cspan pulumi-lang-nodejs=\"`snatIps`\" pulumi-lang-dotnet=\"`SnatIps`\" pulumi-lang-go=\"`snatIps`\" pulumi-lang-python=\"`snat_ips`\" pulumi-lang-yaml=\"`snatIps`\" pulumi-lang-java=\"`snatIps`\"\u003e`snat_ips`\u003c/span\u003e: List of IP Addresses used for SNAT.\n- \u003cspan pulumi-lang-nodejs=\"`externalSubnets`\" pulumi-lang-dotnet=\"`ExternalSubnets`\" pulumi-lang-go=\"`externalSubnets`\" pulumi-lang-python=\"`external_subnets`\" pulumi-lang-yaml=\"`externalSubnets`\" pulumi-lang-java=\"`externalSubnets`\"\u003e`external_subnets`\u003c/span\u003e: List of external subnets that the VPC is attached to.\n- \u003cspan pulumi-lang-nodejs=\"`externalRoutingDomainReference`\" pulumi-lang-dotnet=\"`ExternalRoutingDomainReference`\" pulumi-lang-go=\"`externalRoutingDomainReference`\" pulumi-lang-python=\"`external_routing_domain_reference`\" pulumi-lang-yaml=\"`externalRoutingDomainReference`\" pulumi-lang-java=\"`externalRoutingDomainReference`\"\u003e`external_routing_domain_reference`\u003c/span\u003e: External routing domain associated with this route table\n- \u003cspan pulumi-lang-nodejs=\"`externallyRoutablePrefixes`\" pulumi-lang-dotnet=\"`ExternallyRoutablePrefixes`\" pulumi-lang-go=\"`externallyRoutablePrefixes`\" pulumi-lang-python=\"`externally_routable_prefixes`\" pulumi-lang-yaml=\"`externallyRoutablePrefixes`\" pulumi-lang-java=\"`externallyRoutablePrefixes`\"\u003e`externally_routable_prefixes`\u003c/span\u003e: CIDR blocks from the VPC which can talk externally without performing NAT. This is applicable when connecting to external subnets which have disabled NAT.\n- \u003cspan pulumi-lang-nodejs=\"`tenantId`\" pulumi-lang-dotnet=\"`TenantId`\" pulumi-lang-go=\"`tenantId`\" pulumi-lang-python=\"`tenant_id`\" pulumi-lang-yaml=\"`tenantId`\" pulumi-lang-java=\"`tenantId`\"\u003e`tenant_id`\u003c/span\u003e: A globally unique identifier that represents the tenant that owns this entity.\n- \u003cspan pulumi-lang-nodejs=\"`links`\" pulumi-lang-dotnet=\"`Links`\" pulumi-lang-go=\"`links`\" pulumi-lang-python=\"`links`\" pulumi-lang-yaml=\"`links`\" pulumi-lang-java=\"`links`\"\u003e`links`\u003c/span\u003e: A HATEOAS style link for the response. Each link contains a user-friendly name identifying the link and an address for retrieving the particular resource.\n- \u003cspan pulumi-lang-nodejs=\"`metadata`\" pulumi-lang-dotnet=\"`Metadata`\" pulumi-lang-go=\"`metadata`\" pulumi-lang-python=\"`metadata`\" pulumi-lang-yaml=\"`metadata`\" pulumi-lang-java=\"`metadata`\"\u003e`metadata`\u003c/span\u003e: Metadata associated with this resource.\n\n###\u003cspan pulumi-lang-nodejs=\" commonDhcpOptions\n\" pulumi-lang-dotnet=\" CommonDhcpOptions\n\" pulumi-lang-go=\" commonDhcpOptions\n\" pulumi-lang-python=\" common_dhcp_options\n\" pulumi-lang-yaml=\" commonDhcpOptions\n\" pulumi-lang-java=\" commonDhcpOptions\n\"\u003e common_dhcp_options\n\u003c/span\u003e\n- \u003cspan pulumi-lang-nodejs=\"`domainNameServers`\" pulumi-lang-dotnet=\"`DomainNameServers`\" pulumi-lang-go=\"`domainNameServers`\" pulumi-lang-python=\"`domain_name_servers`\" pulumi-lang-yaml=\"`domainNameServers`\" pulumi-lang-java=\"`domainNameServers`\"\u003e`domain_name_servers`\u003c/span\u003e: List of Domain Name Server addresses\n- `domain_name_servers.ipv4`: Reference to address configuration\n- `domain_name_servers.ipv6`: Reference to address configuration\n\n###\u003cspan pulumi-lang-nodejs=\" externalSubnets\n\" pulumi-lang-dotnet=\" ExternalSubnets\n\" pulumi-lang-go=\" externalSubnets\n\" pulumi-lang-python=\" external_subnets\n\" pulumi-lang-yaml=\" externalSubnets\n\" pulumi-lang-java=\" externalSubnets\n\"\u003e external_subnets\n\u003c/span\u003e\n- \u003cspan pulumi-lang-nodejs=\"`subnetReference`\" pulumi-lang-dotnet=\"`SubnetReference`\" pulumi-lang-go=\"`subnetReference`\" pulumi-lang-python=\"`subnet_reference`\" pulumi-lang-yaml=\"`subnetReference`\" pulumi-lang-java=\"`subnetReference`\"\u003e`subnet_reference`\u003c/span\u003e: External subnet reference.\n- \u003cspan pulumi-lang-nodejs=\"`externalIps`\" pulumi-lang-dotnet=\"`ExternalIps`\" pulumi-lang-go=\"`externalIps`\" pulumi-lang-python=\"`external_ips`\" pulumi-lang-yaml=\"`externalIps`\" pulumi-lang-java=\"`externalIps`\"\u003e`external_ips`\u003c/span\u003e: List of IP Addresses used for SNAT, if NAT is enabled on the external subnet. If NAT is not enabled, this specifies the IP address of the VPC port connected to the external gateway.\n- \u003cspan pulumi-lang-nodejs=\"`gatewayNodes`\" pulumi-lang-dotnet=\"`GatewayNodes`\" pulumi-lang-go=\"`gatewayNodes`\" pulumi-lang-python=\"`gateway_nodes`\" pulumi-lang-yaml=\"`gatewayNodes`\" pulumi-lang-java=\"`gatewayNodes`\"\u003e`gateway_nodes`\u003c/span\u003e: List of gateway nodes that can be used for external connectivity.\n- \u003cspan pulumi-lang-nodejs=\"`activeGatewayNode`\" pulumi-lang-dotnet=\"`ActiveGatewayNode`\" pulumi-lang-go=\"`activeGatewayNode`\" pulumi-lang-python=\"`active_gateway_node`\" pulumi-lang-yaml=\"`activeGatewayNode`\" pulumi-lang-java=\"`activeGatewayNode`\"\u003e`active_gateway_node`\u003c/span\u003e: Reference of gateway nodes\n- \u003cspan pulumi-lang-nodejs=\"`activeGatewayCount`\" pulumi-lang-dotnet=\"`ActiveGatewayCount`\" pulumi-lang-go=\"`activeGatewayCount`\" pulumi-lang-python=\"`active_gateway_count`\" pulumi-lang-yaml=\"`activeGatewayCount`\" pulumi-lang-java=\"`activeGatewayCount`\"\u003e`active_gateway_count`\u003c/span\u003e: Maximum number of active gateway nodes for the VPC external subnet association.\n\n### snat_ips,\u003cspan pulumi-lang-nodejs=\" externalIps\n\" pulumi-lang-dotnet=\" ExternalIps\n\" pulumi-lang-go=\" externalIps\n\" pulumi-lang-python=\" external_ips\n\" pulumi-lang-yaml=\" externalIps\n\" pulumi-lang-java=\" externalIps\n\"\u003e external_ips\n\u003c/span\u003e\n- \u003cspan pulumi-lang-nodejs=\"`ipv4`\" pulumi-lang-dotnet=\"`Ipv4`\" pulumi-lang-go=\"`ipv4`\" pulumi-lang-python=\"`ipv4`\" pulumi-lang-yaml=\"`ipv4`\" pulumi-lang-java=\"`ipv4`\"\u003e`ipv4`\u003c/span\u003e: Reference to address configuration\n- \u003cspan pulumi-lang-nodejs=\"`ipv6`\" pulumi-lang-dotnet=\"`Ipv6`\" pulumi-lang-go=\"`ipv6`\" pulumi-lang-python=\"`ipv6`\" pulumi-lang-yaml=\"`ipv6`\" pulumi-lang-java=\"`ipv6`\"\u003e`ipv6`\u003c/span\u003e: Reference to address configuration\n\n###\u003cspan pulumi-lang-nodejs=\" externallyRoutablePrefixes\n\" pulumi-lang-dotnet=\" ExternallyRoutablePrefixes\n\" pulumi-lang-go=\" externallyRoutablePrefixes\n\" pulumi-lang-python=\" externally_routable_prefixes\n\" pulumi-lang-yaml=\" externallyRoutablePrefixes\n\" pulumi-lang-java=\" externallyRoutablePrefixes\n\"\u003e externally_routable_prefixes\n\u003c/span\u003e\n- \u003cspan pulumi-lang-nodejs=\"`ipv4`\" pulumi-lang-dotnet=\"`Ipv4`\" pulumi-lang-go=\"`ipv4`\" pulumi-lang-python=\"`ipv4`\" pulumi-lang-yaml=\"`ipv4`\" pulumi-lang-java=\"`ipv4`\"\u003e`ipv4`\u003c/span\u003e: IP V4 Configuration\n- `ipv4.ip`: Reference to address configuration\n- `ipv4.prefix_length`: The prefix length of the network\n\n- \u003cspan pulumi-lang-nodejs=\"`ipv6`\" pulumi-lang-dotnet=\"`Ipv6`\" pulumi-lang-go=\"`ipv6`\" pulumi-lang-python=\"`ipv6`\" pulumi-lang-yaml=\"`ipv6`\" pulumi-lang-java=\"`ipv6`\"\u003e`ipv6`\u003c/span\u003e: IP V6 Configuration\n- `ipv6.ip`: Reference to address configuration\n- `ipv6.prefix_length`: The prefix length of the network\n\n### ipv4, ipv6 (Reference to address configuration)\n\n- \u003cspan pulumi-lang-nodejs=\"`value`\" pulumi-lang-dotnet=\"`Value`\" pulumi-lang-go=\"`value`\" pulumi-lang-python=\"`value`\" pulumi-lang-yaml=\"`value`\" pulumi-lang-java=\"`value`\"\u003e`value`\u003c/span\u003e: value of address\n- \u003cspan pulumi-lang-nodejs=\"`prefixLength`\" pulumi-lang-dotnet=\"`PrefixLength`\" pulumi-lang-go=\"`prefixLength`\" pulumi-lang-python=\"`prefix_length`\" pulumi-lang-yaml=\"`prefixLength`\" pulumi-lang-java=\"`prefixLength`\"\u003e`prefix_length`\u003c/span\u003e: The prefix length of the network to which this host IPv4/IPv6 address belongs.\n\nSee detailed information in [Nutanix List VPC v4](https://developers.nutanix.com/api-reference?namespace=networking\u0026version=v4.0#tag/Vpcs/operation/listVpcs).\n",
      "inputs": {
        "description": "A collection of arguments for invoking getVpcsV2.\n",
        "properties": {
          "filter": {
            "type": "string",
            "description": "A URL query parameter that allows clients to filter a collection of resources. The filter can be applied to the following fields:\n- `extId`\n"
          },
          "limit": {
            "type": "integer",
            "description": "A URL query parameter that specifies the total number of records returned in the result set. Must be a positive integer between 1 and 100. Any number out of this range will lead to a validation error. If the limit is not provided, a default value of 50 records will be returned in the result set.\n"
          },
          "orderBy": {
            "type": "string",
            "description": "A URL query parameter that allows clients to specify the sort criteria for the returned list of objects. Resources can be sorted in ascending order using asc or descending order using desc. If asc or desc are not specified, the resources will be sorted in ascending order by default. The orderby can be applied to the following fields:\n"
          },
          "page": {
            "type": "integer",
            "description": "A URL query parameter that specifies the page number of the result set. It must be a positive integer between 0 and the maximum number of pages that are available for that resource. Any number out of this range might lead to no results.\n"
          },
          "select": {
            "type": "string",
            "description": "A URL query parameter that allows clients to request a specific set of properties for each entity or complex type. Expression specified with the $select must conform to the OData V4.01 URL conventions. The select can be applied to the following fields:\n"
          }
        },
        "type": "object"
      },
      "outputs": {
        "description": "A collection of values returned by getVpcsV2.\n",
        "properties": {
          "filter": {
            "type": "string"
          },
          "id": {
            "description": "The provider-assigned unique ID for this managed resource.",
            "type": "string"
          },
          "limit": {
            "type": "integer"
          },
          "orderBy": {
            "type": "string"
          },
          "page": {
            "type": "integer"
          },
          "select": {
            "type": "string"
          },
          "vpcs": {
            "description": "List of all existing VPCs.\n",
            "items": {
              "$ref": "#/types/nutanix:index%2FgetVpcsV2Vpc:getVpcsV2Vpc"
            },
            "type": "array"
          }
        },
        "required": [
          "id",
          "vpcs"
        ],
        "type": "object"
      }
    },
    "pulumi:providers:nutanix/terraformConfig": {
      "description": "This function returns a Terraform config object with terraform-namecased keys,to be used with the Terraform Module Provider.",
      "inputs": {
        "properties": {
          "__self__": {
            "$ref": "#/resources/pulumi:providers:nutanix"
          }
        },
        "type": "object",
        "required": [
          "__self__"
        ]
      },
      "outputs": {
        "properties": {
          "result": {
            "additionalProperties": {
              "$ref": "pulumi.json#/Any"
            },
            "type": "object"
          }
        },
        "required": [
          "result"
        ],
        "type": "object"
      }
    }
  }
}
