Scheduling
Agents can run automatically on a recurring interval. This is useful for periodic data collection, reporting, monitoring, or any recurring AI workflow.
In the UI
Creating a Schedule
- Open the agent’s detail page
- Click the Schedule tab
- Set the Interval (minimum 5 minutes)
- Optionally provide Static Input — a fixed JSON payload sent on each run
- Click Enable Schedule
The next scheduled run time appears below the interval setting.
Removing a Schedule
- Open the agent’s detail page
- Click the Schedule tab
- Click Disable Schedule
Disabling does not delete existing execution history.
Via the API
Create a Schedule
curl -X POST /agents/{id}/schedule \
-H "Authorization: Bearer $TOKEN" \
-H "Content-Type: application/json" \
-d '{
"intervalMinutes": 60,
"input": { "action": "daily-report" }
}'Response:
{
"success": true,
"data": {
"scheduleId": "sched-uuid",
"intervalMinutes": 60,
"nextRunAt": "2026-03-23T15:00:00Z",
"input": { "action": "daily-report" }
}
}View Schedule
The schedule is included in the agent detail response:
curl /agents/{id} \
-H "Authorization: Bearer $TOKEN"{
"id": "agent-uuid",
"name": "Daily Reporter",
"schedule": {
"intervalMinutes": 60,
"nextRunAt": "2026-03-23T15:00:00Z",
"lastRunAt": "2026-03-23T14:00:00Z",
"input": { "action": "daily-report" }
}
}Remove Schedule
curl -X DELETE /agents/{id}/schedule \
-H "Authorization: Bearer $TOKEN"Configuration Reference
| Parameter | Type | Required | Description |
|---|---|---|---|
intervalMinutes | number | Yes | How often to run (minimum: 5 minutes) |
input | object | No | Static input to pass on each invocation |
Common Intervals
| Use Case | Interval |
|---|---|
| Real-time monitoring | 5 minutes |
| Frequent checks | 15 minutes |
| Hourly reports | 60 minutes |
| Daily digest | 1440 minutes (24h) |
| Weekly summary | 10080 minutes (7d) |
Execution History
Scheduled executions appear in the agent’s execution history alongside manual
invocations. Each scheduled execution is tagged with trigger: "schedule" in
its metadata.
curl /agents/{id}/executions?trigger=schedule \
-H "Authorization: Bearer $TOKEN"Cost Estimation
Check the estimated cost per run before enabling a schedule:
curl /agents/{id}/cost-estimate \
-H "Authorization: Bearer $TOKEN"{
"estimatedTokensPerRun": 450,
"estimatedCostPerRun": "$0.0045",
"estimatedMonthlyCost": "$3.24",
"breakdown": [
{ "node": "llm_1", "tokens": 350, "cost": "$0.0035" },
{ "node": "llm_2", "tokens": 100, "cost": "$0.0010" }
]
}Multiply by (60 * 24 * 30) / intervalMinutes to get the monthly run count.
Notes
- The agent must be in
activestatus for scheduled runs to execute - If an execution fails, the schedule continues — check execution history for errors
- Deactivating an agent pauses its schedule; reactivating resumes it
- Deleting the schedule does not affect existing execution history