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

Find Magha Festivals

Celebrate the essence of Magha Month with our Magha Festivals API, designed to deliver comprehensive details about the festivals, observances, and rituals that occur during the Magha lunar month as per the Indian Panchang (Vedic Calendar).
This API provides festival names, tithis, muhurat timings, parana windows, and corresponding images for both Smarta and Vaishnava traditions.


Step by Step Find Magha Festivals API Postman Testing Integration

 https://support.divineapi.com/indian-astrology-apis/testing-festival-api-find-magha-festivals-api-using-postman


API Endpoint

POST https://astroapi-3.divineapi.com/indian-api/v2/magha-festivals

Returns Magha Month Festival Details in JSON response.


Headers

NameTypeDescription
Authorization*Stringyour API Access Token, e.g., Bearer {token}

Request Body

NameTypeDescription
api_key*Stringyour API key
year*Integeryear, e.g., 2023
placeStringplace, e.g., New Delhi
lat*Floatlatitude, e.g., 28.6139
lon*Floatlongitude, e.g., 77.2090
tzone*Floattimezone, e.g., 5.5 — Timezone Reference Guide

200: OK - Fetched Magha Festivals Successfully

{
    "success": 1,
    "data": {
        "year": "2023",
        "shattila_ekadashi": {
            "smartas": {
                "date": "2023-01-18",
                "parana": {
                    "start_time": "2023-01-19 07:15:00",
                    "end_time": "2023-01-19 09:21:00"
                },
                "image": "https://astroapi-6.divineapi.com/public/assets/vedic/festivals/images/main/Shattila%20Ekadashi.png"
            },
            "vaishnavas": {
                "date": "2023-01-18",
                "parana": {
                    "start_time": "2023-01-19 07:15:00",
                    "end_time": "2023-01-19 09:21:00"
                },
                "image": "https://astroapi-6.divineapi.com/public/assets/vedic/festivals/images/main/Shattila%20Ekadashi.png"
            }
        },
        "jaya_ekadashi": {
            "smartas": {
                "date": "2023-02-01",
                "parana": {
                    "start_time": "2023-02-02 07:09:33",
                    "end_time": "2023-02-02 09:18:33"
                },
                "image": "https://astroapi-6.divineapi.com/public/assets/vedic/festivals/images/main/Vijaya%20Ekadashi.png"
            },
            "vaishnavas": {
                "date": "2023-02-01",
                "parana": {
                    "start_time": "2023-02-02 07:09:33",
                    "end_time": "2023-02-02 09:18:33"
                },
                "image": "https://astroapi-6.divineapi.com/public/assets/vedic/festivals/images/main/Vijaya%20Ekadashi.png"
            }
        },
        "sakata_chauth": {
            "date": "2023-01-10",
            "moonrise": "2023-01-10 20:41:45",
            "image": "https://astroapi-6.divineapi.com/public/assets/vedic/festivals/images/main/Vijaya%20Ekadashi.png"
        },
        "vasant_panchami": {
            "date": "2023-01-26",
            "muhurat": {
                "start_time": "2023-01-26 07:12:54",
                "end_time": "2023-01-26 12:33:54"
            },
            "image": "https://astroapi-6.divineapi.com/public/assets/vedic/festivals/images/main/Vasant%20Panchami.png"
        },
        "ratha_saptami": {
            "date": "2023-01-28",
            "muhurat": {
                "start_time": "2023-01-28 05:26:04",
                "end_time": "2023-01-28 07:12:04"
            },
            "image": "https://astroapi-6.divineapi.com/public/assets/vedic/festivals/images/main/Ratha%20Saptami.png"
        },
        "bheeshma_ashtami": {
            "date": "2023-01-28",
            "madhyahna_time": {
                "start_time": "2023-01-28 11:28:34",
                "end_time": "2023-01-28 13:40:34"
            },
            "image": "https://astroapi-6.divineapi.com/public/assets/vedic/festivals/images/main/Bheeshma%20Ashtami.png"
        },
        "mauni_amavasya": {
            "date": "2023-01-21",
            "muhurat": {
                "start_time": "2023-01-21 05:26:32",
                "end_time": "2023-01-21 07:14:32"
            },
            "image": "https://astroapi-6.divineapi.com/public/assets/vedic/festivals/images/main/Mauni%20Amavasya.png"
        }
    }
}

Example Implementations

Below are examples of how to integrate and test this API using cURL, NodeJS, JavaScript (jQuery AJAX), and Python.


cURL

curl --location 'https://astroapi-3.divineapi.com/indian-api/v2/magha-festivals' \
--header 'Authorization: Bearer {Your Auth Token}' \
--form 'api_key="{Your API Key}"' \
--form 'year="2023"' \
--form 'place="New Delhi"' \
--form 'lat="28.6139"' \
--form 'lon="77.2090"' \
--form 'tzone="5.5"'

NodeJS

var request = require('request');
var options = {
  'method': 'POST',
  'url': 'https://astroapi-3.divineapi.com/indian-api/v2/magha-festivals',
  'headers': {
    'Authorization': 'Bearer {Your Auth Token}'
  },
  formData: {
    'api_key': '{Your API Key}',
    'year': '2023',
    'Place': 'New Delhi',
    'lat': '28.6139',
    'lon': '77.2090',
    'tzone': '5.5'
  }
};
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("year", "2023");
form.append("Place", "New Delhi");
form.append("lat", "28.6139");
form.append("lon", "77.2090");
form.append("tzone", "5.5");

var settings = {
  "url": "https://astroapi-3.divineapi.com/indian-api/v2/magha-festivals",
  "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/v2/magha-festivals"

payload = {'api_key': '{Your API Key}',
'year': '2023',
'Place': 'New Delhi',
'lat': '28.6139',
'lon': '77.2090',
'tzone': '5.5'}

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

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

print(response.text)

Implementation Notes

Use Authorization: Bearer {Your Auth Token} and {Your API Key} securely; never expose them in client-side code.

Provide date, time, and coordinates in correct numeric formats; use decimal timezone values (e.g., 5.5).

Always check HTTP status codes, log responses, and handle 4xx and 5xx errors gracefully.

Defaults for lan are not applicable for this endpoint unless specified.

Test via Postman before production use, and always use HTTPS for secure communication.

Example Code
curl -X POST "https://astroapi-3.divineapi.com/indian-api/v2/magha-festivals" \
  -H "Authorization: Bearer {Your Auth Token}" \
  --form 'api_key="{Your API Key}"' \
  --form 'year="2023"' \
  --form 'place="New Delhi"' \
  --form 'lat="28.6139"' \
  --form 'lon="77.2090"' \
  --form 'tzone="5.5"'
const FormData = require('form-data');
const axios = require('axios');

const form = new FormData();
form.append('api_key', '{Your API Key}');
form.append('year', '2023');
form.append('place', 'New Delhi');
form.append('lat', '28.6139');
form.append('lon', '77.2090');
form.append('tzone', '5.5');

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

console.log(response.data);
import requests

url = "https://astroapi-3.divineapi.com/indian-api/v2/magha-festivals"
headers = {
    "Authorization": "Bearer {Your Auth Token}",
}
payload = {
    "api_key": "{Your API Key}",
    "year": "2023",
    "place": "New Delhi",
    "lat": "28.6139",
    "lon": "77.2090",
    "tzone": "5.5",
}

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

print(response.json())
const formData = new FormData();
formData.append('api_key', '{Your API Key}');
formData.append('year', '2023');
formData.append('place', 'New Delhi');
formData.append('lat', '28.6139');
formData.append('lon', '77.2090');
formData.append('tzone', '5.5');

const response = await fetch('https://astroapi-3.divineapi.com/indian-api/v2/magha-festivals', {
  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/v2/magha-festivals', [
    'headers' => [
        'Authorization' => 'Bearer {Your Auth Token}',
    ],
    'multipart' => [
        ['name' => 'api_key', 'contents' => '{Your API Key}'],
        ['name' => 'year', 'contents' => '2023'],
        ['name' => 'place', 'contents' => 'New Delhi'],
        ['name' => 'lat', 'contents' => '28.6139'],
        ['name' => 'lon', 'contents' => '77.2090'],
        ['name' => 'tzone', 'contents' => '5.5'],
    ],
]);

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("year", "2023")
    writer.WriteField("place", "New Delhi")
    writer.WriteField("lat", "28.6139")
    writer.WriteField("lon", "77.2090")
    writer.WriteField("tzone", "5.5")
    writer.Close()

    req, _ := http.NewRequest("POST", "https://astroapi-3.divineapi.com/indian-api/v2/magha-festivals", 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("year", "2023")
            .addFormDataPart("place", "New Delhi")
            .addFormDataPart("lat", "28.6139")
            .addFormDataPart("lon", "77.2090")
            .addFormDataPart("tzone", "5.5")
            .build();

        Request request = new Request.Builder()
            .url("https://astroapi-3.divineapi.com/indian-api/v2/magha-festivals")
            .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/v2/magha-festivals")!
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=\"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=\"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.6139\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.2090\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)!)
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("year", "2023")
        .addFormDataPart("place", "New Delhi")
        .addFormDataPart("lat", "28.6139")
        .addFormDataPart("lon", "77.2090")
        .addFormDataPart("tzone", "5.5")
        .build()

    val request = Request.Builder()
        .url("https://astroapi-3.divineapi.com/indian-api/v2/magha-festivals")
        .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("2023"), "year");
        content.Add(new StringContent("New Delhi"), "place");
        content.Add(new StringContent("28.6139"), "lat");
        content.Add(new StringContent("77.2090"), "lon");
        content.Add(new StringContent("5.5"), "tzone");

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