← Back to Docs

Call a URL on a Cron Schedule Without a Server

If the job is "call this URL every 15 minutes" (a sync endpoint, a report route, a health check, a cache warm-up), you don't need a server with a crontab running curl. Give RunLater the URL and a cron expression and it calls the URL on that schedule, in your timezone, with retries and a log of every response.

From a crontab line to a RunLater request

# crontab on a server
*/15 * * * * curl -fsS -X POST -H "Authorization: Bearer $TOKEN" https://example.com/api/sync
  1. URL: https://example.com/api/sync, method POST
  2. Header: Authorization: Bearer <token>
  3. Schedule: Recurring, cron */15 * * * *, your timezone
  4. Retries: 3, timeout 30 seconds (up to 300)

Check any expression in the cron expression explainer; it shows the next 10 run times and gives you a link to share.

What changes compared with a crontab

  • A failed call (non-2xx or timeout) is retried with backoff instead of being lost.
  • Every run is logged with its status code, timing and response body, so "did it run?" has an answer.
  • Nobody needs SSH access to see or change a schedule.
  • No server to keep up for this job.

A crontab is still the right tool for shell commands and scripts that must run on that machine. The full side by side is on RunLater vs a crontab on your own server.