Official Python and TypeScript clients covering the 10 most-used endpoints. Auto-retry on 429, typed exceptions, zero dependencies. Available on Developer plan and above.
pip install vedintel
Zero dependencies · Python 3.8+ · PyPI →
from vedintel import VedIntelClient
client = VedIntelClient("vai_pk_your_api_key")
# Get planetary positions
planets = client.planet_details(
dob="01/10/1990", tob="12:00",
lat=13.08, lon=80.27, tz=5.5
)
print(planets["0"]["zodiac"]) # Ascendant sign
# Kundali matching
match = client.kundali_matching(
"01/01/1990", "06:00", 13.0, 77.6, 5.5,
"15/06/1992", "10:30", 19.0, 72.8, 5.5,
)
print(match["total_points"]) # out of 36VedIntelClient(
api_key: str, # Required — starts with vai_pk_
base_url: str = "https://vedintelastroapi.com/api/v1",
timeout: int = 30, # Request timeout in seconds
ayanamsa: str = "lahiri" # lahiri | raman | kp | pushya_paksha | yukteshwar | fagan_bradley
# de_luce | suryasiddhanta | aryabhata | true_citra | true_revati | jn_bhasin
)| Method | Signature | Returns |
|---|---|---|
planet_details | planet_details(dob, tob, lat, lon, tz, lang=None) | dict — all 9 planets with sign, degree, house, nakshatra, retrograde |
ascendant | ascendant(dob, tob, lat, lon, tz, lang=None) | dict — lagna sign, degree, nakshatra, pada, lord |
mahadasha | mahadasha(dob, tob, lat, lon, tz) | list — full Vimshottari sequence with start/end dates |
current_mahadasha | current_mahadasha(dob, tob, lat, lon, tz) | dict — current Mahadasha + Antardasha with time remaining |
panchang | panchang(dob, tob, lat, lon, tz, lang=None) | dict — tithi, nakshatra, yoga, karana, vara |
kundali_matching | kundali_matching(dob1, tob1, lat1, lon1, tz1, dob2, tob2, lat2, lon2, tz2) | dict — 36-point Guna Milan score, percentage, compatibility |
kaalsarp_dosh | kaalsarp_dosh(dob, tob, lat, lon, tz) | dict — is_dosha_present, dosha_type, rahu_ketu_axis |
mangal_dosh | mangal_dosh(dob, tob, lat, lon, tz) | dict — is_dosha_present, score, factors, cancellation |
divisional_charts | divisional_charts(dob, tob, lat, lon, tz, chart_id='D9') | dict — planet positions in the requested divisional chart |
yoga_list | yoga_list(dob, tob, lat, lon, tz) | list — all detected yogas with name, strength, formed_by, description |
429s are auto-retried up to 4 times with exponential backoff. All exceptions carry status_code and remaining attributes.
from vedintel import (
VedIntelClient,
QuotaExhaustedError,
RateLimitError,
AuthError,
VedIntelError,
)
try:
result = client.planet_details(...)
except QuotaExhaustedError:
print("Upgrade your plan at vedintelastroapi.com/dashboard/plans")
except RateLimitError:
# Auto-retried 4x with backoff — only raised if all retries fail
print("Still rate limited after retries")
except AuthError:
print("Check your API key")
except VedIntelError as e:
print(f"API error {e.status_code}: {e}")