/api/astro/date_time/1 кредитОпределение часового пояса
Превращает время рождения по местным часам и пару координат в однозначный момент времени. Все остальные эндпоинты здесь требуют либо метку времени с часовым поясом, либо числовое смещение UTC, а ошибка в этом — самая частая причина того, что карта незаметно сдвинута на час или на день. Поэтому с этого вызова обычно и начинают. Передайте `date`, `time`, `latitude` и `longitude`. По координатам определяется часовой пояс IANA, дата и время без часового пояса интерпретируются в нём, и вы получаете `input_datetime`, название найденного часового пояса `timezone`, `localized_datetime` с указанным смещением и `utc_datetime`. Локализованное значение можно сразу передавать в `date_time` других эндпоинтов. Одна оговорка: поле запроса называется `use_LMT`, но представление читает поле с другим написанием, поэтому местное среднее время на деле никогда не применяется и всегда используется часовой пояс IANA — `use_lmt` в ответе всегда false. Для рождений до того, как в данной местности ввели стандартное время, рассчитайте смещение местного среднего времени сами (четыре минуты на градус долготы), а не полагайтесь на этот флаг.
https://api.occultapi.com/api/astro/date_time/Аутентификация
Передавайте ключ в заголовке X-API-Key. Ключ — это серверные учётные данные: никогда не вставляйте его в JavaScript на стороне браузера или в мобильное приложение.
X-API-Key: yt_live_a1b2c3d4_…
Content-Type: application/jsonПоля запроса
| Поле | Тип | Обязательно | Примечания |
|---|---|---|---|
| date | string (date) | обязательный | Ограничение ФОРМАТА, а не перечисление. DRF DateField со входными форматами по умолчанию — только ISO-8601: 'YYYY-MM-DD'. |
| latitude | number (double) | обязательный | Широта места в десятичных градусах. Положительные значения — север, отрицательные — юг. Пример: 26.9124 для Джайпура, 40.7128 для Нью-Йорка. Минуты и секунды не принимаются — сначала переведите значение в десятичные градусы. min -180 · max 180 |
| longitude | number (double) | обязательный | Долгота места в десятичных градусах. Положительные значения — восток, отрицательные — запад. Пример: 75.7873 для Джайпура, -74.0060 для Нью-Йорка. Следите за знаком: без минуса Нью-Йорк окажется в Китае. min -180 · max 180 |
| time | string (time) | обязательный | Ограничение ФОРМАТА, а не перечисление. DRF TimeField со входными форматами по умолчанию — только ISO-8601: 'HH:MM', 'HH:MM:SS' или 'HH:MM:SS.ffffff'. Пример значения "string" в каталоге вводит в заблуждение. |
| use_LMT | boolean | необязательный | |
Пример запроса
curl -X POST https://api.occultapi.com/api/astro/date_time/ \
-H "X-API-Key: $OCCULT_API_KEY" \
-H "Content-Type: application/json" \
-d '{"date":"1980-09-05","time":"04:42:05.037Z","longitude":80,"latitude":23,"use_LMT":true}'Ответ
{
"input_datetime": "1980-09-05 04:42:05",
"latitude": 23,
"longitude": 80,
"timezone": "Asia/Kolkata",
"use_lmt": false,
"localized_datetime": "1980-09-05T04:42:05.037000+05:30",
"utc_datetime": "1980-09-04T23:12:05.037000+00:00"
}Записано с реального вызова ровно с этим запросом. Результаты лежат в data.
Ошибки
Ошибки списания кредитов приходят в виде { "error": "…", "message": "<code>", "is_error": true }. Людям показывайте error, а логику стройте на message. Подробнее — в справочнике ошибок.