API des heures de coucher et de lever du soleil
Nous proposons une API gratuite qui fournit les heures de coucher et de lever du soleil pour une latitude et une longitude données.
Veuillez noter que l’attribution est obligatoire si vous utilisez notre API. Consultez la section « Limites d’utilisation et attribution » ci-dessous pour en savoir plus.
Ceci est la version 1 de l'API — maintenue indéfiniment.
Recommandée si vous l'utilisez déjà. Pour un nouveau projet, utilisez plutôt la version 2 de l'API.
Cette version continuera de fonctionner exactement comme aujourd'hui. Les nouveautés — fuseau horaire local automatique, horodatages ISO 8601, heure dorée et heure bleue, position solaire et plages de dates — ne sont que dans la version 2 de l'API.
Précision des calculs
Cette version de l'API conserve ses calculs d'origine pour ne pas casser le code existant. Ils comportent une erreur connue sur les heures de lever et de coucher : les levers arrivent un peu trop tôt, les couchers un peu trop tard, et la journée paraît donc un peu plus longue qu'elle ne l'est. C'est corrigé dans la version 2 de l'API.
L’écart dépend du lieu et de la date : environ une minute près de l’équateur et jusqu’à huit minutes environ aux hautes latitudes. Les heures de crépuscule sont elles aussi légèrement décalées : quelques secondes près de l’équateur et jusqu’à environ une minute aux hautes latitudes.
Documentation de l’API
Notre API REST est très simple : il suffit de faire une requête GET à https://api.sunrise-sunset.org/json. Inutile de vous inscrire ou d’obtenir une clé API.
Paramètres de la requête
- lat (float): Latitude en degrés décimaux. Obligatoire.
- lng (float): Longitude en degrés décimaux. Obligatoire.
- date (string): Date au format AAAA-MM-JJ. Accepte également d'autres formats de date et même des formats de date relative. Si elle n'est pas présente, la date est par défaut la date du jour. Facultatif.
- callback (string) : Nom de la fonction de rappel pour la réponse JSONP. Facultatif.
- formatted (integer): 0 ou 1 (1 par défaut). Avec 0, les heures de la réponse sont au format ISO 8601 et day_length est exprimée en secondes. Facultatif.
- tzid (string): Un identifiant de fuseau horaire, par exemple : UTC, Africa/Lagos, Asia/Hong_Kong ou Europe/Lisbon. La liste des identifiants valides est disponible dans la liste des fuseaux horaires pris en charge. S’il est fourni, les heures de la réponse sont exprimées dans ce fuseau horaire. Facultatif.
Exemples de requêtes
Voici quelques exemples de requêtes pour obtenir les heures de lever et de coucher du soleil d’un lieu avec notre API :
https://api.sunrise-sunset.org/json?lat=36.7201600&lng=-4.4203400 https://api.sunrise-sunset.org/json?lat=36.7201600&lng=-4.4203400&date=today https://api.sunrise-sunset.org/json?lat=36.7201600&lng=-4.4203400&date=2026-10-15 https://api.sunrise-sunset.org/json?lat=36.7201600&lng=-4.4203400&formatted=0
Réponse
La réponse de l'API comprend les heures des événements solaires dans le lieu donné. Les données sont formatées en JSON.
Notez qu’à moins de fournir un paramètre tzid, toutes les heures sont exprimées en UTC et ne tiennent pas compte de l’heure d’été.
Un exemple de réponse :
{
"results":
{
"sunrise":"7:27:02 AM",
"sunset":"5:05:55 PM",
"solar_noon":"12:16:28 PM",
"day_length":"9:38:53",
"civil_twilight_begin":"6:58:14 AM",
"civil_twilight_end":"5:34:43 PM",
"nautical_twilight_begin":"6:25:47 AM",
"nautical_twilight_end":"6:07:10 PM",
"astronomical_twilight_begin":"5:54:14 AM",
"astronomical_twilight_end":"6:38:43 PM"
},
"status":"OK",
"tzid": "UTC"
}
Réponse sans formatage de la date :
{
"results":
{
"sunrise":"2015-05-21T05:05:35+00:00",
"sunset":"2015-05-21T19:22:59+00:00",
"solar_noon":"2015-05-21T12:14:17+00:00",
"day_length":51444,
"civil_twilight_begin":"2015-05-21T04:36:17+00:00",
"civil_twilight_end":"2015-05-21T19:52:17+00:00",
"nautical_twilight_begin":"2015-05-21T04:00:13+00:00",
"nautical_twilight_end":"2015-05-21T20:28:21+00:00",
"astronomical_twilight_begin":"2015-05-21T03:20:49+00:00",
"astronomical_twilight_end":"2015-05-21T21:07:45+00:00"
},
"status":"OK",
"tzid": "UTC"
}
Consultez notre glossaire des termes astronomiques pour comprendre chaque élément de la réponse.
Codes d'état
Le champ « status » de la réponse de l’API indique l’état de la requête. Il peut prendre les valeurs suivantes :
- "OK": indique qu'aucune erreur ne s'est produite ;
- "INVALID_REQUEST": indique que les paramètres lat ou lng sont manquants ou invalides ;
- "INVALID_DATE": indique que le paramètre de date est manquant ou invalide ;
- "UNKNOWN_ERROR": indique que la demande n'a pas pu être traitée en raison d'une erreur du serveur. La demande peut aboutir si vous réessayez.
- "INVALID_TZID": indique que la valeur du paramètre tzid n’est pas valide ; la réponse est valide mais les heures sont en UTC.
Comment utiliser l'API à partir d'une requête AJAX ?
Utilisez le paramètre callback pour recevoir une réponse JSONP et contourner les restrictions entre domaines (cross-domain) :
https://api.sunrise-sunset.org/json?lat=36.7201600&lng=-4.4203400&callback=mycallback
Limites d'utilisation et attribution
L’API de lever et coucher du soleil est gratuite. Elle ne doit pas être utilisée au-delà d’un volume raisonnable de requêtes, ni de façon excessive ou abusive. L’attribution est obligatoire : voyez comment nous citer.
Annonces
Abonnez-vous à notre lettre d’information sur l’API pour être tenu au courant des changements et des annonces concernant le service :
Soyez averti de chaque changement : sur GitHub, ouvrez notre dépôt de l’API et choisissez Watch → Custom → Releases, ou suivez notre flux RSS.
💡 Vous avez une idée géniale ? 🤦 Vous avez trouvé des erreurs ?
Nous améliorons constamment ce site web !
Si vous avez une idée de contenu ou d'information à inclure dans cette page ou si vous avez trouvé une erreur, n'hésitez pas à nous en faire part !
Journal des modifications
- 14 octobre 2026 : la version 1 de l’API refuse désormais les coordonnées hors limites (une latitude hors de -90..90 ou une longitude hors de -180..180) avec
INVALID_REQUEST. Elle répondait auparavant avec des heures qui n’avaient aucun sens. Les requêtes valides ne changent pas. - 5 avril 2026 : sortie de l’API v2 ! Fuseau horaire local par défaut, ISO 8601, heure dorée et heure bleue, position solaire, plages de dates et erreurs HTTP explicites. L’API classique ne change pas et reste prise en charge indéfiniment.
- 27 décembre 2023 : plusieurs corrections de bugs mineurs.
- 5 décembre 2023 : le nouveau paramètre tzid vous permet de choisir le fuseau horaire de vos requêtes.
- 29 novembre 2023 : mise en ligne de la page d’état de l’API. Abonnez-vous pour être averti si le service tombe en panne.
- 21 septembre 2018 : nouveau serveur pour l’API ! Les problèmes d’indisponibilité ont été corrigés.
- 5 avril 2017 : les requêtes HTTPS sont acceptées.
- 26 février 2016 : le service vérifie désormais que les dates sont des dates grégoriennes valides.
- 22 mai 2015 : prise en charge des dates ISO 8601 grâce au nouveau paramètre « formatted ».
- 16 mai 2015 : correction de bugs mineurs.
- 22 avril 2015 : activation de CORS.
- 15 mars 2015 : le type de contenu de la réponse est désormais « application/json ».
- 23 février 2015 : réponse JSONP disponible !
- 22 décembre 2014 : nouvelles données dans la réponse : midi solaire, durée du jour et crépuscules civil, nautique et astronomique (début et fin).
- 16 décembre 2014 : la première version de l’API est disponible !
Contact
N'hésitez pas à nous contacter pour toutes vos questions relatives à l'API.
If you enjoy using our API please consider supporting the project by buying us a coffee!