Cron API

Explain, validate, and compute next run times for any cron expression as clean JSON. No key needed during beta. All parsing is standard 5-field (or 6-field with seconds) cron.

Try it

*/15 * * * *
Get this as JSON (developer API)
curl "https://cron.wrapper-agency.com/api/v1/cron?expr=*%2F15%20*%20*%20*%20*&tz=UTC"

Free cron API — no key during beta. Parsing is standard 5-field (or 6-field with seconds) cron, computed with cron-parser.

Free endpoint — GET /api/v1/cron

GET https://cron.wrapper-agency.com/api/v1/cron?expr=0 0 * * *&tz=UTC

{
  "expr": "0 0 * * *",
  "valid": true,
  "human": "At 12:00 AM",
  "error": null,
  "timezone": "UTC",
  "nextRuns": [
    { "iso": "2026-06-20T00:00:00.000Z", "pretty": "...", "relative": "in 7h" }
  ],
  "source": "cron-parser & cronstrue"
}

Parameters: expr (required), tz (IANA timezone, default UTC), n (1–50 next runs, default 5). Invalid expressions return HTTP 400 with { valid: false, error }. CORS is open.

Paid endpoint — POST /api/v1/pro/cron (batch)

POST https://cron.wrapper-agency.com/api/v1/pro/cron
Content-Type: application/json

{ "expressions": ["0 9 * * 1-5", "*/5 * * * *"], "tz": "Europe/Paris", "n": 3 }

-> { "count": 2, "validCount": 2, "results": [ ... ] }

Validate up to 100 expressions per call. Settled per call in USDC on Base via x402 — built for agents, schedulers, and CI pipelines that need to check a whole crontab at once.

Why CronKit

Standard cron, done right
Backed by cron-parser and cronstrue — the same libraries used across the Node ecosystem. Ranges, steps, lists, and last-day (L) all work.
Timezone-aware
Next run times computed in any IANA timezone, DST included.
One call, one answer
Free for single lookups; pay per call only for batch validation.

New to cron syntax? Read the cron expression guide, or see the OpenAPI spec.