Skip to main content

Task Scheduler

The Task Scheduler plugin lets you automate recurring and one-off business processes on the Booga Enterprise platform. You can schedule tasks using cron expressions, fixed intervals, specific dates, or event-driven triggers — then monitor every execution from a centralized dashboard.

Getting Started

Open Scheduler from the sidebar. The plugin requires the scheduler_basic capability on your subscription and one of the scheduler permissions (SCHEDULER_READ, SCHEDULER_WRITE, SCHEDULER_EXECUTE, or SCHEDULER_MANAGE) on your account.

The main page opens to two tabs:

TabPurpose
DashboardView all schedules, browse templates, create and manage scheduled tasks
Execution MonitorTrack active and historical executions, retry failures, and cancel running tasks

Interface Overview

The page header shows the plugin title, a scope indicator for the active stack, and a Create Schedule button. Below the header, the tab bar switches between the Dashboard and Execution Monitor views.

The Dashboard tab includes an inner set of views for your schedules list, a template gallery, and analytics. Filters let you search by name, narrow by status (active, paused, disabled, expired, completed), filter by schedule type (cron, interval, one-time, event), and optionally include soft-deleted schedules.

Schedule Types

The scheduler supports four distinct trigger mechanisms. Choose the one that best fits your automation need.

Cron Schedules

Cron schedules run tasks on a Unix-style cron pattern. You can either select a preset — hourly, daily, weekdays only, weekly, or monthly — or build a custom expression by setting each field (minute, hour, day-of-month, month, day-of-week) individually. A manual mode is also available for advanced users who prefer to type the five-field expression directly.

Shorthand expressions such as @daily, @weekly, @monthly, and @yearly are supported. When you configure a cron schedule, a human-readable description (e.g., "At 09:00 AM, Monday through Friday") appears automatically to confirm the schedule is correct.

Interval Schedules

Interval schedules repeat a task at a fixed frequency — for example, every 5 minutes or every 2 hours. The minimum interval is 60 seconds (enforced server-side). Set the interval by entering a number and selecting the unit (seconds, minutes, or hours).

One-Time (Date) Schedules

One-time schedules execute a task exactly once at a specific date and time. Select the target date, time, and timezone from the built-in timezone list. The scheduler stores the scheduled wall-clock time so that daylight-saving changes do not shift the execution unexpectedly.

Event-Driven Schedules

Event-driven schedules fire when a platform event occurs — for example, when a file is uploaded, an agent completes execution, or a report finishes generating. You select one or more event types, choose a match mode (any or all), and optionally set a cooldown period (minimum interval between triggers) to prevent rapid repeated execution.

Tip: Event-driven schedules are ideal for reactive workflows such as "generate a summary report every time an agent run completes."

Creating a Schedule

  1. Click Create Schedule in the page header (or select a template from the Template Gallery to pre-fill settings)
  2. Walk through the schedule builder wizard:

Step 1 — Basic Information

Enter a name and optional description for the schedule.

Step 2 — Schedule Type

Choose one of the four schedule types described above and configure its parameters (cron expression, interval, date/time, or event triggers).

Step 3 — Task Configuration

Select the task to run. Two task sources are available:

  • Built-in tasks — platform-provided system tasks such as test_task (connectivity test), sync_file_metadata (file metadata refresh), and sync_cloud_integration (cloud connector sync)
  • Agent / report tasks — when opening the scheduler from within an agent or report context, the schedule can be linked to execute that specific agent instance or generate that specific report. These managed schedules are tied to their source and cannot be reassigned

Configure any task-specific parameters as JSON key-value pairs.

Step 4 — Advanced Options

OptionDescription
Execution strategyshared (shared pool), tenant_compute (dedicated tenant resources), or hybrid
Priority1 (lowest) through 10 (highest) — higher-priority tasks are dequeued first
Max runsLimit the total number of executions; the schedule moves to "completed" after reaching this count
Max consecutive failuresPause the schedule automatically after this many failures in a row
Start / End dateDefine a window during which the schedule is active
NotificationsChoose notification channels to receive alerts on execution results
  1. Click Create to save. The schedule starts in the active state and will trigger according to its configuration.

Managing Schedules

Status Lifecycle

StatusMeaning
ActiveSchedule is running and will trigger on the next occurrence
PausedTemporarily suspended; can be resumed at any time
DisabledTurned off; use Enable to reactivate
ExpiredPast its end date and will no longer trigger
CompletedReached its maximum run count

Available Actions

From the schedules list you can:

  • Execute — trigger the schedule immediately regardless of its next scheduled time
  • Pause — suspend the schedule without deleting it
  • Resume — reactivate a paused schedule
  • Enable — reactivate a disabled schedule
  • Edit — open the schedule builder to modify settings
  • Soft delete — remove the schedule from the default view while preserving it for audit purposes. Use the "show deleted" filter to view and restore soft-deleted schedules

Note: Managed schedules (those created from within an agent or report) cannot be bulk-deleted from the scheduler dashboard — manage them from their original context.

Schedule Details

Click a schedule row to open the details modal. It shows the full configuration, execution statistics (total runs, success rate), a cron preview of upcoming runs (for cron schedules), and the recent execution history for that schedule.

Templates are reusable starting points for common scheduling patterns. The gallery displays cards for each template with its name, category, description, usage count, and community rating.

Using Templates

  1. Open the Templates view within the Dashboard tab
  2. Browse or search by name and category
  3. Click a template card to preview its details
  4. Click Use Template to open the schedule builder with the template's settings pre-filled
  5. Adjust any values and create the schedule

Rating Templates

After using a template, you can rate it from 1 to 5 stars. Ratings help surface the most useful templates — templates with high ratings and usage counts are highlighted as "Popular" or "Featured."

Execution Monitor

The Execution Monitor tab provides real-time visibility into every task execution.

Execution List

A filterable, auto-refreshing list shows all executions with:

  • Schedule name and execution ID
  • Execution type (scheduled, manual, event-triggered, retry)
  • Status (pending, running, completed, failed, cancelled)
  • Start time, duration, and finish time
  • Retry count

Use the filter controls to search by schedule name, narrow by status, or adjust the auto-refresh interval. The refresh interval is stored in your browser so it persists across sessions.

Execution Actions

  • Cancel — stop a running or pending execution
  • Retry — re-run a failed execution with the same parameters

Execution Details

Click an execution row to view the full detail dialog, including resource usage, cost metrics, error messages (for failures), and task output.

Stats Overview

Summary cards at the top of the monitor display aggregate counts: total executions, successful, failed, and cancelled — for the selected time range.

Best Practices

  • Use templates for common patterns — templates ensure consistent configuration and save time when setting up similar schedules
  • Set max consecutive failures — this prevents a broken task from retrying endlessly and consuming resources
  • Choose the right schedule type — use cron for recurring calendar-based tasks, intervals for polling, one-time for deferred single actions, and events for reactive automation
  • Monitor execution history regularly — the Execution Monitor surfaces failures early so you can investigate before they affect downstream processes
  • Use descriptive names — clear schedule names make the dashboard easier to scan and help teammates understand each automation at a glance
  • Set start and end dates for campaigns — time-bound schedules automatically expire instead of running indefinitely
  • Prefer event-driven schedules over short intervals — reacting to platform events is more efficient and timely than polling at high frequency

Troubleshooting

Cannot access the Scheduler

Problem: You see an access-denied message when opening the Scheduler. Solution: Your subscription needs the scheduler_basic capability and your account needs at least SCHEDULER_READ permission. Contact your administrator to enable access.

Schedule not triggering

Problem: An active schedule is not executing at the expected time. Solution: Verify the cron expression or interval is correct — use the cron preview in the schedule details to see upcoming run times. Check that the schedule's start/end date window includes the current date and that the maximum run count has not been reached.

Execution fails repeatedly

Problem: Executions keep failing and the schedule pauses itself. Solution: Open the Execution Monitor, click the failed execution, and review the error message. Common causes include missing task parameters, unavailable agent instances, or permission issues. Fix the root cause and resume the schedule.

Event-driven schedule fires too often

Problem: An event-driven schedule triggers more frequently than desired. Solution: Set a cooldown period (minimum event trigger interval) in the schedule's event configuration. This prevents the schedule from re-triggering within the specified window.

Soft-deleted schedule not visible

Problem: A schedule you deleted is no longer in the list. Solution: Enable the Show deleted filter in the schedules list. Soft-deleted schedules can be restored from there.


⏱️ Read time: 12 minutes | 📊 Difficulty: intermediate | 🔄 Last updated: 2026-03-30