POST · VEDIC

Planets

Endpoint POST https://starsapi.com/api/v3/vedic/natal/planets

Returns the Ascendant and all 9 Vedic grahas (Sun, Moon, Mars, Mercury, Jupiter, Venus, Saturn, Rahu, Ketu) with baseline positional data: sign, house, longitude, degree within sign, nakshatra, speed, dignity, house lordship, retrograde and combustion status, and baladi avastha.

This is the workhorse endpoint for rendering Vedic birth charts (North or South Indian style) and powering most analytical features. For outer planets (Uranus, Neptune, Pluto, Chiron), use /natal/planets-extended. For KP sub-lords, functional nature, divisional charts, and full 4-fold avasthas, use /natal/planets-advanced.

Authentication

Required. Three methods accepted:

MethodExample
Header (recommended)X-Api-Key: am_live_xxxxxxxxxxxx
BearerAuthorization: Bearer am_live_xxxxxxxxxxxx
Query?api_key=am_live_xxxxxxxxxxxx

See authentication for security considerations.

Request body

Send a JSON object with Content-Type: application/json. All core fields are required.

FieldTypeRequiredDescription
yearintegerYesBirth year, 4-digit (e.g. 1990).
monthintegerYesBirth month, 112.
dayintegerYesDay of month, 131.
hourintegerYesHour in 24-hour local clock time, 023.
minuteintegerYesMinute, 059.
secondintegerNoSecond, 059. Default 0.
latitudenumberYesSigned decimal degrees, −90…90. Positive = North (e.g. 28.6139).
longitudenumberYesSigned decimal degrees, −180…180. Positive = East (e.g. 77.2090).
timezonestringYesIANA timezone identifier (e.g. Asia/Kolkata). DST is resolved automatically.
namestringNoNative’s name. Not returned by this endpoint; use /vedic/birth-details to retrieve it.
placestringNoBirth place label. Not returned by this endpoint; use /vedic/birth-details to retrieve it.
ayanamsastringNoSidereal mode. Default lahiri. Full list of 45+ ayanamsas →
node_typestringNomean (default) or true. Controls Rahu/Ketu position calculation.
Use the local clock time of birth. Pass the wall-clock time as recorded on the birth certificate together with the IANA timezone of the birth place — the backend converts to UTC internally. Do not pre-convert to UTC yourself.

Response shape

Returns data.ascendant (the Lagna) and data.planets (array of 9 grahas). The response sample shows 3 representative planets — all 9 follow the same shape. Birth input is not echoed back — call /vedic/birth-details separately.

Ascendant fields

FieldTypeDescription
longitudenumberAbsolute sidereal ecliptic longitude (0–360).
longitude_dmsstringSame in D°M′S″ format.
sign_numberinteger1 = Aries … 12 = Pisces.
signstringSign name in English.
sign_hindistringSign name in Hindi.
sign_lordstringRuling planet of the rising sign.
degreenumberDegree within the sign (0–30).
degree_dmsstringSame in D°M′S″ format.
nakshatrastringRising nakshatra.
nakshatra_numberinteger1 = Ashwini … 27 = Revati.
nakshatra_lordstringVimshottari lord of the nakshatra.
nakshatra_padaintegerPada (1–4).
houseintegerAlways 1.

Planet fields (per planet)

FieldTypeDescription
Identity
planetstringPlanet name (e.g. Sun, Rahu).
planet_shortstringTwo-letter abbreviation (e.g. Su, Ra). Useful for table UIs.
houseintegerHouse the planet occupies (1–12).
Sign
sign_numberinteger1 = Aries … 12 = Pisces.
signstringEnglish sign name.
sign_hindistringHindi sign name.
sign_lordstringRuling planet of the sign.
Degrees
longitudenumberAbsolute sidereal ecliptic longitude (0–360).
longitude_dmsstringSame in D°M′S″ format.
degreenumberDegree within the sign (0–30).
degree_dmsstringSame in D°M′S″ format.
speed_deg_per_daynumberDaily motion in degrees. Negative = retrograde.
Nakshatra
nakshatrastringNakshatra name.
nakshatra_numberinteger1 = Ashwini … 27 = Revati.
nakshatra_lordstringVimshottari lord.
nakshatra_padaintegerPada (1–4).
Status
dignitystringexalted, own_sign, moolatrikona, friend, neutral, enemy, or debilitated.
house_lordshipinteger[]Houses this planet rules for this ascendant (e.g. [4, 9]). Empty for Rahu/Ketu.
is_retrogradebooleantrue if retrograde. Rahu/Ketu are always retrograde.
is_combustbooleantrue if too close to the Sun.
baladi_avasthastringAge-based state: Bala (Infant), Kumara (Youth), Yuva (Adult), Vriddha (Old), or Mrita (Dead).

meta

FieldTypeDescription
meta.endpointstringEcho of the called endpoint path.
meta.versionstringAPI version (currently 3.0).
meta.response_time_msintegerServer-side response time in milliseconds.
meta.timestampstring (ISO 8601)Time the response was served.
meta.credits_remainingintegerAPI credits remaining on your plan.
meta.request_idstringUnique request identifier — include in support tickets.
meta.ayanamsa.namestringSidereal mode applied.
meta.ayanamsa.valuenumberAyanamsa offset in decimal degrees.
meta.ayanamsa.value_dmsstringSame in D°M′S″ format.
meta.node_typestringRahu/Ketu calculation mode: mean or true.

Use cases

  • Birth chart rendering — loop the 9 planets and place them in their houses for a North or South Indian chart.
  • Dignity table — display each planet’s dignity, house lordship, and retrograde status at a glance.
  • Dasha context — pair nakshatra lord and sign lord with dasha endpoints to understand period significations.
  • Combustion alerts — flag combust planets that may underperform in their house.
  • Compact chart tables — use planet_short for space-efficient grid and table UIs.
EndpointPlanetsExtra fields
planets (this)9 Vedic grahasBaseline: position, dignity, lordship, retrograde, combustion, baladi avastha.
planets-extended9 + Uranus, Neptune, Pluto, ChironSame baseline fields, adds 4 outer planets.
planets-advanced9 Vedic grahasAdds KP sub-lords, functional nature, dignity booleans, navamsa, vargottama, full 4-fold avasthas.

Errors

HTTPCodeCause
400MISSING_FIELDA required birth field is absent.
400INVALID_DATEInvalid calendar date.
400INVALID_TIMEHour/minute/second out of range.
400INVALID_TIMEZONENumeric or non-IANA timezone.
400INVALID_COORDINATElatitude / longitude out of range.
401AUTH_MISSING_KEYNo API key in request.
401AUTH_INVALID_KEYKey format invalid or not found.
401AUTH_REVOKED_KEYKey has been revoked.
403AUTH_ORIGIN_DENIEDRequest from non-whitelisted origin.
405METHOD_NOT_ALLOWEDNon-POST request.
429RATE_LIMIT_EXCEEDEDPlan quota exceeded.
500CALCULATION_ERROREphemeris calculation failed.

Error response format

{
  "success": false,
  "error": {
    "code": "INVALID_TIMEZONE",
    "message": "Unrecognised timezone: 'Asia/Calcutta_'. Use a valid IANA identifier such as 'Asia/Kolkata'."
  }
}

See also