FuuzHelp Center

Administer · App Management

Flow Schedules

Last updated December 27, 2025, 5:27 PM UTC · fuuz.com/help/flow-schedules

Flow Schedules

Article Type: Concept
Audience: App Administrators, Application Designers, Developers
Module: App Management
Applies to Versions: All Versions

1. Overview

Flow Schedules provide automated time-based execution of Data Flows using flexible scheduling patterns including cron expressions, calendar-based rules, and interval timers. This feature replaces the deprecated periodic nodes within flows, offering centralized schedule management where App Administrators can configure when and how flows execute without modifying flow logic. Flow Schedules support complex scenarios such as business-hour-only executions, multi-timezone operations, weekday-only processing, and custom exclusion patterns, making them ideal for integrations, batch processing, reporting, and data synchronization tasks.

Note: Flow Schedules are scoped per application and per environment. Each Schedule can have multiple Frequencies that execute the same Data Flow at different times or intervals, with each Frequency supporting its own timezone, execution pattern, and input payload configuration.

2. Architecture & Data Flow

Definitions

Components

Schedule-Frequency Relationship

A single Flow Schedule can have multiple Frequencies, enabling complex execution patterns:

Important: If frequencies need to pass different parameters to the same flow, you have two options: (1) Create separate Schedules for each parameter set, or (2) Use Application Configurations referenced within the flow to determine behavior based on context.

3. Use Cases

4. Screen Details

The Flow Schedules screen is accessed via App Management > Flow Schedules in the App Admin menu section. The interface is split into two panels:

Left Panel: Schedules

Displays all Flow Schedules in the current application with the following columns:

Actions (Left Panel):

Right Panel: Schedule Frequencies

Displays all frequencies for the selected schedule with the following columns:

Actions (Right Panel):


Schedule Editor Form

When creating or updating a schedule:

Field Type Description
Name Text (Required) Unique identifier for the schedule
Description Markdown (Optional) Detailed explanation of schedule purpose and configuration notes
Active Checkbox (Required) Master switch for entire schedule (does not affect individual frequency active states)
Input Schema JSON Schema (Required) Schema definition that validates payload data for all frequencies. Default: {"type": "object"} (accepts any JSON)
Data Flow Lookup (Required) Reference to the Data Flow that will be executed by all frequencies in this schedule


Frequency Editor Form

When creating or updating a frequency:

Field Type Description
Data Flow Schedule Lookup (Required) Parent schedule reference (auto-populated from selection)
Name Text (Required) Descriptive name for this frequency (e.g., "Weekday Days", "Evening Run")
Schedule Type Select (Required) Time, Daily, Monthly, or Cron
Config/Schedule Dynamic (Required) Schedule definition interface changes based on Schedule Type selection
Timezone Select (Required) IANA timezone identifier for frequency execution (e.g., US/Eastern, Europe/London)
Payload Data JSON (Optional) JSON object passed to Data Flow execution. Validated against schedule's Input Schema.
Active Checkbox (Required) Enable or disable this specific frequency without deletion







5. Technical Details

Schedule Types

Flow Schedules support four schedule type patterns, each with a UI-based configuration interface that generates the underlying cron expression or scheduling logic:

TIME (Interval-Based)

The TIME tab provides interval-based scheduling for continuous operations:

DAILY (Day-of-Week Based)

The DAILY tab provides day-of-week scheduling with calendar-style selection:

Note: To execute multiple times per day (e.g., 8:00 AM and 5:00 PM), you must create separate frequencies within the same schedule, each with a different Start Time. A single DAILY frequency can only have one Start Time.

MONTHLY (Day-of-Month Based)

The MONTHLY tab provides day-of-month and month-specific scheduling:

CRON (Expression-Based)

The Schedule Type selector allows switching to CRON for manual cron expression entry. The TIME, DAILY, and MONTHLY tabs serve as a visual cron expression builder - you can either use the calendar-style UI to build your schedule, or enter a raw cron expression directly when Schedule Type is set to "cron".

* * * * *
│ │ │ │ │
│ │ │ │ └─── Day of week (0-6, Sunday=0)
│ │ │ └───── Month (1-12)
│ │ └─────── Day of month (1-31)
│ └───────── Hour (0-23)
└─────────── Minute (0-59)

Cron Expression Examples:

Expression Description
0 5 * * 2,3,4,5,6 5:00 AM Tuesday through Saturday
0 0 1 * * Midnight on the 1st of every month
30 9-16 * * 1-5 9:30 AM through 4:30 PM (every hour) on weekdays
0 23 15,L * * 11:00 PM on 15th and last day of each month (Note: L notation support varies)
*/15 * * * * Every 15 minutes
0 0 * * 0 Midnight every Sunday

Cron Expression Builder: The frequency editor provides a calendar-style interface for Time, Daily, and Monthly types that generates the underlying cron expression. Advanced users can switch to Cron type for direct expression entry to handle edge cases not covered by the UI builders.

Input Schema and Payload Data

The relationship between Schedule Input Schema and Frequency Payload Data enables validated, parameterized flow executions. This two-level validation system ensures data integrity while maintaining flexibility.

Input Schema (Schedule Level)

Payload Data (Frequency Level)

Key Concept: The Input Schema is the "contract" that defines what structure the Payload Data must have. Each frequency provides concrete values matching that structure. This allows the same Data Flow to be executed with different parameters by different frequencies, all validated by the same schema.

Example: Parameterized Integration Schedule

Schedule Configuration:

{
"type": "object",
"properties": {
"source": {
"type": "string",
"enum": ["shopify", "magento", "woocommerce"]
},
"startDate": {
"type": "string",
"format": "date"
},
"notificationEmail": {
"type": "string",
"format": "email"
}
},
"required": ["source", "startDate"]
}

Frequency 1 - Shopify Morning Sync:

{
"source": "shopify",
"startDate": "2024-01-01",
"notificationEmail": "admin@company.com"
}

Frequency 2 - Magento Evening Sync:

{
"source": "magento",
"startDate": "2024-01-01",
"notificationEmail": "warehouse@company.com"
}
Important: If the Data Flow expects specific input parameters but the Payload Data is empty or invalid, the flow execution will likely fail. Always ensure Payload Data matches the flow's expected input structure and is validated by the Input Schema.

Timezone Handling

Execution Behavior

Important: Schedules trigger flow execution - they do not control flow behavior once started. All logging, error handling, retry logic, notifications, and operational controls must be configured within the Data Flow itself and its nodes.

Logging and Monitoring

Critical Concept: Flow Schedules trigger execution but do not automatically log execution details. If your flow is configured to log executions, then logging will occur - but all logging must be configured at the flow level and within individual nodes within the flow.

Schedule-Level Monitoring

The Flow Schedules screen provides these monitoring capabilities:

Flow-Level Logging (Must Be Configured)

These logging capabilities require explicit configuration within Data Flows:

Metrics and Analytics

Notifications and Alerts (Flow-Based)

Permissions and Access Control

Flow Schedules access is controlled through Fuuz's policy-based permission system, enabling granular control over who can create, view, edit, and manage schedules and frequencies.

Default Access Levels

Granular Permission Options

Permissions for Flow Schedules are very granular and can be configured separately for viewing versus editing:

Policy Configuration

To grant Flow Schedules access to Web Access users:

  1. Navigate to Access Control > Policies
  2. Create or edit a Policy Group and Policy
  3. Add specific permissions for:
  4. Assign the Policy to Roles
  5. Assign Roles to Web Access users who need Flow Schedules access

Audit and Accountability

Best Practice: Grant Flow Schedules permissions carefully - users with edit access can schedule flows to execute automatically, potentially impacting system resources and operations. Consider granting view-only access to users who need to monitor schedules but not create or modify them.

Scope and Migration

Holiday and Exception Handling

Fuuz does not have a built-in holiday calendar system. To exclude holidays or implement custom date-based logic:

Example Flow Pattern:

  1. Flow execution starts from schedule trigger
  2. First node queries Holiday data model or Application Configuration
  3. Compare current date (in appropriate timezone) against holiday list
  4. If holiday match, log "Skipped due to holiday" and exit flow
  5. If not holiday, continue with normal flow processing

6. Resources

7. Troubleshooting

Issue Cause Resolution
Frequency marked invalid with schema validation error Payload Data does not conform to schedule's Input Schema Review Status Message for specific validation errors. Verify Payload Data structure matches Input Schema requirements. Ensure required fields are present and data types match schema definitions. Test payload against schema using external JSON Schema validator if needed.
Schedule shows active but frequency never executes Frequency Active checkbox is disabled, or invalid schedule configuration Verify both Schedule Active and Frequency Active checkboxes are enabled. Check Status Message for configuration errors. Verify cron expression syntax if using Cron type. Ensure Estimated Next Execution shows a valid future date.
Flow executes but fails immediately with parameter errors Data Flow expects parameters not provided in Payload Data, or parameters are incorrectly structured Review Data Flow expected inputs using Flow Designer. Update Payload Data to include all required parameters. Consider hardcoding parameters within the flow if they don't need to vary, or use Application Configurations for dynamic values. Test manually in Flow Designer with matching payload before scheduling.
Execution time is incorrect - running at wrong time of day Timezone misconfiguration or daylight saving time confusion Verify Frequency Timezone setting matches intended execution timezone. Check if DST transition occurred - execution times shift with DST changes. Use Estimated Next Execution to preview when frequency will trigger. Consider using UTC timezone for DST-independent scheduling.
Invalid cron expression error Cron syntax error or unsupported cron features Use standard 5-field cron format (minute hour day month day-of-week). Avoid extended features like seconds field or special characters not universally supported. Use the calendar-style UI (Time/Daily/Monthly types) instead of manual Cron entry when possible. Validate expression using external cron validator tools.
Edge flow schedule experiencing intermittent failures Network connectivity issues between backend and gateway Monitor network connectivity between Fuuz backend and edge gateways. Consider using backend-only flows for critical schedules. Implement retry logic and error handling within edge flows. Check Gateway Logs and Integration Logs for connectivity errors during scheduled execution times.
Multiple frequencies triggering simultaneously causing system load Too many schedules configured for the same time or short intervals Stagger execution times across frequencies to distribute system load. Configure parallelism limits within flows to control concurrent execution. Monitor Data Flow Metrics Dashboard for performance impacts. Consider consolidating related operations into single flows with configuration-driven logic instead of multiple scheduled flows.
Schedule not included in package migration Schedule or underlying Data Flow not selected in package When creating packages, explicitly include both Data Flows and their associated Flow Schedules. Verify the Data Flow exists in destination environment before migrating schedules. Manually recreate schedules in destination if not included in package. Document schedule configurations for cross-environment consistency.
Cannot find execution logs for scheduled run Logging not configured in Data Flow or nodes Add logging nodes to Data Flow to capture execution details. Configure error handling and logging in flow nodes. Use Data Flow Metrics Dashboard for high-level execution statistics. Implement email notifications in flows for execution summaries or error alerts. Check Integration Logs for API call details.
Need to temporarily disable schedule without deleting Maintenance, testing, or operational hold requirement Uncheck Active checkbox at Schedule level to disable all frequencies, or uncheck Active at individual Frequency level for selective disabling. Both Schedule and Frequency must be Active for execution. Re-enable by checking Active when ready to resume.
Holiday exclusion not working - flow still runs No built-in holiday calendar system in Flow Schedules Implement holiday checking logic within the Data Flow itself. Create a custom Holiday data model or use Application Configurations to store holiday dates. Add flow nodes at the beginning to check current date against holiday list and exit if holiday. Alternatively, manually disable frequencies before holidays and re-enable after.
Flow executes successfully but no data processed Flow logic expects data that isn't available at scheduled time Review flow logic for timing dependencies - data availability, API rate limits, system operating hours. Verify Payload Data provides necessary context for flow to query or process correct data. Add conditional logic in flow to handle empty datasets gracefully. Consider adjusting schedule timing to match data availability.

Best Practices

8. Revision History

Version Date Editor Description
1.0 2024-12-27 Craig Scott Initial Release