Skip to main content
Deno.cron - Deno documentation
function Deno.cron
Unstable
cron(
name: string,
schedule: string | CronSchedule,
handler: () => Promise<void> | void,
): Promise<void>

Create a cron job that will periodically execute the provided handler callback based on the specified schedule.

Deno.cron("sample cron", "20 * * * *", () => {
  console.log("cron job executed");
});
Deno.cron("sample cron", { hour: { every: 6 } }, () => {
  console.log("cron job executed");
});

schedule can be a string in the Unix cron format or in JSON format as specified by interface CronSchedule, where time is specified using UTC time zone.

Parameters

name: string
schedule: string | CronSchedule
handler: () => Promise<void> | void

Return Type

Promise<void>
cron(
name: string,
schedule: string | CronSchedule,
options: { backoffSchedule?: number[]; signal?: AbortSignal; },
handler: () => Promise<void> | void,
): Promise<void>

Create a cron job that will periodically execute the provided handler callback based on the specified schedule.

Deno.cron("sample cron", "20 * * * *", {
  backoffSchedule: [10, 20]
}, () => {
  console.log("cron job executed");
});

schedule can be a string in the Unix cron format or in JSON format as specified by interface CronSchedule, where time is specified using UTC time zone.

backoffSchedule option can be used to specify the retry policy for failed executions. Each element in the array represents the number of milliseconds to wait before retrying the execution. For example, [1000, 5000, 10000] means that a failed execution will be retried at most 3 times, with 1 second, 5 seconds, and 10 seconds delay between each retry.

Parameters

name: string
schedule: string | CronSchedule
options: { backoffSchedule?: number[]; signal?: AbortSignal; }
handler: () => Promise<void> | void

Return Type

Promise<void>