Direkt zum Inhalt
POST/api/astro/kalsarp/1 Credit

Kala-Sarpa-Yoga

Ob das Horoskop Kala Sarpa bildet – alle sieben Grahas von der Sonne bis Saturn liegen in einem der beiden Halbkreise, in die die Rahu-Ketu-Achse den Tierkreis teilt – und, falls ja, welche der zwölf benannten Formen vorliegt. Die meisten Horoskope sind KEIN Kala Sarpa: Schon ein einziger Graha auf der anderen Seite der Achse hebt es auf. Deshalb liefert dieser Endpoint kein bloßes Ja oder Nein. `between_rahu_and_ketu` und `between_ketu_and_rahu` zeigen, welche Grahas auf welche Seite gefallen sind. Daran erkennst du, wie das Ergebnis zustande kam – und ob ein Horoskop das Yoga um einen Graha verfehlt oder um vier. Die zwölf Namen (Anant, Kulik, Vasuki, Shankhpal, Padma, Mahapadma, Takshak, Karkotak, Shankhachud, Ghatak, Vishdhar, Sheshnag) richten sich nach dem Haus, in dem Rahu steht. `name` wird nur gefüllt, wenn das Yoga tatsächlich gebildet ist – nie für ein Horoskop, das nur knapp daran vorbeigeht. Ein Graha, der weniger als ein Grad von einem der beiden Knoten entfernt steht, gehört zu keiner Seite. Solche Grahas stehen in `conjunct_a_node` und setzen `partial`, statt einer Seite zugeschlagen zu werden, nur um ein Urteil zu erzwingen. Die Positionen stammen aus demselben Rechenkern wie /api/astro/planet-positions/, die Längen sind also konstruktionsbedingt identisch.

https://api.occultapi.com/api/astro/kalsarp/
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
date_timestring (date-time)Pflicht

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.

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

ayanamsastringoptional
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/kalsarp/ \
  -H "X-API-Key: $OCCULT_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"date_time":"1990-08-15T10:30:00+05:30","latitude":26.9124,"longitude":75.7873,"timezone_as_float":5.5}'

Antwort

{
  "data": {
    "yoga": "Kala Sarpa",
    "formed": false,
    "partial": false,
    "name": null,
    "rahu_house": 5,
    "rahu_longitude": 283.503,
    "ketu_longitude": 103.503,
    "between_rahu_and_ketu": [
      "moon",
      "mars",
      "jupiter",
      "venus"
    ],
    "between_ketu_and_rahu": [
      "sun",
      "mercury",
      "saturn"
    ],
    "conjunct_a_node": [],
    "direction": null,
    "note": "Formed when all seven grahas fall in one of the two semicircles the Rahu-Ketu axis makes. A graha within 1.0 degree of a node is listed under conjunct_a_node rather than assigned a side, and makes the yoga partial rather than formed."
  },
  "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.