# Bolt

У Bolt виклик AstroWay з ключем можливий лише з **server function**. Превʼю Bolt працює в справжньому браузері зі справжнім CORS, тож запит до `api.astroway.info` зі сторінки не пройде, а ключ у `VITE_*` до того ж потрапив би в бандл. Server function виконується на серверах Bolt і читає ключ із секретів проєкту.

## 1. База й ключ

1. Server functions і секрети в Bolt прив'язані до бази Bolt Cloud. Якщо в проєкті її ще немає, попросіть Bolt додати базу.
2. Створіть ключ AstroWay **Тільки сервер** з областю `chart` і бюджетом, як описано в розділі [Ключ для автоматизації](/integrations/). Бюджет зупинить чужого клієнта, який викликатиме вашу функцію, на числі, яке ви задали.

## 2. Промпт

```text title="prompt"
Create a server function named big-three. It reads the secret
ASTROWAY_API_KEY and POSTs the JSON body { date, time, timezone, latitude,
longitude } to https://api.astroway.info/v1/chart with the header
"X-Api-Key: <secret>". Never call api.astroway.info from the browser and
never put the key in a VITE_ variable.

The response is { ok: true, data: {...} } or { ok: false, error: { code,
message } }. On error return the error object with the same HTTP status.
On success return { sun, moon, rising, offset_used } where each sign is
SIGNS[Math.floor(longitude / 30)] with SIGNS = Aries, Taurus, Gemini,
Cancer, Leo, Virgo, Libra, Scorpio, Sagittarius, Capricorn, Aquarius,
Pisces; sun and moon come from data.planets entries named "Sun" and
"Moon", rising from data.houses.ascendant, offset_used from
data.input.timezoneOffset.

Then add a form with date, time, an IANA time zone (default Europe/Kyiv),
latitude and longitude, and show the three signs from the function.
```

Server functions у Bolt Cloud виконуються в тому самому середовищі, що й Supabase Edge Functions, тож готовий файл є на сторінці [Supabase Edge Function](/integrations/supabase/). Якщо Bolt згенерував інше, вставте той файл.

## 3. Секрет

Bolt сам попросить додати `ASTROWAY_API_KEY`, коли функція буде готова. Вручну: у верхньому меню проєкту натисніть **значок бази → Secrets** і додайте секрет із цією назвою. Секрети бачать лише власник проєкту, а в командному акаунті ще співвласники й адміністратори команди.

## 4. Перевірте

Введіть `1990-05-15`, `14:30:00`, `Europe/Kyiv`, `50.45`, `30.52`. Правильна відповідь: Сонце `Taurus`, Місяць `Capricorn`, Асцендент `Virgo`, зсув `4`. Зсув 3 означає, що застосунок рахує зсув сам замість назви зони. Один розрахунок коштує 20 кредитів; логи викликів функції є в налаштуваннях бази, розділ **Logs**.

**Tip:**
Готові промпти для інших застосунків і правила, які варто вставити перед будь-яким із них, на сторінці [Промпти для AI-білдерів](/prompts/).

**Note:**
Перевірено 2026-11-07: функцію з [Supabase](/integrations/supabase/) запущено локально в Deno проти продакшену AstroWay, відповідь та, що вище. Кроки в інтерфейсі Bolt написані за його довідкою і в цій перевірці не виконувалися.
