Use case
The city picker that returns the time zone
When an organizer picks a city, the same result carries its time zone. Store it with the event and show the correct start time to every attendee, with no second lookup.
30,000 requests a month free, with commercial use. No card needed.
- 918,201 Names
- 13 Languages
- 30,000 Free requests a month
Live API
Type a city. Each result in the response carries its time zone.
/v1/cities/autocomplete curl "https://api.onde.earth/v1/cities/autocomplete?q=kyoto" \
-H "Authorization: Bearer $ONDE_KEY" const url = 'https://api.onde.earth/v1/cities/autocomplete'
const query = new URLSearchParams({ q: 'kyoto', key: 'onde_pk_...' })
const response = await fetch(`${url}?${query}`)
const { data } = await response.json() const url = 'https://api.onde.earth/v1/cities/autocomplete'
const query = new URLSearchParams({ q: 'kyoto' })
const response = await fetch(`${url}?${query}`, {
headers: { Authorization: `Bearer ${process.env.ONDE_KEY}` }
})
const { data } = await response.json() import os
import requests
response = requests.get(
"https://api.onde.earth/v1/cities/autocomplete",
params={"q": "kyoto"},
headers={"Authorization": f"Bearer {os.environ['ONDE_KEY']}"},
)
data = response.json()["data"] {
"data": [
{
"id": "city_39sy1dm2dj",
"name": "Kyoto",
"localName": "京都市",
"type": "city",
"parentCityId": null,
"country": {
"code": "JP",
"name": "Japan"
},
"region": {
"id": "region_yjwfrtj0fe",
"isoCode": "JP-26",
"name": "Kyoto"
},
"coordinates": {
"latitude": 35.02107,
"longitude": 135.75385
},
"population": 1463723,
"timeZone": "Asia/Tokyo",
"isCapital": false,
"disputed": false,
"match": "exact"
}
],
"meta": {
"dataset": "2026-11-17"
}
} One wrong time zone and people miss the start
A start time is only correct in the time zone of the event. Get it wrong, and attendees arrive an hour late and write to your support team.
-
A standard time zone name
Each city has its IANA time zone name, which calendars and date libraries read, with the daylight saving rules.
-
No second lookup
The time zone comes in the same result as the city.
-
Events near me
Turn the location of a visitor into a city and show the events there. We do not store the location.
-
An archive that stays correct
A city ID never moves to a different place, so past events keep their city.
Questions
- Is the time zone right for every venue?
- It is the time zone of the city. Close to a zone border, a venue can be in a different zone.
- Does Onde store venue addresses?
- No. Onde gives you the city. Keep venue addresses in your own data.
- What counts as a request?
- Each suggestion list, city lookup, and location lookup counts one request, at one price.
Get the time zone with every city
Create a key, add the field to your event form, and store the time zone with each event.
- No card needed
- 30,000 requests a month free
- Commercial use on the Free plan
- Store every result for good
- Public key locked to your domains