Planetary Hours
GET /v1/planetary-hours — Compute the 24 planetary hours in Chaldean order for a given date and location.
Planetary Hours
Compute all 24 planetary hours for a given date and location, following the traditional Chaldean order. Each hour is ruled by one of the 7 visible planets.
GET /v1/planetary-hours
POST /v1/planetary-hoursCredit cost: 1
Parameters
| Parameter | Type | Required | Default | Description |
|---|---|---|---|---|
datetime | string | One of datetime or jd | — | ISO 8601 UTC datetime |
jd | number | One of datetime or jd | — | Julian Day in UT1 |
lat | number | Yes | — | Observer latitude (degrees) |
lon | number | Yes | — | Observer longitude (degrees) |
No bodies or house system parameters are needed — planetary hours depend only on sunrise/sunset times.
Response
{
"data": {
"day_of_week": 3,
"day_ruler": "mercury",
"sunrise_jd": 2460400.75,
"sunset_jd": 2460401.0,
"next_sunrise_jd": 2460401.75,
"hours": [
{
"hour_number": 1,
"is_diurnal": true,
"period_hour": 1,
"ruler": "mercury",
"jd_start": 2460400.75,
"jd_end": 2460400.771
}
],
"current_hour_index": 5
},
"meta": {
"credits_used": 1,
"..."
}
}Fields:
day_of_week— Day of week (0 = Monday, 6 = Sunday)day_ruler— The planet ruling the day (e.g., Wednesday = Mercury)sunrise_jd/sunset_jd/next_sunrise_jd— Julian Day values for sunrise, sunset, and the following sunrisehours— Array of 24 planetary hours, each with:hour_number— Sequential number (1-24)is_diurnal—truefor daytime hours (1-12),falsefor nighttime (13-24)period_hour— Hour within the period (1-12 for day, 1-12 for night)ruler— Ruling planet for this hourjd_start/jd_end— Start and end times as Julian Day values
current_hour_index— 0-based index into thehoursarray for the hour containing the requested datetime (if the datetime falls within the day's hours)
Chaldean order
The planetary hours cycle through the 7 visible planets in descending orbital period: Saturn, Jupiter, Mars, Sun, Venus, Mercury, Moon — then repeat. The first hour of each day is ruled by the day's planetary ruler.
| Day | Ruler |
|---|---|
| Sunday | Sun |
| Monday | Moon |
| Tuesday | Mars |
| Wednesday | Mercury |
| Thursday | Jupiter |
| Friday | Venus |
| Saturday | Saturn |
Examples
Planetary hours for today
curl "https://api.morphemeris.com/v1/planetary-hours?\
datetime=2024-03-20T12:00:00Z\
&lat=40.7128&lon=-74.006" \
-H "Authorization: Bearer morphemeris_live_YOUR_KEY"const res = await fetch(
"https://api.morphemeris.com/v1/planetary-hours?" + new URLSearchParams({
datetime: "2024-03-20T12:00:00Z",
lat: "40.7128", lon: "-74.006",
}),
{ headers: { Authorization: "Bearer morphemeris_live_YOUR_KEY" } }
);
const { data } = await res.json();
console.log(`Current hour ruled by: ${data.hours[data.current_hour_index].ruler}`);import requests
res = requests.get(
"https://api.morphemeris.com/v1/planetary-hours",
params={
"datetime": "2024-03-20T12:00:00Z",
"lat": 40.7128, "lon": -74.006,
},
headers={"Authorization": "Bearer morphemeris_live_YOUR_KEY"},
)
data = res.json()["data"]
current = data["hours"][data["current_hour_index"]]
print(f"Current hour ruled by: {current['ruler']}")Tips
- Daytime hours are not 60 minutes long — they divide the time between sunrise and sunset into 12 equal parts. Near the equinoxes, each planetary hour is close to 60 minutes; near the solstices, daytime hours can be significantly longer or shorter.
- Nighttime hours similarly divide sunset-to-next-sunrise into 12 equal parts.
- Planetary hours are used in electional astrology to choose auspicious times for activities. For example, a Venus hour might be chosen for matters of love or art, while a Jupiter hour might be preferred for business or legal matters.
- The
current_hour_indexfield lets you quickly determine which planetary hour is active at the requested time without comparing Julian Day values yourself. - At extreme latitudes (near the Arctic or Antarctic circles), sunrise and sunset times may be unusual or absent during polar day/night. The endpoint uses standard atmospheric refraction for sunrise/sunset calculation.