Annual
Tajik varshaphal: the solar-return chart for a year of life.
Tajik varshaphal: annual chart, muntha, year lord, Mudda dasha
POST/v1/varshaphal
3 credits · Secret key (test or live) · getVarshaphal · Page for this operation
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.
yearinteger required≥ 1900 · ≤ 2100
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:
yearinteger requiredsolar_returnstring (date-time) requiredis_dayboolean requiredlagnaobject requiredsignstring requireddegreenumber required
munthaobject requiredsignstring requiredhouseinteger requiredlordstring required
year_lordstring requiredmudda_dashaarray of object requiredlordstring requiredstartstring (date-time) requiredendstring (date-time) required
harsha_balamap of number requiredpanchavargeeyamap of number requiredsahamsarray of object requiredidstring requiredlongitudenumber requiredsignstring requiredhouseinteger required
tajik_yogasarray of object requiredkindstring requiredplanetsarray of string required
planetsmap of object requiredThe nine grahas in the solar-return chart; house counted from its lagna.
signstring requiredhouseinteger required≥ 1 · ≤ 12
longitudenumber requiredretrogradeboolean required
year_lord_placementobject or null requiredOne of:
- object
Fields
planetstring requiredsignstring requiredhouseinteger required≥ 1 · ≤ 12
- null
- object
Errors: 400, 401, 403, 404, 422, 429, 500. See error codes.
Example request
curl -X POST 'https://api.astrologics.in/v1/varshaphal' \
-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}},"year":2026}'
Node.js
const res = await fetch("https://api.astrologics.in/v1/varshaphal", {
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
}
},
"year": 2026
}),
});
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,
},
},
"year": 2026,
}
req = urllib.request.Request(
"https://api.astrologics.in/v1/varshaphal",
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/varshaphal');
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}},"year":2026}',
CURLOPT_RETURNTRANSFER => true,
]);
echo curl_exec($ch), PHP_EOL;Example response
200 OK · 7,165 characters
{
"data": {
"year": 2026,
"solar_return": "2026-08-13T06:25:50.000Z",
"is_day": true,
"lagna": {
"sign": "libra",
"degree": 15.34
},
"muntha": {
"sign": "leo",
"house": 11,
"lord": "sun"
},
"year_lord": "moon",
"mudda_dasha": [
{
"lord": "venus",
"start": "2026-08-13T06:25:50.000Z",
"end": "2026-10-13T03:27:30.000Z"
},
{
"lord": "sun",
"start": "2026-10-13T03:27:30.000Z",
"end": "2026-10-31T09:46:00.000Z"
},
{
"lord": "moon",
"start": "2026-10-31T09:46:00.000Z",
"end": "2026-11-30T20:16:50.000Z"
},
{
"lord": "mars",
"start": "2026-11-30T20:16:50.000Z",
"end": "2026-12-22T03:38:25.000Z"
},
{
"lord": "rahu",
"start": "2026-12-22T03:38:25.000Z",
"end": "2027-02-14T22:33:54.000Z"
},
{
"lord": "jupiter",
"start": "2027-02-14T22:33:54.000Z",
"end": "2027-04-04T15:23:14.000Z"
},
{
"lord": "saturn",
"start": "2027-04-04T15:23:14.000Z",
"end": "2027-06-01T11:21:49.000Z"
},
{
"lord": "mercury",
"start": "2027-06-01T11:21:49.000Z",
"end": "2027-07-23T05:14:14.000Z"
},
{
"lord": "ketu",
"start": "2027-07-23T05:14:14.000Z",
"end": "2027-08-13T12:35:49.000Z"
}
],
"harsha_bala": {
"sun": 10,
"moon": 0,
"mars": 5,
"mercury": 0,
"jupiter": 15,
"venus": 0,
"saturn": 0
},
"panchavargeeya": {
"sun": 8.3,
"moon": 9.99,
"mars": 6.42,
"mercury": 8.87,
"jupiter": 11.27,
"venus": 9.79,
"saturn": 7.39
},
"sahams": [
{
"id": "punya",
"longitude": 232.49,
"sign": "scorpio",
"house": 2
},
{
"id": "vidya",
"longitude": 188.18,
"sign": "libra",
"house": 1
},
{
"id": "yasas",
"longitude": 98.28,
"sign": "cancer",
"house": 10
},
{
"id": "mitra",
"longitude": 65.12,
"sign": "gemini",
"house": 9
},
{
"id": "mahatmya",
"longitude": 0.79,
"sign": "aries",
"house": 7
},
{
"id": "gaurava",
"longitude": 98.28,
"sign": "cancer",
"house": 10
},
{
"id": "rajya",
"longitude": 69.28,
"sign": "gemini",
"house": 9
},
{
"id": "pitru",
"longitude": 69.28,
"sign": "gemini",
"house": 9
},
{
"id": "matru",
"longitude": 156.63,
"sign": "virgo",
"house": 12
},
{
"id": "bhratru",
"longitude": 340.51,
"sign": "pisces",
"house": 6
},
{
"id": "karma",
"longitude": 160.54,
"sign": "virgo",
"house": 12
},
{
"id": "roga",
"longitude": 267.2,
"sign": "sagittarius",
"house": 3
},
{
"id": "kali",
"longitude": 263.74,
"sign": "sagittarius",
"house": 3
},
{
"id": "bandhu",
"longitude": 173.7,
"sign": "virgo",
"house": 12
},
{
"id": "mrityu",
"longitude": 101.87,
"sign": "cancer",
"house": 10
},
{
"id": "vivaha",
"longitude": 37.26,
"sign": "taurus",
"house": 8
},
{
"id": "vyapara",
"longitude": 302.11,
"sign": "aquarius",
"house": 5
},
{
"id": "shatru",
"longitude": 302.11,
"sign": "aquarius",
"house": 5
},
{
"id": "jeeva",
"longitude": 80.16,
"sign": "gemini",
"house": 9
},
{
"id": "karyasiddhi",
"longitude": 69.28,
"sign": "gemini",
"house": 9
},
{
"id": "samartha",
"longitude": 100.19,
"sign": "cancer",
"house": 10
},
{
"id": "artha",
"longitude": 338.3,
"sign": "pisces",
"house": 6
}
],
"tajik_yogas": [
{
"kind": "ithasala",
"planets": [
"sun",
"mars"
]
},
{
"kind": "ithasala",
"planets": [
"moon",
"mars"
]
},
{
"kind": "ithasala",
"planets": [
"mercury",
"venus"
]
},
{
"kind": "ithasala",
"planets": [
"jupiter",
"venus"
]
},
{
"kind": "ithasala",
"planets": [
"jupiter",
"saturn"
]
},
{
"kind": "ishrafa",
"planets": [
"sun",
"jupiter"
]
},
{
"kind": "ishrafa",
"planets": [
"sun",
"saturn"
]
},
{
"kind": "ishrafa",
"planets": [
"mars",
"venus"
]
},
{
"kind": "nakta",
"planets": [
"mars",
"jupiter"
]
},
{
"kind": "nakta",
"planets": [
"mars",
"saturn"
]
}
],
"planets": {
"sun": {
"sign": "cancer",
"house": 10,
"longitude": 116.3139,
"retrograde": false
},
"moon": {
"sign": "leo",
"house": 11,
"longitude": 123.47,
"retrograde": false
},
"mars": {
"sign": "gemini",
"house": 9,
"longitude": 67.0342,
"retrograde": false
},
"mercury": {
"sign": "cancer",
"house": 10,
"longitude": 101.8319,
"retrograde": false
},
"jupiter": {
"sign": "cancer",
"house": 10,
"longitude": 105.4358,
"retrograde": false
},
"venus": {
"sign": "virgo",
"house": 12,
"longitude": 162.1796,
"retrograde": false
},
"saturn": {
"sign": "pisces",
"house": 6,
"longitude": 350.2584,
"retrograde": true
},
"rahu": {
"sign": "aquarius",
"house": 5,
"longitude": 305.5552,
"retrograde": true
},
"ketu": {
"sign": "leo",
"house": 11,
"longitude": 125.5552,
"retrograde": true
}
},
"year_lord_placement": {
"planet": "moon",
"sign": "leo",
"house": 11
}
},
"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": []
}