/v1/panchang/karana
Karana (half-tithi).
What this tells you
Karana is "half a tithi" — each tithi contains two karanas. Karanas are used in muhurta decisions, especially to avoid Vishti (also called Bhadra) karana for auspicious beginnings. 11 karanas total: 7 movable + 4 fixed.
Request
All requests require an Authorization header with your dv_live_* API key.
curl "https://api.divyastroapi.com/v1/panchang/karana?date=2026-04-19&time=06%3A30&tz=%2B05%3A30&lat=28.61&lon=77.21" \
-H "Authorization: Bearer dv_live_0123456789abcdef0123456789abcdef"Response (200 OK)
Successful requests return a JSON body. Field names are stable across versions.
{
"karana": {
"index": 3,
"name": "Gara",
"half_tithi": "first",
"type": "movable"
},
"start_jd": 2461137.478,
"end_jd": 2461137.920,
"duration_hours": 10.6,
"percent_complete": 58.2,
"ends_at": "2026-04-20T04:04:48+05:30"
}Field reference
Every field in the response, with its type, a real example, and what it means.
| Field | Type | Meaning |
|---|---|---|
| karana.index | integer (1–11) | Karana number. 11 karanas total — 4 fixed + 7 movable. example: 3 |
| karana.name | string | Name. example: "Gara"Jyotish: 7 movable: Bava, Balava, Kaulava, Taitila, Gara, Vanija, Vishti. 4 fixed: Shakuni, Chatushpada, Naga, Kimstughna. Vishti (Bhadra) is the only karana universally considered inauspicious for new work. |
| karana.half_tithi | string | Each tithi has two karanas — "first" (purva) and "second" (uttara) half. example: "first" |
| karana.type | string | "movable" (chara) or "fixed" (sthira). example: "movable" |
| start_jd | number | Karana start JD. example: 2461137.478 |
| end_jd | number | Karana end JD. Karana is always half a tithi. example: 2461137.920 |
| duration_hours | number | Half the tithi duration. example: 10.6 |
| percent_complete | number | Progress through the karana. example: 58.2 |
Usage tips
How to use it
- Vishti = warning badgeWhenever `karana.name === "Vishti"` (or `"Bhadra"`), show a warning in muhurta/scheduling UIs.
- Fixed karanas are rareThe 4 fixed karanas only appear near Amavasya and Chaturdashi. Most karana checks will return one of the 7 movable ones.
Errors
Every error follows the same envelope. Use the error.code field (not the message) for conditional logic in your integration.
401 Unauthorized
{
"error": {
"code": "unauthorized",
"message": "missing or invalid API key",
"request_id": "req_01hqy7k8c3e7m1n"
}
}402 Payment Required
{
"error": {
"code": "trial_exhausted",
"message": "your free trial credits are exhausted — pick a plan to continue",
"top_up_url": "https://divyastroapi.com/pricing",
"request_id": "req_01hqy7k8c3e7m1n"
}
}429 Too Many Requests
{
"error": {
"code": "rate_limited",
"message": "rate limit exceeded; retry after 12 seconds",
"request_id": "req_01hqy7k8c3e7m1n"
}
}Try it
Get a dv_live_* key from your dashboard and paste into the cURL snippet above. New accounts get 500 free credits. Sign up.