/api/astro/dasha/drill/1 créditExploration détaillée d’une dasha
Une seule branche d’un arbre de dasha, au lieu de l’arbre entier. Sur les autres endpoints de dasha, levels limite la PROFONDEUR mais renvoie toutes les périodes de cette profondeur : levels=3 sur la Vimshottari donne chaque pratyantardasha de chaque antardasha de chaque mahadasha, soit environ 95 KB. Or un écran où l’on touche une mahadasha pour la déplier n’a besoin que d’une branche. Indiquez à cet endpoint la chaîne de maîtres à suivre : il ne renvoie que ce qui se trouve sous la période désignée. {"lords": ["moon", "mars"], "levels": 1} renvoie les pratyantardashas de l’antardasha de Mars dans la mahadasha de la Lune — environ 1.8 KB, contre 95 KB pour l’arbre complet. Les noms de maîtres sont insensibles à la casse, et path, dans la réponse, reprend la chaîne effectivement trouvée. Utilisez un nom de planète pour les dashas de nakshatra et un nom de signe pour les dashas rashi de Jaimini ; un maître non reconnu renvoie une erreur 400 qui liste les valeurs possibles à ce niveau. On gagne en TRANSFERT, pas en CALCUL. Le moteur construit toujours l’arbre jusqu’à la profondeur demandée, puis cet endpoint écarte le reste : une exploration n’est donc pas plus rapide à calculer que l’appel levels= équivalent. Le gain porte sur la bande passante, l’analyse du JSON et la mémoire qu’un navigateur ou un téléphone consacre à un arbre dont il n’affiche qu’une branche.
https://api.occultapi.com/api/astro/dasha/drill/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 |
|---|---|---|---|
| latitude | number (double) | obligatoire | 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 -90 · max 90 |
| longitude | number (double) | obligatoire | 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 |
| dasha_direction | string | facultatif | forwardbackward |
| dasha_start | string | facultatif | Le cycle par lequel commence la chronologie. currentnextprevious |
| date_time | string (date-time) | facultatif | 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. |
| datetime | string (date-time) | facultatif | 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. Même signification que date_time, que d’autres endpoints désignent sous un autre nom. |
| days_in_year | number (double) | facultatif | Longueur de l’année utilisée pour mesurer les périodes. 360 pour l’année savana classique, 365.25 pour l’année julienne. min 360 · max 365.256364 |
| levels | integer | facultatif | Nombre de niveaux à renvoyer SOUS la période trouvée. 1 donne ses sous-périodes directes. min 1 · max 4 |
| lords | array | facultatif | La chaîne de maîtres de période à suivre depuis le sommet, du plus externe au plus interne — p. ex. ["moon", "mars"] signifie « dans la mahadasha de la Lune, puis dans son antardasha de Mars ». Un nom de planète pour les dashas de nakshatra, un nom de signe pour les dashas rashi. Une liste vide renvoie le niveau supérieur. |
| node | string | facultatif | Modèle de nœud lunaire. Obligatoire sur l’endpoint parent rashi, qui n’a pas de valeur par défaut ; ici, une valeur par défaut est prévue. truemean |
| system | string | facultatif | Système de dasha. Voir /api/astro/dasha/systems/. Par défaut : Vimshottari. |
| 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/dasha/drill/ \
-H "X-API-Key: $OCCULT_API_KEY" \
-H "Content-Type: application/json" \
-d '{"latitude":26.9124,"longitude":75.7873,"dasha_direction":"forward","dasha_start":"current","date_time":"2026-09-01 06:00:00","node":"true","timezone_as_float":5.5}'Réponse
{
"data": {
"system": "Vimshottari",
"engine_id": "VimshottariDasha",
"family": "nakshatra",
"lord_type": "planet",
"levels": 1,
"level_names": [
"mahadasha"
],
"cycle_years": 120,
"conditional": false,
"path": [],
"depth": 0,
"child_level": "mahadasha",
"periods": [
{
"lord": "ketu",
"start": "2025-11-21 14:30:19.062048+00:00",
"end": "2032-11-21 08:30:19.062048+00:00",
"children": []
},
{
"lord": "venus",
"start": "2032-11-21 08:30:19.062048+00:00",
"end": "2052-11-21 08:30:19.062048+00:00",
"children": []
},
{
"lord": "sun",
"start": "2052-11-21 08:30:19.062048+00:00",
"end": "2058-11-21 20:30:19.062048+00:00",
"children": []
},
{
"lord": "moon",
"start": "2058-11-21 20:30:19.062048+00:00",
"end": "2068-11-21 08:30:19.062048+00:00",
"children": []
},
{
"lord": "mars",
"start": "2068-11-21 08:30:19.062048+00:00",
"end": "2075-11-22 02:30:19.062048+00:00",
"children": []
},
{
"lord": "rahu",
"start": "2075-11-22 02:30:19.062048+00:00",
"end": "2093-11-21 14:30:19.062048+00:00",
"children": []
},
{
"lord": "jupiter",
"start": "2093-11-21 14:30:19.062048+00:00",
"end": "2109-11-22 14:30:19.062048+00:00",
"children": []
},
{
"lord": "saturn",
"start": "2109-11-22 14:30:19.062048+00:00",
"end": "2128-11-22 08:30:19.062048+00:00",
"children": []
},
{
"lord": "mercury",
"start": "2128-11-22 08:30:19.062048+00:00",
"end": "2145-11-22 14:30:19.062048+00:00",
"children": []
}
],
"metadata": {
"calculation_time_ms": 0,
"max_levels": 1,
"data_size_bytes": 1171,
"data_size_mb": 0,
"structure": "nested_hierarchical"
},
"boundary_note": "The last sub-period of each period ends 18 hours before its parent does. Sibling periods are contiguous and the first child starts with its parent, but the final 18 hours of every period have no sub-period covering them. This comes from the calculation engine and is reported rather than hidden."
},
"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.