Przejdź do głównej zawartości
AstroWay/api v2.325.0 · pl
wszystkie systemy w normie

Reports API - 16 gotowych raportów PDF pod Twoją marką

Wyślijesz datę urodzenia, a otrzymasz gotowy dokument. Nie JSON, z którego trzeba będzie skomponować PDF, tylko sam PDF: paginowany, z Twoim logo, nazwą raportu i bez jakiejkolwiek wzmianki o nas wewnątrz.

Sześćnaście takich raportów już działa. Razem z dyspozytorem, historią eksportów i pięcioma AI-narracjami to 23 ścieżki pod /v1/reports/*.

Każdy wiersz zawiera gotowy przykład. To nie szablon: plik został wygenerowany tym samym wywołaniem, które jest opisane w dokumentacji tego endpointu, i jest ponownie wydawany wraz z szablonami.

Liczba stron to ta, którą dał ten konkretny przykład, zmierzona 2026-09-21. Może się zmieniać w zależności od mapy: więcej aspektów oznacza więcej wierszy, a relocation dodaje po dwie-trzy strony na każde miasto (4 strony dla jednego miasta, 13 dla pięciu).

EndpointCo jest wewnątrzStronKredytówPrzykład
/v1/reports/natalWielka Trójka, planety, domy, aspekty35 000PDF
/v1/reports/synastryMiędzykartowe aspekty dwóch map, bilans elementów25 000PDF
/v1/reports/transit-yearlyPrognoza tranzytów na wybrany rok55 000PDF
/v1/reports/relocationMapa wyjściowa, do 5 miast, planety które zmieniły dom, linie obok, 19 sfer życia65 000PDF
/v1/reports/vedic-kundliLagna i nakshatra, syderyczne pozycje, mahadashi Vimshottari25 000PDF
/v1/reports/lal-kitabKismet, tewa, wykryte rany, upayi25 000PDF
/v1/reports/gemstoneRekomendacja kamieni z mantrami, kamienie których nie nosić, stan graha75 000PDF
/v1/reports/human-designKluczowe parametry, centra, kanały25 000PDF
/v1/reports/muhurtaUporzządkowane sprzyjające dni pod jedną aktywność45 000PDF
/v1/reports/loveKluczowe punkty miłości, Wielka Trójka, aspekty25 000PDF
/v1/reports/careerKluczowe punkty kariery, kontekst osobowości, aspekty25 000PDF
/v1/reports/moneyKluczowe finansowe punkty, domy, aspekty35 000PDF
/v1/reports/businessKluczowe punkty biznesu, domy, aspekty25 000PDF
/v1/reports/childKluczowe cechy charakteru, Wielka Trójka, planety25 000PDF
/v1/reports/stellaforgePoster mapy na jedną stronę: planety, bilans, kluczowe aspekty15 000PDF
/v1/reports/tarotOpis rozkładu i karty2100PDF
/v1/reports/vastuPlan domu z mandalą, ocena, znaleziska Vastu z źródłami i poprawkami25 000PDF

Tarot kosztuje pięćdziesiąt razy mniej, ponieważ nie ma efemeryd: jedna strona rozkładu bez astronomicznych obliczeń.

/v1/reports/natal (i /v1/reports/generate z report_type: "natal") przyjmuje depth. standard to dokument wyżej, 5000 kredytów. extended kosztuje 10000 kredytów i dodaje koło mapy oraz sekcję dla każdego z ciał od Słońca do Plutona, Chirona i Wschodzącego Znaku w znaku: dwanaście sekcji, każda na dwie-cztery strony edytowanego tekstu (przykład PDF, 13 stron) z tego samego zbioru, który dostarcza /v1/natal-texts. Nic nie jest generowane pod żądanie, więc ta sama mapa daje ten sam dokument.

Sekcje są w 20 językach, językami strony; depth: "extended" z innym językiem odrzuca się z 400, a nie jest wypełniany z innego języka. Pozostałe typy raportów mają obecnie jedną głębokość: ich długie sekcje jeszcze nie zostały napisane.

POST /v1/reports/generate przyjmuje pole report_type i wykonuje to samo, co osobny endpoint. Dwanaście typów: natal, transit-yearly, synastry, business, career, love, money, child, lal-kitab, human-design, tarot, vedic-kundli.

Dla SDK jest to jeden metod zaamiast dwunastu, dla MCP jeden narzędzie zamiast dwunastu. Cena jest taka sama: wywołanie przez dyspozytora pobiera dokładnie tyle, ile bezpośredni endpoint.

Każdy typ raportu, oraz dyspozytor również, przyjmuje format: w ciele żądania lub jako ?format= w linii żądania (prześlij raz; dwa różne wartości dają 400). Cena jest taka sama we wszystkich trzech, ponieważ płacisz za dokument, a nie za plik, w którym on przychodzi.

formatCo jest zwracaneZapisywane
pdf (domyślnie)JSON z url PDF, page_count i expires_at24 godziny lub retain_days
htmlSam dokument, Content-Type: text/htmlnie zapisywane
markdownTen sam dokument w Markdown, Content-Type: text/markdownnie zapisywane

HTML to jeden samodzielny plik: style wewnątrz, koło mapy i plan Vastu jako wbudowany SVG, bez skryptów i bez zewnętrznych czcionek. To ta sama strona, z której drukuje się PDF, z tym samym białym etykietowaniem: nazwa firmy, nazwa raportu, kolory i stopka. Jedyne zewnętrzne linki to Twój logoUrl, pozostaje on linkiem do Twojego obrazu HTTPS, tak samo jak w PDF. Każde imię, miejsce i tekst, które przesyłasz, są ekranowane, więc imię takie jak <img onerror=...> jest drukowane jako tekst. Dokument można wstawić na swoją stronę lub w iframe.

Markdown ma te same nagłówki, tekst i tabelki. Poziomy nagłówków są zachowane: # to nazwa raportu, ## sekcja, ### podsekcja, w tym samym porządku co w PDF, więc podział według wierszy zaczynających się od ## , daje sekcje. Tabelki w formacie GitHub. Rysunek (koło, plan) jest pomijany, na jego miejscu jeden wiersz z notką. Każdy znak, który Markdown lub renderowanie z HTML wewnątrz odczytałoby jako znacznik, jest ekranowany odwrotną ukośnikiem.

Okno terminala
curl -X POST "https://api.astroway.info/v1/reports/natal?format=markdown" \
-H "X-Api-Key: aw_live_..." -H "Content-Type: application/json" \
-d '{ "chart": { "date": "1990-05-15", "time": "14:30:00",
"timezoneOffset": 3, "latitude": 50.45, "longitude": 30.52 },
"language": "uk" }'

Link do PDF żyje 24 godziny. Aby przekazać klientowi link na dłużej, dodaj ?retain_days=30 (do 90): plik będzie leżał tyle dni, a expires_at w odpowiedzi to pokaże. Bezterminowo nie hostujemy cudzych dokumentów, a usunięcie pliku wcześniej można zrobić przez DELETE /v1/reports/files/{filename}, za darmo. Plik zawiera to, co przesłałeś, wraz z nazwą, więc okres przechowywania jest opisany w DPA, rozdział 2. GET /v1/reports/history za darmo pokazuje ostatnie eksporty tego klucza, a przeterminowany rekord przychodzi z expired: true.

whitelabel przyjmuje obiekt z 15 pól: companyName, companyUrl, companyEmail, companyMobile, companyBio, logoUrl, frontImage, reportName, footerText, fontPairing i pięć kolorów (themeColor, headingColor, textPrimaryColor, textSecondaryColor, backgroundColor).

Możesz go przekazać bezpośrednio w żądaniu, i wtedy nie będzie potrzebnych żadnych ustawień konta:

Okno terminala
curl -X POST https://api.astroway.info/v1/reports/natal \
-H "X-Api-Key: aw_live_..." \
-H "Content-Type: application/json" \
-d '{ "chart": { "date": "1990-05-15", "time": "14:30:00",
"timezoneOffset": 3, "latitude": 50.45, "longitude": 30.52 },
"whitelabel": { "companyName": "Zoryana Studio",
"reportName": "Your Birth Blueprint",
"themeColor": "#7c3aed",
"footerText": "zoryana.example" } }'

W wygenerowanym dokumencie nazwa studia, własny tytuł raportu, kolor akcentu w nagłówkach sekcji i Twój stopka. Słowa AstroWay w nim nie występują ani razu.

Alternatywa dla tych, którzy nie chcą powtarzać obiektu w każdym żądaniu: whitelabel: true pobiera zapisane ustawienia konta. Ustaw je na stronie Branding raportów w panelu: nazwa firmy, nazwa raportu, kontakty, logo i dwa kolory, z prewizją przykładu raportu urodzinowego. Te same ustawienia są dostępne z kluczem przez /v1/whitelabel/config i /v1/whitelabel/logo, a POST /v1/whitelabel/preview rysuje przykład w PDF. Pole, które zostało przekazane w obiekcie, ma priorytet nad zapisany.

Żywe demo i kod na GitHub, MIT.

Stół praktyka: dane klienta z lewej strony, gotowy PDF z prawej. Każda płytka raportu pokazuje cenę w kredytach przed kliknięciem i prowadzi do gotowego przykładu. White-label włącza się za pomocą zaznaczenia. Backend to jedna ścieżka bez zależności, ponieważ właśnie w niej tkwi istota: przeglądarka nie może się bezpośrednio połączyć z API, więc klucz żyje na serwerze.

Okno terminala
git clone https://github.com/astroway/starter-practice
cd starter-practice && npm install
cp .env.example .env # your key goes here
npm run dev

Cztery rzeczy, które warto zabrać. Cena jest pokazywana tam, gdzie podejmuje się decyzję: serwer zwraca X-Credits-Used z powrotem na stronę, a nie tylko w logu. Szesnaście raportów ma cztery formy żądania, a nie szesnaście. Ten sam żądanie po raz drugi kosztuje zero, ponieważ cache odpowiedzi zwraca ten sam plik. I ALLOWED_REPORTS ogranicza, co konkretna instancja zgodzi się renderować: publiczne demo renderuje tylko rozkład Tarota (/v1/reports/tarot, 100 kredytów), ponieważ strona w otwartym internecie, która generuje raport urodzinowy (/v1/reports/natal, 5 000) dla kogoś, ktoś, ktoś zużywa miesięczny bezpłatny limit za dwa kliknięcia.

Pole language przyjmuje 21 kod. Pełne tłumaczenia są dostępne dla trzech: ukraińskiego, angielskiego, rosyjskiego. Pozostałe osiemnaście lokalizacji tłumaczy tylko nazwy znaków, a nagłówki i wyjaśnienia pozostają angielskie: niemiecki raport napisze “Löwe” pod nagłówkiem “Planety”.

Piszę to bezpośrednio, ponieważ raport to dokument, który Twój klient zostawia sobie. Sprzedanie go jako niemiecki, widząc niemieckie nazwy znaków w przykładzie, byłoby nieprzyjemnym odkryciem po stronie klienta, a nie naszej. Raport muhurta nadal jest całkowicie angielski.

/v1/reports/natal i pozostałe PDF-y kosztują 5 000 kredytów, więc miesięczny limit planu przekłada się na liczbę raportów bezpośrednio:

PlanKredytów/miesiącPDF-raportówTarot-raportów
Free10 000raporty niedostępneniedostępne
Indie, $550 00010500
Starter, $19200 000402 000
Pro, $59800 0001608 000
Business, $1993 500 00070035 000
Reports Pack, $991 500 00030015 000

Na Free raporty są zamknięte celowo: każdy PDF to sekundy renderowania po naszej stronie, a bezpłatny tarif ich nie pokrywa. Najtańszy wejście to Indie za $5.

Reports Pack to oddzielny dodatek dla tych, którzy potrzebują tylko raportów: $99 na miesiąc, 1 500 000 kredytów, czyli 300 PDF po 33 centów za sztukę, z white-label. Jest to tańsze niż PDF na Pro, ponieważ klucz nie idzie nigdzie poza raporty. Klucz takiego planu działa tylko w /v1/reports/* i /v1/whitelabel/*.

Jeśli sprzedajesz raporty swoim klientom, ważne jest jedno число: ile kosztuje jeden PDF na Twoim obiegu. W ramach limitu planu to cena planu, podzielona przez liczbę PDF. Ponad limit każdy PDF idzie jako nadwyżka, która jest obliczana za każde 10 000 kredytów ponad limit, więc PDF za 5000 kredytów kosztuje połowę stawki nadwyżki planu.

PlanPDF w planieCena PDF w ramachKażdy PDF ponad
Indie, $510$0.50$2.50
Starter, $1940$0.48$2.50
Pro, $59160$0.37$1.50
Reports Pack, $99300$0.33$1.50
Business, $199700$0.28$1.00

Zatem najtańszy plan zależy od tego, ile PDF na miesiąc sprzedajesz, włączając nadwyżkę:

PDF na miesiącNajtańszy planTwoje kosztyZa PDF
10Indie$5$0.50
40Starter$19$0.48
100Pro$59$0.59
160Pro$59$0.37
300Reports Pack$99$0.33
500Business$199$0.40
700Business$199$0.28

Punkty przełączania: Starter jest korzystniejszy niż Indie od 16 PDF, Pro od Starter od 57, Reports Pack od Pro od 187, jeśli nie potrzebujesz niczego poza raportami, Business od Reports Pack od 367. Pro i Business otwierają również resztę API, Pack tylko raporty i white-label.

Zysk marży ustawiasz Ty. Przy 300 PDF w Reports Pack Twoje koszty wynoszą $99 na miesiąc. Po $9 za sztukę to $2700 przychodu przeciwko $99 kosztów, po $19 to $5700. Cenę detaliczną nie polecamy, ale arytmetyka jest taka sama dla każdej: Twoja cena minus 33 centów.

Rozszerzony raport urodzinowy kosztuje dwukrotnie więcej niż standardowy, więc na każdym planie wyżej jest podwójna cena za PDF: $0.66 w Reports Pack.

Dwie rzeczy obniżają rzeczywiste koszty jeszcze bardziej. Powtórzone żądanie z tymi samymi danymi zwraca ten sam plik z cache odpowiedzi i nic nie kosztuje, więc klient, który załadował raport dwukrotnie, jest opłacany raz. A roczny plan to 12 miesięcy za ceną 9, a Reports Pack kosztuje $0.25 za PDF.

Przed sprzedażą otwórz przykłady: każdy to ten sam plik, który zwraca API, a z whitelabel Twoja nazwa i kolory zastępują typowe.

Pięć endpointów zwraca AI-narrację jako JSON, bez składania i bez PDF: /v1/reports/ai/natal-narrative, /transit-narrative, /synastry-narrative, /year-ahead-narrative, /monthly-narrative. Po 250 kredytów. Weź je, gdy tekst idzie do Twojego własnego szablonu, aplikacji lub newslettera.

Raport urodzinowy potrafi również tryb mieszany: enrich: true dodaje AI-narrację wewnątrz PDF. Na tej samej testowej mapie to 5 stron zamiast 3.