/api/astro/western/heliocentric/1 creditHeliocentric chart
The solar system seen from the Sun rather than from the Earth. The Earth takes the Sun's place: it is the body that is somewhere, and the Sun is the centre. So there is no heliocentric Sun, Moon or lunar node — those are Earth-centred constructs, and they are named in `omitted` rather than returned with an invented number. No body is ever retrograde here. Retrogradation is an illusion of watching one moving planet from another, so every `retrograde` is false, and that is the correct answer rather than a missing feature.
https://yogataraapi.prahlad.app/api/astro/western/heliocentric/Authentication
Send your key in the X-API-Key header. Keys are server-side credentials — never put one in browser JavaScript or a mobile app.
X-API-Key: yt_live_a1b2c3d4_…
Content-Type: application/jsonRequest fields
| Field | Type | Required | Notes |
|---|---|---|---|
| date_time | string (date-time) | required | The moment to calculate for, ISO 8601. ALWAYS include an offset or a trailing Z - a value with no zone is read as Asia/Kolkata (UTC+05:30), not UTC, and can return the previous day's result with a 200. '2026-09-01T06:00:00Z' and '2026-09-01 06:00:00' are different instants and give different answers. |
| keys | array | optional | Which calculations to return, as a list of names. See the key table for this endpoint; an unrecognised name rejects the whole request. One call costs one credit however many keys you ask for, so request everything you need at once rather than making several calls. |
| latitude | number (double) | optional | Latitude of the place, in decimal degrees. Positive is north, negative is south. Example: 26.9124 for Jaipur, 40.7128 for New York. Minutes and seconds are not accepted - convert first. |
| longitude | number (double) | optional | Longitude of the place, in decimal degrees. Positive is east, negative is west. Example: 75.7873 for Jaipur, -74.0060 for New York. Note the sign: a missing minus puts New York in China. |
| orb_factor | number (double) | optional | Scale every aspect orb. 0.5 halves them, 2 doubles them. min 0.1 · max 2 |
| timezone_as_float | number (double) | optional | UTC offset of the place, in hours, as a decimal. Example: 5.5 for India (UTC+05:30), -5 for New York in winter, 5.75 for Nepal. This is NOT validated against date_time - if the two disagree you get a successful response for the wrong moment, so derive both from the same source. Use the offset in force on that date, not today's: a summer birth in a country with daylight saving needs the summer offset. min -12 · max 14 |
Example request
curl -X POST https://yogataraapi.prahlad.app/api/astro/western/heliocentric/ \
-H "X-API-Key: $OCCULT_API_KEY" \
-H "Content-Type: application/json" \
-d '{"date_time":"1990-08-15T10:30:00+05:30","latitude":26.9124,"longitude":75.7873,"timezone_as_float":5.5}'Response
{
"_truncated": true,
"_note": "Response shortened for the catalogue.",
"preview": "{\"data\": {\"zodiac\": \"tropical\", \"centre\": \"sun\", \"planets\": [{\"name\": \"earth\", \"longitude\": 322.125097, \"speed\": 0.960932, \"retrograde\": false, \"sign\": \"Aquarius\", \"sign_index\": 11, \"degree_in_sign\": 22.1251, \"formatted\": \"22°07' Aquarius\"}, {\"name\": \"mercury\", \"longitude\": 266.048574, \"speed\": 2.767625, \"retrograde\": false, \"sign\": \"Sagittarius\", \"sign_index\": 9, \"degree_in_sign\": 26.0486, \"formatted\": \"26°02' Sagittarius\"}, {\"name\": \"venus\", \"longitude\": 91.966766, \"speed\": 1.616741, \"retrograde\": false, \"sign\": \"Cancer\", \"sign_index\": 4, \"degree_in_sign\": 1.9668, \"formatted\": \"1°58' Cancer\"}, {\"name\": \"mars\", \"longitude\": 4.703217, \"speed\": 0.621477, \"retrograde\": false, \"sign\": \"Aries\", \"sign_index\": 1, \"degree_in_sign\": 4.7032, \"formatted\": \"4°42' Aries\"}, {\"name\": \"jupiter\", \"longitude\": 115.042891, \"speed\": 0.082106, \"retrograde\": false, \"sign\": \"Cancer\", \"sign_index\": 4, \"degree_in_sign\": 25.0429, \"formatted\": \"25°02' Cancer\"}, {\"name\": \"saturn\", \"longitude\": 292.969663, \"speed\": 0.030364, \"retrograde\": false, \"sign\": \"Capricorn\", \"sign_index\": 10, \"degree_in_sign\": 22.9697, \"formatted\": \"22°58' Capricorn\"}, {\"name\": \"uranus\", \"longitude\": 278.129858, \"speed\": 0.011499, \"retrograde\": false, \"sign\": \"Capricorn\", \"sign_index\": 10, \"degree_in_sign\": 8.1299, \"formatted\": \"8°07' Capricorn\"}, {\"name\": \"neptune\", \"longitude\": 283.428057, \"speed\": 0.005989, \"retrograde\": false, \"sign\": \"Capricorn\", \"sign_index\": 10, \"degree_in_sign\": 13.4281, \"formatted\": \"13°25' Capricorn\"}, {\"name\": \"pluto\", \"longitude\": 227.099255, \"speed\": 0.007081, \"retrograde\": false, \"sign\": \"Scorpio\", \"sign_index\": 8, \"degree_in_sign\": 17.0993, \"formatted\": \"17°05' Scorpio\"}, {\"name\": \"chiron\", \"longitude\": 109.782224, \"speed\": 0.028755, \"retrograde\": false, \"sign\": \"Cancer\", \"sign_index\": 4, \"degree_in_sign\": 19.7822, \"formatted\": \"19°46' Cancer\"}], \"aspects\": [{\"body_1\": \"earth\", \"body_2\": \"saturn\", \"aspect\": \"semisextile\", \"exact_angle\": 30.0, \"orb\": 0.8446, \"allowed_orb\": 2.0, \"separation\": 29.1554}, {\"body_1\": \"mercury\", \"body_2\": \"jupiter\", \"aspect\": \"quincunx\", \"exact_angle\": 150.0, \"orb\": 1.0057, \"allowed_orb\": 3.0, \"separation\": 151.0057}, {\"body_1\": \"jupiter\", \"body_2\": \"saturn\", \"aspect\": \"opposition\", \"exact_angle\": 180.0, \"orb\": 2.0732, \"allowed_orb\": 8.0, \"separation\": 177.9268}, {\"body_1\": \"earth\", \"body_2\": \"chiron\", \"aspect\": \"quincunx\", \"exact_angle\": 150.0, \"orb\": 2.3429, \"allowed_orb\": 3.0, \"separation\": 147.6571}, {\"body_1\": \"pluto\", \"body_2\": \"chiron\", \"aspect\": \"trine\", \"exact_angle\": 120.0, \"orb\": 2.683, \"allowed_orb\": 8.0, \"separation\": 117.317}, {\"body_1\": \"venus\", \"body_2\": \"mars\", \"aspect\": \"square\", \"exact_angle\": 90.0, \"orb\": 2.7365, \"allowed_orb\": 8.0, \"separation\": 87.2635}, {\"body_1\": \"earth\", \"body_2\": \"jupiter\", \"aspect\": \"quincunx\", \"exact_angle\": 150.0, \"orb\": 2.9178, \"allowed_orb\": 3.0, \"separation\": 152.9178}, {\"body_1\": \"saturn\", \"body_2\": \"chiron\", \"aspect\": \"opposition\", \"exact_angle\": 180.0, \"orb\": 3.1874, \"allowed_orb\": 8.0, \"separation\": 176.8126}, {\"body_1\": \"mars\", \"body_2\": \"uranus\", \"aspect\": \"square\", \"exact_angle\": 90.0, \"orb\": 3.4266, \"allowed_orb\": 8.0, \"separation\": 86.5734}, {\"body_1\": \"neptune\", \"body_2\": \"pluto\", \"aspect\": \"sextile\", \"exact_angle\": 60.0, \"orb\": 3.6712, \"allowed_orb\": 6.0, \"separation\": 56.3288}, {\"body_1\": \"earth\", \"body_2\": \"mercury\", \"aspect\": \"sextile\", \"exact_angle\": 60.0, \"orb\": 3.9235, \"allowed_orb\": 6.0, \"separation\": 56.0765}, {\"body_1\": \"earth\", \"body_2\": \"pluto\", \"aspect\": \"square\", \"exact_angle\": 90.0, \"orb\": 5.0258, \"allowed_orb\": 8.0, \"separation\": 95.0258}, {\"body_1\": \"jupiter\", \"body_2\": \"chiron\", \"aspect\": \"conjunction\", \"exact_angle\": 0.0, \"orb\": 5.2607, \"allowed_orb\": 8.0, \"separation\": 5.2607}, {\"body_1\": \"uranus\", \"body_2\": \"neptune\", \"aspect\": \"conjunction\", \"exact_angle\": 0.0, \"orb\": 5.2982, \"allowed_orb\": 8.0, \"separation\": 5.2982}, {\"body_1\": \"saturn\", \"body_2\": \"pluto\", \"aspect\": \"sextile\", \"exact_angle\": 60.0, \"orb\": 5.8704, \"allowed_orb\": 6.0, \"separati"
}Captured from a real call using the exact request above. Results sit under data.
Errors
Metering errors return { "error": "…", "message": "<code>", "is_error": true }. Show error to people and branch on message. See the error reference.