list_jobs
List this account's jobs, newest first (summaries without the result blob).
Args: limit (1-200, default 50), offset (>=0), api_key. Returns {jobs:[{job_id,
status, stage, progress_pct, created_at, started_at, finished_at}], limit,
offset, total}. Errors: unauthorized, rate_limited.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| limit | No | Max jobs to return, 1-200. Above the ceiling is an invalid_request, never a silent truncation. | |
| offset | No | Number of rows to skip for paging, 0-9223372036854775807. Page with offset += the limit you actually requested; `total` in the response is the unpaged count. The ceiling is SQLite's largest bindable integer: above it the read could only ever have been a 500, so it is a typed invalid_request instead. | |
| api_key | No | API key for this call. Omit to fall back to the Authorization: Bearer / X-API-Key request header (streamable-HTTP only), then the VHGENGINE_API_KEY env var (the stdio default). No key resolvable -> unauthorized. |
Output Schema
| Name | Required | Description | Default |
|---|---|---|---|
| jobs | No | Summaries: {job_id, status, stage, progress_pct, created_at, started_at, finished_at}. Fetch a result with get_job. | |
| limit | No | Page size actually applied. | |
| total | No | Jobs matching ignoring paging. | |
| offset | No | Offset this page started at. |