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
| Expression | Meaning |
|---|---|
| 0 9 * * * | Every day at 9:00 AM |
| 0 9 * * 1-5 | Weekdays 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 * * 1 | Every Monday at 8:00 AM |
| 0 18 * * 5 | Every 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