Pods API
Shipped today:
GET /v1/pods (list), POST /v1/pods/{id}/start, POST /v1/pods/{id}/stop. Lab cost summary lives at GET /v1/costs. Per-pod sub-routes documented below (GET /v1/pods/{id}, /restart, /ssh, /terminate, /pods/costs) are planned, not yet live. Use the web app’s Pods view for SSH and termination today.Pod Status
Create a Pod
Provision a new GPU pod.Lab this pod belongs to.
GPU type:
H200, H100, A100.Number of GPUs. Multi-GPU pods available for H100 and A100.
Maximum runtime in hours. Pod auto-terminates after this limit. Omit for no limit (controlled by budget).
Docker image for the pod environment.
Environment variables to set on the pod.
Persistent volume size in GB.
List Pods
Lab ID.
Filter by status:
creating, running, stopped, terminated.Get Pod Status
Detailed status including GPU utilization, memory, and idle time.SSH Configuration
Once a pod is running, SSH credentials are available in the pod details.Stop a Pod
Stop a running pod. The persistent volume is preserved. The pod can be restarted later.Restart a Pod
Restart a stopped pod with the same configuration.Terminate a Pod
Permanently terminate a pod. The persistent volume is retained for 7 days, then deleted.GPU Types and Pricing
Prices are approximate and depend on RunPod availability. Actual costs are tracked in the
cost_tracking table and visible via the cost endpoints.Cost Tracking
Get Current Month Costs
Idle Detection
Hubify monitors GPU utilization and alerts you when pods are sitting idle. This is accessible through the pod status endpoint (theidleMinutes field) and triggers notifications when a configurable threshold is exceeded.
An idle GPU is a violation of the Hubify Labs philosophy. The system will suggest queued experiments to deploy on idle pods, and auto-deploy if you have auto-schedule enabled.
Configure Idle Threshold
PATCH /api/v1/labs/{slug}/settings is planned — not yet shipped. Configure idle thresholds via Settings in the web app. The auto-stop cron (shipped in v1.3.1) uses a default 6-hour threshold.