DESTINYAPI · Developer Portal

Natal Chart API

서양 점성술 출생 차트를 계산하는 API입니다. 천체 위치, 하우스, 앵글, 애스펙트 등 완전한 차트 정보를 제공합니다.

출생 차트 계산

POST/v1/astrology/natal-chart인증 필요

출생 정보를 기반으로 완전한 네이탈 차트를 계산합니다.

요청 파라미터

파라미터

이름타입필수설명
datetimestring필수

출생 날짜 및 시간 (ISO 8601 형식)

예시: 1990-06-15T14:30:00

locationobject필수

출생 위치 정보

location.latitudenumber필수

위도 (-90 ~ 90)

예시: 37.5665

location.longitudenumber필수

경도 (-180 ~ 180)

예시: 126.9780

location.elevationnumber선택

고도 (미터)

예시: 38

기본값: 0

location.timezonestring선택

IANA 타임존 (예: Asia/Seoul)

예시: Asia/Seoul

기본값: UTC

house_systemstring선택

하우스 시스템 (PLACIDUS, KOCH, WHOLE_SIGN 등)

예시: PLACIDUS

기본값: PLACIDUS

namestring선택

차트 이름

예시: John Doe Birth Chart

기본값: Natal Chart

include_asteroidsboolean선택

소행성 포함 여부

예시: false

기본값: false

요청 예제

curl -X POST https://api.destinyapi.com/v1/astrology/natal-chart \
  -H "X-API-Key: your_api_key_here" \
  -H "Content-Type: application/json" \
  -d '{
  "datetime": "1990-01-15T14:30:00",
  "location": {
    "latitude": 37.5665,
    "longitude": 126.978,
    "timezone": "Asia/Seoul",
    "elevation": 38
  },
  "house_system": "PLACIDUS",
  "name": "John Doe",
  "include_asteroids": false
}'

하우스 시스템

지원되는 하우스 시스템:

시스템설명
PLACIDUS가장 널리 사용되는 시간 기반 시스템 (기본값)
KOCHKoch 하우스 시스템
WHOLE_SIGN고대 점성술에서 사용하는 전체 사인 시스템
EQUAL상승점부터 30도씩 균등 분할
CAMPANUSCampanus 시스템
REGIOMONTANUSRegiomontanus 시스템

성공 응답

200 OK - 차트 계산 성공

응답 상태:200
{
  "success": true,
  "data": {
    "chart_info": {
      "name": "John Doe",
      "datetime": "1990-01-15T14:30:00",
      "location": {
        "latitude": 37.5665,
        "longitude": 126.978,
        "elevation": 38
      },
      "house_system": "PLACIDUS",
      "timezone": "Asia/Seoul"
    },
    "angles": {
      "asc": {
        "longitude": 73.80217769863685,
        "sign": "Gemini",
        "dms": "13° Gemini 48' 07\""
      },
      "mc": {
        "longitude": 321.51259762720684,
        "sign": "Aquarius",
        "dms": "21° Aquarius 30' 45\""
      }
    },
    "bodies": {
      "moon": {
        "longitude": 164.10728449894503,
        "latitude": -2.433219801367135,
        "distance": 0.0026239507561749147,
        "sign": "Virgo",
        "house": 4,
        "retrograde": false,
        "dms": "14° Virgo 06' 25\"",
        "speed": 12.572773570309437
      },
      "pluto": {
        "longitude": 227.42263468468818,
        "latitude": 15.37669864517166,
        "distance": 30.007005739975973,
        "sign": "Scorpio",
        "house": 6,
        "retrograde": false,
        "dms": "17° Scorpio 25' 20\"",
        "speed": 0.020466473597480217
      },
      "mercury": {
        "longitude": 281.5452507322837,
        "latitude": 3.37829136814258,
        "distance": 0.7050147477210029,
        "sign": "Capricorn",
        "house": 8,
        "retrograde": true,
        "dms": "11° Capricorn 32' 41\"",
        "speed": -0.7633419239937211
      },
      "mars": {
        "longitude": 259.71630173185815,
        "latitude": -0.18890186715558102,
        "distance": 2.2263250385699975,
        "sign": "Sagittarius",
        "house": 7,
        "retrograde": false,
        "dms": "19° Sagittarius 42' 58\"",
        "speed": 0.7117844995264022
      },
      "sun": {
        "longitude": 294.8024863243448,
        "latitude": -0.00008908560370540947,
        "distance": 0.9836363353585106,
        "sign": "Capricorn",
        "house": 8,
        "retrograde": false,
        "dms": "24° Capricorn 48' 08\"",
        "speed": 1.0182543072914996
      },
      "uranus": {
        "longitude": 276.59757302053856,
        "latitude": -0.2726160945577932,
        "distance": 20.314516054119306,
        "sign": "Capricorn",
        "house": 8,
        "retrograde": false,
        "dms": "06° Capricorn 35' 51\"",
        "speed": 0.057876678783941315
      },
      "neptune": {
        "longitude": 282.5556941535978,
        "latitude": 0.8457625771169008,
        "distance": 31.170544300803186,
        "sign": "Capricorn",
        "house": 8,
        "retrograde": false,
        "dms": "12° Capricorn 33' 20\"",
        "speed": 0.03720272361533716
      },
      "saturn": {
        "longitude": 287.28256992260805,
        "latitude": 0.2771488150757121,
        "distance": 11.000447376290355,
        "sign": "Capricorn",
        "house": 8,
        "retrograde": false,
        "dms": "17° Capricorn 16' 56\"",
        "speed": 0.11785094930019113
      },
      "venus": {
        "longitude": 300.84613239834005,
        "latitude": 5.345328409295521,
        "distance": 0.2685803172382466,
        "sign": "Aquarius",
        "house": 9,
        "retrograde": true,
        "dms": "00° Aquarius 50' 45\"",
        "speed": -0.5903041354031302
      },
      "jupiter": {
        "longitude": 93.39789745021899,
        "latitude": -0.08336863355896541,
        "distance": 4.22763815782696,
        "sign": "Cancer",
        "house": 1,
        "retrograde": true,
        "dms": "03° Cancer 23' 52\"",
        "speed": -0.11775938785376638
      },
      "true_node": {
        "longitude": 317.7080946575413,
        "latitude": 0,
        "distance": null,
        "sign": "Aquarius",
        "house": 9,
        "retrograde": true,
        "dms": "17° Aquarius 42' 28\"",
        "speed": -0.05294114231446656
      }
    },
    "houses": {
      "house_1": {
        "cusp_longitude": 73.80217763515988,
        "sign": "Gemini",
        "bodies": [
          "jupiter",
          "asc"
        ]
      },
      "house_2": {
        "cusp_longitude": 96.2296514991633,
        "sign": "Cancer",
        "bodies": []
      },
      "house_3": {
        "cusp_longitude": 117.44718533695762,
        "sign": "Cancer",
        "bodies": []
      },
      "house_4": {
        "cusp_longitude": 141.5125975648466,
        "sign": "Leo",
        "bodies": [
          "moon"
        ]
      },
      "house_5": {
        "cusp_longitude": 172.51731593092222,
        "sign": "Virgo",
        "bodies": []
      },
      "house_6": {
        "cusp_longitude": 212.55778173740327,
        "sign": "Scorpio",
        "bodies": [
          "pluto"
        ]
      },
      "house_7": {
        "cusp_longitude": 253.80217763515986,
        "sign": "Sagittarius",
        "bodies": [
          "mars"
        ]
      },
      "house_8": {
        "cusp_longitude": 276.2296514991633,
        "sign": "Capricorn",
        "bodies": [
          "mercury",
          "sun",
          "uranus",
          "neptune",
          "saturn"
        ]
      },
      "house_9": {
        "cusp_longitude": 297.4471853369576,
        "sign": "Capricorn",
        "bodies": [
          "venus",
          "true_node"
        ]
      },
      "house_10": {
        "cusp_longitude": 321.5125975648466,
        "sign": "Aquarius",
        "bodies": [
          "mc"
        ]
      },
      "house_11": {
        "cusp_longitude": 352.5173159309222,
        "sign": "Pisces",
        "bodies": []
      },
      "house_12": {
        "cusp_longitude": 32.557781737403275,
        "sign": "Taurus",
        "bodies": []
      }
    },
    "aspects": [
      {
        "body1": "asc",
        "body2": "mc",
        "aspect_type": "Trine",
        "orb": 8,
        "exact": false,
        "applying": null
      },
      {
        "body1": "jupiter",
        "body2": "true_node",
        "aspect_type": "Sesquiquadrate",
        "orb": 2.5,
        "exact": false,
        "applying": false
      },
      {
        "body1": "mars",
        "body2": "asc",
        "aspect_type": "Opposition",
        "orb": 8,
        "exact": false,
        "applying": null
      },
      {
        "body1": "mars",
        "body2": "mc",
        "aspect_type": "Sextile",
        "orb": 6,
        "exact": false,
        "applying": null
      },
      {
        "body1": "mars",
        "body2": "true_node",
        "aspect_type": "Sextile",
        "orb": 6,
        "exact": false,
        "applying": true
      },
      {
        "body1": "mercury",
        "body2": "asc",
        "aspect_type": "Quincunx",
        "orb": 3,
        "exact": false,
        "applying": null
      },
      {
        "body1": "mercury",
        "body2": "neptune",
        "aspect_type": "Conjunction",
        "orb": 8,
        "exact": false,
        "applying": true
      },
      {
        "body1": "mercury",
        "body2": "saturn",
        "aspect_type": "Conjunction",
        "orb": 8,
        "exact": false,
        "applying": true
      },
      {
        "body1": "mercury",
        "body2": "uranus",
        "aspect_type": "Conjunction",
        "orb": 8,
        "exact": false,
        "applying": false
      },
      {
        "body1": "moon",
        "body2": "asc",
        "aspect_type": "Square",
        "orb": 8,
        "exact": false,
        "applying": null
      },
      {
        "body1": "moon",
        "body2": "jupiter",
        "aspect_type": "Quintile",
        "orb": 1.5,
        "exact": false,
        "applying": false
      },
      {
        "body1": "moon",
        "body2": "mars",
        "aspect_type": "Square",
        "orb": 8,
        "exact": false,
        "applying": false
      },
      {
        "body1": "moon",
        "body2": "mercury",
        "aspect_type": "Trine",
        "orb": 9,
        "exact": false,
        "applying": true
      },
      {
        "body1": "moon",
        "body2": "neptune",
        "aspect_type": "Trine",
        "orb": 9,
        "exact": false,
        "applying": true
      },
      {
        "body1": "moon",
        "body2": "pluto",
        "aspect_type": "Sextile",
        "orb": 7,
        "exact": false,
        "applying": false
      },
      {
        "body1": "moon",
        "body2": "saturn",
        "aspect_type": "Trine",
        "orb": 9,
        "exact": false,
        "applying": false
      },
      {
        "body1": "moon",
        "body2": "uranus",
        "aspect_type": "Trine",
        "orb": 9,
        "exact": false,
        "applying": true
      },
      {
        "body1": "moon",
        "body2": "venus",
        "aspect_type": "Sesquiquadrate",
        "orb": 2.5,
        "exact": false,
        "applying": false
      },
      {
        "body1": "neptune",
        "body2": "asc",
        "aspect_type": "Quincunx",
        "orb": 3,
        "exact": false,
        "applying": null
      },
      {
        "body1": "neptune",
        "body2": "saturn",
        "aspect_type": "Conjunction",
        "orb": 8,
        "exact": false,
        "applying": true
      },
      {
        "body1": "pluto",
        "body2": "jupiter",
        "aspect_type": "Sesquiquadrate",
        "orb": 2.5,
        "exact": false,
        "applying": false
      },
      {
        "body1": "pluto",
        "body2": "mc",
        "aspect_type": "Square",
        "orb": 7,
        "exact": false,
        "applying": null
      },
      {
        "body1": "pluto",
        "body2": "mercury",
        "aspect_type": "Sextile",
        "orb": 6,
        "exact": false,
        "applying": true
      },
      {
        "body1": "pluto",
        "body2": "neptune",
        "aspect_type": "Sextile",
        "orb": 6,
        "exact": false,
        "applying": false
      },
      {
        "body1": "pluto",
        "body2": "saturn",
        "aspect_type": "Sextile",
        "orb": 6,
        "exact": false,
        "applying": false
      },
      {
        "body1": "pluto",
        "body2": "true_node",
        "aspect_type": "Square",
        "orb": 7,
        "exact": false,
        "applying": false
      },
      {
        "body1": "pluto",
        "body2": "venus",
        "aspect_type": "Quintile",
        "orb": 1.5,
        "exact": false,
        "applying": false
      },
      {
        "body1": "saturn",
        "body2": "true_node",
        "aspect_type": "Semisextile",
        "orb": 2,
        "exact": false,
        "applying": false
      },
      {
        "body1": "sun",
        "body2": "saturn",
        "aspect_type": "Conjunction",
        "orb": 10,
        "exact": false,
        "applying": true
      },
      {
        "body1": "sun",
        "body2": "venus",
        "aspect_type": "Conjunction",
        "orb": 10,
        "exact": false,
        "applying": false
      },
      {
        "body1": "true_node",
        "body2": "asc",
        "aspect_type": "Trine",
        "orb": 8,
        "exact": false,
        "applying": null
      },
      {
        "body1": "true_node",
        "body2": "mc",
        "aspect_type": "Conjunction",
        "orb": 8,
        "exact": false,
        "applying": null
      },
      {
        "body1": "uranus",
        "body2": "jupiter",
        "aspect_type": "Opposition",
        "orb": 8,
        "exact": false,
        "applying": true
      },
      {
        "body1": "uranus",
        "body2": "mc",
        "aspect_type": "Semisquare",
        "orb": 2.5,
        "exact": false,
        "applying": null
      },
      {
        "body1": "uranus",
        "body2": "neptune",
        "aspect_type": "Conjunction",
        "orb": 8,
        "exact": false,
        "applying": false
      },
      {
        "body1": "venus",
        "body2": "asc",
        "aspect_type": "Sesquiquadrate",
        "orb": 2.5,
        "exact": false,
        "applying": null
      },
      {
        "body1": "venus",
        "body2": "jupiter",
        "aspect_type": "Quincunx",
        "orb": 3,
        "exact": false,
        "applying": true
      },
      {
        "body1": "jupiter",
        "body2": "asc",
        "aspect_type": "Parallel",
        "orb": 1,
        "exact": false,
        "applying": null
      },
      {
        "body1": "mars",
        "body2": "asc",
        "aspect_type": "Contra-Parallel",
        "orb": 1,
        "exact": false,
        "applying": null
      },
      {
        "body1": "mars",
        "body2": "jupiter",
        "aspect_type": "Contra-Parallel",
        "orb": 1,
        "exact": false,
        "applying": null
      },
      {
        "body1": "mars",
        "body2": "uranus",
        "aspect_type": "Parallel",
        "orb": 1,
        "exact": false,
        "applying": null
      },
      {
        "body1": "neptune",
        "body2": "asc",
        "aspect_type": "Contra-Parallel",
        "orb": 1,
        "exact": false,
        "applying": null
      },
      {
        "body1": "neptune",
        "body2": "saturn",
        "aspect_type": "Parallel",
        "orb": 1,
        "exact": true,
        "applying": null
      },
      {
        "body1": "saturn",
        "body2": "asc",
        "aspect_type": "Contra-Parallel",
        "orb": 1,
        "exact": false,
        "applying": null
      },
      {
        "body1": "sun",
        "body2": "asc",
        "aspect_type": "Contra-Parallel",
        "orb": 1.5,
        "exact": false,
        "applying": null
      },
      {
        "body1": "sun",
        "body2": "neptune",
        "aspect_type": "Parallel",
        "orb": 1.5,
        "exact": false,
        "applying": null
      },
      {
        "body1": "sun",
        "body2": "saturn",
        "aspect_type": "Parallel",
        "orb": 1.5,
        "exact": false,
        "applying": null
      },
      {
        "body1": "uranus",
        "body2": "jupiter",
        "aspect_type": "Contra-Parallel",
        "orb": 1,
        "exact": false,
        "applying": null
      },
      {
        "body1": "venus",
        "body2": "mc",
        "aspect_type": "Parallel",
        "orb": 1,
        "exact": false,
        "applying": null
      },
      {
        "body1": "venus",
        "body2": "true_node",
        "aspect_type": "Parallel",
        "orb": 1,
        "exact": false,
        "applying": null
      }
    ],
    "dignities": {
      "moon": {
        "essential_dignities": {
          "rulership": null,
          "exaltation": null,
          "triplicity": "Moon",
          "term": null,
          "face": null,
          "detriment": null,
          "fall": null
        },
        "is_peregrine": false,
        "lilly_score": 3
      },
      "mercury": {
        "essential_dignities": {
          "rulership": null,
          "exaltation": null,
          "triplicity": null,
          "term": null,
          "face": null,
          "detriment": null,
          "fall": null
        },
        "is_peregrine": true,
        "lilly_score": 0
      },
      "mars": {
        "essential_dignities": {
          "rulership": null,
          "exaltation": null,
          "triplicity": null,
          "term": null,
          "face": null,
          "detriment": null,
          "fall": null
        },
        "is_peregrine": true,
        "lilly_score": 0
      },
      "sun": {
        "essential_dignities": {
          "rulership": null,
          "exaltation": null,
          "triplicity": null,
          "term": null,
          "face": "Sun",
          "detriment": null,
          "fall": null
        },
        "is_peregrine": false,
        "lilly_score": 1
      },
      "saturn": {
        "essential_dignities": {
          "rulership": "Saturn",
          "exaltation": null,
          "triplicity": null,
          "term": null,
          "face": null,
          "detriment": null,
          "fall": null
        },
        "is_peregrine": false,
        "lilly_score": 5
      },
      "venus": {
        "essential_dignities": {
          "rulership": null,
          "exaltation": null,
          "triplicity": null,
          "term": null,
          "face": "Venus",
          "detriment": null,
          "fall": null
        },
        "is_peregrine": false,
        "lilly_score": 1
      },
      "jupiter": {
        "essential_dignities": {
          "rulership": null,
          "exaltation": "Jupiter",
          "triplicity": null,
          "term": null,
          "face": null,
          "detriment": null,
          "fall": null
        },
        "is_peregrine": false,
        "lilly_score": 4
      }
    }
  },
  "message": "Natal chart calculated successfully",
  "timestamp": "2025-11-12T03:59:42.782002",
  "usage_info": {
    "feature": "natal_chart",
    "user": "internal",
    "used": 0,
    "limit": 999999,
    "remaining": 999999
  }
}

응답 구조

  • chart_info: 차트 메타데이터 (이름, 날짜, 시간, 위치, 하우스 시스템)
  • angles: 주요 앵글 정보 (객체의 키는 소문자 ID)
    • asc (Ascendant), mc (Midheaven), dsc (Descendant), ic (Imum Coeli)
    • 각 앵글의 경도(longitude), 별자리(sign), DMS 형식(dms) 포함
  • bodies: 각 천체의 위치, 별자리, 하우스, 역행 여부 (객체의 키는 소문자 ID)
    • 지원 천체: sun, moon, mercury, venus, mars, jupiter, saturn, uranus, neptune, pluto
    • 소행성 (옵션): chiron, north_node, south_node
    • 각 천체는 경도(longitude), 위도(latitude), 거리(distance), 별자리(sign), 하우스(house), 역행 여부(retrograde), DMS 형식(dms), 속도(speed) 포함
  • houses: 12하우스 정보 (house_1 ~ house_12)
    • 각 하우스의 커스프 경도(cusp_longitude), 별자리(sign), 하우스 내 천체 목록(bodies)
    • bodies 배열의 요소는 천체 ID (소문자, 예: ["sun", "mercury"])
  • aspects: 천체 간 주요 애스펙트 (Conjunction, Sextile, Square, Trine, Opposition)
    • body1, body2: 애스펙트를 형성하는 두 천체 (소문자 ID, 예: "sun", "moon")
    • aspect_type: 애스펙트 종류
    • orb: 정확한 각도와의 차이
    • exact: 정확한 애스펙트 여부
    • applying: 애스펙트가 형성 중인지 분리 중인지
  • dignities: 각 천체의 에센셜 디그니티 정보 (옵션, 키는 소문자 ID)
    • essential_dignities: 디그니티 목록 (Domicile, Exaltation 등)
    • is_peregrine: Peregrine 상태 여부
    • lilly_score: William Lilly의 디그니티 점수

에러 응답

400 Bad Request - 잘못된 날짜 형식

응답 상태:400
{
  "success": false,
  "error": {
    "code": "INVALID_DATETIME",
    "message": "Invalid datetime format. Use ISO format: YYYY-MM-DDTHH:MM:SS"
  }
}

400 Bad Request - 잘못된 위치 정보

응답 상태:400
{
  "success": false,
  "error": {
    "code": "INVALID_LOCATION",
    "message": "Latitude must be between -90 and 90"
  }
}

데모 차트

GET/v1/astrology/natal-chart/demo인증 필요

API 테스트를 위한 샘플 출생 차트를 반환합니다. (1990년 1월 1일 12시, 서울)

요청 예제

curl -X GET https://api.destinyapi.com/v1/astrology/natal-chart/demo \
  -H "X-API-Key: your_api_key_here"

데모 엔드포인트는 파라미터 없이 고정된 샘플 차트를 반환하므로, API를 빠르게 테스트할 수 있습니다.

일반적인 에러

에러 코드설명해결 방법
INVALID_DATETIME날짜/시간 형식이 잘못됨ISO 8601 형식 (YYYY-MM-DDTHH:MM:SS) 사용
INVALID_LOCATION위치 정보 범위 초과위도: -90~90, 경도: -180~180 확인
INVALID_HOUSE_SYSTEM지원하지 않는 하우스 시스템지원되는 하우스 시스템 목록 참고
UNAUTHORIZEDAPI 키가 유효하지 않음API 키 확인 및 재발급
RATE_LIMIT_EXCEEDED요청 제한 초과요청 제한 리셋 시간 대기 또는 플랜 업그레이드

다음 단계

Natal Chart API | Destiny Engine API