Ir al contenido
POST/api/astro/moon-illumination/1 crédito

Iluminación y fase de la luna

Qué parte de la Luna está iluminada, como fracción real. Se calcula a partir de la elongación entre el Sol y la Luna: lit = (1 - cos(elongation)) / 2, que vale 0 en luna nueva, 0.5 en cualquiera de los cuartos y 1 en luna llena. Se devuelve como fracción y como porcentaje, junto con la elongación, el ángulo de fase, si la Luna está creciente y el nombre habitual de la fase. Este endpoint existe porque la clave del motor llamada `get_illumination` no devuelve la iluminación, sino la MAGNITUD APARENTE: unos -26.7 para el Sol y entre -6 y -12 para la Luna según la fase. Una fracción no puede ser negativa ni valer -26, y cualquier interfaz que muestre ese campo como «porcentaje iluminado» enseña un disparate. Ese valor se sigue devolviendo aquí, con el nombre que le corresponde: apparent_magnitude, donde un número menor significa más brillo.

https://api.occultapi.com/api/astro/moon-illumination/
Probar solicitud

Autenticación

Envía tu clave en la cabecera X-API-Key. La clave es una credencial de servidor: nunca la pongas en el JavaScript del navegador ni en una app móvil.

X-API-Key: yt_live_a1b2c3d4_…
Content-Type: application/json

Campos de la solicitud

CampoTipoObligatorioNotas
date_timestring (date-time)obligatorio

El momento del cálculo, en ISO 8601. Incluye SIEMPRE la diferencia con UTC o una Z final: un valor sin zona horaria se interpreta como Asia/Kolkata (UTC+05:30), no como UTC, y puede devolver con un 200 el resultado del día anterior. '2026-09-01T06:00:00Z' y '2026-09-01 06:00:00' son instantes distintos y dan respuestas distintas.

altitudenumber (double)opcional

Elevación del OBSERVADOR en metros, no la altura de un cuerpo.

keysarrayopcional

Los cálculos que quieres recibir, como lista de nombres. Consulta la tabla de claves de este endpoint; un nombre que no se reconoce invalida toda la solicitud. Cada llamada cuesta un crédito, pidas las claves que pidas, así que pide todo lo que necesites de una vez en lugar de hacer varias llamadas.

latitudenumber (double)opcional

Latitud del lugar, en grados decimales. Los valores positivos indican el norte y los negativos, el sur. Ejemplo: 26.9124 para Jaipur, 40.7128 para Nueva York. No se aceptan minutos ni segundos: conviértelos antes.

min -89.9 · max 89.9

longitudenumber (double)opcional

Longitud del lugar, en grados decimales. Los valores positivos indican el este y los negativos, el oeste. Ejemplo: 75.7873 para Jaipur, -74.0060 para Nueva York. Cuidado con el signo: si falta el menos, Nueva York acaba en China.

min -180 · max 180

planet_namesarrayopcional

Se ignora. Este endpoint siempre usa el Sol y la Luna.

time_zonenumber (double)opcional

Diferencia con UTC. Usa este campo o timezone_as_float; son equivalentes.

min -12 · max 14

timezone_as_floatnumber (double)opcional

Diferencia horaria del lugar con UTC, en horas y con decimales. Ejemplo: 5.5 para la India (UTC+05:30), -5 para Nueva York en invierno, 5.75 para Nepal. NO se contrasta con date_time: si los dos no coinciden, recibes una respuesta correcta para un momento equivocado, así que toma ambos valores de la misma fuente. Usa la diferencia vigente en esa fecha, no la de hoy: para un nacimiento en verano en un país con horario de verano, hace falta la diferencia de verano.

min -12 · max 14

Ejemplo de solicitud

curl -X POST https://api.occultapi.com/api/astro/moon-illumination/ \
  -H "X-API-Key: $OCCULT_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"date_time":"2026-09-09T12:00:00+00:00","latitude":26.9124,"longitude":75.7873,"timezone_as_float":0}'

Respuesta

{
  "data": {
    "illuminated_fraction": 0.034082,
    "illuminated_percent": 3.4082,
    "elongation_degrees": 21.277,
    "phase_angle_degrees": 338.723,
    "waxing": false,
    "phase_name": "New moon",
    "apparent_magnitude": {
      "moon": -6.123776,
      "sun": -26.726421
    },
    "longitudes": {
      "sun": 166.834,
      "moon": 145.557
    },
    "notes": {
      "apparent_magnitude": "The engine key named get_illumination returns apparent magnitude, not illumination. Smaller is brighter; it is negative for both of these bodies. Use illuminated_fraction for how much of the disc is lit."
    }
  },
  "status": 200,
  "is_error": false,
  "message": "successful"
}

Obtenida de una llamada real con la solicitud de arriba, tal cual. Los resultados van dentro de data.

Errores

Los errores de control de uso devuelven { "error": "…", "message": "<code>", "is_error": true }. Muestra error al usuario y usa message para decidir qué hace tu código. Consulta la referencia de errores.