lang query, string enum- Report language (BCP 47): the labels, headings and readings are written in it. Supported: en, tr, de, es, hi, pt, fr, ru. Defaults to en. One of
en, tr, de, es, hi, pt, fr, ru. Default en. latitude number- Birth latitude in decimal degrees. Accepted for consistency with the other birth-data endpoints and does not affect any part of a BaZi chart. Defaults to 0.
longitude number- Birth longitude in decimal degrees. Positive is East, negative is West. Required when hourClock is "local-mean" or "solar", which shift the hour branch to the sun over the birth place; omitting it in either case returns 400. Ignored when hourClock is "clock".
dayBoundary string enum- Which instant starts the sexagenary DAY, which only matters for a birth between 23:00 and 23:59. "midnight" is the classical position of the Ming compendium San Ming Tong Hui: the day turns at 00:00 and 23:00 to 23:59 is the late zi hour of the day that is ending, so the hour stem is taken from that day. "early-zi" turns the whole day at 23:00, the practice in Hong Kong, Taiwan and much of South East Asia. "split-zi" is the compromise most software implements and the default here: the day still turns at 00:00, but the hour stem is taken from the next day. The three give three different answers for a late-evening birth and identical answers for every other birth. One of
split-zi, midnight, early-zi. yearBoundary string enum- Which instant starts the sexagenary YEAR. "li-chun" is Beginning of Spring, around 4 February, and is the classical rule every BaZi text uses, so it is the default on this endpoint. "lunar-new-year" is the folk rule people mean when they say which animal they are, and it falls between late January and late February. The two disagree for any birth in the weeks between them: 14 February 2026 is a Wood Snake year under lunar-new-year and a Fire Horse year under li-chun. One of
li-chun, lunar-new-year. hourClock string enum- Which clock the day boundary and the hour branch are read from, so a correction that carries a birth across midnight moves the day pillar with the hour. "clock" is civil time exactly as a birth certificate records it, which is what most calculators use and the default here. "local-mean" shifts to the mean sun over the birth longitude, a correction of up to 59 minutes at the edge of a wide time zone. "solar" adds the equation of time on top of that, up to a further 16 minutes. Both non-civil options need "longitude" in the request and return 400 without it. One of
clock, local-mean, solar. format string enum- Output format: pdf (a print-ready PDF, base64 in the pdf field), html (one self-contained HTML document in the html field) or markdown (CommonMark in the markdown field). One of
pdf, html, markdown. branding object- White-label branding for this report. Every field is optional and nothing is stored: send it with each request.
branding.name string- Business or practitioner name printed on the cover and in the running header of every page.
branding.logo string (uri)- HTTPS URL of a PNG, JPEG, WebP or SVG logo under 1 MB, printed on the cover. It is fetched for this report only and never stored.
branding.footer string- Line printed at the foot of every page, such as a disclaimer or a booking note.
branding.website string (uri)- Website printed on the cover.
branding.email string (email)- Contact email printed on the cover.
branding.colors object- Brand colours. Each one left out keeps the theme colour.
branding.colors.primary string- Headings and table headers, as a six digit hex colour.
branding.colors.accent string- Rules and highlights, as a six digit hex colour.
branding.font string enum- Font pair for headings and text, the same pairs the RoxyAPI UI components take. Left out, the theme typeface is used. One of
fraunces-jost, jost, geist, system. branding.theme string enum- Design preset shared with the RoxyAPI UI components: colours, typefaces and spacing. Left out, the neutral default is used. One of
celeste, eucalyptus, kiln, moonlit, practitioner. page object- Page layout of the PDF.
page.size string enum- Paper size of the PDF. Ignored by html and markdown. One of
A4, Letter. readings boolean- Whether the report carries its written readings. false keeps the charts, tables and key figures and leaves out every interpretation, for a chart-only report at the same cost.