POST/v1/astro/gochar
Gochar — Transit Analysis
Computes planetary transits against a natal chart using classical Vedic rules. Returns house positions from Moon and Lagna, Vedha obstruction checks, raw Bhinna Ashtakavarga bindus for each transit sign (5+ makes a transit favourable, 3 or fewer unfavourable, whatever the house), Sade Sati and Chandra Ashtama flags, and classical transit interpretations for all 9 planets. Request JSON follows BirthInput plus optional transit fields target_date, target_time, target_timezone: name, date, time, location or latitude/longitude/timezone, ayanamsa.
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_dateoptional
string | null
YYYY-MM-DD. Defaults to today IST.
target_timeoptional
string | null
Local clock time HH:MM in target_timezone. Defaults to 12:00. Pass the user's own time so the Moon is where the user sees it.
target_timezoneoptional
string | null
IANA timezone for target_date and target_time. Defaults to Asia/Kolkata (kept for existing callers); pass the user's own timezone for anyone outside India.
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.natal
object
data.natal.moon_sign
string
data.natal.moon_sign_index
integer
data.natal.ascendant_sign
string
data.natal.ascendant_sign_index
integer
data.natal.moon_tropical_sign
string | null
Tropical sign of the natal Moon, English name (sidereal longitude plus ayanamsa). Label only; house counts stay sidereal.
data.natal.ascendant_tropical_sign
string | null
Tropical sign of the natal Ascendant, English name. Label only.
data.target_date
string
data.transits
array[object]
data.transits[].planet
string
data.transits[].transit_sign
string
data.transits[].transit_sign_index
integer
data.transits[].transit_degree
number
data.transits[].transit_tropical_longitude
number | null
Same position in the tropical zodiac: sidereal longitude plus the ayanamsa at that instant. Only the label changes; houses and every rule stay sidereal.
data.transits[].transit_tropical_sign
string | null
Tropical sign of the transiting planet, English name. Label only; house_from_moon and every verdict stay sidereal.
data.transits[].transit_tropical_sign_index
integer | null
data.transits[].is_retrograde
boolean
data.transits[].nakshatra
string | null
data.transits[].nakshatra_pada
integer | null
data.transits[].house_from_moon
integer
data.transits[].house_from_lagna
integer
data.transits[].is_favorable_from_moon
boolean
data.transits[].is_favorable_from_lagna
boolean
data.transits[].bindu_override
boolean
True when the bindus in ashtakavarga_score decided is_favorable_from_moon and is_favorable_from_lagna (5 or more: favourable; 3 or fewer: unfavourable) instead of the house from the Moon or Lagna. False when the score is 4 or unavailable and the house rule stands.
data.transits[].vedha_active
boolean
data.transits[].vedha_blocking_planet
string | null
data.transits[].ashtakavarga_score
integer | null
Bindus (0-8) in this planet's own raw Bhinna Ashtakavarga for the transit sign. 5 or more makes the transit favourable and 3 or fewer unfavourable whatever the house from the Moon; 4 leaves the house rule in force (BPHS Ch.72; Phaladeepika Adhyaya 26).
data.transits[].ashtakavarga_score_reduced
integer | null
The same sign's bindus after Trikona Shodhana, for reference. Not used to grade the transit.
data.transits[].favorable_reason
string | null
Which rule decided is_favorable_from_moon, in words: the house from the Moon, or the bindu count overriding it.
data.transits[].interpretation
string
Reading that agrees with is_favorable_from_moon. Normally the classical text for this house from the Moon; when the bindus reverse the house rule it is favorable_reason, and the house text is in house_rule_interpretation.
data.transits[].themes
array[string]
Theme tags for the house from the Moon. Empty when the bindus reverse the house rule; the house tags are then only in house_rule_themes.
data.transits[].quality
string
Final verdict, 'favorable' or 'unfavorable'. Always matches is_favorable_from_moon, bindu override included.
data.transits[].house_rule_quality
string | null
Classical quality of this house from the Moon alone, before the bindu override.
data.transits[].house_rule_interpretation
string | null
Classical text for this house from the Moon alone.
data.transits[].house_rule_themes
array[string]
Theme tags for this house from the Moon alone.
data.summary
object
data.summary.favorable_count
integer
data.summary.unfavorable_count
integer
data.summary.vedha_blocked_count
integer
data.summary.overall_score
integer
data.summary.sade_sati_active
boolean
data.summary.sade_sati_phase
string | null
data.summary.sade_sati_interpretation
object | null
Phase-specific Sade Sati interpretation when active. Contains name, duration, saturn_position, and interpretation text for the current phase (rising, peak, or setting).
data.summary.chandra_ashtama_active
boolean
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.