---
title: "Planetary transits — Gochar"
method: POST
path: "/v1/astro/transits"
tags: ["Advanced"]
---

# Planetary transits — Gochar

`POST /v1/astro/transits`

## Request

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

Scans a date range for planetary sign ingresses (Moon included) and retrograde/direct station events, each with its exact UTC time. Lahiri sidereal by default; set ayanamsa to 'tropical' for Western (tropical) sign changes, or 'raman' / 'kp' for those ayanamsas. Also known as Gochar.

## Request body

- TransitsRequest
  - `from_date` string, required: Start of the date range to scan, in YYYY-MM-DD format.
  - `to_date` string, required: End of the date range to scan, in YYYY-MM-DD format. Maximum range is 3 years (1095 days) from from_date.
  - `ayanamsa` 'lahiri' | 'raman' | 'kp' | 'tropical': Zodiac for the sign changes. lahiri (default), raman and kp are sidereal ayanamsas (Vedic). tropical is the Western zodiac with no ayanamsa, so ingresses become Western sign changes (Sun into Aries at the March equinox, Moon sign changes every ~2.5 days). Station moments do not depend on this; only their reported longitude does.

## Response `200`

Transit ingress and station event collections

- ApiResponseTransitsResponse
  - `success` boolean: True if the request succeeded
  - `message` string: Human-readable status message
  - `data` TransitsResponse, required
    - `zodiac` 'sidereal' | 'tropical': Zodiac used for every event: sidereal (Vedic, default) or tropical (Western).
    - `ayanamsa` string: Ayanamsa used: lahiri (default), raman, kp, or tropical (no ayanamsa).
    - `ingresses` IngressEvent[], required: All sign ingress events in the requested date range, Moon sign changes included. Covers all 9 Vedic planets: Sun, Moon, Mars, Mercury, Jupiter, Venus, Saturn, Rahu, Ketu (Rahu/Ketu are the mean nodes).
      - `planet` string, required: Planet name, e.g. Sun, Mars, Rahu
      - `from_sign` integer, required: Zero-based sign index the planet is leaving, 0 for Aries through 11 for Pisces
      - `to_sign` integer, required: Zero-based sign index the planet is entering
      - `from_sign_name` string, nullable: Name of the sign the planet is leaving, e.g. Pisces
      - `to_sign_name` string, nullable: Name of the sign the planet is entering, e.g. Aries
      - `jd` number, required: Julian Day number of the ingress moment
      - `date_iso` string, required: Instant of ingress in UTC, ISO 8601 without an offset (YYYY-MM-DDTHH:MM:SS). Read it as UTC; datetime_utc carries the Z.
      - `datetime_utc` string, nullable: Instant of ingress, ISO 8601 UTC with Z (e.g. 2026-06-02T08:03:11Z).
      - `is_sankranti` boolean, required: True for solar ingress (Sankranti); false for all other planets.
      - `retrograde_ingress` boolean, required: True when the planet is retrograde (speed < 0) at the ingress moment.
      - `zodiac` 'sidereal' | 'tropical', nullable: Zodiac the signs are measured in: sidereal or tropical.
      - `ayanamsa` string, nullable: Ayanamsa used: lahiri, raman, kp, or tropical (none).
    - `stations` StationEvent[], required: All retrograde and direct station events in the requested date range. Only the 7 classical planets (Sun through Saturn) have stations. Rahu and Ketu are always excluded from this list.
      - `planet` string, required: Planet name. Rahu and Ketu never have station events.
      - `station_type` 'retrograde' | 'direct', required: retrograde — planet appears to reverse direction. direct — planet resumes forward motion.
      - `jd` number, required: Julian Day number of the station moment
      - `date_iso` string, required: Instant of station in UTC, ISO 8601 without an offset (YYYY-MM-DDTHH:MM:SS). Read it as UTC; datetime_utc carries the Z.
      - `datetime_utc` string, nullable: Instant of station, ISO 8601 UTC with Z.
      - `longitude` number, required: Longitude of the planet at the moment of station, in the requested zodiac (sidereal by default; tropical when ayanamsa is tropical).
      - `sign` integer, nullable: Zero-based sign index at the station, 0 for Aries through 11 for Pisces
      - `sign_name` string, nullable: Name of the sign at the station, e.g. Gemini
      - `zodiac` 'sidereal' | 'tropical', nullable: Zodiac the longitude is measured in: sidereal or tropical.
      - `ayanamsa` string, nullable: Ayanamsa used: lahiri, raman, kp, or tropical (none).

## 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/3c4bbb1194e2?raw)
