← Back to docs
endpoints
POST astra/moon/solunar/

Solunar periods and moon activity rating for a single day.

Astra Moon

Request parameters

Name Type In Required Description Example
date1 Date Body Yes The start date (or single query date) for the computation. Accepted formats: YYYY-MM-DD for date-only fields, ISO 8601 datetime string (YYYY-MM-DDTHH:MM) for datetime fields.
lat Float Body Yes Observer latitude in decimal degrees. Valid range: -90.0 (South Pole) to 90.0 (North Pole). Used to compute the observer's position on Earth's surface for all sky calculations.
lon Float Body Yes Observer longitude in decimal degrees. Valid range: -180.0 to 180.0. Negative values are west of the Prime Meridian, positive values are east.
date2 Date Body Optional The end date of the query range. Must be on or after date1. Accepted format: YYYY-MM-DD. The range is inclusive of both dates.
timezone_slug Choice Body Optional Slug of a timezone record used to localise event datetimes in the response (e.g. america-new-york). When omitted, the timezone is derived automatically from the supplied coordinates. Obtain valid timezone slugs from the timezone list endpoint.

Response fields

Name Type Nullable Description Example
date String The calendar day for which solunar periods were computed, in YYYY-MM-DD format. 2026-05-09
illumination_percentage Float Fraction of the Moon's disc that is illuminated at local midnight, expressed as a percentage (0.0–100.0). 56.0
lat Float Observer latitude in decimal degrees as supplied in the request. 48.4359
lon Float Observer longitude in decimal degrees as supplied in the request. -123.35155
moon_phase Integer Numeric 8-phase code for the Moon at local midnight: 0=New Moon, 1=Waxing Crescent, 2=First Quarter, 3=Waxing Gibbous, 4=Full Moon, 5=Waning Gibbous, 6=Last Quarter, 7=Waning Crescent. 7
moon_phase_name String Human-readable name of the current 8-phase moon phase. Waning Gibbous
moon_phase_symbol String Unicode emoji representing the current moon phase. 🌖
periods Array List of solunar periods for the day, sorted chronologically by minute_of_day. Contains up to four entries: Moonrise, Upper Transit, Moonset, Lower Transit.
periods[].label String Name of the solunar period: 'Moonrise', 'Moonset', 'Upper Transit', or 'Lower Transit'. Upper Transit
periods[].minute_of_day Integer Minutes elapsed since local midnight (0–1439). Useful for sorting or charting periods on a timeline. 443
periods[].time String Local time of the period in 12-hour format (e.g. '7:23 am'). Expressed in the resolved timezone. 7:23 am
periods[].type String 'major' for upper and lower moon transits (strongest feeding windows); 'minor' for moonrise and moonset (secondary windows). major
phase_angle Float Moon phase angle in degrees at local midnight (0°=New Moon, 90°=First Quarter, 180°=Full Moon, 270°=Last Quarter). 83.11
solunar_rating String Qualitative activity rating for the day based on proximity to new or full moon. 'strong' within 15° of new/full (spring tide), 'moderate' within 45°, 'weak' otherwise (neap tide). moderate
tz String IANA timezone name resolved for the observer coordinates, or the value derived from timezone_slug if supplied. America/Vancouver