Skip to main content

The only B2B astrology API with AI-powered chatbot queries

Project description

Vedika Python SDK

Official Python SDK for the Vedika Astrology API - The only B2B astrology API with AI-powered chatbot queries.

PyPI version Python Versions License: MIT

🌟 What Makes Vedika Unique?

Vedika is the ONLY B2B astrology API that offers:

  • AI-Powered Chatbot Queries (conversational astrology questions)
  • Advanced Multi-Model AI (intelligent query routing)
  • Voice AI (v33: 3-tier voice interface with 22-language multilingual support)
  • Fast & Standard Speed Modes (1.5-3s fast queries vs 12-18s comprehensive)
  • Multi-Turn Conversations (maintain context via conversationId)
  • 108+ Traditional Features (birth charts, dashas, yogas, doshas, compatibility)
  • 97.2% Prediction Accuracy (vs 51% industry average)
  • 99.9% Uptime (3-tier ephemeris fallback)
  • 22 Language Support (including 11 Indian languages)

In summary: All the features of traditional astrology APIs, PLUS conversational AI capabilities no other provider has.

🚀 Quick Start

Installation

pip install vedika-sdk

Basic Usage

from vedika import VedikaClient

# Initialize client
client = VedikaClient(api_key="vk_test_your_api_key_here")

# Ask a conversational astrology question (UNIQUE to Vedika!)
response = client.ask_question(
    question="What are my career prospects for this year?",
    birth_details={
        "datetime": "1990-06-15T14:30:00+05:30",
        "latitude": 28.6139,
        "longitude": 77.2090,
        "timezone": "+05:30"
    },
    language="en",  # Supports 22 languages!
    speed="standard"  # 'fast' (1.5-3s) or 'standard' (12-18s, default)
)

print(response.answer)
print(f"Confidence: {response.confidence}")
print(f"Credits used: {response.credits_used}")
print(f"Conversation ID: {response.conversation_id}")  # Use for multi-turn

# Continue conversation
follow_up = client.ask_question(
    question="Tell me about my marriage prospects",
    birth_details=response.birth_details,
    conversation_id=response.conversation_id  # Maintains context
)

Output Example

Answer: Based on your birth chart analysis, this year shows strong career potential...
[Detailed astrological insights from 6 AI agents]

Confidence: 0.972
Credits used: 450
Processing time: 28.7 seconds

📚 Features

🤖 AI Chatbot Queries (Unique Feature!)

# Conversational astrology - No other API has this!
response = client.ask_question(
    question="When should I start my new business?",
    birth_details=birth_info,
    language="hi"  # Ask in Hindi!
)

📊 Birth Chart Analysis

# Generate complete birth chart
chart = client.get_birth_chart(
    datetime="1990-06-15T14:30:00+05:30",
    latitude=28.6139,
    longitude=77.2090,
    ayanamsa="lahiri"  # 8 ayanamsa systems supported
)

print(chart.planets)
print(chart.houses)
print(chart.ascendant)

🔮 Dasha Periods

# Get Vimshottari Dasha periods
dashas = client.get_dashas(birth_details=birth_info)

for dasha in dashas.mahadashas:
    print(f"{dasha.planet}: {dasha.start_date} to {dasha.end_date}")

💑 Compatibility Analysis

# Ashtakoota matching for marriage compatibility
compatibility = client.check_compatibility(
    person1_details=birth_info_1,
    person2_details=birth_info_2
)

print(f"Total score: {compatibility.total_score}/36")
print(f"Compatibility: {compatibility.compatibility_level}")

🌟 Yoga Detection

# Detect 300+ astrological yogas
yogas = client.detect_yogas(birth_details=birth_info)

print(f"Found {len(yogas.yogas)} yogas:")
for yoga in yogas.yogas:
    print(f"- {yoga.name}: {yoga.description}")

⚠️ Dosha Analysis

# Check for Kaal Sarp, Mangal, Sade Sati doshas
doshas = client.analyze_doshas(birth_details=birth_info)

if doshas.kaal_sarp_dosha.present:
    print("Kaal Sarp Dosha detected")
    print(f"Type: {doshas.kaal_sarp_dosha.type}")
    print(f"Remedies: {doshas.kaal_sarp_dosha.remedies}")

🎯 Muhurtha (Auspicious Timing)

# Find auspicious times for important events
muhurtha = client.get_muhurtha(
    date="2025-11-01",
    location={"latitude": 28.6139, "longitude": 77.2090},
    event_type="wedding"
)

print(f"Auspicious times: {muhurtha.good_times}")
print(f"Inauspicious times: {muhurtha.bad_times}")

🔢 Numerology

# 37 numerology calculations
numerology = client.get_numerology(
    name="John Doe",
    birth_date="1990-06-15"
)

print(f"Life Path Number: {numerology.life_path}")
print(f"Expression Number: {numerology.expression}")
print(f"Soul Urge Number: {numerology.soul_urge}")

🌍 Multi-Language Support

Vedika supports 22 languages:

# Ask in Hindi
response = client.ask_question(
    question="मेरी कुंडली में कौन से योग हैं?",
    birth_details=birth_info,
    language="hi"
)

# Ask in Tamil
response = client.ask_question(
    question="என் ஜாதகத்தில் என்ன யோகங்கள் உள்ளன?",
    birth_details=birth_info,
    language="ta"
)

Supported languages:

  • 🇮🇳 Indian: Hindi, Bengali, Telugu, Tamil, Gujarati, Kannada, Malayalam, Marathi, Punjabi, Odia, Assamese
  • 🌍 International: English, Spanish, French, German, Italian, Portuguese, Russian, Japanese, Korean, Chinese, Arabic

🎨 Advanced Features

Voice AI (New in v33)

# Stream voice response (Business/Enterprise plans only)
audio_stream = client.ask_voice(
    question="What are my career prospects?",
    birth_details=birth_info,
    tier="vedika-standard",  # $0.072/query: Nova3 STT + Qwen + Sonic3 TTS
    # or "vedika-native" ($0.040): Voxtral audio-native + OmniVoice TTS
    # or "vedika-jarvis" ($0.080): Deepgram + Qwen + Sonic3 streaming
    language="hi"  # 22 languages supported
)

# Rate limits per tier (Business 30/min, Enterprise 100/min)
# Access: Business ($120/mo) and Enterprise ($240/mo) plans only

Speed Modes

# Fast mode: 1.5-3 seconds, English only, ~700 word cap
fast_resp = client.ask_question(
    question="Quick career check?",
    birth_details=birth_info,
    speed="fast"  # Optimized for latency
)

# Standard mode: 12-18 seconds, all languages, full depth (default)
full_resp = client.ask_question(
    question="Full career analysis?",
    birth_details=birth_info,
    speed="standard"  # Comprehensive response
)

Streaming Responses (Real-Time)

# Stream responses for better UX
for chunk in client.ask_question_stream(
    question="What are my career prospects?",
    birth_details=birth_info,
    speed="standard"  # Fast mode not available on streaming
):
    print(chunk.text, end="", flush=True)

# Events: 'started', 'progress', 'synthesis', 'data_sources', 'billing_completed', 'completed', 'error'

Batch Processing

# Process multiple queries efficiently
queries = [
    {"question": "Career prospects?", "birth_details": birth1},
    {"question": "Marriage timing?", "birth_details": birth2},
    {"question": "Business success?", "birth_details": birth3}
]

results = client.batch_process(queries)

Caching (90% Cost Savings!)

# Vedika automatically caches repeated queries
# First query: Full cost
response1 = client.ask_question(question, birth_info)  # $0.52

# Subsequent queries with same birth details: 90% savings!
response2 = client.ask_question(another_question, birth_info)  # $0.05

📖 Complete Documentation

💰 Pricing

Token-based pricing - pay only for what you use:

Query Type Cost Tokens
Simple (daily horoscope) $0.19 ~500
Standard (birth chart) $0.35 ~800
Complex (comprehensive) $0.65 ~1,500

Free sandbox: Test with 65 mock endpoints at vedika.io/sandbox — no signup required. Production starts at $12/month.

See full pricing: https://vedika.io/pricing.html

🔧 Configuration

Environment Variables

export VEDIKA_API_KEY="vk_test_your_api_key_here"
export VEDIKA_API_URL="https://api.vedika.io"  # Optional

Client Options

client = VedikaClient(
    api_key="vk_test_...",
    timeout=60,  # Request timeout in seconds
    max_retries=3,  # Retry failed requests
    cache_enabled=True,  # Enable prompt caching for cost savings
    language="en"  # Default language for responses
)

🧪 Testing

# Install dev dependencies
pip install -e ".[dev]"

# Run tests
pytest

# Run tests with coverage
pytest --cov=vedika

# Run specific test
pytest tests/test_chatbot.py::test_ask_question

📝 Examples

Check out the examples/ directory:

  • basic_chatbot.py - Simple conversational astrology bot
  • birth_chart_analysis.py - Complete birth chart generation
  • compatibility_checker.py - Marriage compatibility analysis
  • dosha_detector.py - Comprehensive dosha analysis
  • muhurtha_finder.py - Find auspicious times
  • multi_language.py - Multi-language support demo
  • streaming_example.py - Real-time streaming responses
  • flask_app.py - Flask web application example
  • django_integration.py - Django integration example

🤝 Contributing

We welcome contributions! See CONTRIBUTING.md.

Development Setup

# Clone repository
git clone https://github.com/vedika-intelligence/vedika-sdk-python.git
cd vedika-sdk-python

# Create virtual environment
python -m venv venv
source venv/bin/activate  # On Windows: venv\Scripts\activate

# Install in development mode
pip install -e ".[dev]"

# Run tests
pytest

🐛 Troubleshooting

"Invalid API Key"

Make sure you're using a valid API key from https://vedika.io/dashboard.html

Keys start with:

  • vk_test_ for testing
  • vk_live_ for production

"Insufficient Credits"

Add credits to your account: https://vedika.io/dashboard.html

"Request Timeout"

For complex queries, increase timeout:

client = VedikaClient(api_key="...", timeout=120)  # 2 minutes

"Rate Limit Exceeded"

You're sending too many requests. Wait a moment or upgrade your plan.

📊 Performance

  • Average response time: 2.14 seconds (simple queries)
  • Complex queries: 28-36 seconds (advanced AI processing)
  • Uptime: 99.9% (3-tier ephemeris fallback)
  • Accuracy: 97.2% prediction accuracy

🔒 Security

  • ✅ API keys encrypted in transit (HTTPS)
  • ✅ GDPR compliant
  • ✅ No data retention (unless explicitly enabled)
  • ✅ Security score: 95/100 (A grade)

📜 License

MIT License - see LICENSE file

🌐 Links

⭐ Support

If you find this SDK helpful, please:

  • ⭐ Star this repository
  • 🐛 Report issues on GitHub
  • 💬 Join our community discussions
  • 📧 Contact support@vedika.io for help

🎯 Why Choose Vedika?

Vedika vs Traditional Astrology APIs

Feature Vedika Others
AI Chatbot Queries ✅ YES (UNIQUE!) ❌ No
Birth Charts ✅ Yes ✅ Yes
Dashas ✅ Yes ✅ Yes
Compatibility ✅ Yes ✅ Yes
300+ Yogas ✅ Yes ⚠️ Limited
Dosha Analysis ✅ Complete ⚠️ Basic
Advanced AI Engine ✅ Yes ❌ No
22 Languages ✅ Yes ❌ English only
Streaming ✅ Yes ❌ No
Uptime 99.9% ~99%
Security Score 95/100 (A) Unknown
Unique Value Traditional + AI Traditional only

Bottom line: Vedika provides everything other astrology APIs offer, PLUS the only conversational AI chatbot capability in the market.


Built with ❤️ by Vedika Intelligence

The only B2B astrology API with AI-powered chatbot queries.

Get started: https://vedika.io

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

vedika_sdk-2.2.0.tar.gz (38.2 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

vedika_sdk-2.2.0-py3-none-any.whl (19.5 kB view details)

Uploaded Python 3

File details

Details for the file vedika_sdk-2.2.0.tar.gz.

File metadata

  • Download URL: vedika_sdk-2.2.0.tar.gz
  • Upload date:
  • Size: 38.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.14.2

File hashes

Hashes for vedika_sdk-2.2.0.tar.gz
Algorithm Hash digest
SHA256 a72efb9f4c55a3c6b652b2acb3301a3a3fffcfc2471f773b485de7a6c602e4c4
MD5 fbbac2e4d81b825a22f2ce76c65375b2
BLAKE2b-256 af21325941d63f590180e94b6de2435a39a3370898758758426930106c03af54

See more details on using hashes here.

File details

Details for the file vedika_sdk-2.2.0-py3-none-any.whl.

File metadata

  • Download URL: vedika_sdk-2.2.0-py3-none-any.whl
  • Upload date:
  • Size: 19.5 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.14.2

File hashes

Hashes for vedika_sdk-2.2.0-py3-none-any.whl
Algorithm Hash digest
SHA256 71ed76e110b9b1cfa4ca1b6fb2d384610dd2e865d533d093aab39d4611e7fe37
MD5 8a72712ee59e250a7003a06314bbd87a
BLAKE2b-256 f17334c75dd31d281f4745af63cfca6facab9701b40bb4034c13ccc83406b739

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page