← All use cases

See every upcoming run

Cron and recurrence rules are easy to write and hard to check: does “the 2nd Tuesday” mean what you think, and what happens on the night the clocks change? An orchestrator has the same question with higher stakes, because the trigger and the run must agree on the date. dre schedule ls answers both: a table for people, and versioned JSON for whatever runs your jobs.

Recorded from a real run: the next firings of every schedule that runs a report, then one occurrence as JSON.

Recorded from a real run: the next firings of every schedule that runs a report, then one occurrence as JSON.

terminal
# The next firing of every schedule that runs client_statement
dre schedule ls -s client_statement --limit 1

# Every firing in the next five weeks, as JSON for an orchestrator
dre schedule ls --output json
one occurrence (JSON)
{
  "key": "close_client_a/2026-10-31T19:00:00Z",
  "fires_at": "2026-10-31T19:00:00Z",
  "fires_at_local": "2026-11-01T06:00:00+11:00",
  "run_date": "2026-11-01",
  "bindings": [{"report": "client_statement", "set": "client_a", "binding": "client_a"}],
  "invocation": {
    "argv": ["dre", "run", "--schedule", "close_client_a"],
    "env": {"DRE_RUN_AT": "2026-10-31T19:00:00Z", "DRE_RUN_DATE": "2026-11-01"}
  }
}