Generate complete Vedic kundli (Janam Patri) with all 12 houses, planetary positions, aspects, nakshatras, and yogas.
/v2/astrology/kundli
The Kundli API generates a comprehensive Vedic birth chart (Janam Kundli) using Swiss Ephemeris calculations with Lahiri ayanamsa. It returns:
curl -X POST "https://api.vedika.io/v2/astrology/kundli" \
-H "Content-Type: application/json" \
-H "x-api-key: YOUR_API_KEY" \
-d '{
"datetime": "1990-05-15T10:30:00+05:30",
"latitude": 28.6139,
"longitude": 77.2090,
"timezone": "Asia/Kolkata",
"ayanamsa": "lahiri"
}'
const response = await fetch('https://api.vedika.io/v2/astrology/kundli', {
method: 'POST',
headers: {
'Content-Type': 'application/json',
'x-api-key': 'YOUR_API_KEY'
},
body: JSON.stringify({
datetime: '1990-05-15T10:30:00+05:30',
latitude: 28.6139,
longitude: 77.2090,
timezone: 'Asia/Kolkata',
ayanamsa: 'lahiri'
})
});
const data = await response.json();
console.log(data);
import requests
response = requests.post(
'https://api.vedika.io/v2/astrology/kundli',
headers={
'Content-Type': 'application/json',
'x-api-key': 'YOUR_API_KEY'
},
json={
'datetime': '1990-05-15T10:30:00+05:30',
'latitude': 28.6139,
'longitude': 77.2090,
'timezone': 'Asia/Kolkata',
'ayanamsa': 'lahiri'
}
)
data = response.json()
print(data)
| Parameter | Type | Required | Description |
|---|---|---|---|
datetime |
string | Required | Birth date and time in ISO 8601 format (e.g., "1990-05-15T10:30:00+05:30") |
latitude |
number | Required | Birth location latitude (-90 to 90) |
longitude |
number | Required | Birth location longitude (-180 to 180) |
timezone |
string | Optional | IANA timezone (e.g., "Asia/Kolkata"). Defaults to UTC offset from datetime. |
ayanamsa |
string | Optional | Ayanamsa system: "lahiri" (default), "raman", "krishnamurti", "yukteshwar" |
{
"success": true,
"data": {
"ascendant": {
"sign": "Cancer",
"signIndex": 4,
"degree": 15.234,
"nakshatra": "Pushya",
"nakshatraPada": 2,
"lord": "Moon"
},
"planets": [
{
"name": "Sun",
"sign": "Taurus",
"signIndex": 2,
"degree": 0.639,
"nakshatra": "Krittika",
"nakshatraPada": 4,
"house": 11,
"isRetrograde": false,
"signLord": "Venus",
"nakshatraLord": "Sun"
},
{
"name": "Moon",
"sign": "Aquarius",
"signIndex": 11,
"degree": 12.456,
"nakshatra": "Shatabhisha",
"nakshatraPada": 2,
"house": 8,
"isRetrograde": false,
"signLord": "Saturn",
"nakshatraLord": "Rahu"
},
// ... Mars, Mercury, Jupiter, Venus, Saturn, Rahu, Ketu
],
"houses": [
{ "house": 1, "sign": "Cancer", "signIndex": 4, "degree": 15.234, "lord": "Moon" },
{ "house": 2, "sign": "Leo", "signIndex": 5, "degree": 12.567, "lord": "Sun" },
{ "house": 3, "sign": "Virgo", "signIndex": 6, "degree": 10.891, "lord": "Mercury" },
// ... houses 4-12
],
"aspects": [
{ "planet1": "Sun", "planet2": "Saturn", "aspect": "opposition", "orb": 2.3 },
{ "planet1": "Moon", "planet2": "Mars", "aspect": "trine", "orb": 1.8 }
],
"yogas": [
{ "name": "Budh-Aditya Yoga", "planets": ["Sun", "Mercury"], "house": 11 },
{ "name": "Gajakesari Yoga", "planets": ["Moon", "Jupiter"], "strength": "moderate" }
],
"dashaBalance": {
"currentDasha": "Rahu",
"startDate": "1985-03-21",
"endDate": "2003-03-21",
"balanceYears": 13,
"balanceMonths": 2,
"balanceDays": 6
}
},
"metadata": {
"requestId": "req_kundli_abc123",
"calculatedAt": "2026-01-07T12:00:00Z",
"ayanamsaUsed": "lahiri",
"ayanamsaValue": 24.123,
"cost": 0.006
}
}
| Field | Type | Description |
|---|---|---|
sign | string | Zodiac sign name |
signIndex | number | Sign index (1-12, Aries=1) |
degree | number | Degree within sign (0-30) |
nakshatra | string | Nakshatra name |
nakshatraPada | number | Pada (1-4) |
lord | string | Sign lord planet |
| Field | Type | Description |
|---|---|---|
name | string | Planet name |
sign | string | Current zodiac sign |
degree | number | Degree within sign |
nakshatra | string | Current nakshatra |
house | number | House placement (1-12) |
isRetrograde | boolean | Whether planet is retrograde |
{
"success": false,
"error": {
"code": "INVALID_COORDINATES",
"message": "Latitude must be between -90 and 90",
"field": "latitude"
}
}
| Code | HTTP Status | Description |
|---|---|---|
INVALID_DATETIME | 400 | Invalid date/time format |
INVALID_COORDINATES | 400 | Latitude/longitude out of range |
INVALID_AYANAMSA | 400 | Unknown ayanamsa system |
UNAUTHORIZED | 401 | Invalid or missing API key |
INSUFFICIENT_BALANCE | 402 | Not enough credits |
RATE_LIMITED | 429 | Too many requests |
import { VedikaClient } from '@anthropic/vedika-sdk';
const client = new VedikaClient('YOUR_API_KEY');
const kundli = await client.astrology.kundli({
datetime: '1990-05-15T10:30:00+05:30',
latitude: 28.6139,
longitude: 77.2090
});
console.log(kundli.data.ascendant);
console.log(kundli.data.planets);
from vedika import VedikaClient
client = VedikaClient('YOUR_API_KEY')
kundli = client.astrology.kundli(
datetime='1990-05-15T10:30:00+05:30',
latitude=28.6139,
longitude=77.2090
)
print(kundli.data.ascendant)
print(kundli.data.planets)
Billed from your prepaid balance. No minimum commitment.
View full pricing detailsGet your API key and integrate Vedic astrology in minutes.