New Numerology API

Chart basics

Kundli (birth chart) in Vedic astrology

A kundli is a Vedic birth chart: a map of the sky at the time and place of birth. It shows the sign and house of all nine grahas (planets), from the Sun and Moon to Rahu and Ketu. House 1 is the sign rising in the east at birth, called the lagna. Kundli is also spelled kundali.

Updated

More terms in Chart basics

© API for Astrology (apiforastrology.com). "Glossary houses chart". All rights reserved. Not to be copied or reused.123456789101112A North Indian chart has 12 houses

Kundli: how the API computes it

A kundli needs three things: the birth date, the birth time and the birth place. Send the place as latitude, longitude and a time zone, such as America/New_York. The API accepts dates from 1850 to 2149.

POST /v1/planets returns the core of the kundli. That is the ascendant (rising sign) and all nine grahas, each with its sign, degree and house. Each one also has its nakshatra (birth star), pada (quarter of the nakshatra) and dignity (how well it is placed).

Use this answer to draw the chart in your app. The API measures signs in the sidereal zodiac, the Vedic zodiac fixed to the stars, with the Lahiri ayanamsa by default. Houses are whole-sign, so the rising sign is the whole of house 1 (CH-06).

Many printed kundlis also show other charts beside the main one. POST /v1/chart/{division} returns any of the 16 divisional charts, from D1, the main chart, to D60. POST /v1/chart/chalit returns the bhava chalit table, which most printed kundlis show next to the birth chart.

The birth time matters most for the ascendant, which changes sign about every two hours. So ask your users for the most exact birth time they have.

Get it from the API

Planet positions and the ascendant. Here is the call to API for Astrology (apiforastrology.com) for our sample, John Doe, born Aug 15, 1990, 10:30 AM, New York.

POST /v1/planets

# 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"}'
Answer (long lists shortened)200 OK
{
  "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": []
}

Where the API returns it

POST/v1/planetsPlanet positions and the ascendant
POST/v1/chart/chalitBhava chalit: houses by the Sripati method
POST/v1/chart/{division}Any of the 16 divisional charts (D1 to D60)
POST/v1/chart/svgThe birth chart or any divisional chart as an SVG or PNG image
POST/v1/chart/sudarshanaSudarshana chakra: the chart from the ascendant, Moon and Sun

What the API reference says

Each line is quoted from the reference page of the endpoint named above it.

  • POST /v1/planets · Planet positions and the ascendantUse this endpoint as the starting point for drawing a birth chart.
  • POST /v1/chart/chalit · Bhava chalit: houses by the Sripati methodReturns the bhava chalit chart, the house table found beside the birth chart in most printed kundlis (birth chart books).
  • POST /v1/chart/svg · The birth chart or any divisional chart as an SVG or PNG imageDraws a chart (kundli) as an SVG image you can show as it is, or as a PNG with format=png.

Feature page: Kundli and birth charts. Who uses it: Astrology apps. The classical rules the API follows are in the rulebook.

How we check the numbers

Every value 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.

Related terms

Free tools

See it with your own details

Runs on the same API call. Enter your details and see the answer in your browser.

  • Free kundli

    Your Vedic birth chart: the rising sign and all nine planets, with sign, house and nakshatra.

    Make my kundli

Astrology API

Get these values from the API

Create a free test key and call any endpoint on this page. Or try a request in the API reference first.

Your first answer

John Doe, New York

POST /v1/planets200 OK
  • RisingVirgoHast
  • SunCancerAshlesha
  • MoonTaurusMrigashira
  • MarsAriesKrittika

Real API output. A free test key gets the same answer.

  1. 01

    Test key: 1,000 test calls a month to build with

  2. 02

    Free plan: 2,000 live calls a month, no card needed

  3. 03

    Open rules: every rule is published, so you can check any answer