---
title: "Western Solar Arc Directions"
method: POST
path: "/v1/western/progressions/solar-arc"
tags: ["Western Astrology"]
---

# Western Solar Arc Directions

`POST /v1/western/progressions/solar-arc`

## Request

- Base URL: `https://api.asterwise.com`
- URL: `https://api.asterwise.com/v1/western/progressions/solar-arc`
- Auth: HTTP bearer

Solar Arc Directions for a target date. The solar arc (progressed Sun - natal Sun) is applied uniformly to every natal planet and angle. Unlike secondary progressions, all planets advance at the same rate (~1° per year). Returns directed positions for all 10 planets plus directed MC and ASC.

## Request body

- ProgressionRequest
  - `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, nullable: Birth time in HH:MM 24-hour format. If omitted, the chart is cast for 06:00 local time (not a sunrise chart) and birth_time_provided is false: houses, the Ascendant, the sect and the Moon's exact degree are then approximate.
  - `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': Ignored on Western endpoints: positions are always tropical (no ayanamsa). Accepted so one birth object can be sent to Vedic and Western endpoints alike.
  - `target_date` string, nullable: Target date for progressions YYYY-MM-DD. Defaults to today.

## Response `200`

Successful Response

- ApiResponseSolarArcResponse
  - `success` boolean: True if the request succeeded
  - `message` string: Human-readable status message
  - `data` SolarArcResponse, 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.
    - `target_date` string, required
    - `solar_arc` number, required: Solar arc in degrees applied to all planets
    - `age_years` number, required
    - `natal_sun_longitude` number, required
    - `progressed_sun_longitude` number, required
    - `directed_planets` SolarArcPlanetSchema[], required
      - `name` string, required
      - `natal_longitude` number, required
      - `directed_longitude` number, required
      - `sign` string, required
      - `sign_index` integer, required
      - `degree_in_sign` number, required
      - `dignity` string, required
      - `dignity_score` integer, required: Weight of the primary sign-level dignity only: domicile=5, exaltation=4, detriment=-5, fall=-4, peregrine=0. Triplicity, term and face are not scored, and the weights are not summed (e.g. Mercury in Virgo scores 5 for domicile, not 5+4). Full traditional scoring is in essential_dignities (natal and return charts).
      - `dignity_disputed` boolean, required: True for outer planet (Uranus/Neptune/Pluto) exaltation/fall — no established consensus.
    - `directed_ascendant` number, required
    - `directed_ascendant_sign` string, required
    - `directed_mc` number, required
    - `directed_mc_sign` string, 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/3c4bbb1194e2?raw)
