Informes PDF
Generasd informes PDF profesionales para cartas natales, sinastría, retornos solares y más. El módulo de Informes PDF os permite crear informes astrológicos personalizables con interpretaciones, cartas y tablas.
Descripción General
La funcionalidad de Informes PDF proporciona:
- Múltiples tipos de informes: Natal, sinastría, compuesto, tránsito, retorno solar, retorno lunar, progresiones, numerología y astrología china
- Plantillas personalizables: Cread y gestionad vuestras propias plantillas PDF con diseños personalizados
- Cálculos automáticos: Los datos astrológicos se calculan al momento y se combinan con vuestra plantilla
- Resultado profesional: Generación de PDF de alta calidad con soporte para encabezados, pies de página, números de página y CSS personalizado
Tipos de Informe Admitidos
| Tipo de Informe | Descripción |
|---|---|
natal | Análisis de la carta natal con posiciones planetarias, casas y aspectos |
synastry | Compatibilidad en la relación entre dos cartas |
composite | Carta combinada para relaciones |
transit | Tránsitos planetarios actuales a la carta natal |
solar-return | Carta anual de cumpleaños |
lunar-return | Carta de retorno lunar mensual |
progressions | Progresiones secundarias |
numerology | Cálculos y análisis de numerología |
chinese | Informe de astrología china |
Generar un Informe PDF
Generasd un informe PDF proporcionando datos de nacimiento y, opcionalmente, especificando una plantilla.
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.pdfParámetros de la Solicitud
| Parámetro | Tipo | Obligatorio | Descripción |
|---|---|---|---|
reportType | string | Sí | Tipo de informe (ver tipos admitidos más arriba) |
templateId | string | No | ID de plantilla específica a usar (usa la predeterminada si no se proporciona) |
subject | object | Sí | Datos de nacimiento del sujeto principal |
partner | object | No | Datos de nacimiento del compañero (requerido para sinastría/compuesto) |
transitDate | object | No | Fecha objetivo para informes de tránsito/retorno |
Objeto Subject
| Campo | Tipo | Obligatorio | Descripción |
|---|---|---|---|
name | string | Sí | Nombre de la persona |
birthDate | object | Sí | Fecha y hora de nacimiento |
birthDate.year | number | Sí | Año de nacimiento |
birthDate.month | number | Sí | Mes de nacimiento (1-12) |
birthDate.day | number | Sí | Día de nacimiento (1-31) |
birthDate.hour | number | Sí | Hora de nacimiento (0-23) |
birthDate.minute | number | Sí | Minuto de nacimiento (0-59) |
birthPlace | object | Sí | Lugar de nacimiento |
birthPlace.name | string | Sí | Nombre del lugar |
birthPlace.latitude | number | Sí | Latitud (-90 a 90) |
birthPlace.longitude | number | Sí | Longitud (-180 a 180) |
birthPlace.timezone | string | Sí | Identificador de zona horaria IANA |
Respuesta
El endpoint devuelve un archivo PDF (application/pdf) con el informe generado.
Ejemplo de Informe de Sinastría
Generasd un informe de sinastría comparando dos cartas natales:
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.pdfEjemplo de Informe de Retorno Solar
Generasd una carta de retorno solar para un año específico:
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.pdfGestión de Plantillas
Las plantillas definen el diseño y el contenido de vuestros informes PDF. Cada plantilla está asociada a un tipo de informe específico.
Listar Plantillas
curl -X GET "https://api.astroapi.cloud/api/pdf-reports/templates" \
-H "X-Api-Key: your-api-key"Devuelve tanto las plantillas específicas de la organización como las plantillas globales (compartidas).
Obtener una Plantilla Específica
curl -X GET "https://api.astroapi.cloud/api/pdf-reports/templates/{templateId}" \
-H "X-Api-Key: your-api-key"Crear una Plantilla
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
}
}
}'Atributos de la Plantilla
| Atributo | Tipo | Descripción |
|---|---|---|
name | string | Nombre de la plantilla (1-100 caracteres) |
description | string | Descripción opcional |
reportType | string | Tipo de informe para el que es esta plantilla |
editorConfig | object | Configuración de bloques de Editor.js |
pageSettings | object | Configuración del diseño de página |
customCss | string | Estilos CSS personalizados |
isDefault | boolean | Establecer como predeterminada para este tipo de informe |
isActive | boolean | Si la plantilla está activa |
Configuración de Página
| Configuración | Tipo | Descripción |
|---|---|---|
format | string | Tamaño de página: "A4" o "Letter" |
orientation | string | "portrait" o "landscape" |
margins | object | Márgenes de página en mm (superior, derecho, inferior, izquierdo) |
header | object | Configuración del encabezado |
footer | object | Configuración del pie de página |
pageNumbers | object | Configuración de la numeración de páginas |
Configuración de Encabezado/Pie de Página
{
"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>"
}
}Actualizar una Plantilla
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"
}
}
}'Eliminar una Plantilla
curl -X DELETE "https://api.astroapi.cloud/api/pdf-reports/templates/{templateId}" \
-H "X-Api-Key: your-api-key"Duplicar una Plantilla
Copiad una plantilla existente (incluidas las plantillas globales) a vuestra organización:
curl -X POST "https://api.astroapi.cloud/api/pdf-reports/templates/{templateId}/duplicate" \
-H "X-Api-Key: your-api-key"Establecer Plantilla Predeterminada
Estableced una plantilla como predeterminada para su tipo de informe:
curl -X POST "https://api.astroapi.cloud/api/pdf-reports/templates/{templateId}/set-default" \
-H "X-Api-Key: your-api-key"Vista Previa de una Plantilla
Previsualizada cómo se renderizará una plantilla con datos de ejemplo (devuelve HTML):
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"
}'Resolución de Plantillas
Al generar un PDF, el sistema resuelve qué plantilla utilizar en este orden:
- Plantilla específica: Si se proporciona
templateIden la solicitud - Predeterminada de la organización: La plantilla predeterminada de la organización para el tipo de informe
- Predeterminada global: Una plantilla global (compartida) predeterminada para el tipo de informe
Permisos Requeridos
| Endpoint | Permiso |
|---|---|
| Listar/Obtener plantillas | content:read |
| Generar PDF | content:read |
| Vista previa de plantilla | content:read |
| Crear plantilla | content:create |
| Actualizar plantilla | content:update |
| Eliminar plantilla | content:delete |
| Duplicar plantilla | content:create |
| Establecer predeterminada | content:update |
Contenido del Informe
Los informes generados incluyen:
- Información del sujeto: Nombre, fecha de nacimiento, hora y lugar
- Posiciones planetarias: Todos los planetas mayores con signo, casa y grado
- Cúspides de casas: Las 12 cúspides de casas con sus signos
- Aspectos: Aspectos planetarios con orbes e interpretaciones
- Interpretaciones: Textos del CMS para cada posición y aspecto
El contenido real depende de la configuración de la plantilla y del contenido CMS disponible.