Schedules
Create, inspect, pause, and delete Agent schedules.
A schedule belongs to an Agent and one of that Agent's existing threads. Supply exactly one timing field: a five-field cron expression or a future at timestamp with an offset. timezone must be an IANA time zone.
See Threads and messages for the target thread and Runs for execution state.
List schedules
/v1/agents/{agentId}/schedulesReturns schedules for an Agent, optionally filtered by thread.
curl "$FLUSO_API/v1/agents/agt_0123456789ab4def8123456789abcdef/schedules?threadId=thread_agent_release&page=1&limit=100" \
-H "Authorization: Bearer $FLUSO_TOKEN"{
"schedules": [
{
"id": "11111111-1111-4111-8111-111111111111",
"agentId": "agt_0123456789ab4def8123456789abcdef",
"threadId": "thread_agent_release",
"message": "Review the release candidate",
"cron": "0 9 * * 1-5",
"timezone": "Asia/Kolkata",
"status": "active",
"pauseReason": null,
"nextRunAt": "2026-09-01T03:30:00Z",
"attempts": 0,
"createdAt": "2026-08-31T09:00:00Z",
"updatedAt": "2026-08-31T09:00:00Z",
"firedAt": null,
"lastRun": null
}
],
"pagination": { "page": 1, "limit": 100, "total": 1, "pages": 1 }
}Create a schedule
/v1/agents/{agentId}/schedulesCreates a recurring or one-time schedule. The caller supplies a UUID so retries can be idempotent.
curl "$FLUSO_API/v1/agents/agt_0123456789ab4def8123456789abcdef/schedules" \
-X POST \
-H "Authorization: Bearer $FLUSO_TOKEN" \
-H 'Content-Type: application/json' \
-d '{
"id": "11111111-1111-4111-8111-111111111111",
"threadId": "thread_agent_release",
"message": "Review the release candidate",
"cron": "0 9 * * 1-5",
"timezone": "Asia/Kolkata"
}'For a durable one-time schedule, replace cron with an offset-bearing at value:
{
"at": "2026-09-01T09:00:00+05:30",
"timezone": "Asia/Kolkata"
}{
"id": "11111111-1111-4111-8111-111111111111",
"agentId": "agt_0123456789ab4def8123456789abcdef",
"threadId": "thread_agent_release",
"message": "Review the release candidate",
"cron": "0 9 * * 1-5",
"timezone": "Asia/Kolkata",
"status": "active",
"pauseReason": null,
"nextRunAt": "2026-09-01T03:30:00Z",
"attempts": 0,
"createdAt": "2026-08-31T09:00:00Z",
"updatedAt": "2026-08-31T09:00:00Z",
"firedAt": null,
"lastRun": null
}Replaying the same ID and body while the schedule is live returns the existing schedule with 200. Reusing the live ID with different fields returns a conflict. After a one-time schedule fires or a schedule is deleted, that ID returns 410 for 24 hours.
Pause or edit a schedule
/v1/agents/{agentId}/schedules/{scheduleId}Updates submitted fields. threadId is always required to guard the target.
curl "$FLUSO_API/v1/agents/agt_0123456789ab4def8123456789abcdef/schedules/11111111-1111-4111-8111-111111111111" \
-X PATCH \
-H "Authorization: Bearer $FLUSO_TOKEN" \
-H 'Content-Type: application/json' \
-d '{"threadId":"thread_agent_release","status":"paused"}'{
"id": "11111111-1111-4111-8111-111111111111",
"agentId": "agt_0123456789ab4def8123456789abcdef",
"threadId": "thread_agent_release",
"status": "paused",
"nextRunAt": "2026-09-01T03:30:00Z"
}Delete a schedule
/v1/agents/{agentId}/schedules/{scheduleId}Deletes a schedule after matching it to the supplied thread.
curl "$FLUSO_API/v1/agents/agt_0123456789ab4def8123456789abcdef/schedules/11111111-1111-4111-8111-111111111111?threadId=thread_agent_release" \
-X DELETE \
-H "Authorization: Bearer $FLUSO_TOKEN"HTTP/1.1 204 No ContentNext
Inspect each execution in Runs, or manage the target in Threads and messages.