LifeAstroAPILifeAstroAPI

API Reference / Vedic Astrology / Panchang

GET
10 credits

/v1/panchang/hindu-month

Amanta/Purnimanta Hindu month.

What this tells you

The Hindu month is lunisolar: 12 months of about 29.5 days, kept in step with the solar year by an extra (adhika) month about once every 3 years. This endpoint uses the amanta rule at local sunrise of `date`: find the last new moon, take the Sun's sidereal sign at that moment, and name the month after the next sign. A month in which the Sun does not change sign is flagged as adhika. Kshaya (lost) months are not detected. Two naming conventions exist: amanta (new moon to new moon, used in Maharashtra, Gujarat, Karnataka, Andhra and Tamil Nadu) and purnimanta (full moon to full moon, used in most of North India). This endpoint returns only the amanta name. In the Krishna paksha the purnimanta name is one month ahead: 2026-04-12 is Krishna Dashami, amanta Chaitra, purnimanta Vaishakha.

Request

All requests require an Authorization header with your dv_live_* API key.

example request
curl "https://api.lifeastroapi.com/v1/panchang/hindu-month?date=2027-01-15&tz=Asia%2FKolkata&lat=28.6139&lon=77.209" \
  -H "Authorization: Bearer YOUR_API_KEY"

Query parameters

Checked against the API: a parameter is marked required when the request fails without it.

NameRequiredExampleDescription
dateyes2027-01-15Date (YYYY-MM-DD).
tzyesAsia/KolkataTimezone: IANA name (Asia/Kolkata) or UTC offset (+05:30).
latyes28.6139Latitude in decimal degrees.
lonyes77.209Longitude in decimal degrees.
ayanamsano—Ayanamsa (sidereal offset) to use. Defaults to lahiri.

Response (200 OK)

The real response to the example request above, generated from the API itself. Long arrays are trimmed to their first two items. Field names are stable across versions.

200 response
{
  "date": "2027-01-15",
  "location": {
    "lat": 28.6139,
    "lon": 77.209,
    "alt": 0
  },
  "tz": "Asia/Kolkata",
  "index": 9,
  "name": "Pausha",
  "is_adhika": false,
  "display_name": "Pausha",
  "amavasya_jd": 2461413.35027,
  "amavasya_local": "2027-01-08 01:54:23",
  "sun_rashi_at_amavasya": 8
}

Field reference

Every field in the response, with its type, a real example, and what it means.

FieldTypeMeaning
datestring (YYYY-MM-DD)
The requested date. The month is the one running at local sunrise of this date.
example: "2027-01-15"
locationobject
Echo of lat, lon and alt (metres).
example: { "lat": 28.6139, "lon": 77.209, "alt": 0 }
tzstring
Echo of the tz you sent. amavasya_local is in this zone.
example: "Asia/Kolkata"
indexinteger (0–11)
Month number: 0 = Chaitra, 1 = Vaishakha … 11 = Phalguna.
example: 9
namestring
Amanta month name (new moon to new moon). One of Chaitra, Vaishakha, Jyeshtha, Ashadha, Shravana, Bhadrapada, Ashwin, Kartik, Margashirsha, Pausha, Magha, Phalguna. Translated when you pass `locale`.
example: "Pausha"
is_adhikaboolean
true during an adhika (leap) month, i.e. when no sankranti falls inside this lunar month.
example: false
display_namestring
The name with an "Adhika " prefix during a leap month, e.g. "Adhika Jyeshtha". Always English.
example: "Pausha"
amavasya_jdnumber
Julian Day (UT) of the new moon that began this month.
example: 2461413.35027
amavasya_localstring (YYYY-MM-DD HH:MM:SS)
The same new moon in local time (request tz).
example: "2027-01-08 01:54:23"
sun_rashi_at_amavasyainteger (0–11)
Sidereal sign of the Sun at that new moon: 0 = Aries … 11 = Pisces. The month index is (this value + 1) mod 12.
example: 8

Usage tips

How to use it

  • Need both conventions?
    For pan-India apps, get the amanta and purnimanta names together from /v1/calendar/month (`month_en_amanta`, `month_en_purnimanta`) or from /v1/panchang/advanced (`hindu_month.name_amanta`, `hindu_month.name_purnimanta`). They differ only in the Krishna paksha.
  • Adhik Maas matters
    No weddings or housewarmings happen during Adhik Maas. Show a clear badge when `is_adhika` is true and use `display_name` as the label.
  • Samvat, ritu and paksha
    This endpoint does not return the year, season or paksha. Use /v1/calendar/month for Vikram and Shaka samvat, ritu and paksha.

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://lifeastroapi.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 1,500 free credits. Sign up.