POST

Hora Timings

Calculate daily Hora timings for a specific date and geographical location using the traditional Vedic system of planetary hours. Identify the ruling planet for each Hora period to support Muhurta selection, Panchang applications, and Vedic astrology software.

/hora-timings
Method
POST
Format
JSON
Auth
API Key
Credits
1

Overview

The Hora Timings API calculates the 24 planetary Hora periods for a specific date, time, and geographical location according to the traditional Vedic system of planetary hours. Each Hora is ruled by one of the seven classical planets: Sun, Moon, Mars, Mercury, Jupiter, Venus, or Saturn.

The API returns the ruling planet (Hora lord), start time, and end time for each Hora period. This information helps developers identify planetary hours throughout the day and night, supporting traditional Muhurta selection, daily Panchang displays, and astrological time-planning applications.

To calculate Hora timings, provide the year, month, date, time, latitude, longitude, and timezone. You can also configure the observation point as geocentric or topocentric and specify a supported Ayanamsha setting, such as Lahiri. The API returns the 24 Hora periods in JSON format, making it easy to integrate planetary hour calculations into web applications, mobile apps, and Vedic 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
ayanamsha
string No Either "tropical" or "sayana" or "lahiri" Either "tropical" or "sayana" or "lahiri"
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"

Request Example

{
    "year": 2022,
    "month": 8,
    "date": 11,
    "hours": 6,
    "minutes": 0,
    "seconds": 0,
    "latitude": 17.38333,
    "longitude": 78.4666,
    "timezone": 5.5,
    "config": {
        "observation_point": "topocentric",
        "ayanamsha": "lahiri"
    }
}

Response Examples

Example responses returned by this API.

Response
{
    "statusCode": 200,
    "output": "{\"1\": {\"lord\": \"Venus\", \"starts_at\": \"1999-12-03 06:53:01\", \"ends_at\": \"1999-12-03 07:53:02\"}, \"2\": {\"lord\": \"Mercury\", \"starts_at\": \"1999-12-03 07:53:02\", \"ends_at\": \"1999-12-03 08:53:03\"}, \"3\": {\"lord\": \"Moon\", \"starts_at\": \"1999-12-03 08:53:03\", \"ends_at\": \"1999-12-03 09:53:04\"}, \"4\": {\"lord\": \"Saturn\", \"starts_at\": \"1999-12-03 09:53:04\", \"ends_at\": \"1999-12-03 10:53:05\"}, \"5\": {\"lord\": \"Jupiter\", \"starts_at\": \"1999-12-03 10:53:05\", \"ends_at\": \"1999-12-03 11:53:06\"}, \"6\": {\"lord\": \"Mars\", \"starts_at\": \"1999-12-03 11:53:06\", \"ends_at\": \"1999-12-03 12:53:07\"}, \"7\": {\"lord\": \"Sun\", \"starts_at\": \"1999-12-03 12:53:07\", \"ends_at\": \"1999-12-03 13:53:08\"}, \"8\": {\"lord\": \"Venus\", \"starts_at\": \"1999-12-03 13:53:08\", \"ends_at\": \"1999-12-03 14:53:09\"}, \"9\": {\"lord\": \"Mercury\", \"starts_at\": \"1999-12-03 14:53:09\", \"ends_at\": \"1999-12-03 15:53:10\"}, \"10\": {\"lord\": \"Moon\", \"starts_at\": \"1999-12-03 15:53:10\", \"ends_at\": \"1999-12-03 16:53:11\"}, \"11\": {\"lord\": \"Saturn\", \"starts_at\": \"1999-12-03 16:53:11\", \"ends_at\": \"1999-12-03 17:53:12\"}, \"12\": {\"lord\": \"Jupiter\", \"starts_at\": \"1999-12-03 17:53:12\", \"ends_at\": \"1999-12-03 18:53:13\"}, \"13\": {\"lord\": \"Mars\", \"starts_at\": \"1999-12-03 18:53:13\", \"ends_at\": \"1999-12-03 19:53:14\"}, \"14\": {\"lord\": \"Sun\", \"starts_at\": \"1999-12-03 19:53:14\", \"ends_at\": \"1999-12-03 20:53:15\"}, \"15\": {\"lord\": \"Venus\", \"starts_at\": \"1999-12-03 20:53:15\", \"ends_at\": \"1999-12-03 21:53:16\"}, \"16\": {\"lord\": \"Mercury\", \"starts_at\": \"1999-12-03 21:53:16\", \"ends_at\": \"1999-12-03 22:53:17\"}, \"17\": {\"lord\": \"Moon\", \"starts_at\": \"1999-12-03 22:53:17\", \"ends_at\": \"1999-12-03 23:53:18\"}, \"18\": {\"lord\": \"Saturn\", \"starts_at\": \"1999-12-03 23:53:18\", \"ends_at\": \"1999-12-04 00:53:19\"}, \"19\": {\"lord\": \"Jupiter\", \"starts_at\": \"1999-12-04 00:53:19\", \"ends_at\": \"1999-12-04 01:53:20\"}, \"20\": {\"lord\": \"Mars\", \"starts_at\": \"1999-12-04 01:53:20\", \"ends_at\": \"1999-12-04 02:53:21\"}, \"21\": {\"lord\": \"Sun\", \"starts_at\": \"1999-12-04 02:53:21\", \"ends_at\": \"1999-12-04 03:53:22\"}, \"22\": {\"lord\": \"Venus\", \"starts_at\": \"1999-12-04 03:53:22\", \"ends_at\": \"1999-12-04 04:53:23\"}, \"23\": {\"lord\": \"Mercury\", \"starts_at\": \"1999-12-04 04:53:23\", \"ends_at\": \"1999-12-04 05:53:24\"}, \"24\": {\"lord\": \"Moon\", \"starts_at\": \"1999-12-04 05:53:24\", \"ends_at\": \"1999-12-04 06:53:25\"}}"
}

Code Examples

Use the following examples to integrate this API into your application.

PHP Code
<?php

$curl = curl_init();

curl_setopt_array($curl, array(
  CURLOPT_URL => 'https://json.freeastrologyapi.com/hora-timings',
  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": 1999,
    "month": 12,
    "date": 3,
    "hours": 12,
    "minutes": 10,
    "seconds": 53,
    "latitude": 1.4433887,
    "longitude": 103.8325013,
    "timezone":8,
    "config": {        
        "observation_point": "geocentric", 
        "ayanamsha": "lahiri" 
    }
}',
  CURLOPT_HTTPHEADER => array(
    'Content-Type: application/json',
    'x-api-key: YOUR_API_KEY_HERE'
  ),
));

$response = curl_exec($curl);

curl_close($curl);
echo $response;
Python Code
import requests
import json

url = "https://json.freeastrologyapi.com/hora-timings"

payload = json.dumps({
  "year": 1999,
  "month": 12,
  "date": 3,
  "hours": 12,
  "minutes": 10,
  "seconds": 53,
  "latitude": 1.4433887,
  "longitude": 103.8325013,
  "timezone": 8,
  "config": {
    "observation_point": "geocentric",
    "ayanamsha": "lahiri"
  }
})
headers = {
  'Content-Type': 'application/json',
  'x-api-key': 'YOUR_API_KEY_HERE'
}

response = requests.request("POST", url, headers=headers, data=payload)

print(response.text)
Node JS Code
var request = require('request');
var options = {
  'method': 'POST',
  'url': 'https://json.freeastrologyapi.com/hora-timings',
  'headers': {
    'Content-Type': 'application/json',
    'x-api-key': 'YOUR_API_KEY_HERE'
  },
  body: JSON.stringify({
    "year": 1999,
    "month": 12,
    "date": 3,
    "hours": 12,
    "minutes": 10,
    "seconds": 53,
    "latitude": 1.4433887,
    "longitude": 103.8325013,
    "timezone": 8,
    "config": {
      "observation_point": "geocentric",
      "ayanamsha": "lahiri"
    }
  })

};
request(options, function (error, response) {
  if (error) throw new Error(error);
  console.log(response.body);
});