New Numerology API
Docs menu
Download

Birth chart (kundli) API reference

Updated

The kundli (birth chart) endpoints of API for Astrology (apiforastrology.com) work from a birth date, time and place. You get the ascendant (rising sign) and nine planets, with their signs and houses. Others add divisional charts, aspects, strength and a year chart. The group has 15 endpoints. All cost 1 call, except the year chart (varshaphal), which uses reading credits.

Start with POST /v1/planets. Each planet also comes with its nakshatra (birth star) and dignity (how well placed it is). For John Doe that is a Virgo ascendant and a Taurus Moon. The quickstart walks through this first call. Signs are Vedic (sidereal), so most planets sit one sign earlier than in a Western chart. Vedic vs Western astrology explains the gap. A planet near the end of a sign can also move with the ayanamsa, as the ayanamsa guide shows. Every endpoint here takes the same birth details. Always send hour and minute: they are optional, and they default to 0 (midnight).

These endpoints work out the birth chart (kundli) itself. They cover planet positions, the ascendant (the sign rising at birth), the 16 divisional charts, aspects and planet strength, and the yearly chart (varshaphal). Most return numbers and placements only. The Jaimini, ashtakavarga and varshaphal endpoints also return short readings.

15 endpoints. Paths are relative to https://apiforastrology.com/api/astrology. Send your API key in the Authorization: Bearer header (see authentication). No key yet? Get a key. To send test requests from the browser, open the interactive reference.

Overview: Kundli and birth charts, Transits and forecasts, Jaimini astrology, Planetary strength.

Which birth chart endpoint to call

What you needEndpointCost
The birth chart itself: the ascendant and nine planets. Start herePOST /v1/planets1 call
The annual chart (varshaphal) for one year of life, with its readingPOST /v1/varshaphal3 reading credits
The daily start moments inside that annual chartPOST /v1/varshaphal/dina1 call
Only the rising sign, with its degree and nakshatraPOST /v1/ascendant1 call
The chart counted three ways: from the ascendant, the Moon and the SunPOST /v1/chart/sudarshana1 call
Houses from the exact rising degree, as printed kundlis show beside the chartPOST /v1/chart/chalit1 call
The birth chart or a divisional chart as an SVG or PNG image, in North, South or East Indian stylePOST /v1/chart/svg1 call
One divisional chart, such as D9 (navamsa) or D10 (career)POST /v1/chart/{division}1 call
The chart read the Jaimini way, with its own aspects and periodsPOST /v1/jaimini1 call
Strength points (bindus) for each sign, to judge transitsPOST /v1/ashtakavarga1 call
How strong each planet and each house is, in numbersPOST /v1/shadbala1 call
Gulika, Mandi and the other sensitive pointsPOST /v1/upagrahas1 call
Hora, ghati and the other special rising points, and the yogi pointPOST /v1/special-lagnas1 call
Strength across divisional charts, and the planet friendship tablePOST /v1/strength/vimshopaka1 call
Which houses and planets each planet aspects (graha drishti)POST /v1/aspects1 call

Planet positions and the ascendant

POST /v1/planets

Returns the ascendant (the sign rising in the east at birth) and all nine grahas (planets). For each one you get its sidereal longitude, sign and house. You also get its nakshatra (one of 27 lunar mansions) and pada (one of the four quarters of a nakshatra). Each planet also has its speed and its dignity. It says whether the planet is retrograde (appears to move backward) and whether it is combust (too close to the Sun). Use this endpoint as the starting point for drawing a birth chart.

dignity says how well placed a planet is, based on its sign and its degree in the sign. It has seven values: exalted, debilitated, mulatrikona, own sign, friend, enemy and neutral. When several apply, only the strongest is reported. The degree matters for mulatrikona: Mars in Aries is mulatrikona up to 12 degrees and own sign after that. friend and enemy compare the planet with the planet that rules its sign. The Moon has no traditional enemies, so it never reports enemy. Rahu and Ketu have no friends or enemies, so they report neither. See rulebook CH-12 (the API's rule reference).

vargottama is true when the planet is in the same sign in the birth chart and the navamsa (D9).

pushkara says whether the planet is in a pushkara navamsa (two helpful ninths of each sign) and whether it is within 1 degree of the sign's pushkara degree. Two tables of pushkara degrees are in use, so both answers are given, with sources_agree. See rulebook CH-17 and CH-18.

planetary_war lists any pair of Mars, Mercury, Jupiter, Venus and Saturn within 1 degree of each other (graha yuddha). winner is the planet further north in latitude, as rule says. winner_by_brightness gives the brighter one, and sources_agree says whether they match. The list is usually empty. See rulebook CH-19.

meta.timezone shows the UTC offset used for the birth time, and whether daylight saving time was in effect.

Cost: Each successful request counts as 1 call toward your monthly calls.

Required inputs

NameInWhat it is
yearbodyYear of birth, from 1850 to 2149 (the range the planetary data covers).
monthbodyMonth of birth, from 1 (January) to 12 (December).
daybodyDay of the month, from 1 to 31.
latitudebodyLatitude of the birth place in degrees, negative for south. Text in a local number format, such as "40,7128", is also accepted.
longitudebodyLongitude of the birth place in degrees east of Greenwich, negative for west, so places in the Americas are negative. Text in a local number format is also accepted.
timezonebodyTime zone of the birth place. Either an IANA time zone name, such as America/New_York, America/Chicago or Europe/London. Or a fixed offset from UTC in hours, such as -5 or 5.5.
Optional inputs (7), with their defaults
NameInWhat it does
langqueryLanguage for the names in the response, such as planets, signs, nakshatras (lunar mansions), tithis (lunar days), months and festivals. The default is en (English); GET /v1/meta lists the others. Each translated value comes with its English original in a matching <field>_en field; use the English value as a key in your code. Codes (such as result or kaal) and object keys always stay in English. Any name not yet translated stays in English and is listed in localization.untranslated.
hourbodyHour of birth on the local clock at the birth place, from 0 to 23 (24-hour clock). Default 0.
minutebodyMinute of birth, from 0 to 59. Default 0.
secondbodySecond of birth, from 0 to 59. Default 0.
timezone_foldbodyOnly needed for a local time that happens twice, on the night the clocks go back. In the US since 2007, that is 1:00 to 1:59 AM on the first Sunday in November. 0 picks the first occurrence (before the change) and 1 the second. Without it, such a time is rejected, not guessed. A wrong guess would quietly move the chart by an hour. A local time that never happens, because the clocks jumped forward over it, is also rejected; check the birth time, or send the UTC offset that was in force.
ayanamsabodyThe ayanamsa: the offset between the tropical zodiac (used in Western astrology) and the sidereal zodiac (used in Vedic astrology). lahiri (the default) is the Lahiri, or Chitrapaksha, ayanamsa used by the Government of India. kp is the Krishnamurti ayanamsa used in KP astrology, about 6 arcminutes less. raman is B. V. Raman's, about 1 degree 27 arcminutes less. Also: yukteshwar (Sri Yukteshwar's, about 1 degree 23 arcminutes less), jn_bhasin (J. N. Bhasin's, about 1 degree 6 arcminutes less), ushashashi (about 3 degrees 48 arcminutes less) and fagan_bradley (the Western sidereal zodiac, about 53 arcminutes more). true_chitra keeps the star Spica (Chitra) at exactly 180 degrees, so it follows the star itself; it is within about a minute of arc of Lahiri. The chosen ayanamsa is also used for the transits, sade sati and forecasts read against this chart.
nodebodyHow to calculate Rahu and Ketu, the lunar nodes (the two points where the Moon's orbit crosses the Sun's path). Use true for the actual position (the default) or mean for the averaged position.

Main response fields

  • meta (object): How the chart was calculated. Holds ayanamsa, ayanamsa_value, julian_day, ephemeris, node, timezone.
  • ascendant (object): The ascendant: the sign rising in the east at birth. Holds name, longitude, sign, sign_number, degree_in_sign, degree_dms, house, nakshatra, nakshatra_lord, pada, speed, retrograde.
  • positions (array of objects): The nine planets, in the order Sun, Moon, Mars, Mercury, Jupiter, Venus, Saturn, Rahu, Ketu. Each item holds name, longitude, sign, sign_number, degree_in_sign, degree_dms, house, nakshatra, nakshatra_lord, pada, speed, retrograde.
  • planetary_war (array): Planetary wars (graha yuddha): pairs among Mars, Mercury, Jupiter, Venus and Saturn within 1 degree. Usually empty. See rulebook CH-19.
# John Doe, born Aug 15, 1990, 10:30 AM, New York
curl -X POST "https://apiforastrology.com/api/astrology/v1/planets" \
  -H "Authorization: Bearer $ASTROLOGY_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"year":1990,"month":8,"day":15,"hour":10,"minute":30,"second":0,"latitude":40.7128,"longitude":-74.006,"timezone":"America/New_York"}'
Sample response
{
  "meta": {
    "ayanamsa": "lahiri",
    "ayanamsa_value": 23.7260727,
    "julian_day": 2448119.10483,
    "ephemeris": "JPL DE440s",
    "node": "true",
    "timezone": {
      "source": "zone",
      "offset_hours": -4,
      "zone": "America/New_York",
      "abbreviation": "EDT",
      "dst": true,
      "dst_hours": 1,
      "ambiguous_resolved_by_fold": null,
      "note": "read from the IANA tz database at this instant, so daylight saving and historical offset changes are included"
    }
  },
  "ascendant": {
    "name": "Ascendant",
    "longitude": 169.934155,
    "sign": "Virgo",
    "sign_number": 6,
    "degree_in_sign": 19.934155,
    "degree_dms": "19 : 56 : 03",
    "house": 1,
    "nakshatra": "Hast",
    "nakshatra_lord": "Moon",
    "pada": 3,
    "speed": 0,
    "retrograde": false,
    "combust": false,
    "dignity": "n/a",
    "vargottama": false,
    "pushkara": {
      "navamsa": false,
      "navamsa_number": 6,
      "bhaga": false,
      "bhaga_degree": 9,
      "bhaga_by_element": false,
      "bhaga_degree_by_element": 14,
      "sources_agree": true,
      "orb_degrees": 1
    }
  },
  "positions": [
    {
      "name": "Sun",
      "longitude": 118.7753409,
      "sign": "Cancer",
      "sign_number": 4,
      "degree_in_sign": 28.7753409,
      "degree_dms": "28 : 46 : 31",
      "house": 11,
      "nakshatra": "Ashlesha",
      "nakshatra_lord": "Mercury",
      "pada": 4,
      "speed": 0.9610665,
      "retrograde": false,
      "combust": false,
      "dignity": "friend",
      "vargottama": false,
      "pushkara": {
        "navamsa": false,
        "navamsa_number": 9,
        "bhaga": false,
        "bhaga_degree": 8,
        "bhaga_by_element": false,
        "bhaga_degree_by_element": 7,
        "sources_agree": true,
        "orb_degrees": 1
      }
    },
    {
      "name": "Moon",
      "longitude": 54.5750352,
      "sign": "Taurus",
      "sign_number": 2,
      "degree_in_sign": 24.5750352,
      "degree_dms": "24 : 34 : 30",
      "house": 9,
      "nakshatra": "Mrigashira",
      "nakshatra_lord": "Mars",
      "pada": 1,
      "speed": 14.258194,
      "retrograde": false,
      "combust": false,
      "dignity": "mulatrikona",
      "vargottama": false,
      "pushkara": {
        "navamsa": false,
        "navamsa_number": 8,
        "bhaga": false,
        "bhaga_degree": 14,
        "bhaga_by_element": false,
        "bhaga_degree_by_element": 14,
        "sources_agree": true,
        "orb_degrees": 1
      }
    },
    {
      "name": "Mars",
      "longitude": 27.7149328,
      "sign": "Aries",
      "sign_number": 1,
      "degree_in_sign": 27.7149328,
      "degree_dms": "27 : 42 : 54",
      "house": 8,
      "nakshatra": "Krittika",
      "nakshatra_lord": "Sun",
      "pada": 1,
      "speed": 0.5753266,
      "retrograde": false,
      "combust": false,
      "dignity": "own sign",
      "vargottama": false,
      "pushkara": {
        "navamsa": true,
        "navamsa_number": 9,
        "bhaga": false,
        "bhaga_degree": 21,
        "bhaga_by_element": false,
        "bhaga_degree_by_element": 21,
        "sources_agree": true,
        "orb_degrees": 1
      }
    }
  ],
  "planetary_war": []
}

Example from a real call for John Doe, born Aug 15, 1990, 10:30 AM, New York. Long lists and texts are shortened.

Parameters, schemas and a test request in the interactive reference. Feature: Kundli and birth charts. Free tool: Free kundli, Nakshatra finder.

The Tajik annual chart (varshaphal) for one year

POST /v1/varshaphal

Casts the annual chart for the moment the Sun returns to its exact birth position (varsha pravesh). The moment is found to the second, in the sidereal zodiac. It falls within a day or so of the birthday and drifts later over a lifetime. So it is never assumed to be the birthday. Tajik is the Indian method for yearly charts, which came from Persian astrology.

Returned:

  • the varsha pravesh in UTC and local time;
  • the annual chart (ascendant and the nine planets with their houses);
  • muntha, the natal ascendant moved on one sign per completed year, and its house in the annual chart;
  • the five office-bearers (panchadhikari), the candidates for the year lord;
  • nine sahams (sensitive points). Each is A - B + C of three positions, reversed by night where the texts say so. There are also four disputed_sahams that published programs compute differently, given both ways with sources_agree. In convention_a, A and B never swap by night. In convention_b, they swap by night for paradara, vivaha and vanik, and roga adds no 30 degrees when C sits on an end;
  • mudda dasha, Vimshottari squeezed into one year. Published software disagrees on it, so it comes in two conventions. mudda_dasha divides 365 days from the varsha pravesh. mudda_dasha_solar divides the Sun's year with the birth balance carried in, so it starts before the varsha pravesh. mudda_conventions says which is which;
  • masa_pravesh: the twelve monthly returns, each the moment the Sun has moved on another 30 degrees, with its lagna. Month 1 is the varsha pravesh. Daily returns are at /v1/varshaphal/dina;
  • tri_pataki: the tri-pataki chakra (three-flag chart). Each natal sign moves on by the running year; the result says which grahas pierce (vedha) the Moon and the lagna. The Moon is the main target and the lagna a second one some astrologers add; the Moon casts no vedha, and a graha on a target's own point is vedha on it. Two divisions of the years circulate and differ on Mars, so both are in methods, with sources_agree and differ_on for the year. No verdict is drawn from it.

Place. The chart is cast for the birth place unless latitude, longitude and timezone give the place the person lives now; traditions differ on which, and place.basis says which was used.

Strengths and the year lord. strengths gives pancha-vargeeya bala (five divisions scored by Tajik friendship) and harsha bala (four conditions). Both were checked against another program's results over five years. year_lord (the varsheshwar) is the strongest office-bearer that aspects the annual lagna, is not the Moon and holds at least 5 of 20 vishwa (a strength score out of 20). If none is left, the muntha lord is the year lord; if that is the Moon, the annual lagna lord; if that is the Moon too, the birth lagna lord. If all three are the Moon, graha is null and disputed says why. basis says which way it was found, filters lists the order the rules apply in, and ranked gives every office-bearer with the rule that excluded it.

tajaka_yogas lists the Tajik yogas (planet pairings) the year forms. Sixteen are checked: ithasala, ishrafa, nakta, yamaya, manau, kamboola, khallasara, radda, duhphali-kuttha, ikkavala, induvara, kuttha, durapha, gairi-kamboola, tambira and dutthottha-davira. For each you get the planets, the aspect and the orb (the allowed gap in degrees: the mean of the pair's deeptamsha). You also get how far the pair is from exact, and whether the two are moving closer (applying) or apart (separating). tajaka_yogas.not_computed lists any yoga left out; today it is empty.

Not yet computed, and named in not_computed: the sahams that need house cusps. See rulebook section VP.

Uses 3 reading credits. On live keys a successful response uses them from your monthly reading credits, and no calls. Test keys return this reading for the sample charts only, and it counts as 1 test call. The X-Reading-Credits-Counted header says what a response used. What reading credits buy.

Cost: Uses reading credits on live keys instead of monthly calls. On test keys it counts as 1 call.

Required inputs

NameInWhat it is
yearqueryCalendar year of the birthday the annual chart is for.
yearbodyYear of birth, from 1850 to 2149 (the range the planetary data covers).
monthbodyMonth of birth, from 1 (January) to 12 (December).
daybodyDay of the month, from 1 to 31.
latitudebodyLatitude of the birth place in degrees, negative for south. Text in a local number format, such as "40,7128", is also accepted.
longitudebodyLongitude of the birth place in degrees east of Greenwich, negative for west, so places in the Americas are negative. Text in a local number format is also accepted.
timezonebodyTime zone of the birth place. Either an IANA time zone name, such as America/New_York, America/Chicago or Europe/London. Or a fixed offset from UTC in hours, such as -5 or 5.5.
Optional inputs (11), with their defaults
NameInWhat it does
latitudequeryLatitude of the place lived in now. Default: the birth place.
longitudequeryLongitude of the place lived in now.
timezonequeryTime zone of the place lived in now: an IANA name or an offset.
langqueryLanguage of the reading text, such as en (English, the default) or hi (Hindi). GET /v1/meta lists the languages available. If a passage is not written in that language yet, the English passage is returned instead and marked with fell_back_to_en. Names in the response, such as planets and signs, are translated too.
detailqueryLength of the reading text: standard (the default) or expanded, which is about 1.8 times longer. If a passage has no expanded version yet, the standard one is returned. Each text block reports the length it got in its detail field.
hourbodyHour of birth on the local clock at the birth place, from 0 to 23 (24-hour clock). Default 0.
minutebodyMinute of birth, from 0 to 59. Default 0.
secondbodySecond of birth, from 0 to 59. Default 0.
timezone_foldbodyOnly needed for a local time that happens twice, on the night the clocks go back. In the US since 2007, that is 1:00 to 1:59 AM on the first Sunday in November. 0 picks the first occurrence (before the change) and 1 the second. Without it, such a time is rejected, not guessed. A wrong guess would quietly move the chart by an hour. A local time that never happens, because the clocks jumped forward over it, is also rejected; check the birth time, or send the UTC offset that was in force.
ayanamsabodyThe ayanamsa: the offset between the tropical zodiac (used in Western astrology) and the sidereal zodiac (used in Vedic astrology). lahiri (the default) is the Lahiri, or Chitrapaksha, ayanamsa used by the Government of India. kp is the Krishnamurti ayanamsa used in KP astrology, about 6 arcminutes less. raman is B. V. Raman's, about 1 degree 27 arcminutes less. Also: yukteshwar (Sri Yukteshwar's, about 1 degree 23 arcminutes less), jn_bhasin (J. N. Bhasin's, about 1 degree 6 arcminutes less), ushashashi (about 3 degrees 48 arcminutes less) and fagan_bradley (the Western sidereal zodiac, about 53 arcminutes more). true_chitra keeps the star Spica (Chitra) at exactly 180 degrees, so it follows the star itself; it is within about a minute of arc of Lahiri. The chosen ayanamsa is also used for the transits, sade sati and forecasts read against this chart.
nodebodyHow to calculate Rahu and Ketu, the lunar nodes (the two points where the Moon's orbit crosses the Sun's path). Use true for the actual position (the default) or mean for the averaged position.

Main response fields

  • year (number)
  • completed_years (number)
  • varsha_pravesh (object): holds utc, local, offset_hours, day, next.
  • place (object): holds latitude, longitude, basis.
  • chart (object): holds ascendant, positions.
  • muntha (object): holds sign, sign_no, lord, house, result, house_in_birth_chart.
  • office_bearers (array of objects): each item holds office, graha.
  • strengths (object): holds pancha_vargeeya, harsha.
  • year_lord (object): holds graha, aspects_lagna, basis, munthesha, min_strength, filters, ranked, disputed.
  • sahams (array of objects): each item holds name, longitude, sign, degree_dms, lord, house, formula, plus_30, sensitive, reading.
  • disputed_sahams (array of objects): each item holds name, sources_agree, sensitive, convention_a, convention_b.
  • mudda_dasha (array of objects): each item holds lord, start, end, days, house, reading.
  • mudda_dasha_solar (array of objects): each item holds lord, start, end, sun_arc, balance_elapsed, house, reading.
  • mudda_conventions (object): holds mudda_dasha, mudda_dasha_solar, sources_agree.
  • birth_nakshatra (string)
  • tajaka_yogas (object): holds yogas, counts, deeptamsha, orb_rule, motion_rule, not_computed, sources, review.
  • not_computed (array of strings)
  • meta (object): holds ayanamsa, ayanamsa_value, ephemeris, node, natal_sun.
  • masa_pravesh (array of objects): each item holds month, utc, local, offset_hours, sun_longitude, sun_sign, day, lagna.
  • tri_pataki (object): holds running_year, methods, sources_agree, differ_on, basis, not_claimed, review.
  • reading (object): holds framing, muntha, year_lord, notes.
  • gaps (array)
# John Doe, born Aug 15, 1990, 10:30 AM, New York
curl -X POST "https://apiforastrology.com/api/astrology/v1/varshaphal?year=2026&latitude=40.7128&longitude=-74.006&timezone=America/New_York" \
  -H "Authorization: Bearer $ASTROLOGY_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"year":1990,"month":8,"day":15,"hour":10,"minute":30,"second":0,"latitude":40.7128,"longitude":-74.006,"timezone":"America/New_York"}'
Sample response
{
  "year": 2026,
  "completed_years": 36,
  "varsha_pravesh": {
    "utc": "2026-08-15T19:54:24Z",
    "local": "2026-08-15T15:54:24-04:00",
    "offset_hours": -4,
    "day": true,
    "next": "2027-08-15T22:08:06-04:00"
  },
  "place": {
    "latitude": 40.7128,
    "longitude": -74.006,
    "basis": "given place"
  },
  "chart": {
    "ascendant": {
      "name": "Ascendant",
      "longitude": 234.2481086,
      "sign": "Scorpio",
      "sign_number": 8,
      "degree_in_sign": 24.2481086,
      "degree_dms": "24 : 14 : 53",
      "house": 1,
      "nakshatra": "Jyeshtha",
      "nakshatra_lord": "Mercury",
      "pada": 3,
      "speed": 0,
      "retrograde": false,
      "combust": false,
      "dignity": "n/a",
      "vargottama": false,
      "pushkara": {
        "navamsa": false,
        "navamsa_number": 8,
        "bhaga": false,
        "bhaga_degree": 11,
        "bhaga_by_element": false,
        "bhaga_degree_by_element": 7,
        "sources_agree": true,
        "orb_degrees": 1
      }
    },
    "positions": [
      {
        "name": "Sun",
        "longitude": 118.7753409,
        "sign": "Cancer",
        "sign_number": 4,
        "degree_in_sign": 28.7753409,
        "degree_dms": "28 : 46 : 31",
        "house": 9,
        "nakshatra": "Ashlesha",
        "nakshatra_lord": "Mercury",
        "pada": 4,
        "speed": 0.9612311,
        "retrograde": false,
        "combust": false,
        "dignity": "friend",
        "vargottama": false,
        "pushkara": {
          "navamsa": false,
          "navamsa_number": 9,
          "bhaga": false,
          "bhaga_degree": 8,
          "bhaga_by_element": false,
          "bhaga_degree_by_element": 7,
          "sources_agree": true,
          "orb_degrees": 1
        }
      },
      {
        "name": "Moon",
        "longitude": 158.8777738,
        "sign": "Virgo",
        "sign_number": 6,
        "degree_in_sign": 8.8777738,
        "degree_dms": "08 : 52 : 40",
        "house": 11,
        "nakshatra": "Uttara Phalguni",
        "nakshatra_lord": "Sun",
        "pada": 4,
        "speed": 13.3333426,
        "retrograde": false,
        "combust": false,
        "dignity": "friend",
        "vargottama": false,
        "pushkara": {
          "navamsa": true,
          "navamsa_number": 3,
          "bhaga": true,
          "bhaga_degree": 9,
          "bhaga_by_element": false,
          "bhaga_degree_by_element": 14,
          "sources_agree": false,
          "orb_degrees": 1
        }
      },
      {
        "name": "Mars",
        "longitude": 68.721385,
        "sign": "Gemini",
        "sign_number": 3,
        "degree_in_sign": 8.721385,
        "degree_dms": "08 : 43 : 17",
        "house": 8,
        "nakshatra": "Ardra",
        "nakshatra_lord": "Rahu",
        "pada": 1,
        "speed": 0.6568859,
        "retrograde": false,
        "combust": false,
        "dignity": "neutral",
        "vargottama": false,
        "pushkara": {
          "navamsa": false,
          "navamsa_number": 3,
          "bhaga": false,
          "bhaga_degree": 18,
          "bhaga_by_element": false,
          "bhaga_degree_by_element": 24,
          "sources_agree": true,
          "orb_degrees": 1
        }
      }
    ]
  },
  "muntha": {
    "sign": "Virgo",
    "sign_no": 6,
    "lord": "Mercury",
    "house": 11,
    "result": "excellent",
    "house_in_birth_chart": 1
  },
  "office_bearers": [
    {
      "office": "janma_lagna_lord",
      "graha": "Mercury"
    },
    {
      "office": "varsha_lagna_lord",
      "graha": "Mars"
    },
    {
      "office": "muntha_lord",
      "graha": "Mercury"
    }
  ],
  "strengths": {
    "pancha_vargeeya": {
      "Sun": {
        "total": 8.54,
        "band": "ordinary",
        "parts": {
          "kshetra": 15,
          "hadda": 3.75,
          "drekkana": 5,
          "navamsa": 2.5,
          "uchcha": 7.914
        },
        "lords": {
          "kshetra": "Moon",
          "hadda": "Saturn",
          "drekkana": "Jupiter",
          "navamsa": "Jupiter"
        }
      },
      "Moon": {
        "total": 5.57,
        "band": "ordinary",
        "parts": {
          "kshetra": 7.5,
          "hadda": 3.75,
          "drekkana": 2.5,
          "navamsa": 2.5,
          "uchcha": 6.014
        },
        "lords": {
          "kshetra": "Mercury",
          "hadda": "Venus",
          "drekkana": "Mercury",
          "navamsa": "Jupiter"
        }
      },
      "Mars": {
        "total": 6.37,
        "band": "ordinary",
        "parts": {
          "kshetra": 7.5,
          "hadda": 7.5,
          "drekkana": 2.5,
          "navamsa": 2.5,
          "uchcha": 5.475
        },
        "lords": {
          "kshetra": "Mercury",
          "hadda": "Jupiter",
          "drekkana": "Mercury",
          "navamsa": "Jupiter"
        }
      },
      "Mercury": {
        "total": 9.94,
        "band": "ordinary",
        "parts": {
          "kshetra": 7.5,
          "hadda": 15,
          "drekkana": 2.5,
          "navamsa": 1.25,
          "uchcha": 13.511
        },
        "lords": {
          "kshetra": "Moon",
          "hadda": "Mercury",
          "drekkana": "Mars",
          "navamsa": "Mars"
        }
      },
      "Jupiter": {
        "total": 11.26,
        "band": "powerful",
        "parts": {
          "kshetra": 15,
          "hadda": 3.75,
          "drekkana": 5,
          "navamsa": 2.5,
          "uchcha": 18.778
        },
        "lords": {
          "kshetra": "Moon",
          "hadda": "Mercury",
          "drekkana": "Mars",
          "navamsa": "Mars"
        }
      },
      "Venus": {
        "total": 10.34,
        "band": "powerful",
        "parts": {
          "kshetra": 15,
          "hadda": 15,
          "drekkana": 5,
          "navamsa": 5,
          "uchcha": 1.372
        },
        "lords": {
          "kshetra": "Mercury",
          "hadda": "Venus",
          "drekkana": "Saturn",
          "navamsa": "Venus"
        }
      },
      "Saturn": {
        "total": 5.52,
        "band": "ordinary",
        "parts": {
          "kshetra": 7.5,
          "hadda": 3.75,
          "drekkana": 2.5,
          "navamsa": 5,
          "uchcha": 3.313
        },
        "lords": {
          "kshetra": "Jupiter",
          "hadda": "Mars",
          "drekkana": "Mars",
          "navamsa": "Saturn"
        }
      }
    },
    "harsha": {
      "Sun": {
        "total": 10,
        "band": "average",
        "met": [
          "house",
          "day_or_night"
        ]
      },
      "Moon": {
        "total": 0,
        "band": "nil",
        "met": []
      },
      "Mars": {
        "total": 5,
        "band": "little",
        "met": [
          "day_or_night"
        ]
      },
      "Mercury": {
        "total": 5,
        "band": "little",
        "met": [
          "quarter"
        ]
      },
      "Jupiter": {
        "total": 10,
        "band": "average",
        "met": [
          "own_or_exalted",
          "day_or_night"
        ]
      },
      "Venus": {
        "total": 0,
        "band": "nil",
        "met": []
      },
      "Saturn": {
        "total": 0,
        "band": "nil",
        "met": []
      }
    }
  },
  "year_lord": {
    "graha": "Mercury",
    "aspects_lagna": true,
    "basis": "strongest_aspecting",
    "munthesha": "Mercury",
    "min_strength": 5,
    "filters": [
      "aspects_lagna: a Tajik aspect (1st, 3rd, 4th, 5th, 7th, 9th, 10th or 11th) on the annual lagna",
      "not_moon: the Moon is never the year lord",
      "min_strength: at least 5 of 20 vishwa of pancha-vargeeya bala"
    ],
    "ranked": [
      {
        "graha": "Mercury",
        "strength": 9.94,
        "aspects_lagna": true,
        "excluded": null,
        "chosen": true
      },
      {
        "graha": "Mars",
        "strength": 6.37,
        "aspects_lagna": false,
        "excluded": "no_aspect",
        "chosen": false
      },
      {
        "graha": "Moon",
        "strength": 5.57,
        "aspects_lagna": true,
        "excluded": "moon",
        "chosen": false
      }
    ],
    "disputed": []
  },
  "sahams": [
    {
      "name": "punya",
      "longitude": 304.3505,
      "sign": "Aquarius",
      "degree_dms": "04 : 21 : 02",
      "lord": "Saturn",
      "house": 4,
      "formula": "Moon - Sun + Asc",
      "plus_30": true,
      "sensitive": false,
      "reading": {
        "key": "saham:punya",
        "text": [
          "The point of fortune and good deeds falls in your 4th house this year."
        ],
        "language": "en",
        "detail": "standard"
      }
    },
    {
      "name": "vidya",
      "longitude": 194.1457,
      "sign": "Libra",
      "degree_dms": "14 : 08 : 44",
      "lord": "Venus",
      "house": 12,
      "formula": "Sun - Moon + Asc",
      "plus_30": false,
      "sensitive": false,
      "reading": {
        "key": "saham:vidya",
        "text": [
          "The point of learning and education falls in your 12th house this year."
        ],
        "language": "en",
        "detail": "standard"
      }
    },
    {
      "name": "yashas",
      "longitude": 65.8945,
      "sign": "Gemini",
      "degree_dms": "05 : 53 : 40",
      "lord": "Mercury",
      "house": 8,
      "formula": "Jupiter - punya + Asc",
      "plus_30": true,
      "sensitive": false,
      "reading": {
        "key": "saham:yashas",
        "text": [
          "The point of fame and reputation falls in your 8th house this year."
        ],
        "language": "en",
        "detail": "standard"
      }
    }
  ],
  "disputed_sahams": [
    {
      "name": "roga",
      "sources_agree": false,
      "sensitive": true,
      "convention_a": {
        "longitude": 339.6184,
        "sign": "Pisces",
        "degree_dms": "09 : 37 : 06",
        "house": 5,
        "formula": "Asc - Moon + Asc",
        "plus_30": true,
        "reading": {
          "key": "saham:roga",
          "text": [
            "The point of illness falls in your 5th house this year. It shows where to look after your health, but it is not a prediction."
          ],
          "language": "en",
          "detail": "standard"
        }
      },
      "convention_b": {
        "longitude": 309.6184,
        "sign": "Aquarius",
        "degree_dms": "09 : 37 : 06",
        "house": 4,
        "formula": "Asc - Moon + Asc",
        "plus_30": false,
        "reading": {
          "key": "saham:roga",
          "text": [
            "The point of illness falls in your 4th house this year. It shows where to look after your health, but it is not a prediction."
          ],
          "language": "en",
          "detail": "standard"
        }
      }
    },
    {
      "name": "paradara",
      "sources_agree": true,
      "sensitive": true,
      "convention_a": {
        "longitude": 310.1211,
        "sign": "Aquarius",
        "degree_dms": "10 : 07 : 16",
        "house": 4,
        "formula": "Venus - Sun + Asc",
        "plus_30": true,
        "reading": {
          "key": "saham:paradara",
          "text": [
            "The traditional point of affairs outside marriage falls in your 4th house this year. This point is read in the old texts and is not a prediction about anyone."
          ],
          "language": "en",
          "detail": "standard"
        }
      },
      "convention_b": {
        "longitude": 310.1211,
        "sign": "Aquarius",
        "degree_dms": "10 : 07 : 16",
        "house": 4,
        "formula": "Venus - Sun + Asc",
        "plus_30": true,
        "reading": {
          "key": "saham:paradara",
          "text": [
            "The traditional point of affairs outside marriage falls in your 4th house this year. This point is read in the old texts and is not a prediction about anyone."
          ],
          "language": "en",
          "detail": "standard"
        }
      }
    },
    {
      "name": "vivaha",
      "sources_agree": true,
      "sensitive": false,
      "convention_a": {
        "longitude": 78.7157,
        "sign": "Gemini",
        "degree_dms": "18 : 42 : 56",
        "house": 8,
        "formula": "Venus - Saturn + Asc",
        "plus_30": true,
        "reading": {
          "key": "saham:vivaha",
          "text": [
            "The point of marriage falls in your 8th house this year."
          ],
          "language": "en",
          "detail": "standard"
        }
      },
      "convention_b": {
        "longitude": 78.7157,
        "sign": "Gemini",
        "degree_dms": "18 : 42 : 56",
        "house": 8,
        "formula": "Venus - Saturn + Asc",
        "plus_30": true,
        "reading": {
          "key": "saham:vivaha",
          "text": [
            "The point of marriage falls in your 8th house this year."
          ],
          "language": "en",
          "detail": "standard"
        }
      }
    }
  ],
  "mudda_dasha": [
    {
      "lord": "Mars",
      "start": {
        "utc": "2026-08-15T19:54:24Z",
        "local": "2026-08-15T15:54:24-04:00",
        "offset_hours": -4
      },
      "end": {
        "utc": "2026-09-06T02:54:24Z",
        "local": "2026-09-05T22:54:24-04:00",
        "offset_hours": -4
      },
      "days": 21.29,
      "house": 8,
      "reading": {
        "key": "period:Mars+house:8",
        "text": [
          "This Mars period brings energy and drive, with some risk of haste, injury or arguments. In your yearly chart it sits in the 8th house. So its effect falls mainly on sudden changes, health and hidden matters."
        ],
        "language": "en",
        "detail": "standard"
      }
    },
    {
      "lord": "Rahu",
      "start": {
        "utc": "2026-09-06T02:54:24Z",
        "local": "2026-09-05T22:54:24-04:00",
        "offset_hours": -4
      },
      "end": {
        "utc": "2026-10-30T20:54:24Z",
        "local": "2026-10-30T16:54:24-04:00",
        "offset_hours": -4
      },
      "days": 54.75,
      "house": 4,
      "reading": {
        "key": "period:Rahu+house:4",
        "text": [
          "This Rahu period can bring sudden ambitions, new contacts and some confusion, so check facts before you act. In your yearly chart it sits in the 4th house. So its effect falls mainly on home, mother, property and peace of mind."
        ],
        "language": "en",
        "detail": "standard"
      }
    },
    {
      "lord": "Jupiter",
      "start": {
        "utc": "2026-10-30T20:54:24Z",
        "local": "2026-10-30T16:54:24-04:00",
        "offset_hours": -4
      },
      "end": {
        "utc": "2026-12-18T12:54:24Z",
        "local": "2026-12-18T07:54:24-05:00",
        "offset_hours": -5
      },
      "days": 48.67,
      "house": 9,
      "reading": {
        "key": "period:Jupiter+house:9",
        "text": [
          "This Jupiter period tends to bring growth, good advice, learning and family happiness. In your yearly chart it sits in the 9th house. So its effect falls mainly on luck, faith, teachers and long journeys."
        ],
        "language": "en",
        "detail": "standard"
      }
    }
  ],
  "mudda_dasha_solar": [
    {
      "lord": "Mars",
      "start": {
        "utc": "2026-08-13T19:03:36Z",
        "local": "2026-08-13T15:03:36-04:00",
        "offset_hours": -4
      },
      "end": {
        "utc": "2026-09-04T13:44:35Z",
        "local": "2026-09-04T09:44:34-04:00",
        "offset_hours": -4
      },
      "sun_arc": 21,
      "balance_elapsed": 0.093128,
      "house": 8,
      "reading": {
        "key": "period:Mars+house:8",
        "text": [
          "This Mars period brings energy and drive, with some risk of haste, injury or arguments. In your yearly chart it sits in the 8th house. So its effect falls mainly on sudden changes, health and hidden matters."
        ],
        "language": "en",
        "detail": "standard"
      }
    },
    {
      "lord": "Rahu",
      "start": {
        "utc": "2026-09-04T13:44:35Z",
        "local": "2026-09-04T09:44:34-04:00",
        "offset_hours": -4
      },
      "end": {
        "utc": "2026-10-29T11:23:52Z",
        "local": "2026-10-29T07:23:51-04:00",
        "offset_hours": -4
      },
      "sun_arc": 54,
      "house": 4,
      "reading": {
        "key": "period:Rahu+house:4",
        "text": [
          "This Rahu period can bring sudden ambitions, new contacts and some confusion, so check facts before you act. In your yearly chart it sits in the 4th house. So its effect falls mainly on home, mother, property and peace of mind."
        ],
        "language": "en",
        "detail": "standard"
      }
    },
    {
      "lord": "Jupiter",
      "start": {
        "utc": "2026-10-29T11:23:52Z",
        "local": "2026-10-29T07:23:51-04:00",
        "offset_hours": -4
      },
      "end": {
        "utc": "2026-12-16T00:39:47Z",
        "local": "2026-12-15T19:39:47-05:00",
        "offset_hours": -5
      },
      "sun_arc": 48,
      "house": 9,
      "reading": {
        "key": "period:Jupiter+house:9",
        "text": [
          "This Jupiter period tends to bring growth, good advice, learning and family happiness. In your yearly chart it sits in the 9th house. So its effect falls mainly on luck, faith, teachers and long journeys."
        ],
        "language": "en",
        "detail": "standard"
      }
    }
  ],
  "mudda_conventions": {
    "mudda_dasha": "365 days from the varsha pravesh, no birth balance",
    "mudda_dasha_solar": "the Sun's arc, 360 degrees a year, entered with the birth nakshatra balance, so it begins before the varsha pravesh",
    "sources_agree": false
  },
  "birth_nakshatra": "Mrigashira",
  "tajaka_yogas": {
    "yogas": [
      {
        "yoga": "ithasala",
        "planets": [
          "Moon",
          "Mercury"
        ],
        "aspect": "sextile",
        "aspect_angle": 60,
        "orb": 9.5,
        "separation": 7.7185,
        "motion": "applying",
        "purna": false,
        "retrograde": [],
        "nature": "helps",
        "reading": {
          "key": "tajaka:ithasala",
          "text": [
            "The Moon is moving toward a close link with Mercury this year. Plans tied to these two planets tend to come together with steady effort."
          ],
          "language": "en",
          "detail": "standard"
        }
      },
      {
        "yoga": "ithasala",
        "planets": [
          "Moon",
          "Jupiter"
        ],
        "aspect": "sextile",
        "aspect_angle": 60,
        "orb": 10.5,
        "separation": 7.1191,
        "motion": "applying",
        "purna": false,
        "retrograde": [],
        "nature": "helps",
        "reading": {
          "key": "tajaka:ithasala",
          "text": [
            "The Moon is moving toward a close link with Jupiter this year. Plans tied to these two planets tend to come together with steady effort."
          ],
          "language": "en",
          "detail": "standard"
        }
      },
      {
        "yoga": "ithasala",
        "planets": [
          "Moon",
          "Venus"
        ],
        "aspect": "conjunction",
        "aspect_angle": 0,
        "orb": 9.5,
        "separation": 5.7705,
        "motion": "applying",
        "purna": false,
        "retrograde": [],
        "nature": "helps",
        "reading": {
          "key": "tajaka:ithasala",
          "text": [
            "The Moon is moving toward a close link with Venus this year. Plans tied to these two planets tend to come together with steady effort."
          ],
          "language": "en",
          "detail": "standard"
        }
      }
    ],
    "counts": {
      "ithasala": 7,
      "ishrafa": 5,
      "nakta": 3,
      "yamaya": 0,
      "manau": 6,
      "kamboola": 4,
      "khallasara": 0,
      "radda": 5,
      "duhphali_kuttha": 2,
      "ikkavala": 0,
      "induvara": 0,
      "kuttha": 0,
      "durapha": 0,
      "gairi_kamboola": 0,
      "tambira": 0,
      "dutthottha_davira": 0
    },
    "deeptamsha": {
      "Sun": 15,
      "Moon": 12,
      "Mars": 8,
      "Mercury": 7,
      "Jupiter": 9,
      "Venus": 7,
      "Saturn": 9
    },
    "orb_rule": "The orb of a pair is the mean of the two deeptamshas; a meeting is active when the separation from the exact Tajik angle (0, 60, 90, 120, 180) is within it.",
    "motion_rule": "Applying when the gap to exact is shrinking under the two grahas' signed daily motions; a retrograde graha moves backwards, which reverses its part in the test.",
    "not_computed": [],
    "sources": "Tajika Neelakanthi, Samjna Tantra, as given in K. S. Charak, A Text Book of Varshaphala, ch. on the Tajika yogas; the astrologer's ruling N-18 (2026-10-31, owner-relayed)",
    "review": "awaiting the astrologer (VP-13 to VP-15)"
  },
  "not_computed": [
    "mitra (friends), sneha (love), putra (children), vyapara (business), karyasiddhi and the vocation saham: an outside report's values match no classical formula, so none is shipped until the astrologer settles which is meant",
    "mrityu, paradesa, artha and labha: they read house cusps, and this service uses whole-sign houses with no quadrant cusps"
  ],
  "meta": {
    "ayanamsa": "lahiri",
    "ayanamsa_value": 24.22898,
    "ephemeris": "JPL DE440s",
    "node": "true",
    "natal_sun": 118.7753409
  },
  "masa_pravesh": [
    {
      "month": 1,
      "utc": "2026-08-15T19:54:24Z",
      "local": "2026-08-15T15:54:24-04:00",
      "offset_hours": -4,
      "sun_longitude": 118.775341,
      "sun_sign": "Cancer",
      "day": true,
      "lagna": {
        "sign": "Scorpio",
        "sign_number": 8,
        "longitude": 234.248109,
        "degree_dms": "24 : 14 : 53"
      }
    },
    {
      "month": 2,
      "utc": "2026-09-15T20:14:26Z",
      "local": "2026-09-15T16:14:25-04:00",
      "offset_hours": -4,
      "sun_longitude": 148.775341,
      "sun_sign": "Leo",
      "day": true,
      "lagna": {
        "sign": "Sagittarius",
        "sign_number": 9,
        "longitude": 268.528609,
        "degree_dms": "28 : 31 : 43"
      }
    },
    {
      "month": 3,
      "utc": "2026-10-16T08:43:53Z",
      "local": "2026-10-16T04:43:53-04:00",
      "offset_hours": -4,
      "sun_longitude": 178.775341,
      "sun_sign": "Virgo",
      "day": false,
      "lagna": {
        "sign": "Leo",
        "sign_number": 5,
        "longitude": 149.301039,
        "degree_dms": "29 : 18 : 04"
      }
    }
  ],
  "tri_pataki": {
    "running_year": 37,
    "methods": {
      "three_tier": {
        "source": "K. S. Charak, A Textbook of Varshaphala: Moon 9, Mars and the nodes 6, the rest 4",
        "placements": [
          {
            "graha": "Sun",
            "natal_sign": "Cancer",
            "sign": "Cancer",
            "cycle": 4,
            "count": 1,
            "direction": "forward",
            "house": 9
          },
          {
            "graha": "Moon",
            "natal_sign": "Taurus",
            "sign": "Taurus",
            "cycle": 9,
            "count": 1,
            "direction": "forward",
            "house": 7
          },
          {
            "graha": "Mars",
            "natal_sign": "Aries",
            "sign": "Aries",
            "cycle": 6,
            "count": 1,
            "direction": "forward",
            "house": 6
          }
        ],
        "points": [
          {
            "house": 1,
            "sign": "Scorpio",
            "grahas": [],
            "vedha_from_houses": [
              4,
              7,
              10
            ]
          },
          {
            "house": 2,
            "sign": "Sagittarius",
            "grahas": [
              "Saturn"
            ],
            "vedha_from_houses": [
              3,
              6,
              9
            ]
          },
          {
            "house": 3,
            "sign": "Capricorn",
            "grahas": [
              "Rahu"
            ],
            "vedha_from_houses": [
              2,
              8,
              11
            ]
          }
        ],
        "vedha": {
          "moon": {
            "house": 7,
            "same_point_counts": true,
            "sign": "Taurus",
            "grahas": [
              "Mercury"
            ],
            "benefics": [
              "Mercury"
            ],
            "malefics": [],
            "same_point": [],
            "evaluation": "primary"
          },
          "lagna": {
            "house": 1,
            "same_point_counts": true,
            "sign": "Scorpio",
            "grahas": [
              "Mercury"
            ],
            "benefics": [
              "Mercury"
            ],
            "malefics": [],
            "same_point": [],
            "evaluation": "secondary"
          }
        }
      },
      "neelakanthi": {
        "source": "Tajika Neelakanthi: Mars counted with the four-year group",
        "placements": [
          {
            "graha": "Sun",
            "natal_sign": "Cancer",
            "sign": "Cancer",
            "cycle": 4,
            "count": 1,
            "direction": "forward",
            "house": 9
          },
          {
            "graha": "Moon",
            "natal_sign": "Taurus",
            "sign": "Taurus",
            "cycle": 9,
            "count": 1,
            "direction": "forward",
            "house": 7
          },
          {
            "graha": "Mars",
            "natal_sign": "Aries",
            "sign": "Aries",
            "cycle": 4,
            "count": 1,
            "direction": "forward",
            "house": 6
          }
        ],
        "points": [
          {
            "house": 1,
            "sign": "Scorpio",
            "grahas": [],
            "vedha_from_houses": [
              4,
              7,
              10
            ]
          },
          {
            "house": 2,
            "sign": "Sagittarius",
            "grahas": [
              "Saturn"
            ],
            "vedha_from_houses": [
              3,
              6,
              9
            ]
          },
          {
            "house": 3,
            "sign": "Capricorn",
            "grahas": [
              "Rahu"
            ],
            "vedha_from_houses": [
              2,
              8,
              11
            ]
          }
        ],
        "vedha": {
          "moon": {
            "house": 7,
            "same_point_counts": true,
            "sign": "Taurus",
            "grahas": [
              "Mercury"
            ],
            "benefics": [
              "Mercury"
            ],
            "malefics": [],
            "same_point": [],
            "evaluation": "primary"
          },
          "lagna": {
            "house": 1,
            "same_point_counts": true,
            "sign": "Scorpio",
            "grahas": [
              "Mercury"
            ],
            "benefics": [
              "Mercury"
            ],
            "malefics": [],
            "same_point": [],
            "evaluation": "secondary"
          }
        }
      }
    },
    "sources_agree": true,
    "differ_on": [],
    "basis": "Natal signs moved on by the running year (completed years + 1): the remainder on dividing by each graha's cycle, zero read as the cycle, counted inclusively from the natal sign; the nodes count backwards. The annual lagna sits on the…",
    "not_claimed": [
      "No verdict on the year: the texts that teach this chakra say it must be read with the birth and annual charts and the dasha, and is not consistent alone",
      "A graha on a target's own point is vedha on it (a direct hit), and is also named in same_point",
      "The Moon is the primary target, as standard practice reads the chakra; the lagna is a secondary evaluation some astrologers use"
    ],
    "review": "settled by the astrologer 2026-10-30 and 2026-10-31 (VP-12): a target's own point is vedha, and the Moon is target only"
  },
  "reading": {
    "framing": {
      "key": "framing",
      "text": [
        "Your varshaphal is a chart for one year of your life. The chart is cast for the moment the Sun returns to the exact place it held when you were born. It shows the mood of the coming year: which part of life comes forward and which planet…"
      ],
      "language": "en",
      "detail": "standard"
    },
    "muntha": {
      "key": "muntha:11",
      "text": [
        "Muntha is in the 11th house this year. Gains, friends and wishes coming true are in focus. Friends and networks tend to help you."
      ],
      "language": "en",
      "detail": "standard"
    },
    "year_lord": {
      "key": "year_lord:Mercury",
      "text": [
        "Mercury rules your year. Learning, communication, trade and quick thinking are in focus. It suits study, writing and business, if you avoid scattering your effort."
      ],
      "language": "en",
      "detail": "standard"
    },
    "notes": [
      {
        "key": "note:mudda_conventions",
        "text": [
          "Astrology software differs on how to measure the year for these periods. One method counts 365 days from your yearly chart, and the other follows the Sun and starts a little earlier. Both are shown."
        ],
        "language": "en",
        "detail": "standard"
      },
      {
        "key": "note:disputed_sahams",
        "text": [
          "For these points, two well-known programs use different rules, so both answers are shown."
        ],
        "language": "en",
        "detail": "standard"
      },
      {
        "key": "note:tendency",
        "text": [
          "Everything here describes tendencies to work with, not fixed events."
        ],
        "language": "en",
        "detail": "standard"
      }
    ]
  },
  "gaps": []
}

Example from a real call for John Doe, born Aug 15, 1990, 10:30 AM, New York. Long lists and texts are shortened.

Parameters, schemas and a test request in the interactive reference. Feature: Transits and forecasts.

Tajik daily return (dina pravesh) for a day or a short window

POST /v1/varshaphal/dina

Finds the dina pravesh: the moment the Sun has moved on another whole degree from its exact birth position. In the Tajik year each degree is one day, so this is the start of a "day" of the annual chart. It is solved to the second, the same way as the varsha pravesh in /v1/varshaphal.

Returned:

  • running: the daily return in force when date begins (local midnight);
  • dina_pravesh: every daily return from date for days days (1 to 31). Most days hold one; a day can hold none or two, because the Sun moves a little faster in January than in July.

Each return has its moment in UTC and local time, day_of_year (1 is the varsha pravesh, up to 360), the Sun's target longitude, whether the Sun was up, and the lagna (ascendant) at that moment. The place is the birth place unless latitude, longitude and timezone give another. The twelve monthly returns are in /v1/varshaphal as masa_pravesh. See rulebook VP-11.

Cost: Each successful request counts as 1 call toward your monthly calls.

Required inputs

NameInWhat it is
yearbodyYear of birth, from 1850 to 2149 (the range the planetary data covers).
monthbodyMonth of birth, from 1 (January) to 12 (December).
daybodyDay of the month, from 1 to 31.
latitudebodyLatitude of the birth place in degrees, negative for south. Text in a local number format, such as "40,7128", is also accepted.
longitudebodyLongitude of the birth place in degrees east of Greenwich, negative for west, so places in the Americas are negative. Text in a local number format is also accepted.
timezonebodyTime zone of the birth place. Either an IANA time zone name, such as America/New_York, America/Chicago or Europe/London. Or a fixed offset from UTC in hours, such as -5 or 5.5.
Optional inputs (12), with their defaults
NameInWhat it does
datequeryFirst day, YYYY-MM-DD, in the place's time zone. Defaults to today.
daysqueryHow many days, from 1 to 31.
latitudequeryLatitude of the place lived in now. Default: the birth place.
longitudequeryLongitude of the place lived in now.
timezonequeryTime zone of the place lived in now: an IANA name or an offset.
langqueryLanguage of the names and labels, such as en (English, the default) or hi (Hindi). GET /v1/meta lists the languages available.
hourbodyHour of birth on the local clock at the birth place, from 0 to 23 (24-hour clock). Default 0.
minutebodyMinute of birth, from 0 to 59. Default 0.
secondbodySecond of birth, from 0 to 59. Default 0.
timezone_foldbodyOnly needed for a local time that happens twice, on the night the clocks go back. In the US since 2007, that is 1:00 to 1:59 AM on the first Sunday in November. 0 picks the first occurrence (before the change) and 1 the second. Without it, such a time is rejected, not guessed. A wrong guess would quietly move the chart by an hour. A local time that never happens, because the clocks jumped forward over it, is also rejected; check the birth time, or send the UTC offset that was in force.
ayanamsabodyThe ayanamsa: the offset between the tropical zodiac (used in Western astrology) and the sidereal zodiac (used in Vedic astrology). lahiri (the default) is the Lahiri, or Chitrapaksha, ayanamsa used by the Government of India. kp is the Krishnamurti ayanamsa used in KP astrology, about 6 arcminutes less. raman is B. V. Raman's, about 1 degree 27 arcminutes less. Also: yukteshwar (Sri Yukteshwar's, about 1 degree 23 arcminutes less), jn_bhasin (J. N. Bhasin's, about 1 degree 6 arcminutes less), ushashashi (about 3 degrees 48 arcminutes less) and fagan_bradley (the Western sidereal zodiac, about 53 arcminutes more). true_chitra keeps the star Spica (Chitra) at exactly 180 degrees, so it follows the star itself; it is within about a minute of arc of Lahiri. The chosen ayanamsa is also used for the transits, sade sati and forecasts read against this chart.
nodebodyHow to calculate Rahu and Ketu, the lunar nodes (the two points where the Moon's orbit crosses the Sun's path). Use true for the actual position (the default) or mean for the averaged position.

Main response fields

  • from (string)
  • days (number)
  • place (object): holds latitude, longitude, basis.
  • running (object): holds day_of_year, utc, local, offset_hours, sun_longitude, sun_sign, day, lagna.
  • dina_pravesh (array of objects): each item holds day_of_year, utc, local, offset_hours, sun_longitude, sun_sign, day, lagna.
  • basis (string)
  • meta (object): holds ayanamsa, ephemeris, natal_sun.
# John Doe, born Aug 15, 1990, 10:30 AM, New York
curl -X POST "https://apiforastrology.com/api/astrology/v1/varshaphal/dina?date=2026-10-01&latitude=40.7128&longitude=-74.006&timezone=America/New_York" \
  -H "Authorization: Bearer $ASTROLOGY_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"year":1990,"month":8,"day":15,"hour":10,"minute":30,"second":0,"latitude":40.7128,"longitude":-74.006,"timezone":"America/New_York"}'
Sample response
{
  "from": "2026-10-01",
  "days": 1,
  "place": {
    "latitude": 40.7128,
    "longitude": -74.006,
    "basis": "given place"
  },
  "running": {
    "day_of_year": 45,
    "utc": "2026-09-30T03:42:46Z",
    "local": "2026-09-29T23:42:46-04:00",
    "offset_hours": -4,
    "sun_longitude": 162.775341,
    "sun_sign": "Virgo",
    "day": false,
    "lagna": {
      "sign": "Gemini",
      "sign_number": 3,
      "longitude": 76.802984,
      "degree_dms": "16 : 48 : 11"
    }
  },
  "dina_pravesh": [
    {
      "day_of_year": 46,
      "utc": "2026-10-01T04:08:35Z",
      "local": "2026-10-01T00:08:34-04:00",
      "offset_hours": -4,
      "sun_longitude": 163.775341,
      "sun_sign": "Virgo",
      "day": false,
      "lagna": {
        "sign": "Gemini",
        "sign_number": 3,
        "longitude": 83.057403,
        "degree_dms": "23 : 03 : 27"
      }
    }
  ],
  "basis": "Day k of the Tajik year begins when the sidereal Sun reaches the natal Sun + (k - 1) whole degrees; day 1 is the varsha pravesh. Solved like the varsha pravesh.",
  "meta": {
    "ayanamsa": "lahiri",
    "ephemeris": "JPL DE440s",
    "natal_sun": 118.775341
  }
}

Example from a real call for John Doe, born Aug 15, 1990, 10:30 AM, New York. Long lists and texts are shortened.

Parameters, schemas and a test request in the interactive reference. Feature: Transits and forecasts.

The ascendant only

POST /v1/ascendant

Returns only the ascendant (the sign rising in the east at birth). You get its degree, nakshatra (one of 27 lunar mansions) and pada (quarter of a nakshatra). It is the same data as the ascendant object in /v1/planets. Use it when the rising sign is all you need.

Cost: Each successful request counts as 1 call toward your monthly calls.

Required inputs

NameInWhat it is
yearbodyYear of birth, from 1850 to 2149 (the range the planetary data covers).
monthbodyMonth of birth, from 1 (January) to 12 (December).
daybodyDay of the month, from 1 to 31.
latitudebodyLatitude of the birth place in degrees, negative for south. Text in a local number format, such as "40,7128", is also accepted.
longitudebodyLongitude of the birth place in degrees east of Greenwich, negative for west, so places in the Americas are negative. Text in a local number format is also accepted.
timezonebodyTime zone of the birth place. Either an IANA time zone name, such as America/New_York, America/Chicago or Europe/London. Or a fixed offset from UTC in hours, such as -5 or 5.5.
Optional inputs (7), with their defaults
NameInWhat it does
langqueryLanguage for the names in the response, such as planets, signs, nakshatras (lunar mansions), tithis (lunar days), months and festivals. The default is en (English); GET /v1/meta lists the others. Each translated value comes with its English original in a matching <field>_en field; use the English value as a key in your code. Codes (such as result or kaal) and object keys always stay in English. Any name not yet translated stays in English and is listed in localization.untranslated.
hourbodyHour of birth on the local clock at the birth place, from 0 to 23 (24-hour clock). Default 0.
minutebodyMinute of birth, from 0 to 59. Default 0.
secondbodySecond of birth, from 0 to 59. Default 0.
timezone_foldbodyOnly needed for a local time that happens twice, on the night the clocks go back. In the US since 2007, that is 1:00 to 1:59 AM on the first Sunday in November. 0 picks the first occurrence (before the change) and 1 the second. Without it, such a time is rejected, not guessed. A wrong guess would quietly move the chart by an hour. A local time that never happens, because the clocks jumped forward over it, is also rejected; check the birth time, or send the UTC offset that was in force.
ayanamsabodyThe ayanamsa: the offset between the tropical zodiac (used in Western astrology) and the sidereal zodiac (used in Vedic astrology). lahiri (the default) is the Lahiri, or Chitrapaksha, ayanamsa used by the Government of India. kp is the Krishnamurti ayanamsa used in KP astrology, about 6 arcminutes less. raman is B. V. Raman's, about 1 degree 27 arcminutes less. Also: yukteshwar (Sri Yukteshwar's, about 1 degree 23 arcminutes less), jn_bhasin (J. N. Bhasin's, about 1 degree 6 arcminutes less), ushashashi (about 3 degrees 48 arcminutes less) and fagan_bradley (the Western sidereal zodiac, about 53 arcminutes more). true_chitra keeps the star Spica (Chitra) at exactly 180 degrees, so it follows the star itself; it is within about a minute of arc of Lahiri. The chosen ayanamsa is also used for the transits, sade sati and forecasts read against this chart.
nodebodyHow to calculate Rahu and Ketu, the lunar nodes (the two points where the Moon's orbit crosses the Sun's path). Use true for the actual position (the default) or mean for the averaged position.

Main response fields

  • meta (object): holds ayanamsa, ayanamsa_value, julian_day, ephemeris, node, timezone.
  • ascendant (object): holds name, longitude, sign, sign_number, degree_in_sign, degree_dms, house, nakshatra, nakshatra_lord, pada, speed, retrograde.
# John Doe, born Aug 15, 1990, 10:30 AM, New York
curl -X POST "https://apiforastrology.com/api/astrology/v1/ascendant" \
  -H "Authorization: Bearer $ASTROLOGY_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"year":1990,"month":8,"day":15,"hour":10,"minute":30,"second":0,"latitude":40.7128,"longitude":-74.006,"timezone":"America/New_York"}'
Sample response
{
  "meta": {
    "ayanamsa": "lahiri",
    "ayanamsa_value": 23.7260727,
    "julian_day": 2448119.10483,
    "ephemeris": "JPL DE440s",
    "node": "true",
    "timezone": {
      "source": "zone",
      "offset_hours": -4,
      "zone": "America/New_York",
      "abbreviation": "EDT",
      "dst": true,
      "dst_hours": 1,
      "ambiguous_resolved_by_fold": null,
      "note": "read from the IANA tz database at this instant, so daylight saving and historical offset changes are included"
    }
  },
  "ascendant": {
    "name": "Ascendant",
    "longitude": 169.934155,
    "sign": "Virgo",
    "sign_number": 6,
    "degree_in_sign": 19.934155,
    "degree_dms": "19 : 56 : 03",
    "house": 1,
    "nakshatra": "Hast",
    "nakshatra_lord": "Moon",
    "pada": 3,
    "speed": 0,
    "retrograde": false,
    "combust": false,
    "dignity": "n/a",
    "vargottama": false,
    "pushkara": {
      "navamsa": false,
      "navamsa_number": 6,
      "bhaga": false,
      "bhaga_degree": 9,
      "bhaga_by_element": false,
      "bhaga_degree_by_element": 14,
      "sources_agree": true,
      "orb_degrees": 1
    }
  }
}

Example from a real call for John Doe, born Aug 15, 1990, 10:30 AM, New York. Long lists and texts are shortened.

Parameters, schemas and a test request in the interactive reference. Feature: Kundli and birth charts.

Sudarshana chakra: the chart from the ascendant, Moon and Sun

POST /v1/chart/sudarshana

Returns the sudarshana chakra: the birth chart read three times. Each ring numbers the houses from a different starting point: the ascendant (lagna), the Moon (chandra) and the Sun (surya). House 1 of each ring is the sign that point is in.

Each ring lists all 12 houses with their sign and the planets in it. The signs and planets are the same in all three rings. Only the house numbers change. Houses are whole signs, as everywhere in the API. See rulebook CH-20.

Cost: Each successful request counts as 1 call toward your monthly calls.

Required inputs

NameInWhat it is
yearbodyYear of birth, from 1850 to 2149 (the range the planetary data covers).
monthbodyMonth of birth, from 1 (January) to 12 (December).
daybodyDay of the month, from 1 to 31.
latitudebodyLatitude of the birth place in degrees, negative for south. Text in a local number format, such as "40,7128", is also accepted.
longitudebodyLongitude of the birth place in degrees east of Greenwich, negative for west, so places in the Americas are negative. Text in a local number format is also accepted.
timezonebodyTime zone of the birth place. Either an IANA time zone name, such as America/New_York, America/Chicago or Europe/London. Or a fixed offset from UTC in hours, such as -5 or 5.5.
Optional inputs (7), with their defaults
NameInWhat it does
langqueryLanguage for the names in the response, such as planets, signs, nakshatras (lunar mansions), tithis (lunar days), months and festivals. The default is en (English); GET /v1/meta lists the others. Each translated value comes with its English original in a matching <field>_en field; use the English value as a key in your code. Codes (such as result or kaal) and object keys always stay in English. Any name not yet translated stays in English and is listed in localization.untranslated.
hourbodyHour of birth on the local clock at the birth place, from 0 to 23 (24-hour clock). Default 0.
minutebodyMinute of birth, from 0 to 59. Default 0.
secondbodySecond of birth, from 0 to 59. Default 0.
timezone_foldbodyOnly needed for a local time that happens twice, on the night the clocks go back. In the US since 2007, that is 1:00 to 1:59 AM on the first Sunday in November. 0 picks the first occurrence (before the change) and 1 the second. Without it, such a time is rejected, not guessed. A wrong guess would quietly move the chart by an hour. A local time that never happens, because the clocks jumped forward over it, is also rejected; check the birth time, or send the UTC offset that was in force.
ayanamsabodyThe ayanamsa: the offset between the tropical zodiac (used in Western astrology) and the sidereal zodiac (used in Vedic astrology). lahiri (the default) is the Lahiri, or Chitrapaksha, ayanamsa used by the Government of India. kp is the Krishnamurti ayanamsa used in KP astrology, about 6 arcminutes less. raman is B. V. Raman's, about 1 degree 27 arcminutes less. Also: yukteshwar (Sri Yukteshwar's, about 1 degree 23 arcminutes less), jn_bhasin (J. N. Bhasin's, about 1 degree 6 arcminutes less), ushashashi (about 3 degrees 48 arcminutes less) and fagan_bradley (the Western sidereal zodiac, about 53 arcminutes more). true_chitra keeps the star Spica (Chitra) at exactly 180 degrees, so it follows the star itself; it is within about a minute of arc of Lahiri. The chosen ayanamsa is also used for the transits, sade sati and forecasts read against this chart.
nodebodyHow to calculate Rahu and Ketu, the lunar nodes (the two points where the Moon's orbit crosses the Sun's path). Use true for the actual position (the default) or mean for the averaged position.

Main response fields

  • rings (array of objects): each item holds ring, counted_from, start_sign, houses.
  • basis (string)
  • meta (object): holds ayanamsa, ayanamsa_value, julian_day, ephemeris, node, timezone.
# John Doe, born Aug 15, 1990, 10:30 AM, New York
curl -X POST "https://apiforastrology.com/api/astrology/v1/chart/sudarshana" \
  -H "Authorization: Bearer $ASTROLOGY_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"year":1990,"month":8,"day":15,"hour":10,"minute":30,"second":0,"latitude":40.7128,"longitude":-74.006,"timezone":"America/New_York"}'
Sample response
{
  "rings": [
    {
      "ring": "lagna",
      "counted_from": "Ascendant",
      "start_sign": "Virgo",
      "houses": [
        {
          "house": 1,
          "sign": "Virgo",
          "sign_number": 6,
          "occupants": []
        },
        {
          "house": 2,
          "sign": "Libra",
          "sign_number": 7,
          "occupants": []
        },
        {
          "house": 3,
          "sign": "Scorpio",
          "sign_number": 8,
          "occupants": []
        }
      ]
    },
    {
      "ring": "chandra",
      "counted_from": "Moon",
      "start_sign": "Taurus",
      "houses": [
        {
          "house": 1,
          "sign": "Taurus",
          "sign_number": 2,
          "occupants": [
            "Moon"
          ]
        },
        {
          "house": 2,
          "sign": "Gemini",
          "sign_number": 3,
          "occupants": []
        },
        {
          "house": 3,
          "sign": "Cancer",
          "sign_number": 4,
          "occupants": [
            "Sun",
            "Jupiter",
            "Venus"
          ]
        }
      ]
    },
    {
      "ring": "surya",
      "counted_from": "Sun",
      "start_sign": "Cancer",
      "houses": [
        {
          "house": 1,
          "sign": "Cancer",
          "sign_number": 4,
          "occupants": [
            "Sun",
            "Jupiter",
            "Venus"
          ]
        },
        {
          "house": 2,
          "sign": "Leo",
          "sign_number": 5,
          "occupants": [
            "Mercury"
          ]
        },
        {
          "house": 3,
          "sign": "Virgo",
          "sign_number": 6,
          "occupants": []
        }
      ]
    }
  ],
  "basis": "Whole-sign houses. Each ring puts house 1 on the sign of its reference point (the ascendant, the Moon, the Sun) and counts on from there. The signs and planets are the birth chart's; only the house numbers change.",
  "meta": {
    "ayanamsa": "lahiri",
    "ayanamsa_value": 23.7260727,
    "julian_day": 2448119.10483,
    "ephemeris": "JPL DE440s",
    "node": "true",
    "timezone": {
      "source": "zone",
      "offset_hours": -4,
      "zone": "America/New_York",
      "abbreviation": "EDT",
      "dst": true,
      "dst_hours": 1,
      "ambiguous_resolved_by_fold": null,
      "note": "read from the IANA tz database at this instant, so daylight saving and historical offset changes are included"
    }
  }
}

Example from a real call for John Doe, born Aug 15, 1990, 10:30 AM, New York. Long lists and texts are shortened.

Parameters, schemas and a test request in the interactive reference. Feature: Kundli and birth charts.

Bhava chalit: houses by the Sripati method

POST /v1/chart/chalit

Returns the bhava chalit chart, the house table found beside the birth chart in most printed kundlis (birth chart books). Here houses are measured from the exact degree of the ascendant (the rising degree) and of the midheaven (the degree overhead at birth). They are not whole signs. So a planet near the edge of a sign can fall in the next or previous house.

Method (Sripati). The ascendant is the middle (madhya) of house 1, and the midheaven is the middle of house 10. Their opposite points are the middles of houses 7 and 4. Each quarter between two of these is split into three equal parts, giving the middles of the other houses. A house begins and ends (its sandhi) halfway between two middles.

For each planet you get its whole_sign_house (the house every other endpoint reports), its chalit_house, and moved, which is true when they differ. moved_grahas lists those planets.

This is the only endpoint that uses a quadrant house system (houses measured from the exact degrees, not from signs). Every other house number in the API, and every reading, stays whole sign. See rulebook CH-15 and CH-16.

Cost: Each successful request counts as 1 call toward your monthly calls.

Required inputs

NameInWhat it is
yearbodyYear of birth, from 1850 to 2149 (the range the planetary data covers).
monthbodyMonth of birth, from 1 (January) to 12 (December).
daybodyDay of the month, from 1 to 31.
latitudebodyLatitude of the birth place in degrees, negative for south. Text in a local number format, such as "40,7128", is also accepted.
longitudebodyLongitude of the birth place in degrees east of Greenwich, negative for west, so places in the Americas are negative. Text in a local number format is also accepted.
timezonebodyTime zone of the birth place. Either an IANA time zone name, such as America/New_York, America/Chicago or Europe/London. Or a fixed offset from UTC in hours, such as -5 or 5.5.
Optional inputs (7), with their defaults
NameInWhat it does
langqueryLanguage for the names in the response, such as planets, signs, nakshatras (lunar mansions), tithis (lunar days), months and festivals. The default is en (English); GET /v1/meta lists the others. Each translated value comes with its English original in a matching <field>_en field; use the English value as a key in your code. Codes (such as result or kaal) and object keys always stay in English. Any name not yet translated stays in English and is listed in localization.untranslated.
hourbodyHour of birth on the local clock at the birth place, from 0 to 23 (24-hour clock). Default 0.
minutebodyMinute of birth, from 0 to 59. Default 0.
secondbodySecond of birth, from 0 to 59. Default 0.
timezone_foldbodyOnly needed for a local time that happens twice, on the night the clocks go back. In the US since 2007, that is 1:00 to 1:59 AM on the first Sunday in November. 0 picks the first occurrence (before the change) and 1 the second. Without it, such a time is rejected, not guessed. A wrong guess would quietly move the chart by an hour. A local time that never happens, because the clocks jumped forward over it, is also rejected; check the birth time, or send the UTC offset that was in force.
ayanamsabodyThe ayanamsa: the offset between the tropical zodiac (used in Western astrology) and the sidereal zodiac (used in Vedic astrology). lahiri (the default) is the Lahiri, or Chitrapaksha, ayanamsa used by the Government of India. kp is the Krishnamurti ayanamsa used in KP astrology, about 6 arcminutes less. raman is B. V. Raman's, about 1 degree 27 arcminutes less. Also: yukteshwar (Sri Yukteshwar's, about 1 degree 23 arcminutes less), jn_bhasin (J. N. Bhasin's, about 1 degree 6 arcminutes less), ushashashi (about 3 degrees 48 arcminutes less) and fagan_bradley (the Western sidereal zodiac, about 53 arcminutes more). true_chitra keeps the star Spica (Chitra) at exactly 180 degrees, so it follows the star itself; it is within about a minute of arc of Lahiri. The chosen ayanamsa is also used for the transits, sade sati and forecasts read against this chart.
nodebodyHow to calculate Rahu and Ketu, the lunar nodes (the two points where the Moon's orbit crosses the Sun's path). Use true for the actual position (the default) or mean for the averaged position.

Main response fields

  • meta (object): holds ayanamsa, ayanamsa_value, julian_day, ephemeris, node, timezone.
  • method (string)
  • house_system (string)
  • ascendant (object): holds longitude, sign, sign_number, degree_in_sign, degree_dms.
  • midheaven (object): holds longitude, sign, sign_number, degree_in_sign, degree_dms.
  • bhavas (array of objects): each item holds bhava, start, madhya, end.
  • positions (array of objects): each item holds name, longitude, sign, sign_number, degree_dms, whole_sign_house, chalit_house, moved.
  • moved_grahas (array of strings)
  • not_computed (array of strings)
# John Doe, born Aug 15, 1990, 10:30 AM, New York
curl -X POST "https://apiforastrology.com/api/astrology/v1/chart/chalit" \
  -H "Authorization: Bearer $ASTROLOGY_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"year":1990,"month":8,"day":15,"hour":10,"minute":30,"second":0,"latitude":40.7128,"longitude":-74.006,"timezone":"America/New_York"}'
Sample response
{
  "meta": {
    "ayanamsa": "lahiri",
    "ayanamsa_value": 23.7260727,
    "julian_day": 2448119.10483,
    "ephemeris": "JPL DE440s",
    "node": "true",
    "timezone": {
      "source": "zone",
      "offset_hours": -4,
      "zone": "America/New_York",
      "abbreviation": "EDT",
      "dst": true,
      "dst_hours": 1,
      "ambiguous_resolved_by_fold": null,
      "note": "read from the IANA tz database at this instant, so daylight saving and historical offset changes are included"
    }
  },
  "method": "sripati",
  "house_system": "Sripati bhava chalit, a quadrant division. It is used on this endpoint only. Every other house number in the API is whole sign.",
  "ascendant": {
    "longitude": 169.934155,
    "sign": "Virgo",
    "sign_number": 6,
    "degree_in_sign": 19.934155,
    "degree_dms": "19 : 56 : 03"
  },
  "midheaven": {
    "longitude": 82.155373,
    "sign": "Gemini",
    "sign_number": 3,
    "degree_in_sign": 22.155373,
    "degree_dms": "22 : 09 : 19"
  },
  "bhavas": [
    {
      "bhava": 1,
      "start": {
        "longitude": 155.304358,
        "sign": "Virgo",
        "sign_number": 6,
        "degree_in_sign": 5.304358,
        "degree_dms": "05 : 18 : 16"
      },
      "madhya": {
        "longitude": 169.934155,
        "sign": "Virgo",
        "sign_number": 6,
        "degree_in_sign": 19.934155,
        "degree_dms": "19 : 56 : 03"
      },
      "end": {
        "longitude": 185.304358,
        "sign": "Libra",
        "sign_number": 7,
        "degree_in_sign": 5.304358,
        "degree_dms": "05 : 18 : 16"
      }
    },
    {
      "bhava": 2,
      "start": {
        "longitude": 185.304358,
        "sign": "Libra",
        "sign_number": 7,
        "degree_in_sign": 5.304358,
        "degree_dms": "05 : 18 : 16"
      },
      "madhya": {
        "longitude": 200.674561,
        "sign": "Libra",
        "sign_number": 7,
        "degree_in_sign": 20.674561,
        "degree_dms": "20 : 40 : 28"
      },
      "end": {
        "longitude": 216.044764,
        "sign": "Scorpio",
        "sign_number": 8,
        "degree_in_sign": 6.044764,
        "degree_dms": "06 : 02 : 41"
      }
    },
    {
      "bhava": 3,
      "start": {
        "longitude": 216.044764,
        "sign": "Scorpio",
        "sign_number": 8,
        "degree_in_sign": 6.044764,
        "degree_dms": "06 : 02 : 41"
      },
      "madhya": {
        "longitude": 231.414967,
        "sign": "Scorpio",
        "sign_number": 8,
        "degree_in_sign": 21.414967,
        "degree_dms": "21 : 24 : 54"
      },
      "end": {
        "longitude": 246.78517,
        "sign": "Sagittarius",
        "sign_number": 9,
        "degree_in_sign": 6.78517,
        "degree_dms": "06 : 47 : 07"
      }
    }
  ],
  "positions": [
    {
      "name": "Sun",
      "longitude": 118.7753409,
      "sign": "Cancer",
      "sign_number": 4,
      "degree_dms": "28 : 46 : 31",
      "whole_sign_house": 11,
      "chalit_house": 11,
      "moved": false
    },
    {
      "name": "Moon",
      "longitude": 54.5750352,
      "sign": "Taurus",
      "sign_number": 2,
      "degree_dms": "24 : 34 : 30",
      "whole_sign_house": 9,
      "chalit_house": 9,
      "moved": false
    },
    {
      "name": "Mars",
      "longitude": 27.7149328,
      "sign": "Aries",
      "sign_number": 1,
      "degree_dms": "27 : 42 : 54",
      "whole_sign_house": 8,
      "chalit_house": 8,
      "moved": false
    }
  ],
  "moved_grahas": [
    "Jupiter"
  ],
  "not_computed": [
    "Other quadrant house systems (Placidus, Koch, KP cusps). They place cusps differently and can move different planets.",
    "Readings by chalit house. Every reading, yoga, aspect and strength in this API is judged from whole-sign houses. This table is shown beside them and changes none of them.",
    "Bhava bala (house strength)."
  ]
}

Example from a real call for John Doe, born Aug 15, 1990, 10:30 AM, New York. Long lists and texts are shortened.

Parameters, schemas and a test request in the interactive reference. Feature: Kundli and birth charts.

The birth chart or any divisional chart as an SVG or PNG image

POST /v1/chart/svg

Draws a chart (kundli) as an SVG image you can show as it is, or as a PNG with format=png. The planets and signs are the same ones /v1/planets and /v1/chart/{division} return for this birth.

Three styles. style=north (the default) is the North Indian diamond. The top diamond is house 1, and each house prints its sign number, 1 for Aries to 12 for Pisces. style=south is the South Indian square. The signs never move: Pisces is top-left, then they run clockwise. The rising sign (lagna) has a diagonal line across its corner and the label Asc. The name of the chart is in the middle. style=east is the East Indian chart used in Bengal and Odisha: a 3x3 grid with Aries in the top middle, the signs running counter-clockwise, and each corner split into two signs. Its lagna cell is shaded and labeled Asc.

Any chart. chart=D1 (the default) is the main birth chart. Any of the 16 divisional charts works, such as D9 (navamsa) or D10 (dasamsa).

Labels. Each planet is a short name (Su, Mo). In D1 its degree in the sign follows, unless degrees=false. A divisional chart shows no degrees. A planet moving backward (retrograde) is marked R. Rahu and Ketu are never marked R. Tradition treats them as always moving backward.

Safe to embed. The image has no stylesheet, script, font file, picture or link. Every color and font is written on each element, so it looks the same in a browser, an <img> tag, a PDF or an app. It is one line of text, so it survives being put in JSON. size sets the width and height in pixels. Without it the image scales to fit its box.

PNG. format=png sends the same drawing as a PNG picture, for places that cannot show SVG, such as some email apps and chat messages. Its labels are set in Noto Serif, in English, Hindi, Marathi or Gujarati. Without size it is 800 pixels square.

format=json returns the image as the svg string, with the ascendant and planet placements it was drawn from.

Cost: Each successful request counts as 1 call toward your monthly calls.

Required inputs

NameInWhat it is
yearbodyYear of birth, from 1850 to 2149 (the range the planetary data covers).
monthbodyMonth of birth, from 1 (January) to 12 (December).
daybodyDay of the month, from 1 to 31.
latitudebodyLatitude of the birth place in degrees, negative for south. Text in a local number format, such as "40,7128", is also accepted.
longitudebodyLongitude of the birth place in degrees east of Greenwich, negative for west, so places in the Americas are negative. Text in a local number format is also accepted.
timezonebodyTime zone of the birth place. Either an IANA time zone name, such as America/New_York, America/Chicago or Europe/London. Or a fixed offset from UTC in hours, such as -5 or 5.5.
Optional inputs (12), with their defaults
NameInWhat it does
stylequerynorth (default) for the North Indian diamond, south for the South Indian square, east for the East Indian grid.
chartqueryWhich chart to draw: D1 (default) for the birth chart, or a divisional chart such as D9. 9 and d9 also work.
langqueryLanguage of the names and labels, such as en (English, the default) or hi (Hindi). GET /v1/meta lists the languages available.
sizequeryWidth and height in pixels, 100 to 4000. Leave it out to let the image fill its box.
degreesqueryShow each planet's degree in D1. Divisional charts never show it.
formatquerysvg (default) for the image, png for the same image as a PNG picture, json for the image with its placements.
hourbodyHour of birth on the local clock at the birth place, from 0 to 23 (24-hour clock). Default 0.
minutebodyMinute of birth, from 0 to 59. Default 0.
secondbodySecond of birth, from 0 to 59. Default 0.
timezone_foldbodyOnly needed for a local time that happens twice, on the night the clocks go back. In the US since 2007, that is 1:00 to 1:59 AM on the first Sunday in November. 0 picks the first occurrence (before the change) and 1 the second. Without it, such a time is rejected, not guessed. A wrong guess would quietly move the chart by an hour. A local time that never happens, because the clocks jumped forward over it, is also rejected; check the birth time, or send the UTC offset that was in force.
ayanamsabodyThe ayanamsa: the offset between the tropical zodiac (used in Western astrology) and the sidereal zodiac (used in Vedic astrology). lahiri (the default) is the Lahiri, or Chitrapaksha, ayanamsa used by the Government of India. kp is the Krishnamurti ayanamsa used in KP astrology, about 6 arcminutes less. raman is B. V. Raman's, about 1 degree 27 arcminutes less. Also: yukteshwar (Sri Yukteshwar's, about 1 degree 23 arcminutes less), jn_bhasin (J. N. Bhasin's, about 1 degree 6 arcminutes less), ushashashi (about 3 degrees 48 arcminutes less) and fagan_bradley (the Western sidereal zodiac, about 53 arcminutes more). true_chitra keeps the star Spica (Chitra) at exactly 180 degrees, so it follows the star itself; it is within about a minute of arc of Lahiri. The chosen ayanamsa is also used for the transits, sade sati and forecasts read against this chart.
nodebodyHow to calculate Rahu and Ketu, the lunar nodes (the two points where the Moon's orbit crosses the Sun's path). Use true for the actual position (the default) or mean for the averaged position.

Main response fields

  • meta (object): holds ayanamsa, ayanamsa_value, julian_day, ephemeris, node, timezone.
  • style (string)
  • chart (string)
  • divisions (number)
  • title (string)
  • size (null)
  • ascendant (object): holds name, sign, sign_number, house.
  • positions (array of objects): each item holds name, sign, sign_number, house, degree_in_sign, retrograde.
  • svg (string)
# John Doe, born Aug 15, 1990, 10:30 AM, New York
curl -X POST "https://apiforastrology.com/api/astrology/v1/chart/svg" \
  -H "Authorization: Bearer $ASTROLOGY_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"year":1990,"month":8,"day":15,"hour":10,"minute":30,"second":0,"latitude":40.7128,"longitude":-74.006,"timezone":"America/New_York"}'
Sample response
{
  "meta": {
    "ayanamsa": "lahiri",
    "ayanamsa_value": 23.7260727,
    "julian_day": 2448119.10483,
    "ephemeris": "JPL DE440s",
    "node": "true",
    "timezone": {
      "source": "zone",
      "offset_hours": -4,
      "zone": "America/New_York",
      "abbreviation": "EDT",
      "dst": true,
      "dst_hours": 1,
      "ambiguous_resolved_by_fold": null,
      "note": "read from the IANA tz database at this instant, so daylight saving and historical offset changes are included"
    }
  },
  "style": "north",
  "chart": "D1",
  "divisions": 1,
  "title": "Rasi chart",
  "size": null,
  "ascendant": {
    "name": "Ascendant",
    "sign": "Virgo",
    "sign_number": 6,
    "house": 1
  },
  "positions": [
    {
      "name": "Sun",
      "sign": "Cancer",
      "sign_number": 4,
      "house": 11,
      "degree_in_sign": 28.7753409,
      "retrograde": false
    },
    {
      "name": "Moon",
      "sign": "Taurus",
      "sign_number": 2,
      "house": 9,
      "degree_in_sign": 24.5750352,
      "retrograde": false
    },
    {
      "name": "Mars",
      "sign": "Aries",
      "sign_number": 1,
      "house": 8,
      "degree_in_sign": 27.7149328,
      "retrograde": false
    }
  ],
  "svg": "<svg class=\"chart\" viewBox=\"-6 -6 412 412\" role=\"img\" aria-label=\"Rasi chart\" xmlns=\"http://www.w3.org/2000/svg\"><polygon points=\"100,100 200,0 300,100 200,200\" class=\"cell first\" fill=\"#f4f4f2\" stroke=\"#0a0a0a\"…"
}

Example from a real call for John Doe, born Aug 15, 1990, 10:30 AM, New York. Long lists and texts are shortened.

Parameters, schemas and a test request in the interactive reference. Feature: Kundli and birth charts.

Any of the 16 divisional charts (D1 to D60)

POST /v1/chart/{division}

Returns one divisional chart (varga). A divisional chart splits each sign into smaller parts and places each planet by the part it falls in. Each chart is read for one area of life: for example, D9 (navamsa) for the spouse and D10 (dasamsa) for career. D1 is the main birth chart.

For the ascendant and each planet you get the sign and the house in this chart. signifies says what the chart is used for. GET /v1/meta lists all 16 supported charts.

Cost: Each successful request counts as 1 call toward your monthly calls.

Required inputs

NameInWhat it is
divisionpathWhich divisional chart, such as D9. The allowed values are listed; 9 and d9 also work.
yearbodyYear of birth, from 1850 to 2149 (the range the planetary data covers).
monthbodyMonth of birth, from 1 (January) to 12 (December).
daybodyDay of the month, from 1 to 31.
latitudebodyLatitude of the birth place in degrees, negative for south. Text in a local number format, such as "40,7128", is also accepted.
longitudebodyLongitude of the birth place in degrees east of Greenwich, negative for west, so places in the Americas are negative. Text in a local number format is also accepted.
timezonebodyTime zone of the birth place. Either an IANA time zone name, such as America/New_York, America/Chicago or Europe/London. Or a fixed offset from UTC in hours, such as -5 or 5.5.
Optional inputs (7), with their defaults
NameInWhat it does
langqueryLanguage for the names in the response, such as planets, signs, nakshatras (lunar mansions), tithis (lunar days), months and festivals. The default is en (English); GET /v1/meta lists the others. Each translated value comes with its English original in a matching <field>_en field; use the English value as a key in your code. Codes (such as result or kaal) and object keys always stay in English. Any name not yet translated stays in English and is listed in localization.untranslated.
hourbodyHour of birth on the local clock at the birth place, from 0 to 23 (24-hour clock). Default 0.
minutebodyMinute of birth, from 0 to 59. Default 0.
secondbodySecond of birth, from 0 to 59. Default 0.
timezone_foldbodyOnly needed for a local time that happens twice, on the night the clocks go back. In the US since 2007, that is 1:00 to 1:59 AM on the first Sunday in November. 0 picks the first occurrence (before the change) and 1 the second. Without it, such a time is rejected, not guessed. A wrong guess would quietly move the chart by an hour. A local time that never happens, because the clocks jumped forward over it, is also rejected; check the birth time, or send the UTC offset that was in force.
ayanamsabodyThe ayanamsa: the offset between the tropical zodiac (used in Western astrology) and the sidereal zodiac (used in Vedic astrology). lahiri (the default) is the Lahiri, or Chitrapaksha, ayanamsa used by the Government of India. kp is the Krishnamurti ayanamsa used in KP astrology, about 6 arcminutes less. raman is B. V. Raman's, about 1 degree 27 arcminutes less. Also: yukteshwar (Sri Yukteshwar's, about 1 degree 23 arcminutes less), jn_bhasin (J. N. Bhasin's, about 1 degree 6 arcminutes less), ushashashi (about 3 degrees 48 arcminutes less) and fagan_bradley (the Western sidereal zodiac, about 53 arcminutes more). true_chitra keeps the star Spica (Chitra) at exactly 180 degrees, so it follows the star itself; it is within about a minute of arc of Lahiri. The chosen ayanamsa is also used for the transits, sade sati and forecasts read against this chart.
nodebodyHow to calculate Rahu and Ketu, the lunar nodes (the two points where the Moon's orbit crosses the Sun's path). Use true for the actual position (the default) or mean for the averaged position.

Main response fields

  • meta (object): How the chart was calculated. Holds ayanamsa, ayanamsa_value, julian_day, ephemeris, node, timezone.
  • varga (string): The chart's code, such as D9.
  • divisions (number): How many equal parts each sign is divided into.
  • signifies (string): What this chart is used for.
  • ascendant (object): The ascendant in this chart. Holds name, sign, sign_number, house.
  • positions (array of objects): The nine planets in this chart. Each item holds name, sign, sign_number, house.
# John Doe, born Aug 15, 1990, 10:30 AM, New York
curl -X POST "https://apiforastrology.com/api/astrology/v1/chart/D9" \
  -H "Authorization: Bearer $ASTROLOGY_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"year":1990,"month":8,"day":15,"hour":10,"minute":30,"second":0,"latitude":40.7128,"longitude":-74.006,"timezone":"America/New_York"}'
Sample response
{
  "meta": {
    "ayanamsa": "lahiri",
    "ayanamsa_value": 23.7260727,
    "julian_day": 2448119.10483,
    "ephemeris": "JPL DE440s",
    "node": "true",
    "timezone": {
      "source": "zone",
      "offset_hours": -4,
      "zone": "America/New_York",
      "abbreviation": "EDT",
      "dst": true,
      "dst_hours": 1,
      "ambiguous_resolved_by_fold": null,
      "note": "read from the IANA tz database at this instant, so daylight saving and historical offset changes are included"
    }
  },
  "varga": "D9",
  "divisions": 9,
  "signifies": "the spouse, and the inner strength of every graha",
  "ascendant": {
    "name": "Ascendant",
    "sign": "Gemini",
    "sign_number": 3,
    "house": 1
  },
  "positions": [
    {
      "name": "Sun",
      "sign": "Pisces",
      "sign_number": 12,
      "house": 10
    },
    {
      "name": "Moon",
      "sign": "Leo",
      "sign_number": 5,
      "house": 3
    },
    {
      "name": "Mars",
      "sign": "Sagittarius",
      "sign_number": 9,
      "house": 7
    }
  ]
}

Example from a real call for John Doe, born Aug 15, 1990, 10:30 AM, New York. Long lists and texts are shortened.

Parameters, schemas and a test request in the interactive reference. Feature: Kundli and birth charts.

Jaimini: sign aspects, argala, chara dasha and karakas

POST /v1/jaimini

Returns the chart as read in the Jaimini system, with short readings. Jaimini is a second classical school of Vedic astrology. It uses the same planet positions as the main (Parashari) school used in the rest of this API, but reads them differently. Signs aspect signs, instead of planets aspecting houses. Dashas (planetary periods) are counted in signs. The karakas (significator planets) are set by each planet's degree, not by the signs a planet rules. So they change with the birth time.

The response has the chara karakas and the arudha padas (A1 to A12: how each house appears to the outside world). It also has sign aspects, argala and chara dasha.

Sign aspects (rashi drishti) are not what /v1/aspects returns. That endpoint gives planet aspects (graha drishti) counted in whole houses. Here, signs aspect other signs and no planet is involved. The twelve signs fall into three groups of four: movable, fixed and dual. Movable signs aspect the fixed signs except the one next to them. Fixed signs aspect the movable signs except the one just before them. Dual signs aspect the other dual signs. These aspects always work both ways.

Argala is the influence on a sign from planets in the 2nd, 4th and 11th signs from it. Planets in the 12th block the 2nd, the 10th blocks the 4th, and the 3rd blocks the 11th. Some texts add a 5th and 9th pair; it is intentionally not included (rulebook JM-04, the API's rule reference).

Chara dasha (a period system based on signs) exists in several versions that give different periods for the same chart. This API uses the common Parashari form. Every rule it applies is stated in the response and in rulebook JM-06. So you can check it and have it corrected if needed.

chara_dasha.dated gives the same periods with dates, from birth, in the local time of the birth place. After the first round of twelve, each sign runs again for 12 minus its first-round years, so the two rounds cover 144 years. Each period has 12 equal sub-periods (antardashas) with their dates (rulebook JM-09).

Add ?lang=hi for Hindi.

Cost: Each successful request counts as 1 call toward your monthly calls.

Required inputs

NameInWhat it is
yearbodyYear of birth, from 1850 to 2149 (the range the planetary data covers).
monthbodyMonth of birth, from 1 (January) to 12 (December).
daybodyDay of the month, from 1 to 31.
latitudebodyLatitude of the birth place in degrees, negative for south. Text in a local number format, such as "40,7128", is also accepted.
longitudebodyLongitude of the birth place in degrees east of Greenwich, negative for west, so places in the Americas are negative. Text in a local number format is also accepted.
timezonebodyTime zone of the birth place. Either an IANA time zone name, such as America/New_York, America/Chicago or Europe/London. Or a fixed offset from UTC in hours, such as -5 or 5.5.
Optional inputs (8), with their defaults
NameInWhat it does
langqueryLanguage of the reading text, such as en (English, the default) or hi (Hindi). GET /v1/meta lists the languages available. If a passage is not written in that language yet, the English passage is returned instead and marked with fell_back_to_en. Names in the response, such as planets and signs, are translated too.
detailqueryLength of the reading text: standard (the default) or expanded, which is about 1.8 times longer. If a passage has no expanded version yet, the standard one is returned. Each text block reports the length it got in its detail field.
hourbodyHour of birth on the local clock at the birth place, from 0 to 23 (24-hour clock). Default 0.
minutebodyMinute of birth, from 0 to 59. Default 0.
secondbodySecond of birth, from 0 to 59. Default 0.
timezone_foldbodyOnly needed for a local time that happens twice, on the night the clocks go back. In the US since 2007, that is 1:00 to 1:59 AM on the first Sunday in November. 0 picks the first occurrence (before the change) and 1 the second. Without it, such a time is rejected, not guessed. A wrong guess would quietly move the chart by an hour. A local time that never happens, because the clocks jumped forward over it, is also rejected; check the birth time, or send the UTC offset that was in force.
ayanamsabodyThe ayanamsa: the offset between the tropical zodiac (used in Western astrology) and the sidereal zodiac (used in Vedic astrology). lahiri (the default) is the Lahiri, or Chitrapaksha, ayanamsa used by the Government of India. kp is the Krishnamurti ayanamsa used in KP astrology, about 6 arcminutes less. raman is B. V. Raman's, about 1 degree 27 arcminutes less. Also: yukteshwar (Sri Yukteshwar's, about 1 degree 23 arcminutes less), jn_bhasin (J. N. Bhasin's, about 1 degree 6 arcminutes less), ushashashi (about 3 degrees 48 arcminutes less) and fagan_bradley (the Western sidereal zodiac, about 53 arcminutes more). true_chitra keeps the star Spica (Chitra) at exactly 180 degrees, so it follows the star itself; it is within about a minute of arc of Lahiri. The chosen ayanamsa is also used for the transits, sade sati and forecasts read against this chart.
nodebodyHow to calculate Rahu and Ketu, the lunar nodes (the two points where the Moon's orbit crosses the Sun's path). Use true for the actual position (the default) or mean for the averaged position.

Main response fields

  • meta (object): holds ayanamsa, ayanamsa_value, julian_day, ephemeris, node, timezone.
  • chara_karakas (object): holds Atmakaraka, Amatyakaraka, Bhratrikaraka, Matrikaraka, Putrakaraka, Gnatikaraka, Darakaraka.
  • padas (object): holds A1, A2, A3, A4, A5, A6, A7, A8, A9, A10, A11, A12.
  • rashi_drishti (object): holds Aries, Taurus, Gemini, Cancer, Leo, Virgo, Libra, Scorpio, Sagittarius, Capricorn, Aquarius, Pisces.
  • argala (object): holds Aries, Taurus, Gemini, Cancer, Leo, Virgo, Libra, Scorpio, Sagittarius, Capricorn, Aquarius, Pisces.
  • chara_dasha (object): holds direction, direction_rule, periods, cycle_years, rule, note, disputed, dated.
  • argala_readings (array of objects): each item holds from_house, from_sign, caused_by, obstructed_from_house, obstructed_from_sign, obstructed_by, obstructed, on, on_sign, text, language, detail.
  • gaps (array)
  • language (string)
  • detail (string)
# John Doe, born Aug 15, 1990, 10:30 AM, New York
curl -X POST "https://apiforastrology.com/api/astrology/v1/jaimini" \
  -H "Authorization: Bearer $ASTROLOGY_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"year":1990,"month":8,"day":15,"hour":10,"minute":30,"second":0,"latitude":40.7128,"longitude":-74.006,"timezone":"America/New_York"}'
Sample response
{
  "meta": {
    "ayanamsa": "lahiri",
    "ayanamsa_value": 23.7260727,
    "julian_day": 2448119.10483,
    "ephemeris": "JPL DE440s",
    "node": "true",
    "timezone": {
      "source": "zone",
      "offset_hours": -4,
      "zone": "America/New_York",
      "abbreviation": "EDT",
      "dst": true,
      "dst_hours": 1,
      "ambiguous_resolved_by_fold": null,
      "note": "read from the IANA tz database at this instant, so daylight saving and historical offset changes are included"
    }
  },
  "chara_karakas": {
    "Atmakaraka": "Sun",
    "Amatyakaraka": "Mars",
    "Bhratrikaraka": "Saturn",
    "Matrikaraka": "Mercury",
    "Putrakaraka": "Moon",
    "Gnatikaraka": "Venus",
    "Darakaraka": "Jupiter"
  },
  "padas": {
    "A1": {
      "sign": "Cancer",
      "name": "Arudha Lagna"
    },
    "A2": {
      "sign": "Capricorn",
      "name": null
    },
    "A3": {
      "sign": "Virgo",
      "name": null
    },
    "A4": {
      "sign": "Aquarius",
      "name": null
    },
    "A5": {
      "sign": "Scorpio",
      "name": null
    },
    "A6": {
      "sign": "Libra",
      "name": null
    },
    "A7": {
      "sign": "Scorpio",
      "name": null
    },
    "A8": {
      "sign": "Capricorn",
      "name": null
    },
    "A9": {
      "sign": "Virgo",
      "name": null
    },
    "A10": {
      "sign": "Libra",
      "name": null
    },
    "A11": {
      "sign": "Pisces",
      "name": null
    },
    "A12": {
      "sign": "Gemini",
      "name": "Upapada Lagna"
    }
  },
  "rashi_drishti": {
    "Aries": {
      "quality": "movable",
      "aspects": [
        "Leo",
        "Scorpio",
        "Aquarius"
      ],
      "text": [
        "Rashi drishti is the Jaimini sign aspect, in which whole signs look at other signs according to their quality. No planet is involved. A movable sign (Aries, Cancer, Libra or Capricorn) aspects three of the four fixed signs: all except the…",
        "It matters because linked signs tie together the parts of life they stand for. Movable signs start things, so their aspect carries a push into what is otherwise settled. A fixed sign under a movable aspect tends to be moved, whether it…",
        "An empty movable sign still aspects its three fixed signs, and that still counts. People used to ordinary planetary aspects, where an empty house casts nothing, most easily miss this."
      ],
      "language": "en",
      "detail": "standard"
    },
    "Taurus": {
      "quality": "fixed",
      "aspects": [
        "Cancer",
        "Libra",
        "Capricorn"
      ],
      "text": [
        "In rashi drishti, the Jaimini sign aspect, whole signs look at each other. A sign's quality decides which ones it sees. A fixed sign (Taurus, Leo, Scorpio or Aquarius) aspects three of the four movable signs: all except the one just before…",
        "This matters because it shows where steadiness enters your chart. Fixed signs hold still, so their aspect steadies things that would otherwise keep moving. Under a fixed sign's aspect, a movable sign tends to keep to one direction longer…"
      ],
      "language": "en",
      "detail": "standard"
    },
    "Gemini": {
      "quality": "dual",
      "aspects": [
        "Virgo",
        "Sagittarius",
        "Pisces"
      ],
      "text": [
        "Rashi drishti is the Jaimini sign aspect, set by each sign's quality. In it, a dual sign looks at the other three dual signs and nothing else. So Gemini, Virgo, Sagittarius and Pisces form a closed group in every chart there is. Dual signs…",
        "No sign outside the four ever aspects a dual sign by rashi drishti. And no dual sign aspects anything outside them. A dual sign can still be affected from elsewhere: through a planet's own aspect, or through a planet in it. Argala…"
      ],
      "language": "en",
      "detail": "standard"
    },
    "Cancer": {
      "quality": "movable",
      "aspects": [
        "Taurus",
        "Scorpio",
        "Aquarius"
      ],
      "text": [
        "Rashi drishti is the Jaimini sign aspect, in which whole signs look at other signs according to their quality. No planet is involved. A movable sign (Aries, Cancer, Libra or Capricorn) aspects three of the four fixed signs: all except the…",
        "It matters because linked signs tie together the parts of life they stand for. Movable signs start things, so their aspect carries a push into what is otherwise settled. A fixed sign under a movable aspect tends to be moved, whether it…",
        "An empty movable sign still aspects its three fixed signs, and that still counts. People used to ordinary planetary aspects, where an empty house casts nothing, most easily miss this."
      ],
      "language": "en",
      "detail": "standard"
    },
    "Leo": {
      "quality": "fixed",
      "aspects": [
        "Aries",
        "Libra",
        "Capricorn"
      ],
      "text": [
        "In rashi drishti, the Jaimini sign aspect, whole signs look at each other. A sign's quality decides which ones it sees. A fixed sign (Taurus, Leo, Scorpio or Aquarius) aspects three of the four movable signs: all except the one just before…",
        "This matters because it shows where steadiness enters your chart. Fixed signs hold still, so their aspect steadies things that would otherwise keep moving. Under a fixed sign's aspect, a movable sign tends to keep to one direction longer…"
      ],
      "language": "en",
      "detail": "standard"
    },
    "Virgo": {
      "quality": "dual",
      "aspects": [
        "Gemini",
        "Sagittarius",
        "Pisces"
      ],
      "text": [
        "Rashi drishti is the Jaimini sign aspect, set by each sign's quality. In it, a dual sign looks at the other three dual signs and nothing else. So Gemini, Virgo, Sagittarius and Pisces form a closed group in every chart there is. Dual signs…",
        "No sign outside the four ever aspects a dual sign by rashi drishti. And no dual sign aspects anything outside them. A dual sign can still be affected from elsewhere: through a planet's own aspect, or through a planet in it. Argala…"
      ],
      "language": "en",
      "detail": "standard"
    },
    "Libra": {
      "quality": "movable",
      "aspects": [
        "Taurus",
        "Leo",
        "Aquarius"
      ],
      "text": [
        "Rashi drishti is the Jaimini sign aspect, in which whole signs look at other signs according to their quality. No planet is involved. A movable sign (Aries, Cancer, Libra or Capricorn) aspects three of the four fixed signs: all except the…",
        "It matters because linked signs tie together the parts of life they stand for. Movable signs start things, so their aspect carries a push into what is otherwise settled. A fixed sign under a movable aspect tends to be moved, whether it…",
        "An empty movable sign still aspects its three fixed signs, and that still counts. People used to ordinary planetary aspects, where an empty house casts nothing, most easily miss this."
      ],
      "language": "en",
      "detail": "standard"
    },
    "Scorpio": {
      "quality": "fixed",
      "aspects": [
        "Aries",
        "Cancer",
        "Capricorn"
      ],
      "text": [
        "In rashi drishti, the Jaimini sign aspect, whole signs look at each other. A sign's quality decides which ones it sees. A fixed sign (Taurus, Leo, Scorpio or Aquarius) aspects three of the four movable signs: all except the one just before…",
        "This matters because it shows where steadiness enters your chart. Fixed signs hold still, so their aspect steadies things that would otherwise keep moving. Under a fixed sign's aspect, a movable sign tends to keep to one direction longer…"
      ],
      "language": "en",
      "detail": "standard"
    },
    "Sagittarius": {
      "quality": "dual",
      "aspects": [
        "Gemini",
        "Virgo",
        "Pisces"
      ],
      "text": [
        "Rashi drishti is the Jaimini sign aspect, set by each sign's quality. In it, a dual sign looks at the other three dual signs and nothing else. So Gemini, Virgo, Sagittarius and Pisces form a closed group in every chart there is. Dual signs…",
        "No sign outside the four ever aspects a dual sign by rashi drishti. And no dual sign aspects anything outside them. A dual sign can still be affected from elsewhere: through a planet's own aspect, or through a planet in it. Argala…"
      ],
      "language": "en",
      "detail": "standard"
    },
    "Capricorn": {
      "quality": "movable",
      "aspects": [
        "Taurus",
        "Leo",
        "Scorpio"
      ],
      "text": [
        "Rashi drishti is the Jaimini sign aspect, in which whole signs look at other signs according to their quality. No planet is involved. A movable sign (Aries, Cancer, Libra or Capricorn) aspects three of the four fixed signs: all except the…",
        "It matters because linked signs tie together the parts of life they stand for. Movable signs start things, so their aspect carries a push into what is otherwise settled. A fixed sign under a movable aspect tends to be moved, whether it…",
        "An empty movable sign still aspects its three fixed signs, and that still counts. People used to ordinary planetary aspects, where an empty house casts nothing, most easily miss this."
      ],
      "language": "en",
      "detail": "standard"
    },
    "Aquarius": {
      "quality": "fixed",
      "aspects": [
        "Aries",
        "Cancer",
        "Libra"
      ],
      "text": [
        "In rashi drishti, the Jaimini sign aspect, whole signs look at each other. A sign's quality decides which ones it sees. A fixed sign (Taurus, Leo, Scorpio or Aquarius) aspects three of the four movable signs: all except the one just before…",
        "This matters because it shows where steadiness enters your chart. Fixed signs hold still, so their aspect steadies things that would otherwise keep moving. Under a fixed sign's aspect, a movable sign tends to keep to one direction longer…"
      ],
      "language": "en",
      "detail": "standard"
    },
    "Pisces": {
      "quality": "dual",
      "aspects": [
        "Gemini",
        "Virgo",
        "Sagittarius"
      ],
      "text": [
        "Rashi drishti is the Jaimini sign aspect, set by each sign's quality. In it, a dual sign looks at the other three dual signs and nothing else. So Gemini, Virgo, Sagittarius and Pisces form a closed group in every chart there is. Dual signs…",
        "No sign outside the four ever aspects a dual sign by rashi drishti. And no dual sign aspects anything outside them. A dual sign can still be affected from elsewhere: through a planet's own aspect, or through a planet in it. Argala…"
      ],
      "language": "en",
      "detail": "standard"
    }
  },
  "argala": {
    "Aries": [
      {
        "from_house": 2,
        "from_sign": "Taurus",
        "caused_by": [
          "Moon"
        ],
        "obstructed_from_house": 12,
        "obstructed_from_sign": "Pisces",
        "obstructed_by": [],
        "obstructed": false
      },
      {
        "from_house": 4,
        "from_sign": "Cancer",
        "caused_by": [
          "Sun",
          "Jupiter",
          "Venus"
        ],
        "obstructed_from_house": 10,
        "obstructed_from_sign": "Capricorn",
        "obstructed_by": [
          "Rahu"
        ],
        "obstructed": false
      }
    ],
    "Taurus": [
      {
        "from_house": 4,
        "from_sign": "Leo",
        "caused_by": [
          "Mercury"
        ],
        "obstructed_from_house": 10,
        "obstructed_from_sign": "Aquarius",
        "obstructed_by": [],
        "obstructed": false
      }
    ],
    "Gemini": [
      {
        "from_house": 2,
        "from_sign": "Cancer",
        "caused_by": [
          "Sun",
          "Jupiter",
          "Venus"
        ],
        "obstructed_from_house": 12,
        "obstructed_from_sign": "Taurus",
        "obstructed_by": [
          "Moon"
        ],
        "obstructed": false
      },
      {
        "from_house": 11,
        "from_sign": "Aries",
        "caused_by": [
          "Mars"
        ],
        "obstructed_from_house": 3,
        "obstructed_from_sign": "Leo",
        "obstructed_by": [
          "Mercury"
        ],
        "obstructed": true
      }
    ],
    "Cancer": [
      {
        "from_house": 2,
        "from_sign": "Leo",
        "caused_by": [
          "Mercury"
        ],
        "obstructed_from_house": 12,
        "obstructed_from_sign": "Gemini",
        "obstructed_by": [],
        "obstructed": false
      },
      {
        "from_house": 11,
        "from_sign": "Taurus",
        "caused_by": [
          "Moon"
        ],
        "obstructed_from_house": 3,
        "obstructed_from_sign": "Virgo",
        "obstructed_by": [],
        "obstructed": false
      }
    ],
    "Leo": [],
    "Virgo": [
      {
        "from_house": 4,
        "from_sign": "Sagittarius",
        "caused_by": [
          "Saturn"
        ],
        "obstructed_from_house": 10,
        "obstructed_from_sign": "Gemini",
        "obstructed_by": [],
        "obstructed": false
      },
      {
        "from_house": 11,
        "from_sign": "Cancer",
        "caused_by": [
          "Sun",
          "Jupiter",
          "Venus"
        ],
        "obstructed_from_house": 3,
        "obstructed_from_sign": "Scorpio",
        "obstructed_by": [],
        "obstructed": false
      }
    ],
    "Libra": [
      {
        "from_house": 4,
        "from_sign": "Capricorn",
        "caused_by": [
          "Rahu"
        ],
        "obstructed_from_house": 10,
        "obstructed_from_sign": "Cancer",
        "obstructed_by": [
          "Sun",
          "Jupiter",
          "Venus"
        ],
        "obstructed": true
      },
      {
        "from_house": 11,
        "from_sign": "Leo",
        "caused_by": [
          "Mercury"
        ],
        "obstructed_from_house": 3,
        "obstructed_from_sign": "Sagittarius",
        "obstructed_by": [
          "Saturn"
        ],
        "obstructed": true
      }
    ],
    "Scorpio": [
      {
        "from_house": 2,
        "from_sign": "Sagittarius",
        "caused_by": [
          "Saturn"
        ],
        "obstructed_from_house": 12,
        "obstructed_from_sign": "Libra",
        "obstructed_by": [],
        "obstructed": false
      }
    ],
    "Sagittarius": [
      {
        "from_house": 2,
        "from_sign": "Capricorn",
        "caused_by": [
          "Rahu"
        ],
        "obstructed_from_house": 12,
        "obstructed_from_sign": "Scorpio",
        "obstructed_by": [],
        "obstructed": false
      }
    ],
    "Capricorn": [
      {
        "from_house": 4,
        "from_sign": "Aries",
        "caused_by": [
          "Mars"
        ],
        "obstructed_from_house": 10,
        "obstructed_from_sign": "Libra",
        "obstructed_by": [],
        "obstructed": false
      }
    ],
    "Aquarius": [
      {
        "from_house": 4,
        "from_sign": "Taurus",
        "caused_by": [
          "Moon"
        ],
        "obstructed_from_house": 10,
        "obstructed_from_sign": "Scorpio",
        "obstructed_by": [],
        "obstructed": false
      },
      {
        "from_house": 11,
        "from_sign": "Sagittarius",
        "caused_by": [
          "Saturn"
        ],
        "obstructed_from_house": 3,
        "obstructed_from_sign": "Aries",
        "obstructed_by": [
          "Mars"
        ],
        "obstructed": true
      }
    ],
    "Pisces": [
      {
        "from_house": 2,
        "from_sign": "Aries",
        "caused_by": [
          "Mars"
        ],
        "obstructed_from_house": 12,
        "obstructed_from_sign": "Aquarius",
        "obstructed_by": [],
        "obstructed": false
      },
      {
        "from_house": 11,
        "from_sign": "Capricorn",
        "caused_by": [
          "Rahu"
        ],
        "obstructed_from_house": 3,
        "obstructed_from_sign": "Taurus",
        "obstructed_by": [
          "Moon"
        ],
        "obstructed": true
      }
    ]
  },
  "chara_dasha": {
    "direction": "direct",
    "direction_rule": "the 9th house holds Taurus, so the dasha runs zodiacally",
    "periods": [
      {
        "sign": "Virgo",
        "sign_number": 6,
        "lord": "Mercury",
        "years": 1,
        "starts_after_years": 0,
        "why": "Mercury is 2 signs from Virgo counting backward",
        "text": [
          "Chara dasha (Jaimini periods that pass from sign to sign) gives Virgo its own stretch of years. A Virgo period is a working period, not a showy one. Virgo is the sign of careful method and precision. So the period fills with service,…",
          "What helps: bring to this period the tedious job you have put off for years, and it often gives way. Old tax papers, a messy set of accounts or a long-stalled repair are good candidates. What the period rarely gives is recognition. The…"
        ],
        "language": "en",
        "detail": "standard"
      },
      {
        "sign": "Libra",
        "sign_number": 7,
        "lord": "Venus",
        "years": 9,
        "starts_after_years": 1,
        "why": "Venus is 10 signs from Libra counting forward",
        "text": [
          "In chara dasha, your years are handed from one sign to the next. A Libra period runs through other people. Libra is the sign of balance, partnership and trade. So the period is made of agreements, partners and dealing with the public. Very…",
          "The typical difficulty is that reaching an agreement can matter more to you than what the agreement says. That is how you end up with deals you regret later. What helps: decide your terms before the conversation, not during it, and read…"
        ],
        "language": "en",
        "detail": "standard"
      },
      {
        "sign": "Scorpio",
        "sign_number": 8,
        "lord": "Ketu",
        "years": 8,
        "starts_after_years": 10,
        "why": "Ketu is 9 signs from Scorpio counting forward",
        "text": [
          "Chara dasha is the Jaimini sequence of sign periods. A Scorpio period turns you toward hidden matters. Scorpio is the sign of depth and secrecy. So these belong to the period: research, hidden matters, other people's money and sudden…",
          "What helps: don't start anything that depends on explaining yourself to others, and do finish whatever has been left half-open for years. Keep one habit of openness: not confessing, just saying things before you are asked. Most of this…"
        ],
        "language": "en",
        "detail": "standard"
      }
    ],
    "cycle_years": 55,
    "rule": "Parashari chara dasha (K. N. Rao): direction from the sign in the 9th house; each sign counted to its lord forward or backward by its own group, minus one; twelve for a lord in its own sign; the two lords of Scorpio and Aquarius resolved…",
    "note": "other chara dasha systems give different periods for the same chart. This one is stated in full in rulebook JM-06.",
    "disputed": "two variants of the Scorpio/Aquarius dual-lord choice are not applied here, confirmed by the astrologer (N-25): ranking the kind of sign the two lords occupy (dual over fixed over movable) before their degrees, and counting a period to…",
    "dated": {
      "year_length_days": 365.25,
      "periods": [
        {
          "cycle": 1,
          "sign": "Virgo",
          "sign_number": 6,
          "years": 1,
          "start": "1990-08-15T10:30:00",
          "end": "1991-08-15T16:30:00",
          "antardasha_direction": "forward",
          "antardashas": [
            {
              "sign": "Libra",
              "sign_number": 7,
              "start": "1990-08-15T10:30:00",
              "end": "1990-09-14T21:00:00"
            },
            {
              "sign": "Scorpio",
              "sign_number": 8,
              "start": "1990-09-14T21:00:00",
              "end": "1990-10-15T07:30:00"
            },
            {
              "sign": "Sagittarius",
              "sign_number": 9,
              "start": "1990-10-15T07:30:00",
              "end": "1990-11-14T18:00:00"
            }
          ]
        },
        {
          "cycle": 1,
          "sign": "Libra",
          "sign_number": 7,
          "years": 9,
          "start": "1991-08-15T16:30:00",
          "end": "2000-08-14T22:30:00",
          "antardasha_direction": "forward",
          "antardashas": [
            {
              "sign": "Scorpio",
              "sign_number": 8,
              "start": "1991-08-15T16:30:00",
              "end": "1992-05-15T15:00:00"
            },
            {
              "sign": "Sagittarius",
              "sign_number": 9,
              "start": "1992-05-15T15:00:00",
              "end": "1993-02-13T13:30:00"
            },
            {
              "sign": "Capricorn",
              "sign_number": 10,
              "start": "1993-02-13T13:30:00",
              "end": "1993-11-14T12:00:00"
            }
          ]
        },
        {
          "cycle": 1,
          "sign": "Scorpio",
          "sign_number": 8,
          "years": 8,
          "start": "2000-08-14T22:30:00",
          "end": "2008-08-14T22:30:00",
          "antardasha_direction": "backward",
          "antardashas": [
            {
              "sign": "Libra",
              "sign_number": 7,
              "start": "2000-08-14T22:30:00",
              "end": "2001-04-15T10:30:00"
            },
            {
              "sign": "Virgo",
              "sign_number": 6,
              "start": "2001-04-15T10:30:00",
              "end": "2001-12-14T22:30:00"
            },
            {
              "sign": "Leo",
              "sign_number": 5,
              "start": "2001-12-14T22:30:00",
              "end": "2002-08-15T10:30:00"
            }
          ]
        }
      ],
      "total_years": 144,
      "second_cycle_rule": "each sign runs again in the same order for twelve minus its first-cycle years (K. N. Rao). A sign that ran twelve years has no second period",
      "antardasha_rule": "twelve equal parts, starting from the sign next to the mahadasha sign and ending with it. They run forward or backward as the sign in the 9th from the mahadasha sign directs. This is the same test that sets the mahadasha direction from the…",
      "note": "dates are local civil time at the birth place. Some software repeats the first-cycle years in the second cycle instead. See rulebook JM-09."
    }
  },
  "argala_readings": [
    {
      "from_house": 4,
      "from_sign": "Sagittarius",
      "caused_by": [
        "Saturn"
      ],
      "obstructed_from_house": 10,
      "obstructed_from_sign": "Gemini",
      "obstructed_by": [],
      "obstructed": false,
      "on": "lagna",
      "on_sign": "Virgo",
      "text": [
        "In Jaimini astrology, argala is influence reaching into a sign from planets outside it. They sit 2nd, 4th or 11th from it. Here planets in the fourth from the sign being read reach into it. Nothing in the tenth from it stops them. The…",
        "Like all argala, what reaches in brings its own nature, not a verdict. If harsh planets (malefics) are doing the supporting, the matter is supported by exactly those planets. The support tends to feel like them. So look first at which…"
      ],
      "language": "en",
      "detail": "standard"
    },
    {
      "from_house": 11,
      "from_sign": "Cancer",
      "caused_by": [
        "Sun",
        "Jupiter",
        "Venus"
      ],
      "obstructed_from_house": 3,
      "obstructed_from_sign": "Scorpio",
      "obstructed_by": [],
      "obstructed": false,
      "on": "lagna",
      "on_sign": "Virgo",
      "text": [
        "Argala describes planets reaching into a sign from certain houses around it, namely the 2nd, 4th and 11th. Planets in the eleventh from the sign being read are doing the reaching here. The third from it holds nothing that stops them. The…",
        "Of the three, you feel this one most easily, because the eleventh gives rather than just supports. But it gives what the planets doing the reaching stand for. So check what that is before counting it as gain. A harsh planet (a malefic)…"
      ],
      "language": "en",
      "detail": "standard"
    },
    {
      "from_house": 2,
      "from_sign": "Leo",
      "caused_by": [
        "Mercury"
      ],
      "obstructed_from_house": 12,
      "obstructed_from_sign": "Gemini",
      "obstructed_by": [],
      "obstructed": false,
      "on": "arudha_lagna",
      "on_sign": "Cancer",
      "text": [
        "Argala is the Jaimini name for outside influence. Planets placed 2nd, 4th or 11th from a sign reach into its affairs without sitting in it. Here planets in the second from the sign being read reach in. Nothing in the twelfth stops them. So…",
        "Argala describes reach, not quality, so this does not say the matter is good. A harsh planet (a malefic) in the second reaches in just as surely as a helpful one (a benefic). And it brings its own nature with it. So read the planets doing…"
      ],
      "language": "en",
      "detail": "standard"
    }
  ],
  "gaps": [],
  "language": "en",
  "detail": "standard"
}

Example from a real call for John Doe, born Aug 15, 1990, 10:30 AM, New York. Long lists and texts are shortened.

Parameters, schemas and a test request in the interactive reference. Feature: Jaimini astrology.

Ashtakavarga: strength points for each sign

POST /v1/ashtakavarga

Ashtakavarga is a point system. There are eight contributors: the seven planets from the Sun to Saturn, plus the ascendant. Each one either gives a sign a point, called a bindu, or gives it nothing. The response has one table per planet (bhinna ashtakavarga), their total (sarva ashtakavarga), and short readings.

Most of this API says whether a placement is favorable or not. Ashtakavarga is the one measure that says how much. For example, a transit through a sign with two bindus is not the same as one through a sign with seven.

Built-in check: for any chart, the seven planet tables always hold exactly 337 bindus in total. The chart decides how they are spread across the twelve signs, never how many there are. The service checks this on every request.

Reductions are calculated but not applied. Two standard reductions, trikona and ekadhipatya shodhana, are returned next to the raw figures, each labelled. They are not applied because the classical texts disagree about them. The texts differ on whether to use them at all, in what order, and how to handle signs that hold planets. See rulebook AV-04 (the API's rule reference).

The ascendant's own table (lagna) is read from the same eight contributors. It always holds 49 bindus (also checked on every request) and is never added into the 337 (rulebook AV-07).

Pindas (pindas) are weighted totals of the reduced tables, for each planet and the ascendant. Rashi pinda weights each sign by a multiplier for that sign. Graha pinda weights the signs the planets occupy by a multiplier for each planet. Shodhya pinda is the sum of the two. They are computed on the ekadhipatya-reduced tables. Like the reductions, they are reported and not applied. Other software can give different rashi pindas, because the schools differ on the reductions and on one multiplier (rulebook AV-08).

Rahu and Ketu have no table in this system and do not contribute points.

Cost: Each successful request counts as 1 call toward your monthly calls.

Required inputs

NameInWhat it is
yearbodyYear of birth, from 1850 to 2149 (the range the planetary data covers).
monthbodyMonth of birth, from 1 (January) to 12 (December).
daybodyDay of the month, from 1 to 31.
latitudebodyLatitude of the birth place in degrees, negative for south. Text in a local number format, such as "40,7128", is also accepted.
longitudebodyLongitude of the birth place in degrees east of Greenwich, negative for west, so places in the Americas are negative. Text in a local number format is also accepted.
timezonebodyTime zone of the birth place. Either an IANA time zone name, such as America/New_York, America/Chicago or Europe/London. Or a fixed offset from UTC in hours, such as -5 or 5.5.
Optional inputs (8), with their defaults
NameInWhat it does
langqueryLanguage of the reading text, such as en (English, the default) or hi (Hindi). GET /v1/meta lists the languages available. If a passage is not written in that language yet, the English passage is returned instead and marked with fell_back_to_en. Names in the response, such as planets and signs, are translated too.
detailqueryLength of the reading text: standard (the default) or expanded, which is about 1.8 times longer. If a passage has no expanded version yet, the standard one is returned. Each text block reports the length it got in its detail field.
hourbodyHour of birth on the local clock at the birth place, from 0 to 23 (24-hour clock). Default 0.
minutebodyMinute of birth, from 0 to 59. Default 0.
secondbodySecond of birth, from 0 to 59. Default 0.
timezone_foldbodyOnly needed for a local time that happens twice, on the night the clocks go back. In the US since 2007, that is 1:00 to 1:59 AM on the first Sunday in November. 0 picks the first occurrence (before the change) and 1 the second. Without it, such a time is rejected, not guessed. A wrong guess would quietly move the chart by an hour. A local time that never happens, because the clocks jumped forward over it, is also rejected; check the birth time, or send the UTC offset that was in force.
ayanamsabodyThe ayanamsa: the offset between the tropical zodiac (used in Western astrology) and the sidereal zodiac (used in Vedic astrology). lahiri (the default) is the Lahiri, or Chitrapaksha, ayanamsa used by the Government of India. kp is the Krishnamurti ayanamsa used in KP astrology, about 6 arcminutes less. raman is B. V. Raman's, about 1 degree 27 arcminutes less. Also: yukteshwar (Sri Yukteshwar's, about 1 degree 23 arcminutes less), jn_bhasin (J. N. Bhasin's, about 1 degree 6 arcminutes less), ushashashi (about 3 degrees 48 arcminutes less) and fagan_bradley (the Western sidereal zodiac, about 53 arcminutes more). true_chitra keeps the star Spica (Chitra) at exactly 180 degrees, so it follows the star itself; it is within about a minute of arc of Lahiri. The chosen ayanamsa is also used for the transits, sade sati and forecasts read against this chart.
nodebodyHow to calculate Rahu and Ketu, the lunar nodes (the two points where the Moon's orbit crosses the Sun's path). Use true for the actual position (the default) or mean for the averaged position.

Main response fields

  • bhinna (object): holds Sun, Moon, Mars, Mercury, Jupiter, Venus, Saturn.
  • bhinna_by_sign_number (object): holds Sun, Moon, Mars, Mercury, Jupiter, Venus, Saturn.
  • totals (object): holds Sun, Moon, Mars, Mercury, Jupiter, Venus, Saturn.
  • sarva (object): holds Aries, Taurus, Gemini, Cancer, Leo, Virgo, Libra, Scorpio, Sagittarius, Capricorn, Aquarius, Pisces.
  • sarva_by_sign_number (object): holds 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12.
  • sarva_total (number)
  • reductions (object): holds trikona, ekadhipatya, applied, note.
  • lagna (object): holds bhinna, bhinna_by_sign_number, total, reductions, in_sarva, note.
  • pindas (object): holds by_table, computed_on, applied, multipliers, conventions, disputed, note.
  • rule (string)
  • invariant (string)
  • readings (array of objects): each item holds id, graha, sign, bindus, bindus_out_of, band, note, text, language, detail.
  • gaps (array)
  • language (string)
  • detail (string)
  • fell_back_to_en (boolean)
  • meta (object): holds ayanamsa, ayanamsa_value, julian_day, ephemeris, node, timezone.
# John Doe, born Aug 15, 1990, 10:30 AM, New York
curl -X POST "https://apiforastrology.com/api/astrology/v1/ashtakavarga" \
  -H "Authorization: Bearer $ASTROLOGY_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"year":1990,"month":8,"day":15,"hour":10,"minute":30,"second":0,"latitude":40.7128,"longitude":-74.006,"timezone":"America/New_York"}'
Sample response
{
  "bhinna": {
    "Sun": {
      "Aries": 3,
      "Taurus": 4,
      "Gemini": 4,
      "Cancer": 6,
      "Leo": 3,
      "Virgo": 1,
      "Libra": 5,
      "Scorpio": 3,
      "Sagittarius": 6,
      "Capricorn": 5,
      "Aquarius": 4,
      "Pisces": 4
    },
    "Moon": {
      "Aries": 4,
      "Taurus": 7,
      "Gemini": 4,
      "Cancer": 3,
      "Leo": 2,
      "Virgo": 3,
      "Libra": 5,
      "Scorpio": 4,
      "Sagittarius": 3,
      "Capricorn": 4,
      "Aquarius": 7,
      "Pisces": 3
    },
    "Mars": {
      "Aries": 3,
      "Taurus": 4,
      "Gemini": 5,
      "Cancer": 4,
      "Leo": 1,
      "Virgo": 3,
      "Libra": 4,
      "Scorpio": 3,
      "Sagittarius": 5,
      "Capricorn": 2,
      "Aquarius": 3,
      "Pisces": 2
    },
    "Mercury": {
      "Aries": 3,
      "Taurus": 5,
      "Gemini": 6,
      "Cancer": 5,
      "Leo": 4,
      "Virgo": 3,
      "Libra": 6,
      "Scorpio": 3,
      "Sagittarius": 7,
      "Capricorn": 3,
      "Aquarius": 5,
      "Pisces": 4
    },
    "Jupiter": {
      "Aries": 6,
      "Taurus": 7,
      "Gemini": 3,
      "Cancer": 4,
      "Leo": 4,
      "Virgo": 5,
      "Libra": 4,
      "Scorpio": 5,
      "Sagittarius": 3,
      "Capricorn": 6,
      "Aquarius": 5,
      "Pisces": 4
    },
    "Venus": {
      "Aries": 6,
      "Taurus": 5,
      "Gemini": 4,
      "Cancer": 4,
      "Leo": 4,
      "Virgo": 5,
      "Libra": 4,
      "Scorpio": 3,
      "Sagittarius": 4,
      "Capricorn": 3,
      "Aquarius": 5,
      "Pisces": 5
    },
    "Saturn": {
      "Aries": 3,
      "Taurus": 5,
      "Gemini": 5,
      "Cancer": 4,
      "Leo": 2,
      "Virgo": 2,
      "Libra": 3,
      "Scorpio": 2,
      "Sagittarius": 3,
      "Capricorn": 3,
      "Aquarius": 4,
      "Pisces": 3
    }
  },
  "bhinna_by_sign_number": {
    "Sun": {
      "1": 3,
      "2": 4,
      "3": 4,
      "4": 6,
      "5": 3,
      "6": 1,
      "7": 5,
      "8": 3,
      "9": 6,
      "10": 5,
      "11": 4,
      "12": 4
    },
    "Moon": {
      "1": 4,
      "2": 7,
      "3": 4,
      "4": 3,
      "5": 2,
      "6": 3,
      "7": 5,
      "8": 4,
      "9": 3,
      "10": 4,
      "11": 7,
      "12": 3
    },
    "Mars": {
      "1": 3,
      "2": 4,
      "3": 5,
      "4": 4,
      "5": 1,
      "6": 3,
      "7": 4,
      "8": 3,
      "9": 5,
      "10": 2,
      "11": 3,
      "12": 2
    },
    "Mercury": {
      "1": 3,
      "2": 5,
      "3": 6,
      "4": 5,
      "5": 4,
      "6": 3,
      "7": 6,
      "8": 3,
      "9": 7,
      "10": 3,
      "11": 5,
      "12": 4
    },
    "Jupiter": {
      "1": 6,
      "2": 7,
      "3": 3,
      "4": 4,
      "5": 4,
      "6": 5,
      "7": 4,
      "8": 5,
      "9": 3,
      "10": 6,
      "11": 5,
      "12": 4
    },
    "Venus": {
      "1": 6,
      "2": 5,
      "3": 4,
      "4": 4,
      "5": 4,
      "6": 5,
      "7": 4,
      "8": 3,
      "9": 4,
      "10": 3,
      "11": 5,
      "12": 5
    },
    "Saturn": {
      "1": 3,
      "2": 5,
      "3": 5,
      "4": 4,
      "5": 2,
      "6": 2,
      "7": 3,
      "8": 2,
      "9": 3,
      "10": 3,
      "11": 4,
      "12": 3
    }
  },
  "totals": {
    "Sun": 48,
    "Moon": 49,
    "Mars": 39,
    "Mercury": 54,
    "Jupiter": 56,
    "Venus": 52,
    "Saturn": 39
  },
  "sarva": {
    "Aries": 28,
    "Taurus": 37,
    "Gemini": 31,
    "Cancer": 30,
    "Leo": 20,
    "Virgo": 22,
    "Libra": 31,
    "Scorpio": 23,
    "Sagittarius": 31,
    "Capricorn": 26,
    "Aquarius": 33,
    "Pisces": 25
  },
  "sarva_by_sign_number": {
    "1": 28,
    "2": 37,
    "3": 31,
    "4": 30,
    "5": 20,
    "6": 22,
    "7": 31,
    "8": 23,
    "9": 31,
    "10": 26,
    "11": 33,
    "12": 25
  },
  "sarva_total": 337,
  "reductions": {
    "trikona": {
      "Sun": {
        "Aries": 0,
        "Taurus": 3,
        "Gemini": 0,
        "Cancer": 3,
        "Leo": 0,
        "Virgo": 0,
        "Libra": 1,
        "Scorpio": 0,
        "Sagittarius": 3,
        "Capricorn": 4,
        "Aquarius": 0,
        "Pisces": 1
      },
      "Moon": {
        "Aries": 2,
        "Taurus": 4,
        "Gemini": 0,
        "Cancer": 0,
        "Leo": 0,
        "Virgo": 0,
        "Libra": 1,
        "Scorpio": 1,
        "Sagittarius": 1,
        "Capricorn": 1,
        "Aquarius": 3,
        "Pisces": 0
      },
      "Mars": {
        "Aries": 2,
        "Taurus": 2,
        "Gemini": 2,
        "Cancer": 2,
        "Leo": 0,
        "Virgo": 1,
        "Libra": 1,
        "Scorpio": 1,
        "Sagittarius": 4,
        "Capricorn": 0,
        "Aquarius": 0,
        "Pisces": 0
      },
      "Mercury": {
        "Aries": 0,
        "Taurus": 2,
        "Gemini": 1,
        "Cancer": 2,
        "Leo": 1,
        "Virgo": 0,
        "Libra": 1,
        "Scorpio": 0,
        "Sagittarius": 4,
        "Capricorn": 0,
        "Aquarius": 0,
        "Pisces": 1
      },
      "Jupiter": {
        "Aries": 3,
        "Taurus": 2,
        "Gemini": 0,
        "Cancer": 0,
        "Leo": 1,
        "Virgo": 0,
        "Libra": 1,
        "Scorpio": 1,
        "Sagittarius": 0,
        "Capricorn": 1,
        "Aquarius": 2,
        "Pisces": 0
      },
      "Venus": {
        "Aries": 2,
        "Taurus": 2,
        "Gemini": 0,
        "Cancer": 1,
        "Leo": 0,
        "Virgo": 2,
        "Libra": 0,
        "Scorpio": 0,
        "Sagittarius": 0,
        "Capricorn": 0,
        "Aquarius": 1,
        "Pisces": 2
      },
      "Saturn": {
        "Aries": 1,
        "Taurus": 3,
        "Gemini": 2,
        "Cancer": 2,
        "Leo": 0,
        "Virgo": 0,
        "Libra": 0,
        "Scorpio": 0,
        "Sagittarius": 1,
        "Capricorn": 1,
        "Aquarius": 1,
        "Pisces": 1
      }
    },
    "ekadhipatya": {
      "Sun": {
        "Aries": 0,
        "Taurus": 3,
        "Gemini": 0,
        "Cancer": 3,
        "Leo": 0,
        "Virgo": 0,
        "Libra": 0,
        "Scorpio": 0,
        "Sagittarius": 3,
        "Capricorn": 4,
        "Aquarius": 0,
        "Pisces": 0
      },
      "Moon": {
        "Aries": 2,
        "Taurus": 4,
        "Gemini": 0,
        "Cancer": 0,
        "Leo": 0,
        "Virgo": 0,
        "Libra": 0,
        "Scorpio": 0,
        "Sagittarius": 1,
        "Capricorn": 1,
        "Aquarius": 1,
        "Pisces": 0
      },
      "Mars": {
        "Aries": 2,
        "Taurus": 2,
        "Gemini": 1,
        "Cancer": 2,
        "Leo": 0,
        "Virgo": 1,
        "Libra": 0,
        "Scorpio": 0,
        "Sagittarius": 4,
        "Capricorn": 0,
        "Aquarius": 0,
        "Pisces": 0
      },
      "Mercury": {
        "Aries": 0,
        "Taurus": 2,
        "Gemini": 1,
        "Cancer": 2,
        "Leo": 1,
        "Virgo": 0,
        "Libra": 0,
        "Scorpio": 0,
        "Sagittarius": 4,
        "Capricorn": 0,
        "Aquarius": 0,
        "Pisces": 0
      },
      "Jupiter": {
        "Aries": 3,
        "Taurus": 2,
        "Gemini": 0,
        "Cancer": 0,
        "Leo": 1,
        "Virgo": 0,
        "Libra": 0,
        "Scorpio": 0,
        "Sagittarius": 0,
        "Capricorn": 1,
        "Aquarius": 1,
        "Pisces": 0
      },
      "Venus": {
        "Aries": 2,
        "Taurus": 2,
        "Gemini": 0,
        "Cancer": 1,
        "Leo": 0,
        "Virgo": 2,
        "Libra": 0,
        "Scorpio": 0,
        "Sagittarius": 0,
        "Capricorn": 0,
        "Aquarius": 1,
        "Pisces": 2
      },
      "Saturn": {
        "Aries": 1,
        "Taurus": 3,
        "Gemini": 2,
        "Cancer": 2,
        "Leo": 0,
        "Virgo": 0,
        "Libra": 0,
        "Scorpio": 0,
        "Sagittarius": 1,
        "Capricorn": 0,
        "Aquarius": 0,
        "Pisces": 0
      }
    },
    "applied": false,
    "note": "computed and reported, never applied. Texts disagree on whether the reductions apply, in what order, and what happens in the occupancy cases. The convention used is named in pindas.conventions -- see rulebook AV-03, AV-04."
  },
  "lagna": {
    "bhinna": {
      "Aries": 4,
      "Taurus": 4,
      "Gemini": 4,
      "Cancer": 4,
      "Leo": 3,
      "Virgo": 5,
      "Libra": 5,
      "Scorpio": 4,
      "Sagittarius": 3,
      "Capricorn": 3,
      "Aquarius": 5,
      "Pisces": 5
    },
    "bhinna_by_sign_number": {
      "1": 4,
      "2": 4,
      "3": 4,
      "4": 4,
      "5": 3,
      "6": 5,
      "7": 5,
      "8": 4,
      "9": 3,
      "10": 3,
      "11": 5,
      "12": 5
    },
    "total": 49,
    "reductions": {
      "trikona": {
        "Aries": 1,
        "Taurus": 1,
        "Gemini": 0,
        "Cancer": 0,
        "Leo": 0,
        "Virgo": 2,
        "Libra": 1,
        "Scorpio": 0,
        "Sagittarius": 0,
        "Capricorn": 0,
        "Aquarius": 1,
        "Pisces": 1
      },
      "ekadhipatya": {
        "Aries": 1,
        "Taurus": 1,
        "Gemini": 0,
        "Cancer": 0,
        "Leo": 0,
        "Virgo": 2,
        "Libra": 0,
        "Scorpio": 0,
        "Sagittarius": 0,
        "Capricorn": 0,
        "Aquarius": 1,
        "Pisces": 1
      },
      "applied": false
    },
    "in_sarva": false,
    "note": "the ascendant's own ashtakavarga, from the same eight contributors. It always holds 49 bindus and is never added into the sarva, whose 337 belongs to the seven grahas. See rulebook AV-07."
  },
  "pindas": {
    "by_table": {
      "Sun": {
        "rashi_pinda": 89,
        "graha_pinda": 96,
        "shodhya_pinda": 185
      },
      "Moon": {
        "rashi_pinda": 79,
        "graha_pinda": 41,
        "shodhya_pinda": 120
      },
      "Mars": {
        "rashi_pinda": 92,
        "graha_pinda": 90,
        "shodhya_pinda": 182
      },
      "Mercury": {
        "rashi_pinda": 82,
        "graha_pinda": 79,
        "shodhya_pinda": 161
      },
      "Jupiter": {
        "rashi_pinda": 67,
        "graha_pinda": 39,
        "shodhya_pinda": 106
      },
      "Venus": {
        "rashi_pinda": 85,
        "graha_pinda": 48,
        "shodhya_pinda": 133
      },
      "Saturn": {
        "rashi_pinda": 70,
        "graha_pinda": 72,
        "shodhya_pinda": 142
      },
      "Lagna": {
        "rashi_pinda": 52,
        "graha_pinda": 13,
        "shodhya_pinda": 65
      }
    },
    "computed_on": "ekadhipatya",
    "applied": false,
    "multipliers": {
      "rashi": {
        "Aries": 7,
        "Taurus": 10,
        "Gemini": 8,
        "Cancer": 4,
        "Leo": 10,
        "Virgo": 6,
        "Libra": 7,
        "Scorpio": 8,
        "Sagittarius": 9,
        "Capricorn": 5,
        "Aquarius": 11,
        "Pisces": 12
      },
      "graha": {
        "Sun": 5,
        "Moon": 5,
        "Mars": 8,
        "Mercury": 5,
        "Jupiter": 10,
        "Venus": 7,
        "Saturn": 5
      }
    },
    "conventions": {
      "trikona": "lowest of each trine subtracted; one zero leaves the trine alone, two zeros clear the third",
      "ekadhipatya_occupied": "a sign holding one of the seven grahas, or the ascendant; the nodes do not count",
      "ekadhipatya_one_occupied": "occupied figure larger or equal: the empty sign is cleared; smaller: the empty sign loses the occupied figure",
      "reproduces": "a desktop program (Lahiri), all 16 rashi, graha and shodhya pindas on two charts"
    },
    "disputed": {
      "virgo_multiplier": {
        "used": 6,
        "other": 5,
        "sources_agree": false,
        "note": "some printed tables give Virgo 5. With 5, a rashi pinda is lower by the reduced Virgo figure of that table."
      }
    },
    "note": "rashi pinda weights each sign of the reduced table by its sign multiplier. Graha pinda weights the figure in each sign a graha occupies by that graha's multiplier. Shodhya pinda is their sum. Computed on the ekadhipatya-reduced tables and…"
  },
  "rule": "eight contributors -- the seven grahas and the ascendant -- each donate a bindu to their benefic places counted from themselves. Rahu and Ketu have no ashtakavarga.",
  "invariant": "the seven tables always hold 337 bindus between them, whatever the chart",
  "readings": [
    {
      "id": "ashtakavarga:Sun",
      "graha": "Sun",
      "sign": "Cancer",
      "bindus": 6,
      "bindus_out_of": 8,
      "band": "strong",
      "note": "read against the sign this graha natally occupies",
      "text": [
        "Ashtakavarga is a scoring system that gives each planet up to eight bindus (points of support) in every sign. Here, the Sun has six or more. That is as much support as the sign can give it. Your authority tends to work cleanly in the…",
        "Each year the Sun passes through this sign for about a month. Use that month rather than waiting it out. The Sun's dasha years (its planetary period) also often show up more clearly in this area than anywhere else."
      ],
      "language": "en",
      "detail": "standard"
    },
    {
      "id": "ashtakavarga:Moon",
      "graha": "Moon",
      "sign": "Taurus",
      "bindus": 7,
      "bindus_out_of": 8,
      "band": "strong",
      "note": "read against the sign this graha natally occupies",
      "text": [
        "Ashtakavarga gives every planet a score of up to eight bindus (points of support) in each sign. The Moon, which rules your mind and feelings, has six or more here. So your mind tends to be at ease in the matters this sign covers. Comfort,…",
        "The Moon passes through this sign for about two days every month. Those days are among the best in the month for anything that needs your own judgment. So save important personal decisions for them when you can."
      ],
      "language": "en",
      "detail": "standard"
    },
    {
      "id": "ashtakavarga:Mars",
      "graha": "Mars",
      "sign": "Aries",
      "bindus": 3,
      "bindus_out_of": 8,
      "band": "weak",
      "note": "read against the sign this graha natally occupies",
      "text": [
        "Ashtakavarga gives each planet up to eight bindus (points of support) in each sign. Mars, the planet of force and drive, has three or fewer here. Effort in the matters this sign covers tends to be wasted. Your energy is real, but it lands…",
        "Force is the wrong tool here. Patience and handing work to others serve you better, especially in the weeks when Mars passes through this sign."
      ],
      "language": "en",
      "detail": "standard"
    }
  ],
  "gaps": [],
  "language": "en",
  "detail": "standard",
  "fell_back_to_en": false,
  "meta": {
    "ayanamsa": "lahiri",
    "ayanamsa_value": 23.7260727,
    "julian_day": 2448119.10483,
    "ephemeris": "JPL DE440s",
    "node": "true",
    "timezone": {
      "source": "zone",
      "offset_hours": -4,
      "zone": "America/New_York",
      "abbreviation": "EDT",
      "dst": true,
      "dst_hours": 1,
      "ambiguous_resolved_by_fold": null,
      "note": "read from the IANA tz database at this instant, so daylight saving and historical offset changes are included"
    }
  }
}

Example from a real call for John Doe, born Aug 15, 1990, 10:30 AM, New York. Long lists and texts are shortened.

Parameters, schemas and a test request in the interactive reference. Feature: Planetary strength.

Planet and house strength (shadbala and bhava bala)

POST /v1/shadbala

Returns how strong each planet is (shadbala, meaning "six-fold strength") and how strong each of the twelve houses is (bhava bala). Use it to see how much of what a placement promises a planet can actually deliver.

The rest of this API judges strength from dignity alone, which is one of six sources and the roughest. Shadbala is the traditional full measure. It combines six kinds of strength: positional, directional, time-based, motional, natural and aspectual. Results are in virupas; 60 virupas make one rupa.

ratio is the planet's strength in rupas divided by the traditional minimum for that planet. At 1.0 or above, the planet is strong enough to deliver what its placement promises. Below 1.0, the placement still makes the same promise, but the planet may lack the strength to deliver it in full.

The six parts are reported separately on purpose. A planet that is strong by position and weak by time reads differently from one that is middling on both. A single total hides that.

Built-in check: natural strength (naisargika bala) is the same for every chart. The seven planets' values always add up to exactly 240 virupas. The service checks this on every request, as ashtakavarga checks its 337 points.

not_computed lists any part that could not be calculated, and why. Nothing is set to zero and then added in as if it were real.

Shadbala is where published software most often differs. Here, directional strength (dig bala) is measured from the planet's exact degree to the real angles of the sky: the ascendant, the descendant, the midheaven (MC, the degree overhead) and the point opposite it. Hora strength uses 60-minute hours from sunrise. When two planets are at war (within one degree), the winner gains strength and the loser loses the same amount, shown as yuddha with yuddha_detail. See rulebook section SB (the API's rule reference).

Cost: Each successful request counts as 1 call toward your monthly calls.

Required inputs

NameInWhat it is
yearbodyYear of birth, from 1850 to 2149 (the range the planetary data covers).
monthbodyMonth of birth, from 1 (January) to 12 (December).
daybodyDay of the month, from 1 to 31.
latitudebodyLatitude of the birth place in degrees, negative for south. Text in a local number format, such as "40,7128", is also accepted.
longitudebodyLongitude of the birth place in degrees east of Greenwich, negative for west, so places in the Americas are negative. Text in a local number format is also accepted.
timezonebodyTime zone of the birth place. Either an IANA time zone name, such as America/New_York, America/Chicago or Europe/London. Or a fixed offset from UTC in hours, such as -5 or 5.5.
Optional inputs (7), with their defaults
NameInWhat it does
langqueryLanguage for the names in the response, such as planets, signs, nakshatras (lunar mansions), tithis (lunar days), months and festivals. The default is en (English); GET /v1/meta lists the others. Each translated value comes with its English original in a matching <field>_en field; use the English value as a key in your code. Codes (such as result or kaal) and object keys always stay in English. Any name not yet translated stays in English and is listed in localization.untranslated.
hourbodyHour of birth on the local clock at the birth place, from 0 to 23 (24-hour clock). Default 0.
minutebodyMinute of birth, from 0 to 59. Default 0.
secondbodySecond of birth, from 0 to 59. Default 0.
timezone_foldbodyOnly needed for a local time that happens twice, on the night the clocks go back. In the US since 2007, that is 1:00 to 1:59 AM on the first Sunday in November. 0 picks the first occurrence (before the change) and 1 the second. Without it, such a time is rejected, not guessed. A wrong guess would quietly move the chart by an hour. A local time that never happens, because the clocks jumped forward over it, is also rejected; check the birth time, or send the UTC offset that was in force.
ayanamsabodyThe ayanamsa: the offset between the tropical zodiac (used in Western astrology) and the sidereal zodiac (used in Vedic astrology). lahiri (the default) is the Lahiri, or Chitrapaksha, ayanamsa used by the Government of India. kp is the Krishnamurti ayanamsa used in KP astrology, about 6 arcminutes less. raman is B. V. Raman's, about 1 degree 27 arcminutes less. Also: yukteshwar (Sri Yukteshwar's, about 1 degree 23 arcminutes less), jn_bhasin (J. N. Bhasin's, about 1 degree 6 arcminutes less), ushashashi (about 3 degrees 48 arcminutes less) and fagan_bradley (the Western sidereal zodiac, about 53 arcminutes more). true_chitra keeps the star Spica (Chitra) at exactly 180 degrees, so it follows the star itself; it is within about a minute of arc of Lahiri. The chosen ayanamsa is also used for the transits, sade sati and forecasts read against this chart.
nodebodyHow to calculate Rahu and Ketu, the lunar nodes (the two points where the Moon's orbit crosses the Sun's path). Use true for the actual position (the default) or mean for the averaged position.

Main response fields

  • shadbala (object): holds grahas, ranked, unit, virupas_per_rupa, not_computed, note.
  • bhava_bala (object): holds houses, ranked, unit, not_computed, note.
  • reckoned_at (object): holds is_day, hora_lord, hora_rule, weekday_lord, vedic_weekday_index, part_fraction, solar_noon_fraction.
  • meta (object): holds ayanamsa, ayanamsa_value, julian_day, ephemeris, node, timezone.
# John Doe, born Aug 15, 1990, 10:30 AM, New York
curl -X POST "https://apiforastrology.com/api/astrology/v1/shadbala" \
  -H "Authorization: Bearer $ASTROLOGY_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"year":1990,"month":8,"day":15,"hour":10,"minute":30,"second":0,"latitude":40.7128,"longitude":-74.006,"timezone":"America/New_York"}'
Sample response
{
  "shadbala": {
    "grahas": {
      "Sun": {
        "sthana": {
          "uchcha": 23.74,
          "saptavargaja": 142.5,
          "ojhayugma": 0,
          "kendradi": 30,
          "drekkana": 0,
          "saptavargaja_detail": {
            "D1": "great_friend",
            "D2": "mulatrikona",
            "D3": "neutral",
            "D7": "great_friend",
            "D9": "neutral",
            "D12": "friend",
            "D30": "great_friend"
          }
        },
        "kala": {
          "nathonnatha": 47.49,
          "paksha": 38.6,
          "tribhaga": 0,
          "kalanga": 0,
          "ayana": 95.86,
          "yuddha": 0,
          "tribhaga_lord": "Mercury",
          "kalanga_detail": {
            "varsha": {
              "lord": "Moon",
              "virupas": 0
            },
            "masa": {
              "lord": "Mercury",
              "virupas": 0
            },
            "vara": {
              "lord": "Mercury",
              "virupas": 0
            },
            "hora": {
              "lord": "Mars",
              "virupas": 0
            }
          }
        },
        "totals": {
          "sthana": 196.24,
          "dig": 47.79,
          "kala": 181.94,
          "cheshta": 95.86,
          "naisargika": 60,
          "drik": -30.45
        },
        "total_virupas": 551.38,
        "rupas": 9.19,
        "required_rupas": 6.5,
        "ratio": 1.41,
        "strong": true,
        "rank": 1
      },
      "Moon": {
        "sthana": {
          "uchcha": 52.81,
          "saptavargaja": 116.25,
          "ojhayugma": 15,
          "kendradi": 15,
          "drekkana": 15,
          "saptavargaja_detail": {
            "D1": "mulatrikona",
            "D2": "great_friend",
            "D3": "enemy",
            "D7": "friend",
            "D9": "great_friend",
            "D12": "enemy",
            "D30": "enemy"
          }
        },
        "kala": {
          "nathonnatha": 12.51,
          "paksha": 42.8,
          "tribhaga": 0,
          "kalanga": 15,
          "ayana": 0.67,
          "yuddha": 0,
          "tribhaga_lord": "Mercury",
          "kalanga_detail": {
            "varsha": {
              "lord": "Moon",
              "virupas": 15
            },
            "masa": {
              "lord": "Mercury",
              "virupas": 0
            },
            "vara": {
              "lord": "Mercury",
              "virupas": 0
            },
            "hora": {
              "lord": "Mars",
              "virupas": 0
            }
          }
        },
        "totals": {
          "sthana": 214.06,
          "dig": 9.19,
          "kala": 70.98,
          "cheshta": 21.4,
          "naisargika": 51.43,
          "drik": 14.67
        },
        "total_virupas": 381.74,
        "rupas": 6.36,
        "required_rupas": 6,
        "ratio": 1.06,
        "strong": true,
        "rank": 6
      },
      "Venus": {
        "sthana": {
          "uchcha": 26.22,
          "saptavargaja": 120,
          "ojhayugma": 30,
          "kendradi": 30,
          "drekkana": 0,
          "saptavargaja_detail": {
            "D1": "neutral",
            "D2": "neutral",
            "D3": "neutral",
            "D7": "neutral",
            "D9": "great_friend",
            "D12": "mulatrikona",
            "D30": "great_friend"
          }
        },
        "kala": {
          "nathonnatha": 47.49,
          "paksha": 21.4,
          "tribhaga": 0,
          "kalanga": 0,
          "ayana": 55.21,
          "yuddha": 0,
          "tribhaga_lord": "Mercury",
          "kalanga_detail": {
            "varsha": {
              "lord": "Moon",
              "virupas": 0
            },
            "masa": {
              "lord": "Mercury",
              "virupas": 0
            },
            "vara": {
              "lord": "Mercury",
              "virupas": 0
            },
            "hora": {
              "lord": "Mars",
              "virupas": 0
            }
          }
        },
        "totals": {
          "sthana": 206.22,
          "dig": 5.39,
          "kala": 124.09,
          "cheshta": 10.46,
          "naisargika": 42.86,
          "drik": -22.92
        },
        "cheshta_detail": {
          "seeghrochcha": 77.66,
          "mean_longitude": 119.74,
          "true_longitude": 98.33,
          "kendra": 31.38
        },
        "total_virupas": 366.11,
        "rupas": 6.1,
        "required_rupas": 5.5,
        "ratio": 1.11,
        "strong": true,
        "rank": 7
      },
      "Jupiter": {
        "sthana": {
          "uchcha": 59.77,
          "saptavargaja": 93.75,
          "ojhayugma": 15,
          "kendradi": 30,
          "drekkana": 15,
          "saptavargaja_detail": {
            "D1": "great_friend",
            "D2": "great_friend",
            "D3": "great_friend",
            "D7": "enemy",
            "D9": "neutral",
            "D12": "neutral",
            "D30": "neutral"
          }
        },
        "kala": {
          "nathonnatha": 47.49,
          "paksha": 21.4,
          "tribhaga": 60,
          "kalanga": 0,
          "ayana": 55.94,
          "yuddha": 0,
          "tribhaga_lord": "Mercury",
          "kalanga_detail": {
            "varsha": {
              "lord": "Moon",
              "virupas": 0
            },
            "masa": {
              "lord": "Mercury",
              "virupas": 0
            },
            "vara": {
              "lord": "Mercury",
              "virupas": 0
            },
            "hora": {
              "lord": "Mars",
              "virupas": 0
            }
          }
        },
        "totals": {
          "sthana": 213.52,
          "dig": 35.25,
          "kala": 184.82,
          "cheshta": 8.89,
          "naisargika": 34.29,
          "drik": -21.94
        },
        "cheshta_detail": {
          "seeghrochcha": 119.74,
          "mean_longitude": 90.43,
          "true_longitude": 95.69,
          "kendra": 26.68
        },
        "total_virupas": 454.84,
        "rupas": 7.58,
        "required_rupas": 6.5,
        "ratio": 1.17,
        "strong": true,
        "rank": 4
      },
      "Mercury": {
        "sthana": {
          "uchcha": 53.58,
          "saptavargaja": 93.75,
          "ojhayugma": 15,
          "kendradi": 15,
          "drekkana": 0,
          "saptavargaja_detail": {
            "D1": "great_friend",
            "D2": "neutral",
            "D3": "enemy",
            "D7": "enemy",
            "D9": "enemy",
            "D12": "own",
            "D30": "great_friend"
          }
        },
        "kala": {
          "nathonnatha": 60,
          "paksha": 21.4,
          "tribhaga": 60,
          "kalanga": 75,
          "ayana": 35.33,
          "yuddha": 0,
          "tribhaga_lord": "Mercury",
          "kalanga_detail": {
            "varsha": {
              "lord": "Moon",
              "virupas": 0
            },
            "masa": {
              "lord": "Mercury",
              "virupas": 30
            },
            "vara": {
              "lord": "Mercury",
              "virupas": 45
            },
            "hora": {
              "lord": "Mars",
              "virupas": 0
            }
          }
        },
        "totals": {
          "sthana": 177.33,
          "dig": 51.94,
          "kala": 251.73,
          "cheshta": 40.71,
          "naisargika": 25.71,
          "drik": -14.44
        },
        "cheshta_detail": {
          "seeghrochcha": 254.86,
          "mean_longitude": 119.74,
          "true_longitude": 145.75,
          "kendra": 122.12
        },
        "total_virupas": 532.98,
        "rupas": 8.88,
        "required_rupas": 7,
        "ratio": 1.27,
        "strong": true,
        "rank": 2
      },
      "Mars": {
        "sthana": {
          "uchcha": 30.1,
          "saptavargaja": 150,
          "ojhayugma": 30,
          "kendradi": 30,
          "drekkana": 0,
          "saptavargaja_detail": {
            "D1": "own",
            "D2": "great_friend",
            "D3": "great_friend",
            "D7": "friend",
            "D9": "great_friend",
            "D12": "great_friend",
            "D30": "friend"
          }
        },
        "kala": {
          "nathonnatha": 12.51,
          "paksha": 38.6,
          "tribhaga": 0,
          "kalanga": 60,
          "ayana": 53.19,
          "yuddha": 0,
          "tribhaga_lord": "Mercury",
          "kalanga_detail": {
            "varsha": {
              "lord": "Moon",
              "virupas": 0
            },
            "masa": {
              "lord": "Mercury",
              "virupas": 0
            },
            "vara": {
              "lord": "Mercury",
              "virupas": 0
            },
            "hora": {
              "lord": "Mars",
              "virupas": 60
            }
          }
        },
        "totals": {
          "sthana": 240.1,
          "dig": 41.85,
          "kala": 164.3,
          "cheshta": 39.52,
          "naisargika": 17.14,
          "drik": 23.35
        },
        "cheshta_detail": {
          "seeghrochcha": 119.74,
          "mean_longitude": 334.64,
          "true_longitude": 27.71,
          "kendra": 118.56
        },
        "total_virupas": 526.26,
        "rupas": 8.77,
        "required_rupas": 5,
        "ratio": 1.75,
        "strong": true,
        "rank": 3
      },
      "Saturn": {
        "sthana": {
          "uchcha": 37.96,
          "saptavargaja": 31.88,
          "ojhayugma": 15,
          "kendradi": 60,
          "drekkana": 0,
          "saptavargaja_detail": {
            "D1": "enemy",
            "D2": "great_enemy",
            "D3": "great_enemy",
            "D7": "neutral",
            "D9": "great_enemy",
            "D12": "neutral",
            "D30": "neutral"
          }
        },
        "kala": {
          "nathonnatha": 12.51,
          "paksha": 38.6,
          "tribhaga": 0,
          "kalanga": 0,
          "ayana": 58.11,
          "yuddha": 0,
          "tribhaga_lord": "Mercury",
          "kalanga_detail": {
            "varsha": {
              "lord": "Moon",
              "virupas": 0
            },
            "masa": {
              "lord": "Mercury",
              "virupas": 0
            },
            "vara": {
              "lord": "Mercury",
              "virupas": 0
            },
            "hora": {
              "lord": "Mars",
              "virupas": 0
            }
          }
        },
        "totals": {
          "sthana": 144.83,
          "dig": 32.06,
          "kala": 109.22,
          "cheshta": 48.7,
          "naisargika": 8.57,
          "drik": 59.78
        },
        "cheshta_detail": {
          "seeghrochcha": 119.74,
          "mean_longitude": 265.54,
          "true_longitude": 266.13,
          "kendra": 146.09
        },
        "total_virupas": 403.17,
        "rupas": 6.72,
        "required_rupas": 5,
        "ratio": 1.34,
        "strong": true,
        "rank": 5
      }
    },
    "ranked": [
      "Sun",
      "Mercury",
      "Mars"
    ],
    "unit": "virupas",
    "virupas_per_rupa": 60,
    "not_computed": [],
    "note": "Ratio is rupas over the classical requirement; at or above 1.0 the graha is strong enough to deliver what its placement promises. The six totals are reported separately because a graha strong on positional grounds and weak on temporal ones…"
  },
  "bhava_bala": {
    "houses": {
      "1": {
        "lord": "Mercury",
        "bhavadhipati": 532.98,
        "bhava_digbala": 60,
        "sign_kind": "nara",
        "total_virupas": 592.98,
        "rupas": 9.88,
        "rank": 1
      },
      "2": {
        "lord": "Venus",
        "bhavadhipati": 366.11,
        "bhava_digbala": 50,
        "sign_kind": "nara",
        "total_virupas": 416.11,
        "rupas": 6.94,
        "rank": 9
      },
      "3": {
        "lord": "Mars",
        "bhavadhipati": 526.26,
        "bhava_digbala": 20,
        "sign_kind": "keeta",
        "total_virupas": 546.26,
        "rupas": 9.1,
        "rank": 5
      },
      "4": {
        "lord": "Jupiter",
        "bhavadhipati": 454.84,
        "bhava_digbala": 0,
        "sign_kind": "chatushpada",
        "total_virupas": 454.84,
        "rupas": 7.58,
        "rank": 7
      },
      "5": {
        "lord": "Saturn",
        "bhavadhipati": 403.17,
        "bhava_digbala": 50,
        "sign_kind": "jalachara",
        "total_virupas": 453.17,
        "rupas": 7.55,
        "rank": 8
      },
      "6": {
        "lord": "Saturn",
        "bhavadhipati": 403.17,
        "bhava_digbala": 10,
        "sign_kind": "nara",
        "total_virupas": 413.17,
        "rupas": 6.89,
        "rank": 11
      },
      "7": {
        "lord": "Jupiter",
        "bhavadhipati": 454.84,
        "bhava_digbala": 30,
        "sign_kind": "jalachara",
        "total_virupas": 484.84,
        "rupas": 8.08,
        "rank": 6
      },
      "8": {
        "lord": "Mars",
        "bhavadhipati": 526.26,
        "bhava_digbala": 40,
        "sign_kind": "chatushpada",
        "total_virupas": 566.26,
        "rupas": 9.44,
        "rank": 3
      },
      "9": {
        "lord": "Venus",
        "bhavadhipati": 366.11,
        "bhava_digbala": 50,
        "sign_kind": "chatushpada",
        "total_virupas": 416.11,
        "rupas": 6.94,
        "rank": 10
      },
      "10": {
        "lord": "Mercury",
        "bhavadhipati": 532.98,
        "bhava_digbala": 30,
        "sign_kind": "nara",
        "total_virupas": 562.98,
        "rupas": 9.38,
        "rank": 4
      },
      "11": {
        "lord": "Moon",
        "bhavadhipati": 381.74,
        "bhava_digbala": 20,
        "sign_kind": "keeta",
        "total_virupas": 401.74,
        "rupas": 6.7,
        "rank": 12
      },
      "12": {
        "lord": "Sun",
        "bhavadhipati": 551.38,
        "bhava_digbala": 40,
        "sign_kind": "chatushpada",
        "total_virupas": 591.38,
        "rupas": 9.86,
        "rank": 2
      }
    },
    "ranked": [
      1,
      12,
      8
    ],
    "unit": "virupas",
    "not_computed": [
      {
        "component": "bhava_drishti",
        "reason": "aspects on a house are not added: sources disagree on the arithmetic and no published figure could be reproduced, so no value is invented for it"
      }
    ],
    "note": "A house is largely as strong as its lord, which is why bhavadhipati bala dominates the total. Bhava digbala reads the kind of sign on the house midpoint (equal houses). Occupancy is not counted separately -- an occupying graha already…"
  },
  "reckoned_at": {
    "is_day": true,
    "hora_lord": "Mars",
    "hora_rule": "sixty_minutes_from_sunrise",
    "weekday_lord": "Mercury",
    "vedic_weekday_index": 3,
    "part_fraction": 0.3166,
    "solar_noon_fraction": 0.5418
  },
  "meta": {
    "ayanamsa": "lahiri",
    "ayanamsa_value": 23.7260727,
    "julian_day": 2448119.10483,
    "ephemeris": "JPL DE440s",
    "node": "true",
    "timezone": {
      "source": "zone",
      "offset_hours": -4,
      "zone": "America/New_York",
      "abbreviation": "EDT",
      "dst": true,
      "dst_hours": 1,
      "ambiguous_resolved_by_fold": null,
      "note": "read from the IANA tz database at this instant, so daylight saving and historical offset changes are included"
    }
  }
}

Example from a real call for John Doe, born Aug 15, 1990, 10:30 AM, New York. Long lists and texts are shortened.

Parameters, schemas and a test request in the interactive reference. Feature: Planetary strength.

Upagrahas: Gulika, Mandi, the kaala velas and the Dhoomadi points

POST /v1/upagrahas

Returns the upagrahas, sensitive points that are not planets. There are two groups, worked out in different ways.

The kaala velas (the Gulikadi group) come from the clock. The day, from sunrise to sunset, or the night, from sunset to the next sunrise, is cut into eight equal parts. The first part belongs to the lord of the weekday by day, and to the lord of the fifth weekday from it by night. The next six follow in weekday order, and the eighth part has no lord. The Sun's part gives Kaala, the Moon's Paridhi, Mars's Mrityu, Mercury's Ardhaprahara, Jupiter's Yamakantaka, Venus's Kodanda and Saturn's Gulika. Each point is the degree rising in the east at a moment of its part. Parashara takes the start of the part (at_start) and the Kalidasa method takes the end (at_end). Both are returned. gulika is the start of Saturn's part and mandi its end.

The parts are divided from the real sunrise and sunset at the birth place: the center of the Sun on the true horizon, without refraction, the classical astrological sunrise shared with shadbala and the special lagnas. Some software ends the parts a few minutes before sunset and lists only seven. This API keeps all eight, as the classical text (BPHS) does.

The Dhoomadi group is arithmetic on the Sun. Dhooma is the Sun plus 133 degrees 20 minutes, and Vyatipata, Parivesha, Indrachapa and Upaketu follow from it. No clock is involved. See rulebook section UG.

Cost: Each successful request counts as 1 call toward your monthly calls.

Required inputs

NameInWhat it is
yearbodyYear of birth, from 1850 to 2149 (the range the planetary data covers).
monthbodyMonth of birth, from 1 (January) to 12 (December).
daybodyDay of the month, from 1 to 31.
latitudebodyLatitude of the birth place in degrees, negative for south. Text in a local number format, such as "40,7128", is also accepted.
longitudebodyLongitude of the birth place in degrees east of Greenwich, negative for west, so places in the Americas are negative. Text in a local number format is also accepted.
timezonebodyTime zone of the birth place. Either an IANA time zone name, such as America/New_York, America/Chicago or Europe/London. Or a fixed offset from UTC in hours, such as -5 or 5.5.
Optional inputs (7), with their defaults
NameInWhat it does
langqueryLanguage for the names in the response, such as planets, signs, nakshatras (lunar mansions), tithis (lunar days), months and festivals. The default is en (English); GET /v1/meta lists the others. Each translated value comes with its English original in a matching <field>_en field; use the English value as a key in your code. Codes (such as result or kaal) and object keys always stay in English. Any name not yet translated stays in English and is listed in localization.untranslated.
hourbodyHour of birth on the local clock at the birth place, from 0 to 23 (24-hour clock). Default 0.
minutebodyMinute of birth, from 0 to 59. Default 0.
secondbodySecond of birth, from 0 to 59. Default 0.
timezone_foldbodyOnly needed for a local time that happens twice, on the night the clocks go back. In the US since 2007, that is 1:00 to 1:59 AM on the first Sunday in November. 0 picks the first occurrence (before the change) and 1 the second. Without it, such a time is rejected, not guessed. A wrong guess would quietly move the chart by an hour. A local time that never happens, because the clocks jumped forward over it, is also rejected; check the birth time, or send the UTC offset that was in force.
ayanamsabodyThe ayanamsa: the offset between the tropical zodiac (used in Western astrology) and the sidereal zodiac (used in Vedic astrology). lahiri (the default) is the Lahiri, or Chitrapaksha, ayanamsa used by the Government of India. kp is the Krishnamurti ayanamsa used in KP astrology, about 6 arcminutes less. raman is B. V. Raman's, about 1 degree 27 arcminutes less. Also: yukteshwar (Sri Yukteshwar's, about 1 degree 23 arcminutes less), jn_bhasin (J. N. Bhasin's, about 1 degree 6 arcminutes less), ushashashi (about 3 degrees 48 arcminutes less) and fagan_bradley (the Western sidereal zodiac, about 53 arcminutes more). true_chitra keeps the star Spica (Chitra) at exactly 180 degrees, so it follows the star itself; it is within about a minute of arc of Lahiri. The chosen ayanamsa is also used for the transits, sade sati and forecasts read against this chart.
nodebodyHow to calculate Rahu and Ketu, the lunar nodes (the two points where the Moon's orbit crosses the Sun's path). Use true for the actual position (the default) or mean for the averaged position.

Main response fields

  • kaala_velas (object): holds divided, from, to, weekday_lord, first_part_lord, parts, rule.
  • gulika (object): holds name, method, taken_at, longitude, sign, sign_number, degree_in_sign, degree_dms, nakshatra, nakshatra_lord, pada.
  • mandi (object): holds name, method, taken_at, longitude, sign, sign_number, degree_in_sign, degree_dms, nakshatra, nakshatra_lord, pada.
  • dhoomadi (array of objects): each item holds name, lord, rule, longitude, sign, sign_number, degree_in_sign, degree_dms, nakshatra, nakshatra_lord, pada.
  • dhoomadi_rule (string)
  • meta (object): holds ayanamsa, ayanamsa_value, julian_day, ephemeris, node, timezone.
# John Doe, born Aug 15, 1990, 10:30 AM, New York
curl -X POST "https://apiforastrology.com/api/astrology/v1/upagrahas" \
  -H "Authorization: Bearer $ASTROLOGY_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"year":1990,"month":8,"day":15,"hour":10,"minute":30,"second":0,"latitude":40.7128,"longitude":-74.006,"timezone":"America/New_York"}'
Sample response
{
  "kaala_velas": {
    "divided": "day",
    "from": "1990-08-15T06:10:44-04:00",
    "to": "1990-08-15T19:49:34-04:00",
    "weekday_lord": "Mercury",
    "first_part_lord": "Mercury",
    "parts": [
      {
        "part": 1,
        "lord": "Mercury",
        "upagraha": "Ardhaprahara",
        "starts": "1990-08-15T06:10:44-04:00",
        "ends": "1990-08-15T07:53:05-04:00",
        "at_start": {
          "longitude": 118.6048896,
          "sign": "Cancer",
          "sign_number": 4,
          "degree_in_sign": 28.6048896,
          "degree_dms": "28 : 36 : 18",
          "nakshatra": "Ashlesha",
          "nakshatra_lord": "Mercury",
          "pada": 4
        },
        "at_end": {
          "longitude": 138.7572853,
          "sign": "Leo",
          "sign_number": 5,
          "degree_in_sign": 18.7572853,
          "degree_dms": "18 : 45 : 26",
          "nakshatra": "Purva Phalguni",
          "nakshatra_lord": "Venus",
          "pada": 2
        }
      },
      {
        "part": 2,
        "lord": "Jupiter",
        "upagraha": "Yamakantaka",
        "starts": "1990-08-15T07:53:05-04:00",
        "ends": "1990-08-15T09:35:26-04:00",
        "at_start": {
          "longitude": 138.7572853,
          "sign": "Leo",
          "sign_number": 5,
          "degree_in_sign": 18.7572853,
          "degree_dms": "18 : 45 : 26",
          "nakshatra": "Purva Phalguni",
          "nakshatra_lord": "Venus",
          "pada": 2
        },
        "at_end": {
          "longitude": 159.093412,
          "sign": "Virgo",
          "sign_number": 6,
          "degree_in_sign": 9.093412,
          "degree_dms": "09 : 05 : 36",
          "nakshatra": "Uttara Phalguni",
          "nakshatra_lord": "Sun",
          "pada": 4
        }
      },
      {
        "part": 3,
        "lord": "Venus",
        "upagraha": "Kodanda",
        "starts": "1990-08-15T09:35:26-04:00",
        "ends": "1990-08-15T11:17:47-04:00",
        "at_start": {
          "longitude": 159.093412,
          "sign": "Virgo",
          "sign_number": 6,
          "degree_in_sign": 9.093412,
          "degree_dms": "09 : 05 : 36",
          "nakshatra": "Uttara Phalguni",
          "nakshatra_lord": "Sun",
          "pada": 4
        },
        "at_end": {
          "longitude": 179.3924809,
          "sign": "Virgo",
          "sign_number": 6,
          "degree_in_sign": 29.3924809,
          "degree_dms": "29 : 23 : 33",
          "nakshatra": "Chitra",
          "nakshatra_lord": "Mars",
          "pada": 2
        }
      }
    ],
    "rule": "the day, sunrise to sunset, cut into eight equal parts. Lords run in weekday order from the weekday lord. The eighth part has no lord (BPHS). `at_start` is the ascendant as the part begins (Parashara), `at_end` as it ends (Kalidasa)"
  },
  "gulika": {
    "name": "Gulika",
    "method": "parashara",
    "taken_at": "start",
    "longitude": 179.3924809,
    "sign": "Virgo",
    "sign_number": 6,
    "degree_in_sign": 29.3924809,
    "degree_dms": "29 : 23 : 33",
    "nakshatra": "Chitra",
    "nakshatra_lord": "Mars",
    "pada": 2
  },
  "mandi": {
    "name": "Mandi",
    "method": "kalidasa",
    "taken_at": "end",
    "longitude": 199.4944877,
    "sign": "Libra",
    "sign_number": 7,
    "degree_in_sign": 19.4944877,
    "degree_dms": "19 : 29 : 40",
    "nakshatra": "Swati",
    "nakshatra_lord": "Rahu",
    "pada": 4
  },
  "dhoomadi": [
    {
      "name": "Dhooma",
      "lord": "Mars",
      "rule": "the Sun plus 133 deg 20 min",
      "longitude": 252.1086743,
      "sign": "Sagittarius",
      "sign_number": 9,
      "degree_in_sign": 12.1086743,
      "degree_dms": "12 : 06 : 31",
      "nakshatra": "Mool",
      "nakshatra_lord": "Ketu",
      "pada": 4
    },
    {
      "name": "Vyatipata",
      "lord": "Rahu",
      "rule": "360 minus Dhooma",
      "longitude": 107.8913257,
      "sign": "Cancer",
      "sign_number": 4,
      "degree_in_sign": 17.8913257,
      "degree_dms": "17 : 53 : 29",
      "nakshatra": "Ashlesha",
      "nakshatra_lord": "Mercury",
      "pada": 1
    },
    {
      "name": "Parivesha",
      "lord": "Moon",
      "rule": "Vyatipata plus 180",
      "longitude": 287.8913257,
      "sign": "Capricorn",
      "sign_number": 10,
      "degree_in_sign": 17.8913257,
      "degree_dms": "17 : 53 : 29",
      "nakshatra": "Shravan",
      "nakshatra_lord": "Moon",
      "pada": 3
    }
  ],
  "dhoomadi_rule": "arithmetic on the Sun's sidereal longitude at birth. Upaketu always lands 30 degrees behind the Sun",
  "meta": {
    "ayanamsa": "lahiri",
    "ayanamsa_value": 23.7260727,
    "julian_day": 2448119.10483,
    "ephemeris": "JPL DE440s",
    "node": "true",
    "timezone": {
      "source": "zone",
      "offset_hours": -4,
      "zone": "America/New_York",
      "abbreviation": "EDT",
      "dst": true,
      "dst_hours": 1,
      "ambiguous_resolved_by_fold": null,
      "note": "read from the IANA tz database at this instant, so daylight saving and historical offset changes are included"
    }
  }
}

Example from a real call for John Doe, born Aug 15, 1990, 10:30 AM, New York. Long lists and texts are shortened.

Parameters, schemas and a test request in the interactive reference. Feature: Kundli and birth charts.

Special lagnas, the yogi point, Jaimini lords and dagdha signs

POST /v1/special-lagnas

Returns the special lagnas (extra rising points) and related points used alongside the ascendant.

Bhava, hora and ghati lagna start at the Sun's degree at sunrise and move at a fixed pace. They move one sign every two hours, every hour, and every 24 minutes. Pranapada turns the time since sunrise into degrees. It adds them to the Sun, or to the 9th or 5th sign from it, depending on the Sun's sign. Indu lagna is counted from the Moon by the values of the two 9th lords, and is a sign with no degree. Varnada lagna combines the ascendant and the hora lagna as BPHS (the classical text) describes.

These move fast. The ghati lagna moves a degree and a quarter a minute. So a few minutes' difference in when sunrise is taken changes it by several degrees. reckoned_from gives the sunrise and the time since it (ishtakaal), so a difference from other software can be traced. This API takes sunrise as the center of the Sun crossing the true horizon, without refraction (the bending of light by the air) – the classical astrological sunrise. Civil calendars print the moment the top edge appears, three to four minutes earlier; that one is used for festivals and the daily panchang, not here.

The yogi point is the Sun plus the Moon plus 93 degrees 20 minutes. It names the yogi, the duplicate yogi and the avayogi. Maheshwara, Rudra and Brahma are Jaimini's lords of longevity. Rudra's disputed list names the other readings tried and the planet each gives. Brahma never comes back null: the primary reading (odd sign and houses 7-12 from the lagna) falls back to an odd sign in any house, then – only if every candidate sits in an even sign – to an odd HOUSE, whatever the sign. stage names which of the three decided it. Saturn, Rahu and Ketu are never returned: where one of them wins a stage, it is named nominal and graha is the 6th planet from it instead, with the other counting convention in disputed. A chart where every candidate is even in both sign and house still leaves graha null, with found: false and not_found saying why – rare, and never invented away. Dagdha rashis are the signs "burnt" by the birth tithi.

not_computed names what is left out and why: a separate Jaimini hora lagna, and Sree lagna. See rulebook section SL.

Cost: Each successful request counts as 1 call toward your monthly calls.

Required inputs

NameInWhat it is
yearbodyYear of birth, from 1850 to 2149 (the range the planetary data covers).
monthbodyMonth of birth, from 1 (January) to 12 (December).
daybodyDay of the month, from 1 to 31.
latitudebodyLatitude of the birth place in degrees, negative for south. Text in a local number format, such as "40,7128", is also accepted.
longitudebodyLongitude of the birth place in degrees east of Greenwich, negative for west, so places in the Americas are negative. Text in a local number format is also accepted.
timezonebodyTime zone of the birth place. Either an IANA time zone name, such as America/New_York, America/Chicago or Europe/London. Or a fixed offset from UTC in hours, such as -5 or 5.5.
Optional inputs (7), with their defaults
NameInWhat it does
langqueryLanguage for the names in the response, such as planets, signs, nakshatras (lunar mansions), tithis (lunar days), months and festivals. The default is en (English); GET /v1/meta lists the others. Each translated value comes with its English original in a matching <field>_en field; use the English value as a key in your code. Codes (such as result or kaal) and object keys always stay in English. Any name not yet translated stays in English and is listed in localization.untranslated.
hourbodyHour of birth on the local clock at the birth place, from 0 to 23 (24-hour clock). Default 0.
minutebodyMinute of birth, from 0 to 59. Default 0.
secondbodySecond of birth, from 0 to 59. Default 0.
timezone_foldbodyOnly needed for a local time that happens twice, on the night the clocks go back. In the US since 2007, that is 1:00 to 1:59 AM on the first Sunday in November. 0 picks the first occurrence (before the change) and 1 the second. Without it, such a time is rejected, not guessed. A wrong guess would quietly move the chart by an hour. A local time that never happens, because the clocks jumped forward over it, is also rejected; check the birth time, or send the UTC offset that was in force.
ayanamsabodyThe ayanamsa: the offset between the tropical zodiac (used in Western astrology) and the sidereal zodiac (used in Vedic astrology). lahiri (the default) is the Lahiri, or Chitrapaksha, ayanamsa used by the Government of India. kp is the Krishnamurti ayanamsa used in KP astrology, about 6 arcminutes less. raman is B. V. Raman's, about 1 degree 27 arcminutes less. Also: yukteshwar (Sri Yukteshwar's, about 1 degree 23 arcminutes less), jn_bhasin (J. N. Bhasin's, about 1 degree 6 arcminutes less), ushashashi (about 3 degrees 48 arcminutes less) and fagan_bradley (the Western sidereal zodiac, about 53 arcminutes more). true_chitra keeps the star Spica (Chitra) at exactly 180 degrees, so it follows the star itself; it is within about a minute of arc of Lahiri. The chosen ayanamsa is also used for the transits, sade sati and forecasts read against this chart.
nodebodyHow to calculate Rahu and Ketu, the lunar nodes (the two points where the Moon's orbit crosses the Sun's path). Use true for the actual position (the default) or mean for the averaged position.

Main response fields

  • reckoned_from (object): holds sunrise, sun_at_sunrise, ishtakaal, sunrise_convention.
  • bhava_lagna (object): holds longitude, sign, sign_number, degree_in_sign, degree_dms, nakshatra, nakshatra_lord, pada, rule.
  • hora_lagna (object): holds longitude, sign, sign_number, degree_in_sign, degree_dms, nakshatra, nakshatra_lord, pada, rule.
  • ghati_lagna (object): holds longitude, sign, sign_number, degree_in_sign, degree_dms, nakshatra, nakshatra_lord, pada, rule.
  • pranapada (object): holds longitude, sign, sign_number, degree_in_sign, degree_dms, nakshatra, nakshatra_lord, pada, sun_sign_quality, rule.
  • indu_lagna (object): holds sign, sign_number, ninth_lord_from_lagna, ninth_lord_from_moon, kalas, rule.
  • varnada_lagna (object): holds sign, sign_number, combined, rule.
  • yogi (object): holds yogi_point, yogi, duplicate_yogi, avayogi, avayogi_point.
  • jaimini (object): holds atmakaraka, maheshwara, rudra, brahma.
  • dagdha_rashis (object): holds tithi, burnt_signs, rule.
  • not_computed (object): holds jaimini_hora_lagna, sree_lagna.
  • meta (object): holds ayanamsa, ayanamsa_value, julian_day, ephemeris, node, timezone.
# John Doe, born Aug 15, 1990, 10:30 AM, New York
curl -X POST "https://apiforastrology.com/api/astrology/v1/special-lagnas" \
  -H "Authorization: Bearer $ASTROLOGY_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"year":1990,"month":8,"day":15,"hour":10,"minute":30,"second":0,"latitude":40.7128,"longitude":-74.006,"timezone":"America/New_York"}'
Sample response
{
  "reckoned_from": {
    "sunrise": "1990-08-15T06:10:44-04:00",
    "sun_at_sunrise": {
      "longitude": 118.6023214,
      "sign": "Cancer",
      "sign_number": 4,
      "degree_in_sign": 28.6023214,
      "degree_dms": "28 : 36 : 08",
      "nakshatra": "Ashlesha",
      "nakshatra_lord": "Mercury",
      "pada": 4
    },
    "ishtakaal": {
      "minutes": 259.262,
      "ghatis": 10.802583,
      "ghati_pala_vipala": "10:48:09"
    },
    "sunrise_convention": "the center of the Sun crossing the true horizon, without refraction (the bending of light by the air) -- the classical astrological sunrise. Civil calendars print the moment the top edge appears, three to four minutes earlier. That gap…"
  },
  "bhava_lagna": {
    "longitude": 183.4178209,
    "sign": "Libra",
    "sign_number": 7,
    "degree_in_sign": 3.4178209,
    "degree_dms": "03 : 25 : 04",
    "nakshatra": "Chitra",
    "nakshatra_lord": "Mars",
    "pada": 4,
    "rule": "the Sun at sunrise plus one sign per 5 ghatis"
  },
  "hora_lagna": {
    "longitude": 248.2333205,
    "sign": "Sagittarius",
    "sign_number": 9,
    "degree_in_sign": 8.2333205,
    "degree_dms": "08 : 14 : 00",
    "nakshatra": "Mool",
    "nakshatra_lord": "Ketu",
    "pada": 3,
    "rule": "the Sun at sunrise plus one sign per 2.5 ghatis"
  },
  "ghati_lagna": {
    "longitude": 82.6798191,
    "sign": "Gemini",
    "sign_number": 3,
    "degree_in_sign": 22.6798191,
    "degree_dms": "22 : 40 : 47",
    "nakshatra": "Punarvasu",
    "nakshatra_lord": "Jupiter",
    "pada": 1,
    "rule": "the Sun at sunrise plus one sign per ghati"
  },
  "pranapada": {
    "longitude": 335.0853317,
    "sign": "Pisces",
    "sign_number": 12,
    "degree_in_sign": 5.0853317,
    "degree_dms": "05 : 05 : 07",
    "nakshatra": "Uttara Bhadrapada",
    "nakshatra_lord": "Saturn",
    "pada": 1,
    "sun_sign_quality": "movable",
    "rule": "two degrees per pala (24 seconds) since sunrise. When the Sun is in a movable sign they are added to the Sun. In a fixed sign they are added to the 9th from it, and in a dual sign to the 5th"
  },
  "indu_lagna": {
    "sign": "Taurus",
    "sign_number": 2,
    "ninth_lord_from_lagna": "Venus",
    "ninth_lord_from_moon": "Saturn",
    "kalas": 13,
    "rule": "kalas of the two 9th lords, reduced by twelve, counted from the Moon's sign. A sign with no degree"
  },
  "varnada_lagna": {
    "sign": "Aquarius",
    "sign_number": 11,
    "combined": "differenced",
    "rule": "BPHS: counts from Aries for an odd sign and back from Pisces for an even one, for the lagna and the hora lagna. Added if both signs are odd or both even, else the difference is taken. The result is counted the lagna's way"
  },
  "yogi": {
    "yogi_point": {
      "longitude": 266.6837094,
      "sign": "Sagittarius",
      "sign_number": 9,
      "degree_in_sign": 26.6837094,
      "degree_dms": "26 : 41 : 01",
      "nakshatra": "Uttara Ashadha",
      "nakshatra_lord": "Sun",
      "pada": 1
    },
    "yogi": "Sun",
    "duplicate_yogi": "Jupiter",
    "avayogi": "Saturn",
    "avayogi_point": {
      "longitude": 93.3503761,
      "sign": "Cancer",
      "sign_number": 4,
      "degree_in_sign": 3.3503761,
      "degree_dms": "03 : 21 : 01",
      "nakshatra": "Pushya",
      "nakshatra_lord": "Saturn",
      "pada": 1
    }
  },
  "jaimini": {
    "atmakaraka": "Sun",
    "maheshwara": {
      "graha": "Saturn",
      "from_sign": "Aquarius",
      "atmakaraka": "Sun",
      "rule": "lord of the 8th sign from the atmakaraka",
      "not_applied": [
        "the exception for an atmakaraka in its own or exaltation sign, and for a node joining the 8th lord, which texts state differently"
      ]
    },
    "rudra": {
      "graha": "Venus",
      "from_sign": "Libra",
      "lord_of_2nd": "Venus",
      "lord_of_8th": "Mars",
      "stronger_lord": "Venus",
      "weaker_lord": "Mars",
      "decided_by": "the atmakaraka is in it",
      "malefics_on_stronger": [
        "Mars"
      ],
      "malefics_on_weaker": [],
      "flipped": false,
      "rule": "the stronger of the 2nd and 8th lords, by the rashi bala of the signs they sit in: atmakaraka, then more grahas, then rashi drishti from the sign's lord, Jupiter or Mercury, then dual over fixed over movable. A tie keeps the 8th lord. The…",
      "disputed": [
        {
          "reading": "compare the 2nd and 8th signs themselves, not the signs the lords sit in",
          "graha": "Venus",
          "agrees": true
        },
        {
          "reading": "malefic aspect read by rashi drishti, not graha drishti",
          "graha": "Venus",
          "agrees": true
        },
        {
          "reading": "the nodes cast graha drishti too (5th, 7th and 9th)",
          "graha": "Venus",
          "agrees": true
        }
      ]
    },
    "brahma": {
      "from_sign": "Virgo",
      "start_decided_by": "tie; the lagna kept",
      "candidates": [
        {
          "graha": "Saturn",
          "lord_of": 6,
          "sign": "Sagittarius",
          "house": 4,
          "odd_sign": true,
          "odd_house": false,
          "visible_half": false,
          "passes": false
        },
        {
          "graha": "Mars",
          "lord_of": 8,
          "sign": "Aries",
          "house": 8,
          "odd_sign": true,
          "odd_house": false,
          "visible_half": true,
          "passes": true
        },
        {
          "graha": "Sun",
          "lord_of": 12,
          "sign": "Cancer",
          "house": 11,
          "odd_sign": false,
          "odd_house": true,
          "visible_half": true,
          "passes": false
        }
      ],
      "stage": "primary",
      "rule": "from the stronger of the lagna and the 7th (rashi bala), the lords of the 6th, 8th and 12th. The strongest in an odd sign and houses 7-12 wins (primary); failing that, the strongest in an odd sign from any house (hemisphere dropped);…",
      "disputed": [],
      "chosen_by": "the only one that qualifies",
      "graha": "Mars",
      "found": true
    }
  },
  "dagdha_rashis": {
    "tithi": {
      "name": "Dashami",
      "index": 25,
      "paksha": "krishna"
    },
    "burnt_signs": [
      "Leo",
      "Scorpio"
    ],
    "rule": "the signs burnt by the birth tithi; Purnima and Amavasya burn none"
  },
  "not_computed": {
    "jaimini_hora_lagna": "One outside report prints a separate Jaimini hora lagna. For one chart it matches the Parashari one. For another, it is the Parashari arc counted from the lagna instead of the Sun. No cited rule produces both, so none is invented (SL-04).",
    "sree_lagna": "Not in BPHS. The formula in use has no outside figure here to check it against."
  },
  "meta": {
    "ayanamsa": "lahiri",
    "ayanamsa_value": 23.7260727,
    "julian_day": 2448119.10483,
    "ephemeris": "JPL DE440s",
    "node": "true",
    "timezone": {
      "source": "zone",
      "offset_hours": -4,
      "zone": "America/New_York",
      "abbreviation": "EDT",
      "dst": true,
      "dst_hours": 1,
      "ambiguous_resolved_by_fold": null,
      "note": "read from the IANA tz database at this instant, so daylight saving and historical offset changes are included"
    }
  }
}

Example from a real call for John Doe, born Aug 15, 1990, 10:30 AM, New York. Long lists and texts are shortened.

Parameters, schemas and a test request in the interactive reference. Feature: Kundli and birth charts.

Divisional-chart strength, ishta and kashta phala, and planet friendships

POST /v1/strength/vimshopaka

Three parts of the traditional strength chapter that sit beside shadbala.

Vimshopaka bala scores each planet out of 20 by its dignity across a set of divisional charts. Four sets are returned: 6 charts (shadvarga), 7 (saptavarga), 10 (dashavarga) and 16 (shodashavarga). Each chart carries a weight. The planet earns all of the weight (20 twentieths) in its own sign. It earns 18, 15, 10, 7 or 5 twentieths when the sign's lord is its great friend, friend, neutral, enemy or great enemy. Friendship is the same five-fold friendship /v1/shadbala scores with. Exaltation is not a separate grade, as in the source text. vargas shows the working chart by chart.

Ishta and kashta phala are how much good and how much harm a planet is able to give, each out of 60. They come from its exaltation strength and its strength of motion in /v1/shadbala. Ishta is the square root of their product. Kashta is the square root of the product of what each falls short of 60. Some software prints the plain average instead. That figure is returned beside it as mean_rule.

maitri is the five-fold friendship table: natural, temporal (from this chart) and the two combined, for every pair of planets. Read it from row to column. It is not symmetric: one planet's view of another can differ from the reverse.

Rahu and Ketu are left out and named in not_computed: the traditional friendship table has no entry for them. See rulebook section VB.

/v1/shadbala is unchanged by this endpoint.

Cost: Each successful request counts as 1 call toward your monthly calls.

Required inputs

NameInWhat it is
yearbodyYear of birth, from 1850 to 2149 (the range the planetary data covers).
monthbodyMonth of birth, from 1 (January) to 12 (December).
daybodyDay of the month, from 1 to 31.
latitudebodyLatitude of the birth place in degrees, negative for south. Text in a local number format, such as "40,7128", is also accepted.
longitudebodyLongitude of the birth place in degrees east of Greenwich, negative for west, so places in the Americas are negative. Text in a local number format is also accepted.
timezonebodyTime zone of the birth place. Either an IANA time zone name, such as America/New_York, America/Chicago or Europe/London. Or a fixed offset from UTC in hours, such as -5 or 5.5.
Optional inputs (7), with their defaults
NameInWhat it does
langqueryLanguage for the names in the response, such as planets, signs, nakshatras (lunar mansions), tithis (lunar days), months and festivals. The default is en (English); GET /v1/meta lists the others. Each translated value comes with its English original in a matching <field>_en field; use the English value as a key in your code. Codes (such as result or kaal) and object keys always stay in English. Any name not yet translated stays in English and is listed in localization.untranslated.
hourbodyHour of birth on the local clock at the birth place, from 0 to 23 (24-hour clock). Default 0.
minutebodyMinute of birth, from 0 to 59. Default 0.
secondbodySecond of birth, from 0 to 59. Default 0.
timezone_foldbodyOnly needed for a local time that happens twice, on the night the clocks go back. In the US since 2007, that is 1:00 to 1:59 AM on the first Sunday in November. 0 picks the first occurrence (before the change) and 1 the second. Without it, such a time is rejected, not guessed. A wrong guess would quietly move the chart by an hour. A local time that never happens, because the clocks jumped forward over it, is also rejected; check the birth time, or send the UTC offset that was in force.
ayanamsabodyThe ayanamsa: the offset between the tropical zodiac (used in Western astrology) and the sidereal zodiac (used in Vedic astrology). lahiri (the default) is the Lahiri, or Chitrapaksha, ayanamsa used by the Government of India. kp is the Krishnamurti ayanamsa used in KP astrology, about 6 arcminutes less. raman is B. V. Raman's, about 1 degree 27 arcminutes less. Also: yukteshwar (Sri Yukteshwar's, about 1 degree 23 arcminutes less), jn_bhasin (J. N. Bhasin's, about 1 degree 6 arcminutes less), ushashashi (about 3 degrees 48 arcminutes less) and fagan_bradley (the Western sidereal zodiac, about 53 arcminutes more). true_chitra keeps the star Spica (Chitra) at exactly 180 degrees, so it follows the star itself; it is within about a minute of arc of Lahiri. The chosen ayanamsa is also used for the transits, sade sati and forecasts read against this chart.
nodebodyHow to calculate Rahu and Ketu, the lunar nodes (the two points where the Moon's orbit crosses the Sun's path). Use true for the actual position (the default) or mean for the averaged position.

Main response fields

  • grahas (object): holds Sun, Moon, Venus, Jupiter, Mercury, Mars, Saturn.
  • maitri (object): holds Sun, Moon, Venus, Jupiter, Mercury, Mars, Saturn.
  • scale (object): holds vimshopaka, phala.
  • weights (object): holds shadvarga, saptavarga, dashavarga, shodashavarga.
  • points (object): holds own, great_friend, friend, neutral, enemy, great_enemy.
  • not_computed (array of objects): each item holds component, reason.
  • basis (object): holds vimshopaka, phala, maitri.
  • meta (object): holds ayanamsa, ayanamsa_value, julian_day, ephemeris, node, timezone.
# John Doe, born Aug 15, 1990, 10:30 AM, New York
curl -X POST "https://apiforastrology.com/api/astrology/v1/strength/vimshopaka" \
  -H "Authorization: Bearer $ASTROLOGY_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"year":1990,"month":8,"day":15,"hour":10,"minute":30,"second":0,"latitude":40.7128,"longitude":-74.006,"timezone":"America/New_York"}'
Sample response
{
  "grahas": {
    "Sun": {
      "vimshopaka": {
        "shadvarga": 14.3,
        "saptavarga": 14.9,
        "dashavarga": 16.12,
        "shodashavarga": 15.62
      },
      "vargas": {
        "D1": {
          "sign": "Cancer",
          "lord": "Moon",
          "grade": "great_friend",
          "points": 18
        },
        "D2": {
          "sign": "Leo",
          "lord": "Sun",
          "grade": "own",
          "points": 20
        },
        "D3": {
          "sign": "Pisces",
          "lord": "Jupiter",
          "grade": "neutral",
          "points": 10
        },
        "D4": {
          "sign": "Aries",
          "lord": "Mars",
          "grade": "great_friend",
          "points": 18
        },
        "D7": {
          "sign": "Cancer",
          "lord": "Moon",
          "grade": "great_friend",
          "points": 18
        },
        "D9": {
          "sign": "Pisces",
          "lord": "Jupiter",
          "grade": "neutral",
          "points": 10
        },
        "D10": {
          "sign": "Sagittarius",
          "lord": "Jupiter",
          "grade": "neutral",
          "points": 10
        },
        "D12": {
          "sign": "Gemini",
          "lord": "Mercury",
          "grade": "friend",
          "points": 15
        },
        "D16": {
          "sign": "Cancer",
          "lord": "Moon",
          "grade": "great_friend",
          "points": 18
        },
        "D20": {
          "sign": "Scorpio",
          "lord": "Mars",
          "grade": "great_friend",
          "points": 18
        },
        "D24": {
          "sign": "Gemini",
          "lord": "Mercury",
          "grade": "friend",
          "points": 15
        },
        "D27": {
          "sign": "Aquarius",
          "lord": "Saturn",
          "grade": "great_enemy",
          "points": 5
        },
        "D30": {
          "sign": "Scorpio",
          "lord": "Mars",
          "grade": "great_friend",
          "points": 18
        },
        "D40": {
          "sign": "Sagittarius",
          "lord": "Jupiter",
          "grade": "neutral",
          "points": 10
        },
        "D45": {
          "sign": "Scorpio",
          "lord": "Mars",
          "grade": "great_friend",
          "points": 18
        },
        "D60": {
          "sign": "Aries",
          "lord": "Mars",
          "grade": "great_friend",
          "points": 18
        }
      },
      "phala": {
        "uchcha": 23.74,
        "cheshta": 95.86,
        "ishta": 37.74,
        "kashta": 0,
        "capped": true,
        "mean_rule": {
          "ishta": 41.87,
          "kashta": 18.13
        }
      }
    },
    "Moon": {
      "vimshopaka": {
        "shadvarga": 13.25,
        "saptavarga": 13.57,
        "dashavarga": 14.85,
        "shodashavarga": 15.33
      },
      "vargas": {
        "D1": {
          "sign": "Taurus",
          "lord": "Venus",
          "grade": "friend",
          "points": 15
        },
        "D2": {
          "sign": "Leo",
          "lord": "Sun",
          "grade": "great_friend",
          "points": 18
        },
        "D3": {
          "sign": "Capricorn",
          "lord": "Saturn",
          "grade": "enemy",
          "points": 7
        },
        "D4": {
          "sign": "Aquarius",
          "lord": "Saturn",
          "grade": "enemy",
          "points": 7
        },
        "D7": {
          "sign": "Aries",
          "lord": "Mars",
          "grade": "friend",
          "points": 15
        },
        "D9": {
          "sign": "Leo",
          "lord": "Sun",
          "grade": "great_friend",
          "points": 18
        },
        "D10": {
          "sign": "Virgo",
          "lord": "Mercury",
          "grade": "great_friend",
          "points": 18
        },
        "D12": {
          "sign": "Aquarius",
          "lord": "Saturn",
          "grade": "enemy",
          "points": 7
        },
        "D16": {
          "sign": "Virgo",
          "lord": "Mercury",
          "grade": "great_friend",
          "points": 18
        },
        "D20": {
          "sign": "Aries",
          "lord": "Mars",
          "grade": "friend",
          "points": 15
        },
        "D24": {
          "sign": "Aquarius",
          "lord": "Saturn",
          "grade": "enemy",
          "points": 7
        },
        "D27": {
          "sign": "Taurus",
          "lord": "Venus",
          "grade": "friend",
          "points": 15
        },
        "D30": {
          "sign": "Capricorn",
          "lord": "Saturn",
          "grade": "enemy",
          "points": 7
        },
        "D40": {
          "sign": "Gemini",
          "lord": "Mercury",
          "grade": "great_friend",
          "points": 18
        },
        "D45": {
          "sign": "Leo",
          "lord": "Sun",
          "grade": "great_friend",
          "points": 18
        },
        "D60": {
          "sign": "Gemini",
          "lord": "Mercury",
          "grade": "great_friend",
          "points": 18
        }
      },
      "phala": {
        "uchcha": 52.81,
        "cheshta": 21.4,
        "ishta": 33.62,
        "kashta": 16.66,
        "capped": false,
        "mean_rule": {
          "ishta": 37.11,
          "kashta": 22.89
        }
      }
    },
    "Venus": {
      "vimshopaka": {
        "shadvarga": 13.4,
        "saptavarga": 13.2,
        "dashavarga": 13.57,
        "shodashavarga": 13.25
      },
      "vargas": {
        "D1": {
          "sign": "Cancer",
          "lord": "Moon",
          "grade": "neutral",
          "points": 10
        },
        "D2": {
          "sign": "Cancer",
          "lord": "Moon",
          "grade": "neutral",
          "points": 10
        },
        "D3": {
          "sign": "Cancer",
          "lord": "Moon",
          "grade": "neutral",
          "points": 10
        },
        "D4": {
          "sign": "Libra",
          "lord": "Venus",
          "grade": "own",
          "points": 20
        },
        "D7": {
          "sign": "Aquarius",
          "lord": "Saturn",
          "grade": "neutral",
          "points": 10
        },
        "D9": {
          "sign": "Virgo",
          "lord": "Mercury",
          "grade": "great_friend",
          "points": 18
        },
        "D10": {
          "sign": "Taurus",
          "lord": "Venus",
          "grade": "own",
          "points": 20
        },
        "D12": {
          "sign": "Libra",
          "lord": "Venus",
          "grade": "own",
          "points": 20
        },
        "D16": {
          "sign": "Leo",
          "lord": "Sun",
          "grade": "great_enemy",
          "points": 5
        },
        "D20": {
          "sign": "Virgo",
          "lord": "Mercury",
          "grade": "great_friend",
          "points": 18
        },
        "D24": {
          "sign": "Capricorn",
          "lord": "Saturn",
          "grade": "neutral",
          "points": 10
        },
        "D27": {
          "sign": "Leo",
          "lord": "Sun",
          "grade": "great_enemy",
          "points": 5
        },
        "D30": {
          "sign": "Virgo",
          "lord": "Mercury",
          "grade": "great_friend",
          "points": 18
        },
        "D40": {
          "sign": "Virgo",
          "lord": "Mercury",
          "grade": "great_friend",
          "points": 18
        },
        "D45": {
          "sign": "Aries",
          "lord": "Mars",
          "grade": "friend",
          "points": 15
        },
        "D60": {
          "sign": "Scorpio",
          "lord": "Mars",
          "grade": "friend",
          "points": 15
        }
      },
      "phala": {
        "uchcha": 26.22,
        "cheshta": 10.46,
        "ishta": 16.56,
        "kashta": 40.91,
        "capped": false,
        "mean_rule": {
          "ishta": 18.34,
          "kashta": 41.66
        }
      }
    },
    "Jupiter": {
      "vimshopaka": {
        "shadvarga": 14.8,
        "saptavarga": 13.62,
        "dashavarga": 13.38,
        "shodashavarga": 13.85
      },
      "vargas": {
        "D1": {
          "sign": "Cancer",
          "lord": "Moon",
          "grade": "great_friend",
          "points": 18
        },
        "D2": {
          "sign": "Cancer",
          "lord": "Moon",
          "grade": "great_friend",
          "points": 18
        },
        "D3": {
          "sign": "Cancer",
          "lord": "Moon",
          "grade": "great_friend",
          "points": 18
        },
        "D4": {
          "sign": "Cancer",
          "lord": "Moon",
          "grade": "great_friend",
          "points": 18
        },
        "D7": {
          "sign": "Aquarius",
          "lord": "Saturn",
          "grade": "enemy",
          "points": 7
        },
        "D9": {
          "sign": "Leo",
          "lord": "Sun",
          "grade": "neutral",
          "points": 10
        },
        "D10": {
          "sign": "Aries",
          "lord": "Mars",
          "grade": "great_friend",
          "points": 18
        },
        "D12": {
          "sign": "Virgo",
          "lord": "Mercury",
          "grade": "neutral",
          "points": 10
        },
        "D16": {
          "sign": "Cancer",
          "lord": "Moon",
          "grade": "great_friend",
          "points": 18
        },
        "D20": {
          "sign": "Cancer",
          "lord": "Moon",
          "grade": "great_friend",
          "points": 18
        },
        "D24": {
          "sign": "Scorpio",
          "lord": "Mars",
          "grade": "great_friend",
          "points": 18
        },
        "D27": {
          "sign": "Gemini",
          "lord": "Mercury",
          "grade": "neutral",
          "points": 10
        },
        "D30": {
          "sign": "Virgo",
          "lord": "Mercury",
          "grade": "neutral",
          "points": 10
        },
        "D40": {
          "sign": "Taurus",
          "lord": "Venus",
          "grade": "great_enemy",
          "points": 5
        },
        "D45": {
          "sign": "Sagittarius",
          "lord": "Jupiter",
          "grade": "own",
          "points": 20
        },
        "D60": {
          "sign": "Gemini",
          "lord": "Mercury",
          "grade": "neutral",
          "points": 10
        }
      },
      "phala": {
        "uchcha": 59.77,
        "cheshta": 8.89,
        "ishta": 23.05,
        "kashta": 3.43,
        "capped": false,
        "mean_rule": {
          "ishta": 34.33,
          "kashta": 25.67
        }
      }
    },
    "Mercury": {
      "vimshopaka": {
        "shadvarga": 12.45,
        "saptavarga": 11.9,
        "dashavarga": 11.65,
        "shodashavarga": 12.28
      },
      "vargas": {
        "D1": {
          "sign": "Leo",
          "lord": "Sun",
          "grade": "great_friend",
          "points": 18
        },
        "D2": {
          "sign": "Cancer",
          "lord": "Moon",
          "grade": "neutral",
          "points": 10
        },
        "D3": {
          "sign": "Aries",
          "lord": "Mars",
          "grade": "enemy",
          "points": 7
        },
        "D4": {
          "sign": "Taurus",
          "lord": "Venus",
          "grade": "great_friend",
          "points": 18
        },
        "D7": {
          "sign": "Aquarius",
          "lord": "Saturn",
          "grade": "enemy",
          "points": 7
        },
        "D9": {
          "sign": "Scorpio",
          "lord": "Mars",
          "grade": "enemy",
          "points": 7
        },
        "D10": {
          "sign": "Aries",
          "lord": "Mars",
          "grade": "enemy",
          "points": 7
        },
        "D12": {
          "sign": "Gemini",
          "lord": "Mercury",
          "grade": "own",
          "points": 20
        },
        "D16": {
          "sign": "Virgo",
          "lord": "Mercury",
          "grade": "own",
          "points": 20
        },
        "D20": {
          "sign": "Taurus",
          "lord": "Venus",
          "grade": "great_friend",
          "points": 18
        },
        "D24": {
          "sign": "Aries",
          "lord": "Mars",
          "grade": "enemy",
          "points": 7
        },
        "D27": {
          "sign": "Pisces",
          "lord": "Jupiter",
          "grade": "friend",
          "points": 15
        },
        "D30": {
          "sign": "Libra",
          "lord": "Venus",
          "grade": "great_friend",
          "points": 18
        },
        "D40": {
          "sign": "Aquarius",
          "lord": "Saturn",
          "grade": "enemy",
          "points": 7
        },
        "D45": {
          "sign": "Libra",
          "lord": "Venus",
          "grade": "great_friend",
          "points": 18
        },
        "D60": {
          "sign": "Scorpio",
          "lord": "Mars",
          "grade": "enemy",
          "points": 7
        }
      },
      "phala": {
        "uchcha": 53.58,
        "cheshta": 40.71,
        "ishta": 46.7,
        "kashta": 11.13,
        "capped": false,
        "mean_rule": {
          "ishta": 47.14,
          "kashta": 12.86
        }
      }
    },
    "Mars": {
      "vimshopaka": {
        "shadvarga": 18.45,
        "saptavarga": 17.98,
        "dashavarga": 16.55,
        "shodashavarga": 16.05
      },
      "vargas": {
        "D1": {
          "sign": "Aries",
          "lord": "Mars",
          "grade": "own",
          "points": 20
        },
        "D2": {
          "sign": "Cancer",
          "lord": "Moon",
          "grade": "great_friend",
          "points": 18
        },
        "D3": {
          "sign": "Sagittarius",
          "lord": "Jupiter",
          "grade": "great_friend",
          "points": 18
        },
        "D4": {
          "sign": "Capricorn",
          "lord": "Saturn",
          "grade": "enemy",
          "points": 7
        },
        "D7": {
          "sign": "Libra",
          "lord": "Venus",
          "grade": "friend",
          "points": 15
        },
        "D9": {
          "sign": "Sagittarius",
          "lord": "Jupiter",
          "grade": "great_friend",
          "points": 18
        },
        "D10": {
          "sign": "Capricorn",
          "lord": "Saturn",
          "grade": "enemy",
          "points": 7
        },
        "D12": {
          "sign": "Pisces",
          "lord": "Jupiter",
          "grade": "great_friend",
          "points": 18
        },
        "D16": {
          "sign": "Gemini",
          "lord": "Mercury",
          "grade": "great_enemy",
          "points": 5
        },
        "D20": {
          "sign": "Libra",
          "lord": "Venus",
          "grade": "friend",
          "points": 15
        },
        "D24": {
          "sign": "Gemini",
          "lord": "Mercury",
          "grade": "great_enemy",
          "points": 5
        },
        "D27": {
          "sign": "Aries",
          "lord": "Mars",
          "grade": "own",
          "points": 20
        },
        "D30": {
          "sign": "Libra",
          "lord": "Venus",
          "grade": "friend",
          "points": 15
        },
        "D40": {
          "sign": "Aries",
          "lord": "Mars",
          "grade": "own",
          "points": 20
        },
        "D45": {
          "sign": "Virgo",
          "lord": "Mercury",
          "grade": "great_enemy",
          "points": 5
        },
        "D60": {
          "sign": "Scorpio",
          "lord": "Mars",
          "grade": "own",
          "points": 20
        }
      },
      "phala": {
        "uchcha": 30.1,
        "cheshta": 39.52,
        "ishta": 34.49,
        "kashta": 24.75,
        "capped": false,
        "mean_rule": {
          "ishta": 34.81,
          "kashta": 25.19
        }
      }
    },
    "Saturn": {
      "vimshopaka": {
        "shadvarga": 6.35,
        "saptavarga": 6.88,
        "dashavarga": 7.55,
        "shodashavarga": 8.32
      },
      "vargas": {
        "D1": {
          "sign": "Sagittarius",
          "lord": "Jupiter",
          "grade": "enemy",
          "points": 7
        },
        "D2": {
          "sign": "Cancer",
          "lord": "Moon",
          "grade": "great_enemy",
          "points": 5
        },
        "D3": {
          "sign": "Leo",
          "lord": "Sun",
          "grade": "great_enemy",
          "points": 5
        },
        "D4": {
          "sign": "Virgo",
          "lord": "Mercury",
          "grade": "neutral",
          "points": 10
        },
        "D7": {
          "sign": "Gemini",
          "lord": "Mercury",
          "grade": "neutral",
          "points": 10
        },
        "D9": {
          "sign": "Scorpio",
          "lord": "Mars",
          "grade": "great_enemy",
          "points": 5
        },
        "D10": {
          "sign": "Leo",
          "lord": "Sun",
          "grade": "great_enemy",
          "points": 5
        },
        "D12": {
          "sign": "Libra",
          "lord": "Venus",
          "grade": "neutral",
          "points": 10
        },
        "D16": {
          "sign": "Capricorn",
          "lord": "Saturn",
          "grade": "own",
          "points": 20
        },
        "D20": {
          "sign": "Capricorn",
          "lord": "Saturn",
          "grade": "own",
          "points": 20
        },
        "D24": {
          "sign": "Aries",
          "lord": "Mars",
          "grade": "great_enemy",
          "points": 5
        },
        "D27": {
          "sign": "Pisces",
          "lord": "Jupiter",
          "grade": "enemy",
          "points": 7
        },
        "D30": {
          "sign": "Libra",
          "lord": "Venus",
          "grade": "neutral",
          "points": 10
        },
        "D40": {
          "sign": "Aquarius",
          "lord": "Saturn",
          "grade": "own",
          "points": 20
        },
        "D45": {
          "sign": "Pisces",
          "lord": "Jupiter",
          "grade": "enemy",
          "points": 7
        },
        "D60": {
          "sign": "Aries",
          "lord": "Mars",
          "grade": "great_enemy",
          "points": 5
        }
      },
      "phala": {
        "uchcha": 37.96,
        "cheshta": 48.7,
        "ishta": 43,
        "kashta": 15.78,
        "capped": false,
        "mean_rule": {
          "ishta": 43.33,
          "kashta": 16.67
        }
      }
    }
  },
  "maitri": {
    "Sun": {
      "Moon": {
        "natural": "friend",
        "temporal": "friend",
        "compound": "great_friend"
      },
      "Venus": {
        "natural": "enemy",
        "temporal": "enemy",
        "compound": "great_enemy"
      },
      "Jupiter": {
        "natural": "friend",
        "temporal": "enemy",
        "compound": "neutral"
      },
      "Mercury": {
        "natural": "neutral",
        "temporal": "friend",
        "compound": "friend"
      },
      "Mars": {
        "natural": "friend",
        "temporal": "friend",
        "compound": "great_friend"
      },
      "Saturn": {
        "natural": "enemy",
        "temporal": "enemy",
        "compound": "great_enemy"
      }
    },
    "Moon": {
      "Sun": {
        "natural": "friend",
        "temporal": "friend",
        "compound": "great_friend"
      },
      "Venus": {
        "natural": "neutral",
        "temporal": "friend",
        "compound": "friend"
      },
      "Jupiter": {
        "natural": "neutral",
        "temporal": "friend",
        "compound": "friend"
      },
      "Mercury": {
        "natural": "friend",
        "temporal": "friend",
        "compound": "great_friend"
      },
      "Mars": {
        "natural": "neutral",
        "temporal": "friend",
        "compound": "friend"
      },
      "Saturn": {
        "natural": "neutral",
        "temporal": "enemy",
        "compound": "enemy"
      }
    },
    "Venus": {
      "Sun": {
        "natural": "enemy",
        "temporal": "enemy",
        "compound": "great_enemy"
      },
      "Moon": {
        "natural": "enemy",
        "temporal": "friend",
        "compound": "neutral"
      },
      "Jupiter": {
        "natural": "neutral",
        "temporal": "enemy",
        "compound": "enemy"
      },
      "Mercury": {
        "natural": "friend",
        "temporal": "friend",
        "compound": "great_friend"
      },
      "Mars": {
        "natural": "neutral",
        "temporal": "friend",
        "compound": "friend"
      },
      "Saturn": {
        "natural": "friend",
        "temporal": "enemy",
        "compound": "neutral"
      }
    },
    "Jupiter": {
      "Sun": {
        "natural": "friend",
        "temporal": "enemy",
        "compound": "neutral"
      },
      "Moon": {
        "natural": "friend",
        "temporal": "friend",
        "compound": "great_friend"
      },
      "Venus": {
        "natural": "enemy",
        "temporal": "enemy",
        "compound": "great_enemy"
      },
      "Mercury": {
        "natural": "enemy",
        "temporal": "friend",
        "compound": "neutral"
      },
      "Mars": {
        "natural": "friend",
        "temporal": "friend",
        "compound": "great_friend"
      },
      "Saturn": {
        "natural": "neutral",
        "temporal": "enemy",
        "compound": "enemy"
      }
    },
    "Mercury": {
      "Sun": {
        "natural": "friend",
        "temporal": "friend",
        "compound": "great_friend"
      },
      "Moon": {
        "natural": "enemy",
        "temporal": "friend",
        "compound": "neutral"
      },
      "Venus": {
        "natural": "friend",
        "temporal": "friend",
        "compound": "great_friend"
      },
      "Jupiter": {
        "natural": "neutral",
        "temporal": "friend",
        "compound": "friend"
      },
      "Mars": {
        "natural": "neutral",
        "temporal": "enemy",
        "compound": "enemy"
      },
      "Saturn": {
        "natural": "neutral",
        "temporal": "enemy",
        "compound": "enemy"
      }
    },
    "Mars": {
      "Sun": {
        "natural": "friend",
        "temporal": "friend",
        "compound": "great_friend"
      },
      "Moon": {
        "natural": "friend",
        "temporal": "friend",
        "compound": "great_friend"
      },
      "Venus": {
        "natural": "neutral",
        "temporal": "friend",
        "compound": "friend"
      },
      "Jupiter": {
        "natural": "friend",
        "temporal": "friend",
        "compound": "great_friend"
      },
      "Mercury": {
        "natural": "enemy",
        "temporal": "enemy",
        "compound": "great_enemy"
      },
      "Saturn": {
        "natural": "neutral",
        "temporal": "enemy",
        "compound": "enemy"
      }
    },
    "Saturn": {
      "Sun": {
        "natural": "enemy",
        "temporal": "enemy",
        "compound": "great_enemy"
      },
      "Moon": {
        "natural": "enemy",
        "temporal": "enemy",
        "compound": "great_enemy"
      },
      "Venus": {
        "natural": "friend",
        "temporal": "enemy",
        "compound": "neutral"
      },
      "Jupiter": {
        "natural": "neutral",
        "temporal": "enemy",
        "compound": "enemy"
      },
      "Mercury": {
        "natural": "friend",
        "temporal": "enemy",
        "compound": "neutral"
      },
      "Mars": {
        "natural": "enemy",
        "temporal": "enemy",
        "compound": "great_enemy"
      }
    }
  },
  "scale": {
    "vimshopaka": 20,
    "phala": 60
  },
  "weights": {
    "shadvarga": {
      "D1": 6,
      "D2": 2,
      "D3": 4,
      "D9": 5,
      "D12": 2,
      "D30": 1
    },
    "saptavarga": {
      "D1": 5,
      "D2": 2,
      "D3": 3,
      "D7": 2.5,
      "D9": 4.5,
      "D12": 2,
      "D30": 1
    },
    "dashavarga": {
      "D1": 3,
      "D2": 1.5,
      "D3": 1.5,
      "D7": 1.5,
      "D9": 1.5,
      "D10": 1.5,
      "D12": 1.5,
      "D16": 1.5,
      "D30": 1.5,
      "D60": 5
    },
    "shodashavarga": {
      "D1": 3.5,
      "D2": 1,
      "D3": 1,
      "D4": 0.5,
      "D7": 0.5,
      "D9": 3,
      "D10": 0.5,
      "D12": 0.5,
      "D16": 2,
      "D20": 0.5,
      "D24": 0.5,
      "D27": 0.5,
      "D30": 1,
      "D40": 0.5,
      "D45": 0.5,
      "D60": 4
    }
  },
  "points": {
    "own": 20,
    "great_friend": 18,
    "friend": 15,
    "neutral": 10,
    "enemy": 7,
    "great_enemy": 5
  },
  "not_computed": [
    {
      "component": "vimshopaka.nodes",
      "reason": "Rahu and Ketu have no natural friendship in the classical scheme, so there is no compound relation to grade them by. They are left out rather than given an invented table."
    },
    {
      "component": "phala.nodes",
      "reason": "ishta and kashta phala are read from uchcha and cheshta bala, which are computed for the seven grahas only."
    }
  ],
  "basis": {
    "vimshopaka": "BPHS ch. 7: per-varga weights summing to 20. The graha earns all 20 twentieths of the weight in its own sign. It earns 18, 15, 10, 7 or 5 twentieths as the sign's lord is its great friend, friend, neutral, enemy or great enemy. Friendship…",
    "phala": "BPHS ch. 29: ishta = sqrt(uchcha x cheshta), kashta = sqrt((60 - uchcha) x (60 - cheshta)), from the uchcha and cheshta bala of /v1/shadbala. The Sun's cheshta is its doubled ayana bala and is capped at 60 here. `mean_rule` is the…",
    "maitri": "natural from the classical friendship table. Temporal from the rasi: the 2nd, 3rd, 4th, 10th, 11th and 12th from a graha are its friends. Compound is the two combined. Read row to column: the row graha's view of the column graha."
  },
  "meta": {
    "ayanamsa": "lahiri",
    "ayanamsa_value": 23.7260727,
    "julian_day": 2448119.10483,
    "ephemeris": "JPL DE440s",
    "node": "true",
    "timezone": {
      "source": "zone",
      "offset_hours": -4,
      "zone": "America/New_York",
      "abbreviation": "EDT",
      "dst": true,
      "dst_hours": 1,
      "ambiguous_resolved_by_fold": null,
      "note": "read from the IANA tz database at this instant, so daylight saving and historical offset changes are included"
    }
  }
}

Example from a real call for John Doe, born Aug 15, 1990, 10:30 AM, New York. Long lists and texts are shortened.

Parameters, schemas and a test request in the interactive reference. Feature: Planetary strength.

Planet aspects (graha drishti)

POST /v1/aspects

Returns which houses and planets each planet aspects. In Vedic astrology an aspect (drishti) is a planet's influence on another house, counted in whole houses. The count starts at the planet's own house as 1, so the 7th aspect from house 1 falls on house 7.

Every planet aspects the 7th house from itself. Mars also aspects the 4th and 8th, Jupiter the 5th and 9th, and Saturn the 3rd and 10th.

aspects_grahas and aspected_by are exact inverses, so you can read the relationship from either side. Set nodes=false to leave out Rahu and Ketu, as the schools that give them no aspects do.

graded gives the strength of each aspect in virupas, from 0 to 60, for the seven planets from the Sun to Saturn. graded.by_graha.Mars.on_grahas.Moon is how strongly Mars aspects the Moon, and on_houses gives the same for each house. Strength grows and shrinks with the distance in degrees, and is full (60) at the opposite point. The special aspects of Mars, Jupiter and Saturn are also graded by degree, full only at their exact distance (Saturn 60 degrees, Mars 90, Jupiter 120, and so on). A house is measured at its middle on equal houses: the ascendant degree plus 30 degrees per house. Rahu and Ketu cast none here, whatever nodes says, but they are listed as targets. These are the same values /v1/shadbala uses for drik bala (rulebook SB-09).

Cost: Each successful request counts as 1 call toward your monthly calls.

Required inputs

NameInWhat it is
yearbodyYear of birth, from 1850 to 2149 (the range the planetary data covers).
monthbodyMonth of birth, from 1 (January) to 12 (December).
daybodyDay of the month, from 1 to 31.
latitudebodyLatitude of the birth place in degrees, negative for south. Text in a local number format, such as "40,7128", is also accepted.
longitudebodyLongitude of the birth place in degrees east of Greenwich, negative for west, so places in the Americas are negative. Text in a local number format is also accepted.
timezonebodyTime zone of the birth place. Either an IANA time zone name, such as America/New_York, America/Chicago or Europe/London. Or a fixed offset from UTC in hours, such as -5 or 5.5.
Optional inputs (8), with their defaults
NameInWhat it does
nodesqueryInclude Rahu and Ketu as planets that cast aspects. Default true.
langqueryLanguage for the names in the response, such as planets, signs, nakshatras (lunar mansions), tithis (lunar days), months and festivals. The default is en (English); GET /v1/meta lists the others. Each translated value comes with its English original in a matching <field>_en field; use the English value as a key in your code. Codes (such as result or kaal) and object keys always stay in English. Any name not yet translated stays in English and is listed in localization.untranslated.
hourbodyHour of birth on the local clock at the birth place, from 0 to 23 (24-hour clock). Default 0.
minutebodyMinute of birth, from 0 to 59. Default 0.
secondbodySecond of birth, from 0 to 59. Default 0.
timezone_foldbodyOnly needed for a local time that happens twice, on the night the clocks go back. In the US since 2007, that is 1:00 to 1:59 AM on the first Sunday in November. 0 picks the first occurrence (before the change) and 1 the second. Without it, such a time is rejected, not guessed. A wrong guess would quietly move the chart by an hour. A local time that never happens, because the clocks jumped forward over it, is also rejected; check the birth time, or send the UTC offset that was in force.
ayanamsabodyThe ayanamsa: the offset between the tropical zodiac (used in Western astrology) and the sidereal zodiac (used in Vedic astrology). lahiri (the default) is the Lahiri, or Chitrapaksha, ayanamsa used by the Government of India. kp is the Krishnamurti ayanamsa used in KP astrology, about 6 arcminutes less. raman is B. V. Raman's, about 1 degree 27 arcminutes less. Also: yukteshwar (Sri Yukteshwar's, about 1 degree 23 arcminutes less), jn_bhasin (J. N. Bhasin's, about 1 degree 6 arcminutes less), ushashashi (about 3 degrees 48 arcminutes less) and fagan_bradley (the Western sidereal zodiac, about 53 arcminutes more). true_chitra keeps the star Spica (Chitra) at exactly 180 degrees, so it follows the star itself; it is within about a minute of arc of Lahiri. The chosen ayanamsa is also used for the transits, sade sati and forecasts read against this chart.
nodebodyHow to calculate Rahu and Ketu, the lunar nodes (the two points where the Moon's orbit crosses the Sun's path). Use true for the actual position (the default) or mean for the averaged position.

Main response fields

  • by_graha (object): holds Sun, Moon, Mars, Mercury, Jupiter, Venus, Saturn, Rahu, Ketu.
  • by_house (object): holds 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12.
  • rule (string)
  • include_nodes (boolean)
  • graded (object): holds unit, by_graha, house_reference, casts_none, rule.
  • meta (object): holds ayanamsa, ayanamsa_value, julian_day, ephemeris, node, timezone.
# John Doe, born Aug 15, 1990, 10:30 AM, New York
curl -X POST "https://apiforastrology.com/api/astrology/v1/aspects" \
  -H "Authorization: Bearer $ASTROLOGY_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"year":1990,"month":8,"day":15,"hour":10,"minute":30,"second":0,"latitude":40.7128,"longitude":-74.006,"timezone":"America/New_York"}'
Sample response
{
  "by_graha": {
    "Sun": {
      "house": 11,
      "aspects_houses": [
        5
      ],
      "aspects_grahas": [
        "Rahu"
      ],
      "aspected_by": [
        "Mars",
        "Rahu"
      ],
      "special": []
    },
    "Moon": {
      "house": 9,
      "aspects_houses": [
        3
      ],
      "aspects_grahas": [],
      "aspected_by": [
        "Rahu"
      ],
      "special": []
    },
    "Mars": {
      "house": 8,
      "aspects_houses": [
        11,
        2,
        3
      ],
      "aspects_grahas": [
        "Sun",
        "Jupiter",
        "Venus"
      ],
      "aspected_by": [],
      "special": [
        4,
        8
      ]
    },
    "Mercury": {
      "house": 12,
      "aspects_houses": [
        6
      ],
      "aspects_grahas": [],
      "aspected_by": [],
      "special": []
    },
    "Jupiter": {
      "house": 11,
      "aspects_houses": [
        3,
        5,
        7
      ],
      "aspects_grahas": [
        "Rahu"
      ],
      "aspected_by": [
        "Mars",
        "Rahu"
      ],
      "special": [
        5,
        9
      ]
    },
    "Venus": {
      "house": 11,
      "aspects_houses": [
        5
      ],
      "aspects_grahas": [
        "Rahu"
      ],
      "aspected_by": [
        "Mars",
        "Rahu"
      ],
      "special": []
    },
    "Saturn": {
      "house": 4,
      "aspects_houses": [
        6,
        10,
        1
      ],
      "aspects_grahas": [],
      "aspected_by": [],
      "special": [
        3,
        10
      ]
    },
    "Rahu": {
      "house": 5,
      "aspects_houses": [
        9,
        11,
        1
      ],
      "aspects_grahas": [
        "Moon",
        "Sun",
        "Jupiter"
      ],
      "aspected_by": [
        "Sun",
        "Jupiter",
        "Venus"
      ],
      "special": []
    },
    "Ketu": {
      "house": 11,
      "aspects_houses": [
        3,
        5,
        7
      ],
      "aspects_grahas": [
        "Rahu"
      ],
      "aspected_by": [
        "Mars",
        "Rahu"
      ],
      "special": []
    }
  },
  "by_house": {
    "1": [
      "Saturn",
      "Rahu"
    ],
    "2": [
      "Mars"
    ],
    "3": [
      "Moon",
      "Mars",
      "Jupiter"
    ],
    "4": [],
    "5": [
      "Sun",
      "Jupiter",
      "Venus"
    ],
    "6": [
      "Mercury",
      "Saturn"
    ],
    "7": [
      "Jupiter",
      "Ketu"
    ],
    "8": [],
    "9": [
      "Rahu"
    ],
    "10": [
      "Saturn"
    ],
    "11": [
      "Mars",
      "Rahu"
    ],
    "12": []
  },
  "rule": "whole-house drishti, counted inclusively from the occupied house; every graha aspects the 7th, with special aspects for Mars (4, 8), Jupiter (5, 9) and Saturn (3, 10)",
  "include_nodes": true,
  "graded": {
    "unit": "virupas",
    "by_graha": {
      "Sun": {
        "on_grahas": {
          "Moon": 2.1,
          "Mars": 15.53,
          "Mercury": 0,
          "Jupiter": 0,
          "Venus": 0,
          "Saturn": 2.65,
          "Rahu": 29.47,
          "Ketu": 0
        },
        "on_houses": {
          "1": 10.58,
          "2": 36.16,
          "3": 34.42,
          "4": 8.84,
          "5": 42.32,
          "6": 49.42,
          "7": 34.42,
          "8": 19.42,
          "9": 4.42,
          "10": 0,
          "11": 0,
          "12": 0
        }
      },
      "Moon": {
        "on_grahas": {
          "Sun": 19.2,
          "Mars": 0,
          "Mercury": 44.41,
          "Jupiter": 5.56,
          "Venus": 6.88,
          "Saturn": 44.22,
          "Rahu": 35.53,
          "Ketu": 9.47
        },
        "on_houses": {
          "1": 32.32,
          "2": 4.64,
          "3": 50.72,
          "4": 47.32,
          "5": 32.32,
          "6": 17.32,
          "7": 2.32,
          "8": 0,
          "9": 0,
          "10": 0,
          "11": 12.68,
          "12": 40.36
        }
      },
      "Venus": {
        "on_grahas": {
          "Sun": 0,
          "Moon": 0,
          "Mars": 5.31,
          "Mercury": 8.71,
          "Jupiter": 0,
          "Saturn": 35.6,
          "Rahu": 57.41,
          "Ketu": 0
        },
        "on_houses": {
          "1": 26.61,
          "2": 39.2,
          "3": 18.39,
          "4": 23.22,
          "5": 54.2,
          "6": 39.2,
          "7": 24.2,
          "8": 9.2,
          "9": 0,
          "10": 0,
          "11": 0,
          "12": 5.8
        }
      },
      "Jupiter": {
        "on_grahas": {
          "Sun": 0,
          "Moon": 0,
          "Mars": 3.99,
          "Mercury": 10.03,
          "Venus": 0,
          "Saturn": 40.87,
          "Rahu": 56.09,
          "Ketu": 0
        },
        "on_houses": {
          "1": 29.24,
          "2": 52.12,
          "3": 45.76,
          "4": 28.49,
          "5": 52.88,
          "6": 52.12,
          "7": 45.76,
          "8": 7.88,
          "9": 0,
          "10": 0,
          "11": 0,
          "12": 7.12
        }
      },
      "Mercury": {
        "on_grahas": {
          "Sun": 0,
          "Moon": 15.59,
          "Mars": 29.02,
          "Jupiter": 0,
          "Venus": 0,
          "Saturn": 29.62,
          "Rahu": 12.24,
          "Ketu": 0
        },
        "on_houses": {
          "1": 0,
          "2": 12.09,
          "3": 39.19,
          "4": 32.91,
          "5": 5.81,
          "6": 48.37,
          "7": 47.91,
          "8": 32.91,
          "9": 17.91,
          "10": 2.91,
          "11": 0,
          "12": 0
        }
      },
      "Mars": {
        "on_grahas": {
          "Sun": 58.94,
          "Moon": 0,
          "Mercury": 31.97,
          "Jupiter": 26.96,
          "Venus": 30.92,
          "Saturn": 31.59,
          "Rahu": 22.1,
          "Ketu": 38.69
        },
        "on_houses": {
          "1": 7.78,
          "2": 44.44,
          "3": 60,
          "4": 37.78,
          "5": 18.89,
          "6": 3.89,
          "7": 0,
          "8": 0,
          "9": 0,
          "10": 11.11,
          "11": 48.33,
          "12": 37.78
        }
      },
      "Saturn": {
        "on_grahas": {
          "Sun": 43.68,
          "Moon": 1.55,
          "Mars": 28.41,
          "Mercury": 30.19,
          "Jupiter": 55.22,
          "Venus": 53.9,
          "Rahu": 0,
          "Ketu": 51.31
        },
        "on_houses": {
          "1": 53.81,
          "2": 12.38,
          "3": 0,
          "4": 0,
          "5": 0,
          "6": 47.62,
          "7": 48.1,
          "8": 33.1,
          "9": 6.19,
          "10": 47.62,
          "11": 48.1,
          "12": 33.1
        }
      }
    },
    "house_reference": "equal houses: the madhya (middle) of house N is the ascendant degree plus 30 x (N - 1), the same reference shadbala uses; not Sripati cusps",
    "casts_none": [
      "Rahu",
      "Ketu"
    ],
    "rule": "the graded drishti curve of shadbala (SB-09): 0 below 30 degrees, full at 180, nothing past 300; special aspects of Mars, Jupiter and Saturn graded by degree, full only at the center of each band"
  },
  "meta": {
    "ayanamsa": "lahiri",
    "ayanamsa_value": 23.7260727,
    "julian_day": 2448119.10483,
    "ephemeris": "JPL DE440s",
    "node": "true",
    "timezone": {
      "source": "zone",
      "offset_hours": -4,
      "zone": "America/New_York",
      "abbreviation": "EDT",
      "dst": true,
      "dst_hours": 1,
      "ambiguous_resolved_by_fold": null,
      "note": "read from the IANA tz database at this instant, so daylight saving and historical offset changes are included"
    }
  }
}

Example from a real call for John Doe, born Aug 15, 1990, 10:30 AM, New York. Long lists and texts are shortened.

Parameters, schemas and a test request in the interactive reference. Feature: Kundli and birth charts.

How we check the numbers

Every answer here starts from planet positions worked out from NASA JPL planet data (DE440). We test them against NASA JPL Horizons, NASA's planet position service. On 25,571 positions from 1850 to 2149, the Sun and planets agree within 0.001 arc seconds. The Moon agrees within 0.011. On 2,000 random birth charts, the rising sign agrees with Swiss Ephemeris within 0.004 arc seconds. An arc second is 1/3,600 of a degree. A practicing astrologer reviews the rules behind these answers. See how we test accuracy.

Terms in this group

From the blog