SchedulerX uses cron expressions to schedule recurring jobs, such as scripts or commands, at specific intervals. A cron expression defines exactly when a job runs by specifying values for time fields such as seconds, minutes, hours, and days.
The Professional Edition supports second-level scheduling in cron expressions.
The Basic Edition does not support second-level scheduling. Use
second_delayinstead.
Syntax
A cron expression contains six required fields and one optional field, separated by spaces:
# ┌──────────── second (0-59)
# │ ┌────────── minute (0-59)
# │ │ ┌──────── hour (0-23)
# │ │ │ ┌────── day of month (1-31)
# │ │ │ │ ┌──── month (1-12)
# │ │ │ │ │ ┌── day of week (1-7, SUN-SAT)
# │ │ │ │ │ │ ┌ year (optional)
# │ │ │ │ │ │ │
# * * * * * * *Format: Seconds Minutes Hours Day Month Week [Year]
Fields and allowed values
| Field | Required | Values | Special characters |
|---|---|---|---|
| Seconds | Yes | 0-59 | , - * / |
| Minutes | Yes | 0-59 | , - * / |
| Hours | Yes | 0-23 | , - * / |
| Day | Yes | 1-31 | , - * ? / L W |
| Month | Yes | 1-12 | , - * / |
| Week | Yes | 1-7 or SUN-SAT | , - * ? / L # |
| Year | No | A four-digit year | , - * / |
Special characters
Each special character controls how values are matched within a field.
| Character | Name | Meaning | Example |
|---|---|---|---|
* | All values | Matches every value in the field. | 0 * * * * ? -- every minute |
? | No specific value | Skips the field. Use in Day or Week when the other field is already set. | 0 0 12 ? * WED -- 12:00 on Wednesdays |
- | Range | Matches a contiguous range of values. | 5-15 in Hours -- hours 5 through 15 |
, | List | Matches a set of specific values. | 10,14,16 in Hours -- 10:00, 14:00, and 16:00 |
/ | Increment | Matches values at a fixed interval from a starting point. | */5 in Minutes -- every 5 minutes |
L | Last | In Day: the last day of the month. In Week: the last occurrence of a weekday in the month. | 0 0 23 L * ? -- 23:00 on the last day of each month |
W | Nearest weekday | The nearest weekday (Mon-Fri) to the specified day of the month. | 15W -- the nearest weekday to the 15th |
# | Nth occurrence | The Nth occurrence of a weekday within the month. | 6#3 -- the third Friday of the month |
Value types
You can combine these characters to express five types of scheduling values:
| Value type | Syntax | Example | Result |
|---|---|---|---|
| Specific value | A single number | 0 30 9 * * ? | At 09:30 every day |
| All values | * | 0 * * * * ? | Every minute |
| Range | start-end | 0 0 9-17 * * ? | Every hour from 09:00 to 17:00 |
| List | val1,val2,... | 0 0 10,14,16 * * ? | At 10:00, 14:00, and 16:00 |
| Interval | start/step or */step | 0 */5 * * * ? | Every 5 minutes |
Common expressions
| Cron expression | Schedule |
|---|---|
0 */1 * * * ? | Every minute |
0 0/3 * * * ? | Every 3 minutes |
0 0/5 14 * * ? | Every 5 minutes, 14:00 to 14:55 |
0 0/5 14,18 * * ? | Every 5 minutes, 14:00 to 14:55 and 18:00 to 18:55 |
0 0/30 9-17 * * ? | Every 30 minutes, 09:00 to 17:00 |
0 0-5 14 * * ? | Every minute, 14:00 to 14:05 |
0 0 5-15 * * ? | Every hour, 05:00 to 15:00 |
0 0 10,14,16 * * ? | At 10:00, 14:00, and 16:00 |
0 0 12 ? * WED | At 12:00 every Wednesday |
0 0 17 ? * TUES,THUR,SAT | At 17:00 every Tuesday, Thursday, and Saturday |
0 15 10 ? * MON-FRI | At 10:15, Monday through Friday |
0 10,44 14 ? 3 WED | At 14:10 and 14:44 every Wednesday in March |
0 0 23 L * ? | At 23:00 on the last day of each month |
0 15 10 L * ? | At 10:15 on the last day of each month |
0 15 10 ? * 6L | At 10:15 on the last Friday of each month |
0 15 10 ? * 6#3 | At 10:15 on the third Friday of each month |
0 15 10 * * ? 2005 | At 10:15 every day in 2005 |
0 15 10 ? * 6L 2002-2005 | At 10:15 on the last Friday of each month, 2002 to 2005 |
Configure a cron-based scheduled job
To schedule a job with a cron expression, configure the timing settings when you create a job. For the full job creation procedure, see Create a job.
Set the cron expression
In the Create task panel, go to the Timing configuration step. For details, see Create a job.
Select cron from the Time type drop-down list.

Enter a cron expression. To generate an expression with the built-in tool instead of writing one manually: If the build tool cannot generate the expression you need, write it manually. See Common expressions and Special characters for reference.
Click Use the build tool.
Select a time period and a time point from the drop-down lists, then click Confirm. For example, set the schedule to trigger the job at 03:00 every day.

Click Verify cron to preview the next five trigger times for the expression.

Click Next Step.
Configure advanced settings (optional)
In the Advanced Configuration section, configure the following optional parameters:
| Parameter | Description | Default |
|---|---|---|
| Time offset | The offset between the timestamp of the data to be processed and the time when the job triggers. Retrieve the offset value from the context when SchedulerX runs a job. | None |
| Time zone | The time zone for the cron schedule. Select a country or region time zone, or a GMT offset. The schedule triggers at the specified time in the selected time zone. | None |
| Calendar | A custom calendar that controls which days the job runs. For example, import a calendar to run jobs only on business days. | Daily scheduling |
| Effective time | The date and time when the schedule takes effect. | Effective immediately |