Ashtakoot Score
Calculate the Ashtakoota (Ashtakoot) compatibility score for two people using their birth date, time, and geographical coordinates. Get a total score out of 36 along with individual scores for all eight Kootas to integrate traditional Vedic marriage matching into your astrology application.
Overview
The Ashtakoot Score API calculates traditional Vedic horoscope compatibility between two people using their birth details. It evaluates eight matching factors: Varna, Vashya, Tara, Yoni, Graha Maitri, Gana, Rasi (Bhakoot), and Nadi. The combined score is calculated out of a maximum of 36 points, making this API useful for applications that provide Kundli matching and marriage compatibility analysis.
The API returns the total Ashtakoota score along with individual scores and detailed information for each Koota. The response includes relevant Moon sign, Nakshatra, planetary ruler, and matching-category details for both individuals, depending on the Koota. Developers can use these results to display compatibility scores and explain the individual components of traditional Vedic horoscope matching.
To calculate the Ashtakoot score, submit the birth year, month, date, time, latitude, longitude, and timezone for both individuals in the female and male objects. Optional configuration settings allow you to select an Ayanamsha, choose a geocentric or topocentric observation point, and specify a supported response language. The API returns the matching results in JSON format for integration into websites, mobile applications, and Vedic astrology software.
Request Parameters
| Parameter | Type | Required | Description | Example |
|---|---|---|---|---|
female
|
object | Yes | Female native details | |
year
|
integer | Yes | Birth year of Female native | 1986 |
month
|
integer | Yes | Month number,with no leading zero | 2 |
date
|
integer | Yes | Day number, with no leading zero | 5 |
hours
|
integer | Yes | Hours number, with no leading zero | 5 |
minutes
|
integer | Yes | Minutes number, with no leading zero | 5 |
seconds
|
integer | Yes | Seconds number, with no leading zero | 5 |
latitude
|
float | Yes | Latitude number, in the range from -90 to 90 | 12.86 |
longitude
|
float | Yes | Longitude number, in the range from -180 to 180 | 123.5 |
timezone
|
float | Yes | Timezone of birth location | 5.5 |
male
|
object | Yes | Male native details | |
month
|
integer | Yes | Month number,with no leading zero | 2 |
Year
|
integer | Yes | Birth year of Male native | 1980 |
date
|
string | Yes | Day number, with no leading zero | 2 |
hours
|
integer | Yes | Hours number, with no leading zero | 7 |
minutes
|
integer | Yes | Minutes number, with no leading zero | 9 |
seconds
|
integer | Yes | Seconds number, with no leading zero | 9 |
latitude
|
float | Yes | Latitude number, in the range from -90 to 90 | 15 |
longitude
|
float | Yes | Longitude number, in the range from -180 to 180 | 150 |
timezone
|
float | Yes | Time zone of birth location of Male Native | 5.5 |
config
|
object | No | Contains optional configuration values | |
ayanamsha
|
string | No | Either "tropical" or "sayana" or "lahiri" | Either "tropical" or "sayana" or "lahiri" |
language
|
string | No | Valid 2 letter ISO 639-1 language code | Either "en" For English or "te" for Telugu or "hi" for Hindi or "ta" for Tamil or "kn" for Kannada or "ml" for Malayalam or "or" for Odia or "gu" for Gujarati or "pa" for Punjabi or "bn" for Bengali or "mr" for Marathi or "as" for Assamese or "ur" for Urdu or "ne" for Nepali |
observation_point
|
string | No | Geocentric positions are calculated with respect to the center of Earth. Topocentric positions are calculated with respect to the actual given place | Either "topocentric" or "geocentric" |
Supported Languages
This API endpoint supports the following languages.
Use the corresponding 2-letter language code
in the language parameter when making your request.
| Language | Code |
|---|---|
| English |
en
|
| Telugu |
te
|
| Hindi |
hi
|
| Tamil |
ta
|
| Kannada |
kn
|
| Malayalam |
ml
|
| Odia |
or
|
| Gujarati |
gu
|
| Punjabi |
pa
|
| Bengali |
bn
|
| Marathi |
mr
|
| Assamese |
as
|
| Urdu |
ur
|
| Nepali |
ne
|
To request the response in Telugu, use
te as the language code:
{
"language": "te"
}
Request Example
{
"female":{
"year": 1984,
"month": 7,
"date": 17,
"hours": 11,
"minutes": 45,
"seconds": 0,
"latitude": 16.16667,
"longitude": 81.1333,
"timezone": 5.5
},
"male":{
"year": 1984,
"month": 4,
"date": 3,
"hours": 9,
"minutes": 15,
"seconds": 31,
"latitude": 16.51667,
"longitude": 80.61667,
"timezone": 5.5
},
"config": {
"observation_point": "topocentric",
"language": "te",
"ayanamsha": "lahiri"
}
}
Response Examples
Example responses returned by this API.
{
"statusCode": 200,
"output": {
"out_of": 36,
"total_score": 15.0,
"varna_kootam": {
"bride": {
"moon_sign_number": 11,
"moon_sign": "Aquarius",
"varnam": 4,
"varnam_name": "Soodra"
},
"groom": {
"moon_sign_number": 1,
"moon_sign": "Aries",
"varnam": 2,
"varnam_name": "Kshatriya"
},
"out_of": 1,
"score": 1
},
"vasya_kootam": {
"bride": {
"bride_kootam": 2,
"bride_kootam_name": "Manava"
},
"groom": {
"groom_kootam": 1,
"groom_kootam_name": "Chatushpada"
},
"out_of": 2,
"score": 1
},
"tara_kootam": {
"bride": {
"star_number": 24,
"star_name": "Satabisha"
},
"groom": {
"star_number": 1,
"star_name": "Aswini"
},
"out_of": 3,
"score": 1.5
},
"yoni_kootam": {
"bride": {
"star": 24,
"yoni_number": 1,
"yoni": "Horse"
},
"groom": {
"star": 1,
"yoni_number": 1,
"yoni": "Horse"
},
"out_of": 4,
"score": 4
},
"graha_maitri_kootam": {
"bride": {
"moon_sign_number": 11,
"moon_sign": "Aquarius",
"moon_sign_lord": 7,
"moon_sign_lord_name": "Saturn"
},
"groom": {
"moon_sign_number": 1,
"moon_sign": "Aries",
"moon_sign_lord": 3,
"moon_sign_lord_name": "Mars"
},
"out_of": 5,
"score": 0.5
},
"gana_kootam": {
"bride": {
"bride_nadi": 3,
"bride_nadi_name": "Rakshasa"
},
"groom": {
"groom_nadi": 1,
"groom_nadi_name": "Deva"
},
"out_of": 6,
"score": 0
},
"rasi_kootam": {
"bride": {
"moon_sign": 11,
"moon_sign_name": "Aquarius"
},
"groom": {
"moon_sign": 1,
"moon_sign_name": "Aries"
},
"out_of": 7,
"score": 7
},
"nadi_kootam": {
"bride": {
"nadi": 1,
"nadi_name": "Adi"
},
"groom": {
"nadi": 1,
"nadi_name": "Adi"
},
"out_of": 8,
"score": 0
}
}
}
{
"statusCode": 200,
"output": {
"out_of": 36,
"total_score": 15.0,
"varna_kootam": {
"bride": {
"moon_sign_number": 11,
"moon_sign": "कुंभ",
"varnam": 4,
"varnam_name": "शूद्र"
},
"groom": {
"moon_sign_number": 1,
"moon_sign": "मेष",
"varnam": 2,
"varnam_name": "क्षत्रिय"
},
"out_of": 1,
"score": 1
},
"vasya_kootam": {
"bride": {
"bride_kootam": 2,
"bride_kootam_name": "मानव"
},
"groom": {
"groom_kootam": 1,
"groom_kootam_name": "चतुष्पाद"
},
"out_of": 2,
"score": 1
},
"tara_kootam": {
"bride": {
"star_number": 24,
"star_name": "शतभिषा"
},
"groom": {
"star_number": 1,
"star_name": "अश्विनि"
},
"out_of": 3,
"score": 1.5
},
"yoni_kootam": {
"bride": {
"star": 24,
"yoni_number": 1,
"yoni": "घोड़ा"
},
"groom": {
"star": 1,
"yoni_number": 1,
"yoni": "घोड़ा"
},
"out_of": 4,
"score": 4
},
"graha_maitri_kootam": {
"bride": {
"moon_sign_number": 11,
"moon_sign": "कुंभ",
"moon_sign_lord": 7,
"moon_sign_lord_name": "शनि"
},
"groom": {
"moon_sign_number": 1,
"moon_sign": "मेष",
"moon_sign_lord": 3,
"moon_sign_lord_name": "मंगल"
},
"out_of": 5,
"score": 0.5
},
"gana_kootam": {
"bride": {
"bride_nadi": 3,
"bride_nadi_name": "राक्षस"
},
"groom": {
"groom_nadi": 1,
"groom_nadi_name": "देव"
},
"out_of": 6,
"score": 0
},
"rasi_kootam": {
"bride": {
"moon_sign": 11,
"moon_sign_name": "कुंभ"
},
"groom": {
"moon_sign": 1,
"moon_sign_name": "मेष"
},
"out_of": 7,
"score": 7
},
"nadi_kootam": {
"bride": {
"nadi": 1,
"nadi_name": "प्रथम"
},
"groom": {
"nadi": 1,
"nadi_name": "प्रथम"
},
"out_of": 8,
"score": 0
}
}
}
{
"statusCode": 200,
"output": {
"out_of": 36,
"total_score": 15.0,
"varna_kootam": {
"bride": {
"moon_sign_number": 11,
"moon_sign": "కుంభము",
"varnam": 4,
"varnam_name": "శూద్ర"
},
"groom": {
"moon_sign_number": 1,
"moon_sign": "మేషం",
"varnam": 2,
"varnam_name": "క్షత్రియ"
},
"out_of": 1,
"score": 1
},
"vasya_kootam": {
"bride": {
"bride_kootam": 2,
"bride_kootam_name": "మానవ"
},
"groom": {
"groom_kootam": 1,
"groom_kootam_name": "చతుష్పాద"
},
"out_of": 2,
"score": 1
},
"tara_kootam": {
"bride": {
"star_number": 24,
"star_name": "శతభిష"
},
"groom": {
"star_number": 1,
"star_name": "అశ్విని"
},
"out_of": 3,
"score": 1.5
},
"yoni_kootam": {
"bride": {
"star": 24,
"yoni_number": 1,
"yoni": "గుఱ్ఱం"
},
"groom": {
"star": 1,
"yoni_number": 1,
"yoni": "గుఱ్ఱం"
},
"out_of": 4,
"score": 4
},
"graha_maitri_kootam": {
"bride": {
"moon_sign_number": 11,
"moon_sign": "కుంభము",
"moon_sign_lord": 7,
"moon_sign_lord_name": "శని"
},
"groom": {
"moon_sign_number": 1,
"moon_sign": "మేషం",
"moon_sign_lord": 3,
"moon_sign_lord_name": "కుజ"
},
"out_of": 5,
"score": 0.5
},
"gana_kootam": {
"bride": {
"bride_nadi": 3,
"bride_nadi_name": "రాక్షస"
},
"groom": {
"groom_nadi": 1,
"groom_nadi_name": "దేవ"
},
"out_of": 6,
"score": 0
},
"rasi_kootam": {
"bride": {
"moon_sign": 11,
"moon_sign_name": "కుంభము"
},
"groom": {
"moon_sign": 1,
"moon_sign_name": "మేషం"
},
"out_of": 7,
"score": 7
},
"nadi_kootam": {
"bride": {
"nadi": 1,
"nadi_name": "ఆది"
},
"groom": {
"nadi": 1,
"nadi_name": "ఆది"
},
"out_of": 8,
"score": 0
}
}
}
Code Examples
Use the following examples to integrate this API into your application.
<?php
$curl = curl_init();
curl_setopt_array($curl, array(
CURLOPT_URL => 'https://json.freeastrologyapi.com/match-making/ashtakoot-score',
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => '',
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 0,
CURLOPT_FOLLOWLOCATION => true,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => 'POST',
CURLOPT_POSTFIELDS =>'{
"female":{
"year": 1984,
"month": 7,
"date": 17,
"hours": 11,
"minutes": 45,
"seconds": 0,
"latitude": 16.16667,
"longitude": 81.1333,
"timezone": 5.5
},
"male":{
"year": 1984,
"month": 4,
"date": 3,
"hours": 9,
"minutes": 15,
"seconds": 31,
"latitude": 16.51667,
"longitude": 80.61667,
"timezone": 5.5
},
"config": {
"observation_point": "topocentric",
"language": "en",
"ayanamsha": "lahiri"
}
}',
CURLOPT_HTTPHEADER => array(
'Content-Type: application/json',
'x-api-key: YOUR_API_KEY_HERE'
),
));
$response = curl_exec($curl);
curl_close($curl);
echo $response;
import requests
import json
url = "https://json.freeastrologyapi.com/match-making/ashtakoot-score"
payload = json.dumps({
"female": {
"year": 1984,
"month": 7,
"date": 17,
"hours": 11,
"minutes": 45,
"seconds": 0,
"latitude": 16.16667,
"longitude": 81.1333,
"timezone": 5.5
},
"male": {
"year": 1984,
"month": 4,
"date": 3,
"hours": 9,
"minutes": 15,
"seconds": 31,
"latitude": 16.51667,
"longitude": 80.61667,
"timezone": 5.5
},
"config": {
"observation_point": "topocentric",
"language": "en",
"ayanamsha": "lahiri"
}
})
headers = {
'Content-Type': 'application/json',
'x-api-key': 'YOUR_API_KEY_HERE'
}
response = requests.request("POST", url, headers=headers, data=payload)
print(response.text)
var request = require('request');
var options = {
'method': 'POST',
'url': 'https://json.freeastrologyapi.com/match-making/ashtakoot-score',
'headers': {
'Content-Type': 'application/json',
'x-api-key': 'YOUR_API_KEY_HERE'
},
body: JSON.stringify({
"female": {
"year": 1984,
"month": 7,
"date": 17,
"hours": 11,
"minutes": 45,
"seconds": 0,
"latitude": 16.16667,
"longitude": 81.1333,
"timezone": 5.5
},
"male": {
"year": 1984,
"month": 4,
"date": 3,
"hours": 9,
"minutes": 15,
"seconds": 31,
"latitude": 16.51667,
"longitude": 80.61667,
"timezone": 5.5
},
"config": {
"observation_point": "topocentric",
"language": "en",
"ayanamsha": "lahiri"
}
})
};
request(options, function (error, response) {
if (error) throw new Error(error);
console.log(response.body);
});