curl -X POST https://api.occultapi.com/api/astro/festival/ \
-H "X-API-Key: $OCCULT_API_KEY" \
-H "Content-Type: application/json" \
-d '{"keys":["calculate_festivals"],"moon_option":"amavas","year":2025,"date_time":"2025-02-12T08:35:00.795Z","latitude":26.9124,"longitude":75.7873,"timezone_as_float":5.5}'Alle hinduistischen Feste eines Kalenderjahres, von Grund auf für den angegebenen Ort berechnet, dazu die Ekadashis und die jainistischen, Sikh- und christlichen Festtage, die der Rechenkern kennt. Anders als die regionalen Kalender-Endpoints, die pro Tradition eine kuratierte Auswahl liefern, ist dies der vollständige gesamtindische Bestand, und an jedem Eintrag hängt das exakte Tithi-Fenster. Das Jahr wird Tithi für Tithi durchlaufen, nicht Tag für Tag. So rutscht keine Tithi, die kürzer als vierundzwanzig Stunden ist, unbemerkt durch, und eine lange wird nicht doppelt gezählt. `moon_option` bestimmt, wie die Mondmonate benannt werden: 'poornima' verwendet direkt den Purnimanta-Monat; jeder andere Wert – auch 'amavas' selbst – nimmt den Amanta-Monat und rechnet ihn um, wie es die meisten nordindischen Panchangs drucken. Sende `year`, `date_time` und den Ort. Jeder Eintrag enthält Beginn und Ende der maßgeblichen Tithi statt eines einzelnen Datums; du entscheidest also selbst, an welchem bürgerlichen Tag du ihn anzeigst. Wenn dir diese Entscheidung abgenommen werden soll, nutze einen der regionalen Kalender-Endpoints – sie ordnen jeden Festtag dem Tag zu, an dem er tatsächlich begangen wird.
| Feld | Typ | Pflicht | Hinweise |
|---|---|---|---|
| date_time | string (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. FORMATVORGABE. DRF DateTimeField: nur ISO-8601 (Standard-Eingabeformate von DRF), z. B. "2026-09-01T06:00:00+05:30", "2026-09-01T06:00:00Z" oder "2026-09-01 06:00:00" (ohne Zeitzone wird UTC angenommen). |
| keys | array | Pflicht | Welche Berechnungen zurückgegeben werden, als Liste von Namen. Siehe die Key-Tabelle dieses Endpoints; ein unbekannter Name lässt die ganze Anfrage scheitern. Ein Aufruf kostet einen Credit, egal wie viele Keys du anforderst – fordere also alles, was du brauchst, auf einmal an, statt mehrere Aufrufe zu machen. calculate_festivalsArray von Strings; es gibt nur einen Key. |
| latitude | number (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 -89.9 · max 89.9 |
| longitude | number (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 |
| moon_option | string | Pflicht | amavaspoornimaGroß-/Kleinschreibung wird beachtet; nur Kleinbuchstaben. 'poornima' verwendet direkt den Purnimanta-Mondmonat; JEDER andere Wert – auch 'amavas' selbst und jeder Tippfehler – landet im else-Zweig (Amanta-Monat, in Purnimanta umgerechnet). Tippfehler verhalten sich also stillschweigend wie 'amavas'. Wird weitergereicht. |
| timezone_as_float | number (double) | Pflicht | 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 |
| year | integer | Pflicht | Geburtsjahr als Zahl, z. B. 1990. Vier Ziffern. |
Liste in keys genau die Berechnungen auf, die du brauchst. Ein unbekannter Key lässt die ganze Anfrage scheitern. Du zahlst 1 Credit, ganz gleich, wie viele du anforderst – fass sie also in einer Anfrage zusammen.
| Key | Zusätzliche Felder | Beschreibung | |
|---|---|---|---|
| calculate_festivals | year | Alle Festtage des Jahres, als Objekt mit fünf Listen: `festivals`, `ekadashis`, `jain_festivals`, `sikh_festivals` und `christian_festivals`. Jeder Eintrag enthält den Namen des Festes, `start` und `end` der maßgeblichen Tithi als UTC-Zeitstempel-Strings und den Mondmonat `month`; Ekadashi-Einträge enthalten zusätzlich `paksha`. Nimmt `year` entgegen. |