Public

Daily Horoscope (public, no key)

Changed on

Sun-sign daily horoscope. No authentication, IP-rate-limited (30/hr). Cached per (sign, date, language); every response carries the _footer watermark. The text comes in sections (overview, love, career, health, finance, advice; null in the rare answer that missed one) and as horoscope, the same sections as plain paragraphs, without headings or markup. Computed beside it, from the sky at noon UTC of date: transits (each planet with its sign and solar house counted from the requested sign, the sign itself being the 1st), aspects, events in the period (ingresses, stations, lunar phases, UTC), energy (a 1-10 score with every factor listed; a stated heuristic, not a classical technique), lucky (the sign's traditional ruler, its weekday and Cheiro number) and compatibleSigns (same element and the complementary one). When the text cannot be written right now (reason: "ai_unavailable") or is not ready within 15 s ("ai_slow", it is still being written for the next reader), the answer is 200 with X-AI-Cache: STALE and fallback: { reason, textDate, textLanguage }: the most recent text for this sign in the requested language from up to two periods back, otherwise the English one. The computed fields are always for date. 503 AI_UNAVAILABLE only when no such text exists.

get/public/horoscope/daily

Request

  • Base URL: https://api.astroway.info/v1
  • URL: https://api.astroway.info/v1/public/horoscope/daily
  • Auth: none required

Query parameters

sign'aries' | 'taurus' | 'gemini' | 'cancer' | 'leo' | 'virgo' | 'libra' | 'scorpio' | 'sagittarius' | 'capricorn' | 'aquarius' | 'pisces' required

Zodiac sun sign.

datestring date

Calendar date YYYY-MM-DD (UTC). Defaults to today.

langstring
Example:en

Language for this call, overriding Accept-Language. The canonical per-call form: a page that renders in one language passes it here rather than reconfiguring its client. Unknown or inactive codes fall back to uk.

fieldsstring

Comma-separated dotted paths, relative to data, to keep in the response. A path is applied to every element of an array, so planets.name means the name of each planet. Paths that match nothing come back in _fields_unmatched; a list where nothing matches at all is a 400, because an empty object would be a confident wrong answer.

precisioninteger

Round every non-integer number in the response to this many decimal places. Integers are left alone, because an id is not a measurement. Ecliptic longitudes ship with fourteen decimals by default; 2 is about a tenth of an arcminute.

Headers

Accept-Languagestring

BCP-47 language (e.g. uk, en, de). Set it once on your HTTP client as its default; for a single call, ?lang= overrides it. Unknown or inactive codes fall back to uk.

Response

OK

okboolean
_footerstring

Free-tier watermark, present on every public response. Keys on a paid plan do not receive it.

Example response

{
  "ok": true,
  "_footer": "Powered by astroway.api - get your own key at https://api.astroway.info"
}

Changes