{"name":"compute","stage":"ga","description":"Package compute is the compute you rent from Hanzo: machines, GPUs and clusters — launch one, resize it, tear it down.","operations":[{"operationId":"listClusters","method":"GET","href":"/v1/compute/clusters","summary":"Returns the caller org's clusters from both sources: the managed clusters projected from Visor's node pools, and the BYO clusters attached to the caller's project."},{"operationId":"attachCluster","method":"POST","href":"/v1/compute/clusters","summary":"Attaches a BYO cluster to the caller's org — the kubeconfig is validated, KMS-sealed and added to the fleet — and answers 201 with the cluster as it now appears on GET /v1/compute/clusters."},{"operationId":"createNodePool","method":"POST","href":"/v1/compute/clusters/{clusterId}/pools","summary":"Adds a node pool to one of the caller org's clusters and answers 201 with the created pool."},{"operationId":"deleteNodePool","method":"DELETE","href":"/v1/compute/clusters/{clusterId}/pools/{poolId}","summary":"Removes a node pool from one of the caller org's clusters."},{"operationId":"scaleNodePool","method":"POST","href":"/v1/compute/clusters/{clusterId}/pools/{poolId}/scale","summary":"Resizes a node pool to an absolute node count and returns the pool as Visor reports it after the change."},{"operationId":"detachCluster","method":"DELETE","href":"/v1/compute/clusters/{id}","summary":"Removes a BYO cluster from the caller org's fleet."},{"operationId":"listFleet","method":"GET","href":"/v1/compute/fleet","summary":"Returns every compute unit the caller's org has, from every source, each carrying its latest utilization: agent run-targets, the BYO machines that dialed in, attached BYO clusters and Visor-provisioned machines."},{"operationId":"listFleetJobs","method":"GET","href":"/v1/compute/fleet/jobs","summary":"Returns the caller org's gpu-jobs render queue, each row tagged with the GPU it targets (empty = the shared any-GPU lane) and the node claiming it, optionally narrowed to one GPU's queue and/or one status."},{"operationId":"cancelFleetJob","method":"POST","href":"/v1/compute/fleet/jobs/{id}/cancel","summary":"Cancels a queued or running render in the caller's org."},{"operationId":"listFleetSamples","method":"GET","href":"/v1/compute/fleet/samples","summary":"Returns the caller org's utilization series, oldest first."},{"operationId":"recordFleetSample","method":"POST","href":"/v1/compute/fleet/samples","summary":"Records a BYO worker's live GPU utilization into the SAME series the fleet board overlays."},{"operationId":"listFleetWorkers","method":"GET","href":"/v1/compute/fleet/workers","summary":"Returns the caller org's BYO machines — the ones that dialed in via `hanzo link` — with everything each host reported about itself."},{"operationId":"listGpus","method":"GET","href":"/v1/compute/gpus","summary":"Returns one row per physical accelerator the caller's org has, derived from its real GPU machines (the size slug says how many cards a node holds) and from the accelerators BYO workers report through nvidia-smi."},{"operationId":"listGpuAlerts","method":"GET","href":"/v1/compute/gpus/alerts","summary":"Is an HONEST empty surface: Visor exposes no GPU alert inventory, so this returns [] rather than fabricating alerts."},{"operationId":"listKubernetesClusters","method":"GET","href":"/v1/compute/k8s/clusters","summary":"Lists the org's DOKS clusters (Visor, house account) folded with the org's BYO clusters — ONE fleet cluster view under the unified k8s noun."},{"operationId":"createKubernetesCluster","method":"POST","href":"/v1/compute/k8s/clusters","summary":"Provisions a DOKS cluster for the caller's org and answers 201."},{"operationId":"deleteKubernetesCluster","method":"DELETE","href":"/v1/compute/k8s/clusters/{id}","summary":"Destroys a DOKS cluster by id and answers 204."},{"operationId":"getKubernetesCluster","method":"GET","href":"/v1/compute/k8s/clusters/{id}","summary":"Returns one cluster's detail: node pools + worker nodes."},{"operationId":"listKubernetesNodes","method":"GET","href":"/v1/compute/k8s/nodes","summary":"Returns every DOKS worker node in the org's clusters as a machine — the SAME set the fleet folds in (managedMachines), exposed directly under the k8s noun."},{"operationId":"listMachines","method":"GET","href":"/v1/compute/machines","summary":"Returns every machine the caller's org has — Visor's registry, the live DigitalOcean droplets and the DOKS worker nodes (deduped into one union), plus the BYO machines that dialed in via `hanzo link` (provider \"byo\")."},{"operationId":"post_compute_machines","method":"POST","href":"/v1/compute/machines","summary":"Launch a metered machine for your org, or price one first with dryRun"},{"operationId":"listMachineAgents","method":"GET","href":"/v1/compute/machines/agents","summary":"Returns every agent↔machine binding in the caller's org — which machines are running which cloud Agent, with vm's own reconciled status."},{"operationId":"deleteMachine","method":"DELETE","href":"/v1/compute/machines/{id}","summary":"Terminates one of the caller org's machines."},{"operationId":"getMachine","method":"GET","href":"/v1/compute/machines/{id}","summary":"Returns one of the caller org's machines by its org-scoped name."},{"operationId":"unbindMachineAgent","method":"DELETE","href":"/v1/compute/machines/{id}/agent","summary":"Detaches the agent runtime from one of the caller org's machines."},{"operationId":"getMachineAgent","method":"GET","href":"/v1/compute/machines/{id}/agent","summary":"Returns the agent binding of one of the caller org's machines, or 404 when the machine runs no bot runtime."},{"operationId":"bindMachineAgent","method":"PUT","href":"/v1/compute/machines/{id}/agent","summary":"Binds a cloud Agent to one of the caller org's machines: the machine is recorded as running that Agent's @hanzo/bot runtime."},{"operationId":"post_compute_machines_by_id_by_action","method":"POST","href":"/v1/compute/machines/{id}/{action}","summary":"Message a bot, or stop it, by naming the action in the path"},{"operationId":"get_compute_regions","method":"GET","href":"/v1/compute/regions","summary":"Lists the regions a machine can be launched in."},{"operationId":"get_compute_sizes","method":"GET","href":"/v1/compute/sizes","summary":"Lists the machine sizes available to launch, with their specifications."}],"_links":{"describedby":{"href":"/v1/openapi.json?capability=compute"},"self":{"href":"/v1/compute"},"up":{"href":"/v1"}}}