Перейти к содержанию

SVG-изображение натальной карты

Конечная точка SVG-изображение натальной карты возвращает SVG-вывод натальной колеса от внутреннего движка с полной поддержкой отображения/рендеринга.

Язык: все 26 языков

Поддержка языков: поддерживаются все 26 языков. Ответы на неанглийском языке переводятся на лету помощником перевода (по умолчанию LibreTranslate; DeepL BYOK, MyMemory или Google можно выбрать для каждого запроса).

Конечная точка

Метод Путь
POST https://api.numerologyapi.com/api/v1/birth-chart/svg

Тело запроса

Верхнеуровневые поля```markdown

Название Обязательно Тип Пример Описание
sign Нет строка CANCER Знаки зодиака. Разрешено: ARIES, TAURUS, GEMINI, CANCER, LEO, VIRGO, LIBRA, SCORPIO, SAGITTARIUS, CAPRICORN, AQUARIUS, PISCES.
target_date Нет строка 2026-04-08 Дата резервного копирования (YYYY-MM-DD).
birth Нет объект {...} Блок рождения, специфичный для движка (см. вложенную таблицу).
sections Нет массив[строка] ["general"] Запрашиваемые разделы.
zodiac_system Нет строка tropical Разрешено: sidereal, tropical.
ayanamsa Нет строка lahiri Разрешено: lahiri, fagan_bradley, krishnamurti, raman, yukteswar.
house_system Нет строка placidus Разрешено: placidus, whole_sign, equal, koch.
node_type Нет строка true Разрешено: true, mean.
tenant_id Нет строка docs-smoke Необязательное переопределение пространства имен для клиента/кэша.
user_name Нет строка Docs Smoke User Метка пользователя для отрисовки диаграммы.
output_mode Нет строка wheel_only Разрешено: full, report_only, wheel_only.
``` include_wheel_svg Нет boolean true
split Нет boolean false false: двоичный SVG-ответ. true: разделить JSON-пакет SVG при поддержке.
round_wheel_only Нет boolean true Рендерить только круглый диск.
transparent_background Нет boolean true Режим прозрачного фона.
svg_compression Нет string none Разрешено: none, gzip.
language Нет string en Ключ языка движка (2-16 символов).
locale Нет string en-US Ключ локали движка (2-20 символов).
wheel Нет object {...} Опции рендеринга колеса (см. вложенную таблицу).
theme Нет string classic Ключ совместимости со старыми версиями, соответствующий wheel.theme (classic->paper, light->day, dark->night, dark-high-contrast->obsidian).
lang Нет string en Ключ совместимости со старыми версиями, соответствующий language.
name Нет string User Старое алиас для user_name.
year Нет integer 1992 Старый, сглаженный год рождения (используйте вместе с month и day).
month Нет integer 7 Старый, сглаженный месяц рождения.
hour No integer 13 Legacy flattened birth hour.
minute No integer 45 Legacy flattened birth minute.
lat No number 40.7128 Legacy flattened latitude (must pair with lng).
lng No number -74.0060 Legacy flattened longitude (must pair with lat).
tz_str No string America/New_York Legacy flattened timezone alias.
city No string New York Legacy compatibility field.
country No string US Legacy compatibility field.

birth Object Fields| Название | Обязательно | Тип | Пример | Описание |

|------|----------|------|---------|-------------| | birth.date | Да (если предоставлено birth) | строка | 1992-07-16 | Дата рождения (YYYY-MM-DD). | | birth.time | Нет | строка | 13:45 | Время рождения (HH:MM, в 24-часовом формате). | | birth.coordinates | Нет | объект | { "latitude": 40.7128, "longitude": -74.006 } | Блок координат. | | birth.coordinates.latitude | Нет | число | 40.7128 | Диапазон: от -90 до 90. | | birth.coordinates.longitude | Нет | число | -74.0060 | Диапазон: от -180 до 180. | | birth.timezone | Нет | строка | America/New_York | Часовой пояс IANA. |

Поля объекта `wheel````markdown

Название Обязательно Тип Пример Описание
wheel.preset_id Нет строка minimal_app Разрешено: minimal_app, editorial_full, print_clean.
wheel.preset_override_mode Нет строка merge Разрешено: merge, preset_only.
wheel.size Нет целое число 720 Диапазон: от 720 до 2400.
wheel.theme Нет строка custom Разрешено: night, day, aurora, paper, obsidian, sunset, zenith, mono, custom. Используйте custom вместе с wheel.theme_palette для полного контроля над цветами.
wheel.panel_layout Нет строка bottom Разрешено: right, bottom.
wheel.accent_color Нет строка #3ddd77 Шестнадцатеричный цвет.
wheel.background_gradient Нет массив[строка] ["#0b1020", "#111b3b", "#1b2f6d"] Необязательное переопределение градиента из 3 цветов.
wheel.panel_opacity Нет число 0.78 Диапазон: от 0.2 до 1.0.
wheel.theme_palette Нет объект { "center_fill": "#0d1832", "panel_opacity": 0.78 } Необязательное переопределение пользовательской палитры темы (см. Пользовательские темы колеса). Частичные переопределения разрешены на любой теме; обязательно, когда theme равен custom.
wheel.aspect_line_opacity Нет число 0.58 Диапазон: от 0.1 до 1.0.
wheel.show_aspect_lines Нет булево значение true Отображать линии перспективы.
wheel.show_house_cusps Нет булево значение true Отображать маркеры уступов домов.
wheel.show_house_numbers Нет булево значение true Отображать номера домов.
wheel.show_sign_symbols Нет булево значение true Отображать символы зодиака.
wheel.show_sign_names Нет булево значение true Отображать метки зодиака.
| `wheel.show_degree_ticks` | Нет | boolean | `true` | Отображать деления градуса. |
| `wheel.show_degree_labels` | Нет | boolean | `true` | Отображать метки градусов. |
| `wheel.degree_tick_interval` | Нет | integer | `5` | Диапазон: от `1` до `30`. |
| `wheel.show_planet_symbols` | Нет | boolean | `true` | Отображать символы планет. |
| `wheel.planet_symbol_size` | Нет | number | `15.0` | Диапазон: от `10.0` до `30.0`. |
| `wheel.planet_marker_size` | Нет | number | `6.3` | Диапазон: от `3.0` до `12.0`. |
| `wheel.show_planet_table` | Нет | boolean | `true` | Отображать панель таблицы планет. |
| `wheel.show_aspect_table` | Нет | boolean | `true` | Отображать панель таблицы аспектов. |
| `wheel.show_sign_legend` | Нет | boolean | `true` | Отображать легенду знаков. |
| `wheel.show_element_balance` | Нет | boolean | `true` | Отображать панель баланса элементов. |
| `wheel.show_metadata` | Нет | boolean | `true` | Отображать панель метаданных. |
| `wheel.show_title` | Нет | boolean | `true` | Отображать заголовок/подзаголовок. |
| `wheel.show_angle_markers` | Нет | boolean | `true` | Отображать метки ASC/MC. |
| `wheel.show_center_signature` | Нет | boolean | `true` | Отображать текст подписи центра. |
| `wheel.title` | Нет | string | `Docs SVG` | Необязательный заголовок колеса. |
| `wheel.subtitle` | Нет | string | `Expanded parity example` | Необязательный подзаголовок колеса. |
| `wheel.custom_planet_colors` | Нет | object | `{ "Sun": "#ffbb33" }` | Карта соответствия имени планеты и шестнадцатеричного цвета. |---
Этот эндпоинт по умолчанию возвращает SVG (`image/svg+xml`). Он может возвращать разделенные JSON-части SVG, когда `split=true`.

## Пользовательские темы колеса (`theme: "custom"` + `theme_palette`)

Цвета и прозрачность колеса полностью настраиваются: установите `wheel.theme` в
`custom` и передайте объект `theme_palette`. Переопределяются только ключи, которые
вы указываете, — всё остальное возвращается к темной базовой палитре `night`.

```json
{
  "wheel": {
    "theme": "custom",
    "accent_color": "#3ddd77",
    "theme_palette": {
      "bg_0": "#0b1730",
      "bg_1": "#101d38",
      "bg_2": "#0a1326",
      "panel_fill": "#0c1730",
      "panel_opacity": 0.78,
      "sign_line": "#2b3f63",
      "ring_inner": "#34486a",
      "center_fill": "#0d1832",
      "center_stroke": "#1e2f4a",
      "divider": "#2a3f64",
      "subtitle": "#8fa2c2",
      "text": "#dbe7f8",
      "soft_text": "#9fb0cd"
    }
  }
}

Ключи theme_palette

Ключ Тип Что контролирует
bg_0 / bg_1 / bg_2 hex (#rrggbb) Точки остановки градиента фона
panel_fill hex Заливка панели планет/легенды
panel_opacity float 0–1 Прозрачность панели
sign_line hex Линии границ знаков зодиака
ring_inner hex Обводка внутреннего кольца колеса
center_fill hex Заливка центра колеса (центральный диск подписи)
center_stroke hex Обводка центра колеса
divider hex Разделители / границы карточек
subtitle / text / soft_text hex Цвета типографики

Правила

  • Частичные переопределения — применяются только указанные ключи; остальные возвращаются к базовой палитре темы (custom использует темную базу night).
  • Значения цветов должны быть 7-символьными hex (#rrggbb); panel_opacity должен быть числом с плавающей точкой в диапазоне [0, 1]. Неизвестные ключи или недопустимые значения → ошибка проверки 422.
  • theme_palette обязателен, когда theme равен "custom".
  • На именованных темах (например, paper) theme_palette действует как частичное переопределение.
  • Изменяется только внешний вид колеса — расчеты, положения и аспекты никогда не затрагиваются.

Пример пользовательской темы

curl --request POST \
  --url "https://api.numerologyapi.com/api/v1/birth-chart/svg" \
  --header "X-API-Key: YOUR_API_KEY" \
  --header "Content-Type: application/json" \
  --data '{
  "birth": {
    "date": "1992-07-16",
    "time": "13:45",
    "coordinates": { "latitude": 40.7128, "longitude": -74.006 },
    "timezone": "America/New_York"
  },
  "wheel": {
    "theme": "custom",
    "accent_color": "#3ddd77",
    "theme_palette": {
      "bg_0": "#0b1730",
      "bg_1": "#101d38",
      "bg_2": "#0a1326",
      "panel_fill": "#0c1730",
      "panel_opacity": 0.78,
      "sign_line": "#2b3f63",
      "ring_inner": "#34486a",
      "center_fill": "#0d1832",
      "center_stroke": "#1e2f4a",
      "divider": "#2a3f64",
      "subtitle": "#8fa2c2",
      "text": "#dbe7f8",
      "soft_text": "#9fb0cd"
    }
  }
}'

Приоритет устаревшего theme на этой конечной точке

Устаревшее поле theme верхнего уровня по-прежнему поддерживается:

  1. Явный theme верхнего уровня (например, "theme": "dark") имеет приоритет.
  2. В противном случае используется wheel.theme (например, "custom" + theme_palette).
  3. В противном случае применяется историческое значение по умолчанию classic (→ paper).

Устаревшие псевдонимы: classic → paper, light → day, dark → night, dark-high-contrast → obsidian.

Пример работы в режиме "Персонализация" (Рекомендуется)

curl --request POST \
  --url "https://api.numerologyapi.com/api/v1/birth-chart/svg" \
  --header "X-API-Key: YOUR_API_KEY" \
  --header "Content-Type: application/json" \
  --data '{
  "sign": "CANCER",
  "target_date": "2026-04-08",
  "zodiac_system": "tropical",
  "ayanamsa": "lahiri",
  "house_system": "placidus",
  "node_type": "true",
  "tenant_id": "docs-smoke",
  "user_name": "Docs Smoke User",
  "output_mode": "wheel_only",
  "include_wheel_svg": true,
  "split": false,
  "round_wheel_only": true,
  "transparent_background": true,
  "svg_compression": "none",
  "language": "en",
  "locale": "en-US",
  "birth": {
    "date": "1992-07-16",
    "time": "13:45",
    "coordinates": { "latitude": 40.7128, "longitude": -74.006 },
    "timezone": "America/New_York"
  },
  "wheel": {
    "preset_id": "minimal_app",
    "theme": "paper",
    "panel_layout": "bottom",
    "size": 720
  }
}'

Пример работы в общедоступном режиме ("Общий режим на основе знаков")

curl --request POST \
  --url "https://api.numerologyapi.com/api/v1/birth-chart/svg" \
  --header "X-API-Key: YOUR_API_KEY" \
  --header "Content-Type: application/json" \
  --data '{
  "sign": "CANCER",
  "target_date": "2026-04-08",
  "output_mode": "wheel_only",
  "split": false,
  "round_wheel_only": true,
  "language": "en",
  "locale": "en-US",
  "wheel": { "preset_id": "minimal_app", "theme": "paper", "size": 720 }
}'

Пример ответа

Example birth chart SVG response

Примеры рендеринга SVG

Предустановка печати (Слияние с переопределением) с включенными линиями пропорций

Предустановка печати с линиями пропорций

Пример тропического зенита

Пример тропического зенита

Пример сидериального обсидиана

Пример сидериального обсидиана