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

Monthly Horoscope Prediction

Introducing the Monthly Horoscope Prediction API, a dependable solution for retrieving comprehensive astrological forecasts for an entire month. Integrate personalized monthly predictions for all zodiac signs into your websites, applications, and platforms to offer users detailed insights and guidance for the month ahead.


Step by Step Monthly Horoscope API Postman Testing Integration

Step by Step Monthly Horoscope API Postman Testing Integration


API Endpoint for English

POST https://astroapi-5.divineapi.com/api/v5/monthly-horoscope

Guide: If you only need English, use this endpoint.


API Endpoint for Other languages

POST https://astroapi-5-translator.divineapi.com/api/v5/monthly-horoscope

Guide: If you want the prediction in any other language use this translator endpoint.


Supported Language Codes

This API supports multiple languages. Use the lan parameter in the body to specify your desired language.

Supported Reference Article:
https://support.divineapi.com/general-api-support/translating-apis-into-a-different-language

CodeLanguage
enEnglish
hiHindi
zhChinese
jaJapanese
arArabic
ruRussian
ptPortuguese
esSpanish
frFrench
deGerman
itItalian
nlDutch
plPolish
trTurkish
ukUkrainian
huHungarian
grGreek
bnBengali
maMarathi
tmTamil
tlTelugu
mlMalayalam
knKannada
taFilipino/Tagalog
bahIndonesian

Guide: Ensure your translator setup is updated via DivineAPI Translator.


Headers

NameTypeDescription
Authorization*StringYour API Access Token. Example: Bearer {token}

Request Body

NameTypeDescription
api_key*StringYour DivineAPI key.
sign*StringZodiac sign (e.g., Aries, Capricorn).
month*StringSelect between current, prev, or next.
tzone*FloatTimezone offset, e.g. 5.5. Refer to the Timezone Guide.
lanStringLanguage code as per the table above. Default is en.

200: OK – Fetched Monthly Horoscope Prediction Successfully

{
    "success": 1,
    "data": {
        "sign": "Leo",
        "month": "October 2025",
        "monthly_horoscope": {
            "personal": "Personal growth and harmony are at the forefront for you, Leo, this month. Enjoy meaningful interactions with friends and family, as the Moon encourages balance in relationships. Find moments to reflect and set goals, ensuring your aspirations align with your inner desires. As challenges emerge, your inner strength and determination will guide you forward, reinforcing the importance of self-belief and perseverance.",
            "health": "Health-wise, the conjunction of the Moon and Saturn in your chart urges you to pay attention to routines and discipline. Incorporating structured exercise and balanced nutrition can enhance vitality and mental clarity. Be cautious of overindulging, as Neptune’s influence may blur boundaries. Focus on consistency in self-care practices to maintain your energy and resilience throughout the month.",
            "profession": "This month, Leos, your professional life sees a surge in creativity and initiative, with Mars in Pisces energizing your drive. Stay open to collaboration, as your ideas can flourish with teamwork. However, be mindful of communication due to Mercury's position in Capricorn, which may cause misunderstandings. Stay focused on details and you'll find opportunities for growth, especially in projects requiring imagination and innovation.",
            "emotions": "Emotionally, the Moon's aspects throughout the month will heighten your sensitivity. Engage in activities that ground you, as emotions could feel intense. This is a time for introspection and emotional healing, where old patterns come to light. Use creative outlets like art or writing to express what's on your mind. Communicating your feelings within supportive relationships can bring clarity and comfort.",
            "travel": "Leos, this month, travel can bring unexpected joy and learning experiences, thanks to the Moon's trine with Mars. Whether it's a short trip or a long journey, embrace the adventure. Stay flexible with plans as you might encounter changes, but these can lead to delightful surprises. New environments will inspire creative ideas and offer fresh perspectives on life.",
            "luck": [
                "Colors of the month : Gold, Royal Blue",
                "Lucky Numbers of the month : 3, 9, 21",
                "Lucky Alphabets you will be in sync with : L, A",
                "Cosmic Tip : Struggles hone our vibrational frequency to match the universe.",
                "Tips for Singles : Connect spiritually by immersing yourself in nature.",
                "Tips for Couples : Share reflections on health journeys and growth."
            ]
        },
        "special": {
            "lucky_color_codes": [
                "#FFD700",
                "#4169E1"
            ],
            "horoscope_percentage": {
                "personal": 80,
                "health": 75,
                "profession": 85,
                "emotions": 78,
                "travel": 82,
                "luck": 70
            }
        }
    }
}

Example Code
curl -X POST "https://astroapi-5.divineapi.com/api/v5/monthly-horoscope" \
  -H "Authorization: Bearer {Your Auth Token}" \
  --form 'api_key="{Your API Key}"' \
  --form 'sign="Aries"' \
  --form 'month="current"' \
  --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('sign', 'Aries');
form.append('month', 'current');
form.append('tzone', '5.5');
form.append('lan', 'en');

const response = await axios.post('https://astroapi-5.divineapi.com/api/v5/monthly-horoscope', form, {
  headers: {
    ...form.getHeaders(),
    'Authorization': 'Bearer {Your Auth Token}',
  }
});

console.log(response.data);
import requests

url = "https://astroapi-5.divineapi.com/api/v5/monthly-horoscope"
headers = {
    "Authorization": "Bearer {Your Auth Token}",
}
payload = {
    "api_key": "{Your API Key}",
    "sign": "Aries",
    "month": "current",
    "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('sign', 'Aries');
formData.append('month', 'current');
formData.append('tzone', '5.5');
formData.append('lan', 'en');

const response = await fetch('https://astroapi-5.divineapi.com/api/v5/monthly-horoscope', {
  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-5.divineapi.com/api/v5/monthly-horoscope', [
    'headers' => [
        'Authorization' => 'Bearer {Your Auth Token}',
    ],
    'multipart' => [
        ['name' => 'api_key', 'contents' => '{Your API Key}'],
        ['name' => 'sign', 'contents' => 'Aries'],
        ['name' => 'month', 'contents' => 'current'],
        ['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("sign", "Aries")
    writer.WriteField("month", "current")
    writer.WriteField("tzone", "5.5")
    writer.WriteField("lan", "en")
    writer.Close()

    req, _ := http.NewRequest("POST", "https://astroapi-5.divineapi.com/api/v5/monthly-horoscope", 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("sign", "Aries")
            .addFormDataPart("month", "current")
            .addFormDataPart("tzone", "5.5")
            .addFormDataPart("lan", "en")
            .build();

        Request request = new Request.Builder()
            .url("https://astroapi-5.divineapi.com/api/v5/monthly-horoscope")
            .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-5.divineapi.com/api/v5/monthly-horoscope")!
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=\"sign\"\r\n\r\n".data(using: .utf8)!)
bodyData.append("Aries\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("current\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("sign", "Aries")
        .addFormDataPart("month", "current")
        .addFormDataPart("tzone", "5.5")
        .addFormDataPart("lan", "en")
        .build()

    val request = Request.Builder()
        .url("https://astroapi-5.divineapi.com/api/v5/monthly-horoscope")
        .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("Aries"), "sign");
        content.Add(new StringContent("current"), "month");
        content.Add(new StringContent("5.5"), "tzone");
        content.Add(new StringContent("en"), "lan");

        var response = await client.PostAsync("https://astroapi-5.divineapi.com/api/v5/monthly-horoscope", content);
        var result = await response.Content.ReadAsStringAsync();
        Console.WriteLine(result);
    }
}