{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "$id": "https://raw.githubusercontent.com/api-evangelist/vultr/main/json-schema/vultr-vke-cluster-schema.json",
  "title": "vke-cluster",
  "description": "VKE Cluster",
  "x-generated": "2026-10-13",
  "x-method": "derived",
  "x-generator": "derive-json-schema.py",
  "x-source": "openapi/_original/vultr-schema-openapi.json#/components/schemas/vke-cluster",
  "type": "object",
  "x-tags": [
    "kubernetes"
  ],
  "properties": {
    "id": {
      "type": "string",
      "description": "ID for the VKE cluster"
    },
    "label": {
      "type": "string",
      "description": "Label for your cluster"
    },
    "date_created": {
      "type": "string",
      "description": "Date of creation"
    },
    "cluster_subnet": {
      "type": "string",
      "description": "IP range that your pods will run on in this cluster"
    },
    "service_subnet": {
      "type": "string",
      "description": "IP range that services will run on this cluster"
    },
    "ip": {
      "type": "string",
      "description": "IP for your Kubernetes Clusters Control Plane"
    },
    "endpoint": {
      "type": "string",
      "description": "Domain for your Kubernetes Clusters Control Plane"
    },
    "version": {
      "type": "string",
      "description": "Version of Kubernetes this cluster is running on"
    },
    "region": {
      "type": "string",
      "description": "Region this Kubernetes Cluster is running in"
    },
    "status": {
      "type": "string",
      "description": "Status for VKE cluster"
    },
    "node_pools": {
      "type": "array",
      "description": "NodePools in this cluster",
      "items": {
        "$ref": "#/$defs/nodepools"
      }
    }
  },
  "$defs": {
    "nodepool-instances": {
      "title": "nodepool-instances",
      "type": "object",
      "description": "Instance that belongs to a nodepool",
      "properties": {
        "id": {
          "type": "string",
          "description": "ID of the nodepool instance"
        },
        "label": {
          "type": "string",
          "description": "Label of the nodepool instance"
        },
        "date_created": {
          "type": "string",
          "description": "Date of creation"
        }
      }
    },
    "nodepools": {
      "title": "nodepools",
      "type": "object",
      "description": "NodePool",
      "x-tags": [
        "kubernetes"
      ],
      "properties": {
        "id": {
          "type": "string",
          "description": "The [NodePool ID](#operation/get-nodepools)."
        },
        "date_created": {
          "type": "string",
          "description": "Date of creation"
        },
        "label": {
          "type": "string",
          "description": "Label for nodepool"
        },
        "tag": {
          "type": "string",
          "description": "Tag for node pool"
        },
        "plan": {
          "type": "string",
          "description": "Plan used for nodepool"
        },
        "status": {
          "type": "string",
          "description": "Status for nodepool"
        },
        "node_quantity": {
          "type": "integer",
          "description": "Number of nodes in nodepool"
        },
        "nodes": {
          "type": "array",
          "items": {
            "$ref": "#/$defs/nodepool-instances"
          }
        },
        "date_updated": {
          "type": "string",
          "description": "Date the nodepool was updated."
        }
      }
    }
  }
}