Maple
Docs / Using Maple

Scheduled jobs

Jobs can be enqueued on a schedule written as a cron expression. Every worker knows the schedules, but only one of them enqueues each run: they agree through an advisory lock in the database.

[[schedules]]
kind = "send_digest"
cron = "0 7 * * *"

[[schedules]]
kind = "cleanup_sessions"
cron = "*/15 * * * *"
queue = "maintenance"

Times are in UTC. A run missed because no worker was up is not made up later; the next one is enqueued as usual.

One-off delays

To run a single job later, give it a time when you enqueue it:

$ maple enqueue send_reminder '{"user": 42}' --at "2026-11-14 09:00"