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

Gemstone Suggestion

The Gemstone Suggestion API provides personalized gemstone recommendations based on astrological and numerological principles. It suggests gemstones that align with an individual’s unique vibrations and planetary influences. The API also provides details such as the most suitable finger, day, and metal for wearing the gemstone. This helps users attract prosperity, health, and balance through harmonized energy fields.


Step by Step Gemstone Suggestion API Postman Testing Integration

Step by Step Gemstone Suggestion API Postman Testing Integration


Endpoint

POST https://astroapi-7.divineapi.com/numerology/v1/gemstones

Returns Gemstone Suggestion in response.


Headers

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

Request Body

NameTypeDescription
api_key*StringYour API key from the DivineAPI dashboard.
day*IntegerDate of birth. Example: 24.
month*IntegerMonth of birth. Example: 05.
year*IntegerYear of birth. Example: 2023.
fname*StringFirst name. Example: Rahul.
lnameStringLast name. Example: Kumar.
lanStringResponse language. Default: en (supports en, hi).

200: OK Numbers Fetched Successfully

{
    "status": "success",
    "code": 200,
    "message": "Request was successful",
    "data": {
        "gem_recommendation_one": {
            "name": "Emerald (Panna)",
            "icon": "https://astroapi-7.divineapi.com/public/gemstone/Emerald.png"
        },
        "gem_recommendation_one_finger": {
            "name": "Little",
            "icon": "https://astroapi-7.divineapi.com/public/gemstone/Little.png"
        },
        "gem_recommendation_one_best_day_wearing": {
            "name": "Wednesday",
            "icon": "https://astroapi-7.divineapi.com/public/gemstone/Wednesday.png"
        },
        "gem_recommendation_one_metal_suggesion": {
            "name": "Gold",
            "icon": "https://astroapi-7.divineapi.com/public/gemstone/Gold.png"
        },
        "gem_recommendation_two": {
            "name": "Emerald (Panna)",
            "icon": "https://astroapi-7.divineapi.com/public/gemstone/emerald.png"
        },
        "gem_recommendation_two_finger": {
            "name": "Little",
            "icon": "https://astroapi-7.divineapi.com/public/gemstone/Little.png"
        },
        "gem_recommendation_two_best_day_wearing": {
            "name": "Wednesday",
            "icon": "https://astroapi-7.divineapi.com/public/gemstone/Wednesday.png"
        },
        "gem_recommendation_two_metal_suggesion": {
            "name": "Gold",
            "icon": "https://astroapi-7.divineapi.com/public/gemstone/Gold.png"
        }
    }
}

Example Implementations

cURL

curl --location 'https://astroapi-7.divineapi.com/numerology/v1/gemstones' \
--header 'Bearer {Your Auth Token}' \
--form 'api_key="{Your API Key}"' \
--form 'day="24"' \
--form 'month="05"' \
--form 'year="2023"' \
--form 'fname="Rahul"' \
--form 'lname="Kumar"' \
--form 'lan="en"'

NodeJS

var request = require('request');
var options = {
  'method': 'POST',
  'url': https://astroapi-7.divineapi.com/numerology/v1/gemstones,
  'headers': {
    'Authorization': 'Bearer {Your Auth Token}'
  },
  formData: {
    'api_key': '{Your API Key}',
    'day': '24',
    'month': '05',
    'year': '2023',
    'fname': 'Rahul',
    'lname': 'Kumar',
    '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("day", "24");
form.append("month", "05");
form.append("year", "2023");
form.append("fname", "Rahul");
form.append("lname", "Kumar");
form.append("lan", "en");

var settings = {
  "url": "https://astroapi-7.divineapi.com/numerology/v1/gemstones",
  "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-7.divineapi.com/numerology/v1/gemstones"

payload = {'api_key': '{Your API Key}',
'day': '24',
'month': '05',
'year': '2023',
'fname': 'Rahul',
'lname': 'Kumar',
'lan': 'en'}

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

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

print(response.text)


Implementation Notes

Authentication Required:
Use a valid Bearer token in the Authorization header for successful API access.

Localized Output:
Use the lan parameter to retrieve gemstone names and descriptions in multiple languages (English, Hindi supported).

Display Integration:
You can utilize the gemstone image URLs (from icon) to show gemstone visuals in your app interface.

Practical Implementation:
Ideal for astrology dashboards, e-commerce jewelry platforms, and numerology-based wellness reports to offer gemstone consultation digitally.

Example Code
curl -X POST "https://astroapi-7.divineapi.com/numerology/v1/gemstones" \
  --form 'api_key="{Your API Key}"' \
  --form 'day="24"' \
  --form 'month="05"' \
  --form 'year="2023"' \
  --form 'fname="Rahul"' \
  --form 'lname="Kumar"' \
  --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('day', '24');
form.append('month', '05');
form.append('year', '2023');
form.append('fname', 'Rahul');
form.append('lname', 'Kumar');
form.append('lan', 'en');

const response = await axios.post('https://astroapi-7.divineapi.com/numerology/v1/gemstones', form, {
  headers: {
    ...form.getHeaders(),
  }
});

console.log(response.data);
import requests

url = "https://astroapi-7.divineapi.com/numerology/v1/gemstones"
payload = {
    "api_key": "{Your API Key}",
    "day": "24",
    "month": "05",
    "year": "2023",
    "fname": "Rahul",
    "lname": "Kumar",
    "lan": "en",
}

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

print(response.json())
const formData = new FormData();
formData.append('api_key', '{Your API Key}');
formData.append('day', '24');
formData.append('month', '05');
formData.append('year', '2023');
formData.append('fname', 'Rahul');
formData.append('lname', 'Kumar');
formData.append('lan', 'en');

const response = await fetch('https://astroapi-7.divineapi.com/numerology/v1/gemstones', {
  method: 'POST',
  body: formData,
});

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

use GuzzleHttp\Client;

$client = new Client();

$response = $client->request('POST', 'https://astroapi-7.divineapi.com/numerology/v1/gemstones', [
    'multipart' => [
        ['name' => 'api_key', 'contents' => '{Your API Key}'],
        ['name' => 'day', 'contents' => '24'],
        ['name' => 'month', 'contents' => '05'],
        ['name' => 'year', 'contents' => '2023'],
        ['name' => 'fname', 'contents' => 'Rahul'],
        ['name' => 'lname', 'contents' => 'Kumar'],
        ['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("day", "24")
    writer.WriteField("month", "05")
    writer.WriteField("year", "2023")
    writer.WriteField("fname", "Rahul")
    writer.WriteField("lname", "Kumar")
    writer.WriteField("lan", "en")
    writer.Close()

    req, _ := http.NewRequest("POST", "https://astroapi-7.divineapi.com/numerology/v1/gemstones", body)
    req.Header.Set("Content-Type", writer.FormDataContentType())

    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("day", "24")
            .addFormDataPart("month", "05")
            .addFormDataPart("year", "2023")
            .addFormDataPart("fname", "Rahul")
            .addFormDataPart("lname", "Kumar")
            .addFormDataPart("lan", "en")
            .build();

        Request request = new Request.Builder()
            .url("https://astroapi-7.divineapi.com/numerology/v1/gemstones")
            .post(body)
            .build();

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

let url = URL(string: "https://astroapi-7.divineapi.com/numerology/v1/gemstones")!
var request = URLRequest(url: url)
request.httpMethod = "POST"

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=\"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=\"fname\"\r\n\r\n".data(using: .utf8)!)
bodyData.append("Rahul\r\n".data(using: .utf8)!)
bodyData.append("--\(boundary)\r\n".data(using: .utf8)!)
bodyData.append("Content-Disposition: form-data; name=\"lname\"\r\n\r\n".data(using: .utf8)!)
bodyData.append("Kumar\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("day", "24")
        .addFormDataPart("month", "05")
        .addFormDataPart("year", "2023")
        .addFormDataPart("fname", "Rahul")
        .addFormDataPart("lname", "Kumar")
        .addFormDataPart("lan", "en")
        .build()

    val request = Request.Builder()
        .url("https://astroapi-7.divineapi.com/numerology/v1/gemstones")
        .post(body!!)
        .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();

        var content = new MultipartFormDataContent();
        content.Add(new StringContent("{Your API Key}"), "api_key");
        content.Add(new StringContent("24"), "day");
        content.Add(new StringContent("05"), "month");
        content.Add(new StringContent("2023"), "year");
        content.Add(new StringContent("Rahul"), "fname");
        content.Add(new StringContent("Kumar"), "lname");
        content.Add(new StringContent("en"), "lan");

        var response = await client.PostAsync("https://astroapi-7.divineapi.com/numerology/v1/gemstones", content);
        var result = await response.Content.ReadAsStringAsync();
        Console.WriteLine(result);
    }
}