Aspects (Drishti)¶
Free · all plans
Scope: charts:read on every route below.
Drishti answers two different questions, and this page has an endpoint for each. They are both true at once and neither replaces the other:
| Question | Endpoint | Measured by |
|---|---|---|
| Which planets see each other? | /aspects |
the angle between them, on the Parashara curve |
| Standing in this house, who is looking at me? | /house-aspects |
whole signs counted from the planet's own house |
The first is what a strength calculation needs. The second is what a chart is read with — and what a North Indian diagram shows when it writes a planet's name faintly in a house it does not occupy.
GET /v1/vedic/charts/{id}/aspects¶
Returns the full Vedic aspect matrix for the chart. Two flavours of drishti are scored:
- Parashara regular drishti — piecewise curve from 0 (conjunction) through 60 Virupa (full opposition). Every planet casts the universal 7th-house aspect at full strength.
- Special drishti — Mars 4/8, Jupiter 5/9, Saturn/Rahu/Ketu 3/10 at full 60 Virupa.
Edges are sorted by descending strength.
{
"chart_id": "01HKD…",
"edges": [
{"source": "jupiter", "target": "moon", "angle": 120.4, "strength": 60.0, "is_special": true},
{"source": "moon", "target": "jupiter", "angle": 239.6, "strength": 45.0, "is_special": false},
"…"
]
}
Angles (Ascendant / Midheaven) never cast drishti — they're points, not grahas. The full matrix only contains the 9 classical grahas.
How strength maps to interpretation¶
| Strength | Reading |
|---|---|
| 0-15 | Weak / advisory, usually ignored. |
| 15-30 | Quarter aspect — notable colouring. |
| 30-45 | Half aspect — clear influence. |
| 45-60 | Three-quarter / full aspect — dominant influence. |
GET /v1/vedic/charts/{id}/aspects/with-orb¶
Continuous orb-modulated aspect strength — quadratic decay with the
orb (angular gap from the exact aspect centre). The base value is the
classical house weight (7th=60, 4th/8th=45, 5th/9th=30, 3rd/10th=15),
augmented to full 60 for the planet's special aspect (Mars 4/8,
Jupiter 5/9, Saturn 3/10). Decay = base × (orb / 10)²; beyond 10°
the aspect drops to 0.
{
"chart_id": "01HKD…",
"edges": [
{"source": "jupiter", "target": "moon", "aspect_angle": 120.0,
"aspect_type": "5th", "base_strength": 60.0, "orb": 0.0,
"final_strength": 60.0, "is_special": true,
"explanation": "jupiter → 5th aspect (angle 120.0°, orb 0.0°, strength 60.0/60, full-power special)"},
{"source": "sun", "target": "saturn", "aspect_angle": 175.0,
"aspect_type": "7th", "base_strength": 60.0, "orb": 5.0,
"final_strength": 45.0, "is_special": false,
"explanation": "sun → 7th aspect (angle 175.0°, orb 5.0°, strength 45.0/60)"}
]
}
Use this when you need fine-grained per-aspect explanations or want
strength values that vary smoothly with proximity. The base
/aspects endpoint remains the workhorse for binary aspect detection
in the rest of the engine.
GET /v1/vedic/charts/{id}/house-aspects¶
Which planets aspect each of the twelve houses, by whole sign. Required scope: charts:read.
This is the classical reading. Every graha aspects the 7th house from its own; Mars adds the 4th and 8th, Jupiter the 5th and 9th, and Saturn, Rahu and Ketu the 3rd and 10th. Counted inclusively — the 7th from house 9 is house 3, not house 16.
curl -H "Authorization: Bearer $ASTROLINKERS_API_KEY" \
https://api.astrolinkers.com/v1/vedic/charts/$CHART/house-aspects
{
"chart_id": "019ff…",
"houses": [
{
"house": 1,
"aspected_by": [
{"planet": "saturn", "from_house": 7, "distance": 7, "is_special": false},
{"planet": "mars", "from_house": 10, "distance": 4, "is_special": true}
]
},
{"house": 2, "aspected_by": []}
]
}
| Field | Type | Notes |
|---|---|---|
house |
integer 1…12 |
All twelve are always returned. A house nobody aspects is a fact about the chart, not a gap in the answer — it comes back with an empty aspected_by. |
planet |
enum | sun…saturn, rahu, ketu. The ascendant is a cusp, not a graha, and never appears — otherwise it would aspect the 7th of every chart. |
from_house |
integer 1…12 |
Where the planet stands. "Saturn is looking at you" is worth little without "from your 10th". |
distance |
integer | How far the aspected house is, counted inclusively: 7 for the aspect every graha casts, and 3, 4, 5, 8, 9 or 10 for the specials. |
is_special |
boolean | false for the universal 7th. Branch on this rather than on distance when you only want to distinguish the two kinds. |
aspected_by lists the full 7th aspects first, then the specials — the strongest claim at the
top — and the order is stable, so the same chart always renders identically.
Which one do I want?¶
Use /house-aspects to draw or read a chart: it is per house, it needs no orb, and it
maps directly onto what a reader sees. Use /aspects when you need the degree between
two planets — a strength calculation, a yoga check, anything where "how exact" matters.
Asking /aspects and grouping its edges by the target planet's house is not the same
answer: a planet aspects a house whether or not anything stands in it, and the empty houses
are often the point.