Birth Chart API (Natal Astrology Charts)
The Birth Chart API generates full natal astrology charts using high-precision astronomical calculations. This endpoint returns zodiac positions for all major bodies, house cusps, chart angles, and structured metadata used to build interpretations or visual charts.
Birth Chart API Endpoint
POST https://api.astroapi.io/v1/birthchart
What the Birth Chart API Includes
- Planetary longitudes (Sun, Moon, Mercury through Pluto)
- Ascendant and Midheaven angles
- Complete 12-house cusps
- Zodiac signs for all bodies
- Planet speeds and retrograde states
- Element and modality summaries
This data powers natal chart renderers, onboarding flows, interpretation engines, and AI-based astrology systems.
Birth Chart API Request Body
| Field | Type | Required | Description |
|---|---|---|---|
date |
string | Yes | Birth date (YYYY-MM-DD). |
time |
string | Yes | Birth time (HH:MM, 24-hour format). |
lat |
number | Yes | Birth latitude in decimal degrees. |
lon |
number | Yes | Birth longitude in decimal degrees. |
tz |
string | Yes | Timezone (e.g. America/Los_Angeles). |
house_system |
string | No | Default: placidus. Alternatives: whole, koch, equal. |
Example Birth Chart API Response
{
"chart_type": "natal",
"planets": {
"Sun": {
"longitude": 225.4,
"sign": "Scorpio",
"retrograde": false
},
"Moon": {
"longitude": 12.3,
"sign": "Aries",
"retrograde": false
}
},
"houses": {
"1": 212.9,
"2": 240.3,
"3": 267.0,
"4": 295.7,
"5": 323.5,
"6": 351.8,
"7": 23.4,
"8": 50.7,
"9": 78.2,
"10": 106.4,
"11": 134.1,
"12": 162.0
},
"ascendant": 212.9,
"midheaven": 106.4
}
Common Uses for Birth Chart Data
- Full natal chart visualization
- AI-driven interpretation engines
- User onboarding and birth data capture
- Compatibility and synastry scoring
- Element and modality breakdowns
- Personalized astrology profiles
AstroAPI delivers clean, normalized JSON. You control the interface, logic, and interpretation.
// JavaScript — Birth Chart API Example
fetch("https://api.astroapi.io/v1/birthchart", {
method: "POST",
headers: {
"Content-Type": "application/json",
"Authorization": "Bearer YOUR_API_KEY"
},
body: JSON.stringify({
date: "1995-11-08",
time: "14:22",
lat: 34.05,
lon: -118.24,
tz: "America/Los_Angeles",
house_system: "placidus"
})
})
.then(res => res.json())
.then(data => console.log("Birth Chart:", data));
# Python — Birth Chart API Example
import requests
url = "https://api.astroapi.io/v1/birthchart"
payload = {
"date": "1995-11-08",
"time": "14:22",
"lat": 34.05,
"lon": -118.24,
"tz": "America/Los_Angeles",
"house_system": "placidus"
}
response = requests.post(url, json=payload)
print(response.json())