Welcome to Verne Clockwork
Verne Clockwork is a managed Cron-as-a-Service infrastructure designed for teams that need reliable, observable, and scalable job scheduling — without running their own cron daemons or queue workers.
What is Clockwork?
Clockwork lets you schedule HTTP callbacks on two execution models:
- Cron Jobs — recurring tasks defined by a standard 5-field cron expression (e.g.
0 * * * *for every hour). - Delayed Jobs — one-shot tasks fired at a specific future timestamp.
In both cases, Clockwork's worker picks up the job at the right time and makes an HTTP request to any URL you configure — your own API, a webhook, a microservice endpoint, or a third-party integration.
Under the hood, Clockwork is a purpose-built Rust worker (clockwork_worker) with atomic job claiming to prevent double-execution across concurrent instances, full execution history, and retry-safe design.
Why Clockwork?
| Capability | Description |
|---|---|
| Reliable Scheduling | Atomic DB claim prevents double-execution across concurrent worker instances. |
| Full Execution History | Every execution is recorded with status, duration, HTTP response code, and error details. |
| Flexible HTTP Dispatch | Any HTTP method (GET / POST / PUT / PATCH / DELETE), custom headers, and optional body. |
| Dashboard UI | Manage and monitor all jobs from the Verne Console without writing infrastructure code. |
| Multi-tenant | Each tenant's jobs and execution history are strictly isolated. |
| Zero Ops | No queues to manage, no cron daemons to maintain — just an API call or a few clicks. |
Quick Start
- Log in and open the Clockwork Dashboard.
- Go to the Cron Jobs tab to create a recurring job, or the Delayed Jobs tab to schedule a one-shot task.
- Fill in the target URL, HTTP method, schedule (cron expression or datetime), and optional headers/body.
- Click Create — Clockwork handles the rest.
Or use the API directly from your backend:
# Create a cron job that pings your health endpoint every 5 minutes
curl -X POST https://api.vernesoft.com/dashboard/clockwork/jobs \
-H "Cookie: ory_kratos_session=<session>" \
-H "Content-Type: application/json" \
-d '{
"name": "Health ping",
"schedule": "*/5 * * * *",
"url": "https://yourapp.com/health",
"method": "GET"
}'
# Schedule a one-shot job to run at a specific time
curl -X POST https://api.vernesoft.com/dashboard/clockwork/delayed \
-H "Cookie: ory_kratos_session=<session>" \
-H "Content-Type: application/json" \
-d '{
"name": "Send welcome email",
"run_at": "2026-04-10T09:00:00Z",
"url": "https://yourapp.com/internal/send-welcome",
"method": "POST",
"body": "{\"user_id\": \"usr_001\"}"
}'
Authentication
All Clockwork API endpoints are served under /dashboard/clockwork/* and require a valid Kratos session cookie. The session is automatically set when you log in to the Verne Console.
When calling the API from server-side code, forward the ory_kratos_session cookie obtained during login.
Sessions are managed per-tenant — Clockwork will never expose or modify another tenant's jobs.