Morphemeris DocsBeta

Draconic Chart

GET /v1/draconic — Draconic chart with all positions rotated so the North Node falls at 0° Aries.

Draconic Chart

Compute a draconic chart by rotating all positions so the North Node falls at 0° Aries. The draconic chart is used in karmic and spiritual astrology to reveal the "soul's chart" — positions relative to the nodal axis rather than the vernal equinox.

Text
GET  /v1/draconic
POST /v1/draconic

Credit cost: 2

Parameters

ParameterTypeRequiredDefaultDescription
datetimestringOne of datetime or jdISO 8601 UTC datetime
jdnumberOne of datetime or jdJulian Day in UT1
latnumberYesObserver latitude
lonnumberYesObserver longitude
bodiesstringNo"planets"Comma-separated body names (must include mean_node or true_node)
systemstringNo"placidus"House system
siderealstringNoAyanamsha for sidereal mode
nodestringNo"mean_node"Node body for rotation: "mean_node" or "true_node"
aspectsstringNoMajor 7Comma-separated aspect types
orbnumberNoGlobal orb override in degrees

The bodies list must include mean_node or true_node. The default "planets" preset includes mean_node. If you specify a custom body list without either node, the API returns no_north_node.

How it works

  1. Compute a standard natal chart for the given datetime and location
  2. Find the North Node's ecliptic longitude
  3. Subtract that longitude from every position (planets, cusps, angles)
  4. The result: North Node is at 0° Aries, and all other positions are measured relative to it

The rotation is uniform, so every angular relationship survives it: the aspects array is the natal chart's set of aspects (recomputed from the rotated longitudes, so the angles are the ones you can read off this response), and parallels are the natal parallels, because declination is not rotated at all. Each body's house is its natal house — the cusps turned with the bodies — and its latitude, speed, declination, and retrograde flag are untouched. Only longitudes, signs, and sign degrees change. patterns=true finds the natal patterns.

house_position_mode=mundane and dignities=true are rejected with invalid_parameter: draconic longitudes are rotated out of the tropical frame, so a draconic chart's house placements equal the natal chart's and its dignities have no meaning in the rotated signs — request mundane positions or dignities on the natal chart instead.

Response

The response has the same structure as /v1/natal-chart, with chart_type set to "draconic" and metadata.source recording the node used and its natal longitude — the amount every position was turned by.

JSON
{
  "data": {
    "chart_type": "draconic",
    "positions": [
      {
        "body": "sun",
        "longitude": 134.705,
        "sign": "leo",
        "sign_degree": 14.705,
        "house": 9,
        "..."
      },
      {
        "body": "mean_node",
        "longitude": 0.0,
        "sign": "aries",
        "sign_degree": 0.0,
        "house": 4,
        "..."
      }
    ],
    "houses": { "..." },
    "aspects": [ "..." ],
    "parallels": [],
    "metadata": {
      "source": { "type": "draconic", "node_body": "mean_node", "node_longitude": 309.684 },
      "..."
    }
  },
  "meta": { "..." }
}

The node body is always at exactly 0.0° (0° Aries). In sidereal mode the node and every other position are sidereal before the rotation, so the node still lands on 0° and the rotation is by the sidereal node longitude.

Examples

Basic draconic chart

Bash
curl "https://api.morphemeris.com/v1/draconic?datetime=1990-06-15T18:30:00Z&lat=40.7128&lon=-74.006" \
  -H "Authorization: Bearer morphemeris_live_YOUR_KEY"
javascript
const res = await fetch(
  "https://api.morphemeris.com/v1/draconic?datetime=1990-06-15T18:30:00Z&lat=40.7128&lon=-74.006",
  { headers: { Authorization: "Bearer morphemeris_live_YOUR_KEY" } }
);
const { data } = await res.json();
Python
import requests

res = requests.get(
    "https://api.morphemeris.com/v1/draconic",
    params={"datetime": "1990-06-15T18:30:00Z", "lat": 40.7128, "lon": -74.006},
    headers={"Authorization": "Bearer morphemeris_live_YOUR_KEY"},
)
data = res.json()

Using true node for rotation

Bash
curl "https://api.morphemeris.com/v1/draconic?datetime=1990-06-15T18:30:00Z&lat=40.7128&lon=-74.006&node=true_node&bodies=sun,moon,mercury,venus,mars,jupiter,saturn,true_node" \
  -H "Authorization: Bearer morphemeris_live_YOUR_KEY"

Tips

  • Compare draconic positions to tropical positions for insight into the relationship between the "soul" chart and the "personality" chart.
  • Draconic charts are often used in synastry — compare one person's draconic chart to the other's tropical chart using separate API calls.
  • The true_node oscillates more than the mean_node (by about ±1.5°), which slightly changes all draconic positions.