Free time-zone API
Live time-zone data for 500+ cities — IANA time zones, coordinates, country and flag. No API key. No sign-up. No rate limits. Free for personal and commercial use with attribution. Perfect for building world clocks, meeting schedulers and travel apps.
Base URL
https://timedatelive.com/api/
All endpoints return JSON with permissive CORS. Data is static and CDN-cached — fast and reliable.
GET /api/cities.json
All 500+ cities with their time zones and coordinates.
fetch("https://timedatelive.com/api/cities.json")
.then(r => r.json())
.then(data => console.log(data.count, data.cities[0]));
// Response:
{
"count": 500,
"cities": [
{
"slug": "lisbon",
"name": "Lisbon",
"country": "Portugal",
"timezone": "Europe/Lisbon",
"lat": 38.72,
"lon": -9.14,
"flag": "🇵🇹"
}
// ...
]
}GET /api/timezones.json
All distinct IANA time zones covered.
fetch("https://timedatelive.com/api/timezones.json")
.then(r => r.json());
// { "count": 119, "timezones": ["Africa/Cairo", "America/New_York", ...] }Getting the live time
Time zones are IANA identifiers, so you can compute live local time entirely in the browser — no server needed:
const tz = "Asia/Tokyo"; // from /api/cities.json
const now = new Intl.DateTimeFormat("en-GB", {
timeZone: tz, hour: "2-digit", minute: "2-digit", second: "2-digit"
}).format(new Date());
// "14:32:07"Attribution
Free for personal and commercial use. Please include a visible link back to timedatelive.com wherever the data appears. That link is what keeps this API free.
Prefer a drop-in visual? Use our free embeddable widgets — no code required.