floo cron is the read-only + manual-trigger surface for scheduled cron jobs. Cron jobs are declared in floo.app.toml under [cron.<name>] sections — they are not created with the CLI. Every deploy reconciles the declared set: new sections become jobs, removed sections are deleted, changed sections are updated.
Looking for how to add a cron job? Edit
floo.app.toml, not the CLI. See Cron Jobs for the schema and end-to-end flow, or Config Spec → [cron.<name>] for the field reference.list
List every cron job declared on an app along with its enabled state, last status, and last run time.Flags
| Flag | Description | Default |
|---|---|---|
--app APP | App name or UUID | inferred from config |
JSON output
last_run_at and last_status are null until the first run completes. last_status is success or failed — the API only writes the row after the run reaches a terminal state, so there is no in-between “running” value.
show
Show details for a single cron job by name.Arguments
| Argument | Description |
|---|---|
<name> | Cron job name — must match a [cron.<name>] section in floo.app.toml |
Flags
| Flag | Description | Default |
|---|---|---|
--app APP | App name or UUID | inferred from config |
JSON output
Errors
| Code | Meaning |
|---|---|
NOT_FOUND | No cron job with that name on this app. Run floo cron list to see available jobs. |
run
Manually trigger a cron job by name. Useful for testing or one-off catch-up runs without waiting for the schedule.Arguments
| Argument | Description |
|---|---|
<name> | Cron job name — must match a [cron.<name>] section in floo.app.toml |
Flags
| Flag | Description | Default |
|---|---|---|
--app APP | App name or UUID | inferred from config |
--dry-run | Preview the trigger without calling the API | off |
What it does
- Resolves the app from
--appor the nearestfloo.app.toml. - Calls the platform’s “trigger cron job” endpoint, which dispatches a one-off Cloud Run Job execution against the service’s container image.
- Waits for the run to complete and returns the final outcome. The job’s
last_run_atandlast_statusare updated before the call returns, so a follow-upfloo cron listreflects the run immediately.
What the CLI does NOT do
- Add jobs. Edit
floo.app.toml. The next deploy creates the job. - Remove jobs. Delete the
[cron.<name>]section fromfloo.app.toml. The next deploy deletes the job. - Edit schedules or commands. Change them in
floo.app.toml. The next deploy updates the job.
Related
- Cron Jobs guide — long-form walkthrough with examples, schedule syntax, and the agent workflow
- Config Spec →
[cron.<name>]— full field reference floo deploys watch— watch a deploy reconcile cron jobs in real time