Skip to main content

Overview

Schedule endpoints allow you to create and manage automated backup schedules using cron expressions. Schedules can target single or multiple repositories.

List Scheduled Jobs

Get all scheduled backup jobs. Endpoint: GET /api/schedule/ Example Request:
Response:

Get Scheduled Job

Get details for a specific scheduled job. Endpoint: GET /api/schedule/{job_id} Example Request:
Response:

Create Scheduled Job

Create a new scheduled backup job. Endpoint: POST /api/schedule/ Admin Only: Yes
string
required
Unique name for the scheduled job
string
required
Cron expression for schedule (e.g., "0 2 * * *" for daily at 2 AM)
array
List of repository IDs to back up (for multi-repo schedules)
integer
Single repository ID (alternative to repository_ids)
boolean
default:true
Whether the schedule is enabled
string
Optional description
string
Template for archive names. Placeholders: {job_name}, {repo_name}, {now}, {date}, {time}, {timestamp}
boolean
default:false
Run per-repository pre/post scripts
integer
Schedule-level pre-backup script ID
integer
Schedule-level post-backup script ID
boolean
default:false
Run prune after backup
boolean
default:false
Run compact after prune
integer
default:0
Number of hourly backups to keep
integer
default:7
Number of daily backups to keep
integer
default:4
Number of weekly backups to keep
integer
default:6
Number of monthly backups to keep
integer
default:1
Number of yearly backups to keep
Example Request:
Response:

Update Scheduled Job

Update an existing scheduled job. Endpoint: PUT /api/schedule/{job_id} Admin Only: Yes Example Request:

Delete Scheduled Job

Delete a scheduled job. Endpoint: DELETE /api/schedule/{job_id} Admin Only: Yes Example Request:

Toggle Schedule

Enable or disable a scheduled job. Endpoint: POST /api/schedule/{job_id}/toggle Admin Only: Yes Example Request:
Response:

Run Schedule Now

Trigger a scheduled job immediately. Endpoint: POST /api/schedule/{job_id}/run-now Admin Only: Yes Example Request:
Response:

Duplicate Schedule

Create a copy of an existing schedule. Endpoint: POST /api/schedule/{job_id}/duplicate Admin Only: Yes Example Request:
Response:

Get Cron Presets

Get common cron expression presets. Endpoint: GET /api/schedule/cron-presets Example Request:
Response:

Validate Cron Expression

Validate a cron expression and preview upcoming runs. Endpoint: POST /api/schedule/validate-cron
string
default:"*"
Minute field
string
default:"*"
Hour field
string
default:"*"
Day of month field
string
default:"*"
Month field
string
default:"*"
Day of week field
Example Request:
Response:

Get Upcoming Jobs

Get list of upcoming scheduled executions. Endpoint: GET /api/schedule/upcoming-jobs
integer
default:24
Number of hours to look ahead
Example Request:
Response: