Scheduler
Jeriko does not have separate /scheduler routes. All scheduling is handled by the Triggers API using triggers with type: "cron". This page shows the common scheduling workflows using trigger endpoints.
Create a Scheduled Task
Create a cron trigger via POST /triggers with type: "cron" and a cron expression in the config.
POST
/triggersAuthenticatedCreate a cron trigger to schedule a recurring task.
| Parameter | Type | Required | Description |
|---|---|---|---|
type | string | Yes | Must be "cron" |
config | object | Yes | { expression: "cron string", timezone?: "IANA timezone" } |
action | object | Yes | { type: "shell"|"agent", command?, prompt?, notify? } |
label | string | No | Human-readable name for the task |
enabled | boolean | No | Start enabled (default: true) |
max_runs | number | No | Auto-disable after N fires (0 = unlimited) |
curl -X POST http://127.0.0.1:7741/triggers \
-H "Authorization: Bearer $TOKEN" \
-H "Content-Type: application/json" \
-d '{
"type": "cron",
"config": { "expression": "0 2 * * *" },
"action": { "type": "shell", "command": "jeriko backup create" },
"label": "Daily backup"
}'201Response
{
"ok": true,
"data": {
"id": "a1b2c3d4",
"type": "cron",
"enabled": true,
"label": "Weekly summary",
"run_count": 0,
"created_at": "2026-03-03T12:00:00Z"
}
}List Scheduled Tasks
Filter triggers by type=cron to list only scheduled tasks.
GET
/triggers?type=cronAuthenticatedList all cron triggers (scheduled tasks).
curl "http://127.0.0.1:7741/triggers?type=cron" \
-H "Authorization: Bearer $TOKEN"200Response
{
"ok": true,
"data": [
{
"id": "a1b2c3d4",
"type": "cron",
"label": "Weekly summary",
"config": {
"expression": "0 9 * * MON",
"timezone": "America/New_York"
},
"enabled": true,
"run_count": 12,
"last_fired": "2026-02-24T14:00:00Z"
}
]
}Enable / Disable
Toggle a scheduled task on or off without deleting it.
POST
/triggers/:id/toggleAuthenticatedToggle a cron trigger between enabled and disabled.
curl -X POST http://127.0.0.1:7741/triggers/a1b2c3d4/toggle \
-H "Authorization: Bearer $TOKEN"Remove a Scheduled Task
DELETE
/triggers/:idAuthenticatedPermanently delete a cron trigger.
curl -X DELETE http://127.0.0.1:7741/triggers/a1b2c3d4 \
-H "Authorization: Bearer $TOKEN"200Response
{
"ok": true,
"data": {
"id": "a1b2c3d4",
"status": "deleted"
}
}Cron Expression Reference
| Expression | Schedule |
|---|---|
* * * * * | Every minute |
0 * * * * | Every hour |
0 9 * * * | Daily at 9:00 AM |
0 9 * * MON | Every Monday at 9:00 AM |
0 0 1 * * | First day of every month |
For the full trigger API including webhook, file, HTTP, and email triggers, see the Triggers documentation.