Cronjobs API (/1/cronjobs)
Enables scheduled task executions. Schedules are evaluated strictly in UTC.
POST /1/cronjobs
- Description: Creates a scheduled cronjob. Returns
409if a cronjob with the same name already exists — updates go throughPATCH /1/cronjobs/{name}.job_definitionmust not contain a fixedname; each trigger spawns a job named<cronjob-name>-<UTC timestamp>. - Roles:
admin,developer.
Request body:
{
"name": "daily-dataset-vacuum",
"cron_spec": "0 2 * * *",
"job_definition": {
"image": "postgres:18-alpine",
"command": ["psql"],
"args": ["-c", "VACUUM ANALYZE;"],
"resources": { "cpu": 1, "memory": "2Gi" },
"labels": { "service": "database-maintenance" },
"tags": ["maintenance", "vacuum"]
}
}
GET /1/cronjobs
- Description: Lists registered cronjobs for the project.
- Roles:
admin,developer,viewer.
GET /1/cronjobs/{name}
- Description: Retrieves a specific cronjob. Accepts either UUID
idor uniquename. - Roles:
admin,developer,viewer.
PATCH /1/cronjobs/{name}
- Description: Updates cronjob parameters (e.g. toggling
is_activeor modifying schedule) without recreating the resource. Accepts UUIDidor uniquename. - Roles:
admin,developer.
DELETE /1/cronjobs/{name}
- Description: Deletes a scheduled cronjob. Accepts UUID
idor uniquename. - Roles:
admin,developer.