Build/Ephemeris
📡Ephemeris Namespace

The raw data tier.
For developers who need precision.

The Ephemeris namespace is the foundation layer — no interpretation, no application logic. Just verified astronomical quantities: Julian Dates, sidereal time, obliquity, precession, lunar nodes, planetary ephemeris tables, and star catalog data. 10 endpoints designed for developers building tools on top of APlicious data.

Get free API keyView API docs

Who builds with Ephemeris?

The Ephemeris namespace is for developers, researchers, and educators who need verified astronomical quantities — not consumer apps. Here are the primary use cases.

If you're building an open-source astrology library in Python, Rust, or Swift, you need reliable Julian Date conversion, sidereal time, and obliquity values to verify your calculations. The Ephemeris namespace is the reference layer — no interpretation, just numbers.

Target:
Open-source library authors, astrology software developers
Endpoints
/ephemeris/julian-date/ephemeris/sidereal-time/ephemeris/obliquity/ephemeris/delta-t
Pricing
Starter plan
$9/month · 10,000 calls
Latency
< 50ms
Pure computation, no upstream calls
Accuracy
JPL-grade
Same engine as NASA HORIZONS
Primary use
Developer tier
Build other products on top

Starter code

Planet ephemeris table and Julian Date conversion — two of the most common developer use cases.

ephemeris.ts
// Ephemeris data for a telescope scheduling system
// Built with APlicious Ephemeris namespace
// Replace YOUR_API_KEY with your key from aplicious.com/dashboard

const API_BASE = "https://aplicious.com/api/v1";
const API_KEY = "YOUR_API_KEY";

async function getPlanetEphemeris(
  body: string,       // e.g. "mars"
  steps: number = 7,  // number of rows
  startDate?: string  // ISO 8601 UTC (default: now)
) {
  const params = new URLSearchParams({ body, steps: String(steps) });
  if (startDate) params.set("datetime", startDate);

  const result = await fetch(
    `${API_BASE}/ephemeris/planet-ephemeris?${params}`,
    { headers: { "x-api-key": API_KEY } }
  ).then(r => r.json());

  // Returns: { body, steps, interval_days, ephemeris: [{ datetime, ecliptic_lon_deg, dist_au }] }
  return result.data.ephemeris;
}

async function getJulianDate(datetime: string) {
  const result = await fetch(
    `${API_BASE}/ephemeris/julian-date?datetime=${encodeURIComponent(datetime)}`,
    { headers: { "x-api-key": API_KEY } }
  ).then(r => r.json());

  return {
    jd: result.data.julian_date,       // 2461285.0
    mjd: result.data.modified_julian_date, // 61284.5
    j2000: result.data.j2000_offset_days,  // 9740.0
  };
}

All 10 endpoints

/dailyGeocentric RA/Dec + ecliptic for all bodies
/julian-dateISO 8601 → JD, MJD, J2000 offset, Unix
/sidereal-timeGAST and Local Sidereal Time (LST)
/obliquityMean and true obliquity of the ecliptic
/delta-tΔT (TT − UT1) for any date
/lunar-nodesRahu (ascending node) and Ketu in tropical + sidereal
/precessionPrecession rate and full cycle years
/body-infoPhysical data for any solar system body
/planet-ephemerisMulti-step ephemeris table, up to 30 rows
/star-dataBright star catalog — top 20 by magnitude
📡

Get started

Free plan · 250 API calls/month · No credit card required.