The birth object
Operations about a person take a birth object in the POST body. Birth data never goes in a URL.
datestring (date) requirede.g.
"1990-08-13"timestringpattern
^([01]\d|2[0-3]):[0-5]\d(:[0-5]\d)?$· e.g."06:30"time_accuracystringWith "unknown", lagna- and house-dependent fields are omitted and listed in warnings — never filled with a noon default.
one of
exact,approximate,unknown· default"exact"placeCoordinates or object or object requiredCoordinates, a place_id from /v1/places/search, or a free-text query. A vague query returns 422 place_ambiguous with candidates; the API never guesses.
One of:
- Coordinates
Fields
latitudenumber required≥ -90 · ≤ 90
longitudenumber required≥ -180 · ≤ 180
No other fields are accepted.
- object
Fields
place_idstring required
No other fields are accepted.
- object
Fields
querystring requiredat least 2 characters · at most 120 characters
No other fields are accepted.
- Coordinates
timezonestring"auto" (from coordinates AND date), an IANA name, or a fixed offset like "+05:30".
default
"auto"
No other fields are accepted.
Place
Send the place in one of three ways:
- Coordinates, the most precise:
{ "latitude": …, "longitude": … }. - A place id from place search:
{ "place_id": "pl_…" }. - A name:
{ "query": "Noida" }.- If nothing matches, the answer is
422 place_not_found. - If several places match, it is
422 place_ambiguous, witherror.candidatesto choose from. - The API never guesses.
- If nothing matches, the answer is
Timezone
timezone defaults to "auto": the zone and UTC offset in force at that place on that date, including historical changes. You can also send an IANA name ("Asia/Kolkata") or a fixed offset ("+05:30"). The zone used comes back in meta.timezone_used.
Time accuracy
exact(the default) andapproximatecompute everything.unknownomits the fields that depend on the lagna or the houses and lists them inwarnings. It never fills them with a noon default.- Operations that cannot work without a time answer
422 time_required.