Dasha Systems API

Complete Vedic Dasha calculations with planetary period analysis and life predictions

Understanding Dasha Systems

Dasha systems are the cornerstone of Vedic predictive astrology, revealing the timing and nature of life events through planetary periods.

Vimshottari Dasha

The most commonly used Dasha system with 120-year cycles

120 years 9 planets Most accurate

Yogini Dasha

8-year cycle system focusing on spiritual and material aspects

8 years 8 Yoginis Spiritually focused

Char Dasha

Short-term predictions with 10-year cycles

10 years 9 planets Event specific

Vimshottari Dasha System

The Vimshottari Dasha is calculated based on the Moon's position at birth and follows a 120-year cycle.

Mahadasha Periods

Planet Duration Starting Age Ending Age General Influence
☉ Sun 6 years Birth Age 6 Health, father, authority, government
☽ Moon 10 years Age 6 Age 16 Mind, mother, emotions, public
♂ Mars 7 years Age 16 Age 23 Energy, siblings, property, conflicts
☿ Mercury 17 years Age 23 Age 40 Intelligence, business, communication, education
♃ Jupiter 16 years Age 40 Age 56 Wisdom, wealth, children, spirituality
♀ Venus 20 years Age 56 Age 76 Love, luxury, arts, relationships
♄ Saturn 19 years Age 76 Age 95 Discipline, hard work, longevity, foreign lands
☊ Rahu 18 years Age 95 Age 113 Unconventional, foreign, technology, illusions
☋ Ketu 7 years Age 113 Age 120 Spirituality, detachment, foreign lands, enlightenment

Antardasha (Sub-periods)

Each Mahadasha is further divided into sub-periods (Antardasha) ruled by different planets.

Example: Moon Mahadasha (10 years)

Moon - 1 year 6 months
Mars - 1 year 3 months
Mercury - 2 years 6 months
Jupiter - 2 years
Venus - 2 years 6 months
Saturn - 2 years 6 months

API Endpoints

Get Complete Dasha Analysis

GET /v1/calculations/dasha Complete Analysis

Get comprehensive Dasha analysis for a birth chart

Get Current Dasha

GET /v1/calculations/dasha/current Current Period

Get current Mahadasha and Antardasha periods

Get Dasha Predictions

GET /v1/calculations/dasha/predictions Future Predictions

Get predictions for upcoming Dasha periods

Get Complete Dasha Analysis

curl -X GET 'https://api.astro-fusion.com/v1/calculations/dasha?date=1990-06-15T14:30:00Z&latitude=28.6139&longitude=77.2090&timezone=5.5' \
  -H 'Authorization: Bearer YOUR_API_KEY'

Complete Dasha Analysis Response

Full Dasha Analysis

{
  "birthDetails": {
    "date": "1990-06-15T14:30:00.000Z",
    "moonSign": "Cancer",
    "nakshatra": "Pushya"
  },
  "currentDasha": {
    "mahadasha": {
      "planet": "Mercury",
      "startDate": "2013-06-15",
      "endDate": "2030-06-15",
      "remaining": "6 years 4 months",
      "strength": "Strong",
      "influence": "Intelligence, business, communication"
    },
    "antardasha": {
      "planet": "Venus",
      "startDate": "2026-02-15",
      "endDate": "2028-08-15",
      "remaining": "2 years 6 months",
      "strength": "Benefic",
      "influence": "Love, luxury, artistic pursuits"
    },
    "pratyantardasha": {
      "planet": "Sun",
      "startDate": "2026-02-26",
      "endDate": "2026-05-26",
      "remaining": "3 months",
      "strength": "Mixed",
      "influence": "Health, father, government"
    }
  },
  "upcomingDasha": {
    "nextAntardasha": {
      "planet": "Mars",
      "startDate": "2028-08-15",
      "endDate": "2029-05-15",
      "influence": "Energy, courage, property"
    },
    "nextMahadasha": {
      "planet": "Jupiter",
      "startDate": "2030-06-15",
      "endDate": "2046-06-15",
      "influence": "Wisdom, wealth, children"
    }
  },
  "dashaStrengths": {
    "favorablePlanets": ["Mercury", "Venus", "Jupiter"],
    "challengingPlanets": ["Saturn", "Mars"],
    "neutralPlanets": ["Sun", "Moon"]
  },
  "predictions": {
    "currentPeriod": {
      "career": "Excellent period for business and communication",
      "finance": "Good income through multiple sources",
      "health": "Generally good, but watch for stress-related issues",
      "relationships": "Harmonious relationships, possible marriage",
      "spiritual": "Interest in learning and teaching"
    },
    "nextYear": {
      "highlights": [
        "Career advancement in March-April",
        "Financial gains in August-September",
        "Travel opportunities in November"
      ],
      "challenges": [
        "Health concerns in June-July",
        "Family disputes in December"
      ]
    }
  },
  "remedies": {
    "general": [
      "Chant 'Om Gam Ganapataye Namaha' for Mercury",
      "Wear emerald or green stones",
      "Donate green items on Wednesdays"
    ],
    "specific": {
      "currentAntardasha": [
        "Worship Goddess Lakshmi",
        "Wear white or light colored clothes",
        "Avoid arguments and maintain harmony"
      ]
    }
  },
  "transitInfluence": {
    "saturnTransit": "Saturn in Aquarius - career stability",
    "jupiterTransit": "Jupiter in Pisces - spiritual growth",
    "rahuTransit": "Rahu in Aries - unconventional opportunities"
  }
}

Understanding Dasha Predictions

🎯 Career & Finance

Business success, job changes, income sources, investments

❤️ Relationships

Marriage, love, family, friendships, partnerships

🏥 Health

Physical health, mental well-being, medical conditions

🧘 Spiritual Growth

Meditation, learning, teaching, philosophical pursuits

🏠 Property & Assets

Real estate, vehicles, inheritances, material possessions

✈️ Travel & Foreign

International travel, foreign connections, long journeys

Yogini Dasha System

Yogini Dasha is an 8-year cycle system that focuses on spiritual and material prosperity.

Yogini Planet Duration Nature Influence
Mangala Mars 1 year Benefic Courage, energy, property
Pingala Sun 1 year Mixed Health, father, authority
Dhanya Moon 1 year Benefic Mind, mother, emotions
Bhramari Mars 1 year Malefic Illness, obstacles, conflicts
Bhadrika Mercury 1 year Benefic Intelligence, business, wealth
Ulpukta Saturn 1 year Malefic Hard work, delays, foreign travel
Siddha Jupiter 1 year Benefic Wisdom, success, children
Sankata Rahu 1 year Malefic Danger, accidents, unusual events

JavaScript Integration

class DashaAnalyzer {
  constructor(apiKey) {
    this.apiKey = apiKey;
    this.baseURL = 'https://api.astro-fusion.com/v1';
  }

  async getCompleteDashaAnalysis(birthData) {
    const params = new URLSearchParams({
      date: birthData.date,
      latitude: birthData.latitude,
      longitude: birthData.longitude,
      timezone: birthData.timezone || 5.5
    });

    const response = await fetch(\`\${this.baseURL}/calculations/dasha?\${params}\`, {
      headers: {
        'Authorization': \`Bearer \${this.apiKey}\`,
        'Content-Type': 'application/json'
      }
    });

    if (!response.ok) {
      throw new Error(\`HTTP error! status: \${response.status}\`);
    }

    return await response.json();
  }

  async getCurrentDasha(birthData) {
    const params = new URLSearchParams({
      date: birthData.date,
      latitude: birthData.latitude,
      longitude: birthData.longitude,
      timezone: birthData.timezone || 5.5
    });

    const response = await fetch(\`\${this.baseURL}/calculations/dasha/current?\${params}\`, {
      headers: {
        'Authorization': \`Bearer \${this.apiKey}\`,
        'Content-Type': 'application/json'
      }
    });

    return await response.json();
  }

  formatDashaPeriod(dashaData) {
    const mahadasha = dashaData.currentDasha.mahadasha;
    const antardasha = dashaData.currentDasha.antardasha;

    return {
      currentPeriod: \`\${mahadasha.planet} Mahadasha - \${antardasha.planet} Antardasha\`,
      mahadasha: {
        planet: mahadasha.planet,
        remaining: mahadasha.remaining,
        influence: mahadasha.influence
      },
      antardasha: {
        planet: antardasha.planet,
        remaining: antardasha.remaining,
        influence: antardasha.influence
      },
      predictions: dashaData.predictions.currentPeriod,
      remedies: dashaData.remedies.general
    };
  }

  generateDashaReport(dashaData) {
    const formatted = this.formatDashaPeriod(dashaData);

    const report = {
      title: 'Dasha Analysis Report',
      currentPeriod: formatted.currentPeriod,
      summary: \`You are currently in \${formatted.currentPeriod}. This period emphasizes \${formatted.mahadasha.influence.toLowerCase()} with \${formatted.antardasha.influence.toLowerCase()}.\`,
      predictions: formatted.predictions,
      remedies: formatted.remedies,
      nextChanges: {
        nextAntardasha: dashaData.upcomingDasha.nextAntardasha,
        nextMahadasha: dashaData.upcomingDasha.nextMahadasha
      }
    };

    return report;
  }
}

// Usage example
const dashaAnalyzer = new DashaAnalyzer('YOUR_API_KEY');

const birthData = {
  date: '1990-06-15T14:30:00Z',
  latitude: 28.6139,
  longitude: 77.2090,
  timezone: 5.5
};

// Get complete dasha analysis
dashaAnalyzer.getCompleteDashaAnalysis(birthData)
  .then(analysis => {
    const report = dashaAnalyzer.generateDashaReport(analysis);
    console.log('Dasha Report:', report);

    // Display current period
    console.log(\`Current: \${report.currentPeriod}\`);
    console.log(\`Summary: \${report.summary}\`);

    // Show predictions
    Object.entries(report.predictions).forEach(([category, prediction]) => {
      console.log(\`\${category.charAt(0).toUpperCase() + category.slice(1)}: \${prediction}\`);
    });
  })
  .catch(error => {
    console.error('Error analyzing dasha:', error);
  });

// Get only current dasha
dashaAnalyzer.getCurrentDasha(birthData)
  .then(current => {
    console.log('Current Dasha:', current);
  });

Dasha Period Widget

class DashaWidget {
  constructor(containerId, apiKey) {
    this.container = document.getElementById(containerId);
    this.apiKey = apiKey;
    this.birthData = null;
  }

  setBirthData(birthData) {
    this.birthData = birthData;
  }

  async loadDashaData() {
    if (!this.birthData) {
      throw new Error('Birth data not set');
    }

    const analyzer = new DashaAnalyzer(this.apiKey);
    const analysis = await analyzer.getCompleteDashaAnalysis(this.birthData);
    const report = analyzer.generateDashaReport(analysis);

    this.displayReport(report);
  }

  displayReport(report) {
    this.container.innerHTML = \`
      <div class="dasha-widget">
        <h3>Dasha Analysis</h3>
        <div class="current-period">
          <h4>Current Period</h4>
          <p class="period-name">\${report.currentPeriod}</p>
          <p class="period-summary">\${report.summary}</p>
        </div>

        <div class="predictions">
          <h4>Predictions</h4>
          <ul>
            \${Object.entries(report.predictions).map(([category, prediction]) =>
              \`<li><strong>\${category.charAt(0).toUpperCase() + category.slice(1)}:</strong> \${prediction}</li>\`
            ).join('')}
          </ul>
        </div>

        <div class="remedies">
          <h4>Recommended Remedies</h4>
          <ul>
            \${report.remedies.map(remedy => \`<li>\${remedy}</li>\`).join('')}
          </ul>
        </div>

        <div class="next-changes">
          <h4>Upcoming Changes</h4>
          <p><strong>Next Antardasha:</strong> \${report.nextChanges.nextAntardasha.planet} (\${report.nextChanges.nextAntardasha.influence})</p>
          <p><strong>Next Mahadasha:</strong> \${report.nextChanges.nextMahadasha.planet} (\${report.nextChanges.nextMahadasha.influence})</p>
        </div>
      </div>
    \`;
  }
}

// Initialize widget
const dashaWidget = new DashaWidget('dasha-container', 'YOUR_API_KEY');

// Set birth data
dashaWidget.setBirthData({
  date: '1990-06-15T14:30:00Z',
  latitude: 28.6139,
  longitude: 77.2090,
  timezone: 5.5
});

// Load and display dasha analysis
dashaWidget.loadDashaData().catch(error => {
  console.error('Failed to load dasha data:', error);
});