Direkt zum Inhalt
POST/api/astro/dasha/drill/1 Credit

Dasha-Drilldown

Ein einzelner Zweig eines Dasha-Baums statt des ganzen Baums. Bei den anderen Dasha-Endpoints begrenzt levels die TIEFE, liefert aber trotzdem alle Perioden bis zu dieser Tiefe: levels=3 bei Vimshottari bedeutet jede Pratyantardasha unter jeder Antardasha unter jeder Mahadasha, rund 95 KB. Eine Ansicht, in der jemand eine Mahadasha antippt, um sie aufzuklappen, braucht davon nur einen Zweig. Gib diesem Endpoint die Kette der Herrscher, der er folgen soll, und er liefert nur, was unter der genannten Periode liegt. {"lords": ["moon", "mars"], "levels": 1} liefert die Pratyantardashas innerhalb der Mars-Antardasha der Mond-Mahadasha – etwa 1.8 KB statt der 95 KB des gesamten Baums. Herrschernamen werden ohne Beachtung der Groß-/Kleinschreibung abgeglichen, und path in der Antwort gibt die tatsächlich gefundene Kette zurück. Verwende Planetennamen für die Nakshatra-Dashas und Zeichennamen für die Rashi-Dashas nach Jaimini; ein unbekannter Herrscher liefert 400 mit einer Liste der Werte, die auf dieser Ebene verfügbar sind. Gespart wird ÜBERTRAGUNG, nicht BERECHNUNG. Der Rechenkern baut den Baum weiterhin bis zur angefragten Tiefe auf, und dieser Endpoint verwirft den Rest; ein Drilldown ist also nicht schneller berechnet als der entsprechende Aufruf mit levels=. Du sparst Bandbreite, JSON-Parsing und den Speicher, den ein Browser oder Smartphone für einen Baum braucht, von dem nur ein Zweig angezeigt wird.

https://api.occultapi.com/api/astro/dasha/drill/
Anfrage testen

Authentifizierung

Schick deinen Schlüssel im Header X-API-Key mit. API-Schlüssel sind Zugangsdaten für den Server: Sie gehören nie in Browser-JavaScript oder in eine mobile App.

X-API-Key: yt_live_a1b2c3d4_…
Content-Type: application/json

Felder der Anfrage

FeldTypPflichtHinweise
latitudenumber (double)Pflicht

Breitengrad des Ortes in Dezimalgrad. Positiv ist Nord, negativ ist Süd. Beispiel: 26.9124 für Jaipur, 40.7128 für New York. Minuten und Sekunden werden nicht akzeptiert – vorher umrechnen.

min -90 · max 90

longitudenumber (double)Pflicht

Längengrad des Ortes in Dezimalgrad. Positiv ist Ost, negativ ist West. Beispiel: 75.7873 für Jaipur, -74.0060 für New York. Achte auf das Vorzeichen: Ein fehlendes Minus verlegt New York nach China.

min -180 · max 180

dasha_directionstringoptional
forwardbackward
dasha_startstringoptional

Mit welchem Zyklus die Zeitleiste beginnt.

currentnextprevious
date_timestring (date-time)optional

Der Zeitpunkt, für den gerechnet wird, im Format ISO 8601. Gib IMMER einen Offset oder ein abschließendes Z an – ein Wert ohne Zone wird als Asia/Kolkata (UTC+05:30) gelesen, nicht als UTC, und kann mit Status 200 das Ergebnis des Vortags liefern. '2026-09-01T06:00:00Z' und '2026-09-01 06:00:00' sind verschiedene Zeitpunkte und ergeben verschiedene Antworten.

datetimestring (date-time)optional

Der Zeitpunkt, für den gerechnet wird, im Format ISO 8601. Gib IMMER einen Offset oder ein abschließendes Z an – ein Wert ohne Zone wird als Asia/Kolkata (UTC+05:30) gelesen, nicht als UTC. Bedeutet dasselbe wie date_time; andere Endpoints verwenden für dasselbe Feld nur einen anderen Namen.

days_in_yearnumber (double)optional

Länge des Jahres, in dem die Perioden gemessen werden: 360 für das klassische Savana-Jahr, 365.25 für das julianische Jahr.

min 360 · max 365.256364

levelsintegeroptional

Wie viele Ebenen UNTERHALB der gefundenen Periode geliefert werden. 1 liefert ihre direkten Unterperioden.

min 1 · max 4

lordsarrayoptional

Die Kette der Periodenherrscher, der von oben aus gefolgt wird, die äußerste zuerst – z. B. bedeutet ["moon", "mars"] „in der Mond-Mahadasha, darin in ihrer Mars-Antardasha“. Planetennamen für Nakshatra-Dashas, Zeichennamen für Rashi-Dashas. Eine leere Liste liefert die oberste Ebene.

nodestringoptional

Mondknotenmodell. Der übergeordnete Rashi-Endpoint verlangt es ohne Standardwert; hier ist ein Standardwert gesetzt.

truemean
systemstringoptional

Dasha-System. Siehe /api/astro/dasha/systems/. Standardwert: Vimshottari.

timezone_as_floatnumber (double)optional

UTC-Offset des Ortes in Stunden, als Dezimalzahl. Beispiel: 5.5 für Indien (UTC+05:30), -5 für New York im Winter, 5.75 für Nepal. Wird NICHT gegen date_time validiert – stimmen beide nicht überein, erhältst du eine erfolgreiche Antwort für den falschen Zeitpunkt; leite daher beide aus derselben Quelle ab. Nutze den an diesem Datum gültigen Offset, nicht den heutigen: Eine Sommergeburt in einem Land mit Sommerzeit braucht den Sommer-Offset.

min -12 · max 14

Beispielanfrage

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}'

Antwort

{
  "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"
}

Aus einem echten Aufruf mit genau dieser Anfrage. Die Ergebnisse stehen unter data.

Fehler

Abrechnungsfehler liefern { "error": "…", "message": "<code>", "is_error": true }. Zeig deinen Nutzern error an und verzweige im Code anhand von message. Details in der Fehlerreferenz.