Obraz SVG z horoskopem urodzeniowym¶
Endpoint Obraz SVG z horoskopem urodzeniowym zwraca wynik w formacie SVG koła urodzeniowego, generowany przez wewnętrzny silnik, z pełną obsługą opcji renderowania.
Obsługa języków: Obsługiwane są wszystkie 26 języków. Odpowiedzi w językach innych niż angielski są tłumaczone na bieżąco przez pomocnika tłumaczeń (domyślnie LibreTranslate; DeepL BYOK, MyMemory lub Google do wyboru w każdym żądaniu).
Endpoint¶
| Metoda | Ścieżka |
|---|---|
POST | https://api.numerologyapi.com/api/v1/birth-chart/svg |
Treść żądania¶
Pola na najwyższym poziomie| Nazwa | Wymagane | Typ | Przykład | Opis ||------|----------|------|---------|-------------|¶
| sign | Nie | string | CANCER | Znaczenie znaku zodiaku. Dopuszczalne wartości: ARIES, TAURUS, GEMINI, CANCER, LEO, VIRGO, LIBRA, SCORPIO, SAGITTARIUS, CAPRICORN, AQUARIUS, PISCES. || target_date | Nie | string | 2026-04-08 | Data awaryjnego logowania (YYYY-MM-DD). || birth | Nie | obiekt | {...} | Blok urodowy natywny dla silnika (patrz wbudowana tabela). || sections | Nie | array[string] | ["general"] | Żądane sekcje. || zodiac_system | Nie | string | tropical | Dopuszczalne: sidereal, tropical. || ayanamsa | Nie | string | lahiri | Dopuszczalne: lahiri, fagan_bradley, krishnamurti, raman, yukteswar. || house_system | Nie | string | placidus | Dopuszczalne: placidus, whole_sign, equal, koch. || node_type | Nie | string | true | Dopuszczalne: true, mean. || tenant_id | Nie | string | docs-smoke | Opcjonalne przeoczenie nazwy użytkownika/przestrzeni nazw dla pamięci podręcznej. |
---| user_name | Nie | string | Docs Smoke User | Etykieta użytkownika do renderowania wykresu. || output_mode | Nie | string | wheel_only | Dopuszczalne: full, report_only, wheel_only. || include_wheel_svg | Nie | boolean | true | Włącz SVG koła jako element renderowania. | | split | Nie | boolean | false | false: Binarny odpowiedź w formacie SVG. true: Podziel pakiet SVG w formacie JSON, jeśli jest obsługiwany. | | round_wheel_only | Nie | boolean | true | Renderuj tylko okrągłe koło. | | transparent_background | Nie | boolean | true | Tryb transparentnego tła. | | svg_compression | Nie | string | none | Dopuszczalne wartości: none, gzip. | | language | Nie | string | en | Klucz języka silnika (2-16 znaków). | | locale | Nie | string | en-US | Klucz lokalizacji silnika (2-20 znaków). | | wheel | Nie | obiekt | {...} | Opcje renderowania koła (patrz wbudowaną tabelę). | | theme | Nie | string | classic | Klucz kompatybilności ze starszymi wersjami, przypisany do wheel.theme (classic->paper, light->day, dark->night, dark-high-contrast->obsidian). | | lang | Nie | string | en | Klucz kompatybilności ze starszymi wersjami, przypisany do language. | | name | Nie | string | User | Stara nazwa dla user_name. | | year | Nie | integer | 1992 | Spłaszczona data urodzenia (używaj z month i day). | | month | Nie | integer | 7 | Spłaszczony miesiąc urodzenia. || day | Nie | integer | 16 | Dzień urodzenia w starym, uproszczonym formacie. || hour | No | integer | 13 | Legacy flattened birth hour. | | minute | Nie | integer | 45 | Stara, zredukowana minuta urodzenia. || lat | Nie | liczba | 40.7128 | Szerokość geograficzna w formacie "legacy" (musi być dopasowana do lng). || lng | Nie | liczba | -74.0060 | Stara, zredukowana współrzędna długości (musi być powiązana z lat). || tz_str | Nie | string | America/New_York | Stara, zredukowana nazwa strefy czasowej. || city | Nie | string | New York | Pole kompatybilności ze starszymi wersjami. || country | Nie | string | US | Pole kompatybilności ze starszymi wersjami. |
birth Pola Obiektu¶
| Nazwa | Wymagane | Typ | Przykład | Opis |
|---|---|---|---|---|
birth.date | Tak (jeśli podano birth) | string | 1992-07-16 | Data urodzenia (YYYY-MM-DD). |
birth.time | Nie | string | 13:45 | Godzina urodzenia (HH:MM, 24h). |
birth.coordinates | Nie | obiekt | { "latitude": 40.7128, "longitude": -74.006 } | Blok współrzędnych. |
birth.coordinates.latitude | Nie | liczba | 40.7128 | Zakres: -90 do 90. |
birth.coordinates.longitude | Nie | liczba | -74.0060 | Zakres: -180 do 180. |
birth.timezone | Nie | string | America/New_York | Strefa czasowa IANA. |
wheel Pola Obiektu| Nazwa | Wymagane | Typ | Przykład | Opis |¶
|---|---|---|---|---| | wheel.preset_id | Nie | string | minimal_app | Dopuszczalne wartości: minimal_app, editorial_full, print_clean. | | wheel.preset_override_mode | Nie | string | merge | Dopuszczalne wartości: merge, preset_only. | | wheel.size | Nie | integer | 720 | Zakres: od 720 do 2400. | | wheel.theme | Nie | string | custom | Dopuszczalne wartości: night, day, aurora, paper, obsidian, sunset, zenith, mono, custom. Użyj custom razem z wheel.theme_palette, aby uzyskać pełną kontrolę nad kolorami. | | wheel.panel_layout | Nie | string | bottom | Dopuszczalne wartości: right, bottom. | | wheel.accent_color | Nie | string | #3ddd77 | Kolor szesnastkowy (hex). | | wheel.background_gradient | Nie | array[string] | ["#0b1020", "#111b3b", "#1b2f6d"] | Opcjonalny gradient z 3 kolorami. | | wheel.panel_opacity | Nie | number | 0.78 | Zakres: od 0.2 do 1.0. | | wheel.theme_palette | Nie | object | { "center_fill": "#0d1832", "panel_opacity": 0.78 } | Opcjonalne nadpisanie niestandardowej palety motywu (zobacz Niestandardowe motywy koła). Częściowe nadpisania są dozwolone dla każdego motywu; wymagane, gdy theme ma wartość custom. | | wheel.aspect_line_opacity | Nie | number | 0.58 | Zakres: od 0.1 do 1.0. | | wheel.show_aspect_lines | Nie | boolean | true | Wyświetlaj linie aspektu (aspect lines). | | wheel.show_house_cusps | Nie | boolean | true | Wyświetlaj znaczniki wierzchołków domów. | | wheel.show_house_numbers | Nie | boolean | true | Wyświetlaj numery domów. | | wheel.show_sign_symbols | Nie | boolean | true | Wyświetlaj symbole znaku zodiaku. | | wheel.show_sign_names | Nie | boolean | true | Wyświetlaj etykiety znaków zodiaku. |markdown | `wheel.show_degree_ticks` | Nie | boolean | `true` | Wyświetlaj oznaczenia stopni. | | `wheel.show_degree_labels` | Nie | boolean | `true` | Wyświetlaj etykiety stopni. | | `wheel.degree_tick_interval` | Nie | integer | `5` | Zakres: od `1` do `30`. | | `wheel.show_planet_symbols` | Nie | boolean | `true` | Wyświetlaj symbole planet. | | `wheel.planet_symbol_size` | Nie | number | `15.0` | Zakres: od `10.0` do `30.0`. | | `wheel.planet_marker_size` | Nie | number | `6.3` | Zakres: od `3.0` do `12.0`. | | `wheel.show_planet_table` | Nie | boolean | `true` | Wyświetlaj panel tabeli planet. | | `wheel.show_aspect_table` | Nie | boolean | `true` | Wyświetlaj panel tabeli aspektów. | | `wheel.show_sign_legend` | Nie | boolean | `true` | Wyświetl legendę znaków. | | `wheel.show_element_balance` | Nie | boolean | `true` | Wyświetlaj panel równowagi elementów. | | `wheel.show_metadata` | Nie | boolean | `true` | Wyświetlaj panel metadanych. | | `wheel.show_title` | Nie | boolean | `true` | Wyświetl tytuł/podtytuł. | | `wheel.show_angle_markers` | Nie | boolean | `true` | Wyświetlaj znaczniki ASC/MC. | | `wheel.show_center_signature` | Nie | boolean | `true` | Wyświetl tekst podpisu środka. | | `wheel.title` | Nie | string | `Docs SVG` | Opcjonalny tytuł koła. | | `wheel.subtitle` | Nie | string | `Expanded parity example` | Opcjonalny podtytuł koła. | | `wheel.custom_planet_colors` | Nie | object | `{ "Sun": "#ffbb33" }` | Mapa dopasowania nazwy planety do koloru szesnastkowego. |Ten punkt końcowy domyślnie zwraca plik SVG (image/svg+xml). Może zwracać podzielone części SVG w formacie JSON, gdy jest używany tryb "Personalized" (split=true).
Niestandardowe Motywy Koła (theme: "custom" + theme_palette)¶
Kolory i przezroczystość koła można w pełni dostosować: ustaw wheel.theme na custom i przekaż obiekt theme_palette. Nadpisywane są tylko klucze, które podasz — wszystko inne jest zastępowane przez ciemną bazową paletę night.
{
"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"
}
}
}
Klucze theme_palette¶
| Klucz | Typ | Co kontroluje |
|---|---|---|
bg_0 / bg_1 / bg_2 | hex (#rrggbb) | Punkty zatrzymania gradientu tła |
panel_fill | hex | Wypełnienie panelu planet/legendy |
panel_opacity | float 0–1 | Przezroczystość panelu |
sign_line | hex | Linie graniczne znaków zodiaku |
ring_inner | hex | Obrys wewnętrznego pierścienia koła |
center_fill | hex | Wypełnienie środka koła (centralny dysk podpisu) |
center_stroke | hex | Obrys środka koła |
divider | hex | Rozdzielacze / obramowania kart |
subtitle / text / soft_text | hex | Kolory typografii |
Zasady¶
- Częściowe nadpisania — stosowane są tylko klucze, które podasz; reszta jest zastępowana przez bazową paletę motywu (
customużywa ciemnej bazynight). - Wartości kolorów muszą być 7-znakowymi wartościami hex (
#rrggbb);panel_opacitymusi być liczbą zmiennoprzecinkową w zakresie[0, 1]. Nieznane klucze lub nieprawidłowe wartości → błąd walidacji422. theme_palettejest wymagane, gdythemema wartość"custom".- W przypadku motywów o nazwach (np.
paper)theme_palettedziała jako częściowe nadpisanie. - Zmienia się tylko wygląd koła — obliczenia wykresu, pozycje i aspekty nigdy nie ulegają zmianie.
Przykład niestandardowego motywu¶
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"
}
}
}'
Priorytet starszego pola theme na tym endpoint¶
Legacy pole najwyższego poziomu theme jest nadal obsługiwane:
- Jawne pole najwyższego poziomu
theme(np."theme": "dark") wygrywa. - W przeciwnym razie używane jest
wheel.theme(np."custom"+theme_palette). - W przeciwnym razie stosowana jest historyczna wartość domyślna
classic(→paper).
Aliasy legacy: classic → paper, light → day, dark → night, dark-high-contrast → obsidian.
Przykład trybu "Personalized" (Zalecany)¶
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
}
}'
Przykład trybu "Public" (Ogólny, oparty na znakach)¶
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 }
}'