# Doshas — planetary afflictions

Doshas are planetary afflictions in a natal chart that classically indicate risks, restrictions, or karmic debts. AstroWay covers **19 dosha endpoints** across four schools — Parashara (classical), Lal Kitab (North-Indian oral tradition), KP (Krishnamurti Paddhati) and Jaimini.

<Aside type="caution">
**Dosha interpretation is culturally sensitive.** We return a computational result (present/absent + strength), not a verdict on someone's life. How you surface this in UI is up to the integrator. We recommend balancing "this dosha is present" with context about remedies and the fact that classical texts describe ~80% of charts as having at least one dosha.
</Aside>

## What we compute

- **Manglik dosha** (Mars affliction) — Mars in houses 1/2/4/7/8/12 from ascendant, Moon, or Venus. The most important dosha for marriage in Indian tradition.
- **Kaal Sarp dosha** — all 7 planets between Rahu and Ketu ("in the snake's mouth"). Multiple sub-variants (Anant, Kulik, Vasuki, Shankhpal, Padma, Mahapadma, Takshak, Karkotak, Shankhachud, Ghatak, Vishdhar, Sheshnag) depending on which Rahu-Ketu axis houses are involved.
- **Pitru dosha** — Sun or Rahu afflicted; classically a karmic debt to ancestors.
- **Shrapit dosha** — Saturn and Rahu conjunct in any house; "curse" from past life.
- **Grahan dosha** — Sun/Moon conjunct Rahu or Ketu.
- **Guru-Chandal dosha** — Jupiter with Rahu (chandal = "lawless" Rahu corrupts Guru).
- **Lal Kitab doshas** — `manglik`, `kaal-sarp`, `pitru-rin` (ancestral debt as one of 7 rin), `kaal-purush` variant per Lal Kitab specifics.
- **KP doshas** — diagnosed via Krishnamurti sub-lord theory.
- **Jaimini doshas** — `arudha` afflictions and badhaka pattern.

## Endpoints

| Endpoint | School | Credits | Description |
|---|---|---|---|
| `/v1/vedic/doshas/parashara/mangal` | Parashara | 20 | Manglik dosha |
| `/v1/vedic/doshas/parashara/kaal-sarp` | Parashara | 20 | Kaal Sarp + sub-variant |
| `/v1/vedic/doshas/parashara/pitru` | Parashara | 20 | Pitru dosha |
| `/v1/vedic/doshas/parashara/shrapit` | Parashara | 20 | Shrapit dosha |
| `/v1/vedic/doshas/parashara/grahan` | Parashara | 20 | Grahan dosha |
| `/v1/vedic/doshas/parashara/guru-chandal` | Parashara | 20 | Guru-Chandal dosha |
| `/v1/vedic/doshas/parashara/full` | Parashara | 50 | All Parashara doshas |
| `/v1/vedic/doshas/lal-kitab/manglik` | Lal Kitab | 20 | Manglik per Lal Kitab |
| `/v1/vedic/doshas/lal-kitab/kaal-sarp` | Lal Kitab | 20 | Kaal Sarp per Lal Kitab |
| `/v1/vedic/doshas/lal-kitab/pitru-rin` | Lal Kitab | 20 | Ancestral debt |
| `/v1/vedic/doshas/lal-kitab/kaal-purush` | Lal Kitab | 20 | Kaal Purush dosha |
| `/v1/vedic/doshas/lal-kitab/full` | Lal Kitab | 50 | All Lal Kitab doshas |
| `/v1/vedic/doshas/kp/mangal` | KP | 20 | Manglik via KP sub-lord |
| `/v1/vedic/doshas/kp/kaal-sarp` | KP | 20 | Kaal Sarp via KP |
| `/v1/vedic/doshas/kp/full` | KP | 50 | All KP doshas |
| `/v1/vedic/doshas/jaimini/arudha-affliction` | Jaimini | 20 | Arudha pada affliction |
| `/v1/vedic/doshas/jaimini/badhaka` | Jaimini | 20 | Badhaka pattern |
| `/v1/vedic/doshas/jaimini/full` | Jaimini | 50 | All Jaimini doshas |
| `/v1/vedic/doshas/all` | All | 100 | All four schools grouped |

## Example

<Tabs>
  <TabItem label="cURL">
    ```bash frame="terminal"
    curl -X POST https://api.astroway.info/v1/vedic/doshas/parashara/full \
      -H "X-Api-Key: aw_live_your_key_here" \
      -H "Content-Type: application/json" \
      -d '{
        "date": "1990-07-14",
        "time": "14:30:00",
        "timezoneOffset": 3,
        "latitude": 50.4501,
        "longitude": 30.5234,
        "ayanamsa": "lahiri"
      }'
    ```
  </TabItem>
  <TabItem label="Node.js">
    ```ts
    const r = await fetch('https://api.astroway.info/v1/vedic/doshas/parashara/full', {
      method: 'POST',
      headers: {
        'X-Api-Key': process.env.ASTROWAY_API_KEY!,
        'Content-Type': 'application/json',
      },
      body: JSON.stringify({
        date: '1990-07-14',
        time: '14:30:00',
        timezoneOffset: 3,
        latitude: 50.4501,
        longitude: 30.5234,
        ayanamsa: 'lahiri',
      }),
    });
    const { data } = await r.json();
    for (const d of data.doshas) {
      console.log(`${d.name}: ${d.present ? 'YES' : 'no'} (${d.strength ?? '-'})`);
    }
    ```
  </TabItem>
  <TabItem label="Python">
    ```python

    r = requests.post(
        'https://api.astroway.info/v1/vedic/doshas/parashara/full',
        headers={'X-Api-Key': os.environ['ASTROWAY_API_KEY']},
        json={
            'date': '1990-07-14',
            'time': '14:30:00',
            'timezoneOffset': 3,
            'latitude': 50.4501,
            'longitude': 30.5234,
            'ayanamsa': 'lahiri',
        },
    )
    for d in r.json()['data']['doshas']:
        verdict = 'YES' if d['present'] else 'no'
        print(f"{d['name']}: {verdict} ({d.get('strength', '-')})")
    ```
  </TabItem>
</Tabs>

Sample response (abbreviated):

```json
{
  "data": {
    "doshas": [
      {
        "name": "Mangal Dosha",
        "key": "mangal",
        "present": true,
        "strength": "moderate",
        "reason": "Mars in 7th house from Ascendant",
        "cancellations": ["Mars in own sign"],
        "net_effect": "partial"
      },
      {
        "name": "Kaal Sarp Dosha",
        "key": "kaal-sarp",
        "present": false
      }
    ],
    "ayanamsa": "lahiri"
  }
}
```

## Accuracy and sources

- **Parashara doshas** — *Brihat Parashara Hora Shastra*, cross-checked against *Phaladeepika* and *Saravali*. Manglik uses the most classical formulation (Mars in 1/2/4/7/8/12 with cancellation rules).
- **Lal Kitab** — *Lal Kitab* (Pandit Roop Chand Joshi, 1939-1952, 5 volumes). Doshas in this school have a different logic (planet-house themes, "teen rin" — three debts, varshphal cycle); they don't map 1:1 onto classical Parashara.
- **KP** — *Krishnamurti Paddhati* readers (K.S. Krishnamurti, 6 volumes). Sub-lord theory, distinct from Parashara cusp work.
- **Jaimini** — *Jaimini Sutras*; arudha-pada afflictions.
- **Status** — Parashara GREEN; Lal Kitab and Jaimini mostly YELLOW (single-author lineage, minimal cross-verification across commercial APIs). Honest disclaimer kept in `docs/AUDIT-TRAIL.md`.

## Related

<CardGrid>
  <LinkCard title="Yogas" href="/en/vedic/yogas/" description="Raja, Dhana, Mahapurusha — 12 combination endpoints" />
  <LinkCard title="Compatibility" href="/en/vedic/compatibility/" description="Manglik match, Ashtakoot, Dashakoota" />
  <LinkCard title="Muhurat" href="/en/vedic/muhurat/" description="Electional astrology for events" />
  <LinkCard title="Credits" href="/en/credits/" description="Per-endpoint credit cost" />
  <LinkCard title="Accuracy" href="/en/accuracy/" description="How we verify calculations" />
  <LinkCard title="Authentication" href="/en/authentication/" description="X-Api-Key, sandbox keys" />
</CardGrid>
