Dashboard

Scheduling

Automate your agents to run on a schedule. Use cron expressions for recurring tasks like daily reports, periodic data checks, or scheduled notifications.

What is Scheduling?

Scheduling lets you run agents automatically at specific times or intervals, without manual intervention. Fluxgate uses Celery Beat for reliable cron-based scheduling.

Create a Schedule

Create Schedulebash
curl -X POST http://localhost:8000/api/v1/schedules \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "agent_id": "AGENT_ID",
    "name": "daily-report",
    "cron_expression": "0 9 * * 1-5",
    "input": "Generate the daily sales report for yesterday",
    "enabled": true
  }'

Common Cron Expressions

ExpressionMeaning
0 9 * * *Every day at 9:00 AM
0 9 * * 1-5Weekdays at 9:00 AM
*/30 * * * *Every 30 minutes
0 */2 * * *Every 2 hours
0 0 1 * *First day of every month at midnight
0 8 * * 1Every Monday at 8:00 AM
0 18 * * 5Every Friday at 6:00 PM

Cron Format

Format: minute hour day-of-month month day-of-week. Use * for "every", */N for "every N", and 1-5 for ranges.

Manage Schedules

Manage Schedulesbash
# List all schedules
curl http://localhost:8000/api/v1/schedules \
  -H "Authorization: Bearer YOUR_API_KEY"

# Disable a schedule
curl -X PUT http://localhost:8000/api/v1/schedules/SCHEDULE_ID \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -d '{ "enabled": false }'

# Manually trigger a schedule now
curl -X POST http://localhost:8000/api/v1/schedules/SCHEDULE_ID/trigger \
  -H "Authorization: Bearer YOUR_API_KEY"

Using the Dashboard

The Scheduler tab shows:

  • All scheduled jobs with their cron expressions
  • Next scheduled run time for each job
  • Run history with success/failure status
  • Enable/disable toggle for each schedule
  • Manual trigger button for immediate execution