---
title: "List existing scheduled jobs for the signed-in user with status, counters, and job-manager alarm state for debugging ..."
method: GET
path: "/v1/jobs"
tags: ["jobs"]
---

# List existing scheduled jobs for the signed-in user with status, counters, and job-manager alarm state for debugging ...

`GET /v1/jobs`

## Request

- Base URL: `https://api.kody.codes`
- URL: `https://api.kody.codes/v1/jobs`
- Auth: HTTP bearer

List existing scheduled jobs for the signed-in user with status, counters, and job-manager alarm state for debugging scheduling issues. Recurring schedules belong on a package (`kody.jobs`); deferred one-shots use `workflows.create`. recent_runs is empty here for efficiency; use jobGet for one job's recent runs or runList/runSummary for cross-job failure history.

Org permission: `job:read`.

## Response `200`

Success.

- object
  - `jobs` object[], required
    - `id` string, required
    - `name` string, required
    - `source_id` string, required
    - `published_commit` string, nullable, required
    - `storage_id` string, required
    - `params` object, nullable, required
    - `schedule` union, required
      - object
        - `type` 'once', required
        - `run_at` string, required: UTC timestamp for the one-off run, for example 2026-04-20T18:30:00Z.
      - object
        - `type` 'interval', required
        - `every` string, required: Recurring interval such as 15m, 1h, or 1d using ms, s, m, h, or d units.
      - object
        - `type` 'cron', required
        - `expression` string, required: Standard 5-field cron expression: minute hour day-of-month month day-of-week.
    - `schedule_summary` string, required
    - `timezone` string, required
    - `enabled` boolean, required
    - `kill_switch_enabled` boolean, required
    - `expires_at` string, nullable, required: UTC ISO expiry timestamp, or null when the job never expires.
    - `expired` boolean, required: True when expires_at is set and now is at or past that timestamp.
    - `created_at` string, required
    - `updated_at` string, required
    - `next_run_at` string, required
    - `due_now` boolean, required
    - `last_run_at` string, nullable, required
    - `last_run_status` 'success' | 'error', nullable, required
    - `last_run_error` string, nullable, required
    - `last_duration_ms` integer, nullable, required
    - `run_count` integer, required
    - `success_count` integer, required
    - `error_count` integer, required
    - `recent_runs` object[], required
      - `id` string: Run record id for drill-down with runGet when available.
      - `started_at` string, required
      - `finished_at` string, required
      - `status` 'success' | 'error', required
      - `duration_ms` integer, required
      - `error` string, nullable, required
    - `enablement_hint` string, nullable, required: When the job is enabled but has no on enablement (or only paused ones), an agent-directed message that includes the exact enablementEnable call. Null when the job is off or already has an on enablement.
  - `alarm` object, required
    - `binding_available` boolean, required
    - `status` 'missing_binding' | 'idle' | 'armed' | 'out_of_sync', required
    - `stored_user_id` string, nullable, required
    - `alarm_scheduled_for` string, nullable, required
    - `next_runnable_job_id` string, nullable, required
    - `next_runnable_run_at` string, nullable, required
    - `alarm_in_sync` boolean, nullable, required

## Other responses

- `400`: Error envelope `{ "error": { "code", "message", "details"? } }`.
- `401`: Error envelope `{ "error": { "code", "message", "details"? } }`.
- `403`: Error envelope `{ "error": { "code", "message", "details"? } }`.
- `404`: Error envelope `{ "error": { "code", "message", "details"? } }`.
- `409`: Error envelope `{ "error": { "code", "message", "details"? } }`.
- `413`: Error envelope `{ "error": { "code", "message", "details"? } }`.
- `429`: Too many requests (edge IP/token limit) or an entitlement / plan-cap limit. Wait at least `Retry-After` seconds before retrying.
- `500`: Error envelope `{ "error": { "code", "message", "details"? } }`.
- `503`: Error envelope `{ "error": { "code", "message", "details"? } }`.
- `default`: Error envelope `{ "error": { "code", "message", "details"? } }`.

---

[API](https://skmtc.dev/kody/apis/kody-api.md) · [All operations](https://skmtc.dev/kody/apis/kody-api/llms.txt) · [OpenAPI document](https://skmtc.dev/kody/apis/kody-api/revisions/a020ecedb82b?raw)
