Schedule API calls with cron - automate any endpoint
At 04:30, every day.
Next runs · UTC
- —
- —
- —
- —
- —
Calendar
September 2026 · UTC
0 runs
About this tool
Option 1 - Roll your own cron + curl
# /etc/crontab on a Linux box
*/15 * * * * curl -fsS -X POST \
-H "Authorization: Bearer $API_SECRET" \
https://api.example.com/cron/heartbeatCheapest and simplest, but you own:
- The host (uptime, OS patches, SSL).
- Retry logic when the API is briefly unavailable.
- Alerting when the request fails silently.
- Logs / observability across every cron line.
- Timezone configuration.
Works great for hobby projects and a single shared box. Falls apart at the “hundreds of crons across multiple services” scale.
Option 2 - Platform-native cron (AWS / Vercel)
If your API runs on AWS or Vercel, the platform's cron service is often the path of least resistance.
- AWS EventBridge Scheduler - invokes Lambda, Step Functions, ECS, or arbitrary HTTP endpoints (via API destinations). Supports IANA timezones, dead-letter queues, retries. Cron syntax guide.
- Vercel cron - invokes a Next.js API route on schedule. UTC only, no built-in retry beyond function cold-start handling. Cron syntax guide.
- Cloudflare Workers Cron Triggers - fires a Worker on a cron expression. Great for edge-cron use cases.
Option 3 - Queue + scheduler in your own stack
If you already run a queue (BullMQ, Sidekiq, Celery, RabbitMQ), most of them have a sibling library that adds cron scheduling on top:
- BullMQ +
repeat: { cron: "*/5 * * * *" } - sidekiq-cron - durable cron schedules in Sidekiq.
- Celery beat - cron- and interval-style schedules in Celery.
Pros: durable across restarts, distributed across workers, tight integration with your existing job processing. Cons: you still own the infrastructure.
Option 4 - Crontap (managed API scheduler)
Crontap is a managed scheduler purpose-built for HTTP endpoints. Drop a URL, drop a cron expression, get scheduled invocations with:
- Configurable retries with exponential backoff.
- Bearer-token / HMAC auth out of the box.
- Timezone-aware schedules.
- Per-call logs and a calendar view of upcoming runs.
- REST API for programmatic schedule creation.
- Webhook delivery to Slack / Discord / email on failure.
Worth it when you have more than ~10 schedules, when reliability matters more than the savings of running cron on a box, or when business stakeholders need to manage schedules without code changes.
Try it in 30 seconds
Sign up for Crontap and schedule your first API call. Free tier, no credit card required.
Schedule API calls with CrontapCommon API scheduling recipes
- Heartbeat / health check - every 5 min:
*/5 * * * *. - Cache warm-up - every 15 min:
*/15 * * * *. - Daily digest email - weekdays at 09:00:
0 9 * * 1-5. - Monthly invoice run - last day of month:
0 0 L * *. - Quarterly report - first of Jan/Apr/Jul/Oct:
0 0 1 1,4,7,10 *. - Hourly cleanup -
0 * * * *.
Examples
- 0 18 * * *Every day at 18:00
- 0 */5 * * *Every 5 hours
- 0 18 * * 1-5Weekdays at 18:00
- 0 0 1 * *Once a month, on the 1st at midnight
Cheatsheet
Full cheatsheet| Field | Req. | Range | Wildcards |
|---|---|---|---|
| minute | yes | 0-59 | , - * / |
| hour | yes | 0-23 | , - * / |
| day of month | yes | 1-31 | , - * / |
| month | yes | 1-12 or JAN-DEC | , - * / |
| day of week | yes | 0-6 or names; some dialects use 0-7 or 1-7 — see Dialects | , - * / |
Frequently asked questions
Syntax
What does it mean to schedule API calls?
Scheduling an API call means automatically sending an HTTP request to an endpoint at recurring times, such as every five minutes or each weekday morning. Cron commonly describes the timing, while a host, cloud service, or HTTP scheduler performs the request.
API scheduling guideTiming
What's the difference between scheduled API calls and webhooks?
Webhooks are event-driven - triggered when something happens. Scheduled API calls are time-driven - triggered when a clock matches a cron expression. They solve different problems: webhooks for 'fire when X', scheduled calls for 'fire every X minutes/hours/days'.
API scheduling guideWhat cron calls an API every 15 minutes?
Use */15 * * * *. The scheduler must then invoke the endpoint with the required HTTP method, headers, and body. Expression: */15 * * * *
Days and months
What cron calls an API on weekdays at 09:00?
Use 0 9 * * 1-5. Confirm the scheduler timezone before relying on 09:00 as a local business time. Expression: 0 9 * * 1-5
Timezones and DST
Which timezone should a scheduled API call use?
Choose UTC for fixed global timing or an explicit IANA timezone for local business time. Record the choice because DST can skip or repeat local clock times.
Timezone referencePlatforms
Should I run my own cron or use a managed scheduler?
Self-hosted cron gives direct control but includes infrastructure and operational costs. Vercel cron invokes deployed routes in UTC without retries. EventBridge Scheduler supports IANA timezones, retries, and AWS targets. Compare runtime fit, delivery guarantees, observability, and total operating cost.
Scheduler optionsWhat kinds of API calls can I schedule?
Any HTTP-reachable endpoint: webhook receivers, REST APIs, GraphQL endpoints, internal microservices, third-party integrations (Twilio, SendGrid, Stripe, etc.), Slack incoming webhooks, Zapier triggers, n8n workflows. If it accepts an HTTP request, it can be scheduled.
API scheduling examplesHow do I call an API from a Unix crontab?
Put a command such as curl -fsS https://api.example.com/task after the five-field schedule. Use absolute paths, authentication, timeouts, and output redirection in production.
Should I use EventBridge, Vercel cron, or Unix cron for API calls?
Use the scheduler that matches your runtime and operational needs. EventBridge has six-field AWS syntax, Vercel uses five fields in UTC, and Unix cron runs commands on a maintained host.
Scheduler dialect matrixDebugging
How do I secure a scheduled API endpoint?
Three options: (1) bearer-token auth - the scheduler sends Authorization: Bearer <secret>, the endpoint verifies it; (2) HMAC-signed payloads - the scheduler signs each request, the endpoint verifies the signature; (3) IP allowlist - only accept requests from the scheduler's known egress IPs. Use bearer tokens unless you have a reason for the other two.
Should a scheduled API endpoint be idempotent?
Yes. Retries or duplicate delivery can invoke the same logical run more than once, so use an idempotency key or server-side deduplication for non-repeatable work.
API scheduling reliabilityHow should scheduled API calls handle timeouts and retries?
Set a finite request timeout, retry transient failures with bounded backoff, and record the final status. Do not retry permanent authentication or validation errors indefinitely.
API scheduling reliabilityHow do I prevent scheduled API calls from overlapping?
Use a scheduler concurrency policy, distributed lock, or endpoint-side lease when one run can outlast its cadence. The cron expression alone does not prevent overlap.
Overlap anti-patternHow do I debug a scheduled API call that never arrives?
Check the scheduler's run history first, then inspect DNS, TLS, authentication, timeout, response status, and retry logs. Test the same request manually with identical headers and body.
Debugging checklistCrontap
Can I schedule API calls programmatically from my app?
Yes. Crontap exposes a REST API where you can POST a URL + cron expression and it fires accordingly. EventBridge Scheduler has a CreateSchedule API. Vercel cron is configured at deploy time only. Pick the model that matches your dynamic-scheduling needs.
API scheduling optionsWrite the cron here. Run it on Crontap.
Point Crontap at any URL. Pick any cron. Done.
WordPress, Shopify, Railway, Cloud Run, Vercel, HubSpot, Ghost, your own box. If it answers HTTP, Crontap can drive it on a clock you can read, in the timezone that actually matters, and page you when something breaks.
1.9k+ teams · Free forever tier · No credit card