search

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

Find Karana API

The Find Karana API provides detailed insights into the Karana(s) for a specific date and location. In Indian Astrology, a Karana represents half of a lunar day and carries unique energetic influences that affect daily activities and auspicious timings.


Step-by-Step Find Karana API Postman Testing Integration

Refer to the official guide for detailed Postman testing instructions:
Step by Step Find Karana API Postman Testing Integration
https://support.divineapi.com/indian-astrology-apis/testing-panchang-api-find-karana-api-using-postman


Supported Language Codes

The API supports multiple Indian languages. You can receive the response in your preferred language by passing the lan parameter in the request body.

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 lan is not provided, the default response language is English (en).


API Endpoint

POST https://astroapi-1.divineapi.com/indian-api/v1/find-karana

This endpoint returns the Karana details for a given date, latitude, longitude, and timezone.


Headers

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

Request Body

NameTypeRequiredDescription
api_keyStringYesYour Divine API key.
dayIntegerYesDay of Panchang, e.g., 24.
monthIntegerYesMonth of Panchang, e.g., 05.
yearIntegerYesYear of Panchang, e.g., 2023.
placeStringNoPlace name, e.g., New Delhi.
latFloatYesLatitude, e.g., 28.6139.
lonFloatYesLongitude, e.g., 77.2090.
tzoneFloatYesTimezone offset, e.g., 5.5. Refer to the Timezone Guide.
lanStringNoLanguage code from the supported list. Default is 'en'.

200: OK Karana detaiks fetched successfully

{
    "success": 1,
    "data": {
        "sunrise": "2023-05-24 05:25:56",
        "sunset": "2023-05-24 19:10:28",
        "karnas": [
            {
                "start_time": "2023-05-24 00:58:44",
                "end_time": "2023-05-24 13:56:44",
                "tithi": "Panchmi",
                "paksha": "Shukla",
                "karana_name": "Bav",
                "mobility": "Moveable",
                "rulling_planet": "Sun",
                "devata": "Indra",
                "nature": "Saumya",
                "bhadra": [],
                "bhadra_niwas": []
            },
            {
                "start_time": "2023-05-24 13:57:44",
                "end_time": "2023-05-25 03:00:44",
                "tithi": "Panchmi",
                "paksha": "Shukla",
                "karana_name": "Balav",
                "mobility": "Moveable",
                "rulling_planet": "Moon",
                "devata": "Brahma",
                "nature": "Saumya",
                "bhadra": [],
                "bhadra_niwas": []
            },
            {
                "start_time": "2023-05-25 03:01:44",
                "end_time": "2023-05-25 16:08:44",
                "tithi": "Shasthi",
                "paksha": "Shukla",
                "karana_name": "Kaulava",
                "mobility": "Moveable",
                "rulling_planet": "Mars",
                "devata": "Mitra",
                "nature": "Saumya",
                "bhadra": [],
                "bhadra_niwas": []
            }
        ]
    }
}

Example Code Implementations

Below are example implementations in various programming environments.


cURL

curl --location 'https://astroapi-1.divineapi.com/indian-api/v1/find-karana' \
--header 'Authorization: Bearer {Your Auth Token}' \
--form 'api_key="{Your API Key}"' \
--form 'day="24"' \
--form 'month="05"' \
--form 'year="2023"' \
--form 'place="New Delhi"' \
--form 'lat="28.6139"' \
--form 'lon="77.2090"' \
--form 'tzone="5.5"' \
--form 'lan="en"'

Node.js

var request = require('request');
var options = {
  'method': 'POST',
  'url': 'https://astroapi-1.divineapi.com/indian-api/v1/find-karana',
  'headers': {
    'Authorization': 'Bearer {Your Auth Token}'
  },
  formData: {
    'api_key': '{Your API Key}',
    'day': '24',
    'month': '05',
    'year': '2023',
    'Place': 'New Delhi',
    'lat': '28.6139',
    'lon': '77.2090',
    '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("day", "24");
form.append("month", "05");
form.append("year", "2023");
form.append("Place", "New Delhi");
form.append("lat", "28.6139");
form.append("lon", "77.2090");
form.append("tzone", "5.5");
form.append("lan", "en");

var settings = {
  "url": "https://astroapi-1.divineapi.com/indian-api/v1/find-karana",
  "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-1.divineapi.com/indian-api/v1/find-karana"

payload = {'api_key': 'your API Key',
'day': '03',
'month': '03',
'year': '2023',
'lat': '34.05223',
'lon': '-118.24368',
'tzone': '-7',
'lan': 'en'}

headers = {
  'Authorization': 'Bearer your API Access Token'
}

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

print(response.text)

Notes and Best Practices

Both Authorization (Bearer token) and api_key are mandatory for every request.

Ensure that latitude, longitude, and timezone values correspond to the target location for accurate Karana computation.

The response includes multiple Karana segments for the day with their corresponding start and end times.

Attributes such as mobility, ruling planet, devata, and nature provide deeper astrological context for each Karana.

Use the lan parameter for multilingual support.

Always send API requests over HTTPS to maintain data security.