Skip to content
API96Astro API

API reference / Remedies & guidance

Remedies & guidance

Gemstone, rudraksha, nakshatra-vastu and Panch Pakshi guidance.

6 endpoints. Every endpoint is POST with a JSON body and your key in the Authorization header. Request schemas and examples come from the OpenAPI document; each example response was captured from the live engine and its data fields are a guide to the shape, not a contract.

Gemstone Details

POSTAvailable

https://api.96astro.com/v1/remedies/gem-details

The gemstone for one planet or sign: its planet and deity, colour, substitutes, metal, finger, day, weight, benefits, cautions and mantra.

Credits
1 credit
Input
Specific input
Output
JSON
Delivery
Direct response
Languages
English; translated term names with labels
Headers
HeaderValue and description
AuthorizationRequiredBearer YOUR_API_KEY

Your sandbox (sk_test_...) or live (sk_live_...) key. X-API-Key: <key> is accepted instead.

Content-TypeRequiredapplication/json

The body is JSON.

Idempotency-KeyOptional<unique string>

Makes retries safe: a repeated key with the same body replays the stored response and is never charged twice. (1 to 200 characters)

Body · application/json
FieldDescription
planetstring | nullOptional

One of the nine grahas.

Default: null

Allowed values: SunMoonMarsMercuryJupiterVenusSaturnRahuKetu

Example: Jupiter

signstring | nullOptional

A sign; its lord's gemstone is returned.

Default: null

Allowed values: AriesTaurusGeminiCancerLeoVirgoLibraScorpioSagittariusCapricornAquariusPisces

labelsstringOptional

Optional. Adds `meta.labels`: translated display names for the identifiers in the answer. `data` is unchanged. Free. Any other code is refused with 422 unsupported_language.

Allowed values: asbndeesfrguhiitknkomlmrnenlorpaplptrusitatetrur

Options (2)
ValueMeaning
planetBy planet
signBy sign

Response · fields in data

Inferred from the example response: a guide to the shape, not a contract.

  • lookup · object
  • planet · string
  • planet_deity · string
  • gemstone · string
  • sanskrit_name · string
  • color · string
  • secondary_gems · array of string
  • metal · string
  • finger · string
  • day · string
  • weight · string
  • nakshatras · array of string
  • signs · array of string
  • houses · array of integer
  • benefits · array of string
  • cautions · array of string
  • mantra · string
  • mantra_repetitions · integer
  • puja_day · string
  • quality_indicators · array of string
  • how_to_activate · string

Try in Playground →Capability overview

Example request

Example response

200application/json
{
  "data": {
    "lookup": {
      "planet": "Jupiter"
    },
    "planet": "Jupiter",
    "planet_deity": "Brihaspati (Jupiter)",
    "gemstone": "Yellow Sapphire",
    "sanskrit_name": "Pukhraj",
    "color": "Yellow / Golden Yellow",
    "secondary_gems": [
      "Citrine",
      "Yellow Topaz",
      "Heliodor"
    ],
    "metal": "Gold",
    "finger": "Index finger (right hand)",
    "day": "Thursday",
    "weight": "3–5 carats",
    "nakshatras": [
  …

Captured from the live engine with a sandbox key (so credits_used is 0) and trimmed: long arrays keep their first items.

Error responses

  • 400invalid_request
  • 401invalid_key, expired_key
  • 402payment_required
  • 403account_suspended
  • 404not_found
  • 409idempotency_conflict
  • 413payload_too_large
  • 422invalid_request, unsupported_language
  • 429rate_limited, quota_exhausted, spend_cap_reached, project_budget_exceeded
  • 500computation_failed
  • 502unavailable
  • 503unavailable
  • 504deadline_exceeded

Errors are never charged. What each status means and what to do: errors.

Gemstone Catalogue

POSTAvailable

https://api.96astro.com/v1/remedies/gem-details-all

Every planet's gemstone entry with substitutes, metal, finger, day, weight, nakshatras, signs, houses and benefits.

Credits
1 credit
Input
No input
Output
JSON
Delivery
Direct response
Languages
English; translated term names with labels
Headers
HeaderValue and description
AuthorizationRequiredBearer YOUR_API_KEY

Your sandbox (sk_test_...) or live (sk_live_...) key. X-API-Key: <key> is accepted instead.

Content-TypeRequiredapplication/json

The body is JSON.

Idempotency-KeyOptional<unique string>

Makes retries safe: a repeated key with the same body replays the stored response and is never charged twice. (1 to 200 characters)

Body · application/json
FieldDescription
planetsarray of string | nullOptional

Only these planets; all nine when omitted.

Default: null

Each item one of: SunMoonMarsMercuryJupiterVenusSaturnRahuKetu

Limits: at most 9 items

labelsstringOptional

Optional. Adds `meta.labels`: translated display names for the identifiers in the answer. `data` is unchanged. Free. Any other code is refused with 422 unsupported_language.

Allowed values: asbndeesfrguhiitknkomlmrnenlorpaplptrusitatetrur

Response · fields in data

Inferred from the example response: a guide to the shape, not a contract.

  • gemstones · array of object

Try in Playground →Capability overview

Example request

Example response

200application/json
{
  "data": {
    "gemstones": [
      {
        "planet": "Sun",
        "planet_deity": "Surya (Sun God)",
        "gemstone": "Ruby",
        "sanskrit_name": "Manikya",
        "color": "Red / Deep Pink",
        "secondary_gems": [
          "Red Garnet",
          "Red Spinel",
          "Red Tourmaline"
        ],
        "metal": "Gold",
        "finger": "Ring finger (right hand)",
        "day": "Sunday",
        "weight": "3–5 carats minimum",
        "nakshatras": [
          "Krittika",
  …

Captured from the live engine with a sandbox key (so credits_used is 0) and trimmed: long arrays keep their first items.

Error responses

  • 400invalid_request
  • 401invalid_key, expired_key
  • 402payment_required
  • 403account_suspended
  • 404not_found
  • 409idempotency_conflict
  • 413payload_too_large
  • 422invalid_request, unsupported_language
  • 429rate_limited, quota_exhausted, spend_cap_reached, project_budget_exceeded
  • 500computation_failed
  • 502unavailable
  • 503unavailable
  • 504deadline_exceeded

Errors are never charged. What each status means and what to do: errors.

Rudraksha Recommendation

POSTAvailable

https://api.96astro.com/v1/remedies/rudraksha

Rudraksha suggestions from any of lagna, Moon and Sun signs, dasha lord, birth date and weak planets: the primary mukhi and each recommendation with reasons.

Credits
1 credit
Input
Specific input
Output
JSON
Delivery
Direct response
Languages
English; translated term names with labels
Headers
HeaderValue and description
AuthorizationRequiredBearer YOUR_API_KEY

Your sandbox (sk_test_...) or live (sk_live_...) key. X-API-Key: <key> is accepted instead.

Content-TypeRequiredapplication/json

The body is JSON.

Idempotency-KeyOptional<unique string>

Makes retries safe: a repeated key with the same body replays the stored response and is never charged twice. (1 to 200 characters)

Body · application/json
FieldDescription
lagna_signstring | nullOptional

Default: null

Allowed values: AriesTaurusGeminiCancerLeoVirgoLibraScorpioSagittariusCapricornAquariusPisces

Example: Capricorn

moon_signstring | nullOptional

Default: null

Allowed values: AriesTaurusGeminiCancerLeoVirgoLibraScorpioSagittariusCapricornAquariusPisces

Example: Virgo

sun_signstring | nullOptional

Default: null

Allowed values: AriesTaurusGeminiCancerLeoVirgoLibraScorpioSagittariusCapricornAquariusPisces

Example: Libra

dasha_lordstring | nullOptional

Running Vimshottari mahadasha lord.

Default: null

Allowed values: SunMoonMarsMercuryJupiterVenusSaturnRahuKetu

Example: Jupiter

birth_datestring | nullOptional

For the numerological root number.

Default: null

Limits: format date

Example: 1990-10-18

weak_planetsarray of stringOptional

Weak or afflicted planets.

Each item one of: SunMoonMarsMercuryJupiterVenusSaturnRahuKetu

Limits: at most 9 items

labelsstringOptional

Optional. Adds `meta.labels`: translated display names for the identifiers in the answer. `data` is unchanged. Free. Any other code is refused with 422 unsupported_language.

Allowed values: asbndeesfrguhiitknkomlmrnenlorpaplptrusitatetrur

Response · fields in data

Inferred from the example response: a guide to the shape, not a contract.

  • primary_mukhi · integer
  • recommendations · array of object

Try in Playground →Capability overview

Example request

Example response

200application/json
{
  "data": {
    "primary_mukhi": 3,
    "recommendations": [
      {
        "mukhi": 3,
        "name": "Teen Mukhi (3 Face)",
        "planet": "Mars",
        "deity": "Agni (Fire God) and Lord Brahma",
        "mantra": "Om Kleem Namah",
        "wearing_day": "Tuesday",
        "metal": "Gold or Copper",
        "color": "Brown",
        "rarity": "Common",
        "benefits": [
          "Liberates from the karmic cycle and past life burdens.",
          "Enhances energy, courage, ambition, and self-confidence.",
          "Alleviates depression, inferiority complex, and self-doubt."
        ],
        "who_should_wear": "Suitable for Aries/Scorpio ascendant, weak Mars, or those suffering from Mars-related issues.",
  …

Captured from the live engine with a sandbox key (so credits_used is 0) and trimmed: long arrays keep their first items.

Error responses

  • 400invalid_request
  • 401invalid_key, expired_key
  • 402payment_required
  • 403account_suspended
  • 404not_found
  • 409idempotency_conflict
  • 413payload_too_large
  • 422invalid_request, unsupported_language
  • 429rate_limited, quota_exhausted, spend_cap_reached, project_budget_exceeded
  • 500computation_failed
  • 502unavailable
  • 503unavailable
  • 504deadline_exceeded

Errors are never charged. What each status means and what to do: errors.

Nakshatra Vastu

POSTAvailable

https://api.96astro.com/v1/remedies/nakshatra-vastu

Vastu guidance for a birth nakshatra (by name or number): door, sleep, work and cooking directions, colours, numbers, metal, zones and tips.

Credits
1 credit
Input
Specific input
Output
JSON
Delivery
Direct response
Languages
English; translated term names with labels
Headers
HeaderValue and description
AuthorizationRequiredBearer YOUR_API_KEY

Your sandbox (sk_test_...) or live (sk_live_...) key. X-API-Key: <key> is accepted instead.

Content-TypeRequiredapplication/json

The body is JSON.

Idempotency-KeyOptional<unique string>

Makes retries safe: a repeated key with the same body replays the stored response and is never charged twice. (1 to 200 characters)

Body · application/json
FieldDescription
nakshatrastring | nullOptional

Default: null

Example: Chitra

nakshatra_numberinteger | nullOptional

Default: null

Limits: minimum 1, maximum 27

labelsstringOptional

Optional. Adds `meta.labels`: translated display names for the identifiers in the answer. `data` is unchanged. Free. Any other code is refused with 422 unsupported_language.

Allowed values: asbndeesfrguhiitknkomlmrnenlorpaplptrusitatetrur

Response · fields in data

Inferred from the example response: a guide to the shape, not a contract.

  • number · integer
  • nakshatra · string
  • lord · string
  • deity · string
  • nature · string
  • energy · string
  • vastu · object

Try in Playground →Capability overview

Example request

Example response

200application/json
{
  "data": {
    "number": 14,
    "nakshatra": "Chitra",
    "lord": "Mars",
    "deity": "Vishvakarma (Divine Architect)",
    "nature": "mridu",
    "energy": "Artistic & Precise",
    "vastu": {
      "door_direction": "West",
      "sleep_direction": "South",
      "work_direction": "South",
      "cook_direction": "South-East",
      "favorable_colors": [
        "Bright Red",
        "Black",
        "Multicolor"
      ],
      "unfavorable_colors": [
        "Pale tones"
  …

Captured from the live engine with a sandbox key (so credits_used is 0) and trimmed: long arrays keep their first items.

Error responses

  • 400invalid_request
  • 401invalid_key, expired_key
  • 402payment_required
  • 403account_suspended
  • 404not_found
  • 409idempotency_conflict
  • 413payload_too_large
  • 422invalid_request, unsupported_language
  • 429rate_limited, quota_exhausted, spend_cap_reached, project_budget_exceeded
  • 500computation_failed
  • 502unavailable
  • 503unavailable
  • 504deadline_exceeded

Errors are never charged. What each status means and what to do: errors.

Nakshatra Vastu Catalogue

POSTAvailable

https://api.96astro.com/v1/remedies/nakshatra-vastu-all

The nakshatra Vastu guidance for all 27 nakshatras.

Credits
1 credit
Input
No input
Output
JSON
Delivery
Direct response
Languages
English; translated term names with labels
Headers
HeaderValue and description
AuthorizationRequiredBearer YOUR_API_KEY

Your sandbox (sk_test_...) or live (sk_live_...) key. X-API-Key: <key> is accepted instead.

Content-TypeRequiredapplication/json

The body is JSON.

Idempotency-KeyOptional<unique string>

Makes retries safe: a repeated key with the same body replays the stored response and is never charged twice. (1 to 200 characters)

Body · application/json
FieldDescription
nakshatrasarray of string | nullOptional

Only these; all 27 when omitted.

Default: null

Limits: at most 27 items

labelsstringOptional

Optional. Adds `meta.labels`: translated display names for the identifiers in the answer. `data` is unchanged. Free. Any other code is refused with 422 unsupported_language.

Allowed values: asbndeesfrguhiitknkomlmrnenlorpaplptrusitatetrur

Response · fields in data

Inferred from the example response: a guide to the shape, not a contract.

  • nakshatras · array of object

Try in Playground →Capability overview

Example request

Example response

200application/json
{
  "data": {
    "nakshatras": [
      {
        "number": 1,
        "nakshatra": "Ashwini",
        "lord": "Ketu",
        "deity": "Ashwini Kumaras",
        "nature": "laghu",
        "energy": "Active & Healing",
        "vastu": {
          "door_direction": "East",
          "sleep_direction": "South",
          "work_direction": "North",
          "cook_direction": "South-East",
          "favorable_colors": [
            "White",
            "Red"
          ],
          "unfavorable_colors": [
  …

Captured from the live engine with a sandbox key (so credits_used is 0) and trimmed: long arrays keep their first items.

Error responses

  • 400invalid_request
  • 401invalid_key, expired_key
  • 402payment_required
  • 403account_suspended
  • 404not_found
  • 409idempotency_conflict
  • 413payload_too_large
  • 422invalid_request, unsupported_language
  • 429rate_limited, quota_exhausted, spend_cap_reached, project_budget_exceeded
  • 500computation_failed
  • 502unavailable
  • 503unavailable
  • 504deadline_exceeded

Errors are never charged. What each status means and what to do: errors.

Panch Pakshi

POSTAvailable

https://api.96astro.com/v1/remedies/panch-pakshi

Panch Pakshi for a day at a place: the ruling and dying bird with each yama for day and night, and the bird and activity at the given moment.

Credits
1 credit
Input
Date and place
Output
JSON
Delivery
Direct response
Languages
English; translated term names with labels
Headers
HeaderValue and description
AuthorizationRequiredBearer YOUR_API_KEY

Your sandbox (sk_test_...) or live (sk_live_...) key. X-API-Key: <key> is accepted instead.

Content-TypeRequiredapplication/json

The body is JSON.

Idempotency-KeyOptional<unique string>

Makes retries safe: a repeated key with the same body replays the stored response and is never charged twice. (1 to 200 characters)

Body · application/json
FieldDescription
datetimestringRequired

Local date and time, ISO 8601 without offset.

Limits: format local-date-time, pattern ^\d{4}-\d{2}-\d{2}[T ]\d{2}:\d{2}(:\d{2}(\.\d{1,6})?)?$

Example: 2026-10-13T10:00:00

timezonestring | nullOptional

IANA time zone, e.g. Asia/Kolkata

Default: null

Example: Asia/Kolkata

utc_offsetstring | nullOptional

Fixed offset such as +05:30, if no IANA zone is known

Default: null

latitudenumberRequired

Limits: minimum -90, maximum 90

Example: 28.6139

longitudenumberRequired

Limits: minimum -180, maximum 180

Example: 77.209

labelsstringOptional

Optional. Adds `meta.labels`: translated display names for the identifiers in the answer. `data` is unchanged. Free. Any other code is refused with 422 unsupported_language.

Allowed values: asbndeesfrguhiitknkomlmrnenlorpaplptrusitatetrur

Response · fields in data

Inferred from the example response: a guide to the shape, not a contract.

  • panchang_day · string
  • weekday · string
  • paksha · string
  • utc_offset · string
  • sunrise · string
  • sunset · string
  • next_sunrise · string
  • at_moment · object
  • day · object
  • night · object

Try in Playground →Capability overview

Example request

Example response

200application/json
{
  "data": {
    "panchang_day": "2026-10-13",
    "weekday": "Tuesday",
    "paksha": "shukla",
    "utc_offset": "+05:30",
    "sunrise": "2026-10-13T06:21:00",
    "sunset": "2026-10-13T17:54:06",
    "next_sunrise": "2026-10-14T06:21:36",
    "at_moment": {
      "datetime": "2026-10-13T10:00:00",
      "period": "day",
      "yama_number": 2,
      "yama_bird": "Vulture",
      "yama_activity": "Walking",
      "sub_period": {
        "bird": "Peacock",
        "activity": "Eating",
        "relationship_to_yama_bird": "Enemy",
        "start": "2026-10-13T09:53:33",
  …

Captured from the live engine with a sandbox key (so credits_used is 0) and trimmed: long arrays keep their first items.

Error responses

  • 400invalid_request
  • 401invalid_key, expired_key
  • 402payment_required
  • 403account_suspended
  • 404not_found
  • 409idempotency_conflict
  • 413payload_too_large
  • 422invalid_request, unsupported_language
  • 429rate_limited, quota_exhausted, spend_cap_reached, project_budget_exceeded
  • 500computation_failed
  • 502unavailable
  • 503unavailable
  • 504deadline_exceeded

Errors are never charged. What each status means and what to do: errors.