Almanac day view: lunar date, day/month/year can chi, solar term, auspicious hours.
calendar.dayInfo · 1 call(s) per request
Full almanac day view: lunar date, day/month/year stem-branch (can chi), first hour of the day, solar term, auspicious hours. ⚠️ Two conventions coexist here on purpose: canChi follows the LUNAR calendar (year turns at Tết, month at lunar day 1), while almanac.dayOfficer/dutyGod follow the SOLAR TERM (the twelve day officers are term-based). Both are declared in meta.conventions. canChi is therefore NOT a bazi (bát tự) chart — see ganzhi.calendarPillars for the same caveat. Input: 'date' (YYYY-MM-DD) OR day+month+year, never both.
- REST
GET /api/v1/calendar/day·POST /api/v1/calendar/day- MCP tool
calendar_dayInfo
Parameters
GET takes parameters on the query string; POST takes the same parameters as a JSON body. An array over GET is comma-separated.
| Parameter | Type | Required | Description |
|---|---|---|---|
| day | integer | — | Solar day (1-31). FORM B — needs all of day+month+year; or omit the whole set and use 'date'. |
| month | integer | — | Solar month (1-12). With day+year (form B). |
| year | integer | — | Solar year (1-9999). With day+month (form B). |
| date | string | — | Solar date as ISO 'YYYY-MM-DD' (e.g. 2026-07-01). FORM A for entering a date — use this field OR the numeric day+month+year set, never both (sending both → 400). |
| tz | number = 7 | — | Timezone (UTC offset). Default 7 = Vietnam (UTC+7). |
| lang | 'vi' | 'en' | 'zh' | 'all' = "vi" | — | Language of the labels in the response. vi (default) · en · zh (with pinyin) · all (every available language). A label missing the requested language falls back to vi; meta.language.available reports which languages this response actually carries. Error messages are unaffected. |
| format | 'json' | 'text-tree' = "json" | — | Output format: json (default) or text-tree (an indented outline, easy for a person or an LLM to read). |
Examples
curl -H "Authorization: Bearer <key>" \
"https://naturaos.mza.vn/api/v1/calendar/day?date=2026-09-06&lang=en"
curl -X POST "https://naturaos.mza.vn/api/v1/calendar/day" \
-H "Authorization: Bearer <key>" \
-H "content-type: application/json" \
-d '{"date":"2026-09-06","lang":"en"}'
const res = await fetch("https://naturaos.mza.vn/api/v1/calendar/day", {
method: "POST",
headers: { authorization: "Bearer <key>", "content-type": "application/json" },
body: JSON.stringify({
"date": "2026-09-06",
"lang": "en"
}),
});
const { ok, data, meta } = await res.json();
Response
The engine's real response to the input above — generated when the page is rendered, not a pasted sample.
{
"ok": true,
"data": {
"solar": {
"day": 6,
"month": 9,
"year": 2026,
"weekday": {
"vi": "Chủ nhật",
"en": "Sunday"
}
},
"lunar": {
"day": 25,
"month": 7,
"year": 2026,
"leap": false
},
"canChi": {
"day": {
"code": "Gui-Wei",
"stem": "Gui",
"branch": "Wei",
"label": {
"vi": "Quý Mùi"
}
},
"month": {
"code": "Bing-Shen",
"stem": "Bing",
"branch": "Shen",
"label": {
"vi": "Bính Thân"
}
},
"year": {
"code": "Bing-Wu",
"stem": "Bing",
"branch": "Wu",
"label": {
"vi": "Bính Ngọ"
}
}
},
"firstHour": {
"code": "Ren-Zi",
"stem": "Ren",
"branch": "Zi",
"label": {
"vi": "Nhâm Tý"
}
},
"solarTerm": {
"vi": "Xử thử"
},
"auspiciousHours": [
{
"code": "Yin",
"label": {
"vi": "Dần",
"pinyin": "Yín",
"zh": "寅"
},
"range": "3-5",
"startHour": 3,
"endHour": 5
},
{
"code": "Mao",
"label": {
"vi": "Mão",
"pinyin": "Mǎo",
"zh": "卯"
},
"range": "5-7",
"startHour": 5,
"endHour": 7
},
{
"code": "Si",
"label": {
"vi": "Tỵ",
"pinyin": "Sì",
"zh": "巳"
},
"range": "9-11",
"startHour": 9,
"endHour": 11
},
{
"code": "Shen",
"label": {
"vi": "Thân",
"pinyin": "Shēn",
"zh": "申"
},
"range": "15-17",
"startHour": 15,
"endHour": 17
},
{
"code": "Xu",
"label": {
"vi": "Tuất",
"pinyin": "Xū",
"zh": "戌"
},
"range": "19-21",
"startHour": 19,
"endHour": 21
},
{
"code": "Hai",
"label": {
"vi": "Hợi",
"pinyin": "Hài",
"zh": "亥"
},
"range": "21-23",
"startHour": 21,
"endHour": 23
}
],
"almanac": {
"nayin": {
"code": "YangLiuMu",
"element": "wood",
"label": {
"vi": "Dương Liễu Mộc",
"zh": "楊柳木",
"pinyin": "Yáng Liǔ Mù"
}
},
"dayOfficer": {
"code": "Bi",
"label": {
"vi": "Bế",
"zh": "閉",
"pinyin": "Bì"
}
},
"dutyGod": {
"code": "YuTang",
"type": "hoang",
"auspicious": true,
"label": {
"vi": "Ngọc Đường",
"zh": "玉堂",
"pinyin": "Yù Táng"
}
}
},
"jd": 2461290
},
"meta": {
"disclaimer": "For academic reference and natural philosophical contemplation only. Do not rely 100% blindly; always observe, contemplate, and verify through your own life experience.",
"motto": "Man conforms to Earth • Earth conforms to Heaven • Heaven conforms to the Tao • The Tao conforms to Nature",
"engine": "calendar@0.1.1",
"conventions": {
"pillarBasis": "lunar_calendar",
"yearBoundary": "lunar_new_year",
"monthBoundary": "lunar_first",
"almanacBasis": "solar_term",
"ziHourBoundary": "midnight",
"calendarEngine": "ho_ngoc_duc"
}
}
}
Natural wisdom is only a prompt — the decision, and what follows from it, are your own doing.