Перейти до вмісту
AstroWay/api v2.325.0 · docs
усі системи в нормі

Compatibility: Dasha (concurrent Vimshottari)

POST
/vedic/compatibility/dasha
request.sh
curl -X POST https://api.astroway.info/v1/vedic/compatibility/dasha \
-H "X-Api-Key: aw_live_..." \
-H "Content-Type: application/json" \
-d '{ "chart1": { "date": "1990-05-15", "time": "15:30:00", "timezone": "Europe/Kyiv", "latitude": 50.45, "longitude": 30.52 }, "chart2": { "date": "1985-11-03", "time": "09:15:00", "timezone": "Europe/Kyiv", "latitude": 48.46, "longitude": 35.04 }, "fromDate": "2026-11-01", "years": 2 }'

Vimshottari mahadasha and antardasha of both partners for years (1 to 30, default 10) from fromDate, cut into segments where all four lords are constant, with the natural relation of the lords side by side, the mahadasha changes in the window and the share of the window by relation. No verdict.

fields
string

Comma-separated dotted paths, relative to data, to keep in the response. A path is applied to every element of an array, so planets.name means the name of each planet. Paths that match nothing come back in _fields_unmatched; a list where nothing matches at all is a 400, because an empty object would be a confident wrong answer.

Example
planets.name,planets.longitude
precision
integer
<= 15

Round every non-integer number in the response to this many decimal places. Integers are left alone, because an id is not a measurement. Ecliptic longitudes ship with fourteen decimals by default; 2 is about a tenth of an arcminute.

Example
4
Idempotency-Key
string
>= 1 characters <= 255 characters /^[\x21-\x7E]+$/

Unique per logical operation, kept across retries. For 24 hours from the first request, a repeat with the same key, method, path, body and query string returns the stored response with Idempotent-Replayed: true and costs 0 credits. The same key with a different body or query string is a 409 IDEMPOTENCY_KEY_REUSED; a repeat while the first is still running is a 409 IDEMPOTENCY_IN_PROGRESS. Only 2xx responses are kept. See /idempotency/.

Example
01HXY2A7ZM0ABCDEF
Media type application/json

Two charts and a window for the concurrent Vimshottari periods of a couple.

object
chart1 required
object
date required
string
/^\d{4}-\d{2}-\d{2}$/
time required
string
/^\d{2}:\d{2}(:\d{2})?$/
timezoneOffset

Hours from UTC at the given moment, not minutes. Fractional zones are hours too: 5.5 for India, 5.75 for Nepal, -3.5 for Newfoundland. Defaults to 0, meaning UTC. Ignored when timezone is sent.

number
0 nullable >= -14 <= 14
timezone

IANA zone name such as Europe/Kyiv, or auto to look the zone up from latitude and longitude. The server takes the offset that zone kept at this local date and time, summer time included, and uses it in place of timezoneOffset. A clock time that happened twice takes the first occurrence; one skipped when clocks went forward takes the offset from before the change. Abbreviations such as EST are refused. Before 1970 the tz database is not reliable for every place, so send timezoneOffset when the local clock is known.

string
latitude required
number
>= -90 <= 90
longitude required
number
>= -180 <= 180
houseSystem
string
default: P
Allowed values: P K R C E W B M O A T V D F G H I i L N Q S U X Y
name
string
""
city
string
""
zodiacType
string
Allowed values: tropical sidereal
ayanamsaId
number
nullable
ayanamsa

Sidereal school by name. Lahiri when omitted. Equivalent to ayanamsaId; send either.

string
Allowed values: fagan-bradley lahiri de-luce raman krishnamurti kp yukteshwar jn-bhasin true-citra djwhal-khul
cosmogram
boolean
chart2 required
object
date required
string
/^\d{4}-\d{2}-\d{2}$/
time required
string
/^\d{2}:\d{2}(:\d{2})?$/
timezoneOffset

Hours from UTC at the given moment, not minutes. Fractional zones are hours too: 5.5 for India, 5.75 for Nepal, -3.5 for Newfoundland. Defaults to 0, meaning UTC. Ignored when timezone is sent.

number
0 nullable >= -14 <= 14
timezone

IANA zone name such as Europe/Kyiv, or auto to look the zone up from latitude and longitude. The server takes the offset that zone kept at this local date and time, summer time included, and uses it in place of timezoneOffset. A clock time that happened twice takes the first occurrence; one skipped when clocks went forward takes the offset from before the change. Abbreviations such as EST are refused. Before 1970 the tz database is not reliable for every place, so send timezoneOffset when the local clock is known.

string
latitude required
number
>= -90 <= 90
longitude required
number
>= -180 <= 180
houseSystem
string
default: P
Allowed values: P K R C E W B M O A T V D F G H I i L N Q S U X Y
name
string
""
city
string
""
zodiacType
string
Allowed values: tropical sidereal
ayanamsaId
number
nullable
ayanamsa

Sidereal school by name. Lahiri when omitted. Equivalent to ayanamsaId; send either.

string
Allowed values: fagan-bradley lahiri de-luce raman krishnamurti kp yukteshwar jn-bhasin true-citra djwhal-khul
cosmogram
boolean
fromDate

Start of the window, YYYY-MM-DD (UTC). Today when omitted.

string
/^\d{4}-\d{2}-\d{2}$/
years

Length of the window in years, 1 to 30. Default 10.

integer
>= 1 <= 30
Example
{
"chart1": {
"date": "1990-05-15",
"time": "15:30:00",
"timezone": "Europe/Kyiv",
"latitude": 50.45,
"longitude": 30.52
},
"chart2": {
"date": "1985-11-03",
"time": "09:15:00",
"timezone": "Europe/Kyiv",
"latitude": 48.46,
"longitude": 35.04
},
"fromDate": "2026-11-01",
"years": 2
}

Successful calculation

Media type application/json
object
ok
boolean
data
object
method
string
nullable
system
string
nullable
partner1
string
nullable
partner2
string
nullable
window
object
from
string
nullable
to
string
nullable
years
number
nullable
segments
Array<object>
nullable
object
start
string
nullable
end
string
nullable
startJd
number
nullable
endJd
number
nullable
partner1
object
maha
string
nullable
antar
string
nullable
partner2
object
maha
string
nullable
antar
string
nullable
maha
object
partner1
string
nullable
partner2
string
nullable
relation
nullable
same
boolean
nullable
antar
object
partner1
string
nullable
partner2
string
nullable
relation
object
p1ToP2
string
nullable
p2ToP1
string
nullable
same
boolean
nullable
mahadashaChanges
Array<object>
nullable
object
partner
number
nullable
date
string
nullable
jd
number
nullable
from
string
nullable
to
string
nullable
summary
object
segments
number
nullable
mahaRelationShare
object
mutualFriends
number
nullable
mutualEnemies
number
nullable
other
number
nullable
nodes
number
nullable
Example
{
"ok": true,
"data": {
"method": "dasha-compatibility",
"system": "vimshottari",
"partner1": "groom",
"partner2": "bride",
"window": {
"from": "2026-11-01",
"to": "2028-10-31",
"years": 2
},
"segments": [
{
"start": "2026-11-01",
"end": "2027-07-06",
"startJd": 2461345.5,
"endJd": 2461593.2010293924,
"partner1": {
"maha": "Rahu",
"antar": "Mars"
},
"partner2": {
"maha": "Mercury",
"antar": "Venus"
},
"maha": {
"partner1": "Rahu",
"partner2": "Mercury",
"relation": null,
"same": false
},
"antar": {
"partner1": "Mars",
"partner2": "Venus",
"relation": {
"p1ToP2": "N",
"p2ToP1": "N"
},
"same": false
}
},
{
"start": "2027-07-06",
"end": "2028-08-16",
"startJd": 2461593.201029393,
"endJd": 2462000.2342564114,
"partner1": {
"maha": "Jupiter",
"antar": "Jupiter"
},
"partner2": {
"maha": "Mercury",
"antar": "Venus"
},
"maha": {
"partner1": "Jupiter",
"partner2": "Mercury",
"relation": {
"p1ToP2": "E",
"p2ToP1": "N"
},
"same": false
},
"antar": {
"partner1": "Jupiter",
"partner2": "Venus",
"relation": {
"p1ToP2": "E",
"p2ToP1": "N"
},
"same": false
}
},
{
"start": "2028-08-16",
"end": "2028-10-31",
"startJd": 2462000.2342564114,
"endJd": 2462076,
"partner1": {
"maha": "Jupiter",
"antar": "Jupiter"
},
"partner2": {
"maha": "Mercury",
"antar": "Sun"
},
"maha": {
"partner1": "Jupiter",
"partner2": "Mercury",
"relation": {
"p1ToP2": "E",
"p2ToP1": "N"
},
"same": false
},
"antar": {
"partner1": "Jupiter",
"partner2": "Sun",
"relation": {
"p1ToP2": "F",
"p2ToP1": "F"
},
"same": false
}
}
],
"mahadashaChanges": [
{
"partner": 1,
"date": "2027-07-06",
"jd": 2461593.2010293924,
"from": "Rahu",
"to": "Jupiter"
}
],
"summary": {
"segments": 3,
"mahaRelationShare": {
"mutualFriends": 0,
"mutualEnemies": 0,
"other": 0.661,
"nodes": 0.339
}
}
}
}

Validation error

Media type application/json
Example
{
"ok": false,
"error": {
"code": "INVALID_INPUT",
"message": "Validation failed: date: Date must be YYYY-MM-DD",
"details": [
{
"path": "date",
"message": "Date must be YYYY-MM-DD"
}
]
}
}

Missing or invalid API key

Media type application/json
Example
{
"ok": false,
"error": {
"code": "INVALID_API_KEY",
"message": "Invalid API key"
}
}