/api/astro/planet-horizon/1 créditCoordonnées horizontales des planètes
La position actuelle d’un corps dans le ciel : azimut, hauteur, et s’il est levé ou non. Les coordonnées horizontales sont ce qu’il faut pour pointer vers quelque chose — un appareil photo, un télescope ou un doigt. L’azimut se mesure en degrés dans le sens horaire à partir du plein nord ; la hauteur, en degrés au-dessus de l’horizon, devient négative une fois le corps couché. `above_horizon` et un cap sur une rose des vents à seize directions sont calculés ici au lieu d’être laissés à votre charge, car la vraie question est « est-il levé ? », et une hauteur négative s’affiche comme une position tout à fait plausible. Accepte le décalage UTC sous `timezone_as_float` ou `time_zone` ; l’endpoint parent n’accepte que le second.
https://api.occultapi.com/api/astro/planet-horizon/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 | Corps à indiquer, p. ex. ["SUN", "MOON", "MARS"]. |
| 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/planet-horizon/ \
-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,"planet_names":["SUN","MOON","MARS"]}'Réponse
{
"data": {
"observer": {
"latitude": 26.9124,
"longitude": 75.7873,
"elevation_m": 0
},
"bodies": {
"SUN": {
"azimuth": 268.533017,
"compass": "W",
"altitude": 14.482392,
"above_horizon": true
},
"MOON": {
"azimuth": 284.783473,
"compass": "WNW",
"altitude": 0.890481,
"above_horizon": true
},
"MARS": {
"azimuth": 313.736218,
"compass": "NW",
"altitude": -22.802352,
"above_horizon": false
}
}
},
"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.