---
title: "Vimshottari Dasha"
method: POST
path: "/v1/astro/dasha"
tags: ["Astrology"]
---

# Vimshottari Dasha

`POST /v1/astro/dasha`

## Request

- Base URL: `https://api.asterwise.com`
- URL: `https://api.asterwise.com/v1/astro/dasha`
- Auth: HTTP bearer

Calculate the complete Vimshottari Dasha timeline for a birth chart. Returns Mahadasha, Antardasha, Pratyantar, Sookshma, and Prana periods up to 5 levels deep, with start and end dates for each. The starting planet is determined by the Moon's nakshatra at birth (Janma Nakshatra). The first Mahadasha row starts at birth and lasts the balance; its sub-periods are the remaining tail of the full Mahadasha, which began before birth, so the period running at birth is usually not the Mahadasha lord's own. That row also gives dasha_start_date and balance_years. Dates are DD/MM/YYYY. Interpretation text accompanies the currently active Mahadasha and Antardasha.

## Request body

- DashaRequest
  - `location` string, nullable: City name to resolve to lat/lon/tz automatically. Example: 'Mumbai' or 'New Delhi, India'. If provided, latitude, longitude and timezone are not required.
  - `name` string: Person name associated with the birth record
  - `date` string, required: Birth date in YYYY-MM-DD format
  - `time` string, nullable: Birth time in HH:MM 24-hour format. If omitted, sunrise chart is used as fallback.
  - `latitude` number, nullable: Latitude. Required if location not provided.
  - `longitude` number, nullable: Longitude. Required if location not provided.
  - `timezone` string, nullable: IANA timezone. Required if location not provided (unless utc_offset is given). For dates before the zone adopted a standard time, the birthplace's local mean time (longitude / 15 hours) is used.
  - `utc_offset` string, nullable: Optional explicit UTC offset of the birth time, as ±HH:MM or ±HH:MM:SS (e.g. '+04:51:31' for Bombay mean time). Overrides the offset `timezone` would give. Use it when the birth record states the offset, or for historical local times the IANA database cannot represent.
  - `ayanamsa` 'lahiri' | 'raman' | 'kp' | 'tropical': Sidereal ayanamsa mode used in calculations
  - `levels` integer: Depth of dasha hierarchy to compute (1 to 5)

## Response `200`

Vimshottari dasha periods with start and end ranges

- ApiResponseDashaEndpointResponse
  - `success` boolean: True if the request succeeded
  - `message` string: Human-readable status message
  - `data` DashaEndpointResponse, required
    - `periods` DashaPeriod[], required: Calculated Vimshottari dasha hierarchy
      - `planet` string, required: Dasha lord for this period
      - `start_jd` number, required: Julian day at period start
      - `end_jd` number, required: Julian day at period end
      - `start_date` string, required: Period start, DD/MM/YYYY (UTC calendar date). The first Mahadasha row starts at birth.
      - `end_date` string, required: Period end, DD/MM/YYYY (UTC calendar date)
      - `sub` DashaPeriod[], nullable: Nested sub-periods for deeper hierarchy levels. Under the first Mahadasha these are the remaining tail of the full Mahadasha, which began before birth: periods that ended before birth are omitted and the one running at birth starts at birth.
      - `dasha_start_date` string, nullable: Only on the first Mahadasha row: the date (DD/MM/YYYY, UTC) the full Mahadasha began, before birth. The row itself starts at birth and lasts the balance.
      - `balance_years` number, nullable: Only on the first Mahadasha row: the balance of that Mahadasha remaining at birth, in years of 365.25636 days.
      - `modern_summary` string, nullable: Optional modern interpretation summary for this period
    - `interpretation` object, nullable: Structured dasha interpretation summary
    - `birth_time_provided` boolean: Whether 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.

## Other responses

- `401`: Authentication failed
- `403`: Authorization failed
- `404`: Resource not found
- `413`: Payload too large
- `422`: Validation error
- `429`: Rate limit exceeded
- `500`: Internal error
- `502`: Upstream provider error
- `503`: Service unavailable

---

[API](https://skmtc.dev/asterwise/apis/asterwise-api.md) · [All operations](https://skmtc.dev/asterwise/apis/asterwise-api/llms.txt) · [OpenAPI document](https://skmtc.dev/asterwise/apis/asterwise-api/revisions/3c4bbb1194e2?raw)
