Reports API - 16 kant-en-klare PDF-rapporten onder jouw merk
Je stuur je geboortedatum in en ontvangt een klaar document. Niet JSON, waaruit je een PDF moet maken, maar een zelfstandige PDF: paginagestructureerd met jouw logo, jouw rapportnaam en zonder enige verwijzing naar ons erin.
Zestien dergelijke rapporten werken al. Samen met de rapportbeheerder, de exportgeschiedenis en vijf AI-verhalen zijn dat 23 routes onder /v1/reports/*.
Catalogus
Section titled “Catalogus”Elke regel bevat een voorbeeld dat klaar is. Dit is geen lay-out: het is een gegenereerd bestand, gemaakt met dezelfde API-aanroep die in de documentatie van deze endpoint wordt weergegeven, en wordt opnieuw gegenereerd samen met de sjablonen.
Het aantal pagina’s is dat van dit specifieke voorbeeld, gemeten op 2026-09-21. Het varieert per kaart: meer aspecten betekent meer regels, en relocation voegt twee tot drie pagina’s toe per stad (4 pagina’s voor één stad, 13 voor vijf).
| Endpoint | Wat erin zit | Pagina’s | Credits | Voorbeeld |
|---|---|---|---|---|
/v1/reports/natal | De grote drie, planeten, huizen, aspecten | 3 | 5 000 | |
/v1/reports/synastry | Inter-kaart aspecten van twee kaarten, balans van elementen | 2 | 5 000 | |
/v1/reports/transit-yearly | Voorspelling van transits voor een gekozen jaar | 5 | 5 000 | |
/v1/reports/relocation | Uitgangskaart, tot 5 steden, planeten die hun huis veranderden, nabijgelegen lijnen, 19 levenssferen | 6 | 5 000 | |
/v1/reports/vedic-kundli | Lagna en nakshatra, siderische posities, mahadashi en vimshottari dashi | 2 | 5 000 | |
/v1/reports/lal-kitab | Kismet, tewa, ontdekte rini’s, upayi | 2 | 5 000 | |
/v1/reports/gemstone | Aanbevelingen voor steen met mantra’s, welke stenen niet gedragen moeten worden, graha status | 7 | 5 000 | |
/v1/reports/human-design | Sleutelparameters, centra, kanalen | 2 | 5 000 | |
/v1/reports/muhurta | Gerangschikte gunstige dagen voor een activiteit | 4 | 5 000 | |
/v1/reports/love | Sleutelpunten voor liefde, de grote drie, aspecten | 2 | 5 000 | |
/v1/reports/career | Sleutelpunten voor carrière, persoonlijkheidscontext, aspecten | 2 | 5 000 | |
/v1/reports/money | Sleutelpunten voor financiën, huizen, aspecten | 3 | 5 000 | |
/v1/reports/business | Sleutelpunten voor bedrijven, huizen, aspecten | 2 | 5 000 | |
/v1/reports/child | Sleutelkaraktertrekken, de grote drie, planeten | 2 | 5 000 | |
/v1/reports/stellaforge | Een poster van de kaart op één pagina: planeten, balans, sleutelaspecten | 1 | 5 000 | |
/v1/reports/tarot | Beschrijving van de kaartlegging en kaarten | 2 | 100 | |
/v1/reports/vastu | Huizenplan met mandala, beoordeling, Vastu-vondsten met bronnen en correcties | 2 | 5 000 |
Tarot kost vijftig keer minder, omdat er geen efemeriden zijn: één pagina kaartlegging zonder astronomische berekeningen.
Diepte: standaard of uitgebreid
Section titled “Diepte: standaard of uitgebreid”/v1/reports/natal (en /v1/reports/generate met report_type: "natal") neemt depth aan. standard is het document hierboven, 5000 credits. extended kost 10000 credits en voegt een kaartwiel toe en een sectie voor elk lichaam van de Zon tot Pluto, Chiron en de Ascentend teken toe, twaalf secties, elk met twee tot vier pagina’s bewerkte tekst (PDF voorbeeld, 13 pagina’s) uit dezelfde corpus die /v1/natal-texts teruggeeft. Niets wordt gegenereerd bij de aanvraag, dus dezelfde kaart geeft hetzelfde document.
De secties zijn beschikbaar in 20 talen, de talen van de site; depth: "extended" met een andere taal wordt afgewezen met 400, in plaats van gevuld met een andere taal. De andere rapporttypen hebben momenteel slechts één diepte: hun lange secties zijn nog niet geschreven.
Een route in plaats van zestien
Section titled “Een route in plaats van zestien”POST /v1/reports/generate neemt het veld report_type en doet hetzelfde als een aparte route. Twaalf typen: natal, transit-yearly, synastry, business, career, love, money, child, lal-kitab, human-design, tarot, vedic-kundli.
Voor de SDK is dit één methode in plaats van twaalf, voor MCP één tool in plaats van twaalf. De prijs is hetzelfde: een aanroep via de dispatcher debiteert precies zoveel als de directe route.
PDF, HTML of Markdown
Section titled “PDF, HTML of Markdown”Elk rapporttype, en de dispatcher ook, neemt format aan: in het lichaam van de aanvraag of als ?format= in de query-string (geef het maar één keer op; twee verschillende waarden geven 400). De prijs is hetzelfde in alle drie, omdat je betaalt voor het document, niet voor het bestand waarin het wordt verzonden.
format | Wat wordt teruggegeven | Wordt opgeslagen |
|---|---|---|
pdf (standaard) | JSON met url van de PDF, page_count en expires_at | 24 uur of retain_days |
html | Het document zelf, Content-Type: text/html | niet opgeslagen |
markdown | Hetzelfde document in Markdown, Content-Type: text/markdown | niet opgeslagen |
HTML is één zelfstandig bestand: stijlen zijn ingebouwd, de kaartwiel en het huisplan zijn ingebouwde SVG’s, zonder scripts en zonder externe lettertypen. Dit is dezelfde pagina waaruit de PDF wordt gedrukt, met dezelfde white-label blok: de naam van je bedrijf, de naam van het rapport, de kleuren en de voettekst. Het enige externe link is je logoUrl, het blijft een link naar je HTTPS-beeld, net zoals in de PDF. Elke naam, locatie en tekst die je verstuurt, worden geëscaped, dus een naam zoals <img onerror=...> wordt als tekst afgedrukt. Het document kan in je eigen pagina of in een iframe worden ingevoegd.
Markdown heeft dezelfde titels, tekst en tabellen. De titelniveaus zijn behouden: # is de naam van het rapport, ## is een sectie, ### is een subsectie, in dezelfde volgorde als in de PDF, dus een splitsing op regels die beginnen met ## , geeft secties. Tabellen in GitHub-formaat. Afbeeldingen (wiel, plan) worden weggelaten, op hun plaats staat één regel met een opmerking. Elke teken die Markdown of de HTML-renderer binnen zou lezen als markering, wordt geëscaped met een backslash.
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" }'De link naar de PDF is geldig voor 24 uur. Om een klant een langere link te geven, voeg ?retain_days=30 toe (tot 90): het bestand zal zo lang bestaan, en expires_at in het antwoord toont dit aan. Onbeperkt hosten we geen externe documenten, en je kunt het bestand eerder verwijderen via DELETE /v1/reports/files/{filename}, gratis. Het bestand bevat wat je hebt verstuurd, samen met de naam, dus de opslagduur is beschreven in de DPA, sectie 2. GET /v1/reports/history toont gratis de laatste exporte van deze sleutel, en een verlopen record komt met expired: true.
Jouw merk, niet het onze
Section titled “Jouw merk, niet het onze”whitelabel neemt een object met 15 velden aan: companyName, companyUrl, companyEmail, companyMobile, companyBio, logoUrl, frontImage, reportName, footerText, fontPairing en vijf kleuren (themeColor, headingColor, textPrimaryColor, textSecondaryColor, backgroundColor).
Je kunt dit rechtstreeks in de aanvraag doorgeven, en dan is geen accountinstelling nodig:
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" } }'In het gegenereerde document staat de naam van de studio, je eigen rapporttitel, de accentkleur in de koppen van de secties en je voettekst. Er staat geen woord AstroWay in.
Een alternatief voor wie niet wil herhalen het object in elke aanvraag: whitelabel: true neemt de opgeslagen accountconfiguratie. Stel deze in op de pagina Rapport branding in jouw dashboard: de naam van je bedrijf, de naam van het rapport, contactinformatie, logo en twee kleuren, met een voorbeeld van een voorbeeld van een geboortekaart. Deze instellingen zijn ook beschikbaar via de sleutel via /v1/whitelabel/config en /v1/whitelabel/logo, en POST /v1/whitelabel/preview genereert een voorbeeld in PDF. Een veld dat in het object wordt doorgegeven, heeft voorrang boven de opgeslagen.
Een klaar toepassing die je kunt klonen
Section titled “Een klaar toepassing die je kunt klonen”Levend demo en code op GitHub, MIT-licentie.
Een praktische tafel: klantgegevens links, klaar PDF rechts. Elke rapport-knop toont de prijs in credits vooraleer je klikt en leidt naar een klaar voorbeeld. White-label wordt ingeschakeld met een vinkje. De backend is één route zonder afhankelijkheden, omdat dat de kern is: de browser kan niet rechtstreeks naar de API, dus de sleutel blijft op de server.
git clone https://github.com/astroway/starter-practicecd starter-practice && npm installcp .env.example .env # your key goes herenpm run devVier dingen die je moet meenemen. De prijs wordt getoond waar de beslissing wordt genomen: de server geeft X-Credits-Used terug naar de pagina, niet alleen in de log. Zestien rapporten hebben vier aanvraagvormen, niet zestien. Dezelfde aanvraag voor de tweede keer kost niets, omdat de cache van de antwoorden hetzelfde bestand teruggeeft. En ALLOWED_REPORTS beperkt wat een instantie bereid is om te renderen: het openbare demo renderen alleen de Tarot-kaartlegging (/v1/reports/tarot, 100 credits), omdat de pagina in het openbare internet, die een geboortekaart (/v1/reports/natal, 5000) maakt voor iedereen, de gratis maandelijkse limiet verbruikt in twee klikken.
Het veld language neemt 21 codes aan. Volledig vertaald zijn er drie: Oekraïens, Engels, Russisch. Voor de overige achttien worden alleen de namen van de tekens vertaald, terwijl de titels en uitleg in het Engels blijven: een Duits rapport zal “Löwe” onder de titel “Planeten” schrijven.
We schrijven dit rechtstreeks, omdat een rapport een document is dat je klant voor zichzelf houdt. Het verkopen ervan als Duits, terwijl je Duitse tekensnamen in het voorbeeld ziet, zou een onprettig verrassing zijn aan de kant van de klant, niet aan onze kant. Het rapport muhurta is momenteel volledig Engels.
Hoeveel rapporten komen er per plan uit
Section titled “Hoeveel rapporten komen er per plan uit”/v1/reports/natal en de andere PDF’s kosten 5000 credits, dus de maandelijkse limiet van het plan wordt eenvoudig omgezet naar het aantal rapporten:
| Plan | Credits/maand | PDF-rapporten | Tarot-rapporten |
|---|---|---|---|
| Free | 10 000 | rapporten niet beschikbaar | niet beschikbaar |
| Indie, $5 | 50 000 | 10 | 500 |
| Starter, $19 | 200 000 | 40 | 2 000 |
| Pro, $59 | 800 000 | 160 | 8 000 |
| Business, $199 | 3 500 000 | 700 | 35 000 |
| Reports Pack, $99 | 1 500 000 | 300 | 15 000 |
Op Free zijn rapporten bewust gesloten: elke PDF kost seconden renderen aan onze kant, en de gratis tarief dekt dit niet. De goedkoopste optie is Indie voor $5.
Reports Pack is een apart add-on voor wie alleen rapporten nodig heeft: $99 per maand, 1 500 000 credits, dus 300 PDF’s voor 33 cent per stuk, met white-label. Dit is goedkoper voor PDF’s dan op Pro, omdat de sleutel nergens anders heen gaat dan rapporten. Een sleutel van dit plan gaat alleen naar /v1/reports/* en /v1/whitelabel/*.
Herverkoop van rapporten: hoeveel kost een PDF jou?
Section titled “Herverkoop van rapporten: hoeveel kost een PDF jou?”Als je rapporten aan je klanten verkoopt, weegt één getal: hoeveel een PDF jou kost bij jouw volume. Binnen de limiet van het plan is dit de prijs van het plan, gedeeld door het aantal PDF’s. Boven de limiet gaat elke PDF als overschrijding, die wordt berekend per elke 10 000 credits boven de limiet, dus een PDF van 5000 credits kost de helft van de overschrijdingsprijs van het plan.
| Plan | PDF in het plan | Prijs van PDF binnen de limiet | Elke PDF boven |
|---|---|---|---|
| Indie, $5 | 10 | $0.50 | $2.50 |
| Starter, $19 | 40 | $0.48 | $2.50 |
| Pro, $59 | 160 | $0.37 | $1.50 |
| Reports Pack, $99 | 300 | $0.33 | $1.50 |
| Business, $199 | 700 | $0.28 | $1.00 |
Dus de goedkoopste plan hangt af van hoeveel PDF’s je per maand verkoopt, inclusief overschrijding:
| PDF per maand | Goedkoopste plan | Jouw kosten | Per PDF |
|---|---|---|---|
| 10 | Indie | $5 | $0.50 |
| 40 | Starter | $19 | $0.48 |
| 100 | Pro | $59 | $0.59 |
| 160 | Pro | $59 | $0.37 |
| 300 | Reports Pack | $99 | $0.33 |
| 500 | Business | $199 | $0.40 |
| 700 | Business | $199 | $0.28 |
Overgangspunten: Starter is voordeliger dan Indie vanaf 16 PDF’s, Pro is voordeliger dan Starter vanaf 57, Reports Pack is voordeliger dan Pro vanaf 187, als je niets anders nodig hebt dan rapporten, Business is voordeliger dan Reports Pack vanaf 367. Pro en Business openen ook de rest van de API, Pack alleen rapporten en white-label.
Je marge bepaal je zelf. Bij 300 PDF’s in Reports Pack zijn je kosten $99 per maand. Per $9 per stuk is dat $2700 inkomen tegen $99 kosten, per $19 is dat $5700. We raden geen detailhandel aan, maar de aritmetiek is hetzelfde voor elke prijs: je prijs min 33 cent.
Het uitgebreide geboorterapport kost het dubbele van het standaardrapport, dus op elk plan hierboven is het dubbele de prijs per PDF: $0.66 in Reports Pack.
Twee dingen verminderen de werkelijke kosten verder. Een herhaalde aanvraag met dezelfde gegevens geeft hetzelfde bestand terug uit de antwoordcache en kost niets, dus een klant die het rapport tweemaal heeft gedownload, betaalt maar één keer. En een jaarplan is 12 maanden voor de prijs van 9, en Reports Pack kost $0.25 per PDF.
Voordat je verkoopt, open voorbeelden: elk is precies het bestand dat de API teruggeeft, en met whitelabel worden jouw naam en kleuren op de standaardplaats gezet.
Als tekst nodig is, niet als document
Section titled “Als tekst nodig is, niet als document”Vijf endpoints geven een AI-verhaal terug als JSON, zonder lay-out en zonder PDF: /v1/reports/ai/natal-narrative, /transit-narrative, /synastry-narrative, /year-ahead-narrative, /monthly-narrative. Per 250 credits. Gebruik ze als de tekst in je eigen lay-out, applicatie of nieuwsbrief past.
Het geboorterapport kan ook gemengd worden: enrich: true voegt een AI-verhaal toe aan de PDF. Op dezelfde testkaart is dit 5 pagina’s in plaats van 3.