List cron jobs
GEThttps://api.instacloud.com/projects/{projectId}/cron-jobs
Token scope: account · org · project — read-only tokens allowed.
List the project’s cron jobs, optionally for one branch.
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
branch | query | string | no | branch name; omitted lists every branch |
projectId | path | string | yes |
Responses
200
Default Response
| Field | Type | Required | Description |
|---|---|---|---|
jobs | object[] | yes | |
jobs.id | string | yes | |
jobs.project_id | string | yes | |
jobs.branch_id | string | yes | |
jobs.branch | string | yes | branch name, joined for readability — the id is the identity |
jobs.name | string | yes | |
jobs.expression | string | yes | |
jobs.timezone | string | yes | UTC in v1, so preview and the materializer can never disagree |
jobs.enabled | boolean | yes | |
jobs.revision | integer | yes | the If-Match guard for PATCH |
jobs.next_run_at | string | null | yes | |
jobs.target | object | yes | Where the job sends its request. An internal target names the SERVICE, never a URL: the worker resolves the live route at send time, so a redeploy or a region move cannot leave a job firing at a dead host. |
jobs.request | object | yes | The non-secret description of the job’s request. |
jobs.request.method | "GET" | "POST" | yes | |
jobs.request.headerNames | string[] | yes | names only, literal and secret-backed alike — never values |
jobs.request.secretRefs | object | yes | header name → secret NAME for the secret-backed headers. Names are not credentials, so they are returned: an edit can re-send these as they are, where a literal header’s value must be supplied again. |
jobs.request_timeout_ms | integer | yes | |
jobs.retry_policy | object | yes | |
jobs.retry_policy.platformMaxRetries | integer | no | retries for failures where nothing was sent (wake/transport). Default 2. |
jobs.retry_policy.applicationMaxRetries | integer | no | retries for a non-2xx answer. Default 0 — a broken endpoint should not be hammered. |
jobs.retry_policy.retryableStatuses | integer[] | no | e.g. [429, 503]; empty means none |
jobs.retry_policy.maxRunAgeMs | integer | no | give up on the run once it is this old, whatever the retry budget says |
jobs.created_at | string | yes | |
jobs.updated_at | string | yes |
404
Default Response
| Field | Type | Required | Description |
|---|---|---|---|
error | string | yes |