curl -X POST https://yogataraapi.prahlad.app/api/astro/ashtakvarga/ \
-H "X-API-Key: $OCCULT_API_KEY" \
-H "Content-Type: application/json" \
-d '{"keys":["samudhaya_ashtaka_varga"],"latitude":26.1046,"longitude":74.319,"timezone_as_float":5.5,"chart_name":"RashiChart","date_time":"2026-09-01T06:00:00+05:30"}'Ashtakavarga scores every sign of a chart out of eight. Seven planets and an eighth contributor each vote on all twelve signs; a sign that collects many points supports the matters it governs, and one that collects few does not. It is the standard Vedic way to rank which houses and which transits are worth acting on, without interpreting the chart yourself. Every key here returns numbers, not prose. A typical use is `samudhaya_ashtaka_varga` for a quick strength ranking of the twelve signs, then `binna_ashtaka_varga` for the planet you care about — for example, Jupiter's score in the sign it is currently transiting. Note on the eighth row: the sign-indexed tables label it `Rahu`, while the house-indexed ones (`trikona_sodhana_house`, `ekadhipatya_sodhana_house`) label the same row `Ascendant`. Classically this contributor is the ascendant. Key off position rather than name if you read both. Tables are built from the divisional chart named in `chart_name`, normally RashiChart. Two request fields change the arithmetic: `apply_ekadhipatya_reductions` and `use_eight_ashtakavargas_in_sav`. Classical sources disagree on both, so they are yours to set.
| Field | Type | Required | Notes |
|---|---|---|---|
| chart_name | string | required | BhavaChartRashiChartHoraChartJagannathHoraChartParivrittidwayaHoraChartParivrittitrayaDrekkanaChartDrekkanaChartSomnathDrekkanaChartJagannathDrekkanaChartChaturthamsaChartPanchamsaChartShashthamsaChartThere is no explicit list in this view (unlike /api/astro/chart/, which is why this is 'likely' not 'certain'. Case-sensitive; an unknown name yields "Item '<x>' is not supported". In practice Ashtakvarga is intended to be run on 'RashiChart'. |
| 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. FORMAT constraint, not an enum. DRF DateTimeField: ISO-8601 only (DRF default input formats), e.g. "2026-09-01T06:00:00+05:30", "2026-09-01T06:00:00Z" or "2026-09-01 06:00:00" (no timezone = UTC assumed). |
| keys | array | required | 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. binna_ashtaka_vargasamudhaya_ashtaka_vargaprastara_ashtaka_vargatrikona_sodhana_rashitrikona_sodhana_houseekadhipatya_sodhana_rashia_ashtaka_vargaekadhipatya_sodhana_housepindas |
| 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. min -12 · max 14 |
| apply_ekadhipatya_reductions | boolean | optional | |
| 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. min -89.9 · max 89.9 |
| 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. min -180 · max 180 |
| use_eight_ashtakavargas_in_sav | boolean | optional |
Ask for exactly the calculations you want by listing them in keys. An unknown key rejects the whole request, and you are charged 1 credit however many you ask for — so batch them.
| Key | Extra fields needed | Description | |
|---|---|---|---|
| binna_ashtaka_varga | — | Bhinnashtakavarga: one row per contributor, twelve numbers each, scored 0-8. Rows are Sun, Moon, Mars, Mercury, Jupiter, Venus, Saturn and an eighth labelled `Rahu`; the twelve values run Aries to Pisces. Row `Sun` value 3 means the Sun's varga gives Aries 3 points. This is the table most readings start from. | |
| ekadhipatya_sodhana_house | — | The same fully reduced table, rotated so the first value is the ascendant's sign rather than Aries. Identical numbers to `ekadhipatya_sodhana_rashia_ashtaka_varga`, indexed by house. The eighth row is labelled `Ascendant` here and `Rahu` in the sign-indexed table. | |
| ekadhipatya_sodhana_rashia_ashtaka_varga | — | Bhinnashtakavarga after both reductions: trikona, then ekadhipatya, which cancels points between the two signs a single planet rules. Keyed by planet, twelve values running Aries to Pisces. This is the table the pindas are computed from. | |
| pindas | — | The three final weightings, seven numbers each — one per planet, Sun to Saturn, with no eighth row. `raasi_pindas` weights the reduced points by sign, `graha_pindas` by the planets' own positions, and `sodhya_pindas` is the sum of the two. Sodhya pinda is the figure classical texts use to judge a planet's overall strength, and the one to reach for if you want a single number. | |
| prastara_ashtaka_varga | — | The working behind bhinnashtakavarga: for each planet, which of the eight contributors awarded which point. Nested two deep — planet, then contributor, then twelve values. Larger than the other tables, and only needed if you are showing the derivation rather than the result. | |
| samudhaya_ashtaka_varga | — | Sarvashtakavarga: the totals, one number per sign, keyed `Raasi 1` to `Raasi 12` for Aries to Pisces. Each is the sum of all planets' points in that sign, so the twelve add up to 337 in the classical scheme. Use it to rank signs by strength in a single call. | |
| trikona_sodhana_house | — | The same trikona-reduced table, rotated so the first value is the ascendant's sign rather than Aries — identical numbers to `trikona_sodhana_rashi`, indexed by house. Use it when laying out houses 1 to 12. The eighth row is labelled `Ascendant` here and `Rahu` in the sign-indexed table, for the same row. | |
| trikona_sodhana_rashi | — | Bhinnashtakavarga after trikona (trinal) reduction, the first of the two classical reductions applied before pindas. Keyed by planet, twelve values running Aries to Pisces. |