Copy page
Copy page as Markdown for LLMs
Navigate core Krishnamurti Paddhati (KP) tables programmatically with the KP Astrology API. This endpoint is designed as a flexible, single-entry API where you specify which KP table you want via :type_id, and the API returns the corresponding KP data (cuspal sub table, planetary sub table, or planetary–cuspal significators).
type_idtype_id decides which KP table you will receive.
cuspal-sub
Returns the KP Cuspal Sub Table (cusp-wise, with star lord, sub lord, sub-sub, etc.).
planetary-sub
Returns the KP Planetary Sub Table (planet-wise breakup of star lord, sub lord, sub-sub, houses influenced).
planetary-cuspal-significator-table
Returns the combined/derived Planetary and Cuspal Significator Table used in KP for event judgement.
You must replace :type_id in the URL with one of the above values.
You can follow the official guide here:
Step by Step KP Astrology API Postman Testing Integration
| Code | Language |
|---|---|
| en | English |
| hi | Hindi |
| bn | Bengali |
| ma | Marathi |
| tm | Tamil |
| tl | Telugu |
| ml | Malayalam |
| kn | Kannada |
Pass lan in the body to get the response in that language. Default is en.
POST https://astroapi-3.divineapi.com/indian-api/v1/kp/:type_id
| Name | Type | Description |
|---|---|---|
| Authorization* | String | Your API access token. Example: Bearer {token} |
| Name | Type | Required | Description |
|---|---|---|---|
| api_key | String | Yes | Your DivineAPI key. |
| full_name | String | Yes | Full name, e.g. Rahul Kumar. |
| day | Integer | Yes | Date of birth, e.g. 24. |
| month | Integer | Yes | Month of birth, e.g. 05. |
| year | Integer | Yes | Year of birth, e.g. 2023. |
| hour | Integer | Yes | Hour of birth (24h), e.g. 14. |
| min | Integer | Yes | Minute, e.g. 40. |
| sec | Integer | Yes | Second, e.g. 43. |
| gender | String | Yes | e.g. male. |
| place | String | Yes | e.g. New Delhi. |
| lat | Float | Yes | Latitude, e.g. 28.7041. |
| lon | Float | Yes | Longitude, e.g. 77.1025. |
| tzone | Float | Yes | Timezone, e.g. 5.5. |
| lan | String | No | Language code from the table above. |
{
"success": 1,
"data": {
"table": "table_data",
}
}curl --location 'https://astroapi-3.divineapi.com/indian-api/v1/kp/:type_id' \
--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"'
To get planetary sub table, change the URL to:
https://astroapi-3.divineapi.com/indian-api/v1/kp/planetary-sub
var request = require('request');
var options = {
'method': 'POST',
'url': 'https://astroapi-3.divineapi.com/indian-api/v1/kp/:type_id',
'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);
});
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/kp/:type_id",
"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);
});import requests
url = "https://astroapi-3.divineapi.com/indian-api/v1/kp/:type_id"
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)
You must always replace :type_id with a valid key; otherwise the API will not know which KP table to generate.
The overall shape will always be {"success": 1, "data": { ... }} as in the other DivineAPI docs you shared.
Make sure your time, place, and timezone are accurate because KP subdivision logic is highly time-sensitive.