# API натальної карти

Натальна карта — фундамент будь-якого астрологічного застосунку (Co-Star, Sanctuary, The Pattern, Chani — усі тримаються на ній). AstroWay API дає повний набір ендпоінтів для побудови та аналізу карти за один виклик: від базових позицій планет на тому самому Swiss Ephemeris, що в Solar Fire та Astrodienst, до рідкісних технік, яких немає у конкурентів — частина 700+ ендпоінтів усієї платформи.

## Що розраховується

Повна натальна карта включає **astrology trinity** — три «обличчя» особистості, які користувачі повертаються вивчати знову й знову (drives retention):

- **Позиції планет** — Sun (ідентичність/призначення), Moon (емоційне ядро/потреби), Mercury, Venus, Mars, Jupiter, Saturn, Uranus, Neptune, Pluto + North Node, Chiron. Довгота, широта, швидкість, знак, будинок, ретроградність.
- **Куспіди будинків** — 15 систем на вибір (Placidus, Koch, Whole Sign, Equal та інші). ASC (як інші бачать користувача), MC (кар'єра/публічний образ), Vertex.
- **Аспекти** — conjunction, opposition, trine, square, sextile, quincunx. Орб, applying/separating.
- **Секта карти** — diurnal/nocturnal (для класичної елліністичної астрології у стилі Chris Brennan / Demetra George).

## Ендпоінти

| Ендпоінт | Кредити | Що повертає |
|---|---|---|
| `/v1/chart` | 20 | Повна натальна карта (планети + будинки + аспекти) |
| `/v1/planets` | 10 | Тільки позиції планет (без будинків і аспектів) |
| `/v1/essential-dignities` | 20 | Таблиця сутнісних достоїнств (доміціль, екзальтація, трипліцитет, терм, фас) |
| `/v1/almuten` | 20 | Альмутен figuris — середньовічна техніка |
| `/v1/arabic-parts` | 20 | Арабські частки/жереби (Fortuna, Spirit, та інші) |
| `/v1/fixed-stars` | 20 | Кон'юнкції планет з нерухомими зорями |
| `/v1/midpoints` | 20 | Планетарні мідпоінти |
| `/v1/disposition-chains` | 20 | Ланцюжки диспозиції (графи керування) |
| `/v1/firdaria` | 20 | Періоди Фірдар |
| `/v1/profections` | 20 | Річні профекції |
| `/v1/planetary-phases` | 20 | Орієнтальні/окцидентальні фази |
| `/v1/receptions` | 20 | Взаємні рецепції |

## Приклад

<Tabs>
  <TabItem label="cURL">
    ```bash frame="terminal"
    curl -X POST https://api.astroway.info/v1/chart \
      -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,
        "houseSystem": "P"
      }'
    ```
  </TabItem>
  <TabItem label="Node.js">
    ```ts
    const r = await fetch('https://api.astroway.info/v1/chart', {
      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,
        houseSystem: 'P',
      }),
    });
    const { data: chart } = await r.json();
    console.log(`ASC: ${chart.angles.asc.sign} ${chart.angles.asc.degree.toFixed(2)}°`);
    ```
  </TabItem>
  <TabItem label="Python">
    ```python

    r = requests.post(
        'https://api.astroway.info/v1/chart',
        headers={'X-Api-Key': os.environ['ASTROWAY_API_KEY'], 'Content-Type': 'application/json'},
        json={
            'date': '1990-07-14',
            'time': '14:30:00',
            'timezoneOffset': 3,
            'latitude': 50.4501,
            'longitude': 30.5234,
            'houseSystem': 'P',
        },
    )
    chart = r.json()['data']
    print(f"ASC: {chart['angles']['asc']['sign']} {chart['angles']['asc']['degree']:.2f}°")
    ```
  </TabItem>
  <TabItem label="PHP">
    ```php
    <?php
    use GuzzleHttp\Client;

    $aw = new Client(['base_uri' => 'https://api.astroway.info/v1/']);
    $r = $aw->post('chart', [
        'headers' => ['X-Api-Key' => getenv('ASTROWAY_API_KEY')],
        'json' => [
            'date' => '1990-07-14',
            'time' => '14:30:00',
            'timezoneOffset' => 3,
            'latitude' => 50.4501,
            'longitude' => 30.5234,
            'houseSystem' => 'P',
        ],
    ]);
    $chart = json_decode($r->getBody(), true)['data'];
    printf("ASC: %s %.2f°\n", $chart['angles']['asc']['sign'], $chart['angles']['asc']['degree']);
    ```
  </TabItem>
</Tabs>

## Хто використовує

- **Астрологічні застосунки** — web і mobile додатки з побудовою карт
- **AI-агенти** — через MCP сервер або `/interpret/natal` для AI-інтерпретацій
- **Дослідники** — масові розрахунки для статистичних досліджень
- **Контент-платформи** — натальні карти як фіча поверх існуючого продукту

## Вартість

Натальна карта (`/v1/chart`) — **20 кредитів**. На Free тарифі (10 000 кредитів/міс) — 500 карт на місяць безкоштовно.

<CardGrid>
  <LinkCard title="Швидкий старт →" href="/getting-started/" description="Перший запит за 5 хвилин" />
  <LinkCard title="Детальний приклад" href="/examples/natal/" description="Параметри, відповідь, системи будинків" />
  <LinkCard title="Тарифи" href="/pricing/" description="Від безкоштовного до Enterprise" />
</CardGrid>
