/api/astro/eclipse/next-solar/1 кредитНаступне сонячне затемнення
Наступне сонячне затемнення будь-де на Землі, з усіма моментами контактів як іменованими полями. Базове ядро повертає десять значень дати й часу в позиційному масиві, і щоб дізнатися, що елемент 4 — це початок повної фази, довелося б читати вихідний код. Цей ендпоінт повертає їх як іменовані поля: begin, totality_begin, maximum, totality_end, end, а також моменти центральної лінії. Фільтруйте за eclipse_type (total, annular, partial, hybrid) і за центральністю — тобто за тим, чи досягає вісь тіні поверхні Землі. Щоб знайти останнє затемнення, що вже відбулося, а не наступне, встановіть direction у "before". Це ГЛОБАЛЬНИЙ пошук: він відповідає, коли буде затемнення, а не чи зможете ви його побачити. Для цього використовуйте /api/astro/eclipse/local/.
https://api.occultapi.com/api/astro/eclipse/next-solar/
Автентифікація
Передавайте ключ у заголовку X-API-Key. Ключ — це серверні облікові дані: ніколи не вставляйте його в JavaScript, що виконується в браузері, чи в мобільний застосунок.
X-API-Key: yt_live_a1b2c3d4_…
Content-Type: application/jsonПоля запиту
| Поле | Тип | Обов’язкове | Примітки |
|---|---|---|---|
| date_time | string (date-time) | обов’язковий | Момент, для якого виконується розрахунок, у форматі ISO 8601. ЗАВЖДИ вказуйте зміщення або Z у кінці: значення без часового поясу читається як Asia/Kolkata (UTC+05:30), а не UTC, і може повернути результат за попередній день із кодом 200. '2026-09-01T06:00:00Z' і '2026-09-01 06:00:00' — різні моменти, і відповіді для них різні. |
| centrality | string | необов’язковий | Центральне затемнення — це коли вісь тіні Місяця справді торкається Землі. Має сенс лише тоді, коли eclipse_type не дорівнює 'any'. anycentralnon-central |
| direction | string | необов’язковий | Шукати вперед від date_time чи назад. afterbefore |
| eclipse_type | string | необов’язковий | Обмежити пошук одним видом сонячного затемнення. anytotalannularpartialhybrid |
| elevation | number (double) | необов’язковий | |
| keys | array | необов’язковий | Які розрахунки повернути, у вигляді списку назв. Див. таблицю ключів цього ендпоінта; через нерозпізнану назву відхиляється весь запит. Один виклик коштує один кредит незалежно від кількості запитаних ключів, тож запитуйте все потрібне одразу, а не кількома викликами. |
| latitude | number (double) | необов’язковий | Широта місця в десяткових градусах. Додатні значення — північ, від’ємні — південь. Приклад: 26.9124 для Джайпура, 40.7128 для Нью-Йорка. Хвилини й секунди не приймаються — спершу переведіть їх у градуси. |
| longitude | number (double) | необов’язковий | Довгота місця в десяткових градусах. Додатні значення — схід, від’ємні — захід. Приклад: 75.7873 для Джайпура, -74.0060 для Нью-Йорка. Зверніть увагу на знак: без мінуса Нью-Йорк опиниться в Китаї. |
| timezone_as_float | number (double) | необов’язковий | Зміщення місця від UTC у годинах, десятковим дробом. Приклад: 5.5 для Індії (UTC+05:30), -5 для Нью-Йорка взимку, 5.75 для Непалу. Його НЕ звіряють із date_time: якщо значення розходяться, ви отримаєте успішну відповідь для неправильного моменту, тож беріть обидва з одного джерела. Використовуйте зміщення, чинне на ту дату, а не сьогоднішнє: для народження влітку в країні з переходом на літній час потрібне літнє зміщення. min -12 · max 14 |
Приклад запиту
curl -X POST https://api.occultapi.com/api/astro/eclipse/next-solar/ \
-H "X-API-Key: $OCCULT_API_KEY" \
-H "Content-Type: application/json" \
-d '{"date_time":"2026-01-01T00:00:00+00:00","timezone_as_float":0,"eclipse_type":"total","centrality":"any","direction":"after"}'Відповідь
{
"data": {
"found": true,
"searched_from": "2026-01-01T00:00:00Z",
"direction": "after",
"eclipse": {
"kind": "solar",
"type": "total",
"centrality": "central",
"maximum": "2026-08-12T17:45:57Z",
"times": {
"maximum": "2026-08-12T17:45:57Z",
"local_apparent_noon": "2026-08-12T17:03:51Z",
"begin": "2026-08-12T15:34:30Z",
"end": "2026-08-12T19:57:57Z",
"totality_begin": "2026-08-12T16:58:05Z",
"totality_end": "2026-08-12T18:34:00Z",
"centre_line_begin": "2026-08-12T17:00:06Z",
"centre_line_end": "2026-08-12T18:32:01Z"
}
}
},
"status": 200,
"is_error": false,
"message": "successful"
}Записано з реального виклику з точно таким запитом, як вище. Результати лежать у data.
Помилки
Помилки обліку кредитів мають вигляд { "error": "…", "message": "<code>", "is_error": true }. Людям показуйте error, а логіку будуйте на message. Детальніше — у довіднику помилок.