Engine REST API

400+ astrological calculators over REST — Vedic, Western, Hellenistic, and more.

The Engine REST API exposes 400+ astrological calculators as a simple POST endpoint. Every calculator name is a dot-separated path (e.g., vedic.yoga.engine, western.natal.chart). Send birth data or other inputs in the JSON body; receive structured astrological output.

Base URL

Base URL
https://engine.astrocodex.ai
Calc endpoint
POST /v1/calc/{name}

Authentication

1

X-API-Key — Pass your Engine API key in the X-API-Key header.

2

OAuth 2.0 — Use OAuth 2.0 with scope "rest" to authenticate on behalf of a user.

What the Engine API covers

1

400+ calculators: Vedic (yogas, dashas, nakshatra, panchanga, sahams, doshas…), Western (natal, aspects, dignities, midpoints, fixed stars…), Hellenistic, and more.

2

Consistent input conventions: latitude, longitude, timezone_offset, date — see the technique-input-conventions doc.

3

Built-in i18n: named results already carry all four languages (name_en, name_ru, name_es, name_hi) — read the one you need. Catalog engines like the yoga engine also take a "lang" field in the request body.

4

Synastry & compatibility via two-chart calculators — vedic.compat.* (synastry_aspects, ashtakuta…) and western.relations.* (synastry_full, composite_chart…), each called by name through /v1/calc/{name}.

Discover calculators

Do not hard-code calculator names — ask the engine. GET /v1/calc returns the whole catalogue (every calculator with its name, system and description); GET /v1/calc/{name}/meta returns one calculator's full input schema (required fields and types). Both use the same X-API-Key as the calc endpoint.

List every calculator
GET /v1/calc
One calculator — input schema
GET /v1/calc/{name}/meta
Localisation

Most calculators return every name field in all four languages at once — name_en, name_ru, name_es, name_hi — so you simply read the language you want. Some catalog engines (for example vedic.yoga.engine) additionally accept a "lang" field in the JSON body — "en" | "ru" | "es" | "hi" — to return a single, pre-localised name and description.

Request body
POST /v1/calc/vedic.yoga.engine — { "lang": "es", … }
Rate limits & quotas

Rate limits (requests per minute) and monthly request quotas are defined per B2B tier in your subscription plan. See the pricing page for current tier limits.