Developers

Vedic Astrology REST API

The same deterministic, license-clean engine that powers this site, as a white-label JSON API. Panchānga, sidereal natal charts, the muhūrta finder and Ashtakoota compatibility — no ephemeris wrangling, no data stored. Authenticate with an API key and call the pure endpoints below.

Authentication

Every request carries your key in the Authorization header:

Authorization: Bearer ak_your_key_here

The developer API is free while in preview; it will require a Plus/Pro plan later. Manage keys below once you’re signed in.

GET /api/v1/panchanga

Panchānga

The five limbs + sunrise/sunset/Rahu-Kālam for a place and instant.

curl "https://jothi.sh/api/v1/panchanga?lat=12.9716&lon=77.5946&tz=Asia/Kolkata&date=2026-07-08" \
  -H "Authorization: Bearer ak_your_key_here"
GET /api/v1/chart

Natal chart

A full sidereal D-1 chart: 9 grahas with sign/house/nakshatra/pada/dignity/retrograde, Lagna, houses.

curl "https://jothi.sh/api/v1/chart?year=1990&month=8&day=15&hour=6&minute=30&lat=12.9716&lon=77.5946&tz=Asia/Kolkata" \
  -H "Authorization: Bearer ak_your_key_here"
POST /api/v1/muhurta

Muhūrta finder

Top date+time windows ranked for a person’s chart across a range, for a chosen occasion.

curl -X POST "https://jothi.sh/api/v1/muhurta" \
  -H "Authorization: Bearer ak_your_key_here" -H "Content-Type: application/json" \
  -d '{"birth":{"year":1990,"month":8,"day":15,"hour":6,"minute":30,"lat":12.97,"lon":77.59,"tz":"Asia/Kolkata"},
       "occasion":"wedding","startDate":"2026-07-08","endDate":"2026-08-08",
       "timeStartMin":360,"timeEndMin":1080,
       "place":{"lat":12.97,"lon":77.59,"tz":"Asia/Kolkata"}}'
POST /api/v1/compatibility

Compatibility

Ashtakoota 36-guṇa match (8 kūṭas) + Manglik comparison for two charts. Advisory.

curl -X POST "https://jothi.sh/api/v1/compatibility" \
  -H "Authorization: Bearer ak_your_key_here" -H "Content-Type: application/json" \
  -d '{"groom":{"year":1990,"month":8,"day":15,"hour":6,"minute":30,"lat":12.97,"lon":77.59,"tz":"Asia/Kolkata"},
       "bride":{"year":1992,"month":3,"day":2,"hour":14,"minute":10,"lat":13.08,"lon":80.27,"tz":"Asia/Kolkata"}}'

SLM / training data

Grounded SLM training endpoints

The deterministic engine is the source of truth for building a small, grounded Vedic-astrology model. These endpoints expose everything a separate model-training project needs — the complete analysis facts for any chart, the sourced rule corpus, the groundedness checker (also the RLVR reward), the golden eval set, and a seeded synthetic-curriculum generator — all label-only, with no birth data stored. See the SLM API guide for the full workflow.

POST /api/v1/facts

Complete analysis (facts)

The single deterministic source of truth for a chart — every section the engine computes (planets, houses, yogas, doshas, all daśās, transits, vargas, remedies…). The LLM only re-narrates this.

curl -X POST "https://jothi.sh/api/v1/facts" \
  -H "Authorization: Bearer ak_your_key_here" -H "Content-Type: application/json" \
  -d '{"birth":{"year":1990,"month":8,"day":15,"hour":6,"minute":30,"lat":12.97,"lon":77.59,"tz":"Asia/Kolkata"},"text":true}'
GET /api/v1/rules

Rule corpus

The sourced, own-worded rule corpus + concept-graph edges the answers stand on (planet/house/yoga/dosha significations with citations).

curl "https://jothi.sh/api/v1/rules" \
  -H "Authorization: Bearer ak_your_key_here"
POST /api/v1/groundedness

Groundedness check

Verify a candidate answer against a chart’s facts — flags invented yogas, misplaced planets and fabricated citations. The same sieve used to gate training data and as the RLVR reward.

curl -X POST "https://jothi.sh/api/v1/groundedness" \
  -H "Authorization: Bearer ak_your_key_here" -H "Content-Type: application/json" \
  -d '{"answer":"Your chart has a strong Gajakesari yoga…","birth":{"year":1990,"month":8,"day":15,"hour":6,"minute":30,"lat":12.97,"lon":77.59,"tz":"Asia/Kolkata"}}'
GET /api/v1/evalset

Golden eval set

The fixed Ch-17 golden cases a model self-tests against — question + expected behaviour + engine-derived must-mention / must-not-claim (incl. the Gajakesari regression). Deterministic.

curl "https://jothi.sh/api/v1/evalset" \
  -H "Authorization: Bearer ak_your_key_here"
POST /api/v1/synthesize

Synthesize curriculum

Seeded + deterministic synthetic, label-only charts + their full ground-truth analysis, for training at scale. Also returns the diversity question bank. No PII.

curl -X POST "https://jothi.sh/api/v1/synthesize" \
  -H "Authorization: Bearer ak_your_key_here" -H "Content-Type: application/json" \
  -d '{"seed":1,"count":5}'

Your API keys