Birth Chart API
Generate complete Vedic birth charts (Kundli)
POST
/v2/astrology/birth-chart
$0.002/call
Basic Usage
import { VedikaClient } from '@anthropic/vedika-sdk';
const vedika = new VedikaClient();
const chart = await vedika.birthChart({
datetime: '1990-05-15T10:30:00+05:30',
latitude: 28.6139,
longitude: 77.2090,
timezone: 'Asia/Kolkata'
});
console.log(chart.sunSign); // 'Taurus'
console.log(chart.moonSign); // 'Aries'
console.log(chart.ascendant); // 'Cancer'
console.log(chart.nakshatra); // 'Ashwini'
Parameters
| Parameter | Type | Required | Description |
|---|---|---|---|
datetime |
string | Yes | ISO 8601 datetime with timezone offset |
latitude |
number | Yes | Birth location latitude (-90 to 90) |
longitude |
number | Yes | Birth location longitude (-180 to 180) |
timezone |
string | No | IANA timezone (e.g., 'Asia/Kolkata') |
ayanamsa |
string | No | 'lahiri' (default), 'krishnamurti', 'raman' |
houseSystem |
string | No | 'placidus' (default), 'whole-sign', 'equal' |
Response Structure
{
"sunSign": "Taurus",
"moonSign": "Aries",
"ascendant": "Cancer",
"nakshatra": "Ashwini",
"nakshatraPada": 2,
"nakshatraLord": "Ketu",
"planets": [
{
"name": "Sun",
"sign": "Taurus",
"signLord": "Venus",
"house": 11,
"degree": 24.38,
"nakshatra": "Rohini",
"nakshatraPada": 3,
"isRetrograde": false,
"isCombust": false,
"isExalted": false,
"isDebilitated": false
},
// ... other planets
],
"houses": [
{ "number": 1, "sign": "Cancer", "signLord": "Moon", "degree": 15.2 },
{ "number": 2, "sign": "Leo", "signLord": "Sun", "degree": 12.4 },
// ... houses 3-12
],
"aspects": [
{
"planet1": "Sun",
"planet2": "Moon",
"aspectType": "sextile",
"orb": 2.3
},
// ... other aspects
],
"yogas": [
{
"name": "Gaja Kesari Yoga",
"planets": ["Jupiter", "Moon"],
"description": "Jupiter in kendra from Moon",
"strength": "strong"
}
],
"metadata": {
"ayanamsa": "lahiri",
"ayanamsaValue": 24.12,
"julianDay": 2448029.94,
"siderealTime": "03:45:12"
}
}
Advanced Options
// With all options
const chart = await vedika.birthChart({
datetime: '1990-05-15T10:30:00+05:30',
latitude: 28.6139,
longitude: 77.2090,
timezone: 'Asia/Kolkata',
ayanamsa: 'lahiri', // Ayanamsa system
houseSystem: 'placidus', // House calculation method
includeAspects: true, // Include planetary aspects
includeYogas: true, // Include yoga formations
includeNakshatras: true, // Include nakshatra details
language: 'en' // Response language
});
Divisional Charts (Vargas)
Get divisional charts like D9 (Navamsha), D10 (Dashamsha):
// Get Navamsha chart (D9)
const navamsha = await vedika.divisionalChart({
...birthDetails,
division: 'D9' // Navamsha
});
// Get Dashamsha chart (D10) for career
const dashamsha = await vedika.divisionalChart({
...birthDetails,
division: 'D10' // Dashamsha
});
// Available divisions: D1-D60
// Common: D9 (marriage), D10 (career), D7 (children), D4 (property)
TypeScript Types
import {
VedikaClient,
BirthChart,
BirthChartRequest,
Planet,
House,
Aspect
} from '@anthropic/vedika-sdk';
const request: BirthChartRequest = {
datetime: '1990-05-15T10:30:00+05:30',
latitude: 28.6139,
longitude: 77.2090
};
const chart: BirthChart = await vedika.birthChart(request);
// Access typed properties
const sun: Planet = chart.planets.find(p => p.name === 'Sun')!;
console.log(sun.sign); // Type: ZodiacSign
const firstHouse: House = chart.houses[0];
console.log(firstHouse.signLord); // Type: PlanetName
Real-World Example
// Complete birth chart analysis
async function analyzeBirthChart(birthDetails) {
const vedika = new VedikaClient();
// Get main birth chart
const chart = await vedika.birthChart(birthDetails);
// Build analysis object
const analysis = {
// Basic signs
personality: {
sunSign: chart.sunSign,
moonSign: chart.moonSign,
risingSign: chart.ascendant
},
// Planet positions by house
planetsByHouse: chart.planets.reduce((acc, planet) => {
acc[planet.house] = acc[planet.house] || [];
acc[planet.house].push(planet.name);
return acc;
}, {}),
// Find strong planets
strongPlanets: chart.planets.filter(p =>
p.isExalted || p.house === 1 || p.house === 10
).map(p => p.name),
// Find weak planets
challengingPlanets: chart.planets.filter(p =>
p.isDebilitated || p.isCombust
).map(p => p.name),
// Active yogas
beneficYogas: chart.yogas.filter(y =>
y.strength === 'strong'
).map(y => y.name)
};
return analysis;
}
// Usage
const result = await analyzeBirthChart({
datetime: '1990-05-15T10:30:00+05:30',
latitude: 28.6139,
longitude: 77.2090
});
console.log('Analysis:', result);