Cosmic Notifications — вебхуки на астрособытія
هذا المحتوى غير متوفر بلغتك بعد.
Перетворіть AstroWay API з request-response на подієвий стрім. Замість того щоб опитувати небо в циклі, ви підписуєте URL на тип події — і AstroWay сам надсилає вебхук у момент її настання (підписаний HMAC-SHA256, з авто-повторами та авто-відключенням «мертвих» підписок).
Які події (live)
Section titled “Які події (live)”Усі ці події глобальні (стан неба, не залежить від натальних даних) — підписники отримують однаковий payload.
| Подія | Реєстрація | Коли спрацьовує |
|---|---|---|
retrograde-start | POST /v1/webhooks/retrograde-start | планета (Меркурій–Плутон) стає ретроградною |
retrograde-end | POST /v1/webhooks/retrograde-end | планета виходить із ретро (стає директною) |
sign-ingress | POST /v1/webhooks/sign-ingress | планета (Сонце + Меркурій–Плутон) входить у новий знак |
void-of-course-start | POST /v1/webhooks/void-of-course-start | починається період Місяця «без курсу» (VOC) |
eclipse-alert | POST /v1/webhooks/eclipse-alert | за 7 днів до сонячного або місячного затемнення |
Як підписатися
Section titled “Як підписатися”Потрібен API-ключ, прив’язаний до вашого акаунта.
curl -X POST https://api.astroway.info/v1/webhooks/retrograde-start \ -H "X-Api-Key: aw_live_..." \ -H "Content-Type: application/json" \ -d '{ "url": "https://your-app.com/hooks/astroway" }'# { "id": 44, "event": "retrograde-start",# "url": "https://your-app.com/hooks/astroway",# "signing_secret": "a1b2…", ← збережіть, ним перевіряється підпис# "active": true }Керувати підписками: GET /v1/webhooks (список), GET /v1/webhooks/{id}, DELETE /v1/webhooks/{id}, POST /v1/webhooks/{id}/test (тестова доставка на ваш URL).
Що приходить на ваш URL
Section titled “Що приходить на ваш URL”POST із заголовками X-AstroWay-Signature: sha256=<hmac>, X-AstroWay-Event, X-AstroWay-Delivery-Id і тілом:
{ "event": "retrograde-start", "delivered_at": "2026-07-15T12:00:00.000Z", "subscription_id": 44, "data": { "planet": "Mercury", "station": "retrograde", "exactAt": "2026-07-15T11:48:09.967Z", "sign": "Leo", "longitude": 142.31 }}Перевірка підпису
Section titled “Перевірка підпису”Підпис — це HMAC-SHA256(signing_secret, raw_body) у hex. Звіряйте з заголовком X-AstroWay-Signature (без префікса sha256=):
import { createHmac, timingSafeEqual } from 'node:crypto';
function verify(rawBody, header, secret) { const expected = createHmac('sha256', secret).update(rawBody).digest('hex'); const got = header.replace(/^sha256=/, ''); return got.length === expected.length && timingSafeEqual(Buffer.from(got), Buffer.from(expected));}Підписка авто-відключається після 5 поспіль невдалих доставок (не-2xx або таймаут 8 с) — увімкніть її знову через GET /v1/webhooks → пауза/відновлення скидає лічильник.
Реєстрація та керування підписками — Tier 1 (10 кредитів) за виклик, виконуються рідко. Доставка події на ваш URL не тарифікується — окремого тарифу немає.