Natal Planets
POST https://starsapi.com/api/v3/western/natal/planets
Overview
Returns tropical positions for 15 celestial bodies and points: Sun, Moon, Mercury, Venus, Mars, Jupiter, Saturn, Uranus, Neptune, Pluto, Chiron, Black Moon Lilith (Mean Apogee), North Node, South Node, and Part of Fortune. Each body includes absolute longitude, sign placement, degree within sign (both decimal and DMS), daily speed, retrograde flag, element, modality, modern/traditional ruler, and house placement.
The Part of Fortune is a calculated Arabic lot using the classical formula: ASC + Moon − Sun for day charts, ASC + Sun − Moon for night charts. It carries an is_calculated_point: true flag and shows which formula was applied.
Node type: defaults to true (True/Osculating Node), which is standard in Western astrology. Pass node_type: "mean" for Mean Node, or "both" to receive both.
Authentication
| Method | Example |
|---|---|
| Header (recommended) | X-Api-Key: am_live_xxxxxxxxxxxx |
| Bearer | Authorization: Bearer am_live_xxxxxxxxxxxx |
| Query | ?api_key=am_live_xxxxxxxxxxxx |
Request body
| Field | Type | Required | Description |
|---|---|---|---|
year | integer | Yes | Birth year (1800–2400). |
month | integer | Yes | Birth month (1–12). |
day | integer | Yes | Birth day. |
hour | integer | Yes | Birth hour (0–23). |
minute | integer | Yes | Birth minute (0–59). |
second | integer | No | Birth second. Default 0. |
latitude | number | Yes | Decimal degrees (−90 to 90). |
longitude | number | Yes | Decimal degrees (−180 to 180). |
timezone | string | Yes | IANA timezone (e.g. America/New_York). |
house_system | string | No | Any of 25 supported systems. Default placidus. Affects house placement of planets. See house systems. |
node_type | string | No | true, mean, or both. Default true. |
Response shape
data.ascendant / data.midheaven
| Field | Type | Description |
|---|---|---|
longitude | number | Absolute tropical longitude (0–360). |
longitude_dms | string | Degrees, minutes, seconds notation. |
sign | string | Zodiac sign name. |
sign_number | integer | Sign number (1=Aries through 12=Pisces). |
sign_symbol | string | Unicode zodiac symbol. |
degree_in_sign | number | Decimal degree within sign (0–29.99). |
degree_in_sign_dms | string | DMS degree within sign. |
data.planets.{name}
Each of the 15 bodies includes:
| Field | Type | Description |
|---|---|---|
longitude | number | Absolute tropical longitude (0–360). |
longitude_dms | string | DMS notation. |
sign | string | Zodiac sign. |
sign_number | integer | 1–12. |
sign_symbol | string | Unicode symbol. |
degree_in_sign | number | 0–29.99. |
degree_in_sign_dms | string | DMS within sign. |
speed | number | Daily motion in degrees (negative = retrograde). |
is_retrograde | boolean | True if planet is in retrograde motion. |
element | string | Fire, Earth, Air, or Water. |
modality | string | Cardinal, Fixed, or Mutable. |
ruler_modern | string | Modern ruler of the sign (includes Uranus, Neptune, Pluto). |
ruler_traditional | string | Traditional ruler (classical 7 planets only). |
house | integer | House number (1–12) under the selected house system. |
Part of Fortune additionally includes is_calculated_point: true and formula showing which formula was used.
data.total_planets
Integer count of bodies returned (currently 15).
Errors
| HTTP | Code | Cause |
|---|---|---|
| 400 | MISSING_FIELD | A required field is absent. |
| 400 | INVALID_DATE | Invalid calendar date or year outside range. |
| 400 | INVALID_TIME | Hour/minute/second outside valid range. |
| 400 | INVALID_TIMEZONE | Not a valid IANA identifier. |
| 400 | INVALID_COORDINATE | Latitude or longitude out of range. |
| 500 | EPHEMERIS_ERROR | Swiss Ephemeris computation failed. |
See also
- Planets Advanced — dignities, combust/cazimi, sect, mutual reception, speed classification
- Aspects — natal aspects between all bodies
- Houses — house cusps for 25 systems
- Birth Details — confirm input without computation