Scheduling Integrations

Retrieve allows you to schedule your integrations to run automatically at specific times or intervals using cron expressions. This powerful scheduling system gives you complete control over when your data synchronization occurs.

What is a Cron Expression?

A cron expression is a string consisting of five fields that define when a job should run. Each field represents a unit of time:

* * * * *
Minute (0-59)
│ ┬Hour (0-23)
│ │ ┬Day of Month (1-31)
│ │ │ ┬Month (1-12)
│ │ │ │ ┬Day of Week (0-6, Sunday=0)

Special Characters

*
Asterisk
Any value - matches all possible values for that field
Example: * * * * * = Every minute
,
Comma
List separator - specify multiple values
Example: 0 9,17 * * * = 9 AM and 5 PM daily
-
Hyphen
Range - specify a range of values
Example: 0 9-17 * * * = Every hour from 9 AM to 5 PM
/
Slash
Step - specify intervals within a range
Example: */15 * * * * = Every 15 minutes

Common Schedule Examples

⏱️ Frequent Intervals

*/5 * * * *Every 5 minutes
*/15 * * * *Every 15 minutes
*/30 * * * *Every 30 minutes
0 * * * *Every hour (on the hour)

📅 Daily Schedules

0 0 * * *Every day at midnight
0 9 * * *Every day at 9:00 AM
30 14 * * *Every day at 2:30 PM
0 9,17 * * *Daily at 9 AM and 5 PM

📆 Weekly Schedules

0 9 * * 1Every Monday at 9:00 AM
0 9 * * 1-5Weekdays at 9:00 AM
0 0 * * 0Every Sunday at midnight
0 18 * * 5Every Friday at 6:00 PM

📊 Monthly Schedules

0 0 1 * *First day of every month at midnight
0 9 15 * *15th of every month at 9:00 AM
0 0 1 1 *January 1st at midnight
0 0 * * 1Every Monday at midnight

Cron Expression Builder & Validator

Valid Cron Expression

Runs every 15 minutes

Next 5 scheduled runs:
  1. Dec 11, 2025, 7:20 PM UTC
  2. Dec 11, 2025, 7:35 PM UTC
  3. Dec 11, 2025, 7:50 PM UTC
  4. Dec 11, 2025, 8:05 PM UTC
  5. Dec 11, 2025, 8:20 PM UTC

Best Practices

Consider API Rate Limits

Avoid scheduling too frequently if your source or destination systems have rate limits. For example, Shopify REST API has a 2 requests/second limit.

Match Business Hours

Schedule syncs during off-peak hours to minimize impact on system performance. For example, run large product imports at night.

Use Incremental Sync

When possible, use timestamp-based filters (orders_last_pull, products_last_pull) to only sync new or updated data rather than full syncs.

Test Before Production

Always test your cron schedule in a development environment first. Use the validator above to ensure your expression does what you expect.

Monitor Job Performance

Regularly check job history to ensure integrations are completing successfully. Adjust frequency if jobs are taking longer than the interval between runs.

Timezone Considerations

⚠️ Important: All cron schedules run in UTC timezone

When setting your schedule, remember that cron expressions execute in UTC (Coordinated Universal Time), not your local timezone.

Example: If you want a job to run at 9:00 AM EST (UTC-5), you would set the cron to 0 14 * * * (2:00 PM UTC).

Quick Conversion:

  • EST (UTC-5): Add 5 hours to your desired time
  • PST (UTC-8): Add 8 hours to your desired time
  • CET (UTC+1): Subtract 1 hour from your desired time
  • IST (UTC+5:30): Subtract 5.5 hours from your desired time

Troubleshooting

🔴 Issue: Integration not running at expected time

Cause: Timezone mismatch or incorrect cron expression.

Solution:

  • Verify your cron expression using the validator above
  • Remember schedules run in UTC - convert your local time to UTC
  • Check the "Next Scheduled Runs" in the validator to confirm timing

🔴 Issue: Jobs running too frequently

Cause: Cron expression interval is shorter than job execution time.

Solution:

  • Review job history to see average execution time
  • Adjust cron frequency to allow jobs to complete before next run
  • Consider batch processing or pagination for large datasets

🔴 Issue: "Invalid cron expression" error

Cause: Syntax error in cron expression.

Solution:

  • Use the validator tool above to identify the specific error
  • Ensure you have exactly 5 fields separated by spaces
  • Check that values are within valid ranges (0-59 for minutes, 0-23 for hours, etc.)
  • Try one of the example schedules and modify it for your needs

Additional Resources