Morphemeris DocsBeta

Compare Two Charts (Synastry)

Compute synastry, composite, and Davison relationship charts between two people.

Compare Two Charts

The Morphemeris API offers three approaches to relationship chart analysis. Each answers a different question about how two people relate to each other.

Synastry: how do they affect each other?

Synastry computes both natal charts and finds the inter-chart aspects — how person A's planets interact with person B's planets.

Bash
curl "https://api.morphemeris.com/v1/synastry?\
datetime_a=1990-06-15T18:30:00Z&lat_a=40.7128&lon_a=-74.006\
&datetime_b=1988-03-22T10:00:00Z&lat_b=51.5074&lon_b=-0.1278\
&applying=true" \
  -H "Authorization: Bearer morphemeris_live_YOUR_KEY"
javascript
const params = new URLSearchParams({
  datetime_a: "1990-06-15T18:30:00Z", lat_a: "40.7128", lon_a: "-74.006",
  datetime_b: "1988-03-22T10:00:00Z", lat_b: "51.5074", lon_b: "-0.1278",
  applying: "true",
});
const res = await fetch(
  `https://api.morphemeris.com/v1/synastry?${params}`,
  { headers: { Authorization: "Bearer morphemeris_live_YOUR_KEY" } }
);
const { data } = await res.json();

// Both full charts
console.log("Person A's Sun:", data.chart_a.bodies.find(b => b.name === "sun"));
console.log("Person B's Sun:", data.chart_b.bodies.find(b => b.name === "sun"));

// Inter-chart aspects
for (const asp of data.inter_aspects) {
  console.log(`A's ${asp.body_a} ${asp.aspect} B's ${asp.body_b} (orb: ${asp.orb.toFixed(2)}°)`);
}
Python
import requests

res = requests.get(
    "https://api.morphemeris.com/v1/synastry",
    params={
        "datetime_a": "1990-06-15T18:30:00Z", "lat_a": 40.7128, "lon_a": -74.006,
        "datetime_b": "1988-03-22T10:00:00Z", "lat_b": 51.5074, "lon_b": -0.1278,
        "applying": "true",
    },
    headers={"Authorization": "Bearer morphemeris_live_YOUR_KEY"},
)
data = res.json()["data"]

for asp in data["inter_aspects"]:
    print(f"A's {asp['body_a']} {asp['aspect']} B's {asp['body_b']} (orb: {asp['orb']:.2f}°)")

The response includes chart_a, chart_b (full natal charts), and inter_aspects (aspects between the two charts).

Composite: what is the relationship?

A composite chart merges two charts into one by averaging corresponding positions. It represents the relationship itself as an entity.

Bash
curl "https://api.morphemeris.com/v1/composite?\
datetime_a=1990-06-15T18:30:00Z&lat_a=40.7128&lon_a=-74.006\
&datetime_b=1988-03-22T10:00:00Z&lat_b=51.5074&lon_b=-0.1278" \
  -H "Authorization: Bearer morphemeris_live_YOUR_KEY"

The response is a single chart (same structure as /v1/natal-chart) with metadata.source set to "composite".

Davison: the relationship as a real chart

The Davison chart finds the midpoint in time and space between two births and casts a real chart for that moment and place.

Bash
curl "https://api.morphemeris.com/v1/davison?\
datetime_a=1990-06-15T18:30:00Z&lat_a=40.7128&lon_a=-74.006\
&datetime_b=1988-03-22T10:00:00Z&lat_b=51.5074&lon_b=-0.1278" \
  -H "Authorization: Bearer morphemeris_live_YOUR_KEY"

Check metadata.datetime and metadata.lat/metadata.lon to see the computed midpoint.

All three in one batch

Get all three relationship charts in a single API call:

JSON
{
  "requests": [
    {
      "endpoint": "/v1/synastry",
      "params": {
        "datetime_a": "1990-06-15T18:30:00Z", "lat_a": 40.7128, "lon_a": -74.006,
        "datetime_b": "1988-03-22T10:00:00Z", "lat_b": 51.5074, "lon_b": -0.1278
      }
    },
    {
      "endpoint": "/v1/composite",
      "params": {
        "datetime_a": "1990-06-15T18:30:00Z", "lat_a": 40.7128, "lon_a": -74.006,
        "datetime_b": "1988-03-22T10:00:00Z", "lat_b": 51.5074, "lon_b": -0.1278
      }
    },
    {
      "endpoint": "/v1/davison",
      "params": {
        "datetime_a": "1990-06-15T18:30:00Z", "lat_a": 40.7128, "lon_a": -74.006,
        "datetime_b": "1988-03-22T10:00:00Z", "lat_b": 51.5074, "lon_b": -0.1278
      }
    }
  ]
}

This costs 9 credits (3 per chart) and returns all three relationship charts in a single round trip.

Tips

  • Synastry is the most commonly used technique — start here for relationship analysis.
  • Composite is best for understanding the relationship's themes and dynamics.
  • Davison is best when you need to time events — transits to the Davison chart indicate when things happen in the relationship.
  • All three endpoints use _a / _b suffixed parameters. The order doesn't affect aspects (Sun A trine Venus B is the same relationship regardless of which person is A).
  • See Concepts: Relationship Charts for a deeper comparison of the three approaches.