Skip to content

PDF-rapporten

Genereer professionele PDF-rapporten voor geboortehoroscopen, synastrie, zonneretour en meer. De PDF-rapportenmodule stelt u in staat aanpasbare astrologierapporten te maken met interpretaties, horoscopen en tabellen.

Overzicht

De PDF-rapportenfunctie biedt:

  • Meerdere rapporttypes: Geboortehoroscoop, synastrie, composiet, transit, zonneretour, maanretour, progressies, numerologie en Chinese astrologie
  • Aanpasbare templates: Maak en beheer uw eigen PDF-templates met aangepaste lay-outs
  • Automatische berekeningen: Astrologiegegevens worden direct berekend en samengevoegd in uw template
  • Professionele output: Hoogwaardige PDF-generatie met ondersteuning voor kop- en voetteksten, paginanummers en aangepaste CSS

Ondersteunde rapporttypes

RapporttypeBeschrijving
natalGeboortehoroscoopanalyse met planetaire posities, huizen en aspecten
synastryRelatiecompatibiliteit tussen twee horoscopen
compositeGecombineerde horoscoop voor relaties
transitHuidige planetaire transits naar geboortehoroscoop
solar-returnJaarlijkse verjaardagshoroscoop
lunar-returnMaandelijkse maanretourhoroscoop
progressionsSecundaire progressies
numerologyNumerologieberekeningen en -analyse
chineseChinees astrologierapport

Een PDF-rapport genereren

Genereer een PDF-rapport door geboortegegevens op te geven en optioneel een template te specificeren.

bash
curl -X POST "https://api.astroapi.cloud/api/pdf-reports/generate" \
  -H "X-Api-Key: your-api-key" \
  -H "Content-Type: application/json" \
  -d '{
    "reportType": "natal",
    "subject": {
      "name": "John Doe",
      "birthDate": {
        "year": 1990,
        "month": 6,
        "day": 15,
        "hour": 14,
        "minute": 30
      },
      "birthPlace": {
        "name": "London, UK",
        "latitude": 51.5074,
        "longitude": -0.1278,
        "timezone": "Europe/London"
      }
    }
  }' \
  --output natal-report.pdf

Verzoekparameters

ParameterTypeVerplichtBeschrijving
reportTypestringJaType rapport (zie ondersteunde types hierboven)
templateIdstringNeeSpecifiek template-ID om te gebruiken (gebruikt standaard indien niet opgegeven)
subjectobjectJaGeboortegegevens van het hoofdonderwerp
partnerobjectNeeGeboortegegevens van partner (verplicht voor synastrie/composiet)
transitDateobjectNeeDoeldatum voor transit-/retourrapporten

Subject-object

VeldTypeVerplichtBeschrijving
namestringJaNaam van de persoon
birthDateobjectJaGeboortedatum en -tijd
birthDate.yearnumberJaGeboortejaar
birthDate.monthnumberJaGeboortemaand (1-12)
birthDate.daynumberJaGeboortedag (1-31)
birthDate.hournumberJaGeboorteuur (0-23)
birthDate.minutenumberJaGeboorteminuut (0-59)
birthPlaceobjectJaGeboortelocatie
birthPlace.namestringJaLocatienaam
birthPlace.latitudenumberJaBreedtegraad (-90 tot 90)
birthPlace.longitudenumberJaLengtegraad (-180 tot 180)
birthPlace.timezonestringJaIANA tijdzone-identifier

Response

Het endpoint retourneert een PDF-bestand (application/pdf) met het gegenereerde rapport.

Synastrie-rapportvoorbeeld

Genereer een synastrierapport dat twee geboortehoroscopen vergelijkt:

bash
curl -X POST "https://api.astroapi.cloud/api/pdf-reports/generate" \
  -H "X-Api-Key: your-api-key" \
  -H "Content-Type: application/json" \
  -d '{
    "reportType": "synastry",
    "subject": {
      "name": "Person A",
      "birthDate": {
        "year": 1990,
        "month": 6,
        "day": 15,
        "hour": 14,
        "minute": 30
      },
      "birthPlace": {
        "name": "London, UK",
        "latitude": 51.5074,
        "longitude": -0.1278,
        "timezone": "Europe/London"
      }
    },
    "partner": {
      "name": "Person B",
      "birthDate": {
        "year": 1988,
        "month": 3,
        "day": 22,
        "hour": 9,
        "minute": 15
      },
      "birthPlace": {
        "name": "Paris, France",
        "latitude": 48.8566,
        "longitude": 2.3522,
        "timezone": "Europe/Paris"
      }
    }
  }' \
  --output synastry-report.pdf

Zonneretour-rapportvoorbeeld

Genereer een zonneretourhoroscoop voor een specifiek jaar:

bash
curl -X POST "https://api.astroapi.cloud/api/pdf-reports/generate" \
  -H "X-Api-Key: your-api-key" \
  -H "Content-Type: application/json" \
  -d '{
    "reportType": "solar-return",
    "subject": {
      "name": "John Doe",
      "birthDate": {
        "year": 1990,
        "month": 6,
        "day": 15,
        "hour": 14,
        "minute": 30
      },
      "birthPlace": {
        "name": "London, UK",
        "latitude": 51.5074,
        "longitude": -0.1278,
        "timezone": "Europe/London"
      }
    },
    "transitDate": {
      "year": 2025,
      "month": 6,
      "day": 15,
      "hour": 0,
      "minute": 0
    }
  }' \
  --output solar-return-2025.pdf

Templatebeheer

Templates definiëren de lay-out en inhoud van uw PDF-rapporten. Elke template is gekoppeld aan een specifiek rapporttype.

Templates opvragen

bash
curl -X GET "https://api.astroapi.cloud/api/pdf-reports/templates" \
  -H "X-Api-Key: your-api-key"

Retourneert zowel organisatiespecifieke templates als globale (gedeelde) templates.

Een specifiek template ophalen

bash
curl -X GET "https://api.astroapi.cloud/api/pdf-reports/templates/{templateId}" \
  -H "X-Api-Key: your-api-key"

Een template aanmaken

bash
curl -X POST "https://api.astroapi.cloud/api/pdf-reports/templates" \
  -H "X-Api-Key: your-api-key" \
  -H "Content-Type: application/vnd.api+json" \
  -d '{
    "data": {
      "type": "templates",
      "attributes": {
        "name": "My Natal Report Template",
        "description": "Custom natal chart report",
        "reportType": "natal",
        "editorConfig": {},
        "pageSettings": {
          "format": "A4",
          "orientation": "portrait",
          "margins": {
            "top": 20,
            "right": 20,
            "bottom": 20,
            "left": 20
          }
        },
        "isDefault": true
      }
    }
  }'

Template-attributen

AttribuutTypeBeschrijving
namestringTemplatenaam (1-100 tekens)
descriptionstringOptionele beschrijving
reportTypestringRapporttype waarvoor dit template is
editorConfigobjectEditor.js blokconfiguratie
pageSettingsobjectPagina-indelingsinstellingen
customCssstringAangepaste CSS-stijlen
isDefaultbooleanInstellen als standaard voor dit rapporttype
isActivebooleanOf het template actief is

Pagina-instellingen

InstellingTypeBeschrijving
formatstringPaginaformaat: "A4" of "Letter"
orientationstring"portrait" of "landscape"
marginsobjectPaginamarges in mm (top, right, bottom, left)
headerobjectKoptekstconfiguratie
footerobjectVoettekstconfiguratie
pageNumbersobjectPaginanummerinstellingen

Kop-/voettekstconfiguratie

json
{
  "header": {
    "enabled": true,
    "height": 15,
    "content": "My Astrology Report"
  },
  "footer": {
    "enabled": true,
    "height": 15,
    "content": "Generated by AstroAPI"
  },
  "pageNumbers": {
    "enabled": true,
    "position": "bottom-center",
    "format": "Page <span class=\"pageNumber\"></span> of <span class=\"totalPages\"></span>"
  }
}

Een template bijwerken

bash
curl -X PATCH "https://api.astroapi.cloud/api/pdf-reports/templates/{templateId}" \
  -H "X-Api-Key: your-api-key" \
  -H "Content-Type: application/vnd.api+json" \
  -d '{
    "data": {
      "type": "templates",
      "attributes": {
        "name": "Updated Template Name"
      }
    }
  }'

Een template verwijderen

bash
curl -X DELETE "https://api.astroapi.cloud/api/pdf-reports/templates/{templateId}" \
  -H "X-Api-Key: your-api-key"

Een template dupliceren

Kopieer een bestaand template (inclusief globale templates) naar uw organisatie:

bash
curl -X POST "https://api.astroapi.cloud/api/pdf-reports/templates/{templateId}/duplicate" \
  -H "X-Api-Key: your-api-key"

Standaardtemplate instellen

Stel een template in als standaard voor het bijbehorende rapporttype:

bash
curl -X POST "https://api.astroapi.cloud/api/pdf-reports/templates/{templateId}/set-default" \
  -H "X-Api-Key: your-api-key"

Een template voorbekijken

Bekijk hoe een template wordt weergegeven met voorbeeldgegevens (retourneert HTML):

bash
curl -X POST "https://api.astroapi.cloud/api/pdf-reports/preview" \
  -H "X-Api-Key: your-api-key" \
  -H "Content-Type: application/json" \
  -d '{
    "templateId": "your-template-id"
  }'

Template-resolutie

Bij het genereren van een PDF bepaalt het systeem welk template wordt gebruikt in deze volgorde:

  1. Specifiek template: Als templateId is opgegeven in het verzoek
  2. Organisatiestandaard: Het standaardtemplate van de organisatie voor het rapporttype
  3. Globale standaard: Een globaal (gedeeld) standaardtemplate voor het rapporttype

Vereiste permissies

EndpointPermissie
Templates opvragen/ophalencontent:read
PDF genererencontent:read
Template voorbekijkencontent:read
Template aanmakencontent:create
Template bijwerkencontent:update
Template verwijderencontent:delete
Template duplicerencontent:create
Standaard instellencontent:update

Rapportinhoud

Gegenereerde rapporten bevatten:

  • Onderwerpsinformatie: Naam, geboortedatum, -tijd en -locatie
  • Planetaire posities: Alle grote planeten met teken, huis en graad
  • Huiscuspen: Alle 12 huiscuspen met tekens
  • Aspecten: Planetaire aspecten met orbs en interpretaties
  • Interpretaties: CMS-afkomstige tekstinhoud voor elke plaatsing en elk aspect

De daadwerkelijke inhoud is afhankelijk van de templateconfiguratie en beschikbare CMS-content.

AstroAPI Documentation