Overview
Find auspicious times for important life events
POST /v2/astrology/auspicious-times
Pricing: $0.003 per request | Framework: Django | Auth: API Key required
Quick Start
1. Installation
pip install requests
2. Environment Setup
# .env
VEDIKA_API_KEY=your_api_key_here
Security: Never commit API keys to version control. Always use environment variables.
Complete Implementation
# muhurta/views.py
import os
import requests
from django.conf import settings
from django.http import JsonResponse
from django.views.decorators.http import require_http_methods
from django.views.decorators.csrf import csrf_exempt
import json
VEDIKA_BASE_URL = 'https://vedika-api-854222120654.us-central1.run.app'
def get_muhurta(params):
"""
Find auspicious times for important life events
"""
headers = {
'Content-Type': 'application/json',
'x-api-key': settings.VEDIKA_API_KEY
}
try:
response = requests.post(
f'{VEDIKA_BASE_URL}/v2/astrology/auspicious-times',
json=params,
headers=headers,
timeout=10
)
response.raise_for_status()
return response.json()
except requests.exceptions.RequestException as e:
raise Exception(f'Vedika API Error: {str(e)}')
@csrf_exempt
@require_http_methods(['POST'])
def muhurta_view(request):
"""
Django view for Muhurta Calculation
"""
try:
data = json.loads(request.body)
result = get_muhurta(data)
return JsonResponse(result, status=200)
except Exception as e:
return JsonResponse({'error': str(e)}, status=500)
# urls.py:
# from muhurta.views import muhurta_view
# urlpatterns = [
# path('api/muhurta/', muhurta_view, name='muhurta'),
# ]
# settings.py:
# VEDIKA_API_KEY = os.getenv('VEDIKA_API_KEY')
Request Parameters
| Parameter | Type | Required | Description |
|---|---|---|---|
date |
varies | Yes | See API documentation |
latitude |
varies | Yes | See API documentation |
longitude |
varies | Yes | See API documentation |
timezone |
varies | Yes | See API documentation |
eventType |
varies | Yes | See API documentation |
Error Handling
| Status Code | Error | Solution |
|---|---|---|
| 400 | Bad Request | Check request parameters and format |
| 401 | Unauthorized | Verify API key is correct |
| 402 | Payment Required | Insufficient balance - recharge at console.vedika.io |
| 429 | Rate Limit Exceeded | Implement exponential backoff or upgrade plan |
| 500 | Server Error | Retry after a few seconds |
Best Practices
- Secure API Keys: Always use environment variables, never hardcode
- Error Handling: Implement comprehensive error handling for all status codes
- Caching: Cache responses when appropriate to reduce costs
- Timeout: Set reasonable timeout values (10-30 seconds)
- Rate Limiting: Implement client-side rate limiting to avoid 429 errors
- Validation: Validate input parameters before making API calls
- Logging: Log API errors for debugging and monitoring
- Testing: Use sandbox endpoints for development and testing
Response Format
{
"success": true,
"data": {
// Endpoint-specific response data
},
"timestamp": "2026-01-07T10:30:00Z",
"cost": 0.003
}
Related Endpoints
Other Frameworks
Support
Need help integrating this endpoint?
- Email: support@vedika.io
- Documentation: vedika.io/docs
- API Console: console.vedika.io
- GitHub Examples: github.com/vedika-io/examples