Major Planetary Yogas APIs


1. Major Yogas Calculation & Detection

1. Name

Major Yogas Calculation & Detection

2. Purpose

Identifies and evaluates auspicious and inauspicious planetary Yogas present in the native's chart (such as Gajakesari Yoga, Pancha Mahapurusha Yogas, Raja Yogas, Dhana Yogas, Budhaditya Yoga, Neechabhanga Raja Yoga). Used by frontend for Yoga summary cards.

3. Endpoint

POST /api/v1/yoga

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 Native 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": "Calculated Yogas successfully",
  "data": {
    "yogas": [
      {
        "name": "Gajakesari Yoga",
        "is_present": true,
        "description": "Jupiter is in a Kendra (1, 4, 7, 10) position from Moon, granting wisdom, reputation, and lasting success."
      },
      {
        "name": "Ruchaka Yoga",
        "is_present": false,
        "description": "Mars exalted or in own sign in a Kendra."
      }
    ]
  }
}

10. Response Fields Table

Field Type Description Nullable Example
status string Response result No "success"
message string Result message No "Calculated Yogas successfully"
data.yogas[].name string Traditional name of the Yoga No "Gajakesari Yoga"
data.yogas[].is_present boolean True if criteria for Yoga are satisfied in chart No true
data.yogas[].description string Detailed description and manifestation of Yoga No "Jupiter is in a Kendra..."

11. Status Codes Table

Code Meaning When Returned
200 OK Yoga detection completed.
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

14. Validation Rules

15. Business Rules

16. Security Notes

17. Performance Notes

19. Example Frontend Flow

  1. User selects "Yogas" tab.
  2. App sends POST /api/v1/yoga.
  3. App lists active Yogas.

20. Complete Example

Request:

POST /api/v1/yoga HTTP/1.1
Host: api.rbos.in
Content-Type: application/json

{
  "name": "Santhosh",
  "datetime": "1983-10-01T20:50",
  "timezone": "Asia/Kolkata",
  "latitude": 11.3410,
  "longitude": 77.7172
}

Response:

{
  "status": "success",
  "message": "Calculated Yogas successfully",
  "data": {
    "yogas": [{ "name": "Gajakesari Yoga", "is_present": true, "description": "Jupiter in Kendra from Moon." }]
  }
}

Explanation: Checks and returns active Yogas for birth details.