Copy page

Copy page as Markdown for LLMs

View as Markdown

View this page as plain text


Open in ChatGPT

Ask ChatGPT about this page

Open in Claude

Ask Claude about this page

Yogini Dasha API

The Yogini Dasha API provides insights into the sequence of Yogini Dasha periods—unique planetary cycles in Indian astrology that reflect both spiritual and material transformations across time. Each Dasha and sub-period (Antar Dasha) signifies specific karmic themes and influences based on an individual’s birth chart.


Step-by-Step Yogini Dasha API Postman Testing Integration

For detailed step-by-step instructions on testing this API via Postman, refer to the official support guide:
https://support.divineapi.com/indian-astrology-apis/testing-kundali-api-yogini-dasha-api-using-postman


Supported Language Codes

Reference Article:
https://support.divineapi.com/general-api-support/translating-an-indian-vedic-apis-into-a-different-language

CodeLanguage
enEnglish
hiHindi
bnBengali
maMarathi
tmTamil
tlTelugu
mlMalayalam
knKannada

Guide:
If no language is specified, English (en) is returned by default.


API Endpoint

POST https://astroapi-3.divineapi.com/indian-api/v2/yogini-dasha

This endpoint generates Yogini Dasha and Antar Dasha timelines based on date, time, and place of birth.


Headers

NameTypeDescription
AuthorizationStringYour API Access Token. Example: Bearer {token}

Request Body

NameTypeRequiredDescription
api_keyStringYesYour API key.
full_nameStringYesFull name of the individual, e.g., Rahul Kumar.
dayIntegerYesBirth date, e.g., 24.
monthIntegerYesBirth month, e.g., 05.
yearIntegerYesBirth year, e.g., 2023.
hourIntegerYesHour of birth in 24-hour format, e.g., 14.
minIntegerYesMinute of birth, e.g., 40.
secIntegerYesSecond of birth, e.g., 43.
genderStringYesGender, e.g., male.
placeStringYesBirthplace, e.g., New Delhi.
latFloatYesLatitude, e.g., 28.7041.
lonFloatYesLongitude, e.g., 77.1025.
tzoneFloatYesTimezone, e.g., 5.5. Refer to Timezone Guide.
lanStringNoLanguage code for localization (default en).

200: OK Yogini Dasha details fetched successfully

{
    "success": 1,
    "data": {
        "date": "2023-05-24",
        "time": "14:40:43",
        "maha_dasha": [
            {
                "dasha": "Pingala",
                "start_date": "2021-06-09",
                "end_date": "2023-06-04",
                "antar_dasha": {
                    "Pingala": "2021-07-19",
                    "Dhanya": "2021-09-19",
                    "Bhramari": "2021-12-09",
                    "Bhadrika": "2022-03-19",
                    "Ulka": "2022-07-19",
                    "Siddha": "2022-12-09",
                    "Sankata": "2023-05-19",
                    "Mangala": "2023-06-04"
                }
            },
            {
                "dasha": "Dhanya",
                "start_date": "2023-06-04",
                "end_date": "2026-06-04",
                "antar_dasha": {
                    "Dhanya": "2023-09-04",
                    "Bhramari": "2024-01-04",
                    "Bhadrika": "2024-06-04",
                    "Ulka": "2024-12-04",
                    "Siddha": "2025-07-04",
                    "Sankata": "2026-03-04",
                    "Mangala": "2026-04-04",
                    "Pingala": "2026-06-04"
                }
            },
            {
                "dasha": "Bhramari",
                "start_date": "2026-06-04",
                "end_date": "2030-06-04",
                "antar_dasha": {
                    "Bhramari": "2026-11-14",
                    "Bhadrika": "2027-06-03",
                    "Ulka": "2028-02-03",
                    "Siddha": "2028-11-13",
                    "Sankata": "2029-10-03",
                    "Mangala": "2029-11-13",
                    "Pingala": "2030-02-02",
                    "Dhanya": "2030-06-04"
                }
            },
            {
                "dasha": "Bhadrika",
                "start_date": "2030-06-04",
                "end_date": "2035-06-04",
                "antar_dasha": {
                    "Bhadrika": "2031-02-14",
                    "Ulka": "2031-12-14",
                    "Siddha": "2032-12-04",
                    "Sankata": "2034-01-14",
                    "Mangala": "2034-03-06",
                    "Pingala": "2034-06-16",
                    "Dhanya": "2034-11-16",
                    "Bhramari": "2035-06-04"
                }
            },
            {
                "dasha": "Ulka",
                "start_date": "2035-06-04",
                "end_date": "2041-06-04",
                "antar_dasha": {
                    "Ulka": "2036-06-04",
                    "Siddha": "2037-08-04",
                    "Sankata": "2038-12-04",
                    "Mangala": "2039-02-04",
                    "Pingala": "2039-06-04",
                    "Dhanya": "2039-12-04",
                    "Bhramari": "2040-08-04",
                    "Bhadrika": "2041-06-04"
                }
            },
            {
                "dasha": "Siddha",
                "start_date": "2041-06-04",
                "end_date": "2048-06-04",
                "antar_dasha": {
                    "Siddha": "2042-10-14",
                    "Sankata": "2044-05-04",
                    "Mangala": "2044-07-14",
                    "Pingala": "2044-12-04",
                    "Dhanya": "2045-07-04",
                    "Bhramari": "2046-04-14",
                    "Bhadrika": "2047-04-03",
                    "Ulka": "2048-06-04"
                }
            },
            {
                "dasha": "Sankata",
                "start_date": "2048-06-04",
                "end_date": "2056-06-04",
                "antar_dasha": {
                    "Sankata": "2050-03-14",
                    "Mangala": "2050-06-03",
                    "Pingala": "2050-11-13",
                    "Dhanya": "2051-07-13",
                    "Bhramari": "2052-06-02",
                    "Bhadrika": "2053-07-12",
                    "Ulka": "2054-11-12",
                    "Siddha": "2056-06-04"
                }
            },
            {
                "dasha": "Mangala",
                "start_date": "2056-06-04",
                "end_date": "2057-06-04",
                "antar_dasha": {
                    "Mangala": "2056-06-14",
                    "Pingala": "2056-07-04",
                    "Dhanya": "2056-08-04",
                    "Bhramari": "2056-09-14",
                    "Bhadrika": "2056-11-03",
                    "Ulka": "2057-01-03",
                    "Siddha": "2057-03-13",
                    "Sankata": "2057-06-04"
                }
            }
        ]
    }
}

Response Explanation

maha_dasha: Represents the main Yogini Dasha cycle, each governed by a distinct Yogini planet.

antar_dasha: Nested sub-periods within the main Dasha showing secondary planetary influences.

start_date / end_date: Indicates the exact duration of each Dasha and Antar Dasha period.

Yoginis: The eight Yoginis (Mangala, Pingala, Dhanya, Bhramari, Bhadrika, Ulka, Siddha, and Sankata) alternate in a fixed sequence, each influencing life events differently.


Example Code Implementations

Below are example implementations in various programming environments.


cURL

curl --location 'https://astroapi-3.divineapi.com/indian-api/v2/yogini-dasha' \
--header 'Authorization: Bearer {Your Auth Token}' \
--form 'api_key="{Your API Key}"' \
--form 'full_name="Rahul kumar"' \
--form 'day="24"' \
--form 'month="05"' \
--form 'year="2023"' \
--form 'hour="14"' \
--form 'min="40"' \
--form 'sec="43"' \
--form 'gender="male"' \
--form 'place="New Delhi "' \
--form 'lat="28.7041"' \
--form 'lon="77.1025"' \
--form 'tzone="5.5"' \
--form 'lan="en"'

Node.js

var request = require("request");

var options = { method: 'POST',
  url: 'https://astroapi-3.divineapi.com/indian-api/v2/yogini-dasha',
  headers: 
   { 'cache-control': 'no-cache',
     authorization: 'Bearer {Your API Access Token}',
     'content-type': 'application/json' },
  formData: 
   { api_key: '{Your API Key}',
     full_name: 'Rahul Kumar',
     place: 'New Delhi, India',
     gender: 'male',
     day: '24',
     month: '05',
     year: '2023',
     hour: '14',
     min: '40',
     sec: '43',
     lon: '77.1025',
     lat: '28.7041',
     tzone: '5.5' } };

request(options, function (error, response, body) {
  if (error) throw new Error(error);

  console.log(body);
});


JavaScript (jQuery AJAX)

var form = new FormData();
form.append("api_key", "{Your API Key}");
form.append("full_name", "Rahul kumar");
form.append("day", "24");
form.append("month", "05");
form.append("year", "2023");
form.append("hour", "14");
form.append("min", "40");
form.append("sec", "43");
form.append("gender", "male");
form.append("place", "New Delhi ");
form.append("lat", "28.7041");
form.append("lon", "77.1025");
form.append("tzone", "5.5");
form.append("lan", "en");

var settings = {
  "url": "https://astroapi-3.divineapi.com/indian-api/v2/yogini-dasha",
  "method": "POST",
  "timeout": 0,
  "headers": {
    "Authorization": "Bearer {Your Auth Token}"
  },
  "processData": false,
  "mimeType": "multipart/form-data",
  "contentType": false,
  "data": form
};

$.ajax(settings).done(function (response) {
  console.log(response);
});

Python

import requests

url = "https://astroapi-3.divineapi.com/indian-api/v2/yogini-dasha"

payload = {'api_key': '{Your API Key}',
'full_name': 'Rahul kumar',
'day': '24',
'month': '05',
'year': '2023',
'hour': '14',
'min': '40',
'sec': '43',
'gender': 'male',
'place': 'New Delhi ',
'lat': '28.7041',
'lon': '77.1025',
'tzone': '5.5',
'lan': 'en'}

headers = {
  'Authorization': 'Bearer {Your Auth Token}'
}

response = requests.request("POST", url, headers=headers, data=payload)

print(response.text)

Best Practices

Always include both Authorization (Bearer Token) and api_key in your request.

Ensure lat, lon, and tzone match the accurate birth location for correct Dasha calculations.

Yogini Dashas are sensitive to exact birth time; even minor inaccuracies may alter results.

Handle nested antar_dasha data dynamically when parsing JSON for front-end display.

Use the lan field to fetch responses in regional languages for localized astrology apps.

Always use HTTPS for secure API communication.

Example Code
curl -X POST "https://astroapi-3.divineapi.com/indian-api/v2/yogini-dasha" \
  -H "Authorization: Bearer {Your Auth Token}" \
  --form 'api_key="{Your API Key}"' \
  --form 'full_name="Rahul kumar"' \
  --form 'day="24"' \
  --form 'month="05"' \
  --form 'year="2023"' \
  --form 'hour="14"' \
  --form 'min="40"' \
  --form 'sec="43"' \
  --form 'gender="male"' \
  --form 'place="New Delhi "' \
  --form 'lat="28.7041"' \
  --form 'lon="77.1025"' \
  --form 'tzone="5.5"' \
  --form 'lan="en"'
const FormData = require('form-data');
const axios = require('axios');

const form = new FormData();
form.append('api_key', '{Your API Key}');
form.append('full_name', 'Rahul kumar');
form.append('day', '24');
form.append('month', '05');
form.append('year', '2023');
form.append('hour', '14');
form.append('min', '40');
form.append('sec', '43');
form.append('gender', 'male');
form.append('place', 'New Delhi ');
form.append('lat', '28.7041');
form.append('lon', '77.1025');
form.append('tzone', '5.5');
form.append('lan', 'en');

const response = await axios.post('https://astroapi-3.divineapi.com/indian-api/v2/yogini-dasha', form, {
  headers: {
    ...form.getHeaders(),
    'Authorization': 'Bearer {Your Auth Token}',
  }
});

console.log(response.data);
import requests

url = "https://astroapi-3.divineapi.com/indian-api/v2/yogini-dasha"
headers = {
    "Authorization": "Bearer {Your Auth Token}",
}
payload = {
    "api_key": "{Your API Key}",
    "full_name": "Rahul kumar",
    "day": "24",
    "month": "05",
    "year": "2023",
    "hour": "14",
    "min": "40",
    "sec": "43",
    "gender": "male",
    "place": "New Delhi ",
    "lat": "28.7041",
    "lon": "77.1025",
    "tzone": "5.5",
    "lan": "en",
}

response = requests.post(url, headers=headers, data=payload)

print(response.json())
const formData = new FormData();
formData.append('api_key', '{Your API Key}');
formData.append('full_name', 'Rahul kumar');
formData.append('day', '24');
formData.append('month', '05');
formData.append('year', '2023');
formData.append('hour', '14');
formData.append('min', '40');
formData.append('sec', '43');
formData.append('gender', 'male');
formData.append('place', 'New Delhi ');
formData.append('lat', '28.7041');
formData.append('lon', '77.1025');
formData.append('tzone', '5.5');
formData.append('lan', 'en');

const response = await fetch('https://astroapi-3.divineapi.com/indian-api/v2/yogini-dasha', {
  method: 'POST',
  headers: {
      'Authorization': "Bearer {Your Auth Token}",
    },
  body: formData,
});

const data = await response.json();
console.log(data);
<?php

use GuzzleHttp\Client;

$client = new Client();

$response = $client->request('POST', 'https://astroapi-3.divineapi.com/indian-api/v2/yogini-dasha', [
    'headers' => [
        'Authorization' => 'Bearer {Your Auth Token}',
    ],
    'multipart' => [
        ['name' => 'api_key', 'contents' => '{Your API Key}'],
        ['name' => 'full_name', 'contents' => 'Rahul kumar'],
        ['name' => 'day', 'contents' => '24'],
        ['name' => 'month', 'contents' => '05'],
        ['name' => 'year', 'contents' => '2023'],
        ['name' => 'hour', 'contents' => '14'],
        ['name' => 'min', 'contents' => '40'],
        ['name' => 'sec', 'contents' => '43'],
        ['name' => 'gender', 'contents' => 'male'],
        ['name' => 'place', 'contents' => 'New Delhi '],
        ['name' => 'lat', 'contents' => '28.7041'],
        ['name' => 'lon', 'contents' => '77.1025'],
        ['name' => 'tzone', 'contents' => '5.5'],
        ['name' => 'lan', 'contents' => 'en'],
    ],
]);

echo $response->getBody();
package main

import (
    "bytes"
    "fmt"
    "mime/multipart"
    "net/http"
    "io"
)

func main() {
    body := &bytes.Buffer{}
    writer := multipart.NewWriter(body)
    writer.WriteField("api_key", "{Your API Key}")
    writer.WriteField("full_name", "Rahul kumar")
    writer.WriteField("day", "24")
    writer.WriteField("month", "05")
    writer.WriteField("year", "2023")
    writer.WriteField("hour", "14")
    writer.WriteField("min", "40")
    writer.WriteField("sec", "43")
    writer.WriteField("gender", "male")
    writer.WriteField("place", "New Delhi ")
    writer.WriteField("lat", "28.7041")
    writer.WriteField("lon", "77.1025")
    writer.WriteField("tzone", "5.5")
    writer.WriteField("lan", "en")
    writer.Close()

    req, _ := http.NewRequest("POST", "https://astroapi-3.divineapi.com/indian-api/v2/yogini-dasha", body)
    req.Header.Set("Content-Type", writer.FormDataContentType())
    req.Header.Set("Authorization", "Bearer {Your Auth Token}")

    client := &http.Client{}
    resp, _ := client.Do(req)
    defer resp.Body.Close()

    body2, _ := io.ReadAll(resp.Body)
    fmt.Println(string(body2))
}
import okhttp3.*;
import java.io.IOException;

public class Main {
    public static void main(String[] args) throws IOException {
        OkHttpClient client = new OkHttpClient();

        RequestBody body = new MultipartBody.Builder()
            .setType(MultipartBody.FORM)
            .addFormDataPart("api_key", "{Your API Key}")
            .addFormDataPart("full_name", "Rahul kumar")
            .addFormDataPart("day", "24")
            .addFormDataPart("month", "05")
            .addFormDataPart("year", "2023")
            .addFormDataPart("hour", "14")
            .addFormDataPart("min", "40")
            .addFormDataPart("sec", "43")
            .addFormDataPart("gender", "male")
            .addFormDataPart("place", "New Delhi ")
            .addFormDataPart("lat", "28.7041")
            .addFormDataPart("lon", "77.1025")
            .addFormDataPart("tzone", "5.5")
            .addFormDataPart("lan", "en")
            .build();

        Request request = new Request.Builder()
            .url("https://astroapi-3.divineapi.com/indian-api/v2/yogini-dasha")
            .post(body)
            .addHeader("Authorization", "Bearer {Your Auth Token}")
            .build();

        Response response = client.newCall(request).execute();
        System.out.println(response.body().string());
    }
}
import Foundation

let url = URL(string: "https://astroapi-3.divineapi.com/indian-api/v2/yogini-dasha")!
var request = URLRequest(url: url)
request.httpMethod = "POST"
request.setValue("Bearer {Your Auth Token}", forHTTPHeaderField: "Authorization")

let boundary = "Boundary-\(UUID().uuidString)"
request.setValue("multipart/form-data; boundary=\(boundary)", forHTTPHeaderField: "Content-Type")

var bodyData = Data()
bodyData.append("--\(boundary)\r\n".data(using: .utf8)!)
bodyData.append("Content-Disposition: form-data; name=\"api_key\"\r\n\r\n".data(using: .utf8)!)
bodyData.append("{Your API Key}\r\n".data(using: .utf8)!)
bodyData.append("--\(boundary)\r\n".data(using: .utf8)!)
bodyData.append("Content-Disposition: form-data; name=\"full_name\"\r\n\r\n".data(using: .utf8)!)
bodyData.append("Rahul kumar\r\n".data(using: .utf8)!)
bodyData.append("--\(boundary)\r\n".data(using: .utf8)!)
bodyData.append("Content-Disposition: form-data; name=\"day\"\r\n\r\n".data(using: .utf8)!)
bodyData.append("24\r\n".data(using: .utf8)!)
bodyData.append("--\(boundary)\r\n".data(using: .utf8)!)
bodyData.append("Content-Disposition: form-data; name=\"month\"\r\n\r\n".data(using: .utf8)!)
bodyData.append("05\r\n".data(using: .utf8)!)
bodyData.append("--\(boundary)\r\n".data(using: .utf8)!)
bodyData.append("Content-Disposition: form-data; name=\"year\"\r\n\r\n".data(using: .utf8)!)
bodyData.append("2023\r\n".data(using: .utf8)!)
bodyData.append("--\(boundary)\r\n".data(using: .utf8)!)
bodyData.append("Content-Disposition: form-data; name=\"hour\"\r\n\r\n".data(using: .utf8)!)
bodyData.append("14\r\n".data(using: .utf8)!)
bodyData.append("--\(boundary)\r\n".data(using: .utf8)!)
bodyData.append("Content-Disposition: form-data; name=\"min\"\r\n\r\n".data(using: .utf8)!)
bodyData.append("40\r\n".data(using: .utf8)!)
bodyData.append("--\(boundary)\r\n".data(using: .utf8)!)
bodyData.append("Content-Disposition: form-data; name=\"sec\"\r\n\r\n".data(using: .utf8)!)
bodyData.append("43\r\n".data(using: .utf8)!)
bodyData.append("--\(boundary)\r\n".data(using: .utf8)!)
bodyData.append("Content-Disposition: form-data; name=\"gender\"\r\n\r\n".data(using: .utf8)!)
bodyData.append("male\r\n".data(using: .utf8)!)
bodyData.append("--\(boundary)\r\n".data(using: .utf8)!)
bodyData.append("Content-Disposition: form-data; name=\"place\"\r\n\r\n".data(using: .utf8)!)
bodyData.append("New Delhi \r\n".data(using: .utf8)!)
bodyData.append("--\(boundary)\r\n".data(using: .utf8)!)
bodyData.append("Content-Disposition: form-data; name=\"lat\"\r\n\r\n".data(using: .utf8)!)
bodyData.append("28.7041\r\n".data(using: .utf8)!)
bodyData.append("--\(boundary)\r\n".data(using: .utf8)!)
bodyData.append("Content-Disposition: form-data; name=\"lon\"\r\n\r\n".data(using: .utf8)!)
bodyData.append("77.1025\r\n".data(using: .utf8)!)
bodyData.append("--\(boundary)\r\n".data(using: .utf8)!)
bodyData.append("Content-Disposition: form-data; name=\"tzone\"\r\n\r\n".data(using: .utf8)!)
bodyData.append("5.5\r\n".data(using: .utf8)!)
bodyData.append("--\(boundary)\r\n".data(using: .utf8)!)
bodyData.append("Content-Disposition: form-data; name=\"lan\"\r\n\r\n".data(using: .utf8)!)
bodyData.append("en\r\n".data(using: .utf8)!)
bodyData.append("--\(boundary)--\r\n".data(using: .utf8)!)
request.httpBody = bodyData

let task = URLSession.shared.dataTask(with: request) { data, response, error in
    if let data = data {
        print(String(data: data, encoding: .utf8) ?? "")
    }
}
task.resume()
import okhttp3.*

fun main() {
    val client = OkHttpClient()

    val body = MultipartBody.Builder()
        .setType(MultipartBody.FORM)
        .addFormDataPart("api_key", "{Your API Key}")
        .addFormDataPart("full_name", "Rahul kumar")
        .addFormDataPart("day", "24")
        .addFormDataPart("month", "05")
        .addFormDataPart("year", "2023")
        .addFormDataPart("hour", "14")
        .addFormDataPart("min", "40")
        .addFormDataPart("sec", "43")
        .addFormDataPart("gender", "male")
        .addFormDataPart("place", "New Delhi ")
        .addFormDataPart("lat", "28.7041")
        .addFormDataPart("lon", "77.1025")
        .addFormDataPart("tzone", "5.5")
        .addFormDataPart("lan", "en")
        .build()

    val request = Request.Builder()
        .url("https://astroapi-3.divineapi.com/indian-api/v2/yogini-dasha")
        .post(body!!)
        .addHeader("Authorization", "Bearer {Your Auth Token}")
        .build()

    client.newCall(request).execute().use { response ->
        println(response.body?.string())
    }
}
using System;
using System.Net.Http;
using System.Threading.Tasks;

class Program {
    static async Task Main() {
        using var client = new HttpClient();
        client.DefaultRequestHeaders.Add("Authorization", "Bearer {Your Auth Token}");

        var content = new MultipartFormDataContent();
        content.Add(new StringContent("{Your API Key}"), "api_key");
        content.Add(new StringContent("Rahul kumar"), "full_name");
        content.Add(new StringContent("24"), "day");
        content.Add(new StringContent("05"), "month");
        content.Add(new StringContent("2023"), "year");
        content.Add(new StringContent("14"), "hour");
        content.Add(new StringContent("40"), "min");
        content.Add(new StringContent("43"), "sec");
        content.Add(new StringContent("male"), "gender");
        content.Add(new StringContent("New Delhi "), "place");
        content.Add(new StringContent("28.7041"), "lat");
        content.Add(new StringContent("77.1025"), "lon");
        content.Add(new StringContent("5.5"), "tzone");
        content.Add(new StringContent("en"), "lan");

        var response = await client.PostAsync("https://astroapi-3.divineapi.com/indian-api/v2/yogini-dasha", content);
        var result = await response.Content.ReadAsStringAsync();
        Console.WriteLine(result);
    }
}