AstrologyAPI

Use access token to call astrology api.

Learn More

Solar Return house Cusps

POSThttps://json.astrologyapi.com/v1/solar_return_house_cusps
Copy

This API solar_return_house_cusps returns the zodiac sign and degree of each house in a solar return chart, along with the ascendant, midheaven, and vertex degrees. The response includes a list of 12 houses with their corresponding zodiac sign and degree, as well as the degrees for ascendant, midheaven, and vertex.

POST/solar_return_house_cusps
Copy
1import requests
2import json
3
4# Your Basic Auth Credentials (base64 encoded 'userId:apiKey')
5api_key = "<YOUR_API_KEY>"
6
7# API endpoint URL
8api_url = "https://json.astrologyapi.com/v1/solar_return_house_cusps"
9
10# Request data
11data = {
12        "day": 10,
13        "month": 5,
14        "year": 1990,
15        "hour": 19,
16        "min": 55,
17        "lat": 19.2056,
18        "lon": 25.2056,
19        "tzone": 5.5,
20        "solar_year": 2025,
21        "house_type": 2025
22    }
23
24headers = {
25    'Authorization': 'Basic ' + api_key,
26    'Content-Type': 'application/json'
27    # Add 'Accept-Language': '<language_code>' if needed
28}
29
30try:
31    response = requests.post(api_url, headers=headers, json=data)
32    response.raise_for_status()  # Raise an exception for bad status codes (4xx or 5xx)
33
34    # Process the response
35    response_data = response.json()
36    print(json.dumps(response_data, indent=4))
37
38except requests.exceptions.RequestException as e:
39    print(f"Error making API request: {e}")
40    if hasattr(e, 'response') and e.response is not None:
41        try:
42            print(f"Error response: {e.response.json()}")
43        except json.JSONDecodeError:
44             print(f"Error response (non-JSON): {e.response.text}")
45
46
200Response
Copy
1{
2  "houses": [
3    {
4      "house": 1,
5      "sign": "Aries",
6      "degree": 13.25529
7    },
8    {
9      "house": 2,
10      "sign": "Taurus",
11      "degree": 43.01473
12    },
13    {
14      "house": 3,
15      "sign": "Gemini",
16      "degree": 68.55911
17    },
18    {
19      "house": 4,
20      "sign": "Cancer",
21      "degree": 93.78243
22    },
23    {
24      "house": 5,
25      "sign": "Leo",
26      "degree": 122.1002
27    },
28    {
29      "house": 6,
30      "sign": "Virgo",
31      "degree": 155.86703
32    },
33    {
34      "house": 7,
35      "sign": "Libra",
36      "degree": 193.25529
37    },
38    {
39      "house": 8,
40      "sign": "Scorpio",
41      "degree": 223.01473
42    },
43    {
44      "house": 9,
45      "sign": "Sagittarius",
46      "degree": 248.55911
47    },
48    {
49      "house": 10,
50      "sign": "Capricorn",
51      "degree": 273.78243
52    },
53    {
54      "house": 11,
55      "sign": "Aquarius",
56      "degree": 302.1002
57    },
58    {
59      "house": 12,
60      "sign": "Pisces",
61      "degree": 335.86703
62    }
63  ],
64  "ascendant": 37.368916222730974,
65  "midheaven": 297.8960549871522,
66  "vertex": 194.57571878743278
67}

Request Headers

Authorization

string

required

Basic Authorization via header

Accept-Language

string

Preferred language for the response content

Properties

English - enSpanish - esPortuguese - ptFrench - frItalian - itGerman - deRussian - ru

Request Parameters

day

int

required

Date of birth, eg: 10

month

int

required

Month of birth, eg: 5

year

int

required

Year of birth, eg: 1990

hour

int

required

Hour of birth, eg: 19

min

int

required

Minute of birth, eg: 55

lat

float

required

Latitude, eg: 19.2056

lon

float

required

Longitude, eg: 25.2056

tzone

float

required

Timezone, eg: 5.5

solar_year

int

Solar Year, eg: 2025

house_type

string

Default : "placidus" // koch/topocentric/poryphry/equal_house/whole_sign

Errors

400
Bad Request

Something is wrong with your request format or parameters.

401
Unauthorized

Your API key is missing or invalid.

403
Forbidden

You don't have permission to access this specific resource.

404
Not Found

The API endpoint you're trying to reach doesn't exist.

500
Internal Server Error

Our server is having a temporary glitch.