/api/astro/house/1 кредитКуспиды домов
Деление карты на двенадцать домов для заданного момента и места в любой указанной вами системе домов. В ведической практике обычно домом считают целый знак, но этот эндпоинт даёт доступ ко всем системам домов из эфемерид — Плацидус, Кох, Кампанус, Региомонтан, Шрипати, Порфирий, равнодомная система, система целых знаков и другие, всего около двух десятков. Поэтому одну и ту же карту можно построить в той системе, которая принята в нужной традиции. Положения сидерические. Главное — не путать куспид и диапазон. Куспид — это один градус, который система назначает дому; диапазон — отрезок, который дом фактически занимает. Здесь границы диапазона — середины между соседними куспидами, то есть дом начинается посередине между своим куспидом и предыдущим, а заканчивается посередине между своим и следующим. `house_cusps` возвращает двенадцать куспидов, `house_starts` и `house_ends` — два края, `house_ranges` — оба края вместе, а `houses` — всё сразу. `notation` задаёт единицы во всём ответе: 'degree' — сырые десятичные градусы вдоль эклиптики, 'astrological' — знак плюс градусы, минуты и секунды. `method_name` чувствителен к регистру, и некоторые значения содержат пробелы или знаки препинания, поэтому копируйте их в точности. Система из `method_name` применяется уже при построении запроса, поэтому `set_house_method` и `change_house_system` нужны, только чтобы переключить систему посреди вызова с несколькими ключами.
https://api.occultapi.com/api/astro/house/Аутентификация
Передавайте ключ в заголовке 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' — разные моменты, и ответы для них будут разными. Ограничение ФОРМАТА. DRF DateTimeField: только ISO-8601 (входные форматы DRF по умолчанию), например "2026-09-01T06:00:00+05:30", "2026-09-01T06:00:00Z" или "2026-09-01 06:00:00" (без часового пояса подразумевается UTC). |
| keys | array | обязательный | Какие расчёты вернуть — списком названий. См. таблицу ключей этого эндпоинта; нераспознанное название отклоняет весь запрос. Один вызов стоит один кредит, сколько бы ключей вы ни запросили, поэтому запрашивайте всё нужное сразу, а не несколькими вызовами. set_house_methodhouseshouse_rangeshouse_startshouse_cuspshouse_endschange_house_systemМассив строк. 'set_house_method' и 'change_house_system' используют `method_name`; остальные пять используют `notation`. |
| method_name | string | обязательный | equalalcabitiuscampanusequal (mc)carter poli-equ.gauquelin sectorshorizon/azimutsunshinesavard-akochpullen sdmorinusС учётом регистра, в нижнем регистре. Некоторые значения содержат пробелы, косые черты или знаки препинания — копируйте их в точности, например 'equal (mc)', 'carter poli-equ.', 'horizon/azimut'. |
| notation | string | обязательный | astrologicaldegreeС учётом регистра, в нижнем регистре. 'degree' возвращает сырые десятичные градусы, 'astrological' — знак + г/м/с. При любом другом значении возвращается 400. |
| timezone_as_float | number (double) | обязательный | Смещение UTC для места, в часах, десятичным числом. Пример: 5.5 для Индии (UTC+05:30), -5 для Нью-Йорка зимой, 5.75 для Непала. Оно НЕ сверяется с date_time: если значения расходятся, вы получите успешный ответ для неверного момента, поэтому берите оба из одного источника. Используйте смещение, действовавшее на эту дату, а не сегодняшнее: для рождения летом в стране с летним временем нужно летнее смещение. min -12 · max 14 |
| latitude | number (double) | необязательный | Широта места в десятичных градусах. Положительные значения — север, отрицательные — юг. Пример: 26.9124 для Джайпура, 40.7128 для Нью-Йорка. Минуты и секунды не принимаются — сначала переведите значение в десятичные градусы. min -89.9 · max 89.9 |
| longitude | number (double) | необязательный | Долгота места в десятичных градусах. Положительные значения — восток, отрицательные — запад. Пример: 75.7873 для Джайпура, -74.0060 для Нью-Йорка. Следите за знаком: без минуса Нью-Йорк окажется в Китае. min -180 · max 180 |
Доступные ключи (7)
Перечислите в keys ровно те расчёты, которые вам нужны. Один неизвестный ключ — и отклоняется весь запрос. Сколько бы ключей вы ни запросили, спишется 1 кредит, так что собирайте их в один вызов.
| Ключ | Доп. поля | Описание |
|---|---|---|
| change_house_system | method_name | Та же операция, что `set_house_method`: переключает на систему, указанную в `method_name`, и возвращает null. Оба ключа вызывают один и тот же код, и разницы между ними нет. |
| house_cusps | notation | Двенадцать куспидов домов так, как их определяет выбранная система домов, — плоским списком в порядке домов. Это сами градусы куспидов, а не границы домов: границы находятся в `house_starts` и `house_ends` и лежат посередине между соседними куспидами. |
| house_ends | notation | Только конечный край каждого дома — плоским списком из двенадцати значений в порядке домов. Каждое значение — середина между куспидом этого дома и следующим, поэтому конец дома n равен началу дома n+1. |
| house_ranges | notation | Отрезок, который занимает каждый дом, — объект с ключами от '1' до '12', у каждого `start` и `end`. Края — середины между соседними куспидами, то есть дом начинается посередине между своим куспидом и предыдущим, а заканчивается посередине между своим и следующим. В нотации 'degree' значения — десятичные градусы; в 'astrological' — объекты из знака, градусов, минут и секунд. |
| house_starts | notation | Только начальный край каждого дома — плоским списком из двенадцати значений в порядке домов, а не объектом с ключами по номерам домов, как возвращает `house_ranges`. Десятичные градусы в нотации 'degree', объекты из знака и г/м/с в нотации 'astrological'. |
| houses | notation | Двенадцать домов с ключами от `1` до `12`, у каждого `{start, cusp, end}` — две границы плюс куспид между ними. Обратите внимание: структура отличается от ключа `houses` на /api/astro/krishnamurti/, который возвращает `{start, mid, end}` и не содержит куспида. `notation` задаёт единицы: `degree` даёт числа с плавающей точкой, `astrological` — строки вида `"Aries 12 30 15"`. |
| set_house_method | method_name | Пересчитывает куспиды в системе домов, указанной в `method_name`. Переключатель, а не значение — возвращает null и влияет только на ключи, указанные после него в массиве. Система из `method_name` применяется уже при построении запроса, поэтому этот ключ не нужен, если только вы не меняете систему посреди вызова. |
Пример запроса
curl -X POST https://api.occultapi.com/api/astro/house/ \
-H "X-API-Key: $OCCULT_API_KEY" \
-H "Content-Type: application/json" \
-d '{"keys":["set_house_method"],"latitude":26.9124,"longitude":26.1046,"timezone_as_float":5.5,"method_name":"equal","notation":"astrological","date_time":"2024-11-18"}'Ответ
{
"data": {
"set_house_method": null
},
"status": 200,
"is_error": false,
"message": "successful"
}Записано с реального вызова ровно с этим запросом. Результаты лежат в data под теми ключами, которые вы запросили.
Ошибки
Ошибки списания кредитов приходят в виде { "error": "…", "message": "<code>", "is_error": true }. Людям показывайте error, а логику стройте на message. Подробнее — в справочнике ошибок.