---
title: "Synastry Aspect Grid"
method: POST
path: "/synastry/aspect-grid"
tags: ["Comparisons"]
---

# Synastry Aspect Grid

`POST /synastry/aspect-grid`

NxM matrix of cross-chart aspects between the two charts (default 13×13: Sun..Pluto + nodes + Lilith + Chiron). Cells contain aspect or null.

## Request body

- TwoChart — Pair of natal charts for relationship calculations: synastry, composite, davison.
  - `chart1` ChartInput, required — Birth data for a single natal chart. Required: date (YYYY-MM-DD), time (HH:mm:ss). Coordinates are latitude and longitude in decimal degrees, plus timezoneOffset in hours from UTC; the short forms lat, lon, lng and tz are rejected with 400 INVALID_FIELD. Omitting the coordinates is not the same as skipping them: houses, angles and everything derived from them are then computed for 0°N 0°E at UTC, which is a wrong answer rather than a neutral default.
    - `date` string, required
    - `time` string, required
    - `timezoneOffset` number, nullable
    - `latitude` number, nullable
    - `longitude` number, nullable
    - `houseSystem` string
    - `name` string
    - `city` string
    - `zodiacType` 'tropical' | 'sidereal'
    - `ayanamsaId` number, nullable
    - `cosmogram` boolean
  - `chart2` ChartInput, required — Birth data for a single natal chart. Required: date (YYYY-MM-DD), time (HH:mm:ss). Coordinates are latitude and longitude in decimal degrees, plus timezoneOffset in hours from UTC; the short forms lat, lon, lng and tz are rejected with 400 INVALID_FIELD. Omitting the coordinates is not the same as skipping them: houses, angles and everything derived from them are then computed for 0°N 0°E at UTC, which is a wrong answer rather than a neutral default.
    - `date` string, required
    - `time` string, required
    - `timezoneOffset` number, nullable
    - `latitude` number, nullable
    - `longitude` number, nullable
    - `houseSystem` string
    - `name` string
    - `city` string
    - `zodiacType` 'tropical' | 'sidereal'
    - `ayanamsaId` number, nullable
    - `cosmogram` boolean

## Response `200`

Successful calculation

- object
  - `ok` boolean
  - `data` object
    - `bodies1` unknown[], nullable
      - unknown
    - `bodies2` unknown[], nullable
      - unknown
    - `grid` array[], nullable
      - object[], nullable
        - `type` object, nullable
          - `name` string, nullable
        - `orb` number, nullable
    - `totals` object, nullable
      - `harmonious` number, nullable
      - `challenging` number, nullable
      - `neutral` number, 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)
