curl -X POST https://yogataraapi.prahlad.app/api/astro/panchanga_yogas/ \
-H "X-API-Key: $OCCULT_API_KEY" \
-H "Content-Type: application/json" \
-d '{"latitude":26.9124,"longitude":75.7873,"timezone_as_float":5.5,"year":2026}'A Panchanga yoga is a named quality a whole day carries, good or bad, arising from the combination of that day's lunar day (tithi), weekday (vaara) and lunar mansion (nakshatra). Sarvartha Siddhi ("all purposes succeed"), Amrit Siddhi, Tripushkara, Dagdha, Mrityu and Yamaghanta are the familiar ones. Muhurta practice uses them as a first filter: pick a day that carries a benefic combination and avoid one that carries a malefic one. This is the day-level scan. It walks every calendar day of the requested year, evaluates the yogas once at that day's sunrise, and returns only the days that carry at least one. The response is `data.days`, a list of `{date, yogas}` where `date` is `YYYY-MM-DD` and `yogas` is a list of names; days with nothing to report are omitted entirely. Most names carry their source convention in brackets, for example "Amrit Yoga (Vaara Tithi Yoga)" or "Padma Yoga (Vashishta Samhita Yogas)", because several classical texts define overlapping sets. The yogas are read at sunrise, so latitude, longitude and `timezone_as_float` all change the result. `use_28_nakshatras` defaults to true and inserts Abhijit as a nakshatra in its own right; some yogas, such as Monday's Kaana Yoga, are defined in terms of Abhijit and cannot appear without it. Set it to false to use the plain 27-nakshatra list. This endpoint is unrelated to `/api/astro/yogas/`, which finds combinations of planets in a birth chart; nothing here looks at a birth chart. For Ravi Yoga specifically, `/api/astro/ravi_yoga/` gives exact start and end times rather than a day flag.
| Field | Type | Required | Notes |
|---|---|---|---|
| latitude | number (double) | required | Latitude of the place, in decimal degrees. Positive is north, negative is south. Example: 26.9124 for Jaipur, 40.7128 for New York. Minutes and seconds are not accepted - convert first. |
| longitude | number (double) | required | Longitude of the place, in decimal degrees. Positive is east, negative is west. Example: 75.7873 for Jaipur, -74.0060 for New York. Note the sign: a missing minus puts New York in China. |
| timezone_as_float | number (double) | required | UTC offset of the place, in hours, as a decimal. Example: 5.5 for India (UTC+05:30), -5 for New York in winter, 5.75 for Nepal. This is NOT validated against date_time - if the two disagree you get a successful response for the wrong moment, so derive both from the same source. Use the offset in force on that date, not today's: a summer birth in a country with daylight saving needs the summer offset. |
| year | integer | required | Year of birth as a number, e.g. 1990. Four digits. min 1800 · max 2400 |
| use_28_nakshatras | boolean | optional |