Embed Widgets
The public HTML widgets GET /v1/embed/* return a ready iframe fragment - SVG wheel, horoscope, numerology, and more. No API key, host-IP rate-limited (30 requests/hour), cached public, max-age=300. Great for marketing pages; for high-traffic production use the SDK.
<iframe src="https://api.astroway.info/v1/embed/wheel?date=1990-05-15&time=14:30&lat=50.45&lng=30.52&tz=2&theme=dark" width="460" height="560" style="border:0"></iframe>Script loader
Section titled “Script loader”If you would rather not size the iframe yourself, drop in the loader: it replaces itself with an iframe and matches the height to the content automatically, because the widget reports its own size over postMessage.
<script src="https://cdn.astroway.info/embed.js" data-widget="wheel" data-date="1990-05-15" data-time="14:30" data-lat="50.45" data-lng="30.52" data-tz="3"></script>Any data-* attribute becomes a query parameter, so data-theme="light" and data-lang="en" work exactly as in the iframe example. data-height="500" pins the height and turns auto-sizing off. Several widgets on one page do not interfere with each other.
No key is needed, and none is accepted. The /v1/embed/* endpoints are public, and a key in an attribute would end up in the page source. The loader ignores such attributes and warns in the console.
Which URL to use
Section titled “Which URL to use”| File | Cache | For whom |
|---|---|---|
https://cdn.astroway.info/embed.js | 5 minutes | The usual choice. Fixes reach you automatically. |
https://cdn.astroway.info/embed.v1.js | 1 year, immutable | When you need the bytes never to move. Replaced only for a security fix; behaviour changes go to embed.v2.js. |
Widget gallery
Section titled “Widget gallery”Live preview of all 14 widgets - switch the theme, copy the ready-made <iframe>.
Shared parameters
Section titled “Shared parameters”Accepted by every widget:
| Parameter | Values | Default | Description |
|---|---|---|---|
theme | dark · light · console | dark | Color scheme. |
lang | uk · en · +18 languages | uk | Content language. Also read from the Accept-Language header. |
disclaimer | 1 · true · yes | off | Adds a footer note that the content is for entertainment and informational purposes only (not medical, psychological, financial, or legal advice). |
Widgets
Section titled “Widgets”| Widget | Endpoint | Per-widget parameters |
|---|---|---|
| Daily Horoscope | GET /embed/daily-horoscope | sign, date |
| Natal Wheel | GET /embed/wheel (alias /embed/natal) | date, time, lat, lng, tz, city |
| Transit Timeline | GET /embed/transit-timeline | date, days (max 30) |
| Bodygraph (Human Design) | GET /embed/bodygraph | date, time, lat, lng, tz |
| Vedic Kundli | GET /embed/kundli | date, time, lat, lng, tz |
| Mini Chart | GET /embed/mini-chart | date, time, lat, lng, tz, city |
| Planet of Day | GET /embed/planet-of-day | date |
| Moon Phase | GET /embed/moon-phase | date |
| Daily Tarot | GET /embed/daily-tarot | date |
| Monthly Forecast | GET /embed/monthly-forecast | sign, month (YYYY-MM) |
| Sky Transits | GET /embed/transit | date |
| Numerology | GET /embed/numerology | name, date, system (pythagorean · chaldean) |
| Panchang | GET /embed/panchang | date, lat, lng, tz (coordinates required) |
| Synastry | GET /embed/synastry | date_a, time_a, lat_a, lng_a, tz_a, date_b, time_b, lat_b, lng_b, tz_b |
Formats: date - YYYY-MM-DD, time - HH:MM, tz - UTC offset in hours. Omitted parameters fall back to sensible defaults (current date, noon, equator).