Cosmic Notifications - webhooky na astrologické události
Přeměň AstroWay API z request-response na event stream. Místo toho, aby ses neustále ptal na nebe v cyklu, přihlásíš URL na typ události – a AstroWay sám pošle webhook v okamžiku, kdy nastane (podepsáno HMAC-SHA256, s automatickým opakováním a automatickým odpojením „mrtvých“ předplatných).
Jaké události (live)
Sekce “Jaké události (live)”Všechny tyto události jsou globální (stav nebe, nezávisí na natalních datech) – předplatitelé dostávají stejný payload.
| Událost | Registrace | Kdy se spouští |
|---|---|---|
retrograde-start | POST /v1/webhooks/retrograde-start | planeta (Merkur–Pluto) se stává retrográdní |
retrograde-end | POST /v1/webhooks/retrograde-end | planeta přestává být retrográdní (stává se přímou) |
sign-ingress | POST /v1/webhooks/sign-ingress | planeta (Slunce + Merkur–Pluto) vstupuje do nového znamení |
void-of-course-start | POST /v1/webhooks/void-of-course-start | začíná období Měsíce „bez kurzu“ (VOC) |
eclipse-alert | POST /v1/webhooks/eclipse-alert | 7 dní před slunečním nebo měsíčním zatměním |
Jak se přihlásit
Sekce “Jak se přihlásit”Potřebuješ API klíč spojený s tvým účtem.
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 }Spravovat předplatná: GET /v1/webhooks (seznam), GET /v1/webhooks/{id}, DELETE /v1/webhooks/{id}, POST /v1/webhooks/{id}/test (testovací doručení na tvé URL).
Co přijde na tvé URL
Sekce “Co přijde na tvé URL”POST s hlavičkami X-AstroWay-Signature: sha256=<hmac>, X-AstroWay-Event, X-AstroWay-Delivery-Id a tělem:
{ "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 }}Ověření podpisu
Sekce “Ověření podpisu”Podpis je HMAC-SHA256(signing_secret, raw_body) v hex. Porovnej s hlavičkou X-AstroWay-Signature (bez prefixu 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));}Předplatné se automaticky odpojí po 5 po sobě jdoucích neúspěšných doručeních (ne-2xx nebo timeout 8 s) – zapni ho znovu přes GET /v1/webhooks → pauza/obnovení resetuje čítač.
Cena
Sekce “Cena”Registrace a správa předplatných – Tier 1 (10 kreditů) za volání, provádějí se zřídka. Doručení události na tvé URL není tarifováno – neexistuje samostatný tarif.