Kundli
Create a birth chart and work with planetary positions.
Developer documentation
Build your first integration.
Start with a keyless sandbox request, choose a product guide, then explore the exact API contract. Guides and reference, together.
Start here
Make a keyless sandbox call, read the response, then connect your server to production when you are ready.
Sandbox returns fixed demonstration data with zero charge. It is separate from a production wallet: there is no free tier, trial or credit grant.
Send your production API key in the x-api-key header. Keep it on your server and read it from an environment variable. Never put a production key in browser code, a shared URL or a committed file.
Use the reference below to check the authentication requirement for each operation. Sandbox access is explicit and may be unavailable for some operations.
These three examples request the same fixed daily-horoscope sandbox response. Read the result from data; production inputs and responses are documented per operation below.
curl --fail-with-body --silent --show-error \
"https://api.vedika.io/sandbox/horoscope/daily?sign=aries&lang=en"// Node.js 18 or later. No API key needed for this fixed sandbox sample.
const response = await fetch(
"https://api.vedika.io/sandbox/horoscope/daily?sign=aries&lang=en"
);
if (!response.ok) throw new Error(`HTTP ${response.status}`);
const result = await response.json();
if (!result.success || !result.data) throw new Error("Sandbox returned no data");
if (typeof result.data.prediction !== "string" || !result.data.prediction.trim()) throw new Error("Sandbox returned no prediction");
console.log(result.data.prediction);
console.log(result.data.luckyNumber, result.data.luckyColor);# Python 3. No additional packages or API key needed.
import json
from urllib.request import urlopen
url = "https://api.vedika.io/sandbox/horoscope/daily?sign=aries&lang=en"
with urlopen(url, timeout=30) as response:
result = json.load(response)
if not result.get("success") or not result.get("data"):
raise RuntimeError("Sandbox returned no data")
prediction = result["data"].get("prediction")
if not isinstance(prediction, str) or not prediction.strip():
raise RuntimeError("Sandbox returned no prediction")
print(prediction)
print(result["data"]["luckyNumber"], result["data"]["luckyColor"])Follow the existing guides for your product. The reference remains available below for exact endpoint inputs and recorded responses.
Create a birth chart and work with planetary positions.
Read planetary periods and build a period timeline.
Build a calendar around daily Panchang data.
Choose a report, inspect its inputs and follow its delivery flow.
Read the voice integration contract before adding audio.
Embed a chart or daily-content widget in your site.
Find integration pages for your application stack.
Use Swift and Android AR scanners; review published features and pending physical-device acceptance.
Check the HTTP status and error response before reading data. Correct invalid input before retrying; check your key and access for authentication errors. On a rate-limit response, honour Retry-After when provided and back off.
Use the operation contract for required fields and your current plan for its limits. Keep paid retries tied to the documented idempotency contract for that operation.
Use the published SDK documentation for installation, supported methods and examples.
Installation and server-side integration.
Client setup and integration examples.
Find the client for your language.
Check published changes before upgrading your integration.
Loading catalog
Select an operation from the left to inspect its exact request contract and recorded response.
/
Production examples read x-api-key from process.env.VEDIKA_API_KEY or os.environ["VEDIKA_API_KEY"]. Never paste a live key into a shared file.
Sandbox appears only when an operation declares it, and returns a fixed sample charged at 0. Unavailable modes stay explicit instead of borrowing another endpoint.
Response examples are real recorded fixtures shown whole — billing, data, and metadata included. This explorer never sends a request or stores your key.