12 New Endpoints · UTC Time Standard · Panchang Accuracy
✦ New
Vrat calendar — /panchang/ekadashi-dates, /panchang/purnima-dates, /panchang/amavasya-dates: full year listing with traditional vrat names for any year
Auspicious Yogas scanner — /panchang/auspicious-yogas: monthly scan returning Amrit Siddhi, Sarvartha Siddhi, Ravi Yoga, Guru Pushya, and other high-value muhurta days
Full compatibility in one call — /matching/full-compatibility: Ashtakoot + Mangal Dosh + Papasamaya in a single response
Baby names from birth chart — /horoscope/baby-names: nakshatra-based syllable suggestions with meaning and gender
Prasna / Horary — /extended-horoscope/prasna-query: instant YES/UNLIKELY answer from the panchang of the query moment
Total: 127 live endpoints
✓ Fixed
UTC time standard — all time fields in panchang responses now return { utc: "HH:MM:SS", unix: N }. No local-time strings. Applies to: sunrise, sunset, moonrise, moonset, solar noon, hora muhurta, Amrit Kalam, abhijit muhurta, tithi/nakshatra/yoga ends_at. Use the unix timestamp to display in any timezone.
Moonrise returns the first moonrise after today's sunrise (Vedic convention) — matches Drikpanchang.com
Moonset uses SE_BIT_NO_REFRACTION — Vedic panchang convention, verified against Drikpanchang.com for 7 cities
Amrit Kalam computed entirely in Julian Day arithmetic — eliminates timezone drift for non-IST locations
v3.3.0Improvement2026-06-06
UX Overhaul — Cancellation, Annual Billing, Onboarding, Invoices, Status Page
✦ New
Annual/monthly billing toggle — 2 months free on all paid plans
Self-serve plan cancellation — schedules expiry at end of billing period, sends confirmation email
3-step onboarding checklist on dashboard — persisted in localStorage, auto-dismisses when complete
Professional HTML invoices — logo, CGST/SGST breakdown, PAID watermark, print-to-PDF ready
Status page: 30-day uptime history bars, linked from dashboard nav
Honest 23-Language Count · Changelog in Nav · Language Docs Table · Churn Detection Cron
✓ Fixed
Language count corrected to 23 — or/si/ne/th had zero native-script translations and silently fell back to Sanskrit; removed from LangCode, LANG_META, and all marketing copy
Homepage LANGUAGES list now correctly shows all 23 supported languages (was showing 21)
All "27 languages" references replaced with "23 languages" across 31 source files — stats strip, pricing, comparison tables, use-case pages, vs pages
✦ New
Changelog added to main navigation — visible on every page
Docs: Language Codes reference table — code, language name, native name, script, RTL flag — with sidebar anchor link
Docs: lang= parameter description updated to include language names next to codes (was a raw code list with no labels)
Owner daily digest — email to naidupredicts@gmail.com every morning: active users, new signups, all churn signals with user names and emails
All user churn emails are personal founder-to-developer tone with Discord link and direct reply-to-me instruction; 7-day Redis dedup prevents spam
v3.1.0Improvement2026-06-03
127-Endpoint Audit · 23-Language Wiring Across All Endpoints · PDF Reports Verified · Alternatives Page
✦ New
scripts/audit-all-endpoints.sh — automated audit of all 127 endpoints with monitor key and reference birth data; result: 108 PASS, 0 failures
/alternatives/vedicastroapi: Shadbala 49/49 accuracy proof section (8-card grid) + 8-question FAQ with JSON-LD schema for Google rich snippets
PDF reports confirmed production-ready end-to-end — generate → poll → real signed Supabase Storage URL; tested snapshot report (~90s, correct application/pdf)
↑ Improved
23-language wiring — 25 endpoints that used raw NextResponse.json() for success (bypassing translation) converted to apiSuccess(); covers panchang (sunrise/sunset/moon-rise/moon-set/solar-noon/moon-phase/hora-muhurta/transit/retrogrades/monthly/moon-calendar/festivals), matching (western/nakshatra/bulk-north/bulk-south), dashas (char-dasha-sub/yogini-dasha-sub), utilities (geo-search/geo-search-advanced/gem-details/radical-number/nakshatra-vastu), horoscope (planetary-aspects), parashari/career
Verified: lang=hi → Devanagari, lang=te → ధనస్సు, lang=kn → ಕನ್ಯಾ on all fixed endpoints
v3.0.0Major2026-06-02
Shadbala Full BPHS Rewrite · D9 Navamsa Fix · Pushya Paksha Ayanamsa · WordPress Plugin Published · Discord Community
✓ Fixed
D9 Navamsa formula corrected — sequential floor(absoluteDeg / 3.333) % 12; previous trikona formula was wrong; verified 7/7 exact against jyotishyamitra and VedicAstroAPI
This fix improves accuracy of all endpoints that use D9: divisional-charts, yoga-list, yoga-calculator, and any endpoint consuming navamsa position
↑ Improved
Shadbala full rewrite — B.V. Raman standard; 49/49 components verified within 2 Virupas of reference: Uccha (7/7 exact), Ojayugma (7/7 exact, D1+D9 independently), Kendra (7/7), Drekkana (7/7), Paksha (7/7), Ayana (7/7 within 0.5 via PyJHora Lagrange), Naisargika (7/7 exact), Saptavargaja (B.V. Raman Panchadha Maitri)
Admin: bulk delete for customer accounts — checkbox select, confirmation, removes user + API keys + usage history + transactions from Supabase
Discord community launched — discord.gg/Q5QpSUep; links added to SiteFooter, Docs page, Contact page, MCP page, and welcome email
Dasha UTC fix — getBirthDate() now uses Date.UTC(); eliminates ~1-day drift on IST machines
✦ New
Discord server live — discord.gg/Q5QpSUep — 3 categories: INFORMATION (welcome/announcements/changelog), DEVELOPERS (general/api-help/show-and-tell/bugs), COMMUNITY (introductions/feedback)
Pushya Paksha ayanamsa — lang param &ayanamsa=pushya_paksha now supported (SE_SIDM_TRUE_PUSHYA=29); PVR Narasimha Rao / Jagannatha Hora standard; Delta Cancri fixed at 16°00' Cancer; verified against PVR J2000 reference to 0.005°. Lahiri remains default.
WordPress plugin published to wordpress.org/plugins/vedintel-astro-widgets — v1.0.7; GPL-2.0 licensed; 6 shortcodes, 6 Gutenberg blocks, city autocomplete, 3 themes; no dev work required by site owners
40/40 endpoints verified live against VedicAstroAPI — 0 failures; 5 documented cosmetic differences (transliteration variants, not errors)
Admin: bulk delete for customer accounts — checkbox select, confirmation, removes user + API keys + usage history + transactions
v2.9.0Major2026-04-26
Giant Leap — /ai-chat · 8 Language Pages · 3 vs Pages · Sign Horoscopes · Homepage Overhaul
✦ New
/ai-chat — flagship product page for the embeddable AI chat widget: streaming SSE embed code generator, 9-row vs competitor table, full params reference, 6 use cases, 6 FAQs
horoscope-by-sign/daily, /weekly, /monthly — 3 new endpoints: sign-based horoscopes (no birth data needed, 12 zodiac signs, lucky_color/element/ruling_planet/best_dates)
6 new language landing pages: /languages/telugu, /kannada, /bengali, /malayalam, /marathi, /gujarati — native script, curl examples, FAQ, cross-linking
3 new competitor comparison pages: /vs/vedika (18 rows), /vs/kundliapi (17 rows), /vs/vedastro (16 rows with fair-framing banner)
Homepage: new AI Chat Widget spotlight section, new Explore grid (Products/Languages/Comparisons/Use Cases) surfacing all new pages
Homepage: 108→127 endpoints, removed all stale "Coming Soon" labels, comparison table rebuilt with 14 rows including new moats
Sitemap: 25 new URLs added — all new pages, language pages, vs pages, enterprise, android
↑ Improved
Homepage stats strip: "21 Languages" removed → "23 Languages" live stat added
MCP Server section on homepage: "Coming Q3 2026" → "Live" — Cursor, VS Code, Claude Desktop all marked Live
Language section on homepage: "Coming Soon — Phase 3" badge → "● Live Now — Pass &lang=XX" badge
Pricing page: all "116 endpoints" references updated to 127
Comparison table on homepage: Jagannatha Hora verified + AI chat widget + WordPress plugin + PDF reports + MCP added as separate rows
FEATURES grid on homepage: MCP "Coming Soon" → "Live", PDF "Coming Soon" → "Live", added AI Chat Widget and Sign-Based Horoscopes as new cards
JSON-LD schema on homepage: free plan "50 calls" bug fixed → 500, Developer plan added, 127 endpoints, embeddable widget in featureList
v2.8.0Major2026-04-25
API Key Security — Revoke Modal · Rotate with Usage Carry · 500 Calls Fix · GA4
✦ New
Revoke / Rotate modal — replaced browser confirm() with proper React modal: shows usage stats, 3 options (revoke only / rotate + carry usage / rotate + fresh quota), never silently deletes data
PATCH /api/auth/api-keys — new key rotation endpoint: creates new key with same plan/limits, optionally carries calls_used, revokes old. Usage history always preserved.
Google Analytics GA4 (G-TBQQSP5HJ1) added to root layout via next/script afterInteractive — fires on every page, zero render-blocking
Step-tagged exception logging in GET /api/auth/api-keys — pinpoints exact line of failure in try/catch
✓ Fixed
Free plan 50→500 calls in api-keys route — PLAN_LIMITS had calls:50 instead of 500; all new Free keys now correctly get 500/month
GET /api/auth/api-keys 500 error — decrypt failure (AES-256-GCM auth tag mismatch when VEDINTEL_API_SECRET rotated) now returns 410 with actionable message instead of 500
Dashboard showing 66+→127 endpoints — three places in dashboard/page.tsx still had old "66+" value
api.vedintelastroapi.com → vedintelastroapi.com — wrong subdomain corrected across 36 files via sed
v2.7.0Major2026-04-24
World-Class Engineering — 23 Languages · Security Hardening · Better Errors · Full OpenAPI
✦ New
27-language support — expanded from 5 to 23 languages: all 11 Indian scripts (hi/ta/te/sa/kn/ml/bn/gu/mr/pa/ur) + or/si/ne + 13 international (es/fr/de/pt/ar/id/th/it/nl/ru/ja/zh)
lang=auto smarter detection — now detects si (Sri Lanka), ne (Nepal), ur (Pakistan), bn (Bangladesh), ar (Middle East), id/th/ja/zh/ru by tz + coordinate ranges
Planets and signs fully translated in all 11 Indic languages and 13 international languages — native script + romanization
LANG_META fully populated for all 23 languages — name, script, rtl flag, native name
apiSuccess() wrapper — lang translation + rate headers + security headers in one call, wired into all 86 endpoints
OpenAPI spec updated to v2.7.0 — all 27 lang codes listed, romanized param documented
Full OpenAPI at /api/v1/openapi.json — 107 endpoints, all parameters, all error codes, Swagger UI compatible
↑ Improved
Security headers on every API response — X-Content-Type-Options: nosniff, X-Frame-Options: DENY, X-XSS-Protection, Referrer-Policy, Permissions-Policy, Cache-Control: no-store
Descriptive validation errors with examples — "dob must be in DD/MM/YYYY format (e.g. 15/08/1990)" instead of cryptic Zod output
Missing parameter message names the exact field — "Missing required parameter: \"dob\". Required: dob (DD/MM/YYYY), tob (HH:MM), lat, lon, tz"
ayanamsa validation now tells you exactly what is valid — "must be 'lahiri', 'raman', or 'kp'. Default is lahiri."
Year range enforcement — dob year must be 1800–2100; specific error message if out of range
Month/day range validation with exact value in error — "dob month \"13\" is invalid — must be 01–12"
Translation fallback chain: requested lang → Sanskrit → English — response never breaks for any language
v2.6.0Major2026-04-24
5-Language Support — Hindi, Tamil, Telugu, Sanskrit + lang=auto
✦ New
lang param on all endpoints — add &lang=hi/ta/te/sa to any API call for instant Vedic-aware translation
Static term lookup table — 300+ Vedic terms (planets, signs, nakshatras, houses, dashas, doshas, panchang) in 5 languages, zero API cost
Romanization support — add &romanized=1 to get native script + phonetic spelling side by side (e.g. "मेष (Mesha)")
lang=auto — pass &lang=auto and the API detects the right language from your tz + lat coordinates automatically
Fallback chain — requested language → Sanskrit → English, response never breaks if a term is missing
Language metadata in response — lang, script fields returned on every translated response
/api/v1/utilities/translate-terms — download the full term dictionary for any language in one call; cache once, translate client-side forever
category param on translate-terms — filter by planets, signs, nakshatras, houses, dashas, dignities, panchang, doshas, or misc
Sanskrit support — classical Devanagari script + IAST romanization for every term; unique among Vedic astrology APIs
lang wired into 4 core endpoints: planet-details, find-ascendant, panchang, current-mahadasha-full
↑ Improved
Translation is instant (static lookup, not Claude Haiku) — zero latency impact on API responses
27-language architecture in place — adding remaining 22 languages is a data-only operation, no code changes needed
Old Claude Haiku translation route upgraded to use static lookup — same interface, zero AI cost