---
title: "Natal Chart"
method: POST
path: "/chart"
tags: ["Core"]
---

# Natal Chart

`POST /chart`

Calculate a full natal chart: planets, house cusps, aspects, sect, and angular data for a given birth moment. When the birth time is unknown, send timeUnknown: true instead of time and the response carries planets and aspects with houses, angles and sect set to null, plus a timeUnknown block giving the range the Moon covers that day.

## Request body

- ChartInputUnknownTime — Birth data where the clock time may be unknown. Either pass time (HH:mm:ss), or set timeUnknown: true and omit it. In the second case the response carries planets and aspects but no houses, angles or sect.
  - `date` string, required
  - `time` string
  - `timezoneOffset` number, nullable
  - `latitude` number, nullable
  - `longitude` number, nullable
  - `houseSystem` string
  - `name` string
  - `city` string
  - `zodiacType` 'tropical' | 'sidereal'
  - `ayanamsaId` number, nullable
  - `cosmogram` boolean
  - `timeUnknown` boolean

## Response `200`

Successful calculation

- object
  - `ok` boolean
  - `data` object
    - `julianDay` number, nullable
    - `siderealTime` number, nullable
    - `planets` object[], nullable
      - `id` number, nullable
      - `name` string, nullable
      - `longitude` number, nullable
      - `latitude` number, nullable
      - `distance` number, nullable
      - `speedLong` number, nullable
      - `speedLat` number, nullable
      - `speedDist` number, nullable
      - `isRetrograde` boolean, nullable
      - `declination` number, nullable
      - `rightAscension` number, nullable
    - `houses` object, nullable
      - `system` string, nullable
      - `cusps` number[], nullable
      - `ascendant` number, nullable
      - `mc` number, nullable
      - `armc` number, nullable
      - `vertex` number, nullable
    - `aspects` object[], nullable
      - `planet1` string, nullable
      - `planet2` string, nullable
      - `planet1Id` number, nullable
      - `planet2Id` number, nullable
      - `type` object, nullable
        - `name` string, nullable
        - `angle` number, nullable
        - `symbol` string, nullable
        - `isMajor` boolean, nullable
      - `exactAngle` number, nullable
      - `orb` number, nullable
      - `isApplying` boolean, nullable

## Other responses

- `400` — Validation error
- `401` — Missing or invalid API key

---

[API](https://skmtc.dev/astroway/apis/astroway-calculation-api.md) · [All operations](https://skmtc.dev/astroway/apis/astroway-calculation-api/llms.txt) · [OpenAPI document](https://skmtc-service-production.skmtc.workers.dev/v1/apis/astroway/astroway-calculation-api/revisions/793e5c2dbcdf/schema)
