Cron-as-a-Service
Schedule jobs with standard 5-field expressions or @daily macros. Manage entries over REST, toggle them on or off, and set auto-expiry — no SSH required.
# Create a managed entry that runs daily at 9 AM
curl -X POST https://abc123-def456-cron-1.node-us-1.containers.hoody.com/users/root/entries \
-H 'Content-Type: application/json' \
-d '{ "schedule": "0 9 * * *", "command": "/usr/local/bin/backup.sh" }'
# 201 Created — the new managed entry
{
"id": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
"schedule": "0 9 * * *",
"command": "/usr/local/bin/backup.sh",
"enabled": true,
"expires_at": null
}
# Reschedule the entry to run at noon instead
curl -X PATCH https://abc123-def456-cron-1.node-us-1.containers.hoody.com/users/root/entries/a1b2c3d4-e5f6-7890-abcd-ef1234567890 \
-d '{ "schedule": "0 12 * * *" }'
# Entry updated
Every Pattern You'll Need
Eight expressions paired with plain-English equivalents — copy any pattern straight into a managed entry's schedule field.
Schedule at a Glance
Four managed entries on a rolling axis — upcoming fires in blue, disabled entries dimmed by their enabled state.
daily-backup
At 02:00
health-check
Every 15 minutes
log-rotate
At 00:00 on Sunday
sync-reports
At 09:00 on Mon–Fri
Managed or Raw — Your Call
UUID-tracked entries with toggle and expiry through the JSON API, or direct crontab file access when you own the workflow.
Managed Entries
5 endpointsUUID-backed CRUD — create, read, update, and delete cron jobs as JSON. Attach a comment, toggle the enabled state, and set auto-expiration without ever touching the raw crontab.
# Create a managed entry
POST /users/{user}/entries
{
"schedule": "0 9 * * *",
"command": "/usr/local/bin/backup.sh",
"comment": "Daily backup at 9 AM",
"enabled": true
}
Raw Crontab
3 endpointsFull read and write access to the crontab file for a system user. Reach for this when you need complete control or already have crontab-based workflows in place.
# Read the raw crontab
GET /users/{user}/crontab
# Replace the entire crontab
PUT /users/{user}/crontab
{ "crontab": "0 5 * * * /usr/local/bin/backup.sh" }
Common Cron Expressions
Copy-paste these doc-grounded schedules — each verified against the expression reference above.
* * * * *
Every Minute
Fire on every clock tick. Ideal for continuous polling tasks, metric collectors, or watchdog processes.
0 * * * *
Every Hour
Fire at the top of each hour. Good for hourly summaries, cache warming, or scheduled API syncs.
0 9 * * 1-5
Weekdays at 9 AM
Fire at 09:00 Mon–Fri only. Use for business-hours tasks like sending daily digests or generating reports.
0 0 1 * *
First of Month
Fire once per month at midnight on the 1st. Perfect for monthly rollups, billing cycles, and archive jobs.
*/5 * * * *
Every 5 Minutes
Fire every 5 minutes. Useful for health checks, queue drainers, and near-real-time data synchronisation.
@daily
Daily Macro
Equivalent to the 0 0 * * * schedule — midnight every day. The clearest way to express a once-per-day run.
9 Endpoints. Two Modes.
Five managed-entry CRUD endpoints, three raw crontab endpoints, and one service health check.
Managed Entries
5 endpointshttps://abc123-def456-cron-1.node-us-1.containers.hoody.com/users/root/entries
Raw Crontab
3 endpointshttps://abc123-def456-cron-1.node-us-1.containers.hoody.com/users/root/crontab
System
1 endpointhttps://abc123-def456-cron-1.node-us-1.containers.hoody.com/health
Schedule Your First Job
One POST request. One cron entry. Zero SSH. Hoody Cron is running inside your container right now.