Recherche de fuseau horaire

Le fuseau horaire d'un point, et le décalage en vigueur à cet endroit à un moment donné.

GEThttps://api.mygeocode.com/v1/timezone

Paramètres

ParamètreTypeDescription
latobligatoire*nombreDe -90 à 90.
lonobligatoirenombreDe -180 à 180.
locationsfacultatifchaîne*Alternative à lat et lon : jusqu'à 100 points sous la forme lat,lon|lat,lon|.... Chaque point compte comme une requête ; la réponse contient un tableau results dans l'ordre d'envoi.
tzfacultatifchaîne*Alternative aux coordonnées : un identifiant de zone IANA comme Europe/Zurich (un identifiant Windows est également accepté). Renvoie les mêmes champs pour cette zone, sans recherche de limites.
timestampfacultatifentierHeure Unix en secondes. Par défaut : maintenant. Tout moment de 1900 à 2100 est accepté ; les décalages futurs suivent les règles publiées actuellement.
languagefacultatifchaîneLangue de name, par exemple de ou pt-BR. Par défaut, l'anglais.
keyfacultatifchaîneClé d'API, si elle n'est pas envoyée dans un en-tête.

Exemple

$ curl -H "X-API-Key: YOUR_KEY" "https://api.mygeocode.com/v1/timezone?lat=-33.8688&lon=151.2093&timestamp=1767225600"
const url = new URL("https://api.mygeocode.com/v1/timezone");
url.searchParams.set("lat", -33.8688);
url.searchParams.set("lon", 151.2093);
url.searchParams.set("timestamp", 1767225600); // 2026-01-01T00:00:00Z

const tz = await (await fetch(url, { headers: { "X-API-Key": "YOUR_KEY" } })).json();
console.log(tz.timezone, tz.utc_offset, tz.dst);
import requests

tz = requests.get("https://api.mygeocode.com/v1/timezone",
                  params={"lat": -33.8688, "lon": 151.2093, "timestamp": 1767225600}, headers={"X-API-Key": "YOUR_KEY"}, timeout=5).json()
print(tz["timezone"], tz["utc_offset"], tz["dst"])
Réponse
{
  "status": "ok",
  "lat": -33.8688,
  "lon": 151.2093,
  "timezone": "Australia/Sydney",
  "abbreviation": "AEDT",
  "utc_offset": "+11:00",
  "utc_offset_seconds": 39600,
  "dst": true,
  "timestamp": 1767225600,
  "local_time": "2026-01-01T11:00:00+11:00",
  "country_code": "AU",
  "next_transition": { "timestamp": 1775316000, "utc_offset": "+10:00", "dst": false }
}

Champs de la réponse

ChampTypeDescription
timezonechaîneNom IANA. Dans les eaux internationales, Etc/GMT+n ou Etc/GMT-n (notez que la convention de signe est inversée, comme dans IANA).
abbreviationchaîneAbréviation à l'instant timestamp. Pour l'affichage uniquement ; non unique.
namechaîneNom complet en vigueur à l'instant timestamp, par exemple Australian Eastern Daylight Time.
utc_offsetchaîne±HH:MM à l'instant timestamp.
utc_offset_secondsentierLa même valeur sous forme de nombre.
raw_offset_seconds, dst_offset_secondsentierDécalage standard et part de l'heure d'été qui s'y ajoute (0 lorsque l'heure d'été n'est pas en vigueur). Leur somme est utc_offset_seconds.
dstbooléenHeure d'été en vigueur à l'instant timestamp.
timestampentierLe moment décrit.
local_timechaîneHeure locale RFC 3339 avec décalage.
country_codechaîne ou nullISO 3166-1 alpha-2, null en mer.
is_oceanbooléenVrai pour les zones Etc/GMT utilisées dans les eaux internationales.
windows_timezonechaîne ou nullL'identifiant de fuseau horaire Windows correspondant selon le CLDR, par exemple W. Europe Standard Time.
next_transitionobjet ou nullLe prochain changement de décalage après timestamp, si la zone en a un.

Remarques

La même recherche aux formats d'autres fournisseurs

Si vous avez déjà du code écrit pour l'un de ces fournisseurs, gardez-le : l'hôte compatible accepte le même chemin et les mêmes paramètres et répond dans le format de réponse de ce fournisseur, avec cet endpoint derrière. Voir le fonctionnement des hôtes compatibles.

FournisseurHôteChemin
Google Maps Platformgapi.mygeocode.com/maps/api/timezone/json?location=lat,lng&timestamp=...&language=..
Bing Maps REST Servicesbing.mygeocode.com/REST/v1/TimeZone/{lat},{lon}?datetime=...
/REST/v1/TimeZone/?query=lat,lon
/REST/v1/TimeZone/List?timezoneStandard=iana|windows
/REST/v1/TimeZone/Convert?datetime=...&fromtz=...&desttz=...
LocationIQlocationiq.mygeocode.com/v1/timezone?lat=...&lon=...

Erreurs

400 invalid_request lorsque lat ou lon est absent ou hors limites, que tz n'est pas une zone connue, qu'il y a plus de 100 points, ou que timestamp est en dehors de la plage 1900 à 2100. 503 unavailable lorsque les données de limites ne sont pas chargées ; rien n'est compté.