To help people with the horoscope analysis on their own, the following REST API is provided. This API will compute the horoscope for the provided birth time and location. The horoscope result will contains the Ascendant, house cuspal points and the planetary positions along with vimshottari dasa. An another important input parameter is the ayanamsa settings which will help in the accurate horoscope analysis.
POST http://stellarastrology.in/api/v1/horoscope |
Summary
Computes the horoscope for the given birth details.
Description
The API computes the horoscope for the given birth details based on JSON format. The birth details contains the personal information, birth time, birth place which is represented in latitude and longitude coordinates and settings related to the horoscope computation.
Request Parameters
Name |
Type |
Required |
Description |
birthDetails |
birthDetails |
Yes |
The main input object which composed of other input parameters |
Request Objects
Object : birthDetails |
Name |
Type |
Required |
Description |
personName |
String |
Yes |
Name of the person |
gender |
String |
No |
Gender of the person (Optional) |
birthPlace |
birthPlace |
Yes |
Contains the birth location as latitude and longitude with timezoneID |
birthTime
|
birthTime
|
Yes |
Contains the birth time information |
settings |
settings |
No |
Settings like ayanamsa which are related to horoscope computation |
Object : birthPlace |
Name |
Type |
Required |
Description |
city |
String |
No |
Name of the birth city (Optional) |
state |
String |
No |
Name of the birth state (Optional) |
country |
String |
No |
Name of the birth country (Optional) |
latitude
|
latitude
|
Yes |
Latitude of the birth location |
longitude |
longitude |
Yes |
Longitude of the birth location |
timeZoneId |
timeZoneId |
Yes |
Timezone Id of the birth location. Please refer the correct Canonical ID as input for the Timezone Id from the timezone list mentioned in this link |
Object : latitude |
Name |
Type |
Required |
Description |
degrees |
Integer |
Yes |
Degree value of the latitude. Valid Range (0 to 90) |
minutes |
Integer |
Yes |
Minutes value of the latitude. Valid Range (0 to 59) |
seconds |
Integer |
Yes |
Seconds value of the latitude. Valid Range (0 to 59) |
direction
|
Enum
|
Yes |
Direction value of the latitude.Valid Values (NORTH, SOUTH) |
Object : longitude |
Name |
Type |
Required |
Description |
degrees |
Integer |
Yes |
Degree value of the longitude. Valid Range (0 to 180) |
minutes |
Integer |
Yes |
Minutes value of the longitude. Valid Range (0 to 59) |
seconds |
Integer |
Yes |
Seconds value of the longitude. Valid Range (0 to 59) |
direction
|
Enum
|
Yes |
Direction value of the longitude.Valid Values (EAST, WEST) |
Object : birthTime |
Name |
Type |
Required |
Description |
year |
Integer |
Yes |
Year of the birth time. Valid Range (1 to 9999) |
month |
Integer |
Yes |
Month of the birth time. Valid Range (1 to 12) |
day |
Integer |
Yes |
Day of the birth time. Valid Range (1 to 31) |
hour
|
Integer
|
Yes |
Hour of the birth time. Valid Range (0 to 23) |
minutes |
Integer |
Yes |
Minutes of the birth time. Valid Range (0 to 59) |
seconds |
Integer |
Yes |
Seconds of the birth time. Valid Range (0 to 59) |
Object : settings |
Name |
Type |
Required |
Description |
ayanamsaType |
Enum |
No |
Ayanamsa setting type.
Valid Values (LAHIRI, RAMAN, KRISHNAMURTHI, KPSTLA). Default Value : KPSTLA |
ayanamsa |
ayanamsa |
No |
Custom ayanamsa value. Leave ayanamsaType as empty string to take this value as custom value for horoscope computation. |
Object : ayanamsa |
Name |
Type |
Required |
Description |
degrees |
Integer |
Yes |
Degree value of the longitude. Valid Range (0 to 359) |
minutes |
Integer |
Yes |
Minutes value of the longitude. Valid Range (0 to 59) |
seconds |
Integer |
Yes |
Seconds value of the longitude. Valid Range (0 to 59) |
|
Sample Request Input
{
"birthDetails": {
"personName": "Rajinikanth",
"gender": "male",
"birthPlace": {
"city": "Bangalore",
"state": "Karnataka",
"country": "India",
"latitude": {
"degrees": "12",
"minutes": "58",
"seconds": 0,
"direction": "NORTH"
},
"longitude": {
"degrees": "77",
"minutes": "38",
"seconds": 0,
"direction": "EAST"
},
"timeZoneId": "Asia/Kolkata"
},
"birthTime": {
"year": "1950",
"month": "12",
"day": "12",
"hour": "23",
"minutes": "49",
"seconds": 0
},
"settings": {
"ayanamsaType": "KPSTLA",
"ayanamsa": {
"degrees": 0,
"minutes": 0,
"seconds": 0
}
}
}
}
Response Objects
Object : Response (200) |
Name |
Type |
Description |
info |
info |
Contains the personal & birth data information |
houses |
houses |
Contains the house’s positions and occupant lord’s information |
planets |
planets |
Contains the planet’s positions and it’s house information along with the ruling lords |
vimshottariDasa
|
vimshottariDasa
|
Contains vimshottri dasa information along with bhukti & suskma sub periods |
Object : info |
Name |
Type |
Description |
personName |
String |
Name of the person |
gender |
String |
Gender of the person |
birthPlace |
birthPlace |
Birth place of the person (same as the input) |
birthTime
|
birthTime
|
Birth time of the person (same as the input) |
settings |
settings |
Input settings (same as the input) |
ayanamsa |
position |
The ayanamsa value used for the horoscope computation |
horoscopeId |
String |
Unique id for the generated horoscope. Can be used for sharing purpose like http://stellarastrology.in/ho/{horoscopeId} |
Object : houses (array of object with house number) |
Name |
Type |
Description |
position |
position |
Zodiac position |
houseNum |
Integer |
House number |
dasaLord |
String |
Planet name – Dasa lord of the cuspal point sign |
starLord
|
String
|
Planet name – Star lord of the cuspal point |
subLord |
String |
Planet name – Sub lord of the cuspal point |
subSubLord |
String |
Planet name – Sub-Sub lord of the cuspal point |
Object : position |
Name |
Type |
Description |
degrees |
Integer |
Degree value of the zodiac position |
minutes |
Integer |
Minutes value of the zodiac position |
seconds |
Float |
Seconds value of the zodiac position |
milliSeconds |
Long |
Zodiac position in milli seconds |
decimal |
Float |
Zodiac position in decimal |
Object : planets (array of object with planet name) |
Name |
Type |
Description |
id |
String |
Id for the planet |
name |
String |
Name of the planet |
position |
position |
Planet zodiac position |
houseNum
|
Integer
|
House number where the planet resides |
dasaLord |
String |
Planet name – Dasa lord of the sign where planet resides |
starLord |
String |
Planet name – Star lord of the planet zodiac position |
subLord |
String |
Planet name – Sub lord of the planet zodiac position |
subSubLord |
String |
Planet name – Sub-Sub lord of the planet zodiac position |
Object : vimshottariDasa (array of dasaEntries objects) |
Name |
Type |
Description |
dasaLord |
String |
Planet name – Dasa lord of the dasa |
buktiLord |
String |
Planet name – Dasa lord of the dasa |
sukshmaLord |
String |
Planet name – Dasa lord of the dasa |
startDate |
String |
Start date of the dasa of format (dd-MMM-yyyy eg: 19-Jan-1948) |
Sample Response
{
"info": {
"personName": "Rajinikanth",
"gender": "male",
"birthPlace": {
"city": "Bangalore",
"state": "Karnataka",
"country": "India",
"latitude": {
"degrees": 12,
"minutes": 58,
"seconds": 0,
"direction": "NORTH"
},
"longitude": {
"degrees": 77,
"minutes": 38,
"seconds": 0,
"direction": "EAST"
},
"timeZoneId": "Asia/Kolkata"
},
"birthTime": {
"year": 1950,
"month": 12,
"day": 12,
"hour": 23,
"minutes": 49,
"seconds": 0
},
"settings": {
"ayanamsa": {
"degrees": 0,
"minutes": 0,
"seconds": 0
},
"ayanamsaType": "KPSTLA"
},
"ayanamsa": {
"degrees": 23,
"minutes": 9,
"seconds": 39.4194059178011,
"milliSeconds": 83379419,
"decimal": 23.160949834977167
},
"horoscopeId": "ic5hjf"
},
"houses": {
"1": {
"position": {
"degrees": 140,
"minutes": 18,
"seconds": 11.514759199606033,
"milliSeconds": 505091515,
"decimal": 140.3031985442221
},
"houseNum": 1,
"dasaLord": "Sun",
"starLord": "Venus",
"subLord": "Jupiter",
"subSubLord": "Jupiter"
},
"2": {
"position": {
"degrees": 170,
"minutes": 21,
"seconds": 25.370435763854857,
"milliSeconds": 613285370,
"decimal": 170.35704734326774
},
"houseNum": 2,
"dasaLord": "Mercury",
"starLord": "Moon",
"subLord": "Ketu",
"subSubLord": "Mercury"
},
...
"12": {
"position": {
"degrees": 110,
"minutes": 17,
"seconds": 11.57707520489339,
"milliSeconds": 397031577,
"decimal": 110.28654918755691
},
"houseNum": 12,
"dasaLord": "Moon",
"starLord": "Mercury",
"subLord": "Venus",
"subSubLord": "Rahu"
}
},
"planets": {
"Ketu": {
"id": "Ke",
"name": "Ketu",
"position": {
"degrees": 150,
"minutes": 45,
"seconds": 28.942923323950254,
"milliSeconds": 542728943,
"decimal": 150.75803970092332
},
"houseNum": 1,
"dasaLord": "Mercury",
"starLord": "Sun",
"subLord": "Rahu",
"subSubLord": "Venus"
},
"Rahu": {
"id": "Ra",
"name": "Rahu",
"position": {
"degrees": 330,
"minutes": 45,
"seconds": 28.942923324052572,
"milliSeconds": 1190728943,
"decimal": 330.75803970092335
},
"houseNum": 7,
"dasaLord": "Jupiter",
"starLord": "Jupiter",
"subLord": "Mars",
"subSubLord": "Jupiter"
},
...
"Mars": {
"id": "Ma",
"name": "Mars",
"position": {
"degrees": 274,
"minutes": 48,
"seconds": 5.854501484118373,
"milliSeconds": 989285855,
"decimal": 274.80162625041226
},
"houseNum": 5,
"dasaLord": "Saturn",
"starLord": "Sun",
"subLord": "Saturn",
"subSubLord": "Rahu"
}
},
"vimshottariDasa": {
"dasaEntries": [
{
"dasaLord": "Moon",
"buktiLord": "Moon",
"sukshmaLord": "Moon",
"startDate": "19-Jan-1948"
},
{
"dasaLord": "Moon",
"buktiLord": "Moon",
"sukshmaLord": "Mars",
"startDate": "13-Feb-1948"
},
...
]
}
}