# Ратна (камені-ремедії)

**Ратна** (रत्न) це камінь-ремедія для планети. Дев'ять каменів, navaratna, по одному на кожну з дев'яти грах. Питання «який камінь мені носити» звучить просто, але відповідь залежить від школи, і дві поширені школи дають різні заборони. Тому `/v1/vedic/gemstones` бере школу параметром, а у відповіді завжди пише, за якою саме порахував.

## Дві школи

| Школа | Що рекомендує | Що забороняє |
|---|---|---|
| `lagna-lord` (за замовчуванням) | Камені правителів 1-го, 9-го і 5-го домів: **життєвий**, **щасливий** і **благодійний** камінь | Майже нічого: тільки граху, що володіє виключно дустханами |
| `functional-benefic` | Ті самі три камені, але першим іде **йогакарака**, якщо він є | Камені всіх функціональних малефіків для цього лагна |

**Рекомендовані камені в обох школах збігаються**, і це не збіг обставин: функціональний бенефік визначається як граха, що володіє триконою, а правителі трикон це і є правителі 1, 5 і 9. Ми це не припустили, а перевірили прогоном по всіх дванадцяти лагнах, і зафіксували тестом.

Різниця там, де вона важлива покупцеві: **список заборон**. Для лагна Лева `functional-benefic` знімає смарагд, діамант і синій сапфір, а `lagna-lord` не знімає нічого з них. Якщо ваш астролог працює в одній школі, а ви віддасте клієнту відповідь іншої, розбіжність буде саме тут.

## Ендпоінти

| Ендпоінт | Кредити | Що повертає |
|---|---|---|
| `POST /v1/vedic/gemstones` | 20 | Рекомендація за картою: три камені з роллю, список заборон, застереження, стан планет |
| `GET /v1/vedic/gemstones/navaratna` | 5 | Довідкова таблиця дев'яти каменів без карти |

<Aside type="caution">
**Координати обов'язкові.** Уся відповідь виводиться з лагна, тому `latitude` і `longitude` тут не мають типового нуля, як у решті chart-ендпоінтів: без них ви отримаєте 400, а не впевнений набір каменів для чужого асценденту.
</Aside>

## Приклад

<Tabs>
  <TabItem label="cURL">
    ```bash frame="terminal"
    curl -X POST https://api.astroway.info/v1/vedic/gemstones \
      -H "X-Api-Key: aw_live_your_key_here" \
      -H "Content-Type: application/json" \
      -d '{
        "date": "1990-05-15",
        "time": "14:30:00",
        "timezoneOffset": 3,
        "latitude": 50.45,
        "longitude": 30.52,
        "school": "functional-benefic"
      }'
    ```
  </TabItem>
  <TabItem label="Node.js">
    ```ts
    const r = await fetch('https://api.astroway.info/v1/vedic/gemstones', {
      method: 'POST',
      headers: {
        'X-Api-Key': process.env.ASTROWAY_API_KEY!,
        'Content-Type': 'application/json',
      },
      body: JSON.stringify({
        date: '1990-05-15', time: '14:30:00', timezoneOffset: 3,
        latitude: 50.45, longitude: 30.52, school: 'functional-benefic',
      }),
    });
    const { data } = await r.json();
    console.log(`Lagna ${data.lagna.signName}, school ${data.school}`);
    for (const g of data.recommended) console.log(`  ${g.role}: ${g.gem}`);
    for (const g of data.avoid) console.log(`  avoid ${g.gem} (${g.basis})`);
    ```
  </TabItem>
  <TabItem label="Python">
    ```python

    r = requests.post(
        'https://api.astroway.info/v1/vedic/gemstones',
        headers={'X-Api-Key': os.environ['ASTROWAY_API_KEY']},
        json={
            'date': '1990-05-15', 'time': '14:30:00', 'timezoneOffset': 3,
            'latitude': 50.45, 'longitude': 30.52, 'school': 'functional-benefic',
        },
    )
    d = r.json()['data']
    print(f"Lagna {d['lagna']['signName']} ({d['school']})")
    for g in d['recommended']:
        w = g['wearing']
        print(f"  {g['gem']:16s} {w['day']:10s} {w['finger']:14s} {w['minWeight']['carats']} ct")
    ```
  </TabItem>
</Tabs>

### Приклад відповіді

```json
{
  "type": "gemstone-recommendation",
  "school": "functional-benefic",
  "ayanamsa": 23.7225,
  "lagna": { "sign": 4, "signName": "Leo", "lord": 0, "lordName": "Sun" },
  "recommended": [
    {
      "role": "yogakaraka (primary)",
      "graha": 4, "grahaName": "Mars",
      "gem": "Red coral", "gemSanskrit": "Moonga",
      "mineral": "Corallium rubrum",
      "housesOwned": [4, 9],
      "basis": "owns the 4th (kendra) and the 9th (trikona)",
      "substitutes": ["Carnelian", "Red jasper"],
      "wearing": {
        "day": "Tuesday",
        "finger": "Ring finger",
        "metals": ["Gold", "Copper"],
        "minWeight": { "ratti": [6, 9], "grams": [0.729, 1.094], "carats": [3.65, 5.47] },
        "mantra": "Om Kraam Kreem Kraum Sah Bhaumaya Namah",
        "japaCount": 10000
      }
    }
  ],
  "avoid": [
    { "gem": "Blue sapphire", "basis": "owns the 6th and no trikona" },
    { "gem": "Emerald", "basis": "owns the 11th and no trikona" }
  ],
  "condition": {
    "Sun": { "signName": "Taurus", "house": 10, "dignity": "neutral", "isCombust": false }
  },
  "disclaimer": "Traditional Jyotish remedy, informational only..."
}
```

## Що саме повертається

- **`basis`** на кожному камені це не етикетка, а трасування: які доми належать грасі й чому це дає таку роль. Рекомендацію можна перевірити, не вірячи нам на слово.
- **`wearing`**: день, палець, метали, вага в ratti з переведенням у грами й карати, біджа-мантра і кількість джап. Вага дається діапазоном, а палець списком варіантів, бо посібники розходяться.
- **`substitutes`** (упа-ратна): альтернативою до натурального синього сапфіра на 5 каратів на практиці є не «без ремедії», а дешевший замінник. Хто рахує вартість рекомендації, має бачити обидва варіанти.
- **`condition`**: гідність, спалення, ретроградність кожної грахи. Це **контекст, а не правило**: обидві школи призначають за володінням домами, і твердити інше означало б вигадати третю школу.
- **`nodesNote`**: Раху і Кету не володіють жодним знаком, тому з лагна до гомеда і котячого ока не дійти жодною зі шкіл. Ми це пишемо прямо, а не мовчки віддаємо сім каменів із дев'яти.

## Точність і джерела

- **Відповідність каменя грасі:** *Гаруда Пурана* (Ачаракханда, розділ ратна-парікша) і Варахаміхіра, *Бріхат Самхіта*, гл. 80. Обидва тексти дають один і той самий набір із дев'яти каменів.
- **Правило трьох каменів** (життєвий, щасливий, благодійний) це стандартна сучасна практика.
- **Функціональна класифікація:** Bepin Behari, *Fundamentals of Vedic Astrology*. Саме правило йогакараки походить з BPHS: граха, що володіє і кендрою, і триконою.
- **Як перевірено.** Це не числова техніка, тут нема від чого дрейфувати відносно ефемерид. Перевірка одна можлива: правила мають відтворювати опубліковані призначення, ніде їх не зашиваючи. Класична шістка йогакарак (Сатурн для Тельця й Терезів, Марс для Рака й Лева, Венера для Козерога й Водолія) виходить із правила володіння сама, як і відомі списки заборон для Овна, Тельця, Рака й Лева. Кожне з цих тверджень це тест.
- **Лагна сидерична**, виведена через ayanamsa. Тропічний асцендент зазвичай зміщений на цілий знак, і це змінило б кожен камінь у відповіді.
- **Протокол носіння** (день, палець, метал, вага, мантра) це сучасна практика, а не шастра. Тому варіанти й діапазон, а не одне число, подане як канон.

<Aside type="danger">
**Це ремедія, не медицина і не оцінка покупки.** Ідентичність каменя, його обробку і вагу має підтвердити кваліфікований геммолог або ювелір до купівлі. Жоден камінь не заміняє лікування: з будь-яким питанням про здоров'я звертайтесь до лікаря. Це застереження є в кожній відповіді ендпоінта.
</Aside>

## Пов'язане

- [Шадбала](/vedic/shadbala/), сила планети, якщо потрібен не ремедійний, а кількісний погляд
- [Доші](/vedic/doshas/), Мангал, Каал Сарп та інші афлікції, під які традиційно й підбирають камінь
- [Варги](/vedic/vargas/), дивізіональні карти
- [Кредити](/credits/), повна таблиця тарифів
- [Автентифікація](/authentication/), як отримати `aw_live_*` ключ
