API reference › Panchang & muhurat
Personal Muhurat API (Tara Bala)
Muhurat windows with tara bala and chandra bala for one person
POST/v1/muhurat/personal
3 credits · Secret key (test or live) · searchMuhuratPersonal
Request body
birthBirth requireddatestring (date) requirede.g.
"1990-08-13"timestringpattern
^([01]\d|2[0-3]):[0-5]\d(:[0-5]\d)?$· e.g."06:30"time_accuracystringWith "unknown", lagna- and house-dependent fields are omitted and listed in warnings — never filled with a noon default.
one of
exact,approximate,unknown· default"exact"placeCoordinates or object or object requiredCoordinates, a place_id from /v1/places/search, or a free-text query. A vague query returns 422 place_ambiguous with candidates; the API never guesses.
One of:
- Coordinates
Fields
latitudenumber required≥ -90 · ≤ 90
longitudenumber required≥ -180 · ≤ 180
No other fields are accepted.
- object
Fields
place_idstring required
No other fields are accepted.
- object
Fields
querystring requiredat least 2 characters · at most 120 characters
No other fields are accepted.
- Coordinates
timezonestring"auto" (from coordinates AND date), an IANA name, or a fixed offset like "+05:30".
default
"auto"
No other fields are accepted.
activitystring requiredfromstring (date) requirede.g.
"1990-08-13"tostring (date) requirede.g.
"1990-08-13"placeCoordinates or object or objectCoordinates, a place_id from /v1/places/search, or a free-text query. A vague query returns 422 place_ambiguous with candidates; the API never guesses.
One of:
- Coordinates
Fields
latitudenumber required≥ -90 · ≤ 90
longitudenumber required≥ -180 · ≤ 180
No other fields are accepted.
- object
Fields
place_idstring required
No other fields are accepted.
- object
Fields
querystring requiredat least 2 characters · at most 120 characters
No other fields are accepted.
- Coordinates
optionsOptionsayanamsastringEach system is its Swiss Ephemeris definition (a constant offset from Lahiri). Applies to chart operations; KP operations always use KP-New and the personal muhurat stays Lahiri. meta.ayanamsa names the system used.
one of
lahiri,raman,krishnamurti,yukteshwar,fagan_bradley· default"lahiri"house_systemstringone of
whole_sign· default"whole_sign"nodestringThe Rahu/Ketu the chart uses: the true (osculating) node, as Swiss Ephemeris and Drik Panchang define it, or the mean node. meta.node names the one used. POST /v1/planets/positions always returns both.
one of
true,mean· default"true"langstringone of
en,hi· default"en"viewstringcompact drops labels and prose — for LLM callers.
one of
full,compact· default"full"tonestringdescriptive: the prose fields (tithi.note, tara descriptions, the timing summary and insights, natal-transit descriptions, transit-event notes) carry reviewed descriptive sentences, attributed to the tradition and with no instructions, in options.lang. Ids, scores and every other value are unchanged. Applies to getPanchang, getFavourableDays, getPersonalTiming, getDashaTransitConfluence, getNatalTransits and listPlanetaryEvents (and those inside a bundle); elsewhere it changes nothing.
one of
default,descriptive· default"default"dasha_yearnumberDays in a Vimshottari year: 365.25 (Julian, the default), 365.2422 (tropical) or 360 (savana). Applies to /v1/dasha/vimshottari and /v1/dasha/vimshottari/current; data.basis.year_days names the one used.
one of
365.25,365.2422,360· default365.25
No other fields are accepted.
No other fields are accepted.
Response
JSON { data, meta, warnings }, where data is:
activitystring requireddaysarray of object requireddatestring (date) requirede.g.
"1990-08-13"scorenumber requiredbandstring requiredrejectedboolean requiredreasonsarray of string requiredtara_balaany requiredchandra_balaany required
Errors: 400, 401, 403, 404, 422, 429, 500. See error codes.
Example request
curl -X POST 'https://api.astrologics.in/v1/muhurat/personal' \
-H 'Authorization: Bearer al_test_YOUR_KEY' \
-H 'Content-Type: application/json' \
-d '{"birth":{"date":"1990-08-13","time":"06:30","place":{"latitude":28.6139,"longitude":77.209}},"activity":"marriage","from":"2026-11-01","to":"2026-11-30","place":{"latitude":28.6139,"longitude":77.209}}'
Node.js
const res = await fetch("https://api.astrologics.in/v1/muhurat/personal", {
method: "POST",
headers: { Authorization: "Bearer al_test_YOUR_KEY", "Content-Type": "application/json" },
body: JSON.stringify({
"birth": {
"date": "1990-08-13",
"time": "06:30",
"place": {
"latitude": 28.6139,
"longitude": 77.209
}
},
"activity": "marriage",
"from": "2026-11-01",
"to": "2026-11-30",
"place": {
"latitude": 28.6139,
"longitude": 77.209
}
}),
});
console.log(JSON.stringify(await res.json(), null, 2));Python
import json
import urllib.error
import urllib.request
body = {
"birth": {
"date": "1990-08-13",
"time": "06:30",
"place": {
"latitude": 28.6139,
"longitude": 77.209,
},
},
"activity": "marriage",
"from": "2026-11-01",
"to": "2026-11-30",
"place": {
"latitude": 28.6139,
"longitude": 77.209,
},
}
req = urllib.request.Request(
"https://api.astrologics.in/v1/muhurat/personal",
method="POST",
headers={"Authorization": "Bearer al_test_YOUR_KEY", "Content-Type": "application/json"},
data=json.dumps(body).encode(),
)
try:
with urllib.request.urlopen(req) as res:
print(json.dumps(json.load(res), indent=2, ensure_ascii=False))
except urllib.error.HTTPError as err:
print(err.code, err.read().decode())PHP
<?php
$ch = curl_init('https://api.astrologics.in/v1/muhurat/personal');
curl_setopt_array($ch, [
CURLOPT_CUSTOMREQUEST => 'POST',
CURLOPT_HTTPHEADER => ['Authorization: Bearer al_test_YOUR_KEY', 'Content-Type: application/json'],
CURLOPT_POSTFIELDS => '{"birth":{"date":"1990-08-13","time":"06:30","place":{"latitude":28.6139,"longitude":77.209}},"activity":"marriage","from":"2026-11-01","to":"2026-11-30","place":{"latitude":28.6139,"longitude":77.209}}',
CURLOPT_RETURNTRANSFER => true,
]);
echo curl_exec($ch), PHP_EOL;Example response
200 OK · 14,047 characters
{
"data": {
"activity": "marriage",
"days": [
{
"date": "2026-11-01",
"score": 18,
"band": "Avoid",
"rejected": false,
"reasons": [],
"tara_bala": {
"count": 7,
"tara": 7,
"name": "Vadha",
"good": false,
"bad": true,
"note": null
},
"chandra_bala": {
"from": 4,
"good": false,
"bad": true
}
},
{
"date": "2026-11-02",
"score": 50,
"band": "Weak",
"rejected": false,
"reasons": [],
"tara_bala": {
"count": 8,
"tara": 8,
"name": "Mitra",
"good": true,
"bad": false,
"note": null
},
"chandra_bala": {
"from": 4,
"good": false,
"bad": true
}
},
{
"date": "2026-11-03",
"score": 42,
"band": "Avoid",
"rejected": false,
"reasons": [],
"tara_bala": {
"count": 9,
"tara": 9,
"name": "Ati-Mitra",
"good": true,
"bad": false,
"note": null
},
"chandra_bala": {
"from": 5,
"good": false,
"bad": false
}
},
{
"date": "2026-11-04",
"score": 52,
"band": "Fair",
"rejected": false,
"reasons": [],
"tara_bala": {
"count": 10,
"tara": 1,
"name": "Janma",
"good": false,
"bad": false,
"note": "Janma tara — the birth star itself. Read as mixed: acceptable for personal affairs, avoided for travel."
},
"chandra_bala": {
"from": 5,
"good": false,
"bad": false
}
},
{
"date": "2026-11-05",
"score": 82,
"band": "Avoid",
"rejected": true,
"reasons": [
"Vaidhriti yoga"
],
"tara_bala": {
"count": 11,
"tara": 2,
"name": "Sampat",
"good": true,
"bad": false,
"note": null
},
"chandra_bala": {
"from": 6,
"good": true,
"bad": false
}
},
{
"date": "2026-11-06",
"score": 68,
"band": "Good",
"rejected": false,
"reasons": [],
"tara_bala": {
"count": 12,
"tara": 3,
"name": "Vipat",
"good": false,
"bad": true,
"note": null
},
"chandra_bala": {
"from": 6,
"good": true,
"bad": false
}
},
{
"date": "2026-11-07",
"score": 34,
"band": "Avoid",
"rejected": true,
"reasons": [
"Rikta tithi",
"Vishti (Bhadra)"
],
"tara_bala": {
"count": 13,
"tara": 4,
"name": "Kshema",
"good": true,
"bad": false,
"note": null
},
"chandra_bala": {
"from": 6,
"good": true,
"bad": false
}
},
{
"date": "2026-11-08",
"score": 38,
"band": "Avoid",
"rejected": true,
"reasons": [
"Amavasya"
],
"tara_bala": {
"count": 14,
"tara": 5,
"name": "Pratyari",
"good": false,
"bad": true,
"note": null
},
"chandra_bala": {
"from": 7,
"good": true,
"bad": false
}
},
{
"date": "2026-11-09",
"score": 42,
"band": "Avoid",
"rejected": true,
"reasons": [
"Amavasya"
],
"tara_bala": {
"count": 15,
"tara": 6,
"name": "Sadhaka",
"good": true,
"bad": false,
"note": null
},
"chandra_bala": {
"from": 7,
"good": true,
"bad": false
}
},
{
"date": "2026-11-10",
"score": 34,
"band": "Avoid",
"rejected": false,
"reasons": [],
"tara_bala": {
"count": 16,
"tara": 7,
"name": "Vadha",
"good": false,
"bad": true,
"note": null
},
"chandra_bala": {
"from": 8,
"good": false,
"bad": true
}
},
{
"date": "2026-11-11",
"score": 34,
"band": "Avoid",
"rejected": true,
"reasons": [
"Atiganda yoga"
],
"tara_bala": {
"count": 17,
"tara": 8,
"name": "Mitra",
"good": true,
"bad": false,
"note": null
},
"chandra_bala": {
"from": 8,
"good": false,
"bad": true
}
},
{
"date": "2026-11-12",
"score": 50,
"band": "Weak",
"rejected": false,
"reasons": [],
"tara_bala": {
"count": 17,
"tara": 8,
"name": "Mitra",
"good": true,
"bad": false,
"note": null
},
"chandra_bala": {
"from": 8,
"good": false,
"bad": true
}
},
{
"date": "2026-11-13",
"score": 18,
"band": "Avoid",
"rejected": true,
"reasons": [
"Rikta tithi",
"Vishti (Bhadra)"
],
"tara_bala": {
"count": 18,
"tara": 9,
"name": "Ati-Mitra",
"good": true,
"bad": false,
"note": null
},
"chandra_bala": {
"from": 9,
"good": false,
"bad": false
}
},
{
"date": "2026-11-14",
"score": 16,
"band": "Avoid",
"rejected": true,
"reasons": [
"Shula yoga"
],
"tara_bala": {
"count": 19,
"tara": 1,
"name": "Janma",
"good": false,
"bad": false,
"note": "Janma tara — the birth star itself. Read as mixed: acceptable for personal affairs, avoided for travel."
},
"chandra_bala": {
"from": 9,
"good": false,
"bad": false
}
},
{
"date": "2026-11-15",
"score": 84,
"band": "Excellent",
"rejected": false,
"reasons": [],
"tara_bala": {
"count": 20,
"tara": 2,
"name": "Sampat",
"good": true,
"bad": false,
"note": null
},
"chandra_bala": {
"from": 10,
"good": true,
"bad": false
}
},
{
"date": "2026-11-16",
"score": 74,
"band": "Excellent",
"rejected": false,
"reasons": [],
"tara_bala": {
"count": 21,
"tara": 3,
"name": "Vipat",
"good": false,
"bad": true,
"note": null
},
"chandra_bala": {
"from": 10,
"good": true,
"bad": false
}
},
{
"date": "2026-11-17",
"score": 30,
"band": "Avoid",
"rejected": true,
"reasons": [
"Vishti (Bhadra)"
],
"tara_bala": {
"count": 22,
"tara": 4,
"name": "Kshema",
"good": true,
"bad": false,
"note": null
},
"chandra_bala": {
"from": 10,
"good": true,
"bad": false
}
},
{
"date": "2026-11-18",
"score": 6,
"band": "Avoid",
"rejected": true,
"reasons": [
"Rikta tithi",
"Vyaghata yoga"
],
"tara_bala": {
"count": 23,
"tara": 5,
"name": "Pratyari",
"good": false,
"bad": true,
"note": null
},
"chandra_bala": {
"from": 11,
"good": true,
"bad": false
}
},
{
"date": "2026-11-19",
"score": 70,
"band": "Good",
"rejected": false,
"reasons": [],
"tara_bala": {
"count": 24,
"tara": 6,
"name": "Sadhaka",
"good": true,
"bad": false,
"note": null
},
"chandra_bala": {
"from": 11,
"good": true,
"bad": false
}
},
{
"date": "2026-11-20",
"score": 38,
"band": "Avoid",
"rejected": true,
"reasons": [
"Vajra yoga"
],
"tara_bala": {
"count": 25,
"tara": 7,
"name": "Vadha",
"good": false,
"bad": true,
"note": null
},
"chandra_bala": {
"from": 12,
"good": false,
"bad": true
}
},
{
"date": "2026-11-21",
"score": 58,
"band": "Fair",
"rejected": false,
"reasons": [],
"tara_bala": {
"count": 26,
"tara": 8,
"name": "Mitra",
"good": true,
"bad": false,
"note": null
},
"chandra_bala": {
"from": 12,
"good": false,
"bad": true
}
},
{
"date": "2026-11-22",
"score": 46,
"band": "Avoid",
"rejected": true,
"reasons": [
"Vyatipata yoga"
],
"tara_bala": {
"count": 27,
"tara": 9,
"name": "Ati-Mitra",
"good": true,
"bad": false,
"note": null
},
"chandra_bala": {
"from": 1,
"good": true,
"bad": false
}
},
{
"date": "2026-11-23",
"score": 36,
"band": "Avoid",
"rejected": true,
"reasons": [
"Rikta tithi"
],
"tara_bala": {
"count": 1,
"tara": 1,
"name": "Janma",
"good": false,
"bad": false,
"note": "Janma tara — the birth star itself. Read as mixed: acceptable for personal affairs, avoided for travel."
},
"chandra_bala": {
"from": 1,
"good": true,
"bad": false
}
},
{
"date": "2026-11-24",
"score": 26,
"band": "Avoid",
"rejected": true,
"reasons": [
"Parigha yoga"
],
"tara_bala": {
"count": 2,
"tara": 2,
"name": "Sampat",
"good": true,
"bad": false,
"note": null
},
"chandra_bala": {
"from": 2,
"good": false,
"bad": false
}
},
{
"date": "2026-11-25",
"score": 66,
"band": "Good",
"rejected": false,
"reasons": [],
"tara_bala": {
"count": 3,
"tara": 3,
"name": "Vipat",
"good": false,
"bad": true,
"note": null
},
"chandra_bala": {
"from": 2,
"good": false,
"bad": false
}
},
{
"date": "2026-11-26",
"score": 98,
"band": "Excellent",
"rejected": false,
"reasons": [],
"tara_bala": {
"count": 4,
"tara": 4,
"name": "Kshema",
"good": true,
"bad": false,
"note": null
},
"chandra_bala": {
"from": 3,
"good": true,
"bad": false
}
},
{
"date": "2026-11-27",
"score": 22,
"band": "Avoid",
"rejected": true,
"reasons": [
"Rikta tithi"
],
"tara_bala": {
"count": 5,
"tara": 5,
"name": "Pratyari",
"good": false,
"bad": true,
"note": null
},
"chandra_bala": {
"from": 3,
"good": true,
"bad": false
}
},
{
"date": "2026-11-28",
"score": 30,
"band": "Avoid",
"rejected": false,
"reasons": [],
"tara_bala": {
"count": 6,
"tara": 6,
"name": "Sadhaka",
"good": true,
"bad": false,
"note": null
},
"chandra_bala": {
"from": 4,
"good": false,
"bad": true
}
},
{
"date": "2026-11-29",
"score": 42,
"band": "Avoid",
"rejected": false,
"reasons": [],
"tara_bala": {
"count": 8,
"tara": 8,
"name": "Mitra",
"good": true,
"bad": false,
"note": null
},
"chandra_bala": {
"from": 4,
"good": false,
"bad": true
}
},
{
"date": "2026-11-30",
"score": 42,
"band": "Avoid",
"rejected": true,
"reasons": [
"Vishti (Bhadra)"
],
"tara_bala": {
"count": 9,
"tara": 9,
"name": "Ati-Mitra",
"good": true,
"bad": false,
"note": null
},
"chandra_bala": {
"from": 5,
"good": false,
"bad": false
}
}
]
},
"meta": {
"request_id": "req_example",
"api_version": "v1",
"engine_version": "2026.10.10",
"mode": "live",
"credits_charged": 3,
"ayanamsa": "lahiri",
"house_system": "whole_sign",
"node": "true",
"timezone_used": {
"name": "Asia/Kolkata",
"utc_offset": "+05:30",
"source": "auto"
}
},
"warnings": []
}Try it
More in Panchang & muhurat
- Daily Panchang API for a Date and Place: Panchang for a date and place
- Choghadiya API: Day and night choghadiya
- Muhurat Activities API: Supported muhurat activities
- Muhurat Search API: Days rated for an activity, with scores and rejection reasons
- Muhurat for a Day API: One day judged for an activity: the panchang, the verdict, the windows left after Rahu Kaal, Yamaganda and Gulika
- Yearly Muhurat List API (Vivah, Griha Pravesh): The dated muhurat list of a year for an occasion: the days that hold a window, with the windows
- Muhurat Dates API for an Occasion: Every local day between two dates for an occasion: available with its windows, or the reason it is not
- Hora API (Planetary Hours): Hora: the 24 planetary hours of a day
- Muhurat Scan API (62 Days): Scan up to 62 days for an activity inside daily hours: the ten best days with their favourable windows