--- title: "cronTrigger()" description: "`cronTrigger()` is set as a [Job's trigger](/docs/sdk/job) to trigger a Job on a recurring schedule using a CRON expression." --- ## Development ## CRON expressions CRON expressions are strings that define when something should happen. Some examples: - `"0 0 * * *"`: will run the Job every day at 12:00am UTC. - `"30 14 * * 1"`: will run the Job every Monday at 2:30pm UTC. A useful tool when writing CRON expressions is [crontab guru](https://crontab.guru). ## Parameters A CRON expression that defines the schedule. Note that the timezone used is always UTC. ```typescript 9am UTC everyday client.defineJob({ id: "scheduled-job-1", name: "Scheduled Job 1", version: "0.1.1", // 9am every day trigger: cronTrigger({ cron: "0 9 * * *", }), run: async (payload, io, ctx) => { await io.logger.info("Received the scheduled event", { payload, }); return { foo: "bar" }; }, }); ``` ```typescript First day of month client.defineJob({ id: "scheduled-job-2", name: "Scheduled Job 2", version: "0.1.1", // The first day of the month at 2am UTC trigger: cronTrigger({ cron: "0 2 1 * *", }), run: async (payload, io, ctx) => { await io.logger.info("Received the scheduled event", { payload, }); return { foo: "bar" }; }, }); ```