IPGeolocation.io · JSON Structure

Astronomy Astronomy Data Structure

Astronomical data for the resolved location and requested date. Includes event times for sunrise, sunset, moonrise, moonset, twilight phases, golden hour, blue hour, solar noon, and astronomical midnight, as well as real-time positional data for the Sun and Moon at the current time of day. All timestamp fields (except `current_time` and `day_length`) are in `HH:mm` format by default. When the `time_zone` parameter is provided, they are returned as full date-time values in `yyyy-MM-dd HH:mm` format.

Type: object Properties: 26
GeocodingIP GeolocationIP IntelligenceIP SecurityASN LookupAbuse ContactTimezoneAstronomyUser AgentThreat IntelligencePublic APIs

AstronomyData is a JSON Structure definition published by IPGeolocation.io, describing 26 properties. It conforms to the https://json-structure.org/meta/core/v0/# meta-schema.

Properties

time_zone date current_time mid_night night_end morning sunrise sunset evening night_begin sun_status solar_noon day_length sun_altitude sun_distance sun_azimuth moon_phase moonrise moonset moon_status moon_altitude moon_distance moon_azimuth moon_parallactic_angle moon_illumination_percentage moon_angle

Meta-schema: https://json-structure.org/meta/core/v0/#

JSON Structure

Raw ↑
{
  "$schema": "https://json-structure.org/meta/core/v0/#",
  "$id": "https://raw.githubusercontent.com/api-evangelist/ipgeolocation/refs/heads/main/json-structure/astronomy-astronomy-data-structure.json",
  "name": "AstronomyData",
  "description": "Astronomical data for the resolved location and requested date.\n\nIncludes event times for sunrise, sunset, moonrise, moonset,\ntwilight phases, golden hour, blue hour, solar noon, and\nastronomical midnight, as well as real-time positional data\nfor the Sun and Moon at the current time of day.\n\nAll timestamp fields (except `current_time` and `day_length`) are\nin `HH:mm` format by default. When the `time_zone` parameter is\nprovided, they are returned as full date-time values in\n`yyyy-MM-dd HH:mm` format.\n",
  "type": "object",
  "properties": {
    "time_zone": {
      "type": "string",
      "description": "The IANA timezone identifier used for timestamp conversion.\nThis field appears only when the `time_zone` query parameter\nwas provided in the request.\n",
      "example": "Europe/London"
    },
    "date": {
      "type": "string",
      "description": "The date for which astronomical data is returned, in `yyyy-MM-dd` format.",
      "example": "2026-03-18"
    },
    "current_time": {
      "type": "string",
      "description": "Current local time at the resolved location in `HH:mm:ss.SSS` format.\nUsed as the reference time for real-time positional calculations\n(altitude, azimuth, distance).\n",
      "example": "10:15:00.000"
    },
    "mid_night": {
      "type": "string",
      "description": "Astronomical midnight (nadir) for the given date, in `HH:mm` format.\n",
      "example": "00:06"
    },
    "night_end": {
      "type": "string",
      "description": "End of night / start of astronomical twilight in the morning,\nin `HH:mm` format.\n",
      "example": "04:49"
    },
    "morning": {
      "type": "object",
      "description": "Twilight phase times for either the morning (pre-sunrise) or evening\n(post-sunset) period.\n\nIncludes astronomical, nautical, and civil twilight windows, as well\nas blue hour and golden hour windows commonly used in photography.\n\nAll times are in `HH:mm` format by default. When the `time_zone`\nparameter is provided, times are returned as full date-time values\nin `yyyy-MM-dd HH:mm` format.\n",
      "properties": {
        "astronomical_twilight_begin": {
          "type": "string",
          "description": "Start of astronomical twilight. In the morning, this marks the\nend of night; in the evening, this marks the start of night sky.\n",
          "example": "04:49"
        },
        "astronomical_twilight_end": {
          "type": "string",
          "description": "End of astronomical twilight.",
          "example": "05:21"
        },
        "nautical_twilight_begin": {
          "type": "string",
          "description": "Start of nautical twilight, when the horizon first becomes visible.\n",
          "example": "05:21"
        },
        "nautical_twilight_end": {
          "type": "string",
          "description": "End of nautical twilight.",
          "example": "05:53"
        },
        "civil_twilight_begin": {
          "type": "string",
          "description": "Start of civil twilight, when there is enough light for outdoor\nactivities without artificial lighting.\n",
          "example": "05:53"
        },
        "civil_twilight_end": {
          "type": "string",
          "description": "End of civil twilight.",
          "example": "06:20"
        },
        "blue_hour_begin": {
          "type": "string",
          "description": "Start of the blue hour, a period of soft diffused light with a\nblue color tone.\n",
          "example": "05:42"
        },
        "blue_hour_end": {
          "type": "string",
          "description": "End of the blue hour.",
          "example": "06:03"
        },
        "golden_hour_begin": {
          "type": "string",
          "description": "Start of the golden hour, a period of warm low-angle light\nfavored by photographers.\n",
          "example": "06:03"
        },
        "golden_hour_end": {
          "type": "string",
          "description": "End of the golden hour.",
          "example": "06:57"
        }
      }
    },
    "sunrise": {
      "type": "string",
      "description": "Time at which the sun rises at the resolved location, in `HH:mm` format.\n",
      "example": "06:20"
    },
    "sunset": {
      "type": "string",
      "description": "Time at which the sun sets at the resolved location, in `HH:mm` format.\n",
      "example": "19:00"
    },
    "evening": {
      "type": "object",
      "description": "Twilight phase times for either the morning (pre-sunrise) or evening\n(post-sunset) period.\n\nIncludes astronomical, nautical, and civil twilight windows, as well\nas blue hour and golden hour windows commonly used in photography.\n\nAll times are in `HH:mm` format by default. When the `time_zone`\nparameter is provided, times are returned as full date-time values\nin `yyyy-MM-dd HH:mm` format.\n",
      "properties": {
        "astronomical_twilight_begin": {
          "type": "string",
          "description": "Start of astronomical twilight. In the morning, this marks the\nend of night; in the evening, this marks the start of night sky.\n",
          "example": "04:49"
        },
        "astronomical_twilight_end": {
          "type": "string",
          "description": "End of astronomical twilight.",
          "example": "05:21"
        },
        "nautical_twilight_begin": {
          "type": "string",
          "description": "Start of nautical twilight, when the horizon first becomes visible.\n",
          "example": "05:21"
        },
        "nautical_twilight_end": {
          "type": "string",
          "description": "End of nautical twilight.",
          "example": "05:53"
        },
        "civil_twilight_begin": {
          "type": "string",
          "description": "Start of civil twilight, when there is enough light for outdoor\nactivities without artificial lighting.\n",
          "example": "05:53"
        },
        "civil_twilight_end": {
          "type": "string",
          "description": "End of civil twilight.",
          "example": "06:20"
        },
        "blue_hour_begin": {
          "type": "string",
          "description": "Start of the blue hour, a period of soft diffused light with a\nblue color tone.\n",
          "example": "05:42"
        },
        "blue_hour_end": {
          "type": "string",
          "description": "End of the blue hour.",
          "example": "06:03"
        },
        "golden_hour_begin": {
          "type": "string",
          "description": "Start of the golden hour, a period of warm low-angle light\nfavored by photographers.\n",
          "example": "06:03"
        },
        "golden_hour_end": {
          "type": "string",
          "description": "End of the golden hour.",
          "example": "06:57"
        }
      }
    },
    "night_begin": {
      "type": "string",
      "description": "Start of night / end of astronomical twilight in the evening,\nin `HH:mm` format.\n",
      "example": "20:31"
    },
    "sun_status": {
      "type": "string",
      "description": "Represents the current state of the sun relative to the horizon:\n\n- `\"-\"` \u2014 Normal day with both sunrise and sunset occurring.\n- `\"Always above the twilight angle\"` \u2014 The sun does not set\n  (perpetual daylight, e.g. polar summer).\n- `\"Always below the twilight angle\"` \u2014 The sun does not rise\n  within the current 24-hour period (e.g. polar night).\n",
      "example": "-"
    },
    "solar_noon": {
      "type": "string",
      "description": "The time when the sun is at its highest point in the sky,\nin `HH:mm` format.\n",
      "example": "12:40"
    },
    "day_length": {
      "type": "string",
      "description": "Total length of daylight for the date, from sunrise to sunset,\nin `HH:mm` format.\n",
      "example": "12:40"
    },
    "sun_altitude": {
      "type": "float",
      "description": "The sun's altitude angle above the horizon at `current_time`,\nmeasured in degrees. Negative values indicate the sun is below\nthe horizon.\n",
      "example": 42.5
    },
    "sun_distance": {
      "type": "float",
      "description": "Distance from Earth to the sun at `current_time`, in kilometers.\n",
      "example": 148900000.0
    },
    "sun_azimuth": {
      "type": "float",
      "description": "The azimuth angle of the sun at `current_time`, indicating its\ncompass direction in degrees (0\u00b0 = North, 90\u00b0 = East, etc.).\n",
      "example": 150.3
    },
    "moon_phase": {
      "type": "string",
      "description": "The current phase of the moon, indicating its position in the\nlunar cycle.\n",
      "enum": [
        "NEW_MOON",
        "WAXING_CRESCENT",
        "FIRST_QUARTER",
        "WAXING_GIBBOUS",
        "FULL_MOON",
        "WANING_GIBBOUS",
        "LAST_QUARTER",
        "WANING_CRESCENT"
      ],
      "example": "WAXING_CRESCENT"
    },
    "moonrise": {
      "type": "string",
      "description": "Time at which the moon rises at the resolved location, in `HH:mm`\nformat. Returns `\"-:-\"` if the moon does not rise on this date.\n",
      "example": "08:45"
    },
    "moonset": {
      "type": "string",
      "description": "Time at which the moon sets at the resolved location, in `HH:mm`\nformat. Returns `\"-:-\"` if the moon does not set on this date.\n",
      "example": "22:10"
    },
    "moon_status": {
      "type": "string",
      "description": "Represents the current state of the moon relative to the horizon:\n\n- `\"-\"` \u2014 Normal day with both moonrise and moonset occurring.\n- `\"Always above the horizon\"` \u2014 The moon does not set within\n  the current 24-hour period.\n- `\"Always below the horizon\"` \u2014 The moon does not rise within\n  the current 24-hour period.\n",
      "example": "-"
    },
    "moon_altitude": {
      "type": "float",
      "description": "The moon's altitude angle above the horizon at `current_time`,\nmeasured in degrees. Negative values indicate the moon is below\nthe horizon.\n",
      "example": 15.2
    },
    "moon_distance": {
      "type": "float",
      "description": "Distance from Earth to the moon at `current_time`, in kilometers.\n",
      "example": 384400.0
    },
    "moon_azimuth": {
      "type": "float",
      "description": "The azimuth angle of the moon at `current_time`, indicating its\ncompass direction in degrees.\n",
      "example": 220.5
    },
    "moon_parallactic_angle": {
      "type": "float",
      "description": "The angle between the celestial pole and the moon's position\nrelative to the observer's location, measured in degrees.\n",
      "example": 30.1
    },
    "moon_illumination_percentage": {
      "type": "string",
      "description": "The percentage of the moon's surface illuminated by sunlight\nas viewed from Earth. Returned as a string with two decimal\nplaces. Negative values indicate a waning phase.\n",
      "example": "25.40"
    },
    "moon_angle": {
      "type": "float",
      "description": "The angular diameter of the moon as observed from Earth,\nmeasured in degrees.\n",
      "example": 0.52
    }
  }
}