The most comprehensive Astrology API for developers, 200+ REST endpoints covering Vedic astrology, Western astrology, horoscopes, kundli, tarot and numerology. One API key, global coverage, 25 languages.
The Astrology API by DivineAPI lets developers integrate astrology, horoscope, tarot and numerology features into any web or mobile application through a simple REST interface. One API key unlocks 200+ endpoints spanning Vedic, Western, KP and Jaimini systems, with global city/lat-long support and 25-language output.
Built for developers who need a production-grade astrology api without maintaining ephemeris tables, astronomical libraries, or translation pipelines themselves.
- 200+ REST endpoints covering Vedic astrology, Western astrology, KP system, Jaimini, numerology, tarot, matching, and PDF reports
- Global coverage: any city, any latitude/longitude, any timezone
- 25-language output: English, Hindi, Spanish, French, Arabic, Chinese, and more
- No SDK lock-in: plain JSON over HTTPS, works with every language
- Live status page: 99.9% uptime monitored at status.divineapi.com
- Postman collection included: import and run in seconds
- Daily, weekly, monthly and yearly horoscopes for all 12 zodiac signs
- Kundli generation and full birth-chart analysis
- Planetary positions, transits and retrograde tracking
- Match-making (Ashtakoot, Manglik, Dashakoot, composite friendship)
- Tarot, numerology, palmistry and Chinese astrology
- Panchang, festivals, auspicious timings (muhurat) and choghadiya
- PDF report generation (Kundali, Match-making, Natal, Vedic 5/10/15-year)
- Synastry, transits, progressions and lunar events
| Category | Endpoints | Docs |
|---|---|---|
| Horoscope & Tarot API | 29 endpoints | /horoscope-and-tarot-api |
| Indian (Vedic) Astrology API | 60+ endpoints | /indian-astrology-api |
| Western Astrology API | 50+ endpoints | /western-astrology-api |
| Numerology API | 25 endpoints | /numerology-api |
| Match-making & Compatibility | 15+ endpoints | /indian-astrology-api |
| PDF Reports | 15 endpoints | /pdf-reports |
Full reference, request/response samples, and live "try-it" console → developers.divineapi.com
- Get your API key → divineapi.com/register (14-day free trial, no credit card)
- Make your first call - see the flagship endpoint below
- Browse the full catalog → developers.divineapi.com
POST https://astroapi-3.divineapi.com/indian-api/v2/planetary-positionsAuthenticate with a Bearer token in the Authorization header and pass api_key in the request body (both required).
| Parameter | Type | Required | Description | Example |
|---|---|---|---|---|
api_key |
string | ✓ | Your DivineAPI key | YOUR_API_KEY |
full_name |
string | ✓ | Person's full name | Rahul Kumar |
day |
integer | ✓ | Date of birth (day) | 24 |
month |
integer | ✓ | Month of birth | 5 |
year |
integer | ✓ | Year of birth | 2023 |
hour |
integer | ✓ | Birth hour (24-h clock) | 14 |
min |
integer | ✓ | Birth minute | 40 |
sec |
integer | ✓ | Birth second | 43 |
gender |
string | ✓ | Gender | male |
place |
string | ✓ | Place of birth | New Delhi |
lat |
float | ✓ | Latitude | 28.7041 |
lon |
float | ✓ | Longitude | 77.1025 |
tzone |
float | ✓ | Timezone offset from UTC | 5.5 |
lan |
string | , | Language code (default en) |
en |
node_type |
string | , | truenode or meannode (default) |
meannode |
Full docs → developers.divineapi.com/indian-astrology-api/planetary-positions-kundli
{
"success": 1,
"data": {
"date": "2025-07-23",
"time": "03:45:00",
"latitude": "43.083714",
"longitude": "-79.065147",
"timezone": "-4",
"planets": [
{
"name": "Sun",
"full_degree": "96.5115748",
"speed": "0.9552920",
"is_retro": "false",
"is_combusted": "false",
"longitude": "6:30:41",
"sign": "Cancer",
"sign_no": 4,
"rashi_lord": "Moon",
"nakshatra": "Pushya",
"nakshatra_pada": 1,
"nakshatra_no": 8,
"nakshatra_lord": "Saturn",
"sub_lord": "Mercury",
"awastha": "Vriddha",
"karakamsha": "Dara",
"house": 2,
"type": "malefic",
"lord_of": "Third House",
"image": "https://divineapi.com/public/api-assets/assets/images/planets/Sun.png"
}
// ... Moon, Mercury, Venus, Mars, Jupiter, Saturn, Rahu, Ketu (same shape)
],
"ascendant": { "/* ascendant details, sign, degree, nakshatra, etc. */": "" }
}
}curl -X POST "https://astroapi-3.divineapi.com/indian-api/v2/planetary-positions" \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Content-Type: application/x-www-form-urlencoded" \
--data-urlencode "api_key=YOUR_API_KEY" \
--data-urlencode "full_name=Rahul Kumar" \
--data-urlencode "day=24" \
--data-urlencode "month=5" \
--data-urlencode "year=2023" \
--data-urlencode "hour=14" \
--data-urlencode "min=40" \
--data-urlencode "sec=43" \
--data-urlencode "gender=male" \
--data-urlencode "place=New Delhi" \
--data-urlencode "lat=28.7041" \
--data-urlencode "lon=77.1025" \
--data-urlencode "tzone=5.5"import requests
url = "https://astroapi-3.divineapi.com/indian-api/v2/planetary-positions"
headers = {
"Authorization": "Bearer YOUR_API_KEY",
"Content-Type": "application/x-www-form-urlencoded",
}
payload = {
"api_key": "YOUR_API_KEY",
"full_name": "Rahul Kumar",
"day": 24,
"month": 5,
"year": 2023,
"hour": 14,
"min": 40,
"sec": 43,
"gender": "male",
"place": "New Delhi",
"lat": 28.7041,
"lon": 77.1025,
"tzone": 5.5,
}
response = requests.post(url, headers=headers, data=payload)
print(response.json())const url = "https://astroapi-3.divineapi.com/indian-api/v2/planetary-positions";
const body = new URLSearchParams({
api_key: "YOUR_API_KEY",
full_name: "Rahul Kumar",
day: 24, month: 5, year: 2023,
hour: 14, min: 40, sec: 43,
gender: "male", place: "New Delhi",
lat: 28.7041, lon: 77.1025, tzone: 5.5,
});
const response = await fetch(url, {
method: "POST",
headers: {
"Authorization": "Bearer YOUR_API_KEY",
"Content-Type": "application/x-www-form-urlencoded",
},
body,
});
const data = await response.json();
console.log(data);// Node.js 18+ ships with fetch built-in, no dependencies needed.
async function getPlanetaryPositions() {
const url = "https://astroapi-3.divineapi.com/indian-api/v2/planetary-positions";
const body = new URLSearchParams({
api_key: "YOUR_API_KEY",
full_name: "Rahul Kumar",
day: 24, month: 5, year: 2023,
hour: 14, min: 40, sec: 43,
gender: "male", place: "New Delhi",
lat: 28.7041, lon: 77.1025, tzone: 5.5,
});
const res = await fetch(url, {
method: "POST",
headers: {
"Authorization": "Bearer YOUR_API_KEY",
"Content-Type": "application/x-www-form-urlencoded",
},
body,
});
const data = await res.json();
console.log(data);
}
getPlanetaryPositions();<?php
$url = "https://astroapi-3.divineapi.com/indian-api/v2/planetary-positions";
$payload = http_build_query([
"api_key" => "YOUR_API_KEY",
"full_name" => "Rahul Kumar",
"day" => 24,
"month" => 5,
"year" => 2023,
"hour" => 14,
"min" => 40,
"sec" => 43,
"gender" => "male",
"place" => "New Delhi",
"lat" => 28.7041,
"lon" => 77.1025,
"tzone" => 5.5,
]);
$ch = curl_init($url);
curl_setopt($ch, CURLOPT_POST, true);
curl_setopt($ch, CURLOPT_POSTFIELDS, $payload);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_HTTPHEADER, [
"Authorization: Bearer YOUR_API_KEY",
"Content-Type: application/x-www-form-urlencoded",
]);
$response = curl_exec($ch);
curl_close($ch);
echo $response;package main
import (
"fmt"
"io"
"net/http"
"net/url"
"strings"
)
func main() {
endpoint := "https://astroapi-3.divineapi.com/indian-api/v2/planetary-positions"
form := url.Values{}
form.Set("api_key", "YOUR_API_KEY")
form.Set("full_name", "Rahul Kumar")
form.Set("day", "24")
form.Set("month", "5")
form.Set("year", "2023")
form.Set("hour", "14")
form.Set("min", "40")
form.Set("sec", "43")
form.Set("gender", "male")
form.Set("place", "New Delhi")
form.Set("lat", "28.7041")
form.Set("lon", "77.1025")
form.Set("tzone", "5.5")
req, _ := http.NewRequest("POST", endpoint, strings.NewReader(form.Encode()))
req.Header.Set("Authorization", "Bearer YOUR_API_KEY")
req.Header.Set("Content-Type", "application/x-www-form-urlencoded")
resp, err := http.DefaultClient.Do(req)
if err != nil {
panic(err)
}
defer resp.Body.Close()
body, _ := io.ReadAll(resp.Body)
fmt.Println(string(body))
}- Full documentation → developers.divineapi.com
- API status → status.divineapi.com
- Postman collection → Run in Postman
- Changelog → developers.divineapi.com/changelog
- Support → [email protected]
Code samples on this page are free to copy into your own projects, no attribution required. Marketing copy, logos, and the DivineAPI name are © 2026 DivineAPI, all rights reserved.
For the terms that govern the API service itself, see divineapi.com/terms.
Questions, feature requests or partnership enquiries → [email protected]