curl -X POST https://yogataraapi.prahlad.app/api/astro/lunar/void-of-course/ \
-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}'Whether the Moon will make any further aspect before it changes sign. The Moon is void of course once it has completed its last aspect in a sign and has nothing left to perfect. Electional astrology reads a void Moon as a poor time to begin anything, which makes this the lunar question people actually search for. Answering it needs a forward SEARCH, not a snapshot: the Moon moves about thirteen degrees a day and the other planets move too, so an aspect two degrees away can perfect or be missed depending on whether the slower body is running away from it. This scans to the sign egress and bisects onto every aspect that perfects, in both directions — the Moon can apply to a planet from ahead or from behind, and both are aspects. Returns whether the Moon is void now, every remaining aspect with the exact moment it perfects, when the Moon leaves the sign, and when the void begins and ends. `include_modern` decides whether Uranus, Neptune and Pluto count. Off by default, because no traditional source uses them and including them makes void periods much rarer. The convention used is named in the response.
| Field | Type | Required | Notes |
|---|---|---|---|
| date_time | string (date-time) | required | The moment to calculate for, ISO 8601. ALWAYS include an offset or a trailing Z - a value with no zone is read as Asia/Kolkata (UTC+05:30), not UTC, and can return the previous day's result with a 200. '2026-09-01T06:00:00Z' and '2026-09-01 06:00:00' are different instants and give different answers. |
| include_modern | boolean | optional | Count aspects to Uranus, Neptune and Pluto as well. Traditional practice uses the seven classical bodies only, and adding three more makes void periods markedly rarer. |
| keys | array | optional | Which calculations to return, as a list of names. See the key table for this endpoint; an unrecognised name rejects the whole request. One call costs one credit however many keys you ask for, so request everything you need at once rather than making several calls. |
| latitude | number (double) | optional | 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) | optional | 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. |
| orb_factor | number (double) | optional | Scale every aspect orb. 0.5 halves them, 2 doubles them. min 0.1 · max 2 |
| timezone_as_float | number (double) | optional | 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. min -12 · max 14 |