/api/astro/tajaka/1 creditTajika aspects
Tajika is the branch of Indian astrology that absorbed Perso-Arabic technique, and it uses a different aspect scheme from ordinary Vedic drishti. Signs and planets relate to one another by trine, sextile, square, opposition, conjunction and semi-sextile, much as in Western astrology, and each of those is classed benefic, malefic or neutral: trine and sextile are benefic, square, opposition and conjunction malefic, semi-sextile neutral. This endpoint answers aspect questions about a single chart cast for the date, time and place you send. Every key works from that one chart, so ask for as many as you need in a single call. The keys ending `_of_the_raasi` take the `raasi` field, a sign index running 0 for Aries to 11 for Pisces; the keys ending `_of_the_planet` take `planet` instead and start from whichever sign that planet occupies. Planet names must be spelled exactly as in the enum (`Sun`, `Moon`, `Mars`, and so on) because the engine looks them up by exact match; a lower-case name is rejected. The aspect keys all return a two-element array. The first element is the list of aspected sign indices in the same 0-11 scheme; the second is the planets standing in those signs, given as string ids where '0' is the Sun, '1' the Moon, '2' Mars, '3' Mercury, '4' Jupiter, '5' Venus, '6' Saturn, '7' Rahu and '8' Ketu, with 'L' for the ascendant. Start with `aspects_of_the_planet` if you simply want everything one planet touches, then narrow down to the benefic or malefic subsets.
https://yogataraapi.prahlad.app/api/astro/tajaka/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. |
| house | integer | required | |
| keys | array | required | 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) | required | 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. min -90 · max 90 |
| longitude | number (double) | required | 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. min -180 · max 180 |
| node | string | required | truemeanExact lower-case; interpolated into the chart celestial key name. |
| planet | string | required | SunMoonMarsMercuryJupiterVenusSaturnRahuKetuCapitalised, e.g. 'Mars' not 'mars'. A lowercase name returns 500. |
| planet1 | string | required | SunMoonMarsMercuryJupiterVenusSaturnRahuKetuCASE-SENSITIVE, capitalised first letter only ('Mars', not 'mars' or 'MARS'. Confirmed empirically by the shipped catalogue verification results: planet='moon' returns 500 "'moon' is not in list" while planet1='Mars' succeeds. |
| planet2 | string | required | SunMoonMarsMercuryJupiterVenusSaturnRahuKetuCASE-SENSITIVE, capitalised first letter only ('Mars', not 'mars' or 'MARS'. Confirmed empirically by the shipped catalogue verification results: planet='moon' returns 500 "'moon' is not in list" while planet1='Mars' succeeds. |
| raasi | integer | required | |
| timezone_as_float | number (double) | required | 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 |
Available keys (28)
Ask for exactly the calculations you want by listing them in keys. An unknown key rejects the whole request, and you are charged 1 credit however many you ask for — so batch them.
| Key | Extra fields needed | Description |
|---|---|---|
| aspects_of_the_planet | planet | Every Tajika aspect made from the sign the named `planet` occupies, in the same benefic-malefic-neutral order and the same ten-sign, two-element shape as `aspects_of_the_raasi`. The usual starting point for a planet. |
| aspects_of_the_raasi | raasi | Every Tajika aspect a sign makes, benefic then malefic then neutral, concatenated. Returns a two-element array with ten sign indices — 5th, 9th, 3rd, 11th, 4th, 10th, the sign itself, 7th, 2nd, 12th — and the combined planet ids found in them, so a planet can appear more than once. The quickest single call for a whole picture of one sign. |
| benefic_aspects_of_the_planet | planet | Trine and sextile measured from the sign the named `planet` occupies. Four aspected sign indices and the planets in them, in the same two-element array as `benefic_aspects_of_the_raasi`. |
| benefic_aspects_of_the_raasi | raasi | Trine and sextile together — every benefic Tajika aspect a sign makes. Returns a two-element array whose sign list has four entries in the order 5th, 9th, 3rd, 11th from the sign given in `raasi`, followed by the combined list of planets found in them. |
| both_planets_approaching | planet1, planet2 | A single boolean: whether `planet1` and `planet2` are applying to each other rather than separating, decided by comparing which of the two moves faster with which is further advanced within its sign. It is the second half of the ithasala test; retrogression is not taken into account. |
| both_planets_within_their_deeptamsa | planet1, planet2 | Deeptamsa is a planet's orb of influence in degrees, wider for the luminaries than for the rest. Returns a two-element array: a boolean saying whether `planet1` and `planet2` are inside each other's orb, and the ithasala type — 1 for varthamaana (currently forming), 2 for poorna (within one degree, complete), 3 for bhavishya (about to form), or null when there is no contact. |
| conjunction_aspects_of_the_planet | planet | Conjunction measured from the sign the named `planet` occupies: the planets sharing that sign, with the anchor removed. Same two-element shape as `conjunction_aspects_of_the_raasi`. |
| conjunction_aspects_of_the_raasi | raasi | Conjunction, treated in Tajika as a malefic contact: the sign itself and the other planets sharing it. Returns a two-element array holding the single sign index and the co-tenants as string ids, with the sign's own first-listed planet removed. The sign must contain at least one planet — asking about an empty sign fails. |
| malefic_aspects_of_the_planet | planet | Square, conjunction and opposition measured from the sign the named `planet` occupies. Same four-sign, two-element shape as `malefic_aspects_of_the_raasi`. |
| malefic_aspects_of_the_raasi | raasi | Square, conjunction and opposition together — every malefic Tajika aspect a sign makes. Returns a two-element array whose sign list has four entries in the order 4th, 10th, the sign itself, 7th, followed by the planets found in them. Because the conjunction step is included, the sign must contain at least one planet. |
| neutral_aspects_of_the_planet | planet | The neutral (semi-sextile) aspects measured from the sign the named `planet` occupies. Two-element array of the two aspected sign indices and the planet ids found there. |
| neutral_aspects_of_the_raasi | raasi | The neutral aspects of a sign, which in this engine means exactly the semi-sextile — it calls `semi_sextile_aspects_of_the_raasi` and returns its result unchanged, so the two keys always agree. Two-element array of the 2nd and 12th sign indices and the planets in them. |
| opposition_aspects_of_the_planet | planet | The opposition measured from the sign the named `planet` occupies. Same shape as `opposition_aspects_of_the_raasi`: one aspected sign index and the planets in it. |
| opposition_aspects_of_the_raasi | raasi | The Tajika opposition, the strongest malefic aspect: the 7th sign from the sign given in `raasi`. Returns a two-element array whose first element holds a single sign index, followed by the planets standing in that sign as string ids. |
| planet_aspects_from_chart | planet1, planet2 | The whole aspect matrix rather than one pair: it ignores the `planet1` and `planet2` you send beyond validating them, loops over all nine planets against all nine, and returns an object keyed 0 to 8 (Sun through Ketu) whose values are lists of aspected planet ids. It is built on `planets_have_aspects`, so in the current build every list comes back empty. |
| planet_has_benefic_aspect_on_house | planet, house | A single boolean: whether the sign index given in `house` is among the four signs the named `planet` aspects beneficially (its 5th, 9th, 3rd and 11th). `house` uses the same 0-11 sign scheme, 0 for Aries. |
| planet_has_malefic_aspect_on_house | planet, house | A single boolean: whether the sign index given in `house` is among the four signs the named `planet` aspects malefically (its 4th, 10th, own sign and 7th). Same 0-11 sign scheme as the benefic variant. |
| planets_have_aspects | planet1, planet2 | Intended as a boolean saying whether `planet1` and `planet2` have any Tajika aspect at all, benefic, malefic or neutral. The underlying method indexes the planet list with its arguments, so passing the planet names this endpoint requires raises an error rather than returning a result; use `aspects_of_the_planet` and check the returned ids. |
| planets_have_benefic_aspects | planet1, planet2 | Intended as a boolean saying whether `planet2` stands in one of the signs `planet1` aspects beneficially — a directional test, computed from planet1's aspects only. In the current build the comparison is made between the planet name you sent and a list of numeric planet ids, so it returns false for every pair; read `benefic_aspects_of_the_planet` and match the ids yourself. |
| planets_have_malefic_aspects | planet1, planet2 | The malefic counterpart of `planets_have_benefic_aspects`: whether `planet2` sits in one of the four signs `planet1` aspects malefically. It carries the same name-versus-id mismatch and returns false for every pair in the current build; use `malefic_aspects_of_the_planet` instead. |
| planets_have_neutral_aspects | planet1, planet2 | The neutral (semi-sextile) counterpart: whether `planet2` sits in one of the two signs `planet1` aspects neutrally. Same name-versus-id mismatch as the benefic and malefic variants, so it returns false for every pair; use `neutral_aspects_of_the_planet` instead. |
| semi_sextile_aspects_of_the_raasi | raasi | The Tajika semi-sextile, counted as neutral: the 2nd and 12th signs from the sign given in `raasi`. Returns a two-element array of the two aspected sign indices and the planets in them. This is the same calculation `neutral_aspects_of_the_raasi` performs, under its geometric name. |
| sextile_aspects_of_the_planet | planet | The sextile aspect measured from the sign the named `planet` occupies, rather than from a sign index. Same two-element shape as `sextile_aspects_of_the_raasi`. |
| sextile_aspects_of_the_raasi | raasi | The Tajika sextile, a mild benefic aspect: the 3rd and 11th signs from the sign given in `raasi`. Returns a two-element array of the two aspected sign indices (0 = Aries) and the planets sitting in them as string ids. |
| square_aspects_of_the_planet | planet | The square aspect measured from the sign the named `planet` occupies. Same two-element shape as `square_aspects_of_the_raasi`. |
| square_aspects_of_the_raasi | raasi | The Tajika square, a weak malefic aspect: the 4th and 10th signs from the sign given in `raasi`. Returns a two-element array of the two aspected sign indices and the planets in them as string ids. |
| trinal_aspects_of_the_planet | planet | The same trine aspect as `trinal_aspects_of_the_raasi`, but seeded from the sign the named `planet` occupies rather than from a sign index. Returns the same two-element array of aspected sign indices and the planet ids found in them. |
| trinal_aspects_of_the_raasi | raasi | The Tajika trine aspect, the strongest benefic one: the 5th and 9th signs from the sign you name in `raasi`. Returns a two-element array — the two aspected sign indices (0 for Aries to 11 for Pisces), then the planets standing in them as string ids, '0' Sun through '8' Ketu with 'L' for the ascendant. |
Example request
curl -X POST https://yogataraapi.prahlad.app/api/astro/tajaka/ \
-H "X-API-Key: $OCCULT_API_KEY" \
-H "Content-Type: application/json" \
-d '{"keys":["trinal_aspects_of_the_raasi"],"raasi":0,"planet":"Moon","planet1":"Mercury","planet2":"Saturn","node":"true","date_time":"2025-02-12T08:55:55.430Z","house":0,"latitude":26.9124,"longitude":75.7873,"timezone_as_float":5.5}'Response
{
"data": {
"trinal_aspects_of_the_raasi": [
[
4,
8
],
[]
]
},
"status": 200,
"is_error": false,
"message": "successful"
}Captured from a real call using the exact request above. Results sit under data, keyed by what you requested.
Errors
Metering errors return { "error": "…", "message": "<code>", "is_error": true }. Show error to people and branch on message. See the error reference.