/api/astro/moon-illumination/1 créditIllumination et phase de la Lune
La part éclairée de la Lune, sous forme de véritable fraction. Calculée à partir de l’élongation entre le Soleil et la Lune : éclairé = (1 - cos(élongation)) / 2, soit 0 à la nouvelle lune, 0.5 à chaque quartier et 1 à la pleine lune. Renvoyée sous forme de fraction et de pourcentage, avec l’élongation, l’angle de phase, l’indication que la Lune est croissante ou non, et le nom usuel de la phase. Cet endpoint existe parce que la clé du moteur nommée `get_illumination` ne renvoie pas l’illumination, mais la MAGNITUDE APPARENTE — environ -26.7 pour le Soleil et entre -6 et -12 pour la Lune selon la phase. Une fraction ne peut être ni négative ni égale à -26, et tout affichage « pourcentage éclairé » branché sur ce champ affiche n’importe quoi. Cette valeur est quand même renvoyée ici, sous le nom qui lui convient : apparent_magnitude, où une valeur plus petite signifie un astre plus brillant.
https://api.occultapi.com/api/astro/moon-illumination/Authentification
Envoyez votre clé dans l’en-tête X-API-Key. Une clé est un identifiant côté serveur : ne la placez jamais dans du JavaScript exécuté par le navigateur ni dans une application mobile.
X-API-Key: yt_live_a1b2c3d4_…
Content-Type: application/jsonChamps de la requête
| Champ | Type | Obligatoire | Remarques |
|---|---|---|---|
| date_time | string (date-time) | obligatoire | Le moment du calcul, en ISO 8601. Incluez TOUJOURS un décalage ou un Z final - une valeur sans fuseau est lue comme Asia/Kolkata (UTC+05:30), et non comme UTC, et peut renvoyer le résultat de la veille avec un statut 200. '2026-09-01T06:00:00Z' et '2026-09-01 06:00:00' sont des instants différents et donnent des réponses différentes. |
| altitude | number (double) | facultatif | Altitude de l’OBSERVATEUR en mètres, pas la hauteur d’un corps. |
| keys | array | facultatif | Les calculs à renvoyer, sous forme de liste de noms. Consultez le tableau des clés de cet endpoint ; un nom non reconnu fait rejeter toute la requête. Un appel coûte un crédit quel que soit le nombre de clés demandées : demandez donc tout ce dont vous avez besoin en une seule fois plutôt que de faire plusieurs appels. |
| latitude | number (double) | facultatif | Latitude du lieu, en degrés décimaux. Positive au nord, négative au sud. Exemple : 26.9124 pour Jaipur, 40.7128 pour New York. Les minutes et les secondes ne sont pas acceptées - convertissez d’abord. min -89.9 · max 89.9 |
| longitude | number (double) | facultatif | Longitude du lieu, en degrés décimaux. Positive à l’est, négative à l’ouest. Exemple : 75.7873 pour Jaipur, -74.0060 pour New York. Attention au signe : sans le moins, New York se retrouve en Chine. min -180 · max 180 |
| planet_names | array | facultatif | Ignoré. Cet endpoint lit toujours le Soleil et la Lune. |
| time_zone | number (double) | facultatif | Décalage UTC. Ce champ ou timezone_as_float ; ils sont équivalents. min -12 · max 14 |
| timezone_as_float | number (double) | facultatif | Décalage UTC du lieu, en heures, sous forme décimale. Exemple : 5.5 pour l’Inde (UTC+05:30), -5 pour New York en hiver, 5.75 pour le Népal. Cette valeur n’est PAS contrôlée par rapport à date_time - si les deux divergent, vous obtenez une réponse réussie pour le mauvais moment ; tirez donc les deux de la même source. Utilisez le décalage en vigueur à cette date, pas celui d’aujourd’hui : une naissance en été dans un pays qui applique l’heure d’été exige le décalage d’été. min -12 · max 14 |
Exemple de requête
curl -X POST https://api.occultapi.com/api/astro/moon-illumination/ \
-H "X-API-Key: $OCCULT_API_KEY" \
-H "Content-Type: application/json" \
-d '{"date_time":"2026-09-09T12:00:00+00:00","latitude":26.9124,"longitude":75.7873,"timezone_as_float":0}'Réponse
{
"data": {
"illuminated_fraction": 0.034082,
"illuminated_percent": 3.4082,
"elongation_degrees": 21.277,
"phase_angle_degrees": 338.723,
"waxing": false,
"phase_name": "New moon",
"apparent_magnitude": {
"moon": -6.123776,
"sun": -26.726421
},
"longitudes": {
"sun": 166.834,
"moon": 145.557
},
"notes": {
"apparent_magnitude": "The engine key named get_illumination returns apparent magnitude, not illumination. Smaller is brighter; it is negative for both of these bodies. Use illuminated_fraction for how much of the disc is lit."
}
},
"status": 200,
"is_error": false,
"message": "successful"
}Réponse capturée lors d’un vrai appel, avec exactement la requête ci-dessus. Les résultats se trouvent dans data.
Erreurs
Les erreurs du contrôle de clé et de crédits renvoient { "error": "…", "message": "<code>", "is_error": true }. Affichez error à vos utilisateurs et basez votre logique sur message. Voir la référence des erreurs.