/v1/western/composite/chartWestern · Composite · Chart API
Composite midpoint chart for two natals.
About the engine
Part of the Western engine
22 Western/tropical endpoints: natal charts in Placidus / Koch / Whole-sign (decomposed into chart, planets, houses, aspects), full transit-to-natal feeds, synastry + composite for couples, solar return + secondary progressions, lunar metrics with void-of-course, sun-sign + love daily horoscopes, plus Western zodiac compatibility and the Chinese zodiac year/forecast endpoints.
Request
Try it from the command line
curl -X POST 'https://api.astronode.dev/v1/western/composite/chart' \
-H 'Authorization: Bearer aie_test_REPLACE_WITH_YOUR_API_KEY' \
-H 'Accept: application/json' \
-H 'Content-Type: application/json' \
--data '{
"person_a": {
"date": "1993-07-04",
"time": "09:27:11",
"tz_offset_minutes": 330,
"lat": 31.7473,
"lng": 77.7754
},
"person_b": {
"date": "1994-11-22",
"time": "18:45:00",
"tz_offset_minutes": 330,
"lat": 28.6139,
"lng": 77.209
}
}'Paste and run - this is the exact payload our live playground sends to this endpoint, so it is valid against the current schema. Every AstroNode endpoint needs a bearer token from your dashboard. Test keys (aie_test_*) work on the free tier - 1,000 requests / month, no card.
Request schema
Fields POST /v1/western/composite/chart accepts
| Field | Type | Notes |
|---|---|---|
person_arequired | object | - |
person_a.daterequired | string | pattern ^\d{4}-\d{2}-\d{2}$ e.g. |
person_a.timerequired | string | pattern ^\d{2}:\d{2}(:\d{2})?$ e.g. |
person_a.tz_offset_minutesrequired | integer | Offset from UTC in minutes (e.g., 330 for IST) -840..840 e.g. |
person_a.latrequired | number | -90..90 e.g. |
person_a.lngrequired | number | -180..180 e.g. |
person_brequired | object | - |
person_b.daterequired | string | pattern ^\d{4}-\d{2}-\d{2}$ e.g. |
person_b.timerequired | string | pattern ^\d{2}:\d{2}(:\d{2})?$ e.g. |
person_b.tz_offset_minutesrequired | integer | Offset from UTC in minutes (e.g., 330 for IST) -840..840 e.g. |
person_b.latrequired | number | -90..90 e.g. |
person_b.lngrequired | number | -180..180 e.g. |
include_minor_aspects | boolean | - |
Generated from the same OpenAPI 3.1 document the API validates against, so this table cannot drift from the endpoint without the build failing.
Response
What you get back
Every AstroNode response uses the same envelope: request_id, data (the endpoint-specific payload), interpretation (optional narrative block), and meta (engine version + computed_at timestamp). This endpoint documents 200, 400, 401, 429.
The data payload for POST /v1/western/composite/chart is not yet broken out field by field in the published schema. The fastest way to see its exact shape is to run the call - the playground returns a live response with no signup, and the API reference carries the full document.
Engine highlights
What the Western engine ships
- Tropical zodiac with Placidus, Koch, Equal, Whole-sign house systems
- Decomposed natal endpoints - chart, planets-only, houses-only, aspects-only
- Transit endpoints decomposed the same way for narrow client integrations
- Synastry + composite for couples (chart + aspects for each)
- Secondary progression + solar return for annual outlook (chart / planets / houses / aspects)
- Lunar metrics - phase, illumination, sign, void-of-course window
- Daily + love horoscopes by sun sign (GET endpoints, top-of-funnel free)
- Chinese zodiac - animal + element + annual forecast for any year + sign
Related endpoints
Other Western endpoints
/v1/western/natal/chartTropical natal chart with house system.
/v1/western/natal/planetsNatal planet positions only.
/v1/western/natal/housesNatal house cusps with sign + degree.
/v1/western/natal/aspectsNatal aspect grid - major + optional minor aspects.
/v1/western/transit/chartTransiting planets overlaid on natal at chosen moment.
/v1/western/transit/planetsTransiting planet positions only at the chosen moment.
/v1/western/transit/aspectsTransit-to-natal aspect feed.
/v1/western/synastry/chartSynastry overlay of two natal charts.
/v1/western/synastry/aspectsSynastry cross-aspect grid + interpretations.
/v1/western/composite/aspectsAspect grid within the composite chart.
/v1/western/progression/chartDay-for-a-year secondary-progressed chart for target age.
/v1/western/progression/planetsSecondary-progressed planet positions for the target age.
/v1/western/progression/aspectsProgressed-to-natal aspect grid.
/v1/western/solar-return/chartSolar return chart for a target return year.
/v1/western/solar-return/planetsSolar-return planet positions for the year.
/v1/western/solar-return/housesSolar-return house cusps.
/v1/western/solar-return/aspectsAspect grid within the solar-return chart.
/v1/western/lunar-metricsMoon phase, illumination %, sign, void-of-course window.
/v1/western/zodiac-compatibilitySun-sign × sun-sign compatibility score + narrative.
/v1/horoscope/daily/:signDaily horoscope for a Western sun sign.
/v1/horoscope/love/:signLove-themed daily horoscope for a Western sun sign.
/v1/horoscope/nakshatraDaily reading scoped to one of the 27 nakshatras.
/v1/western/chinese/zodiac/:yearChinese zodiac sign + element for a calendar year.
/v1/western/chinese/forecast/:sign/:yearAnnual forecast for a Chinese zodiac sign in a given year.
Ready to call POST /v1/western/composite/chart?
Free tier covers 1,000 requests / month. Razorpay-billed, GST-compliant invoices when you upgrade.
Informational, not predictive. Not medical, legal, or financial advice.