Skip to main content
The scheduler provides a fluent API for defining when your scheduled tasks should run. You can use predefined frequency methods or specify a custom cron expression.

Cron expressions

For maximum flexibility, use the cron() method to specify a custom cron expression:
The cron expression format follows the extended syntax with seconds:

Minute-based frequencies

Schedule tasks to run at minute intervals:
You can also use the everyMinutes() method with a custom interval:

Second-based frequencies

For more frequent execution, schedule tasks at second intervals:
Use the everySeconds() method for custom intervals:

Hourly frequencies

Schedule tasks to run every hour or at specific intervals:

Running at specific minutes

Use hourlyAt() to run a task every hour at a specific minute:

Odd hours

Schedule tasks to run during odd hours:

Daily frequencies

Schedule tasks to run daily:

Weekdays and weekends

Restrict tasks to weekdays or weekends:

Specific days

Schedule tasks to run on specific days of the week:

Weekly frequencies

Schedule tasks to run weekly:
The weeklyOn() method accepts a day of the week (0 = Sunday, 6 = Saturday) and an optional time.

Monthly frequencies

Schedule tasks to run monthly:

Quarterly and yearly frequencies

Schedule tasks to run quarterly or yearly:

Timezone configuration

By default, scheduled tasks run in your server’s timezone. Use the timezone() method to specify a different timezone:
The timezone should be a valid IANA timezone identifier.

Frequency reference