POST · WESTERN

Planetary Hours

Endpoint POST https://starsapi.com/api/v3/western/natal/planetary-hours

Overview

Determines which planetary hour the native was born in and returns the full 24-hour planetary hours table for the birth date. Planetary hours follow the Chaldean order (Saturn → Jupiter → Mars → Sun → Venus → Mercury → Moon) and are calculated from actual sunrise and sunset times at the birth location.

Day hours and night hours have unequal durations — in summer, day hours are longer; in winter, shorter. The response includes the exact duration in minutes for both day and night hours.

This endpoint does not require a house system or ephemeris computation — it uses only the Sun’s rise/set times for the given date and location.

Authentication

MethodExample
Header (recommended)X-Api-Key: am_live_xxxxxxxxxxxx
BearerAuthorization: Bearer am_live_xxxxxxxxxxxx
Query?api_key=am_live_xxxxxxxxxxxx

Request body

FieldTypeRequiredDescription
yearintegerYesBirth year (1800–2400).
monthintegerYesBirth month (1–12).
dayintegerYesBirth day.
hourintegerYesBirth hour (0–23).
minuteintegerYesBirth minute (0–59).
secondintegerNoDefault 0.
latitudenumberYesDecimal degrees. Required for sunrise/sunset calculation.
longitudenumberYesDecimal degrees.
timezonestringYesIANA timezone. Times are returned in this timezone.

Note: house_system and node_type are not applicable — this endpoint uses solar position only, no chart computation.

Response shape

data.birth_hour

FieldTypeDescription
rulerstringPlanet ruling the birth hour (e.g. "Sun", "Venus").
hour_numberinteger1–24 (1 = first hour after sunrise).
typestring"day" (hours 1–12) or "night" (hours 13–24).

Other fields

FieldTypeDescription
day_rulerstringPlanet that rules the day of the week (Sunday = Sun, Monday = Moon, etc.).
day_of_weekstringWeekday name.
sunrisestringSunrise time in local timezone (HH:MM:SS).
sunsetstringSunset time in local timezone.
day_hour_duration_minutesnumberDuration of each day hour in minutes (varies by season).
night_hour_duration_minutesnumberDuration of each night hour in minutes.

data.hours[]

Full 24-hour table. Each entry:

FieldTypeDescription
hour_numberinteger1–24.
rulerstringRuling planet for this hour.
typestring"day" or "night".
startstringHour start time (HH:MM:SS).
endstringHour end time.
duration_minutesnumberDuration in minutes.
is_birth_hourbooleanPresent and true only on the hour containing the birth time.

How planetary hours work

The system divides daylight into 12 equal “hours” and nighttime into 12 equal “hours.” These are not 60-minute hours — in summer, day hours are longer than night hours; in winter, the reverse. At the equinoxes, both equal exactly 60 minutes.

The first day hour begins at sunrise and is ruled by the day ruler (the planet associated with the day of the week). Subsequent hours follow the Chaldean order:

DayDay ruler1st hour
SundaySun ☉Sun
MondayMoon ☽Moon
TuesdayMars ♂Mars
WednesdayMercury ☿Mercury
ThursdayJupiter ♃Jupiter
FridayVenus ♀Venus
SaturdaySaturn ♄Saturn

Chaldean order: Saturn → Jupiter → Mars → Sun → Venus → Mercury → Moon (then repeats).

Polar regions: at extreme latitudes where the Sun does not rise or set, this endpoint returns a 400 COMPUTE_ERROR since planetary hours cannot be calculated without a distinct sunrise and sunset.

Errors

HTTPCodeCause
400MISSING_FIELDRequired field absent.
400INVALID_DATEInvalid date.
400INVALID_TIMETime outside range.
400INVALID_TIMEZONENot valid IANA.
400INVALID_COORDINATEOut of range.
400COMPUTE_ERRORNo sunrise/sunset at this location (polar region).

See also