Skip to content

Báo cáo PDF ​

Tạo các báo cáo PDF chuyên nghiệp cho lá số tử vi, hợp tinh, hồi quy mặt trời và nhiều loại khác. Module Báo cáo PDF cho phép bạn tạo các báo cáo chiêm tinh học tùy chỉnh với giải thích, lá số và bảng biểu.

Tổng quan ​

Tính năng Báo cáo PDF cung cấp:

  • Nhiều loại báo cáo: Tử vi, hợp tinh, kết hợp, quá độ, hồi quy mặt trời, hồi quy mặt trăng, tiến triển, số học và chiêm tinh học Trung Quốc
  • Mẫu có thể tùy chỉnh: Tạo và quản lý các mẫu PDF của riêng bạn với bố cục tùy chỉnh
  • Tính toán tự động: Dữ liệu chiêm tinh học được tính toán ngay lập tức và hợp nhất vào mẫu của bạn
  • Đầu ra chuyên nghiệp: Tạo PDF chất lượng cao với hỗ trợ đầu trang, chân trang, số trang và CSS tùy chỉnh

Các Loại Báo cáo Được hỗ trợ ​

Loại Báo cáoMô tả
natalPhân tích lá số sinh với vị trí hành tinh, cung nhà và góc chiếu
synastryTương hợp quan hệ giữa hai lá số
compositeLá số kết hợp cho các mối quan hệ
transitCác quá độ hành tinh hiện tại đến lá số tử vi
solar-returnLá số sinh nhật hàng năm
lunar-returnLá số hồi quy mặt trăng hàng tháng
progressionsTiến triển thứ cấp
numerologyTính toán và phân tích số học
chineseBáo cáo chiêm tinh học Trung Quốc

Tạo Báo cáo PDF ​

Tạo báo cáo PDF bằng cách cung cấp dữ liệu sinh và tùy chọn chỉ định một mẫu.

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

Tham số Yêu cầu ​

Tham sốKiểuBắt buộcMô tả
reportTypestringCóLoại báo cáo (xem các loại được hỗ trợ ở trên)
templateIdstringKhôngID mẫu cụ thể để sử dụng (sử dụng mặc định nếu không cung cấp)
subjectobjectCóDữ liệu sinh cho chủ thể chính
partnerobjectKhôngDữ liệu sinh cho đối tác (bắt buộc cho hợp tinh/kết hợp)
transitDateobjectKhôngNgày mục tiêu cho báo cáo quá độ/hồi quy

Đối tượng Subject ​

TrườngKiểuBắt buộcMô tả
namestringCóTên của người
birthDateobjectCóNgày và giờ sinh
birthDate.yearnumberCóNăm sinh
birthDate.monthnumberCóTháng sinh (1-12)
birthDate.daynumberCóNgày sinh (1-31)
birthDate.hournumberCóGiờ sinh (0-23)
birthDate.minutenumberCóPhút sinh (0-59)
birthPlaceobjectCóNơi sinh
birthPlace.namestringCóTên địa điểm
birthPlace.latitudenumberCóVĩ độ (-90 đến 90)
birthPlace.longitudenumberCóKinh độ (-180 đến 180)
birthPlace.timezonestringCóMã định danh múi giờ IANA

Phản hồi ​

Endpoint trả về tệp PDF (application/pdf) với báo cáo được tạo.

Ví dụ Báo cáo Hợp tinh ​

Tạo báo cáo hợp tinh so sánh hai lá số sinh:

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

Ví dụ Báo cáo Hồi quy Mặt Trời ​

Tạo lá số hồi quy mặt trời cho một năm cụ thể:

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

Quản lý Mẫu ​

Các mẫu xác định bố cục và nội dung của báo cáo PDF của bạn. Mỗi mẫu được liên kết với một loại báo cáo cụ thể.

Liệt kê Mẫu ​

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

Trả về cả mẫu dành riêng cho tổ chức và mẫu toàn cục (chia sẻ).

Lấy Mẫu Cụ thể ​

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

Tạo Mẫu ​

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
      }
    }
  }'

Thuộc tính Mẫu ​

Thuộc tínhKiểuMô tả
namestringTên mẫu (1-100 ký tự)
descriptionstringMô tả tùy chọn
reportTypestringLoại báo cáo mà mẫu này dành cho
editorConfigobjectCấu hình khối Editor.js
pageSettingsobjectCài đặt bố cục trang
customCssstringKiểu CSS tùy chỉnh
isDefaultbooleanĐặt làm mặc định cho loại báo cáo này
isActivebooleanLiệu mẫu có đang hoạt động

Cài đặt Trang ​

Cài đặtKiểuMô tả
formatstringKích thước trang: "A4" hoặc "Letter"
orientationstring"portrait" hoặc "landscape"
marginsobjectLề trang tính bằng mm (top, right, bottom, left)
headerobjectCấu hình đầu trang
footerobjectCấu hình chân trang
pageNumbersobjectCài đặt số trang

Cấu hình Đầu trang/Chân trang ​

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>"
  }
}

Cập nhật Mẫu ​

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"
      }
    }
  }'

Xóa Mẫu ​

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

Nhân bản Mẫu ​

Sao chép một mẫu hiện có (bao gồm cả mẫu toàn cục) vào tổ chức của bạn:

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

Đặt Mẫu Mặc định ​

Đặt một mẫu làm mặc định cho loại báo cáo của nó:

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

Xem trước Mẫu ​

Xem trước cách mẫu sẽ hiển thị với dữ liệu mẫu (trả về 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"
  }'

Giải quyết Mẫu ​

Khi tạo PDF, hệ thống giải quyết mẫu nào sẽ sử dụng theo thứ tự này:

  1. Mẫu cụ thể: Nếu templateId được cung cấp trong yêu cầu
  2. Mặc định của tổ chức: Mẫu mặc định của tổ chức cho loại báo cáo
  3. Mặc định toàn cục: Mẫu mặc định toàn cục (chia sẻ) cho loại báo cáo

Quyền hạn Bắt buộc ​

EndpointQuyền hạn
Liệt kê/Lấy mẫucontent:read
Tạo PDFcontent:read
Xem trước mẫucontent:read
Tạo mẫucontent:create
Cập nhật mẫucontent:update
Xóa mẫucontent:delete
Nhân bản mẫucontent:create
Đặt mặc địnhcontent:update

Nội dung Báo cáo ​

Các báo cáo được tạo bao gồm:

  • Thông tin chủ thể: Tên, ngày sinh, giờ và địa điểm
  • Vị trí hành tinh: Tất cả các hành tinh chính với cung, nhà và độ
  • Điểm cung nhà: Tất cả 12 điểm cung nhà với các cung
  • Góc chiếu: Các góc chiếu hành tinh với orb và giải thích
  • Giải thích: Nội dung văn bản từ CMS cho từng vị trí và góc chiếu

Nội dung thực tế phụ thuộc vào cấu hình mẫu và nội dung CMS có sẵn.

AstroAPI Documentation