---
title: "Gochar — Transit Analysis"
method: POST
path: "/v1/astro/gochar"
tags: ["Astrology"]
---

# Gochar — Transit Analysis

`POST /v1/astro/gochar`

## Request

- Base URL: `https://api.asterwise.com`
- URL: `https://api.asterwise.com/v1/astro/gochar`
- Auth: HTTP bearer

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 body

- GocharRequest: Gochar — extends :class:`TimedBirthInput` with optional transit instant fields. Birth fields: ``name``, ``date``, ``time``, ``location`` or coordinates, ``ayanamsa``. Transit evaluation: optional ``target_date``, ``target_time``, ``target_timezone``.
  - `location` string, nullable: City name to resolve to lat/lon/tz automatically. Example: 'Mumbai' or 'New Delhi, India'. If provided, latitude, longitude and timezone are not required.
  - `name` string: Person name associated with the birth record
  - `date` string, required: Birth date in YYYY-MM-DD format
  - `time` string, required: Birth time in HH:MM 24-hour format. Required: this endpoint has no sunrise fallback.
  - `latitude` number, nullable: Latitude. Required if location not provided.
  - `longitude` number, nullable: Longitude. Required if location not provided.
  - `timezone` string, nullable: 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_offset` string, nullable: 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.
  - `ayanamsa` 'lahiri' | 'raman' | 'kp' | 'tropical': Sidereal ayanamsa mode used in calculations
  - `target_date` string, nullable: YYYY-MM-DD. Defaults to today IST.
  - `target_time` string, nullable: 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_timezone` string, nullable: 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 `200`

Successful Response

- ApiResponseGocharResponse
  - `success` boolean: True if the request succeeded
  - `message` string: Human-readable status message
  - `data` GocharResponse, required
    - `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.
    - `natal` GocharNatalRef, required
      - `moon_sign` string, required
      - `moon_sign_index` integer, required
      - `ascendant_sign` string, required
      - `ascendant_sign_index` integer, required
      - `moon_tropical_sign` string, nullable: Tropical sign of the natal Moon, English name (sidereal longitude plus ayanamsa). Label only; house counts stay sidereal.
      - `ascendant_tropical_sign` string, nullable: Tropical sign of the natal Ascendant, English name. Label only.
    - `target_date` string, required
    - `transits` GocharTransitEntry[], required
      - `planet` string, required
      - `transit_sign` string, required
      - `transit_sign_index` integer, required
      - `transit_degree` number, required
      - `transit_tropical_longitude` number, nullable: Same position in the tropical zodiac: sidereal longitude plus the ayanamsa at that instant. Only the label changes; houses and every rule stay sidereal.
      - `transit_tropical_sign` string, nullable: Tropical sign of the transiting planet, English name. Label only; house_from_moon and every verdict stay sidereal.
      - `transit_tropical_sign_index` integer, nullable
      - `is_retrograde` boolean, required
      - `nakshatra` string, nullable, required
      - `nakshatra_pada` integer, nullable, required
      - `house_from_moon` integer, required
      - `house_from_lagna` integer, required
      - `is_favorable_from_moon` boolean, required
      - `is_favorable_from_lagna` boolean, required
      - `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.
      - `vedha_active` boolean, required
      - `vedha_blocking_planet` string, nullable, required
      - `ashtakavarga_score` integer, nullable, required: 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).
      - `ashtakavarga_score_reduced` integer, nullable: The same sign's bindus after Trikona Shodhana, for reference. Not used to grade the transit.
      - `favorable_reason` string, nullable: Which rule decided is_favorable_from_moon, in words: the house from the Moon, or the bindu count overriding it.
      - `interpretation` string, required: 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.
      - `themes` string[], required: 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.
      - `quality` string, required: Final verdict, 'favorable' or 'unfavorable'. Always matches is_favorable_from_moon, bindu override included.
      - `house_rule_quality` string, nullable: Classical quality of this house from the Moon alone, before the bindu override.
      - `house_rule_interpretation` string, nullable: Classical text for this house from the Moon alone.
      - `house_rule_themes` string[]: Theme tags for this house from the Moon alone.
    - `summary` GocharSummary, required
      - `favorable_count` integer, required
      - `unfavorable_count` integer, required
      - `vedha_blocked_count` integer, required
      - `overall_score` integer, required
      - `sade_sati_active` boolean, required
      - `sade_sati_phase` string, nullable, required
      - `sade_sati_interpretation` object, nullable: Phase-specific Sade Sati interpretation when active. Contains name, duration, saturn_position, and interpretation text for the current phase (rising, peak, or setting).
      - `chandra_ashtama_active` boolean, required

## Other responses

- `401`: Authentication failed
- `403`: Authorization failed
- `404`: Resource not found
- `413`: Payload too large
- `422`: Validation error
- `429`: Rate limit exceeded
- `500`: Internal error
- `502`: Upstream provider error
- `503`: Service unavailable

---

[API](https://skmtc.dev/asterwise/apis/asterwise-api.md) · [All operations](https://skmtc.dev/asterwise/apis/asterwise-api/llms.txt) · [OpenAPI document](https://skmtc.dev/asterwise/apis/asterwise-api/revisions/e77850f7c569?raw)
