One API to validate, resolve, and convert datetimes across every IANA timezone — with explicit handling of DST gaps, overlaps, and ambiguity. Half-hour offsets, 45-minute offsets, 30-minute DST shifts (e.g. Nepal, Lord Howe) — all covered.
Not needed for simple UTC display formatting. Built for apps that interpret and act on user-entered local times.
Every timezone library can convert times. None of them tell you when a local time doesn't exist or happens twice. That's where the bugs hide.
User books a meeting at 2:30 AM on spring-forward day. That time doesn't exist. Most libraries silently shift it to 3:30 AM. Your app stores it with no warning.
Missed standups. No-show clients. Support tickets you can't explain.
User picks 1:30 AM on fall-back day. That time happens twice. Your app silently picks one.
Double charges. Duplicate jobs. An incident at 2 AM you won't enjoy debugging.
Naive UTC conversion picks -05:00 when it should be -04:00. No error. Just wrong.
Every scheduled task off by one hour, twice a year. No error. No alert. Just wrong.
Four endpoints. Explicit handling. Zero ambiguity.
Is this time valid, invalid (DST gap), or ambiguous (DST overlap)? Get an explicit answer with suggested fixes.
Get a deterministic UTC instant from any local time. You choose the policy: earlier, later, or reject.
UTC to local, any timezone. Always unambiguous, always correct. Sub-50ms p95 latency.
Validate, resolve, or convert up to 100 datetimes in a single request. Partial failures handled per-item.
If your app schedules, bills, or automates anything across timezones, you need this.
Prevent "phantom meetings" that fire at the wrong hour during DST transitions.
Jobs that must run exactly once, even when clocks spring forward or fall back.
Charges processed at the right time, not an hour early because of a silent offset error.
Give your agent a tool that validates times before booking. Ships with function-calling schemas.
One API key. One HTTP call. Instant value.
$ npm install chronoshield # coming soon
import { ChronoShieldClient } from "chronoshield";
const cg = new ChronoShieldClient({ apiKey: "YOUR_KEY" });
const result = await cg.validate({
local_datetime: "2026-03-08T02:30:00",
time_zone: "America/New_York",
});
// result.status === "invalid", reason_code === "DST_GAP"
Four endpoints. Zero ambiguity.
Try it live in the API Playground →
$ curl -X POST https://chronoshieldapi.com/v1/datetime/validate \
-H "x-api-key: YOUR_KEY" \
-d '{
"local_datetime": "2026-03-08T02:30:00",
"time_zone": "America/New_York"
}'
{
"status": "invalid",
"reason_code": "DST_GAP",
"message": "This time does not exist due to DST transition.",
"suggested_fixes": [
{ "strategy": "next_valid_time", "local_datetime": "2026-03-08T03:00:00" }
]
}
ChronoShield API isn't a thin layer over a timezone library. It's correctness infrastructure with the operational maturity to match.
Start free. Upgrade when you need to. Scale with annual enterprise plans.
One DST incident costs more than a year of Pro. Most timezone bugs cost hours of debugging — ChronoShield API prevents them for pennies per request.
Prove it works. No credit card required.
Perfect for prototyping and validating the integration.
Self-serve production. Never debug a DST incident again.
Best for scheduling, booking, billing, and workflow apps that accept user-entered times.
Procurement-ready production. Annual contracts with committed usage and the operational guarantees your team needs.
Move to Enterprise when you need annual billing, procurement support, SLAs, or higher annual volume.
Best for one team that needs annual billing, SLAs, and headroom to grow.
Best for multi-product or high-volume SaaS with scheduling, billing, or automation.
For large platforms, regulated industries, and high-stakes workflows.
All enterprise plans include: annual contract • invoice billing • PostgreSQL-backed persistence • batch support • declining overage rates at volume
Everything you need to evaluate, integrate, and ship with confidence.
Versioned API behavior. Breaking changes announced in the changelog before they ship.
Endpoints, parameters, error codes, and SDK quickstart guides.
Try every endpoint live in the browser. No setup required.
Uptime, database health, and version info — updated in real time.
Every feature, fix, and improvement. Versioned and dated.