Most astrology APIs look the same on the pricing page: planets, charts, a horoscope endpoint, a free tier. The differences show up after you ship, when a user in Toronto sees Delhi's Ekadashi, or a tithi end time is off by a day because the API assumed UTC. This checklist is the one we use ourselves. Each point says what to test, with a request you can run against any API.
1. Does it compute for the user's place, or for one city?
A tithi is a moment in the sky; the civil date it lands on depends on local sunrise. Ask for the same day in two cities and check that sunrise, tithi end time and Rahu Kaal all change. For Delhi on 15 January 2027 LifeAstroAPI returns sunrise 07:14:47, Shukla Saptami ending 14:13:59 and Revati nakshatra ending 23:50:58 (one call). If an API has no lat,lon and tz on its panchang endpoint, it is serving one city to everyone.
2. Are festival dates verified, and against what?
Festival rules are where most engines go wrong: Diwali needs Amavasya to cover the evening pradosh kaal, Ekadashi is taken at sunrise, Raksha Bandhan must avoid Bhadra. Ask what the dates were checked against and how many entries. We publish ours: 4,427 printed-calendar entries across 14 cities reproduced entry for entry, rerun as a test on every change (accuracy page). For Diwali 2027 in Delhi the API returns 29 October with the pradosh window 17:39–19:15 and the rule it applied (pradosh_overlap), so you can see why, not just what.
3. Can you audit the astronomy?
"Swiss Ephemeris" on a feature list is a start, not proof. Ask for a comparison against an independent reference you can rerun. Our published benchmark compares 240 planet positions with NASA JPL Horizons (median difference 0.05 arc-seconds), sunrise and sunset with JPL's limb crossing (within 9 seconds) and all 44 eclipses of 2021–2030 with NASA's catalog (all found, same type). The script and CSVs are on the accuracy page; run it with your own key.
4. Are the docs showing real responses?
Hand-written sample responses drift from the API. Pick an endpoint, run the documented request, and diff the field names. Every page in our reference shows a request that was actually executed and the response it returned, and the parameter table marks a parameter required only when the request fails without it.
5. Timezones: IANA names or offsets?
A fixed offset like +05:30 is fine for India and wrong for London in summer. The API should accept IANA names (America/Toronto) and apply daylight saving on the date you ask about. Test a date in July and one in December for the same city.
6. Which ayanamsa, and can you change it?
Sidereal longitudes depend on the ayanamsa. Lahiri is the common default in India; KP users want Krishnamurti. The value should be a parameter and the response should echo it, with the degree used.
7. Text in your users' languages
If you show readings and not only numbers, check whether narratives are written in Hindi, Tamil or Bengali by people, or machine-translated from English. Ask for a sample and read it.
8. Pricing that matches how apps call APIs
Calendar apps make many cheap calls; report generators make few expensive ones. Per-call credits with a visible cost per endpoint let you predict the bill. Check the free tier is enough for a prototype (ours is 1,500 credits a month, 10 credits for a panchang call).
9. Can an AI agent call it?
If you are building a chatbot or agent, an MCP server or tool definitions save you writing 300 wrappers. LifeAstroAPI ships an open-source MCP server with 310 tools for Claude Desktop, Cursor and Codex.
Run the checklist in ten minutes
# 1. location-aware panchang (compare two cities)
curl "https://api.lifeastroapi.com/v1/panchang/basic?date=2027-01-15&tz=Asia/Kolkata&lat=28.6139&lon=77.209" -H "Authorization: Bearer YOUR_API_KEY"
curl "https://api.lifeastroapi.com/v1/panchang/basic?date=2027-01-15&tz=America/Toronto&lat=43.6532&lon=-79.3832" -H "Authorization: Bearer YOUR_API_KEY"
# 2. festival with the rule that decided it
curl "https://api.lifeastroapi.com/v1/festivals/on-date?date=2027-10-29&tz=Asia/Kolkata&lat=28.6139&lon=77.209" -H "Authorization: Bearer YOUR_API_KEY"
# 3. astronomy benchmark (planets vs JPL, ~480 credits)
python3 accuracy_benchmark.py --only planetsGet a free key at lifeastroapi.com/signup and run these against us first. If an API fails points 1–4, nothing on its feature list will make up for it.