21 REST endpoints — sidereal Vedic charts, tropical Western charts, tarot spreads, numerology and a chart-grounded AI Guide. One header, one base URL, copy-paste examples in three languages.
Compute divisional (varga) charts from a birth chart. Pass a single varga number or "all" for the standard 16-varga set (1, 2, 3, 4, 7, 9, 10, 12, 16, 20, 24, 27, 30, 40, 45, 60).
1 credit per call
Parameters
Name
Type
In
Required
Description
date
string
body
required
Birth date, YYYY-MM-DD
time
string
body
optional
Birth time, HH:MM (24h)
time_unknown
boolean
body
optional
Set true when birth time is unknown
latitude
number
body
required
Birth latitude, −90 to 90
longitude
number
body
required
Birth longitude, −180 to 180
timezone
string
body
optional
IANA timezone, e.g. Asia/Kolkata (default UTC)
ayanamsa
string
body
optional
lahiri (default), raman, krishnamurti or fagan_bradley
{
"chart": {
"sun": {
"sign": "Taurus",
"degree": 24.5,
"house": 2
},
"moon": {
"sign": "Cancer",
"degree": 3.1,
"house": 4
},
"ascendant": {
"sign": "Virgo",
"degree": 17.8
},
"aspects": [
{
"planets": [
"Sun",
"Moon"
],
"aspect": "trine",
"orb": 2.3
}
]
},
"interpretation": {
"sun_line": "With the Sun in Taurus, your core identity is steady, sensual and built to last.",
"moon_line": "A Cancer Moon gives you deep emotional tides and a fierce need for home."
}
}
Try it — paste your own key from Developers → API Keys in place of kundli_abc123... and run the snippet against https://api-rho-eight-42.vercel.app.
{
"sign": "Taurus",
"date": "2026-10-15",
"headline": "Steady wins the day",
"love": "An honest conversation deepens a bond.",
"career": "Finish the detail work you've been avoiding.",
"wellness": "Protect your sleep like a ritual.",
"lucky_number": 6,
"lucky_color": "emerald"
}
Try it — paste your own key from Developers → API Keys in place of kundli_abc123... and run the snippet against https://api-rho-eight-42.vercel.app.
Draw cards for a spread. Omit cards for a random server draw, or pass user-picked card ids from your own interactive fan. Premium spreads return a full AI interpretation; the single-card daily draw returns a free teaser.
Draw a clarifying card that builds on an existing reading — free, deterministic, zero AI cost. Already-drawn cards are excluded so the clarifier is always new.
1 credit per call
Parameters
Name
Type
In
Required
Description
original_cards
string[]
body
optional
Card names already drawn (excluded from the clarifying draw)
original_question
string
body
optional
The querent's original question for context
language
string
body
optional
Two-letter language code (default en)
Example request
cURL
curl -X POST "https://api-rho-eight-42.vercel.app/api/v1/tarot/readings/clarify" \
-H "X-API-Key: kundli_abc123..." \
-H "Content-Type: application/json" \
-d '{
"original_cards": [
"The Hermit",
"Ace of Pentacles"
],
"original_question": "What should I focus on this month?",
"language": "en"
}'
Example response
JSON
{
"card_name": "The Star",
"orientation": "upright",
"narrative": "The Star appears upright as your clarifying card — its themes are hope, renewal, inspiration.",
"combination": "When we place The Star beside The Hermit, the story deepens...",
"followups": [
"What would hope look like as a daily practice?"
],
"actions": [
"Write down one thing you are quietly hoping for."
]
}
Try it — paste your own key from Developers → API Keys in place of kundli_abc123... and run the snippet against https://api-rho-eight-42.vercel.app.
{
"reading_id": "9f2a1c4e-6b3d-4a5f-8e7c-2d1a3b4c5d6e",
"interpretation": {
"summary": "A period of quiet preparation is paying off...",
"positions": [
{
"position": "Past",
"text": "The Hermit marks a retreat..."
}
]
}
}
Try it — paste your own key from Developers → API Keys in place of kundli_abc123... and run the snippet against https://api-rho-eight-42.vercel.app.
Send a message to the astrology Guide. Replies are grounded in chart context with deterministic intent handling; AI depth is used when available. Pass conversation history for multi-turn context.
2 credits per call
Parameters
Name
Type
In
Required
Description
message
string
body
required
User message, 1–2000 chars
language
string
body
optional
Two-letter language code (default en)
history
array
body
optional
Prior turns: [{role, content}]
Example request
cURL
curl -X POST "https://api-rho-eight-42.vercel.app/api/v1/guide/chat" \
-H "X-API-Key: kundli_abc123..." \
-H "Content-Type: application/json" \
-d '{
"message": "What does today hold for my career?",
"language": "en",
"history": [
{
"role": "user",
"content": "Tell me about my strengths"
}
]
}'