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

Pitra Dosha API

This documentation explains how to use the Pitra Dosha API to determine whether Pitra Dosha is present in a native’s horoscope and, if present, to fetch interpretive content and recommended remedies.


Step by Step Yogas API Postman Testing Integration

Step by Step Yogas API Postman Testing Integration


Supported Language Codes

Support Article URL
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
These languages are supported by this API. You can pass the lan parameter in the body with one of the above codes. If not passed, the API defaults to en.


API Endpoint

POST https://astroapi-3.divineapi.com/indian-api/v1/pitra-dosha

Headers

NameTypeDescription
Authorization*StringYour API access token, e.g. Bearer {token}

Request Body

NameTypeDescription
api_key*StringYour API key
full_name*StringFull name, e.g. Rahul kumar
day*IntegerDate of birth, e.g. 24
month*IntegerMonth of birth, e.g. 05
year*IntegerYear of birth, e.g. 2023
hour*IntegerHour of birth (24-hour), e.g. 14
min*IntegerMinute, e.g. 40
sec*IntegerSecond, e.g. 43
gender*StringGender, e.g. male
place*StringPlace of birth, e.g. New Delhi
lat*FloatLatitude, e.g. 28.7041
lon*FloatLongitude, e.g. 77.1025
tzone*FloatTimezone, e.g. 5.5 — see: Timezone List
lanStringOptional language code from the table above, default is en

200: OK Pitra Dosha Fetched Successfully

// If pitra dosha is false
{
    "success": 1,
    "data": {
        "pitra_dosha": "false",
        "content": {
            "detail": []
        },
        "remedies": []
    }
}

// If pitra dosha is true
{
    "success": 1,
    "data": {
        "pitra_dosha": "true",
        "content": {
            "detail": [
                "This is a dosha which occurs in your chart due to the effect of the curse in the life of your ancestors. It could be possible that one or more of your ancestors (pitras) carried some sinful or unapproved deeds in their life. The malice created by the virtue of their bad karma gets forwarded to their further generations. Thus pitradosh is an inheritence of the karmic debt of the family line and you have to accpet it. Some of the effects of this dosha is delayed marriage, chronic ailments in the family, financial misery, accidents and death."
            ]
        },
        "remedies": [
            "Perform Pitru Trapan and Shraddha Puja for the pacification of the souls of your ancestors.",
            "Feed Brahmins and donate red clothes to them.",
            "Perform Rudrabhishekam and offer water to the banyan tree.",
            "Feed cows, dogs and crows daily.",
            "Chant Mahamrityunjaya Mantra 1,25,000 times and wear a rudraksha mala.",
            "Organise a Narayan Bali Shraddha at the bank of a sacred river."
        ]
    }
}

Example Code Implementations

Below are example implementations in various programming environments.


cURL

curl --location 'https://astroapi-3.divineapi.com/indian-api/v1/pitra-dosha' \
--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"'

NodeJS

var request = require('request');
var options = {
  'method': 'POST',
  'url': 'https://astroapi-3.divineapi.com/indian-api/v1/pitra-dosha',
  'headers': {
    'Authorization': 'Bearer {Your Auth Token}'
  },
  formData: {
    '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'
  }
};
request(options, function (error, response) {
  if (error) throw new Error(error);
  console.log(response.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/v1/pitra-dosha",
  "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/v1/pitra-dosha"

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)
Example Code
curl -X POST "https://astroapi-3.divineapi.com/indian-api/v1/pitra-dosha" \
  -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/v1/pitra-dosha', form, {
  headers: {
    ...form.getHeaders(),
    'Authorization': 'Bearer {Your Auth Token}',
  }
});

console.log(response.data);
import requests

url = "https://astroapi-3.divineapi.com/indian-api/v1/pitra-dosha"
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/v1/pitra-dosha', {
  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/v1/pitra-dosha', [
    '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/v1/pitra-dosha", 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/v1/pitra-dosha")
            .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/v1/pitra-dosha")!
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/v1/pitra-dosha")
        .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/v1/pitra-dosha", content);
        var result = await response.Content.ReadAsStringAsync();
        Console.WriteLine(result);
    }
}