{"id":50009759,"url":"https://github.com/prostraction/moon-api","last_synced_at":"2026-05-19T21:35:28.661Z","repository":{"id":309783144,"uuid":"1036073812","full_name":"prostraction/moon-api","owner":"prostraction","description":"API for Moon phase calculations. Calculates moon day, illumination, phase, moon rises and more.","archived":false,"fork":false,"pushed_at":"2026-04-26T12:59:48.000Z","size":24871,"stargazers_count":1,"open_issues_count":18,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2026-04-26T13:07:52.646Z","etag":null,"topics":["api","moon","moon-api"],"latest_commit_sha":null,"homepage":"https://moon-api.ru","language":"Go","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/prostraction.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2025-08-11T14:15:50.000Z","updated_at":"2026-04-26T12:59:52.000Z","dependencies_parsed_at":"2025-09-02T18:16:30.013Z","dependency_job_id":"3b4044e8-85d7-45f8-aeec-3da815a8602d","html_url":"https://github.com/prostraction/moon-api","commit_stats":null,"previous_names":["prostraction/moon","prostraction/moon-api"],"tags_count":18,"template":false,"template_full_name":null,"purl":"pkg:github/prostraction/moon-api","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/prostraction%2Fmoon-api","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/prostraction%2Fmoon-api/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/prostraction%2Fmoon-api/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/prostraction%2Fmoon-api/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/prostraction","download_url":"https://codeload.github.com/prostraction/moon-api/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/prostraction%2Fmoon-api/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":33233740,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-05-19T15:49:41.270Z","status":"ssl_error","status_checked_at":"2026-05-19T15:49:22.917Z","response_time":58,"last_error":"SSL_connect returned=1 errno=0 peeraddr=140.82.121.6:443 state=error: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["api","moon","moon-api"],"created_at":"2026-05-19T21:35:27.924Z","updated_at":"2026-05-19T21:35:28.643Z","avatar_url":"https://github.com/prostraction.png","language":"Go","funding_links":[],"categories":[],"sub_categories":[],"readme":"# API for Moon calculations\n\n## Run\n\nPort by default: 9998\n\nMain server:\n```\ngit clone https://github.com/prostraction/moon\ncd moon\ngo run cmd/main.go\n```\n\nAddon:\n```\npip install skyfield\npython addon/skyfield/server.py\n```\n\n## Documentation\n\n- [Postman](https://www.postman.com/prostraction/moon-walker/overview)\n- [Apidog](https://moonwalker.apidog.io)\n\n## Methods\n\n### GET /api/v1/moonPhaseDate\n\nThe method returns the Moon parameters for the specified day and time. If the day or time is not specified, the current value for the unspecified fields is taken. If longitude and latitude are specified, the response will contain additional structures.\n\n#### Params\n\n  | Parameter | Type | Description | Example Value |\n| :--- | :--- | :--- |  :--- | \n|`utc` | `string [optional, default=\"UTC+0\"]` | UTC in format `UTC+7`, `UTC+09:30`, `-3` | `UTC+4`\n|`lang` | `string [optional, default=\"en\"]` | Values available: (\"en\", \"es\", \"fr\", \"de\", \"ru\", \"jp\") | `es`\n|`precision` | `int [optional, default=2]` | How many digits after ```.``` will be in output. Allowed range: [1, 20] | `5`\n|`timeFormat` | `string [optional]` | How the data will be formed. Available values: ISO (default), timestamp, duration or Go format. Duration is seconds between current date and event time.| `duration`\n|`latitude` | `float [optional, default=none]` | Latitude of viewer's place. Used for moon position calculations: ```MoonDaysDetailed```, ```MoonRiseAndSet```, and ```MoonPosition``` object | `51.1655`\n|`longitude` | `float [optional, default=none]` | Longitude of viewer's place. Used for moon position calculations: ```MoonDaysDetailed```, ```MoonRiseAndSet```, and ```MoonPosition``` object | `71.4272`\n|`year` | `int [optional, default=\u003ccurrent year\u003e]` | Format: YYYY Allowed range: [1, 9999] | `2025`\n|`month` | `int [optional, default=\u003ccurrent month\u003e]` | Format: M or MM. Allowed range: [1, 12] | `01` or `1`\n|`day` | `int [optional, default=\u003ccurrent day\u003e]` | Format: D or DD. Allowed range: [1, 31] | `01` or `1`\n|`hour` | `int [optional, default=\u003ccurrent hour\u003e]` | Format: h or hh. Allowed range: [0, 23] | `01` or `1`\n|`minute` | `int [optional, default=\u003ccurrent minute\u003e]` | Format: m or mm. Allowed range: [0, 59] | `01` or `1`\n|`second` | `int [optional, default=\u003ccurrent second\u003e]` | Format: s or ss. Allowed range: [0, 59] | `01` or `1`\n\n\n----------------------------------------------------------------\n\n#### Response:\n\nThe method returns 6 objects:\n- ```BeginDay```, ```CurrentState```, ```EndDay``` objects of the ```MoonStat``` structure to display the position of the moon at the beginning of the day, the specified time and the end of the day, respectively;\n- ```MoonDaysDetailed```, a structure for determining the number of lunar days on a given day;\n- ```ZodiacDetailed```, a structure for determining which zodiac sign the moon is in on a given time interval, when it began and ended. It contains an array for each lunar day that falls on a given Earth day;\n- ```MoonRiseAndSet```, a structure for determining the moonrise, moonset and meridian on a given day.\n\n\u003cdetails\u003e\n  \u003csummary\u003e\u003cstrong\u003eTable\u003c/strong\u003e\u003c/summary\u003e\n  \n  | Response Variable | Type | Description |\n| :--- | :--- | :--- | \n|`BeginDay` | `Object of struct MoonStat [required]` | Data for the beginning of the requested day (00:00) |\n|`CurrentState` | `Object of struct MoonStat [required]` | Data at specified time of requested day: hour, minute and second from request Params. |\n|`EndDay` | `Object of struct MoonStat [required]` | Data for end of requested day (00:00 next day) |\n|`MoonDaysDetailed` | `Object of struct MoonDaysDetailed [optional]` | Detailed lunar day information that falls on a given Earth day. Exists only if latitude and longitude are specified. |\n|`ZodiacDetailed` | `Object of struct ZodiacDetailed [required]` | Detailed zodiac transit information | \n|`MoonRiseAndSet` | `Object of struct MoonRiseAndSet [optional]` | Moon rise/set/meridian events. Exists only if latitude and longitude are specified. |\n  \n\u003c/details\u003e\n\n----------------------------------------------------------------\n\n##### MoonStat (used as ```BeginDay```, ```CurrentState```, ```EndDay```)\n\n```MoonStat``` objects are used to display at a given time.\nIn case of a method response, MoonStat will contain the values:\n- BeginDay: start of the day, 00:00AM\n- CurrentState: given time from request\n- EndDay: start of the next day, 00:00AM\n\n\u003cdetails\u003e\n  \u003csummary\u003e\u003cstrong\u003eTable\u003c/strong\u003e\u003c/summary\u003e\n\n  | Response Variable | Type | Description | Example Value |\n| :--- | :--- | :--- | :--- |\n|`MoonStat.MoonDays` | `Float [required]` | Lunar day number | `23.54` |\n|`MoonStat.Illumination` | `Float [required]` | Percentage of Moon's disk illuminated | `38.27` |\n|`MoonStat.Phase` | `Object of struct Phase [required]` | Lunar phase details | - |\n|`MoonStat.Zodiac` | `Object of struct Zodiac [required]` | Zodiac sign details | - |\n|`MoonStat.MoonPosition` | `Object of struct MoonPosition [optional]` | Moon position data. Exists only if latitude and longitude are specified. | - |\n\nPhase structure:\n\n  | Response Variable | Type | Description | Example Value |\n| :--- | :--- | :--- | :--- |\n|`Phase.Name` | `String [required]` | Phase name in English | `\"Waning Crescent\"` |\n|`Phase.NameLocalized` | `String [required]` | Localized phase name | `\"Убывающий серп\"` |\n|`Phase.Emoji` | `String [required]` | Phase emoji | `\"🌘\"` |\n|`Phase.IsWaxing` | `Boolean [required]` | True if Moon is waxing / illumination is increasing | `false` |\n\nZodiac structure:\n\n  | Response Variable | Type | Description | Example Value |\n| :--- | :--- | :--- | :--- |\n|`Zodiac.Name` | `String [required]` | Zodiac name in English | `\"Gemini\"` |\n|`Zodiac.NameLocalized` | `String [required]` | Localized zodiac name | `\"Близнецы\"` |\n|`Zodiac.Emoji` | `String [required]` | Zodiac emoji | `\"♊\"` |\n\nMoonPosition structure (Exists only if latitude and longitude are specified):\n\n  | Response Variable | Type | Description | Example Value |\n| :--- | :--- | :--- | :--- |\n|`MoonPosition.Time` | `String / int64 [required]` | Time in ISO (default) or specified timeFormat | `\"2025-09-16T00:00:00+05:00\"` |\n|`MoonPosition.AzimuthDegrees` | `Float [required]` | Compass direction (0°=North) | `57.1` |\n|`MoonPosition.AltitudeDegrees` | `Float [required]` | Angle above horizon (negative = below) | `8.8` |\n|`MoonPosition.Direction` | `String [required]` | Cardinal direction abbreviation | `\"ENE\"` |\n|`MoonPosition.DistanceKm` | `Float [required]` | Earth-Moon distance in km | `376559.9` |\n\n\u003c/details\u003e\n\n\u003c/details\u003e\n\n----------------------------------------------------------------\n\n##### MoonDaysDetailed\n\n```MoonDaysDetailed``` is a structure that contains an array for each lunar day that falls on a given Earth day. Exists only if latitude and longitude are specified.\n\n\u003cdetails\u003e\n  \u003csummary\u003e\u003cstrong\u003eTable\u003c/strong\u003e\u003c/summary\u003e\n\n  | Response Variable | Type | Description | Example Value |\n| :--- | :--- | :--- | :--- |\n|`MoonDaysDetailed.Count` | `Integer [required]` | Number of lunar days this calendar day | `2` |\n|`MoonDaysDetailed.Day` | `Array\u003cObject\u003e [required]` | Array of lunar day periods | - |\n|`MoonDaysDetailed.Day[].Begin` | `String [optional]` | Start time of lunar day (ISO 8601) | `\"2025-09-15T22:37:45+05:00\"` |\n|`MoonDaysDetailed.Day[].IsBeginExists` | `Boolean [required]` | True if start time is past/present | `true` |\n|`MoonDaysDetailed.Day[].End` | `String [optional]` | End time of lunar day (ISO 8601) | `\"2025-09-16T23:56:10+05:00\"` |\n|`MoonDaysDetailed.Day[].IsEndExists` | `Boolean [required]` | True if end time is past | `true`, `false` |\n\n\u003c/details\u003e\n\n----------------------------------------------------------------\n\n##### ZodiacDetailed\n\n```ZodiacDetailed``` is a structure for determining which zodiac sign the moon is in on a given time interval, when it began and ended. It contains an array for each lunar day that falls on a given Earth day.\n\n\u003cdetails\u003e\n  \u003csummary\u003e\u003cstrong\u003eTable\u003c/strong\u003e\u003c/summary\u003e\n\n  | Response Variable | Type | Description | Example Value |\n| :--- | :--- | :--- | :--- |\n|`ZodiacDetailed.Count` | `Integer [required]` | Number of zodiac signs this day | `1` |\n|`ZodiacDetailed.Zodiac` | `Array\u003cObject\u003e [required]` | Array of zodiac transit periods | - |\n|`ZodiacDetailed.Zodiac[].Name` | `String [required]` | Zodiac sign name | `\"Gemini\"` |\n|`ZodiacDetailed.Zodiac[].NameLocalized` | `String [required]` | Localized zodiac name | `\"Близнецы\"` |\n|`ZodiacDetailed.Zodiac[].Emoji` | `String [required]` | Zodiac emoji | `\"♊\"` |\n|`ZodiacDetailed.Zodiac[].Begin` | `String [required]` | Entry time into sign (ISO 8601) | `\"2025-09-14T23:07:06+05:00\"` |\n|`ZodiacDetailed.Zodiac[].End` | `String [required]` | Exit time from sign (ISO 8601) | `\"2025-09-17T11:07:06+05:00\"` |\n\n\u003c/details\u003e\n\n----------------------------------------------------------------\n\n##### MoonRiseAndSet\n\n```MoonRiseAndSet``` is a structure for determining the moonrise, moonset and meridian on a given day. Exists only if latitude and longitude are specified.\n\n\u003cdetails\u003e\n  \u003csummary\u003e\u003cstrong\u003eTable\u003c/strong\u003e\u003c/summary\u003e\n\n| Response Variable | Type | Description | Example Value |\n| :--- | :--- | :--- | :--- |\n|`MoonRiseAndSet.Date` | `String [optional]` | Date for day of calculations, missing as default | `2025-01-15` |\n|`MoonRiseAndSet.IsMoonRise` | `Boolean [required]` | True if moonrise occurs at given day | `true` |\n|`MoonRiseAndSet.IsMoonSet` | `Boolean [required]` | True if moonset occurs at given day | `true` |\n|`MoonRiseAndSet.IsMeridian` | `Boolean [required]` | True if meridian transit occurs at given day | `true` |\n|`MoonRiseAndSet.Moonrise` | `Object of struct MoonPosition [optional]` | Moonrise position data. Exists only if IsMoonRise = true | - |\n|`MoonRiseAndSet.Moonset` | `Object of struct MoonPosition [optional]` | Moonset position data. Exists only if IsMoonSet = true | - |\n|`MoonRiseAndSet.Meridian` | `Object of struct MoonPosition [optional]` | Meridian position data, Exists only if IsMeridian = true | - |\n\nMoonPosition structure:\n\n\u003cdetails\u003e\n  \u003csummary\u003e\u003cstrong\u003eTable\u003c/strong\u003e\u003c/summary\u003e\n\n| Response Variable | Type | Description | Example Value |\n| :--- | :--- | :--- | :--- |\n|`MoonPosition.Time` | `String / int64 [required]` | Time in ISO (default) or specified timeFormat | `\"2025-09-16T00:00:00+05:00\"` |\n|`MoonPosition.AzimuthDegrees` | `Float [required]` | Moonrise azimuth | `47.3` |\n|`MoonPosition.AltitudeDegrees` | `Float [required]` | Moonrise altitude | `-0.6` |\n|`MoonPosition.Direction` | `String [required]` | Moonrise direction | `\"ENE\"` |\n|`MoonPosition.DistanceKm` | `Float [required]` | Earth-Moon distance in km | `376559.9` |\n\n\u003c/details\u003e\n\n\u003c/details\u003e\n\n----------------------------------------------------------------\n\n#### Response examples\n\nResponse of:\n```GET /api/v1/moonPhaseDate?lang=ru\u0026utc=5\u0026latitude=51.1655\u0026longitude=71.4272\u0026year=2025\u0026month=09\u0026day=15\u0026precision=5\u0026hour=12\u0026minute=0\u0026second=0```\n\n\u003cdetails\u003e\n  \u003csummary\u003e\u003cstrong\u003eJSON\u003c/strong\u003e\u003c/summary\u003e\n\n```json\n{\n  \"BeginDay\": {\n    \"MoonDays\": 22.53674,\n    \"Illumination\": 49.42951,\n    \"Phase\": {\n      \"Name\": \"Third quarter\",\n      \"NameLocalized\": \"Последняя четверть\",\n      \"Emoji\": \"🌗\",\n      \"IsWaxing\": false\n    },\n    \"Zodiac\": {\n      \"Name\": \"Gemini\",\n      \"NameLocalized\": \"Близнецы\",\n      \"Emoji\": \"♊\"\n    },\n    \"MoonPosition\": {\n      \"Time\": \"2025-09-15T02:00:00+05:00\",\n      \"AzimuthDegrees\": 66.96877,\n      \"AltitudeDegrees\": 17.50543,\n      \"Direction\": \"ENE\",\n      \"DistanceKm\": 373227.05417\n    }\n  },\n  \"CurrentState\": {\n    \"MoonDays\": 23.03674,\n    \"Illumination\": 43.78443,\n    \"Phase\": {\n      \"Name\": \"Waning Crescent\",\n      \"NameLocalized\": \"Убывающий серп\",\n      \"Emoji\": \"🌘\",\n      \"IsWaxing\": false\n    },\n    \"Zodiac\": {\n      \"Name\": \"Gemini\",\n      \"NameLocalized\": \"Близнецы\",\n      \"Emoji\": \"♊\"\n    },\n    \"MoonPosition\": {\n      \"Time\": \"2025-09-15T14:00:00+05:00\",\n      \"AzimuthDegrees\": 279.37345,\n      \"AltitudeDegrees\": 29.04833,\n      \"Direction\": \"W\",\n      \"DistanceKm\": 374869.93889\n    }\n  },\n  \"EndDay\": {\n    \"MoonDays\": 23.53674,\n    \"Illumination\": 38.2726,\n    \"Phase\": {\n      \"Name\": \"Waning Crescent\",\n      \"NameLocalized\": \"Убывающий серп\",\n      \"Emoji\": \"🌘\",\n      \"IsWaxing\": false\n    },\n    \"Zodiac\": {\n      \"Name\": \"Gemini\",\n      \"NameLocalized\": \"Близнецы\",\n      \"Emoji\": \"♊\"\n    },\n    \"MoonPosition\": {\n      \"Time\": \"2025-09-16T02:00:00+05:00\",\n      \"AzimuthDegrees\": 57.08873,\n      \"AltitudeDegrees\": 8.79646,\n      \"Direction\": \"ENE\",\n      \"DistanceKm\": 376559.88437\n    }\n  },\n  \"MoonDaysDetailed\": {\n    \"Count\": 2,\n    \"Day\": [\n      {\n        \"Begin\": \"2025-09-14T21:31:05+05:00\",\n        \"IsBeginExists\": true,\n        \"End\": \"2025-09-15T22:37:45+05:00\",\n        \"IsEndExists\": true\n      },\n      {\n        \"Begin\": \"2025-09-15T22:37:45+05:00\",\n        \"IsBeginExists\": true,\n        \"End\": \"2025-09-16T23:56:10+05:00\",\n        \"IsEndExists\": true\n      }\n    ]\n  },\n  \"ZodiacDetailed\": {\n    \"Count\": 1,\n    \"Zodiac\": [\n      {\n        \"Name\": \"Gemini\",\n        \"NameLocalized\": \"Близнецы\",\n        \"Emoji\": \"♊\",\n        \"Begin\": \"2025-09-14T23:07:06+05:00\",\n        \"End\": \"2025-09-17T11:07:06+05:00\"\n      }\n    ]\n  },\n  \"MoonRiseAndSet\": {\n    \"IsMoonRise\": true,\n    \"IsMoonSet\": true,\n    \"IsMeridian\": true,\n    \"Moonrise\": {\n      \"Time\": \"2025-09-15T22:37:45+05:00\",\n      \"AzimuthDegrees\": 42.31555,\n      \"AltitudeDegrees\": -0.56667,\n      \"Direction\": \"NE\",\n      \"DistanceKm\": 376365.00012\n    },\n    \"Moonset\": {\n      \"Time\": \"2025-09-15T15:46:53+05:00\",\n      \"AzimuthDegrees\": 318.44328,\n      \"AltitudeDegrees\": -0.56667,\n      \"Direction\": \"NW\",\n      \"DistanceKm\": 375398.22022\n    },\n    \"Meridian\": {\n      \"Time\": \"2025-09-15T06:40:13+05:00\",\n      \"AzimuthDegrees\": 180,\n      \"AltitudeDegrees\": 67.1,\n      \"Direction\": \"S\",\n      \"DistanceKm\": 374133.37617\n    }\n  }\n}\n```\n\n\u003c/details\u003e\n\n\n\u003cdetails\u003e\n  \u003csummary\u003e\u003cstrong\u003etimeFormat = 2006-01-02 15:04\u003c/strong\u003e\u003c/summary\u003e\n\n```json\n{\n    \"BeginDay\": {\n        \"MoonDays\": 0.85568,\n        \"Illumination\": 0.35744,\n        \"Phase\": {\n            \"Name\": \"New Moon\",\n            \"NameLocalized\": \"Новолуние\",\n            \"Emoji\": \"🌑\",\n            \"IsWaxing\": true\n        },\n        \"Zodiac\": {\n            \"Name\": \"Virgo\",\n            \"NameLocalized\": \"Дева\",\n            \"Emoji\": \"♍\"\n        },\n        \"MoonPosition\": {\n            \"Time\": \"2025-01-01 00:00\",\n            \"AzimuthDegrees\": 326.86255,\n            \"AltitudeDegrees\": -62.68617,\n            \"Direction\": \"NNW\",\n            \"DistanceKm\": 382464.56722\n        }\n    },\n    \"CurrentState\": {\n        \"MoonDays\": 0.89806,\n        \"Illumination\": 0.4137,\n        \"Phase\": {\n            \"Name\": \"New Moon\",\n            \"NameLocalized\": \"Новолуние\",\n            \"Emoji\": \"🌑\",\n            \"IsWaxing\": true\n        },\n        \"Zodiac\": {\n            \"Name\": \"Virgo\",\n            \"NameLocalized\": \"Дева\",\n            \"Emoji\": \"♍\"\n        },\n        \"MoonPosition\": {\n            \"Time\": \"2025-01-01 01:01\",\n            \"AzimuthDegrees\": 356.08557,\n            \"AltitudeDegrees\": -65.49632,\n            \"Direction\": \"N\",\n            \"DistanceKm\": 382316.55173\n        }\n    },\n    \"EndDay\": {\n        \"MoonDays\": 1.85568,\n        \"Illumination\": 2.79491,\n        \"Phase\": {\n            \"Name\": \"New Moon\",\n            \"NameLocalized\": \"Новолуние\",\n            \"Emoji\": \"🌑\",\n            \"IsWaxing\": true\n        },\n        \"Zodiac\": {\n            \"Name\": \"Virgo\",\n            \"NameLocalized\": \"Дева\",\n            \"Emoji\": \"♍\"\n        },\n        \"MoonPosition\": {\n            \"Time\": \"2025-01-02 00:00\",\n            \"AzimuthDegrees\": 309.21002,\n            \"AltitudeDegrees\": -54.25535,\n            \"Direction\": \"NW\",\n            \"DistanceKm\": 379194.7976\n        }\n    },\n    \"MoonDaysDetailed\": {\n        \"Count\": 2,\n        \"Day\": [\n            {\n                \"Begin\": \"2024-12-31 09:18\",\n                \"IsBeginExists\": true,\n                \"End\": \"2025-01-01 09:55\",\n                \"IsEndExists\": true\n            },\n            {\n                \"Begin\": \"2025-01-01 09:55\",\n                \"IsBeginExists\": true,\n                \"End\": \"2025-01-02 10:21\",\n                \"IsEndExists\": true\n            }\n        ]\n    },\n    \"ZodiacDetailed\": {\n        \"Count\": 1,\n        \"Zodiac\": [\n            {\n                \"Name\": \"Virgo\",\n                \"NameLocalized\": \"Дева\",\n                \"Emoji\": \"♍\",\n                \"Begin\": \"2024-12-31 03:27\",\n                \"End\": \"2025-01-02 15:27\"\n            }\n        ]\n    },\n    \"MoonRiseAndSet\": {\n        \"IsMoonRise\": true,\n        \"IsMoonSet\": true,\n        \"IsMeridian\": true,\n        \"Moonrise\": {\n            \"Time\": \"2025-01-01 09:55\",\n            \"AzimuthDegrees\": 133.52155,\n            \"AltitudeDegrees\": -0.56667,\n            \"Direction\": \"SE\",\n            \"DistanceKm\": 381054.53085\n        },\n        \"Moonset\": {\n            \"Time\": \"2025-01-01 17:26\",\n            \"AzimuthDegrees\": 228.55471,\n            \"AltitudeDegrees\": -0.56667,\n            \"Direction\": \"SW\",\n            \"DistanceKm\": 380040.1844\n        },\n        \"Meridian\": {\n            \"Time\": \"2025-01-01 13:36\",\n            \"AzimuthDegrees\": 180,\n            \"AltitudeDegrees\": 13.2,\n            \"Direction\": \"S\",\n            \"DistanceKm\": 380550.46947\n        }\n    }\n}\n```\n\n\u003c/details\u003e\n\n\u003cdetails\u003e\n  \u003csummary\u003e\u003cstrong\u003etimeFormat = timestamp\u003c/strong\u003e\u003c/summary\u003e\n\n```json\n{\n    \"BeginDay\": {\n        \"MoonDays\": 0.85568,\n        \"Illumination\": 0.35744,\n        \"Phase\": {\n            \"Name\": \"New Moon\",\n            \"NameLocalized\": \"Новолуние\",\n            \"Emoji\": \"🌑\",\n            \"IsWaxing\": true\n        },\n        \"Zodiac\": {\n            \"Name\": \"Virgo\",\n            \"NameLocalized\": \"Дева\",\n            \"Emoji\": \"♍\"\n        },\n        \"MoonPosition\": {\n            \"Time\": 1735671600,\n            \"AzimuthDegrees\": 326.86255,\n            \"AltitudeDegrees\": -62.68617,\n            \"Direction\": \"NNW\",\n            \"DistanceKm\": 382464.56722\n        }\n    },\n    \"CurrentState\": {\n        \"MoonDays\": 0.89806,\n        \"Illumination\": 0.4137,\n        \"Phase\": {\n            \"Name\": \"New Moon\",\n            \"NameLocalized\": \"Новолуние\",\n            \"Emoji\": \"🌑\",\n            \"IsWaxing\": true\n        },\n        \"Zodiac\": {\n            \"Name\": \"Virgo\",\n            \"NameLocalized\": \"Дева\",\n            \"Emoji\": \"♍\"\n        },\n        \"MoonPosition\": {\n            \"Time\": 1735675261,\n            \"AzimuthDegrees\": 356.08557,\n            \"AltitudeDegrees\": -65.49632,\n            \"Direction\": \"N\",\n            \"DistanceKm\": 382316.55173\n        }\n    },\n    \"EndDay\": {\n        \"MoonDays\": 1.85568,\n        \"Illumination\": 2.79491,\n        \"Phase\": {\n            \"Name\": \"New Moon\",\n            \"NameLocalized\": \"Новолуние\",\n            \"Emoji\": \"🌑\",\n            \"IsWaxing\": true\n        },\n        \"Zodiac\": {\n            \"Name\": \"Virgo\",\n            \"NameLocalized\": \"Дева\",\n            \"Emoji\": \"♍\"\n        },\n        \"MoonPosition\": {\n            \"Time\": 1735758000,\n            \"AzimuthDegrees\": 309.21002,\n            \"AltitudeDegrees\": -54.25535,\n            \"Direction\": \"NW\",\n            \"DistanceKm\": 379194.7976\n        }\n    },\n    \"MoonDaysDetailed\": {\n        \"Count\": 2,\n        \"Day\": [\n            {\n                \"Begin\": 1735618722,\n                \"IsBeginExists\": true,\n                \"End\": 1735707321,\n                \"IsEndExists\": true\n            },\n            {\n                \"Begin\": 1735707321,\n                \"IsBeginExists\": true,\n                \"End\": 1735795276,\n                \"IsEndExists\": true\n            }\n        ]\n    },\n    \"ZodiacDetailed\": {\n        \"Count\": 1,\n        \"Zodiac\": [\n            {\n                \"Name\": \"Virgo\",\n                \"NameLocalized\": \"Дева\",\n                \"Emoji\": \"♍\",\n                \"Begin\": 1735597669,\n                \"End\": 1735813669\n            }\n        ]\n    },\n    \"MoonRiseAndSet\": {\n        \"IsMoonRise\": true,\n        \"IsMoonSet\": true,\n        \"IsMeridian\": true,\n        \"Moonrise\": {\n            \"Time\": 1735707321,\n            \"AzimuthDegrees\": 133.52155,\n            \"AltitudeDegrees\": -0.56667,\n            \"Direction\": \"SE\",\n            \"DistanceKm\": 381054.53085\n        },\n        \"Moonset\": {\n            \"Time\": 1735734376,\n            \"AzimuthDegrees\": 228.55471,\n            \"AltitudeDegrees\": -0.56667,\n            \"Direction\": \"SW\",\n            \"DistanceKm\": 380040.1844\n        },\n        \"Meridian\": {\n            \"Time\": 1735720605,\n            \"AzimuthDegrees\": 180,\n            \"AltitudeDegrees\": 13.2,\n            \"Direction\": \"S\",\n            \"DistanceKm\": 380550.46947\n        }\n    }\n}\n```\n\n\u003c/details\u003e\n\n----------------------------------------------------------------\n\n### GET /api/v1/moonPhaseCurrent\n\nThe method returns the Moon parameters for the current day and time. If the day or time is not specified, the current value for the unspecified fields is taken. If longitude and latitude are specified, the response will contain additional structures.\n\nThis is a synonym for the moonPhaseDate method without day and time Params.\n\n#### Params\n\n  | Parameter | Type | Description | Example Value |\n| :--- | :--- | :--- |  :--- | \n|`utc` | `string [optional, default=\"UTC+0\"]` | UTC in format `UTC+7`, `UTC+09:30`, `-3` | `UTC+4`\n|`lang` | `string [optional, default=\"en\"]` | Values available: (\"en\", \"es\", \"fr\", \"de\", \"ru\", \"jp\") | `es`\n|`precision` | `int [optional, default=2]` | How many digits after ```.``` will be in output. Allowed range: [1, 20] | `5`\n|`latitude` | `float [optional, default=none]` | Latitude of viewer's place. Used for moon position calculations: ```MoonDaysDetailed```, ```MoonRiseAndSet```, and ```MoonPosition``` object | `51.1655`\n|`longitude` | `float [optional, default=none]` | Longitude of viewer's place. Used for moon position calculations: ```MoonDaysDetailed```, ```MoonRiseAndSet```, and ```MoonPosition``` object | `71.4272`\n|`timeFormat` | `string [optional]` | How the data will be formed. Available values: ISO (default), timestamp, duration or Go format. Duration is seconds between current date and event time.| `duration`\n\n#### Response\n\nResponse as [GET /api/v1/moonPhaseDate](https://github.com/prostraction/moon/#v1moonphasedate-response)\n\n----------------------------------------------------------------\n\n### GET /api/v1/moonPhaseTimestamp\n\nThe method returns the Moon parameters for the given timestamp. If it is not specified, the current value for the timestamp is taken. If longitude and latitude are specified, the response will contain additional structures.\n\nThis is a synonym for the moonPhaseDate method but with timestamp instead of date.\n\n#### Params\n\n  | Parameter | Type | Description | Example Value |\n| :--- | :--- | :--- |  :--- | \n|`utc` | `string [optional, default=\"UTC+0\"]` | UTC in format `UTC+7`, `UTC+09:30`, `-3` | `UTC+4`\n|`lang` | `string [optional, default=\"en\"]` | Values available: (\"en\", \"es\", \"fr\", \"de\", \"ru\", \"jp\") | `es`\n|`precision` | `int [optional, default=2]` | How many digits after ```.``` will be in output. Allowed range: [1, 20] | `5`\n|`latitude` | `float [optional, default=none]` | Latitude of viewer's place. Used for moon position calculations: ```MoonDaysDetailed```, ```MoonRiseAndSet```, and ```MoonPosition``` object | `51.1655`\n|`longitude` | `float [optional, default=none]` | Longitude of viewer's place. Used for moon position calculations: ```MoonDaysDetailed```, ```MoonRiseAndSet```, and ```MoonPosition``` object | `71.4272`\n|`timestamp` | `int [optional, default=\u003ccurrent\u003e]` | Timestamp for calculations | `1758045697`\n|`timeFormat` | `string [optional]` | How the data will be formed. Available values: ISO (default), timestamp, duration or Go format. Duration is seconds between current date and event time.| `duration`\n\n#### Response\n\nResponse as [GET /api/v1/moonPhaseDate](https://github.com/prostraction/moon/#v1moonphasedate-response)\n\n----------------------------------------------------------------\n\n### GET /api/v1/moonPositionMonthly\n\nThe method returns Moon position for specified month.\n\n#### Params\n\n  | Parameter | Type | Description | Example Value |\n| :--- | :--- | :--- |  :--- | \n|`utc` | `string [optional, default=\"UTC+0\"]` | UTC in format `UTC+7`, `UTC+09:30`, `-3` | `UTC+4`\n|`precision` | `int [optional, default=2]` | How many digits after ```.``` will be in output. Allowed range: [1, 20] | `5`\n|`latitude` | `float [required]` | Latitude of viewer's place. Used for moon position calculations: ```MoonDaysDetailed```, ```MoonRiseAndSet```, and ```MoonPosition``` object | `51.1655`\n|`longitude` | `float [required]` | Longitude of viewer's place. Used for moon position calculations: ```MoonDaysDetailed```, ```MoonRiseAndSet```, and ```MoonPosition``` object | `71.4272`\n|`year` | `int [optional, default=\u003ccurrent year\u003e]` | Format: YYYY Allowed range: [1, 9999] | `2025`\n|`month` | `int [optional, default=\u003ccurrent month\u003e]` | Format: M or MM. Allowed range: [1, 12] | `01` or `1`\n|`timeFormat` | `string [optional]` | How the data will be formed. Available values: ISO (default), timestamp, duration or Go format. Duration is seconds between current date and event time.| `duration`\n\n#### Response\n\nThe method returns array of object MoonRiseAndSet for each day of selected month.\n\n##### MoonRiseAndSet\n\n```MoonRiseAndSet``` is a structure for determining the moonrise, moonset and meridian on a given day. Exists only if latitude and longitude are specified.\n\n\u003cdetails\u003e\n  \u003csummary\u003e\u003cstrong\u003eTable\u003c/strong\u003e\u003c/summary\u003e\n\n| Response Variable | Type | Description | Example Value |\n| :--- | :--- | :--- | :--- |\n|`MoonRiseAndSet.Date` | `String [optional]` | Date for day of calculations, missing as default | `2025-01-15` |\n|`MoonRiseAndSet.IsMoonRise` | `Boolean [required]` | True if moonrise occurs at given day | `true` |\n|`MoonRiseAndSet.IsMoonSet` | `Boolean [required]` | True if moonset occurs at given day | `true` |\n|`MoonRiseAndSet.IsMeridian` | `Boolean [required]` | True if meridian transit occurs at given day | `true` |\n|`MoonRiseAndSet.Moonrise` | `Object of struct MoonPosition [optional]` | Moonrise position data. Exists only if IsMoonRise = true | - |\n|`MoonRiseAndSet.Moonset` | `Object of struct MoonPosition [optional]` | Moonset position data. Exists only if IsMoonSet = true | - |\n|`MoonRiseAndSet.Meridian` | `Object of struct MoonPosition [optional]` | Meridian position data, Exists only if IsMeridian = true | - |\n\nMoonPosition structure:\n\n\u003cdetails\u003e\n  \u003csummary\u003e\u003cstrong\u003eTable\u003c/strong\u003e\u003c/summary\u003e\n\n| Response Variable | Type | Description | Example Value |\n| :--- | :--- | :--- | :--- |\n|`MoonPosition.Time` | `String / int64 [required]` | Time in ISO (default) or specified timeFormat | `\"2025-09-16T00:00:00+05:00\"` |\n|`MoonPosition.AzimuthDegrees` | `Float [required]` | Moonrise azimuth | `47.3` |\n|`MoonPosition.AltitudeDegrees` | `Float [required]` | Moonrise altitude | `-0.6` |\n|`MoonPosition.Direction` | `String [required]` | Moonrise direction | `\"ENE\"` |\n|`MoonPosition.DistanceKm` | `Float [required]` | Earth-Moon distance in km | `376559.9` |\n\n\u003c/details\u003e\n\n\u003c/details\u003e\n\n#### Response example\n\n\u003cdetails\u003e\n  \u003csummary\u003e\u003cstrong\u003eJSON\u003c/strong\u003e\u003c/summary\u003e\n\n```json\n[\n    {\n        \"Date\": \"2023-03-01\",\n        \"IsMoonRise\": true,\n        \"IsMoonSet\": true,\n        \"IsMeridian\": true,\n        \"Moonrise\": {\n            \"Time\": \"2023-03-01T11:07:37+05:00\",\n            \"AzimuthDegrees\": 42.8762,\n            \"AltitudeDegrees\": -0.56667,\n            \"Direction\": \"NE\",\n            \"DistanceKm\": 402636.75966\n        },\n        \"Moonset\": {\n            \"Time\": \"2023-03-01T04:10:07+05:00\",\n            \"AzimuthDegrees\": 316.74613,\n            \"AltitudeDegrees\": -0.56667,\n            \"Direction\": \"NW\",\n            \"DistanceKm\": 401798.89266\n        },\n        \"Meridian\": {\n            \"Time\": \"2023-03-01T20:05:30+05:00\",\n            \"AzimuthDegrees\": 180,\n            \"AltitudeDegrees\": 66.2,\n            \"Direction\": \"S\",\n            \"DistanceKm\": 403572.05151\n        }\n    },\n    {\n        \"Date\": \"2023-03-02\",\n        \"IsMoonRise\": true,\n        \"IsMoonSet\": true,\n        \"IsMeridian\": true,\n        \"Moonrise\": {\n            \"Time\": \"2023-03-02T12:01:07+05:00\",\n            \"AzimuthDegrees\": 43.38104,\n            \"AltitudeDegrees\": -0.56667,\n            \"Direction\": \"NE\",\n            \"DistanceKm\": 404836.13007\n        },\n        \"Moonset\": {\n            \"Time\": \"2023-03-02T05:03:00+05:00\",\n            \"AzimuthDegrees\": 317.04922,\n            \"AltitudeDegrees\": -0.56667,\n            \"Direction\": \"NW\",\n            \"DistanceKm\": 404345.126\n        },\n        \"Meridian\": {\n            \"Time\": \"2023-03-02T20:56:36+05:00\",\n            \"AzimuthDegrees\": 180,\n            \"AltitudeDegrees\": 65.4,\n            \"Direction\": \"S\",\n            \"DistanceKm\": 405326.66664\n        }\n    },\n    ...\n    {\n        \"Date\": \"2023-03-31\",\n        \"IsMoonRise\": true,\n        \"IsMoonSet\": true,\n        \"IsMeridian\": true,\n        \"Moonrise\": {\n            \"Time\": \"2023-03-31T11:58:33+05:00\",\n            \"AzimuthDegrees\": 49.55137,\n            \"AltitudeDegrees\": -0.56667,\n            \"Direction\": \"NE\",\n            \"DistanceKm\": 404935.96867\n        },\n        \"Moonset\": {\n            \"Time\": \"2023-03-31T04:17:06+05:00\",\n            \"AzimuthDegrees\": 312.1322,\n            \"AltitudeDegrees\": -0.56667,\n            \"Direction\": \"NW\",\n            \"DistanceKm\": 404804.48186\n        },\n        \"Meridian\": {\n            \"Time\": \"2023-03-31T20:28:24+05:00\",\n            \"AzimuthDegrees\": 180,\n            \"AltitudeDegrees\": 61.6,\n            \"Direction\": \"S\",\n            \"DistanceKm\": 404936.05398\n        }\n    }\n]\n```\n\n\u003c/details\u003e\n\n\u003cdetails\u003e\n  \u003csummary\u003e\u003cstrong\u003etimeFormat '2006-01-02 15:04'\u003c/strong\u003e\u003c/summary\u003e\n\n```json\n[\n    {\n        \"Date\": \"2023-03-01\",\n        \"IsMoonRise\": true,\n        \"IsMoonSet\": true,\n        \"IsMeridian\": true,\n        \"Moonrise\": {\n            \"Time\": \"2023-03-01 11:07\",\n            \"AzimuthDegrees\": 42.8762,\n            \"AltitudeDegrees\": -0.56667,\n            \"Direction\": \"NE\",\n            \"DistanceKm\": 402636.75966\n        },\n        \"Moonset\": {\n            \"Time\": \"2023-03-01 04:10\",\n            \"AzimuthDegrees\": 316.74613,\n            \"AltitudeDegrees\": -0.56667,\n            \"Direction\": \"NW\",\n            \"DistanceKm\": 401798.89266\n        },\n        \"Meridian\": {\n            \"Time\": \"2023-03-01 20:05\",\n            \"AzimuthDegrees\": 180,\n            \"AltitudeDegrees\": 66.2,\n            \"Direction\": \"S\",\n            \"DistanceKm\": 403572.05151\n        }\n    },\n ...\n```\n\n\u003c/details\u003e\n\n\n\u003cdetails\u003e\n  \u003csummary\u003e\u003cstrong\u003etimeFormat 'timestamp'\u003c/strong\u003e\u003c/summary\u003e\n\n```json\n[\n    {\n        \"Date\": \"2023-03-01\",\n        \"IsMoonRise\": true,\n        \"IsMoonSet\": true,\n        \"IsMeridian\": true,\n        \"Moonrise\": {\n            \"Time\": 1677650857,\n            \"AzimuthDegrees\": 42.8762,\n            \"AltitudeDegrees\": -0.56667,\n            \"Direction\": \"NE\",\n            \"DistanceKm\": 402636.75966\n        },\n        \"Moonset\": {\n            \"Time\": 1677625807,\n            \"AzimuthDegrees\": 316.74613,\n            \"AltitudeDegrees\": -0.56667,\n            \"Direction\": \"NW\",\n            \"DistanceKm\": 401798.89266\n        },\n        \"Meridian\": {\n            \"Time\": 1677683130,\n            \"AzimuthDegrees\": 180,\n            \"AltitudeDegrees\": 66.2,\n            \"Direction\": \"S\",\n            \"DistanceKm\": 403572.05151\n        }\n    },\n ...\n```\n\u003c/details\u003e\n\n----------------------------------------------------------------\n\n### GET /api/v1/moonTableYear\n\nThe method returns the moon phases for the given year. The response contains an array for each month, each element of which contains the time of the new moon, first quarter, full moon, last quarter.\n\n#### Params\n\n  | Parameter | Type | Description | Example Value |\n| :--- | :--- | :--- |  :--- | \n|`utc` | `string [optional, default=\"UTC+0\"]` | UTC in format `UTC+7`, `UTC+09:30`, `-3` | `UTC+4`\n|`year` | `int [optional, default=\u003ccurrent year\u003e]` | Format: YYYY Allowed range: [1, 9999] | `2025`\n|`timeFormat` | `string [optional]` | How the data will be formed. Available values: ISO (default), timestamp, duration or Go format. Duration is seconds between current date and event time.| `duration`\n\n#### Response example\n\n\u003cdetails\u003e\n  \u003csummary\u003e\u003cstrong\u003eJSON\u003c/strong\u003e\u003c/summary\u003e\n\n```json\n[\n    // first moon of the year\n     {\n        \"NewMoon\": \"2024-12-31T08:27:49+10:00\",\n        \"FirstQuarter\": \"2025-01-07T16:15:21+10:00\",\n        \"FullMoon\": \"2025-01-14T08:27:44+10:00\",\n        \"LastQuarter\": \"2025-01-22T13:25:30+10:00\"\n    },\n    // second moon of the year\n    {\n        \"NewMoon\": \"2025-01-29T22:37:18+10:00\",\n        \"FirstQuarter\": \"2025-02-06T09:58:10+10:00\",\n        \"FullMoon\": \"2025-02-12T23:54:26+10:00\",\n        \"LastQuarter\": \"2025-02-21T20:11:33+10:00\"\n    },\n...\n    // last moon of the year\n     {\n        \"NewMoon\": \"2025-12-20T11:44:25+10:00\",\n        \"FirstQuarter\": \"2025-12-27T19:53:55+10:00\",\n        \"FullMoon\": \"2026-01-03T20:04:15+10:00\",\n        \"LastQuarter\": \"2026-01-11T02:44:20+10:00\"\n    }\n]\n```\n\n\u003c/details\u003e\n\n\u003cdetails\u003e\n  \u003csummary\u003e\u003cstrong\u003etimeFormat '2006-01-02 15:04'\u003c/strong\u003e\u003c/summary\u003e\n\n```json\n[\n    // first moon of the year\n    {\n        \"NewMoon\": \"2022-12-23 15:17\",\n        \"FirstQuarter\": \"2022-12-30 06:24\",\n        \"FullMoon\": \"2023-01-07 04:09\",\n        \"LastQuarter\": \"2023-01-07 04:09\"\n    },\n    // second moon of the year\n    {\n        \"NewMoon\": \"2023-01-22 01:55\",\n        \"FirstQuarter\": \"2023-01-28 20:05\",\n        \"FullMoon\": \"2023-02-05 23:30\",\n        \"LastQuarter\": \"2023-02-05 23:30\"\n    },\n...\n    // last moon of the year\n    {\n        \"NewMoon\": \"2023-12-13 04:32\",\n        \"FirstQuarter\": \"2023-12-19 23:42\",\n        \"FullMoon\": \"2023-12-27 05:33\",\n        \"LastQuarter\": \"2023-12-27 05:33\"\n    }\n]\n```\n\n\u003c/details\u003e\n\n\u003cdetails\u003e\n  \u003csummary\u003e\u003cstrong\u003etimeFormat 'timestamp'\u003c/strong\u003e\u003c/summary\u003e\n\n```json\n[\n    // first moon of the year\n    {\n        \"NewMoon\": 1671790676,\n        \"FirstQuarter\": 1672363444,\n        \"FullMoon\": 1673046595,\n        \"LastQuarter\": 1673046595\n    },\n    // second moon of the year\n    {\n        \"NewMoon\": 1674334530,\n        \"FirstQuarter\": 1674918315,\n        \"FullMoon\": 1675621844,\n        \"LastQuarter\": 1675621844\n    },\n...\n    // last moon of the year\n    {\n        \"NewMoon\": 1702423927,\n        \"FirstQuarter\": 1703011321,\n        \"FullMoon\": 1703637223,\n        \"LastQuarter\": 1703637223\n    }\n]\n```\n\n\u003c/details\u003e\n\n----------------------------------------------------------------\n\n### GET /api/v1/moonTableCurrent\n\nThe method returns the moon phases for the current year. The response contains an array for each month, each element of which contains the time of the new moon, first quarter, full moon, last quarter.\n\n#### Params\n\n  | Parameter | Type | Description | Example Value |\n| :--- | :--- | :--- |  :--- | \n|`utc` | `string [optional, default=\"UTC+0\"]` | UTC in format `UTC+7`, `UTC+09:30`, `-3` | `UTC+4`\n|`timeFormat` | `string [optional]` | How the data will be formed. Available values: ISO (default), timestamp, duration or Go format. Duration is seconds between current date and event time.| `duration`\n\n#### Response\n\nResponse: as [GET /api/v1/moonTableYear](https://github.com/prostraction/moon#v1moontableyear-response)\n\n----------------------------------------------------------------\n\n### GET /api/v1/toJulianTimeByDate\n\nThe method converts human date to julian time (UTC +0 timezone).\n\n#### Params\n\n  | Parameter | Type | Description | Example Value |\n| :--- | :--- | :--- |  :--- | \n|`precision` | `int [optional, default=2]` | How many digits after ```.``` will be in output. Allowed range: [1, 20] | `5`\n|`timeFormat` | `string [optional]` | How the data will be formed. Available values: ISO (default), timestamp, duration or Go format. Duration is seconds between current date and event time.| `duration`\n|`year` | `int [optional, default=\u003ccurrent year\u003e]` | Format: YYYY Allowed range: [1, 9999] | `2025`\n|`month` | `int [optional, default=\u003ccurrent month\u003e]` | Format: M or MM. Allowed range: [1, 12] | `01` or `1`\n|`day` | `int [optional, default=\u003ccurrent day\u003e]` | Format: D or DD. Allowed range: [1, 31] | `01` or `1`\n|`hour` | `int [optional, default=\u003ccurrent hour\u003e]` | Format: h or hh. Allowed range: [0, 23] | `01` or `1`\n|`minute` | `int [optional, default=\u003ccurrent minute\u003e]` | Format: m or mm. Allowed range: [0, 59] | `01` or `1`\n|`second` | `int [optional, default=\u003ccurrent second\u003e]` | Format: s or ss. Allowed range: [0, 59] | `01` or `1`\n\n#### Response examples\n\n```json\n{\n    \"CivilDate\": \"2025-01-01T01:01:01Z\",\n    \"JulianDate\": 2460676.54237\n}\n```\n\ntimeFormat: `Mon, 02 Jan 2006 15:04:05`\n\n```json\n{\n    \"CivilDate\": \"Wed, 01 Jan 2025 01:01:01\",\n    \"JulianDate\": 2460676.54237\n}\n```\n\ntimeFormat: `timestamp`\n\n```json\n{\n    \"CivilDate\": 1735693261,\n    \"JulianDate\": 2460676.54237\n}\n```\n\n----------------------------------------------------------------\n\n### GET /api/v1/toJulianTimeByTimestamp\n\nThe method converts human date to julian time (UTC +0 timezone).\n\n#### Params\n\n  | Parameter | Type | Description | Example Value |\n| :--- | :--- | :--- |  :--- | \n|`precision` | `int [optional, default=2]` | How many digits after ```.``` will be in output. Allowed range: [1, 20] | `5`\n|`timestamp` | `int [optional, default=\u003ccurrent\u003e]` | Timestamp for calculations. Current, if not specified | `1735693261`\n|`timeFormat` | `string [optional]` | How the data will be formed. Available values: ISO (default), timestamp, duration or Go format. Duration is seconds between current date and event time.| `duration`\n\n#### Response example\n\n```json\n{\n    \"CivilDate\": \"2025-01-01T01:01:01Z\",\n    \"JulianDate\": 2460676.54237\n}\n```\n\ntimeFormat: `Mon, 02 Jan 2006 15:04:05`\n\n```json\n{\n    \"CivilDate\": \"Wed, 01 Jan 2025 01:01:01\",\n    \"JulianDate\": 2460676.54237\n}\n```\n\ntimeFormat: `timestamp`\n\n```json\n{\n    \"CivilDate\": 1735693261,\n    \"JulianDate\": 2460676.54237\n}\n```\n\n----------------------------------------------------------------\n\n### GET /api/v1/fromJulianTime\n\nThe method converts julian time to human time (UTC +0 timezone).\n\n#### Params\n\n  | Parameter | Type | Description | Example Value |\n| :--- | :--- | :--- |  :--- | \n|`precision` | `int [optional, default=2]` | How many digits after ```.``` will be in output. Allowed range: [1, 20] | `5`\n|`jtime` | `float64 [required]` | Julian Time to convert (float64) | `2460676.5423726854`\n|`timeFormat` | `string [optional]` | How the data will be formed. Available values: ISO (default), timestamp, duration or Go format. Duration is seconds between current date and event time.| `duration`\n\n#### Response examples\n\n```json\n{\n    \"CivilDate\": \"2025-01-01T01:01:01Z\",\n    \"JulianDate\": 2460676.54237\n}\n```\n\ntimeFormat: `Mon, 02 Jan 2006 15:04:05`\n\n```json\n{\n    \"CivilDate\": \"Wed, 01 Jan 2025 01:01:01\",\n    \"JulianDate\": 2460676.54237\n}\n```\n\ntimeFormat: `timestamp`\n\n```json\n{\n    \"CivilDate\": 1735693261,\n    \"JulianDate\": 2460676.54237\n}\n```\n\n### GET /api/v1/nextMoonPhase\n\nThe method returns next moon phase\n\n#### Params\n\n  | Parameter | Type | Description | Example Value |\n| :--- | :--- | :--- |  :--- | \n|`utc` | `string [optional, default=\"UTC+0\"]` | UTC in format `UTC+7`, `UTC+09:30`, `-3` | `UTC+4`\n|`timeFormat` | `string [optional]` | How the data will be formed. Available values: ISO (default), timestamp, duration or Go format. Duration is seconds between current date and event time.| `duration`\n\n\n#### Response example:\n\ntimeFormat: `ISO`\n\n```json\n{\n    \"NewMoon\": \"2025-11-20T11:48:16+05:00\",\n    \"FirstQuarter\": \"2025-11-28T11:44:00+05:00\",\n    \"FullMoon\": \"2025-12-05T04:15:18+05:00\",\n    \"LastQuarter\": \"2025-12-12T02:04:31+05:00\"\n}\n```\n\ntimeFormat: `Mon, 02 Jan 2006 15:04:05`\n\n```json\n{\n    \"NewMoon\": \"Thu, 20 Nov 2025 11:48:16\",\n    \"FirstQuarter\": \"Fri, 28 Nov 2025 11:44:00\",\n    \"FullMoon\": \"Fri, 05 Dec 2025 04:15:18\",\n    \"LastQuarter\": \"Fri, 12 Dec 2025 02:04:31\"\n}\n```\n\ntimeFormat: `timestamp`\n\n```json\n{\n    \"NewMoon\": 1763621296,\n    \"FirstQuarter\": 1764312240,\n    \"FullMoon\": 1764890118,\n    \"LastQuarter\": 1765487071\n}\n```\n\ntimeFormat: `duration`\n\n```json\n{\n    \"NewMoon\": 313830,\n    \"FirstQuarter\": 1004774,\n    \"FullMoon\": 1582652,\n    \"LastQuarter\": 2179605\n}\n```\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fprostraction%2Fmoon-api","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fprostraction%2Fmoon-api","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fprostraction%2Fmoon-api/lists"}