List jobs

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.

GET /v1/compute/fleet/jobs

Addresshttps://api.hanzo.ai/v1/compute/fleet/jobs
MethodGET
OperationlistFleetJobs
AuthAuthorization: Bearer $HANZO_API_KEY

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.

A job whose worker died — STARTED with an elapsed lease and not yet reclaimed — reads "stalled", not "running". Fail-soft: an unavailable tasks engine yields an empty queue rather than an error.

Request

2 fields.

FieldInTypeRequiredDescription
gpuquerystring—GPU selects one node's lane: jobs TARGETED at it (gpu:<node>) or CLAIMED by it.
statusquerystring—Status selects one lifecycle state: queued, running, stalled, completed, failed or canceled.

Response

StatusBodyMeaning
200compute.jobListok
defaultproblem-detailsrefused

200 body — 14 fields.

FieldInTypeAlwaysDescription
jobsbodycompute.gpuJob[]—Jobs is the queue, most-recent-first.
jobs[].attemptbodyinteger (int64)—Attempt is which try this is, counting from 1.
jobs[].closeTimebodystring—CloseTime is when the job reached a terminal state, RFC 3339.
jobs[].failureCausebodystring—FailureCause is the engine's reason the job failed.
jobs[].gpubodystring—GPU is the node this job is aimed AT — the lane "gpu:<node>" it was submitted on.
jobs[].idbodystring—ID is the job's id, and the id the cancel route takes.
jobs[].labelbodystring—Label is the cheap human name for the render — the output filename prefix lifted out of the submitted graph.
jobs[].lastHeartbeatbodystring—LastHeartbeat is the claiming worker's most recent beat on this job, RFC 3339 — the evidence a long render is still alive rather than wedged.
jobs[].leaseExpirybodystring—LeaseExpiry is when the worker's claim lapses, RFC 3339.
jobs[].runIdbodystring—RunID identifies this execution of the job.
jobs[].startTimebodystring—StartTime is when a worker began executing the job, RFC 3339.
jobs[].statusbodystring—Status is the job's lifecycle state: queued, running, completed, failed or canceled — plus "stalled", which is this surface's own reading of a job that is STARTED whose worker died: its lease has elapsed and no reaper has taken it back yet.
jobs[].typebodystring—Type is the work being done ("studio.render") — what the claiming worker has to be able to execute.
jobs[].workerbodystring—Worker is the node that actually CLAIMED the job, which is not always the one it was aimed at: a shared-lane job has no GPU but does have a Worker once picked up.

Failure carries the platform error shape — see Errors.

Examples

hanzo compute fleet jobs list
import { Configuration, ComputeApi } from 'hanzoai';

const api = new ComputeApi(new Configuration({ accessToken: process.env.HANZO_API_KEY }));
const { data } = await api.listFleetJobs();
from hanzoai.cloud import ApiClient, Configuration
from hanzoai.cloud.api import ComputeApi

client = ApiClient(Configuration(access_token=os.environ["HANZO_API_KEY"]))
result = ComputeApi(client).list_fleet_jobs()
cfg := hanzoai.NewConfiguration()
cfg.AddDefaultHeader("Authorization", "Bearer "+os.Getenv("HANZO_API_KEY"))
client := hanzoai.NewAPIClient(cfg)

resp, _, err := client.ComputeAPI.ListFleetJobs(context.Background()).Execute()
if err != nil {
	return err
}
use hanzo_client::apis::{configuration::Configuration, compute_api};

let mut cfg = Configuration::new();
cfg.bearer_access_token = std::env::var("HANZO_API_KEY").ok();

let result = compute_api::list_fleet_jobs(&cfg, Default::default()).await?;
import ai.hanzo.cloud.ApiClient;
import ai.hanzo.cloud.api.ComputeApi;

ApiClient client = new ApiClient();
client.setBearerToken(System.getenv("HANZO_API_KEY"));

var result = new ComputeApi(client).listFleetJobs();
curl https://api.hanzo.ai/v1/compute/fleet/jobs \
  -H "Authorization: Bearer $HANZO_API_KEY"

Tool compute, op listFleetJobs — POST the JSON-RPC envelope to https://api.hanzo.ai/v1/mcp.

curl -X POST https://api.hanzo.ai/v1/mcp \
  -H "Authorization: Bearer $HANZO_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
       "jsonrpc": "2.0",
       "id": 1,
       "method": "tools/call",
       "params": {
         "name": "compute",
         "arguments": {
           "op": "listFleetJobs",
           "input": {}
         }
       }
     }'

Compute API · All Hanzo APIs · Interactive reference

Was this page useful?