Multiple Cron Triggers
Set multiple Cron Triggers on three different schedules.
export default {  async scheduled(event, env, ctx) {    // Write code for updating your API    switch (event.cron) {      case "*/3 * * * *":        // Every three minutes        await updateAPI();        break;      case "*/10 * * * *":        // Every ten minutes        await updateAPI2();        break;      case "*/45 * * * *":        // Every forty-five minutes        await updateAPI3();        break;    }    console.log("cron processed");  },};interface Env {}export default {  async scheduled(    controller: ScheduledController,    env: Env,    ctx: ExecutionContext,  ) {    // Write code for updating your API    switch (controller.cron) {      case "*/3 * * * *":        // Every three minutes        await updateAPI();        break;      case "*/10 * * * *":        // Every ten minutes        await updateAPI2();        break;      case "*/45 * * * *":        // Every forty-five minutes        await updateAPI3();        break;    }    console.log("cron processed");  },};The recommended way of testing Cron Triggers is using Wrangler.
Cron Triggers can be tested using Wrangler by passing in the --test-scheduled flag to wrangler dev. This will expose a /__scheduled route which can be used to test using a HTTP request. To simulate different cron patterns, a cron query parameter can be passed in.
npx wrangler dev --test-scheduled
curl "http://localhost:8787/__scheduled?cron=*%2F3+*+*+*+*"Was this helpful?
- Resources
 - API
 - New to Cloudflare?
 - Products
 - Sponsorships
 - Open Source
 
- Support
 - Help Center
 - System Status
 - Compliance
 - GDPR
 
- Company
 - cloudflare.com
 - Our team
 - Careers
 
- 2025 Cloudflare, Inc.
 - Privacy Policy
 - Terms of Use
 - Report Security Issues
 - Trademark