Skip to main content

Ashtottari Dasha

Computes Ashtottari Dasha periods for a given birth chart. What is Ashtottari Dasha? Ashtottari Dasha is a 108-year dasha cycle using 8 planets (excluding Ketu). It is considered applicable only for specific charts where Rahu occupies a Kendra (houses 1, 4, 7, 10) or Trikona (houses 1, 5, 9) from the Lagna. Applicability check: This endpoint first checks whether Ashtottari applies to the given chart. If Rahu is not in a Kendra or Trikona house, the response will contain applicable: false and a reason string instead of dasha periods. The 8 planets and their durations: - Sun — 6 years - Moon — 15 years - Mars — 8 years - Mercury — 17 years - Saturn — 10 years - Jupiter — 19 years - Rahu — 12 years - Venus — 21 years Levels: - levels: 1 — returns Maha Dasha periods only - levels: 2 — returns Maha Dasha with Antar Dasha sub-periods (default) Date format: All dates are returned in DD/MM/YYYY format. Ayanamsa: Default is Lahiri.

Endpoint

POST /v1/astro/ashtottari

Request parameters

FieldTypeRequiredDescription
locationstring | nullNoCity name to resolve to lat/lon/tz automatically. Example: 'Mumbai' or 'New Delhi, India'. If provided, latitude, longitude and timezone are not required.
namestringNoPerson name associated with the birth record
datestringYesBirth date in YYYY-MM-DD format
timestring | nullNoBirth time in HH:MM 24-hour format. If omitted, sunrise chart is used as fallback.
latitudenumber | nullNoLatitude. Required if location not provided.
longitudenumber | nullNoLongitude. Required if location not provided.
timezonestring | nullNoIANA timezone. Required if location not provided.
ayanamsastringNoSidereal ayanamsa mode used in calculations
levelsintegerNoDepth of sub-periods to return. 1 returns Maha Dashas only. 2 returns Maha and Antar Dashas. Maximum is 2.

Example request

curl -X POST "https://api.asterwise.com/v1/astro/ashtottari" \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{"date":"1985-11-12","time":"06:45","latitude":19.076,"longitude":72.8777,"timezone":"Asia/Kolkata"}'

Example response

{
"success": true,
"message": "success",
"data": {
"periods": {
"root": [
{
"planet": "Mercury",
"start_jd": 2446381.5520833335,
"end_jd": 2447229.7487836727,
"start_date": "12/11/1985",
"end_date": "09/03/1988",
"sub": [
{
"planet": "Mercury",
"start_jd": 2446381.5520833335,
"end_jd": 2446515.0645269053,
"start_date": "12/11/1985",
"end_date": "25/03/1986"
},
{
"planet": "Saturn",
"start_jd": 2446515.0645269053,
"end_jd": 2446593.601258418,
"start_date": "25/03/1986",
"end_date": "12/06/1986"
},
"... and 6 more items"
]
},
{
"planet": "Saturn",
"start_jd": 2447229.7487836727,
"end_jd": 2450882.3123836727,
"start_date": "09/03/1988",
"end_date": "09/03/1998",
"sub": [
{
"planet": "Saturn",
"start_jd": 2447229.7487836727,
"end_jd": 2447567.949117006,
"start_date": "09/03/1988",
"end_date": "10/02/1989"
},
{
"planet": "Jupiter",
"start_jd": 2447567.949117006,
"end_jd": 2448210.529750339,
"start_date": "10/02/1989",
"end_date": "15/11/1990"
},
"... and 6 more items"
]
},
"... and 6 more items"
]
},
"birth_time_provided": true
}
}

Response fields

FieldTypeDescription
successbooleanTrue if the request succeeded
messagestringHuman-readable status message
dataobject
data.periodsobject
data.periods.rootarray[object]
data.periods.root[].planetstringPlanetary lord of this Dasha period
data.periods.root[].start_jdnumberStart of period as Julian Day number
data.periods.root[].end_jdnumberEnd of period as Julian Day number
data.periods.root[].start_datestringStart date in DD/MM/YYYY format
data.periods.root[].end_datestringEnd date in DD/MM/YYYY format
data.periods.root[].subarray[object] | nullSub-periods (Antar Dasha). Present only when levels=2.
data.birth_time_providedbooleanWhether a precise birth time was provided. False when birth time was not supplied or treated as unknown — calculations using this field will have lagna-dependent accuracy limits.

Errors

CodeDescriptionReference
authentication_failedMissing or invalid API key.authentication_failed
ephemeris_unavailableUpstream ephemeris service error.ephemeris_unavailable
insufficient_tierAPI key tier does not include this endpoint.insufficient_tier
internal_errorUnexpected server error.internal_error
ip_rate_limit_exceededToo many requests in a short window.ip_rate_limit_exceeded
payload_too_largeRequest body exceeds the size limit.payload_too_large
resource_not_foundReferenced resource was not found.resource_not_found
validation_errorRequest body failed schema validation.validation_error