Motor de cálculo
Cada número que devuelve esta API sale de unas efemérides, no de una tabla ni de un modelo de IA. Aquí te contamos qué hay por debajo y hasta dónde llegamos: lo que no vamos a calcular.
Las efemérides
Las posiciones salen de las efemérides planetarias del JPL de la NASA, los mismos datos que se usan para guiar naves espaciales: 105 MB de posiciones tabuladas del año 500 al 2999 d. C., más 735 estrellas fijas.
Importa porque la alternativa son cálculos aproximados, válidos para el horóscopo del periódico pero no para una carta. Las fórmulas de movimiento medio se desvían varios grados con los siglos. Se nota en un nacimiento de 1890 o de 2090, y en una carta divisional ya no da un resultado algo distinto, sino otro resultado. En la D60, medio grado basta para que un planeta pase a la división siguiente.
Sideral, sí, pero ¿cuál?
La astrología védica es sideral: las posiciones se miden desde un punto fijo del cielo y no desde el equinoccio, que se va desplazando. La diferencia entre ambos es el ayanamsa, hoy de unos 24°, y no hay un valor único en el que todos estén de acuerdo.
Por eso es un parámetro. Aceptamos 48 ayanamsas (Lahiri, Raman, Krishnamurti, Fagan-Bradley, Yukteshwar, Suryasiddhanta y otros). Lahiri es el valor por defecto porque es el estándar oficial del Gobierno de la India, no porque sea el correcto.
{
"date_time": "1990-08-15T10:30:00+05:30",
"latitude": 26.9124,
"longitude": 75.7873,
"timezone_as_float": 5.5,
"ayanamsa": "KRISHNAMURTI"
}Dos astrólogos que no coinciden en el ayanamsa pueden usar esta API y obtener cada uno la carta que espera. Una API que deja uno fijo en el código ha tomado partido, sin avisar, en un debate que sigue abierto.
Qué cubre
299 endpoints, agrupados según lo que calculan:
Velocidad
La mediana del tiempo de servidor es de 62 ms y el 76 % de los endpoints responde en menos de 100 ms, según las mediciones de todos los ejemplos publicados en una ejecución local. Las efemérides están mapeadas en memoria, así que lo que cuesta en una carta es el cálculo, no la lectura del disco.
Si una llamada tarda más, es porque de verdad hace más trabajo: una búsqueda de tránsitos recorre un rango de fechas, y un informe en PDF reúne unos veinticinco endpoints en un solo documento y se cobra como una única llamada.
Determinismo
Con la misma entrada obtienes siempre la misma salida. No hay muestreo ni modelo de por medio: una carta calculada hoy y la misma carta calculada dentro de un año son idénticas byte a byte. Por eso las respuestas se pueden guardar en caché, y por eso 1783 funciones de prueba pueden comprobar valores exactos y no rangos.
Además, cualquier discrepancia se puede comprobar. Si nuestra Luna no coincide con la de tu software, una de las dos está mal, y el ayanamsa o la zona horaria te dirán cuál. No vale que las dos estén «más o menos bien».
Lo que no calculamos
El motor puede sacar un número para casi cualquier cosa. Pero algunos de esos números no significarían lo que el lector cree, y para ellos no hay endpoint.
- Deudas ancestrales del Lal Kitab. Todas las fuentes coinciden en el nombre de las ocho deudas, pero no en las condiciones que activan cada una: solo con las reglas publicadas para el pitra rin, la misma carta da respuestas distintas. No vamos a publicar un veredicto sobre los antepasados de nadie que dependa del libro que nos haya tocado leer.
- Campos para los que no tenemos una regla. Si un competidor devuelve un valor que no hemos podido respaldar con una fuente, ese campo no aparece y la respuesta explica por qué. Preferimos eso a darte una suposición creíble que no tendrías forma de comprobar.
- Nada que se presente como consejo médico, legal o financiero. Los textos sobre remedios son atribuciones tradicionales y así se indica.
Cuando dos escuelas discrepan de verdad y las dos tienen fundamento, la respuesta dice cuál ha aplicado. Así puedes comprobar el resultado en vez de creértelo sin más.
Pruébalo
curl -X POST https://api.occultapi.com/api/astro/planet-positions/ \
-H 'X-API-Key: yt_live_your_key_here' \
-H 'Content-Type: application/json' \
-d '{
"date_time": "1990-08-15T10:30:00+05:30",
"latitude": 26.9124,
"longitude": 75.7873,
"timezone_as_float": 5.5,
"ayanamsa": "LAHIRI"
}'O ejecútalo en el Playground sin escribir una línea de código.