Copy page

Copy page as Markdown for LLMs

View as Markdown

View this page as plain text


Open in ChatGPT

Ask ChatGPT about this page

Open in Claude

Ask Claude about this page

Sub Planet Chart

Explore the dynamic celestial interplay with the Sub Planet Chart API, which provides precise insights into the positions of sub-planets (Upa Grahas) that influence astrological interpretations within Indian Vedic Astrology. This API returns detailed positional data along with an SVG-based visual Kundli representation.


Step-by-Step Sub Planet Chart API Postman Testing Integration

View Integration Guide


Supported Language Codes

Support Article URL: Translating Indian Vedic APIs into Different Languages

CodeLanguage
enEnglish
hiHindi
bnBengali
maMarathi
tmTamil
tlTelugu
mlMalayalam
knKannada

Guide:
These languages are supported by this API. You can specify the language by passing the “lan” parameter in the request body with the respective language code. The default language is English (en).


API Endpoint

POST https://astroapi-3.divineapi.com/indian-api/v1/sub-planet-chart

This endpoint returns a Sub Planet Chart that includes SVG visualization, base64-encoded image, and data for each sub-planet.


Headers

NameTypeDescription
AuthorizationStringYour API Access Token. Example: Bearer {token}

Request Body

NameTypeDescription
api_keyStringYour API key
full_nameStringFull name, e.g., Rahul Kumar
dayIntegerDate of birth, e.g., 24
monthIntegerMonth of birth, e.g., 05
yearIntegerYear of birth, e.g., 2023
hourIntegerHour of birth, e.g., 14
minIntegerMinute of birth, e.g., 40
secIntegerSecond of birth, e.g., 43
genderStringGender, e.g., male
placeStringPlace of birth, e.g., New Delhi
latFloatLatitude, e.g., 28.7041
lonFloatLongitude, e.g., 77.1025
tzoneFloatTimezone, e.g., 5.5 (Timezone Reference Guide)
lanStringLanguage code as per supported table above. Default is ‘en’.
planet_colorStringColor for planets, e.g., "#333333" or "black"
sign_colorStringColor for zodiac signs, e.g., "#333333" or "black"
line_colorStringColor for chart lines, e.g., "#333333" or "black"
chart_colorStringBackground color of the chart, e.g., "#FFFFFF" or "black"
chart_typeStringChart type, e.g., north or south

200: OK Sub Planets Positions fetched successfully

{
    "success": 1,
    "data": {
        "svg": "<svg height=\"360\" width=\"360\" xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\">\n    \n    \n    <rect x=\"0\" y=\"0\" width=\"360\" height=\"360\" fill=\"transparent\" stroke=\"#000\" stroke-width=\"4\"></rect>\n\t<line x1=\"0\" y1=\"0\" x2=\"360\" y2=\"360\" stroke=\"#000\" stroke-width=\"2\"></line>\n\t<line x1=\"0\" y1=\"360\" x2=\"360\" y2=\"0\" stroke=\"#000\" stroke-width=\"2\"></line>\n\t<line x1=\"0\" y1=\"180\" x2=\"180\" y2=\"0\" stroke=\"#000\" stroke-width=\"2\"></line>\n\t<line x1=\"180\" y1=\"0\" x2=\"360\" y2=\"180\" stroke=\"#000\" stroke-width=\"2\"></line>\n\t<line x1=\"360\" y1=\"180\" x2=\"180\" y2=\"360\" stroke=\"#000\" stroke-width=\"2\"></line>\n\t<line x1=\"0\" y1=\"180\" x2=\"180\" y2=\"360\" stroke=\"#000\" stroke-width=\"2\"></line>\n\n    <text x=\"177\" y=\"171\" style=\"fill:#000; font-size:12px; stroke:#000;\" font=\"Tahoma\" font-family=\"sans-serif\">6</text>\n    <text x=\"87\" y=\"81\" style=\"fill:#000; font-size:12px; stroke:#000;\" font=\"Tahoma\" font-family=\"sans-serif\">7</text>\n    <text x=\"72\" y=\"93\" style=\"fill:#000; font-size:12px; stroke:#000;\" font=\"Tahoma\" font-family=\"sans-serif\">8</text>\n    <text x=\"162\" y=\"185\" style=\"fill:#000; font-size:12px; stroke:#000;\" font=\"Tahoma\" font-family=\"sans-serif\">9</text>\n    <text x=\"72\" y=\"273\" style=\"fill:#000; font-size:12px; stroke:#000;\" font=\"Tahoma\" font-family=\"sans-serif\">10</text>\n    <text x=\"87\" y=\"288\" style=\"fill:#000; font-size:12px; stroke:#000;\" font=\"Tahoma\" font-family=\"sans-serif\">11</text>\n    <text x=\"175\" y=\"198\" style=\"fill:#000; font-size:12px; stroke:#000;\" font=\"Tahoma\" font-family=\"sans-serif\">12</text>\n    <text x=\"266\" y=\"288\" style=\"fill:#000; font-size:12px; stroke:#000;\" font=\"Tahoma\" font-family=\"sans-serif\">1</text>\n    <text x=\"282\" y=\"273\" style=\"fill:#000; font-size:12px; stroke:#000;\" font=\"Tahoma\" font-family=\"sans-serif\">2</text>\n    <text x=\"195\" y=\"185\" style=\"fill:#000; font-size:12px; stroke:#000;\" font=\"Tahoma\" font-family=\"sans-serif\">3</text>\n    <text x=\"279\" y=\"93\" style=\"fill:#000; font-size:12px; stroke:#000;\" font=\"Tahoma\" font-family=\"sans-serif\">4</text>\n    <text x=\"264\" y=\"81\" style=\"fill:#000; font-size:12px; stroke:#000;\" font=\"Tahoma\" font-family=\"sans-serif\">5</text>\n    \n                <text x=\"165\" y=\"72\" style=\"fill:#000; font-size:12px; stroke:#000;\" font=\"Tahoma\" font-family=\"sans-serif\">Dh</text>\n                    <text x=\"185\" y=\"72\" style=\"fill:#000; font-size:12px; stroke:#000;\" font=\"Tahoma\" font-family=\"sans-serif\">Ka</text>\n            \n    \n                <text x=\"70\" y=\"32\" style=\"fill:#000; font-size:12px; stroke:#000;\" font=\"Tahoma\" font-family=\"sans-serif\">Vy</text>\n                    <text x=\"90\" y=\"32\" style=\"fill:#000; font-size:12px; stroke:#000;\" font=\"Tahoma\" font-family=\"sans-serif\">Mr</text>\n            \n    \n        \n    \n        \n    \n        \n    \n        \n    \n                <text x=\"164\" y=\"272\" style=\"fill:#000; font-size:12px; stroke:#000;\" font=\"Tahoma\" font-family=\"sans-serif\">In</text>\n            \n    \n                <text x=\"244\" y=\"330\" style=\"fill:#000; font-size:12px; stroke:#000;\" font=\"Tahoma\" font-family=\"sans-serif\">Pa</text>\n                    <text x=\"264\" y=\"330\" style=\"fill:#000; font-size:12px; stroke:#000;\" font=\"Tahoma\" font-family=\"sans-serif\">Up</text>\n            \n    \n        \n    \n                <text x=\"270\" y=\"170\" style=\"fill:#000; font-size:12px; stroke:#000;\" font=\"Tahoma\" font-family=\"sans-serif\">Ya</text>\n                    <text x=\"270\" y=\"185\" style=\"fill:#000; font-size:12px; stroke:#000;\" font=\"Tahoma\" font-family=\"sans-serif\">Ar</text>\n            \n    \n        \n    \n                <text x=\"254\" y=\"36\" style=\"fill:#000; font-size:12px; stroke:#000;\" font=\"Tahoma\" font-family=\"sans-serif\">Gu</text>\n            \n</svg>\n",
        "base64_image": "data:image/svg+xml;base64,PHN2ZyBoZWlnaHQ9IjM2MCIgd2lkdGg9IjM2MCIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB4bWxuczp4bGluaz0iaHR0cDovL3d3dy53My5vcmcvMTk5OS94bGluayI+CiAgICAKICAgIAogICAgPHJlY3QgeD0iMCIgeT0iMCIgd2lkdGg9IjM2MCIgaGVpZ2h0PSIzNjAiIGZpbGw9InRyYW5zcGFyZW50IiBzdHJva2U9IiMwMDAiIHN0cm9rZS13aWR0aD0iNCI+PC9yZWN0PgoJPGxpbmUgeDE9IjAiIHkxPSIwIiB4Mj0iMzYwIiB5Mj0iMzYwIiBzdHJva2U9IiMwMDAiIHN0cm9rZS13aWR0aD0iMiI+PC9saW5lPgoJPGxpbmUgeDE9IjAiIHkxPSIzNjAiIHgyPSIzNjAiIHkyPSIwIiBzdHJva2U9IiMwMDAiIHN0cm9rZS13aWR0aD0iMiI+PC9saW5lPgoJPGxpbmUgeDE9IjAiIHkxPSIxODAiIHgyPSIxODAiIHkyPSIwIiBzdHJva2U9IiMwMDAiIHN0cm9rZS13aWR0aD0iMiI+PC9saW5lPgoJPGxpbmUgeDE9IjE4MCIgeTE9IjAiIHgyPSIzNjAiIHkyPSIxODAiIHN0cm9rZT0iIzAwMCIgc3Ryb2tlLXdpZHRoPSIyIj48L2xpbmU+Cgk8bGluZSB4MT0iMzYwIiB5MT0iMTgwIiB4Mj0iMTgwIiB5Mj0iMzYwIiBzdHJva2U9IiMwMDAiIHN0cm9rZS13aWR0aD0iMiI+PC9saW5lPgoJPGxpbmUgeDE9IjAiIHkxPSIxODAiIHgyPSIxODAiIHkyPSIzNjAiIHN0cm9rZT0iIzAwMCIgc3Ryb2tlLXdpZHRoPSIyIj48L2xpbmU+CgogICAgPHRleHQgeD0iMTc3IiB5PSIxNzEiIHN0eWxlPSJmaWxsOiMwMDA7IGZvbnQtc2l6ZToxMnB4OyBzdHJva2U6IzAwMDsiIGZvbnQ9IlRhaG9tYSIgZm9udC1mYW1pbHk9InNhbnMtc2VyaWYiPjY8L3RleHQ+CiAgICA8dGV4dCB4PSI4NyIgeT0iODEiIHN0eWxlPSJmaWxsOiMwMDA7IGZvbnQtc2l6ZToxMnB4OyBzdHJva2U6IzAwMDsiIGZvbnQ9IlRhaG9tYSIgZm9udC1mYW1pbHk9InNhbnMtc2VyaWYiPjc8L3RleHQ+CiAgICA8dGV4dCB4PSI3MiIgeT0iOTMiIHN0eWxlPSJmaWxsOiMwMDA7IGZvbnQtc2l6ZToxMnB4OyBzdHJva2U6IzAwMDsiIGZvbnQ9IlRhaG9tYSIgZm9udC1mYW1pbHk9InNhbnMtc2VyaWYiPjg8L3RleHQ+CiAgICA8dGV4dCB4PSIxNjIiIHk9IjE4NSIgc3R5bGU9ImZpbGw6IzAwMDsgZm9udC1zaXplOjEycHg7IHN0cm9rZTojMDAwOyIgZm9udD0iVGFob21hIiBmb250LWZhbWlseT0ic2Fucy1zZXJpZiI+OTwvdGV4dD4KICAgIDx0ZXh0IHg9IjcyIiB5PSIyNzMiIHN0eWxlPSJmaWxsOiMwMDA7IGZvbnQtc2l6ZToxMnB4OyBzdHJva2U6IzAwMDsiIGZvbnQ9IlRhaG9tYSIgZm9udC1mYW1pbHk9InNhbnMtc2VyaWYiPjEwPC90ZXh0PgogICAgPHRleHQgeD0iODciIHk9IjI4OCIgc3R5bGU9ImZpbGw6IzAwMDsgZm9udC1zaXplOjEycHg7IHN0cm9rZTojMDAwOyIgZm9udD0iVGFob21hIiBmb250LWZhbWlseT0ic2Fucy1zZXJpZiI+MTE8L3RleHQ+CiAgICA8dGV4dCB4PSIxNzUiIHk9IjE5OCIgc3R5bGU9ImZpbGw6IzAwMDsgZm9udC1zaXplOjEycHg7IHN0cm9rZTojMDAwOyIgZm9udD0iVGFob21hIiBmb250LWZhbWlseT0ic2Fucy1zZXJpZiI+MTI8L3RleHQ+CiAgICA8dGV4dCB4PSIyNjYiIHk9IjI4OCIgc3R5bGU9ImZpbGw6IzAwMDsgZm9udC1zaXplOjEycHg7IHN0cm9rZTojMDAwOyIgZm9udD0iVGFob21hIiBmb250LWZhbWlseT0ic2Fucy1zZXJpZiI+MTwvdGV4dD4KICAgIDx0ZXh0IHg9IjI4MiIgeT0iMjczIiBzdHlsZT0iZmlsbDojMDAwOyBmb250LXNpemU6MTJweDsgc3Ryb2tlOiMwMDA7IiBmb250PSJUYWhvbWEiIGZvbnQtZmFtaWx5PSJzYW5zLXNlcmlmIj4yPC90ZXh0PgogICAgPHRleHQgeD0iMTk1IiB5PSIxODUiIHN0eWxlPSJmaWxsOiMwMDA7IGZvbnQtc2l6ZToxMnB4OyBzdHJva2U6IzAwMDsiIGZvbnQ9IlRhaG9tYSIgZm9udC1mYW1pbHk9InNhbnMtc2VyaWYiPjM8L3RleHQ+CiAgICA8dGV4dCB4PSIyNzkiIHk9IjkzIiBzdHlsZT0iZmlsbDojMDAwOyBmb250LXNpemU6MTJweDsgc3Ryb2tlOiMwMDA7IiBmb250PSJUYWhvbWEiIGZvbnQtZmFtaWx5PSJzYW5zLXNlcmlmIj40PC90ZXh0PgogICAgPHRleHQgeD0iMjY0IiB5PSI4MSIgc3R5bGU9ImZpbGw6IzAwMDsgZm9udC1zaXplOjEycHg7IHN0cm9rZTojMDAwOyIgZm9udD0iVGFob21hIiBmb250LWZhbWlseT0ic2Fucy1zZXJpZiI+NTwvdGV4dD4KICAgIAogICAgICAgICAgICAgICAgPHRleHQgeD0iMTY1IiB5PSI3MiIgc3R5bGU9ImZpbGw6IzAwMDsgZm9udC1zaXplOjEycHg7IHN0cm9rZTojMDAwOyIgZm9udD0iVGFob21hIiBmb250LWZhbWlseT0ic2Fucy1zZXJpZiI+RGg8L3RleHQ+CiAgICAgICAgICAgICAgICAgICAgPHRleHQgeD0iMTg1IiB5PSI3MiIgc3R5bGU9ImZpbGw6IzAwMDsgZm9udC1zaXplOjEycHg7IHN0cm9rZTojMDAwOyIgZm9udD0iVGFob21hIiBmb250LWZhbWlseT0ic2Fucy1zZXJpZiI+S2E8L3RleHQ+CiAgICAgICAgICAgIAogICAgCiAgICAgICAgICAgICAgICA8dGV4dCB4PSI3MCIgeT0iMzIiIHN0eWxlPSJmaWxsOiMwMDA7IGZvbnQtc2l6ZToxMnB4OyBzdHJva2U6IzAwMDsiIGZvbnQ9IlRhaG9tYSIgZm9udC1mYW1pbHk9InNhbnMtc2VyaWYiPlZ5PC90ZXh0PgogICAgICAgICAgICAgICAgICAgIDx0ZXh0IHg9IjkwIiB5PSIzMiIgc3R5bGU9ImZpbGw6IzAwMDsgZm9udC1zaXplOjEycHg7IHN0cm9rZTojMDAwOyIgZm9udD0iVGFob21hIiBmb250LWZhbWlseT0ic2Fucy1zZXJpZiI+TXI8L3RleHQ+CiAgICAgICAgICAgIAogICAgCiAgICAgICAgCiAgICAKICAgICAgICAKICAgIAogICAgICAgIAogICAgCiAgICAgICAgCiAgICAKICAgICAgICAgICAgICAgIDx0ZXh0IHg9IjE2NCIgeT0iMjcyIiBzdHlsZT0iZmlsbDojMDAwOyBmb250LXNpemU6MTJweDsgc3Ryb2tlOiMwMDA7IiBmb250PSJUYWhvbWEiIGZvbnQtZmFtaWx5PSJzYW5zLXNlcmlmIj5JbjwvdGV4dD4KICAgICAgICAgICAgCiAgICAKICAgICAgICAgICAgICAgIDx0ZXh0IHg9IjI0NCIgeT0iMzMwIiBzdHlsZT0iZmlsbDojMDAwOyBmb250LXNpemU6MTJweDsgc3Ryb2tlOiMwMDA7IiBmb250PSJUYWhvbWEiIGZvbnQtZmFtaWx5PSJzYW5zLXNlcmlmIj5QYTwvdGV4dD4KICAgICAgICAgICAgICAgICAgICA8dGV4dCB4PSIyNjQiIHk9IjMzMCIgc3R5bGU9ImZpbGw6IzAwMDsgZm9udC1zaXplOjEycHg7IHN0cm9rZTojMDAwOyIgZm9udD0iVGFob21hIiBmb250LWZhbWlseT0ic2Fucy1zZXJpZiI+VXA8L3RleHQ+CiAgICAgICAgICAgIAogICAgCiAgICAgICAgCiAgICAKICAgICAgICAgICAgICAgIDx0ZXh0IHg9IjI3MCIgeT0iMTcwIiBzdHlsZT0iZmlsbDojMDAwOyBmb250LXNpemU6MTJweDsgc3Ryb2tlOiMwMDA7IiBmb250PSJUYWhvbWEiIGZvbnQtZmFtaWx5PSJzYW5zLXNlcmlmIj5ZYTwvdGV4dD4KICAgICAgICAgICAgICAgICAgICA8dGV4dCB4PSIyNzAiIHk9IjE4NSIgc3R5bGU9ImZpbGw6IzAwMDsgZm9udC1zaXplOjEycHg7IHN0cm9rZTojMDAwOyIgZm9udD0iVGFob21hIiBmb250LWZhbWlseT0ic2Fucy1zZXJpZiI+QXI8L3RleHQ+CiAgICAgICAgICAgIAogICAgCiAgICAgICAgCiAgICAKICAgICAgICAgICAgICAgIDx0ZXh0IHg9IjI1NCIgeT0iMzYiIHN0eWxlPSJmaWxsOiMwMDA7IGZvbnQtc2l6ZToxMnB4OyBzdHJva2U6IzAwMDsiIGZvbnQ9IlRhaG9tYSIgZm9udC1mYW1pbHk9InNhbnMtc2VyaWYiPkd1PC90ZXh0PgogICAgICAgICAgICAKPC9zdmc+Cg==",
        "data": {
            "1": {
                "sign_no": 6,
                "planet": [
                    {
                        "name": "Dhuma",
                        "symbol": "Dh"
                    },
                    {
                        "name": "Kaala",
                        "symbol": "Ka"
                    }
                ]
            },
            "2": {
                "sign_no": 7,
                "planet": [
                    {
                        "name": "Vyatripata",
                        "symbol": "Vy"
                    },
                    {
                        "name": "Mrityu",
                        "symbol": "Mr"
                    }
                ]
            },
            "3": {
                "sign_no": 8,
                "planet": []
            },
            "4": {
                "sign_no": 9,
                "planet": []
            },
            "5": {
                "sign_no": 10,
                "planet": []
            },
            "6": {
                "sign_no": 11,
                "planet": []
            },
            "7": {
                "sign_no": 12,
                "planet": [
                    {
                        "name": "Indrachapa",
                        "symbol": "In"
                    }
                ]
            },
            "8": {
                "sign_no": 1,
                "planet": [
                    {
                        "name": "Parivesh",
                        "symbol": "Pa"
                    },
                    {
                        "name": "Upaketu",
                        "symbol": "Up"
                    }
                ]
            },
            "9": {
                "sign_no": 2,
                "planet": []
            },
            "10": {
                "sign_no": 3,
                "planet": [
                    {
                        "name": "Yamaghantaka",
                        "symbol": "Ya"
                    },
                    {
                        "name": "Ardhaprahara",
                        "symbol": "Ar"
                    }
                ]
            },
            "11": {
                "sign_no": 4,
                "planet": []
            },
            "12": {
                "sign_no": 5,
                "planet": [
                    {
                        "name": "Gulika",
                        "symbol": "Gu"
                    }
                ]
            }
        }
    }
}

Example Integrations

Below are examples of how you might call this API using different programming languages and environments.


cURL

curl --location 'https://astroapi-3.divineapi.com/indian-api/v1/sub-planet-chart' \
--header 'Authorization: Bearer {Your Auth Token}' \
--form 'api_key="{Your API Key}"' \
--form 'full_name="Test"' \
--form 'day="24"' \
--form 'month="05"' \
--form 'year="2023"' \
--form 'hour="14"' \
--form 'min="40"' \
--form 'sec="43"' \
--form 'gender="male"' \
--form 'place="New Delhi"' \
--form 'lat="28.7041"' \
--form 'lon="77.1025"' \
--form 'tzone="5.5"' \
--form 'lan="en"'

NodeJS

var request = require('request');
var options = {
  'method': 'POST',
  'url': 'https://astroapi-3.divineapi.com/indian-api/v1/sub-planet-chart',
  'headers': {
    'Authorization': 'Bearer {Your Auth Token}'
  },
  formData: {
    'api_key': '{Your API Key}',
    'full_name': 'Test',
    'day': '24',
    'month': '05',
    'year': '2023',
    'hour': '14',
    'min': '40',
    'sec': '43',
    'gender': 'male',
    'place': 'New Delhi',
    'lat': '28.7041',
    'lon': '77.1025',
    'tzone': '5.5',
    'lan': 'en'
  }
};
request(options, function (error, response) {
  if (error) throw new Error(error);
  console.log(response.body);
});

JavaScript jQuery AJAX

var form = new FormData();
form.append("api_key", "{Your API Key}");
form.append("full_name", "Test");
form.append("day", "24");
form.append("month", "05");
form.append("year", "2023");
form.append("hour", "14");
form.append("min", "40");
form.append("sec", "43");
form.append("gender", "male");
form.append("place", "New Delhi");
form.append("lat", "28.7041");
form.append("lon", "77.1025");
form.append("tzone", "5.5");
form.append("lan", "en");

var settings = {
  "url": "https://astroapi-3.divineapi.com/indian-api/v1/sub-planet-chart",
  "method": "POST",
  "timeout": 0,
  "headers": {
    "Authorization": "Bearer {Your Auth Token}"
  },
  "processData": false,
  "mimeType": "multipart/form-data",
  "contentType": false,
  "data": form
};

$.ajax(settings).done(function (response) {
  console.log(response);
});

Python

import requests

url = "
https://astroapi-3.divineapi.com/indian-api/v1/sub-planet-chart
"

payload = {'api_key': '{Your API Key}',
'full_name': 'Test',
'day': '24',
'month': '05',
'year': '2023',
'hour': '14',
'min': '40',
'sec': '43',
'gender': 'male',
'place': 'New Delhi',
'lat': '28.7041',
'lon': '77.1025',
'tzone': '5.5',
'lan': 'en'}

headers = {
  'Authorization': 'Bearer {Your Auth Token}'
}

response = requests.request("POST", url, headers=headers, data=payload)

print(response.text)

Summary

The Sub Planet Chart API provides detailed insights into the positioning of sub-planets such as Dhuma, Vyatripata, Mrityu, Kaala, Gulika, Indrachapa, Parivesh, Upaketu, Yamaghantaka, and Ardhaprahara.

This API generates a graphical Sub Planet Chart (SVG) and raw positional data, enabling seamless integration into astrology software, web dashboards, and analytical platforms that visualize planetary influence.

Example Code
curl -X POST "https://astroapi-3.divineapi.com/indian-api/v1/sub-planet-chart" \
  -H "Authorization: Bearer {Your Auth Token}" \
  --form 'api_key="{Your API Key}"' \
  --form 'full_name="Test"' \
  --form 'day="24"' \
  --form 'month="05"' \
  --form 'year="2023"' \
  --form 'hour="14"' \
  --form 'min="40"' \
  --form 'sec="43"' \
  --form 'gender="male"' \
  --form 'place="New Delhi"' \
  --form 'lat="28.7041"' \
  --form 'lon="77.1025"' \
  --form 'tzone="5.5"' \
  --form 'lan="en"'
const FormData = require('form-data');
const axios = require('axios');

const form = new FormData();
form.append('api_key', '{Your API Key}');
form.append('full_name', 'Test');
form.append('day', '24');
form.append('month', '05');
form.append('year', '2023');
form.append('hour', '14');
form.append('min', '40');
form.append('sec', '43');
form.append('gender', 'male');
form.append('place', 'New Delhi');
form.append('lat', '28.7041');
form.append('lon', '77.1025');
form.append('tzone', '5.5');
form.append('lan', 'en');

const response = await axios.post('https://astroapi-3.divineapi.com/indian-api/v1/sub-planet-chart', form, {
  headers: {
    ...form.getHeaders(),
    'Authorization': 'Bearer {Your Auth Token}',
  }
});

console.log(response.data);
import requests

url = "https://astroapi-3.divineapi.com/indian-api/v1/sub-planet-chart"
headers = {
    "Authorization": "Bearer {Your Auth Token}",
}
payload = {
    "api_key": "{Your API Key}",
    "full_name": "Test",
    "day": "24",
    "month": "05",
    "year": "2023",
    "hour": "14",
    "min": "40",
    "sec": "43",
    "gender": "male",
    "place": "New Delhi",
    "lat": "28.7041",
    "lon": "77.1025",
    "tzone": "5.5",
    "lan": "en",
}

response = requests.post(url, headers=headers, data=payload)

print(response.json())
const formData = new FormData();
formData.append('api_key', '{Your API Key}');
formData.append('full_name', 'Test');
formData.append('day', '24');
formData.append('month', '05');
formData.append('year', '2023');
formData.append('hour', '14');
formData.append('min', '40');
formData.append('sec', '43');
formData.append('gender', 'male');
formData.append('place', 'New Delhi');
formData.append('lat', '28.7041');
formData.append('lon', '77.1025');
formData.append('tzone', '5.5');
formData.append('lan', 'en');

const response = await fetch('https://astroapi-3.divineapi.com/indian-api/v1/sub-planet-chart', {
  method: 'POST',
  headers: {
      'Authorization': "Bearer {Your Auth Token}",
    },
  body: formData,
});

const data = await response.json();
console.log(data);
<?php

use GuzzleHttp\Client;

$client = new Client();

$response = $client->request('POST', 'https://astroapi-3.divineapi.com/indian-api/v1/sub-planet-chart', [
    'headers' => [
        'Authorization' => 'Bearer {Your Auth Token}',
    ],
    'multipart' => [
        ['name' => 'api_key', 'contents' => '{Your API Key}'],
        ['name' => 'full_name', 'contents' => 'Test'],
        ['name' => 'day', 'contents' => '24'],
        ['name' => 'month', 'contents' => '05'],
        ['name' => 'year', 'contents' => '2023'],
        ['name' => 'hour', 'contents' => '14'],
        ['name' => 'min', 'contents' => '40'],
        ['name' => 'sec', 'contents' => '43'],
        ['name' => 'gender', 'contents' => 'male'],
        ['name' => 'place', 'contents' => 'New Delhi'],
        ['name' => 'lat', 'contents' => '28.7041'],
        ['name' => 'lon', 'contents' => '77.1025'],
        ['name' => 'tzone', 'contents' => '5.5'],
        ['name' => 'lan', 'contents' => 'en'],
    ],
]);

echo $response->getBody();
package main

import (
    "bytes"
    "fmt"
    "mime/multipart"
    "net/http"
    "io"
)

func main() {
    body := &bytes.Buffer{}
    writer := multipart.NewWriter(body)
    writer.WriteField("api_key", "{Your API Key}")
    writer.WriteField("full_name", "Test")
    writer.WriteField("day", "24")
    writer.WriteField("month", "05")
    writer.WriteField("year", "2023")
    writer.WriteField("hour", "14")
    writer.WriteField("min", "40")
    writer.WriteField("sec", "43")
    writer.WriteField("gender", "male")
    writer.WriteField("place", "New Delhi")
    writer.WriteField("lat", "28.7041")
    writer.WriteField("lon", "77.1025")
    writer.WriteField("tzone", "5.5")
    writer.WriteField("lan", "en")
    writer.Close()

    req, _ := http.NewRequest("POST", "https://astroapi-3.divineapi.com/indian-api/v1/sub-planet-chart", body)
    req.Header.Set("Content-Type", writer.FormDataContentType())
    req.Header.Set("Authorization", "Bearer {Your Auth Token}")

    client := &http.Client{}
    resp, _ := client.Do(req)
    defer resp.Body.Close()

    body2, _ := io.ReadAll(resp.Body)
    fmt.Println(string(body2))
}
import okhttp3.*;
import java.io.IOException;

public class Main {
    public static void main(String[] args) throws IOException {
        OkHttpClient client = new OkHttpClient();

        RequestBody body = new MultipartBody.Builder()
            .setType(MultipartBody.FORM)
            .addFormDataPart("api_key", "{Your API Key}")
            .addFormDataPart("full_name", "Test")
            .addFormDataPart("day", "24")
            .addFormDataPart("month", "05")
            .addFormDataPart("year", "2023")
            .addFormDataPart("hour", "14")
            .addFormDataPart("min", "40")
            .addFormDataPart("sec", "43")
            .addFormDataPart("gender", "male")
            .addFormDataPart("place", "New Delhi")
            .addFormDataPart("lat", "28.7041")
            .addFormDataPart("lon", "77.1025")
            .addFormDataPart("tzone", "5.5")
            .addFormDataPart("lan", "en")
            .build();

        Request request = new Request.Builder()
            .url("https://astroapi-3.divineapi.com/indian-api/v1/sub-planet-chart")
            .post(body)
            .addHeader("Authorization", "Bearer {Your Auth Token}")
            .build();

        Response response = client.newCall(request).execute();
        System.out.println(response.body().string());
    }
}
import Foundation

let url = URL(string: "https://astroapi-3.divineapi.com/indian-api/v1/sub-planet-chart")!
var request = URLRequest(url: url)
request.httpMethod = "POST"
request.setValue("Bearer {Your Auth Token}", forHTTPHeaderField: "Authorization")

let boundary = "Boundary-\(UUID().uuidString)"
request.setValue("multipart/form-data; boundary=\(boundary)", forHTTPHeaderField: "Content-Type")

var bodyData = Data()
bodyData.append("--\(boundary)\r\n".data(using: .utf8)!)
bodyData.append("Content-Disposition: form-data; name=\"api_key\"\r\n\r\n".data(using: .utf8)!)
bodyData.append("{Your API Key}\r\n".data(using: .utf8)!)
bodyData.append("--\(boundary)\r\n".data(using: .utf8)!)
bodyData.append("Content-Disposition: form-data; name=\"full_name\"\r\n\r\n".data(using: .utf8)!)
bodyData.append("Test\r\n".data(using: .utf8)!)
bodyData.append("--\(boundary)\r\n".data(using: .utf8)!)
bodyData.append("Content-Disposition: form-data; name=\"day\"\r\n\r\n".data(using: .utf8)!)
bodyData.append("24\r\n".data(using: .utf8)!)
bodyData.append("--\(boundary)\r\n".data(using: .utf8)!)
bodyData.append("Content-Disposition: form-data; name=\"month\"\r\n\r\n".data(using: .utf8)!)
bodyData.append("05\r\n".data(using: .utf8)!)
bodyData.append("--\(boundary)\r\n".data(using: .utf8)!)
bodyData.append("Content-Disposition: form-data; name=\"year\"\r\n\r\n".data(using: .utf8)!)
bodyData.append("2023\r\n".data(using: .utf8)!)
bodyData.append("--\(boundary)\r\n".data(using: .utf8)!)
bodyData.append("Content-Disposition: form-data; name=\"hour\"\r\n\r\n".data(using: .utf8)!)
bodyData.append("14\r\n".data(using: .utf8)!)
bodyData.append("--\(boundary)\r\n".data(using: .utf8)!)
bodyData.append("Content-Disposition: form-data; name=\"min\"\r\n\r\n".data(using: .utf8)!)
bodyData.append("40\r\n".data(using: .utf8)!)
bodyData.append("--\(boundary)\r\n".data(using: .utf8)!)
bodyData.append("Content-Disposition: form-data; name=\"sec\"\r\n\r\n".data(using: .utf8)!)
bodyData.append("43\r\n".data(using: .utf8)!)
bodyData.append("--\(boundary)\r\n".data(using: .utf8)!)
bodyData.append("Content-Disposition: form-data; name=\"gender\"\r\n\r\n".data(using: .utf8)!)
bodyData.append("male\r\n".data(using: .utf8)!)
bodyData.append("--\(boundary)\r\n".data(using: .utf8)!)
bodyData.append("Content-Disposition: form-data; name=\"place\"\r\n\r\n".data(using: .utf8)!)
bodyData.append("New Delhi\r\n".data(using: .utf8)!)
bodyData.append("--\(boundary)\r\n".data(using: .utf8)!)
bodyData.append("Content-Disposition: form-data; name=\"lat\"\r\n\r\n".data(using: .utf8)!)
bodyData.append("28.7041\r\n".data(using: .utf8)!)
bodyData.append("--\(boundary)\r\n".data(using: .utf8)!)
bodyData.append("Content-Disposition: form-data; name=\"lon\"\r\n\r\n".data(using: .utf8)!)
bodyData.append("77.1025\r\n".data(using: .utf8)!)
bodyData.append("--\(boundary)\r\n".data(using: .utf8)!)
bodyData.append("Content-Disposition: form-data; name=\"tzone\"\r\n\r\n".data(using: .utf8)!)
bodyData.append("5.5\r\n".data(using: .utf8)!)
bodyData.append("--\(boundary)\r\n".data(using: .utf8)!)
bodyData.append("Content-Disposition: form-data; name=\"lan\"\r\n\r\n".data(using: .utf8)!)
bodyData.append("en\r\n".data(using: .utf8)!)
bodyData.append("--\(boundary)--\r\n".data(using: .utf8)!)
request.httpBody = bodyData

let task = URLSession.shared.dataTask(with: request) { data, response, error in
    if let data = data {
        print(String(data: data, encoding: .utf8) ?? "")
    }
}
task.resume()
import okhttp3.*

fun main() {
    val client = OkHttpClient()

    val body = MultipartBody.Builder()
        .setType(MultipartBody.FORM)
        .addFormDataPart("api_key", "{Your API Key}")
        .addFormDataPart("full_name", "Test")
        .addFormDataPart("day", "24")
        .addFormDataPart("month", "05")
        .addFormDataPart("year", "2023")
        .addFormDataPart("hour", "14")
        .addFormDataPart("min", "40")
        .addFormDataPart("sec", "43")
        .addFormDataPart("gender", "male")
        .addFormDataPart("place", "New Delhi")
        .addFormDataPart("lat", "28.7041")
        .addFormDataPart("lon", "77.1025")
        .addFormDataPart("tzone", "5.5")
        .addFormDataPart("lan", "en")
        .build()

    val request = Request.Builder()
        .url("https://astroapi-3.divineapi.com/indian-api/v1/sub-planet-chart")
        .post(body!!)
        .addHeader("Authorization", "Bearer {Your Auth Token}")
        .build()

    client.newCall(request).execute().use { response ->
        println(response.body?.string())
    }
}
using System;
using System.Net.Http;
using System.Threading.Tasks;

class Program {
    static async Task Main() {
        using var client = new HttpClient();
        client.DefaultRequestHeaders.Add("Authorization", "Bearer {Your Auth Token}");

        var content = new MultipartFormDataContent();
        content.Add(new StringContent("{Your API Key}"), "api_key");
        content.Add(new StringContent("Test"), "full_name");
        content.Add(new StringContent("24"), "day");
        content.Add(new StringContent("05"), "month");
        content.Add(new StringContent("2023"), "year");
        content.Add(new StringContent("14"), "hour");
        content.Add(new StringContent("40"), "min");
        content.Add(new StringContent("43"), "sec");
        content.Add(new StringContent("male"), "gender");
        content.Add(new StringContent("New Delhi"), "place");
        content.Add(new StringContent("28.7041"), "lat");
        content.Add(new StringContent("77.1025"), "lon");
        content.Add(new StringContent("5.5"), "tzone");
        content.Add(new StringContent("en"), "lan");

        var response = await client.PostAsync("https://astroapi-3.divineapi.com/indian-api/v1/sub-planet-chart", content);
        var result = await response.Content.ReadAsStringAsync();
        Console.WriteLine(result);
    }
}