Skip to main content
POST/v1/astro/varshaphal/saham

Varshaphal — Tajika Saham Points

Computes all 10 Tajika Saham (sensitive points) for a Varshaphal chart. Sahams are the Tajika equivalent of Arabic Parts — mathematically derived points that focus on specific life themes for the year. Formula: A - B + C, plus 30° when C is not on the arc from B forward to A (Tajika Neelakanthi). C is the Varsha ascendant except for Mitra (Venus) and Santapa (the 6th house, ascendant + 150°). For a night return A and B swap, except Vyapara. Day formulas: Punya Moon-Sun, Vidya Sun-Moon, Yashas Jupiter-Punya, Mitra Jupiter-Punya+Venus, Mahatmya Punya-Mars, Asha Saturn-Mars, Karmakarya Mars-Mercury, Vyapara Mars-Saturn, Vivaha Venus-Saturn, Santapa Saturn-Moon+6th house. Yashas, Mitra and Mahatmya use Punya Saham as an operand — computed first.

Request parameters​

locationoptional
string | null
City name to resolve to lat/lon/tz automatically. Example: 'Mumbai' or 'New Delhi, India'. If provided, latitude, longitude and timezone are not required.
nameoptional
string
Person name associated with the birth record
daterequired
string
Birth date in YYYY-MM-DD format
timerequired
string
Birth time in HH:MM 24-hour format. Required: this endpoint has no sunrise fallback.
latitudeoptional
number | null
Latitude. Required if location not provided.
longitudeoptional
number | null
Longitude. Required if location not provided.
timezoneoptional
string | null
IANA timezone. Required if location not provided (unless utc_offset is given). For dates before the zone adopted a standard time, the birthplace's local mean time (longitude / 15 hours) is used.
utc_offsetoptional
string | null
Optional explicit UTC offset of the birth time, as ±HH:MM or ±HH:MM:SS (e.g. '+04:51:31' for Bombay mean time). Overrides the offset timezone would give. Use it when the birth record states the offset, or for historical local times the IANA database cannot represent.
ayanamsaoptional
string
Sidereal ayanamsa mode used in calculations
target_yearrequired
integer
Varshaphal year, e.g. 2026: the solar return nearest the birthday in this year (in UT it can fall the day before or after the birthday, or on 31 December for a 1 January birthday). Each year gives a different return. Must not be before the birth year.

Response fields​

success
boolean
True if the request succeeded
message
string
Human-readable status message
data
object
data.birth_time_provided
boolean
True when a birth time was supplied. False when it was not: house, Ascendant and Moon-dependent results then carry the accuracy limits of an unknown birth time.
data.target_year
integer
data.ayanamsa
string
data.solar_return_utc
string
data.is_day_return
boolean
True if solar return occurred during daytime — determines formula variant.
data.varshaphal_ascendant_longitude
number
data.total
integer
data.sahams
array[object]
data.sahams[].slug
string
data.sahams[].name
string
data.sahams[].theme
string
data.sahams[].longitude
number
data.sahams[].rashi_index
integer
data.sahams[].rashi
string
data.sahams[].degree_in_sign
number
data.sahams[].saham_lord
string
Classical lord of the sign where this Saham falls.
data.sahams[].formula_used
string
Day or night formula and planet operands used.

Errors​

Invalid API key format.
API key is missing. Include it in the Authorization header as 'Bearer YOUR_KEY'.
The provided API key was not found. Verify the key in your Asterwise dashboard.
This API key has been revoked.
Too many requests per minute. Please slow down.
Something went wrong on our end. Please try again, or contact [email protected] if the problem persists. Include your request_id when contacting support.
Too many requests from this IP address. Please slow down.
Monthly API call limit reached. Upgrade your plan to continue.
Request body exceeds maximum allowed size of 64KB.
Your subscription has expired. Please renew at asterwise.com/dashboard to continue.
The request couldn't be processed. See the 'details' field for specific field-level issues.