Natal Wheel Chart - Western Astrology
Generate a Western astrology natal wheel chart using birth date, time, and geographical location. Customize house systems, planetary aspects, aspect orbs, and chart colors to create personalized natal chart visualizations for websites and astrology applications.
Overview
The Western Astrology Natal Wheel Chart API generates a visual natal chart for a specified birth date, time, and geographical location. It creates a wheel-style chart showing zodiac signs, planetary positions, astrological houses, and the aspects between chart objects. The generated chart is returned as an SVG image URL that can be embedded in websites and applications.
The API supports customization of the house system, included planets and chart points, aspect types, and aspect orb values. You can also configure aspect line colors, zodiac sign background colors, chart background colors, text colors, and planet icon colors to match your application's design. Supported aspects include conjunction, opposition, trine, square, sextile, semi-sextile, quintile, septile, octile, novile, quincunx, and sesquiquadrate.
To generate a natal wheel chart, provide the birth year, month, date, time, latitude, longitude, and timezone. Optional configuration settings allow you to choose a supported house system, select geocentric or topocentric positions, specify a zodiac calculation mode, and set the response language. The API returns a JSON response containing the generated SVG chart URL, which you can use to display the chart in your website, mobile application, or Western astrology software.
Request Parameters
| Parameter | Type | Required | Description | Example |
|---|---|---|---|---|
year
|
integer | Yes | Year number, eg: 2023 | 2023 |
month
|
integer | Yes | Month number,with no leading zero | 7 |
date
|
integer | Yes | Day number,with no leading zero | 5 |
hours
|
integer | Yes | Hours number,with no leading zero | 1 |
minutes
|
integer | Yes | Minutes number,with no leading zero | 1 |
seconds
|
integer | Yes | Seconds number, with no leading zero | 0 |
latitude
|
float | Yes | Latitude number, in the range from -90 to 90 | 12.86 |
longitude
|
float | Yes | Longitude number, in the range from -180 to 180 | 123.5 |
timezone
|
float | Yes | Timezone of birth location, eg: 5.5 | 5.5 |
config
|
object | No | Contains optional configuration values | |
house_system
|
string | No | House system to be used | either "Porphyry" or "Placidus" or "Koch" or "Whole Signs" or "Regiomontanus" or "Vehlow" |
observation_point
|
string | No | Geocentric positions are calculated with respect to the center of Earth. Topocentric positions are calculated with respect to the actual given place | Either "topocentric" or "geocentric" |
language
|
string | No | Valid 2 letter ISO 639-1 language code | Either "en" For English or "es" for Spanish or "fr" for French or "pt" for Portuguese or "ru" for Russian or "de" for German or "ja" for Japanese or "pl" for Polish or "tr" for Turkish |
ayanamsha
|
string | No | Either "tropical" or "sayana" or "lahiri" | Either "tropical" or "sayana" or "lahiri" |
exclude_planets
|
array | No | Array of Planets, which you want to be excluded. By default all the planets will be considered | For example, ["Lilith","Chiron"] will exclude Lilith,Chiron for drawing wheel chart. |
allowed_aspects
|
array | No | Array of Aspects, only which you want to be included. By default all the aspects will be considered. | For example ["Conjunction","Trine"] will consider only Conjunction and Trine. |
orb_values
|
object | No | For each aspect, a custom orb can be mentioned. | |
Conjunction
|
integer | No | Orb Value for Conjunction | A number from 0 to 15 |
Opposition
|
integer | No | Orb value for Opposition | A number from 0 to 15 |
Square
|
integer | No | Orb value for Square | A number from 0 to 15 |
Trine
|
integer | No | Orb value for Trine | A number from 0 to 15 |
Sextile
|
integer | No | Orb value for Sextile | A number from 0 to 15 |
Semi-Sextile
|
integer | No | Orb value for Semi-Sextile | A number from 0 to 15 |
Quintile
|
integer | No | Orb value for Quintile | A number from 0 to 15 |
Septile
|
integer | No | Orb value for Septile | A number from 0 to 15 |
Octile
|
integer | No | Orb value for Octile | A number from 0 to 15 |
Novile
|
integer | No | Orb value for Novile | A number from 0 to 15 |
Quincunx
|
integer | No | Orb value for Quincunx | A number from 0 to 15 |
Sesquiquadrate
|
integer | No | Orb value for Sesquiquadrate | A number from 0 to 15 |
aspect_line_colors
|
object | No | Color to be used for aspect lines | |
Conjunction
|
string | No | Color to be used for Conjunction aspect line | Valid Color code like #714955 |
Quintile
|
string | No | Color to be used for Quintile aspect line | Valid Color code |
Septile
|
string | No | Color to be used for Septile aspect line | Valid Color code |
Semi-Sextile
|
string | No | Color to be used for Semi-Sextile aspect line | Valid Color code |
Sextile
|
string | No | Color to be used for Sextile aspect line | Valid Color code |
Trine
|
string | No | Color to be used for Trine aspect line | Valid Color code |
Square
|
string | No | Color to be used for Square aspect line | Valid Color code |
Opposition
|
string | No | Color to be used for Opposition aspect line | Valid Color code |
Octile
|
string | No | Color to be used for Octile aspect line | Valid Color code |
Novile
|
string | No | Color to be used for Novile aspect line | Valid Color code |
Quincunx
|
string | No | Color to be used for Quincunx aspect line | Valid Color code |
Quintile
|
string | No | Color to be used for Quintile aspect line | Valid Color code |
wheel_chart_colors
|
object | No | Color schema for Wheel Chart | |
zodiac_sign_background_color
|
string | No | Background color for Zodiac Signs | Valid Color code |
chart_background_color
|
string | No | Background color for wheel chart | valid color code |
zodiac_signs_text_color
|
string | No | Text color in Zodiac Signs | valid color code |
dotted_line_color
|
string | No | Dotted line color | Valid Color code |
planets_icon_color
|
string | No | Color for Planet icons | valid color code |
Supported Languages
This API endpoint supports the following languages.
Use the corresponding 2-letter language code
in the language parameter when making your request.
| Language | Code |
|---|---|
| English |
en
|
| Spanish |
es
|
| French |
fr
|
| Portuguese |
pt
|
| Russian |
ru
|
| German |
de
|
| Japanese |
ja
|
| Polish |
pl
|
| Turkish |
tr
|
To request the response in Telugu, use
te as the language code:
{
"language": "te"
}
Request Example
{
"year": 1998,
"month": 3,
"date": 3,
"hours": 10,
"minutes": 30,
"seconds": 0,
"latitude": 17.38405,
"longitude": 78.45636,
"timezone": 5.5,
"config": {
"observation_point": "topocentric", /* geocentric or topocentric */
"ayanamsha": "tropical", /* tropical or sayana or lahiri */
"house_system": "Placidus", /* "Placidus","Koch","Whole Signs","Equal Houses","Regiomontanus","Vehlow" */
"language": "en",
"exclude_planets": [], /* "True Node", "Mean Node", "IC","MC","Descendant","Ascendant","Sun","Moon","Mars","Mercury","Jupiter","Venus","Saturn","Lilith","Chiron","Ceres","Vesta","Juno","Pallas","Uranus","Neptune","Pluto"*/
"allowed_aspects": [
"Conjunction",
"Opposition",
"Trine",
"Square",
"Sextile",
"Semi-Sextile",
"Quintile",
"Septile",
"Octile",
"Novile",
"Quincunx",
"Sesquiquadrate"
],
/* "Conjunction", "Opposition", "Trine","Square","Sextile","Semi-Sextile","Quintile","Septile","Octile","Novile","Quincunx","Sesquiquadrate" */
"aspect_line_colors": {
"Conjunction": "#558B6E",
"Opposition": "#88A09E",
"Square": "#704C5E",
"Trine": "#B88C9E",
"Sextile": "#F1C8DB",
"Semi-Sextile": "#A799B7",
"Quintile": "#9888A5",
"Septile": "#776472",
"Octile": "#445552",
"Novile": "#294D4A",
"Quincunx": "#49306B",
"Sesquiquadrate": "#E1CDB5"
},
"wheel_chart_colors": {
"zodiac_sign_background_color": "#303036",
"chart_background_color": "#303036",
"zodiac_signs_text_color": "#FFFFFF",
"dotted_line_color": "#FFFAFF",
"planets_icon_color": "#FFFAFF"
},
"orb_values": {
"Conjunction": 3,
"Opposition": 5,
"Square": 5,
"Trine": 5,
"Sextile": 5,
"Semi-Sextile": 5,
"Quintile": 5,
"Septile": 5,
"Octile": 5,
"Novile": 5,
"Quincunx": 5,
"Sesquiquadrate": 5
}
}
}
Response Examples
Example responses returned by this API.
{
"statusCode": 200,
"output": "https://western-astrology.s3.ap-south-1.amazonaws.com/Chart_1787805059308.svg"
}
Code Examples
Use the following examples to integrate this API into your application.
<?php
$curl = curl_init();
curl_setopt_array($curl, array(
CURLOPT_URL => 'https://json.freeastrologyapi.com/western/natal-wheel-chart',
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => '',
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 0,
CURLOPT_FOLLOWLOCATION => true,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => 'POST',
CURLOPT_POSTFIELDS =>'{
"year": 2002,
"month": 1,
"date": 1,
"hours": 10,
"minutes": 30,
"seconds": 0,
"latitude": 17.38405,
"longitude": 78.45636,
"timezone": 5.5,
"config": {
"observation_point": "topocentric",
"ayanamsha": "tropical",
"house_system": "Porphyry",
"language": "tr",
"exclude_planets": [
],
"allowed_aspects":["Conjunction", "Opposition", "Trine","Square","Sextile","Semi-Sextile","Quintile","Septile","Octile","Novile","Quincunx","Sesquiquadrate"],
"aspect_line_colors": {
"Conjunction": "#558B6E",
"Opposition": "#88A09E",
"Square": "#704C5E",
"Trine": "#B88C9E",
"Sextile": "#F1C8DB",
"Semi-Sextile": "#A799B7",
"Quintile": "#9888A5",
"Septile": "#776472",
"Octile": "#445552",
"Novile": "#294D4A",
"Quincunx": "#49306B",
"Sesquiquadrate": "#E1CDB5"
},
"wheel_chart_colors": {
"zodiac_sign_background_color":"#303036",
"chart_background_color":"#303036",
"zodiac_signs_text_color":"#FFFFFF",
"dotted_line_color":"#FFFAFF",
"planets_icon_color":"#FFFAFF"
},
"orb_values": {
"Conjunction": 3,
"Opposition": 5,
"Square": 5,
"Trine": 5,
"Sextile": 5,
"Semi-Sextile": 5,
"Quintile": 5,
"Septile": 5,
"Octile": 5,
"Novile": 5,
"Quincunx": 5,
"Sesquiquadrate": 5
}
}
}',
CURLOPT_HTTPHEADER => array(
'Content-Type: application/json',
'x-api-key: YOUR_API_KEY_HERE'
),
));
$response = curl_exec($curl);
curl_close($curl);
echo $response;
import requests
import json
url = "https://json.freeastrologyapi.com/western/natal-wheel-chart"
payload = json.dumps({
"year": 2002,
"month": 1,
"date": 1,
"hours": 10,
"minutes": 30,
"seconds": 0,
"latitude": 17.38405,
"longitude": 78.45636,
"timezone": 5.5,
"config": {
"observation_point": "topocentric",
"ayanamsha": "tropical",
"house_system": "Porphyry",
"language": "tr",
"exclude_planets": [],
"allowed_aspects": [
"Conjunction",
"Opposition",
"Trine",
"Square",
"Sextile",
"Semi-Sextile",
"Quintile",
"Septile",
"Octile",
"Novile",
"Quincunx",
"Sesquiquadrate"
],
"aspect_line_colors": {
"Conjunction": "#558B6E",
"Opposition": "#88A09E",
"Square": "#704C5E",
"Trine": "#B88C9E",
"Sextile": "#F1C8DB",
"Semi-Sextile": "#A799B7",
"Quintile": "#9888A5",
"Septile": "#776472",
"Octile": "#445552",
"Novile": "#294D4A",
"Quincunx": "#49306B",
"Sesquiquadrate": "#E1CDB5"
},
"wheel_chart_colors": {
"zodiac_sign_background_color": "#303036",
"chart_background_color": "#303036",
"zodiac_signs_text_color": "#FFFFFF",
"dotted_line_color": "#FFFAFF",
"planets_icon_color": "#FFFAFF"
},
"orb_values": {
"Conjunction": 3,
"Opposition": 5,
"Square": 5,
"Trine": 5,
"Sextile": 5,
"Semi-Sextile": 5,
"Quintile": 5,
"Septile": 5,
"Octile": 5,
"Novile": 5,
"Quincunx": 5,
"Sesquiquadrate": 5
}
}
})
headers = {
'Content-Type': 'application/json',
'x-api-key': 'YOUR_API_KEY_HERE'
}
response = requests.request("POST", url, headers=headers, data=payload)
print(response.text)
var request = require('request');
var options = {
'method': 'POST',
'url': 'https://json.freeastrologyapi.com/western/natal-wheel-chart',
'headers': {
'Content-Type': 'application/json',
'x-api-key': 'YOUR_API_KEY_HERE'
},
body: JSON.stringify({
"year": 2002,
"month": 1,
"date": 1,
"hours": 10,
"minutes": 30,
"seconds": 0,
"latitude": 17.38405,
"longitude": 78.45636,
"timezone": 5.5,
"config": {
"observation_point": "topocentric",
"ayanamsha": "tropical",
"house_system": "Porphyry",
"language": "tr",
"exclude_planets": [],
"allowed_aspects": [
"Conjunction",
"Opposition",
"Trine",
"Square",
"Sextile",
"Semi-Sextile",
"Quintile",
"Septile",
"Octile",
"Novile",
"Quincunx",
"Sesquiquadrate"
],
"aspect_line_colors": {
"Conjunction": "#558B6E",
"Opposition": "#88A09E",
"Square": "#704C5E",
"Trine": "#B88C9E",
"Sextile": "#F1C8DB",
"Semi-Sextile": "#A799B7",
"Quintile": "#9888A5",
"Septile": "#776472",
"Octile": "#445552",
"Novile": "#294D4A",
"Quincunx": "#49306B",
"Sesquiquadrate": "#E1CDB5"
},
"wheel_chart_colors": {
"zodiac_sign_background_color": "#303036",
"chart_background_color": "#303036",
"zodiac_signs_text_color": "#FFFFFF",
"dotted_line_color": "#FFFAFF",
"planets_icon_color": "#FFFAFF"
},
"orb_values": {
"Conjunction": 3,
"Opposition": 5,
"Square": 5,
"Trine": 5,
"Sextile": 5,
"Semi-Sextile": 5,
"Quintile": 5,
"Septile": 5,
"Octile": 5,
"Novile": 5,
"Quincunx": 5,
"Sesquiquadrate": 5
}
}
})
};
request(options, function (error, response) {
if (error) throw new Error(error);
console.log(response.body);
});