Timer Trigger¶
Overview¶
The Timer Trigger allows you to run workflows automatically at specific times or intervals. This is perfect for recurring tasks like daily reports, weekly reminders, monthly invoices, or any time-based automation.
When to use this trigger:
- Generate and send daily/weekly/monthly reports
- Process end-of-day transactions
- Send recurring reminders or follow-ups
- Sync data between systems at regular intervals
- Clean up old records periodically
- Check for updates or changes on a schedule
Quick Start¶
- Create a new workflow
- Add a Timer Trigger as the first task
- Choose your schedule type (Minute, Hour, Day, Week, Month, or Custom Cron)
- Configure the schedule settings
- Set your timezone
- Save and enable the workflow
- The workflow will now run automatically according to your schedule
[SCREENSHOT NEEDED: Timer Trigger task panel showing schedule type dropdown and configuration options]
Schedule Types¶
Every Minute¶
Runs the workflow every N minutes (1-59).
Configuration: - Interval: Choose how many minutes between runs (1, 5, 10, 15, 30, etc.)
Example Use Cases: - Real-time data synchronization - Monitoring critical systems - Processing high-volume queues
[SCREENSHOT NEEDED: Every Minute configuration showing interval selector]
Every Hour¶
Runs the workflow every N hours at a specific minute.
Configuration: - Interval: Choose how many hours between runs (1-23) - Minute: Choose which minute of the hour to run (0-59)
Example: Every 2 hours at 15 minutes past the hour (1:15 PM, 3:15 PM, 5:15 PM, etc.)
Example Use Cases: - Hourly sales reports - Regular data backups - Checking for new orders
[SCREENSHOT NEEDED: Every Hour configuration showing hour interval and minute selector]
Every Day¶
Runs the workflow once per day at a specific time.
Configuration: - Time: Choose the exact time (hour and minute) to run - Timezone: Select your timezone
Example: Every day at 9:00 AM in your timezone
Example Use Cases: - Daily summary emails - End-of-day processing - Morning reminders
[SCREENSHOT NEEDED: Every Day configuration showing time picker and timezone selector]
Every Week¶
Runs the workflow on specific days of the week at a specific time.
Configuration: - Days: Select which days to run (Monday, Tuesday, Wednesday, etc.) - Time: Choose the exact time to run - Timezone: Select your timezone
Example: Every Monday and Friday at 2:00 PM
Example Use Cases: - Weekly reports - Bi-weekly reminders - Weekend processing tasks
[SCREENSHOT NEEDED: Every Week configuration showing day checkboxes, time picker, and timezone]
Every Month¶
Runs the workflow on specific days of each month at a specific time.
Configuration: - Days: Select which day(s) of the month (1-31) - Time: Choose the exact time to run - Timezone: Select your timezone
Example: On the 1st and 15th of every month at 8:00 AM
Example Use Cases: - Monthly invoicing - First-of-month reports - Mid-month reminders
Note: If you select day 31 and the month only has 30 days (or 28/29 for February), the workflow will not run that month.
Custom Cron Expression¶
For advanced users, you can use cron expressions to create complex schedules.
Configuration: - Cron Expression: Enter a standard cron expression - Timezone: Select your timezone
Cron Format:
* * * * *
│ │ │ │ │
│ │ │ │ └─── Day of week (0-6, Sunday=0)
│ │ │ └───── Month (1-12)
│ │ └─────── Day of month (1-31)
│ └───────── Hour (0-23)
└─────────── Minute (0-59)
Common Cron Patterns:
| Pattern | Description | Example Use |
|---|---|---|
0 9 * * 1-5 | 9 AM on weekdays | Business day reports |
0 */6 * * * | Every 6 hours | Periodic sync |
0 0 1 * * | First day of month at midnight | Monthly processing |
0 0 * * 0 | Sundays at midnight | Weekly cleanup |
*/15 * * * * | Every 15 minutes | Frequent checks |
0 9-17 * * 1-5 | Every hour 9 AM-5 PM on weekdays | Business hours only |
Timezone Configuration¶
All timer triggers use timezone-aware scheduling. This ensures your workflows run at the correct local time, even with daylight saving time changes.
Important: - Always select the timezone relevant to your business or users - The system accounts for daylight saving time automatically - If you work across multiple timezones, create separate workflows for each
Example: If you select "Africa/Johannesburg" and schedule a task for 9:00 AM, it will run at 9:00 AM South African time, regardless of where your server is located.
Output Fields¶
The Timer Trigger outputs information about the scheduled run that you can use in subsequent tasks:
| Field | Description | Example Value |
|---|---|---|
task_[ID]_timestamp | Unix timestamp when triggered | 1707379200 |
task_[ID]_datetime | ISO 8601 formatted datetime | 2024-02-08T09:00:00+02:00 |
task_[ID]_date | Date in YYYY-MM-DD format | 2024-02-08 |
task_[ID]_time | Time in HH:MM:SS format | 09:00:00 |
task_[ID]_timezone | Configured timezone | Africa/Johannesburg |
task_[ID]_status | Always "success" for schedule triggers | success |
Using Output in Subsequent Tasks:
You can reference these fields in emails, webhooks, or other tasks using the flattened notation:
Hi there,
This is your scheduled report for {{task_48123_date}} at {{task_48123_time}}.
Best regards,
Your Team
Real-World Examples¶
Example 1: Daily Sales Report¶
Schedule: Every day at 8:00 AM Workflow: 1. Schedule Trigger - Daily at 8:00 AM 2. MySQL Query - Fetch yesterday's sales 3. Email - Send report to management
Example 2: Monthly Invoice Generation¶
Schedule: First day of every month at 9:00 AM Workflow: 1. Schedule Trigger - Monthly on day 1 at 9:00 AM 2. MySQL Query - Get all clients with active subscriptions 3. Loop - For each client 4. MySQL Query - Generate invoice record 5. Email - Send invoice to client
Example 3: Hourly Data Sync¶
Schedule: Every hour at 5 minutes past Workflow: 1. Schedule Trigger - Hourly at :05 2. Webhook Out - Fetch data from external API 3. Loop - Process each record 4. MySQL Query - Update local database
Example 4: Weekly Reminder on Multiple Days¶
Schedule: Monday, Wednesday, Friday at 10:00 AM Workflow: 1. Schedule Trigger - Weekly on Mon/Wed/Fri at 10:00 AM 2. MySQL Query - Get clients with pending tasks 3. Loop - For each client 4. Email - Send reminder
Example 5: Month-End Processing¶
Schedule: Last day of month at 11:00 PM Cron Expression: 0 23 28-31 * * (with additional logic to check if tomorrow is a new month) Workflow: 1. Schedule Trigger - Custom cron 2. Code Task - Verify it's actually the last day 3. If Task - Check if last day 4. MySQL Query - Run month-end calculations 5. Email - Send summary
Testing Your Schedule¶
Test Run Feature¶
You can test your scheduled workflow without waiting for the scheduled time:
- Open your workflow
- Click the "Run Test" button in the Schedule trigger task
- The workflow will execute immediately with the current date/time values
- Check the execution history to verify it worked correctly
Checking Execution History¶
After your workflow runs (scheduled or test), you can view the execution history:
- Go to your workflow
- Click "Execution History"
- View all past runs with timestamps and status
- Click any execution to see detailed logs
Best Practices¶
✅ Do's¶
- Use appropriate intervals: Don't schedule workflows more frequently than needed
- Consider timezones: Always set the correct timezone for your use case
- Test before enabling: Use "Run Test" to verify your workflow works correctly
- Monitor execution history: Regularly check that your scheduled workflows are running successfully
- Use meaningful names: Name your workflows clearly (e.g., "Daily Sales Report - 8 AM")
- Add error handling: Include If tasks to handle failures gracefully
- Document your cron expressions: Add comments in your workflow description explaining complex cron patterns
❌ Don'ts¶
- Don't over-schedule: Running workflows every minute when hourly is sufficient wastes resources
- Don't ignore failures: Set up error notifications so you know when scheduled tasks fail
- Don't forget daylight saving: Use timezone-aware scheduling instead of UTC offsets
- Don't schedule overlapping workflows: If a workflow takes 10 minutes, don't schedule it every 5 minutes
- Don't hardcode dates: Use the schedule trigger's output fields instead of hardcoded values
Troubleshooting¶
Workflow Not Running at Scheduled Time¶
Possible Causes: - Workflow is disabled - Schedule configuration is incorrect - Timezone setting is wrong - System maintenance window
Solutions: 1. Check the workflow toggle is ON (enabled) 2. Verify your schedule configuration matches your intention 3. Double-check your timezone selection 4. Review execution history for error messages
Workflow Running at Wrong Time¶
Cause: Timezone misconfiguration
Solution: Edit your Schedule trigger and select the correct timezone
Cron Expression Not Working¶
Possible Causes: - Invalid cron syntax - Using 6-field format instead of 5-field
Solutions: 1. Verify your cron expression using an online cron validator 2. Use standard 5-field cron format (minute, hour, day, month, weekday) 3. Test with a simple expression first (e.g., * * * * * for every minute)
Workflow Runs Multiple Times¶
Cause: Multiple enabled Schedule triggers in the same workflow
Solution: Each workflow should have only ONE Schedule trigger. If you need multiple schedules, create separate workflows.
Advanced Patterns¶
Conditional Scheduling¶
You can add logic after a Schedule trigger to run different workflows based on the date:
1. Schedule Trigger - Daily at 9:00 AM
2. Code Task - Check if it's the first day of the month
3. If Task - Is first day?
- Yes: Run monthly processing
- No: Run daily processing
Sequential Scheduled Workflows¶
If you need workflows to run in sequence:
1. Schedule Trigger - Daily at 8:00 AM
2. [Your workflow logic]
3. Delay Task - Wait 30 minutes
4. Webhook Out - Trigger another workflow's webhook
Error Recovery¶
Add error handling to scheduled workflows:
1. Schedule Trigger - Hourly
2. Try your main logic
3. If Task - Check for errors
- Has errors: Send alert email
- No errors: Continue normally
Frequently Asked Questions¶
Can I have multiple Schedule triggers in one workflow?¶
No, each workflow should have only one trigger (Schedule, Webhook, Email, etc.). If you need multiple schedules, create separate workflows.
What happens if a scheduled workflow is still running when the next schedule hits?¶
The system queues the next execution and will run it after the current one completes. However, if you have many overlapping executions, consider increasing your schedule interval.
Can I schedule a workflow to run at different times on different days?¶
Yes, use the "Every Week" schedule type and select specific days, or use a custom cron expression for more complex patterns.
How do I schedule a workflow for business days only (Monday-Friday)?¶
Use the "Every Week" schedule type and select Monday through Friday, or use the cron expression: 0 9 * * 1-5 (for 9 AM on weekdays).
Can I schedule a workflow to run every X days (not weekly)?¶
Not directly with the built-in schedule types. You can use a daily schedule and add a Code task to check if it should run (e.g., check if day number modulo X equals 0).
What's the difference between UTC and my local timezone?¶
UTC is a universal time standard. If you select your local timezone (e.g., "Africa/Johannesburg"), your workflow will run at the time shown on your local clock, accounting for daylight saving time. This is usually what you want.
Can I temporarily disable a scheduled workflow?¶
Yes, toggle the workflow OFF at the top of the workflow editor. The schedule trigger will stop running until you enable it again.
How far in advance can I see upcoming scheduled runs?¶
Currently, the system doesn't show future scheduled runs. However, you can calculate them based on your schedule configuration.
Can I schedule a workflow to run at the end of each month?¶
Yes, but it's complex because months have different lengths. Use the "Every Month" type and select days 28-31, or use a custom cron expression with additional logic to verify it's actually the last day.
Next Steps: - Webhook In Trigger - Trigger workflows from external systems - Website Form - Trigger from website forms - Inbound Email - Trigger from incoming emails