Advanced & Special Astrological Systems APIs
1. KP System (Krishnamurti Paddhati)
1. Name
KP System (Krishnamurti Paddhati)
2. Purpose
Calculates KP System Star Lords (Nakshatra Lords) and Sub Lords (Sub-sub lords) for all planets and 12 Placidus/KP house cusps, along with KP Significators (Ruling Planets, House Significators). Used by advanced astrologers for pinpoint timing.
3. Endpoint
POST /api/v1/kp
4. Auth
Type: None / API Key
Header Example: X-API-Key: sk_live_5f6f2e0a690a45fae957c026cbd820c83bb55461bfad3b94
5. Request Headers
| Header | Required | Description |
|---|---|---|
Content-Type |
Yes | Must be application/json. |
X-API-Key |
No | API Key required for authenticated access. |
6. Request Payload
{
"name": "Santhosh Murthy R",
"datetime": "1983-10-01T20:50",
"timezone": "Asia/Kolkata",
"latitude": 11.3410,
"longitude": 77.7172
}
7. Request Params Table
| Field | Type | Required | Description | Allowed Values | Validation | Example |
|---|---|---|---|---|---|---|
name |
string | No | Subject name | String | Max 200 chars | "Santhosh" |
datetime |
string | Yes | Birth local datetime | ISO string | YYYY-MM-DDTHH:MM |
"1983-10-01T20:50" |
timezone |
string | No | IANA timezone | Valid IANA TZ | Default: "UTC" |
"Asia/Kolkata" |
latitude |
float | Yes | Latitude | -90.0 to +90.0 |
Float | 11.3410 |
longitude |
float | Yes | Longitude | -180.0 to +180.0 |
Float | 77.7172 |
8. Request Example
{
"name": "Santhosh Murthy R",
"datetime": "1983-10-01T20:50",
"timezone": "Asia/Kolkata",
"latitude": 11.3410,
"longitude": 77.7172
}
9. Success Response
Status: 200 OK
{
"status": "success",
"message": "KP System calculated successfully",
"data": {
"planets": [
{
"planet": "Sun",
"star_lord": "Moon",
"sub_lord": "Saturn",
"sub_sub_lord": "Jupiter"
}
],
"cusps": [
{
"house": 1,
"sign_lord": "Venus",
"star_lord": "Sun",
"sub_lord": "Rahu"
}
]
}
}
10. Response Fields Table
| Field | Type | Description | Nullable | Example |
|---|---|---|---|---|
status |
string | Result status | No | "success" |
data.planets[].planet |
string | Planet name | No | "Sun" |
data.planets[].star_lord |
string | Nakshatra (Star) Lord planet | No | "Moon" |
data.planets[].sub_lord |
string | KP Sub Lord planet | No | "Saturn" |
data.cusps[].house |
integer | House cusp index (1 to 12) | No | 1 |
data.cusps[].sub_lord |
string | House Cusp Sub Lord planet | No | "Rahu" |
11. Status Codes Table
| Code | Meaning | When Returned |
|---|---|---|
200 |
OK | KP calculation complete. |
400 |
Bad Request | Missing birth parameters. |
500 |
Internal Error | Calculation error. |
12. Error Examples
{
"status": "error",
"message": "Missing datetime, latitude, or longitude in request body",
"data": null
}
13. Frontend Usage Notes
- Display KP Star Lord and Sub Lord in a dedicated table tab.
14. Validation Rules
- Required:
datetime,latitude,longitude.
15. Business Rules
- Uses Krishnamurti Ayanamsa and Placidus Cusp division.
16. Security Notes
- Standard public API endpoint.
17. Performance Notes
- Fast (~40ms).
18. Related APIs
POST /api/v1/chart/houses
19. Example Frontend Flow
- User selects "KP System" tab.
- App sends
POST /api/v1/kp. - App displays Star and Sub Lord tables.
20. Complete Example
Request:
POST /api/v1/kp HTTP/1.1
Host: api.rbos.in
Content-Type: application/json
{
"datetime": "1983-10-01T20:50",
"latitude": 11.3410,
"longitude": 77.7172
}
Response:
{
"status": "success",
"message": "KP System calculated successfully",
"data": { "planets": [{ "planet": "Sun", "star_lord": "Moon", "sub_lord": "Saturn" }] }
}
Explanation: Computes KP Star & Sub Lords for birth data.
2. Jaimini System (Chara Karakas & Arudhas)
1. Name
Jaimini System (Chara Karakas & Arudhas)
2. Purpose
Computes 7 Chara Karakas (Atmakaraka AK, Amatyakaraka AMK, Bhratrukaraka BK, Matrukaraka MK, Putrakaraka PK, Gnatikaraka GK, Darakaraka DK) and Arudha Padas (Arudha Lagna AL, Upapada Lagna UL) according to Jaimini Maharshi Sutras.
3. Endpoint
POST /api/v1/jaimini
4. Auth
Type: None / API Key
Header Example: X-API-Key: sk_live_5f6f2e0a690a45fae957c026cbd820c83bb55461bfad3b94
5. Request Headers
| Header | Required | Description |
|---|---|---|
Content-Type |
Yes | Must be application/json. |
6. Request Payload
{
"name": "Santhosh",
"datetime": "1983-10-01T20:50",
"timezone": "Asia/Kolkata",
"latitude": 11.3410,
"longitude": 77.7172
}
7. Request Params Table
| Field | Type | Required | Description | Allowed Values | Validation | Example |
|---|---|---|---|---|---|---|
datetime |
string | Yes | Local birth datetime | ISO string | YYYY-MM-DDTHH:MM |
"1983-10-01T20:50" |
latitude |
float | Yes | Latitude | -90.0 to +90.0 |
Float | 11.3410 |
longitude |
float | Yes | Longitude | -180.0 to +180.0 |
Float | 77.7172 |
8. Request Example
{
"datetime": "1983-10-01T20:50",
"timezone": "Asia/Kolkata",
"latitude": 11.3410,
"longitude": 77.7172
}
9. Success Response
Status: 200 OK
{
"status": "success",
"message": "Jaimini calculated successfully",
"data": {
"chara_karakas": {
"AK": { "planet": "Saturn", "longitude_in_sign": 28.5 },
"AMK": { "planet": "Jupiter", "longitude_in_sign": 24.1 },
"DK": { "planet": "Venus", "longitude_in_sign": 2.1 }
},
"arudhas": {
"AL": "Taurus",
"UL": "Scorpio"
}
}
}
10. Response Fields Table
| Field | Type | Description | Nullable | Example |
|---|---|---|---|---|
data.chara_karakas.AK.planet |
string | Atmakaraka (Soul Planet - highest degree) | No | "Saturn" |
data.chara_karakas.DK.planet |
string | Darakaraka (Spouse Planet - lowest degree) | No | "Venus" |
data.arudhas.AL |
string | Arudha Lagna sign name | No | "Taurus" |
data.arudhas.UL |
string | Upapada Lagna sign name | No | "Scorpio" |
11. Status Codes Table
| Code | Meaning | When Returned |
|---|---|---|
200 |
OK | Jaimini calculations successful. |
500 |
Error | Calculation error. |
12. Error Examples
{
"status": "error",
"message": "Missing required parameters."
}
13. Frontend Usage Notes
- Render AK as soul indicator and DK as spouse indicator in Jaimini view.
14. Validation Rules
- Required location and date parameters.
15. Business Rules
- Uses 7 Chara Karaka scheme (Rahu/Ketu excluded from Karakas).
16. Security Notes
- Standard public API endpoint.
17. Performance Notes
- Fast (~25ms).
18. Related APIs
POST /api/v1/chara-dasha
19. Example Frontend Flow
- User clicks "Jaimini" tab.
- App requests
/api/v1/jaimini. - App displays Chara Karaka roles.
20. Complete Example
Request:
POST /api/v1/jaimini HTTP/1.1
Host: api.rbos.in
Content-Type: application/json
{
"datetime": "1983-10-01T20:50",
"latitude": 11.3410,
"longitude": 77.7172
}
Response:
{
"status": "success",
"data": { "chara_karakas": { "AK": { "planet": "Saturn" } }, "arudhas": { "AL": "Taurus" } }
}
Explanation: Computes Jaimini Chara Karakas and Arudha Lagna.
3. Birth Time Rectification
1. Name
Birth Time Rectification
2. Purpose
Performs automated birth time rectification using Tattwa Shodhana, Kunda/Pranapada checks, and life event verification to find the precise rectified birth time within a given window.
3. Endpoint
POST /api/v1/rectify
4. Auth
Type: None / API Key
Header Example: X-API-Key: sk_live_5f6f2e0a690a45fae957c026cbd820c83bb55461bfad3b94
5. Request Headers
| Header | Required | Description |
|---|---|---|
Content-Type |
Yes | Must be application/json. |
X-API-Key |
No | API Key required for authenticated access. |
6. Request Payload
{
"name": "Santhosh Murthy R",
"datetime": "1983-10-01T20:50",
"timezone": "Asia/Kolkata",
"latitude": 11.3410,
"longitude": 77.7172,
"window_minutes": 30,
"step_minutes": 2,
"life_events": [
{
"event": "marriage",
"date": "2010-05-20"
}
]
}
7. Request Params Table
| Field | Type | Required | Description | Allowed Values | Validation | Example |
|---|---|---|---|---|---|---|
name |
string | Yes | Subject name | String | Max 200 chars | "Santhosh Murthy R" |
datetime |
string | Yes | Approximate local birth datetime | ISO string | YYYY-MM-DDTHH:MM |
"1983-10-01T20:50" |
timezone |
string | Yes | IANA timezone | Valid IANA TZ | - | "Asia/Kolkata" |
latitude |
float | Yes | Latitude | -90.0 to +90.0 |
Float | 11.3410 |
longitude |
float | Yes | Longitude | -180.0 to +180.0 |
Float | 77.7172 |
window_minutes |
integer | No | Search window around given birth time (mins) | 10 to 60 |
Integer | 30 |
step_minutes |
integer | No | Step increment in minutes | 1 to 10 |
Integer | 2 |
life_events |
array | No | Array of known life events with event name & ISO date | Array of Objects | - | [{"event":"marriage","date":"2010-05-20"}] |
8. Request Example
{
"name": "Santhosh Murthy R",
"datetime": "1983-10-01T20:50",
"timezone": "Asia/Kolkata",
"latitude": 11.3410,
"longitude": 77.7172,
"window_minutes": 30,
"step_minutes": 2
}
9. Success Response
Status: 200 OK
{
"status": "success",
"message": "Rectification analysis complete.",
"data": {
"rectified_time": "1983-10-01T20:52:00+05:30",
"score": 92.5,
"candidate_evaluations": [],
"tattwa_matches": true,
"kunda_match": true
}
}
10. Response Fields Table
| Field | Type | Description | Nullable | Example |
|---|---|---|---|---|
status |
string | Result status | No | "success" |
data.rectified_time |
string | Most probable rectified ISO birth time | No | "1983-10-01T20:52:00+05:30" |
data.score |
float | Rectification confidence score (0-100) | No | 92.5 |
11. Status Codes Table
| Code | Meaning | When Returned |
|---|---|---|
200 |
OK | Rectification complete. |
400 |
Bad Request | Missing required birth parameters. |
500 |
Internal Error | Rectification calculation failed. |
4. Prashna (Horary Astrology)
1. Name
Prashna (Horary Astrology)
2. Purpose
Casts a Prashna (Horary) chart for a specific query using KP or Vedic system, supporting KP Seed Number (1-249) for automated house alignment.
3. Endpoint
POST /api/v1/prashna
4. Auth
Type: None / API Key
Header Example: X-API-Key: sk_live_5f6f2e0a690a45fae957c026cbd820c83bb55461bfad3b94
5. Request Headers
| Header | Required | Description |
|---|---|---|
Content-Type |
Yes | Must be application/json. |
6. Request Payload
{
"seed_number": 108,
"datetime": "2026-08-09T19:20",
"timezone": "Asia/Kolkata",
"latitude": 11.3410,
"longitude": 77.7172
}
7. Request Params Table
| Field | Type | Required | Description | Allowed Values | Validation | Example |
|---|---|---|---|---|---|---|
seed_number |
integer | Yes | KP Prashna seed number | 1 to 249 |
Integer 1-249 | 108 |
datetime |
string | Yes | Query local datetime | ISO string | YYYY-MM-DDTHH:MM |
"2026-08-09T19:20" |
timezone |
string | Yes | IANA timezone | Valid IANA TZ | String | "Asia/Kolkata" |
latitude |
float | Yes | Query Location Latitude | -90.0 to +90.0 |
Float | 11.3410 |
longitude |
float | Yes | Query Location Longitude | -180.0 to +180.0 |
Float | 77.7172 |
8. Request Example
{
"seed_number": 108,
"datetime": "2026-08-09T19:20",
"timezone": "Asia/Kolkata",
"latitude": 11.3410,
"longitude": 77.7172
}
9. Success Response
Status: 200 OK
{
"success": true,
"seed_number": 108,
"query_time": "2026-08-09T19:20",
"lagna_degree": 142.58,
"chart": {}
}
10. Response Fields Table
| Field | Type | Description | Nullable | Example |
|---|---|---|---|---|
success |
boolean | Calculation success flag | No | true |
seed_number |
integer | KP Prashna seed number used | No | 108 |
lagna_degree |
float | Calculated Prashna Lagna longitude | No | 142.58 |
chart |
object | Complete calculated chart object | No | {} |
11. Status Codes Table
| Code | Meaning | When Returned |
|---|---|---|
200 |
OK | Prashna chart cast successfully. |
400 |
Bad Request | Invalid seed number or missing location/datetime. |
500 |
Internal Error | Engine calculation error. |