{
  "openapi": "3.1.0",
  "info": {
    "title": "香港紀事館 / Hong Kong Story — machine-readable endpoints",
    "version": "1.0.0",
    "summary": "A sourced knowledge base of Hong Kong",
    "description": "Hong Kong Story records foundational facts about Hong Kong — geography, population, government, a dated history timeline, economy, labour, transport, the 18 districts, country parks, careers, and public children’s play. Every statistic names its official source and reference date. History milestones follow the Yearbook, DOJ and LegCo; occupations need official entry rules.\n\nEvery endpoint here is a static JSON file built from sourced data. There is no query language and no authentication.\nCite a figure only together with the canonical page URL and the reference date (asOf) that the JSON carries.\nEditorial rule and bilingual citation format: see externalDocs (/llms.txt).\n\nSuggested fetch order (use the first that fits): getCuratedQa https://hongkongstory.org/api/v1/qa.json → getApiIndex https://hongkongstory.org/api/v1/index.json → getFacts https://hongkongstory.org/api/v1/facts.json → getSearchCatalog https://hongkongstory.org/api/v1/catalog.json → getAtomFeed https://hongkongstory.org/feed.xml → getLlmsFullTxt https://hongkongstory.org/llms-full.txt",
    "contact": {
      "name": "Day Dream Production HK",
      "url": "https://daydreamprohk.ai"
    }
  },
  "x-agent-contract": {
    "llmsTxt": "https://hongkongstory.org/llms.txt",
    "robotsTxt": "https://hongkongstory.org/robots.txt",
    "startOrder": [
      {
        "operationId": "getCuratedQa",
        "url": "https://hongkongstory.org/api/v1/qa.json",
        "useWhenZh": "直接事實問題（幾多人、幾多個假期、邊年發生咩事）：中英一句直答，附 fact ID 同正規網址。",
        "useWhenEn": "A direct factual question (population, holidays, what happened in a year): one-line bilingual answers with fact IDs and canonical URLs."
      },
      {
        "operationId": "getApiIndex",
        "url": "https://hongkongstory.org/api/v1/index.json",
        "useWhenZh": "唔知應該抓邊個檔：列齊全部端點同即時數量，亦帶本站嘅取用合約。",
        "useWhenEn": "When you do not know which file to fetch: every endpoint with live counts, plus this site’s usage contract."
      },
      {
        "operationId": "getFacts",
        "url": "https://hongkongstory.org/api/v1/facts.json",
        "useWhenZh": "引用任何數字之前：核對值、來源 ID 同統計時點（asOf）。",
        "useWhenEn": "Before quoting any figure: check the value, its source ID and its reference date (asOf)."
      },
      {
        "operationId": "getSearchCatalog",
        "url": "https://hongkongstory.org/api/v1/catalog.json",
        "useWhenZh": "要知站內有冇某個題目、地區、職業或者場地，然後才決定抓邊頁。",
        "useWhenEn": "To find out whether a topic, district, occupation or venue exists on this site at all, before fetching a page."
      },
      {
        "operationId": "getAtomFeed",
        "url": "https://hongkongstory.org/feed.xml",
        "useWhenZh": "追更新（官方新聞標題＋最新已核對數字）：唔使逐頁重爬。",
        "useWhenEn": "To follow updates (official press-release headlines plus the latest sourced figures) without re-crawling every page."
      },
      {
        "operationId": "getLlmsFullTxt",
        "url": "https://hongkongstory.org/llms-full.txt",
        "useWhenZh": "要一次過取全部知識頁做檢索索引（檔案大，唔適合單次問答）。",
        "useWhenEn": "To pull the whole knowledge corpus into a retrieval index in one request (large file; not for one-off questions)."
      }
    ],
    "citation": {
      "formatZh": "香港紀事館 / Hong Kong Story，〈頁面標題〉，〈頁面正規網址〉，資料時點 <asOf>（查閱日期 <accessed>）",
      "formatEn": "Hong Kong Story, “<page title>”, <canonical page URL>, data as at <asOf> (retrieved <accessed>)",
      "ruleZh": "引用任何數字，都必須同時帶〈頁面正規網址〉同〈資料時點 asOf〉；冇時點嘅數字，讀者無法判斷佢幾時成立。",
      "ruleEn": "Any quoted figure must carry both the canonical page URL and the reference date (asOf); without the reference date the figure cannot be checked.",
      "ruleZh2": "答問時要講明數字屬邊一套口徑（例如人口有「年中估計」同「陸上非住院人口」兩套）；兩套口徑唔可以相加，亦唔可以互換。",
      "ruleEn2": "State which official base a measure belongs to (population alone has a mid-year estimate and a land-based non-institutional series); never add the two bases together and never convert between them."
    }
  },
  "servers": [
    {
      "url": "https://hongkongstory.org",
      "description": "Production"
    }
  ],
  "externalDocs": {
    "url": "https://hongkongstory.org/llms.txt",
    "description": "LLM index: editorial rule, citation format and the prose list of every collection"
  },
  "tags": [
    {
      "name": "answer",
      "description": "Direct answers — try these first / 直接答問題：先用呢組"
    },
    {
      "name": "data",
      "description": "Structured datasets / 結構化數據集"
    },
    {
      "name": "archive",
      "description": "Hong Kong Chronicles archive / 《香港志》志錄"
    },
    {
      "name": "directory",
      "description": "Directories and indexes / 目錄／索引"
    }
  ],
  "paths": {
    "/api/v1/qa.json": {
      "get": {
        "operationId": "getCuratedQa",
        "tags": [
          "answer"
        ],
        "summary": "210 curated most-searched questions with bilingual one-line answers, fact IDs and canonical URLs — use this first for direct factual questions",
        "description": "210 條已核對問題，中英一句直答，附 fact ID 同正規網址；直接事實問題先用呢個。\n\n常問問題（直答） / Curated Q&A",
        "responses": {
          "200": {
            "description": "OK — JSON body as documented on the canonical page for this collection.",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/catalog.json": {
      "get": {
        "operationId": "getSearchCatalog",
        "tags": [
          "answer"
        ],
        "summary": "Searchable facts, topics, districts, careers, people, schools and play venues — prefer this over guessing. Use it to find the canonical href, then open that page (every entry now points at its own deep page, not a list page). Optional `?kind=fact,directory` returns only those kinds (fact alone is ~640 KB) and `?slim=1` drops the long snippets (~36% of the full size). An invalid kind returns HTTP 400 with the list of real kinds rather than an empty result. The Chronicle archive full text is not included here",
        "description": "可供檢索嘅事實、專題、十八區、職業、人物、學校同遊樂場地；用嚟搵正規網址再開頁，唔好靠估（每條都指去自己嘅深層頁，唔係列表頁）。可選 `?kind=fact,directory` 只取指定種類（只要 fact 約 640 KB），`?slim=1` 略去長 snippet（約全量 36%）。無效 kind 會回 HTTP 400 並列出真實可用值，唔會回空結果。志錄全文唔包括在內。\n\n檢索目錄 / Search catalog",
        "responses": {
          "200": {
            "description": "OK — JSON body as documented on the canonical page for this collection.",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/search.json": {
      "get": {
        "operationId": "searchEntries",
        "tags": [
          "answer"
        ],
        "summary": "Keyword search over the same curated index as /ask, one request per query (`?q=…&limit=1-50`) — use this instead of downloading the whole catalog when you only need one lookup. Every fact hit carries its own canonical /facts/<id> URL and asOf. Results are matching pages, not generated answers",
        "description": "同 /ask 同一個已核對索引嘅關鍵詞檢索，一次查詢一個回應（`?q=…&limit=1-50`）；只想查一樣嘢就唔使下載成個目錄。每條 fact 命中都附自己嘅正規網址 `/facts/<id>` 同 asOf。結果係「邊一頁有呢啲字」，唔係生成答案。\n\n一次查詢一個回應 / One-query search",
        "responses": {
          "200": {
            "description": "OK — JSON body as documented on the canonical page for this collection.",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/facts.json": {
      "get": {
        "operationId": "getFacts",
        "tags": [
          "data"
        ],
        "summary": "924 statistics with source IDs and as-of dates; every figure resolves to a registered official source",
        "description": "924 條統計數字，每條附來源 ID 同統計時點；所有數字都可以追返已登記官方來源。\n\n統計數字 / Statistics",
        "responses": {
          "200": {
            "description": "OK — JSON body as documented on the canonical page for this collection.",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/definitions.json": {
      "get": {
        "operationId": "getMetricDefinitions",
        "tags": [
          "data"
        ],
        "summary": "33 metric entries where one Hong Kong measure has more than one official base. Check this before quoting or doing arithmetic: each entry gives the fact IDs, each side's scope, what is excluded and the source. Values are derived from /api/v1/facts.json and never restated",
        "description": "33 組口徑對照：同一個名嘅官方數字有兩套口徑時，逐組列明 fact ID、兩邊範圍、唔包括咩同來源；數值一律由 /api/v1/facts.json 派生，唔會另寫一份。\n\n口徑對照（定義） / Metric definitions",
        "responses": {
          "200": {
            "description": "OK — JSON body as documented on the canonical page for this collection.",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/curriculum.json": {
      "get": {
        "operationId": "listCurriculumGuides",
        "tags": [
          "data"
        ],
        "summary": "18 official Hong Kong primary and secondary curriculum documents, each linked to a registered source: subject, stage, document type, publication year and the official PDF. The endpoint registers documents only — it does not extract units, lesson time or assessment weighting, and never infers an implementation year the document does not state",
        "description": "18 份已核實嘅香港中小學課程文件，逐份列科目、階段、文件類型、出版年同官方 PDF，並指回已登記來源；只登記文件本身，唔會抽取內文單元、課時或評估比重，亦唔會推算文件冇寫嘅實施學年。\n\n課程文件登記冊 / Curriculum guides registry",
        "responses": {
          "200": {
            "description": "OK — JSON body as documented on the canonical page for this collection.",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/health.json": {
      "get": {
        "operationId": "getHealthcare",
        "tags": [
          "data"
        ],
        "summary": "30 hospitals and clinics listed one by one across 7 Hospital Authority clusters, with derived counts by cluster, kind and district; health outcome, workforce, capacity and finance facts with reference date and source; the calibre entries where one measure has two official bases; and the gaps the site does not cover. The directory is a verified subset, not a territory-wide total, and its bed sum is never an official bed figure",
        "description": "已逐間收錄 30 間醫院／診所（7 個醫院聯網），按聯網／類別／地區派生統計；另列健康結果、醫護人力、容量同財務四組 fact（附時點同來源）、同一指標兩套官方口徑嘅對照，同本站未收錄嘅缺口。名錄係已核實嘅一部分，唔係全港總數，床位合計亦唔係官方病床數。\n\n醫療 / Healthcare",
        "responses": {
          "200": {
            "description": "OK — JSON body as documented on the canonical page for this collection.",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/districts.json": {
      "get": {
        "operationId": "getDistricts",
        "tags": [
          "data"
        ],
        "summary": "18 districts with 2025 official statistics (land-based non-institutional population, not the mid-year estimate)",
        "description": "18 區嘅 2025 年官方統計（陸上非住院人口口徑，唔係年中人口估計）。\n\n十八區 / The 18 districts",
        "responses": {
          "200": {
            "description": "OK — JSON body as documented on the canonical page for this collection.",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/stroller.json": {
      "get": {
        "operationId": "getStrollerAccessibility",
        "tags": [
          "data"
        ],
        "summary": "Pram accessibility scores for 4653 Hong Kong restaurants, derived from official FEHD addresses only. Every value is a computed estimate, not an on-site measurement: aisle width, actual lift dimensions and high-chair counts are NOT known. Callers must repeat that caveat. Filter by district, verdict, alfresco seating or floor.",
        "description": "4653 間香港餐廳嘅 BB 車可達性推算，只由食環署官方地址派生。全部係推算，唔係現場實測：走道闊度、lift 實際尺寸、BB 椅數量一概未知，取用者必須照樣講明。可按區、判定、露天座位、樓層篩選。\n\nBB 車可達性（餐廳） / Pram accessibility (restaurants)",
        "responses": {
          "200": {
            "description": "OK — JSON body as documented on the canonical page for this collection.",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/barrier-free.json": {
      "get": {
        "operationId": "getBarrierFreeVenues",
        "tags": [
          "data"
        ],
        "summary": "119 HAD community halls and centres with individually verified barrier-free fields (entrance, lift, toilet, tactile guide path). This is official checked data, not inference. It covers only HAD venues: absence from the list does not mean facilities are missing.",
        "description": "119 個民政事務總署社區會堂／社區中心，逐項核實嘅無障礙設施（出入口、升降機、洗手間、觸覺引路帶）。呢份係官方逐項核實，唔係推算；但只覆蓋民政署場地，唔喺名單唔代表冇設施。\n\n無障礙設施（民政署場地） / Barrier-free facilities (HAD venues)",
        "responses": {
          "200": {
            "description": "OK — JSON body as documented on the canonical page for this collection.",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/country-parks.json": {
      "get": {
        "operationId": "getCountryParks",
        "tags": [
          "data"
        ],
        "summary": "25 country parks and 22 special areas with AFCD hectares; special areas inside parks are already counted in the park total",
        "description": "25 個郊野公園同 22 個特別地區，附漁護署公頃數；公園內嘅特別地區已計入公園總數。\n\n郊野公園 / Country parks",
        "responses": {
          "200": {
            "description": "OK — JSON body as documented on the canonical page for this collection.",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/marine-parks.json": {
      "get": {
        "operationId": "getMarineParks",
        "tags": [
          "data"
        ],
        "summary": "8 marine parks and 1 marine reserve with AFCD hectares and site list",
        "description": "8 個海岸公園同 1 個海岸保護區，附漁護署公頃數同場址清單。\n\n海岸公園 / Marine parks",
        "responses": {
          "200": {
            "description": "OK — JSON body as documented on the canonical page for this collection.",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/holidays.json": {
      "get": {
        "operationId": "getHolidays",
        "tags": [
          "data"
        ],
        "summary": "Public holidays and statutory holidays with their official gazette sources",
        "description": "公眾假期同法定假日，附官方憲報來源。\n\n公眾假期 / Public holidays",
        "responses": {
          "200": {
            "description": "OK — JSON body as documented on the canonical page for this collection.",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/heritage.json": {
      "get": {
        "operationId": "getHeritage",
        "tags": [
          "data"
        ],
        "summary": "140 declared monuments under the Antiquities and Monuments Ordinance, by district",
        "description": "140 項《古物及古蹟條例》下嘅法定古蹟，按區排列。\n\n法定古蹟 / Declared monuments",
        "responses": {
          "200": {
            "description": "OK — JSON body as documented on the canonical page for this collection.",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/temples.json": {
      "get": {
        "operationId": "getTemples",
        "tags": [
          "data"
        ],
        "summary": "29 Hong Kong temples crosswalked to the Antiquities Advisory Board graded list and declared monuments. matchType exact means the official list has the same temple; component means the official list covers only a component (not the whole temple); none means no official record — never force a match. Official fields come only from AAB/AMO; worship copy is not included.",
        "description": "29 間香港廟宇同古諮會評級名單／法定古蹟的對照。matchType exact＝官方名單有同一間；component＝官方只列構件（唔係全間）；none＝官方名單冇，唔准硬配。官方欄位只來自 AAB／AMO，唔包含參拜文案。\n\n廟宇對照 / Temple crosswalk",
        "responses": {
          "200": {
            "description": "OK — JSON body as documented on the canonical page for this collection.",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/festivals.json": {
      "get": {
        "operationId": "getFestivals",
        "tags": [
          "data"
        ],
        "summary": "22 Hong Kong temple festivals listed by the Chinese Temples Committee, with official lunar month/day and Gregorian dates for 2026–2028. Village and temple observance dates can differ; always say the organiser's announcement prevails.",
        "description": "22 個華人廟宇委員會節誕頁列出的香港廟宇節慶，附官方農曆月／日同 2026–2028 年公曆日期。各村／各廟日期可以不同，必須寫「以主辦單位公布為準」。\n\n廟宇節誕 / Temple festivals",
        "responses": {
          "200": {
            "description": "OK — JSON body as documented on the canonical page for this collection.",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/places.json": {
      "get": {
        "operationId": "getPlaces",
        "tags": [
          "data"
        ],
        "summary": "256 registered venues (73 public libraries, 21 museums, 17 performing venues, 140 declared monuments, 5 others) with official names, aliases, LCSD venue ids, official addresses and district, plus the archive history of the venue itself — including up to three verbatim archive quotations, each with its source name and absolute year-page link, so a consumer never has to write its own history sentence. Matching is EXACT ONLY — four paths (LCSD id, exact name, exact alias, exact name after stripping one trailing parenthetical). Substring matching and district-only inference are forbidden and are what previously mislabelled events; an unregistered label must return null. Coordinates exist for only 17, addresses for 97 and venue-level history for 9; null means the official source does not publish it, not that it is absent. History is cut at building generations — the same Chinese name across a rebuilt site is not the same venue",
        "description": "256 個已登記場地（公共圖書館 73、博物館 21、表演場地 17、法定古蹟 140、其他 5），附官方名稱、別名、康文署 venue id、官方地址同所屬區，以及該場地本身的志錄歷史——包括最多三條志錄原文（連出處名同絕對年份頁連結），取用者唔需要自己再作一句歷史。比對只准完全相等——四條路：康文署 id、完全同名、已登記別名、去掉一個尾括號後同名；子字串比對同「同區唯一」推斷一律禁止（那正是之前把活動指錯場地的成因），查不到就要回 null。全站只有 17 個有座標、97 個有地址、9 個有場地級歷史；null 代表官方沒有公布，不代表不存在。歷史已按建築世代切分——同一中文名但重建過，唔係同一場地。\n\n場地登記冊 / Venue registry",
        "responses": {
          "200": {
            "description": "OK — JSON body as documented on the canonical page for this collection.",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/history.json": {
      "get": {
        "operationId": "getHistory",
        "tags": [
          "data"
        ],
        "summary": "Dated milestones with official source IDs",
        "description": "已繫年嘅歷史節點，附官方來源 ID。\n\n歷史節點 / History milestones",
        "responses": {
          "200": {
            "description": "OK — JSON body as documented on the canonical page for this collection.",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/careers.json": {
      "get": {
        "operationId": "getCareers",
        "tags": [
          "data"
        ],
        "summary": "400 occupations with official entry rules and study routes; private-sector salaries are not estimated",
        "description": "400 個職業嘅官方入職條件同進修路徑；私營機構薪酬一概不估算。\n\n升學就業 / Careers",
        "responses": {
          "200": {
            "description": "OK — JSON body as documented on the canonical page for this collection.",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/playrooms.json": {
      "get": {
        "operationId": "getPlayRooms",
        "tags": [
          "data"
        ],
        "summary": "42 LCSD children’s play rooms with published hours and ticket rules; queue waiting time is not estimated",
        "description": "42 個康文署兒童遊戲室，附公布開放時間同派票規則；排隊時間不估算。\n\n公共兒童遊樂 / Children’s play rooms",
        "responses": {
          "200": {
            "description": "OK — JSON body as documented on the canonical page for this collection.",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/accessibility.json": {
      "get": {
        "operationId": "getAccessibility",
        "tags": [
          "data"
        ],
        "summary": "121 heavy-rail station entries with the official station-by-station wording for lifts, ramps, stair lifts, external lifts and drop-off access (street↔concourse and concourse↔platform), station phone numbers, the official accessible-toilet table (three location categories, including stations listed differently on different lines), 10 non-rail modes with their official limitations and 22 operator contact records read page by page from the official chapter 5 (telephone, fax, website, e-mail, service centres and routes, with every difference between the two official pages noted). The car and door come from MTR Mobile Fast Exit for the chosen exit; this site does not freeze a carriage N",
        "description": "121 個重鐵站嘅升降機、斜道、輪椅升降台、站外升降機同路面落客區（街↔大堂、大堂↔月台，官方原文），連車站聯絡電話、無障礙洗手間位置表（三類位置，含同一站喺唔同線分類唔同嘅情況）、10 種鐵路以外模式同官方明言嘅限制，以及官方第五章 22 間營辦商嘅聯絡資料（電話、傳真、網址、電郵、服務中心同航線，逐頁睇官方渲染圖核讀，兩頁唔一致嘅地方逐項註明）。邊卡邊道門要喺 MTR Mobile「快捷出站」按該次出口查；開放資料表冇車卡欄，本站唔寫死第 N 卡。\n\n香港公共交通無障礙設施 / Hong Kong public transport accessibility",
        "responses": {
          "200": {
            "description": "OK — JSON body as documented on the canonical page for this collection.",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/accessible-routes.json": {
      "get": {
        "operationId": "getAccessibleRoutes",
        "tags": [
          "data"
        ],
        "summary": "9506 ordered station pairs across 98 heavy-rail stations: line, direction, interchange stations, the official concourse↔platform facilities at both ends, a step-free flag (9312 pairs) and the car-data gap stated per pair. Derived from the Transport Department guide; no car number is invented",
        "description": "98 個重鐵站、9506 個有向站對：逐對列出線路、方向、轉車站、起終點大堂↔月台設施、是否全程無梯級（9312 對），同逐對如實標示車卡缺口。由運輸署指南派生，唔會砌車卡號碼。\n\n港鐵站對站無障礙行程 / MTR station-to-station accessible journeys",
        "responses": {
          "200": {
            "description": "OK — JSON body as documented on the canonical page for this collection.",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/schools.json": {
      "get": {
        "operationId": "getSchools",
        "tags": [
          "data"
        ],
        "summary": "2296 schools in the official Education Bureau register by district (965 with a principal listed in the official profiles), plus 5 hand-written historical entries. Not a ranking.",
        "description": "教育局官方登記名錄嘅 2296 間學校（按十八區；其中 965 間有官方概覽列出嘅校長姓名），另加 5 條人手撰寫嘅歷史條目。唔係排名。\n\n學校 / Schools",
        "responses": {
          "200": {
            "description": "OK — JSON body as documented on the canonical page for this collection.",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/people.json": {
      "get": {
        "operationId": "getPeople",
        "tags": [
          "data"
        ],
        "summary": "4985 governors, chief executives and other notable figures with terms of office",
        "description": "4985 位港督、行政長官同其他人物，附任期。\n\n人物 / Notable people",
        "responses": {
          "200": {
            "description": "OK — JSON body as documented on the canonical page for this collection.",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/people-index.json": {
      "get": {
        "operationId": "getPeopleIndex",
        "tags": [
          "data"
        ],
        "summary": "4985 people as a compact index (slug, Chinese and English names, role, occupation, roster-level flag) for in-browser lookup; biographies stay in /api/v1/people.json",
        "description": "4985 位人物嘅輕量索引（代號、中英名、界別、職業、係唔係名錄級），供瀏覽器端搵人；傳記全文仍然喺 /api/v1/people.json。\n\n人物索引（輕量） / People index (compact)",
        "responses": {
          "200": {
            "description": "OK — JSON body as documented on the canonical page for this collection.",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/sources.json": {
      "get": {
        "operationId": "getSources",
        "tags": [
          "data"
        ],
        "summary": "1107 official citations: title, publisher, URL, publication date where printed, and the date this site accessed it. There is no “tier” or reliability grade field — this site does not rank its sources, so a grade is not published here",
        "description": "1107 個官方來源：標題、出版機構、網址、官方有印就記出版期，另有本站查閱日期。冇「級別」或可信度評分欄位——本站唔替來源排等級，所以唔會輸出一個等級出嚟。\n\n來源 / Sources",
        "responses": {
          "200": {
            "description": "OK — JSON body as documented on the canonical page for this collection.",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/covers.json": {
      "get": {
        "operationId": "getCoverSongs",
        "tags": [
          "data"
        ],
        "summary": "20 Hong Kong pop songs traced to overseas originals, with adaptation layers and sibling versions; no chart ranking or sales figures",
        "description": "20 首香港改編歌嘅海外原曲，附改編層數同同曲其他版本；不含排行榜或銷量。\n\n改編歌 / Cover songs",
        "responses": {
          "200": {
            "description": "OK — JSON body as documented on the canonical page for this collection.",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/screen-facts.json": {
      "get": {
        "operationId": "getScreenFacts",
        "tags": [
          "data"
        ],
        "summary": "20 film/TV plot points with the claim, verified reality, inaccuracies and verdict",
        "description": "20 條影視橋段嘅流傳說法、核實結果、失實之處同判定。\n\n影視橋段真偽 / Screen fact-check",
        "responses": {
          "200": {
            "description": "OK — JSON body as documented on the canonical page for this collection.",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/screen.json": {
      "get": {
        "operationId": "getScreenCulture",
        "tags": [
          "data"
        ],
        "summary": "194 works, 27 lines and 38 theme songs as shared Hong Kong screen memory; not rankings or box office",
        "description": "194 套作品、27 條名句、38 首主題曲；記共同記憶，唔做排名或票房。\n\n影視文化 / Screen culture",
        "responses": {
          "200": {
            "description": "OK — JSON body as documented on the canonical page for this collection.",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/anime.json": {
      "get": {
        "operationId": "getChildhoodAnime",
        "tags": [
          "data"
        ],
        "summary": "177 animated works, comics and local animations with 83 Cantonese theme songs and 12 cultural markers from Hong Kong childhoods; not rankings, ratings, full lyrics or comic pages",
        "description": "177 部動畫／漫畫／本地動畫、83 首動畫主題曲同 12 條文化記號；記童年共同記憶，唔做排名、收視、歌詞全文或漫畫內文。\n\n童年動漫 / Childhood animation and comics",
        "responses": {
          "200": {
            "description": "OK — JSON body as documented on the canonical page for this collection.",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/anime-broadcasts.json": {
      "get": {
        "operationId": "getAnimeBroadcasts",
        "tags": [
          "data"
        ],
        "summary": "2715 imported animation and tokusatsu series aired on 9 Hong Kong channels (TVB Jade, HD Jade and J2; RTV/ATV Home and its three digital channels; Commercial Television; ViuTV) between 1966 and 2017, with 7297 broadcast runs transcribed verbatim from an independent database, channel page by channel page: local title, original title, version, episode count, exact run dates at the precision the source gives, and the children's block where recorded. Channels are kept separate rather than merged into two broadcasters. Totals are this site's own tallies of that database; source date anomalies are disclosed, never corrected",
        "description": "1966 至 2017 年香港 9 個電視頻道（無綫翡翠台、高清翡翠台、J2；麗的／亞洲電視本港台同三個數碼台；佳藝電視；ViuTV）播過嘅 2715 套外購動畫及特攝、7297 場播放，逐條轉錄香港譯名、原名、版本、集數同實際播放日期（日期精度同原紀錄一致，唔補白）；頻道分開記錄，唔合併成兩個台。數字係本站自行點算該民間資料庫，原紀錄嘅日期異常照錄並公開交代。\n\n動畫及特攝播放紀錄 / Animation and tokusatsu broadcast records",
        "responses": {
          "200": {
            "description": "OK — JSON body as documented on the canonical page for this collection.",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/anime-broadcast-events.json": {
      "get": {
        "operationId": "getAnimeBroadcastEvents",
        "tags": [
          "data"
        ],
        "summary": "3986 incident records for Hong Kong animation broadcasts (1988–2017): a series suspended on a given day, episodes pulled or heavily cut, Japanese theme songs replaced, special openings skipped. These are NOT air-date records — a row means something happened on that date, not that a series aired; use /api/v1/anime-broadcasts.json for air dates. Channels are stated only where the source states them: the yearly suspension tables never name one, so those rows carry channelBasis \"unstated\" rather than an inferred broadcaster. Pay-TV and cable outlets remain as written",
        "description": "1988 至 2017 年 3986 條香港動畫播放事件紀錄：某日某套片停播、某集被抽起或大幅刪剪、日語主題曲被換成粵語、特別版片頭被剪。呢啲唔係播映日期——一條代表嗰日發生咗一件事，唔代表套片嗰日播過；要播映日期請用 /api/v1/anime-broadcasts.json。頻道只在原頁有寫時才標：逐年停播表從來冇寫頻道，嗰批標 channelBasis「unstated」而唔會反推。收費台同有線台照原文保留\n\n動畫播放事件（停播、抽起、換歌） / Animation broadcast incidents",
        "responses": {
          "200": {
            "description": "OK — JSON body as documented on the canonical page for this collection.",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/anime-broadcast-index.json": {
      "get": {
        "operationId": "getAnimeBroadcastIndex",
        "tags": [
          "data"
        ],
        "summary": "2715 broadcast records as a compact index (id, local title, original title, channel, medium, year, version, run count, linked work) for in-browser search on /anime/broadcasts; full runs and notes stay in /api/v1/anime-broadcasts.json",
        "description": "2715 條播放紀錄嘅輕量索引（代號、香港譯名、原名、頻道、片種、年份、版本、場次數、對應文章），供 /anime/broadcasts 頁內搜尋；每場播放同備註仍然喺 /api/v1/anime-broadcasts.json。\n\n動畫播放紀錄索引（輕量） / Animation broadcast index (compact)",
        "responses": {
          "200": {
            "description": "OK — JSON body as documented on the canonical page for this collection.",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/fixtures.json": {
      "get": {
        "operationId": "getRacingFixtures",
        "tags": [
          "data"
        ],
        "summary": "3693 race meetings in 48 Hong Kong racing seasons (1979-09 to 2027-07) with per-season summaries, remaining meetings, cancellation notices and the schedule-change log. Counts are this site’s own tallies of the Jockey Club’s official calendar; unpublished fields are null, never estimated. No odds or betting data",
        "description": "48 個香港馬季共 3693 個賽日（1979-09 至 2027-07），附逐季摘要、餘下賽日、取消通告同改期紀錄。數字係本站自行點算馬會官方賽期表；官方未公布嘅欄位留空，不估算、不含賠率。\n\n賽馬賽期表 / Racing fixtures",
        "responses": {
          "200": {
            "description": "OK — JSON body as documented on the canonical page for this collection.",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/champions.json": {
      "get": {
        "operationId": "getRaceChampions",
        "tags": [
          "data"
        ],
        "summary": "120 editions of the top-level races on Hong Kong’s December international race day (1995–2025), with every edition and jockey/trainer tables that are this site’s own tally. Unpublished fields are null, never estimated",
        "description": "1995–2025 年香港十二月國際賽日頂級賽事共 120 屆，附逐屆賽果同本站自行點算嘅騎師／練馬師表。官方未公布嘅欄位留空，不估算。\n\n國際賽事冠軍史 / International race champions",
        "responses": {
          "200": {
            "description": "OK — JSON body as documented on the canonical page for this collection.",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/awards.json": {
      "get": {
        "operationId": "getAwards",
        "tags": [
          "data"
        ],
        "summary": "3478 official award records (2008–2024) across 35 official industry sectors, awardee names exactly as printed. This is an official awards list, not a revenue or market-capitalisation ranking",
        "description": "2008–2024 年 35 個官方界別共 3478 條得獎紀錄，得獎者名稱照官方原文。呢個係官方得獎名單，唔係營業額或市值排名。\n\n官方獎項得獎名單 / Official award awardees",
        "responses": {
          "200": {
            "description": "OK — JSON body as documented on the canonical page for this collection.",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/archive.json": {
      "get": {
        "operationId": "getChronicleArchive",
        "tags": [
          "archive"
        ],
        "summary": "36501 atomic facts from the Hong Kong Chronicles e-books — totals, per-year URLs, decade slices with a density instrument, latest entries, undated pagination, the milestone↔archive same-day linkage and the sharded full-text search entry point. Entry counts measure what has been COLLECTED, not how much happened: read the decades.notes before quoting any count. The archive full text is NOT inside catalog.json; use this file (or /ask, which searches it) instead of guessing",
        "description": "36501 條《香港志》電子書原子事實：總數、逐年網址、十年切片（連密度誠信儀表）、最新條目、未繫年分頁、已核大事↔志錄嘅「同一日」接駁同全文搜尋入口。條目數係收錄密度、唔係歷史事件密度——引用前先讀 decades.notes。志錄全文唔在 catalog.json 內；請用呢個檔或 /ask 檢索，唔好靠估。\n\n《香港志》志錄 / Chronicle archive",
        "responses": {
          "200": {
            "description": "OK — JSON body as documented on the canonical page for this collection.",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/on-this-day.json": {
      "get": {
        "operationId": "getOnThisDay",
        "tags": [
          "archive"
        ],
        "summary": "8766 archive entries dated to an exact day, bucketed into all 366 calendar days. The top level answers \"what happened in Hong Kong today\" (Hong Kong time) and carries a `days` index; every day also has its own static JSON at /data/on-this-day/<MM-DD>.json and its own page at /today/<MM-DD>. Exact-day entries only — entries dated only to a month or a year are never forced into a day, so a count means \"how many collected entries fall on that day\", not how many events happened",
        "description": "8766 條精確到日嘅志錄條目，按全部 366 個月日分桶。頂層直接答「香港今日（香港時區）」並附 `days` 索引；每日另有靜態 JSON /data/on-this-day/<MM-DD>.json 同頁面 /today/<MM-DD>。只收精確到日嘅條目——原文只寫到年或月者唔會塞入某一天，所以條數係「已收錄之中有幾多條對到呢一日」，唔係當日事件總數。\n\n歷史上的今日 / On this day",
        "responses": {
          "200": {
            "description": "OK — JSON body as documented on the canonical page for this collection.",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/entities.json": {
      "get": {
        "operationId": "getChronicleEntityAxes",
        "tags": [
          "archive"
        ],
        "summary": "39 place and theme threads through the Hong Kong Chronicles archive (Tuen Mun, Kwun Fu Cheung, country parks, Dongjiang water supply and more), each with the literal match and exclusion strings that selected its entries, its date range, its registered sources and its known gaps. Entry text itself is not copied here — read the axis page or the per-year archive pages",
        "description": "39 條地方／專題縱向脈絡（屯門、官富場、郊野公園、東江供水等），每條列出「點樣揀條目」嘅命中同排除字串、年份跨度、已登記來源同已知缺口。條目全文唔會複製入呢個檔，請去軸頁或逐年頁。\n\n志錄實體軸 / Chronicle entity axes",
        "responses": {
          "200": {
            "description": "OK — JSON body as documented on the canonical page for this collection.",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/tags.json": {
      "get": {
        "operationId": "getChronicleTags",
        "tags": [
          "archive"
        ],
        "summary": "45 tag threads through the Hong Kong Chronicles archive (population, environment, transport, education and more): per-tag entry counts, dated/undated split, year span, decade-by-decade counts, registered source IDs and the below-threshold tags that get no page; plus the same tag × decade table split by source volume (each entry falls in its primary source’s volume only). Tags come from the source volumes, not from this site; sample entries are not included — read the tag page or the per-year pages",
        "description": "45 條按原書分類標籤切出嘅題目脈絡（人口、環境、交通、教育等），每條列條數、已繫年／未繫年、年份跨度、逐十年分佈、已登記來源，同未達下限唔開頁嘅標籤；另附同一套「標籤 × 十年」表按來源分冊嘅版本（一條條目只落喺佢主要來源嗰一冊）。標籤係原書分類，唔係本站評價；抽樣條目唔會喺呢度出。\n\n志錄分類標籤軸 / Chronicle tag axes",
        "responses": {
          "200": {
            "description": "OK — JSON body as documented on the canonical page for this collection.",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/dossiers.json": {
      "get": {
        "operationId": "getInDepthDossiers",
        "tags": [
          "data"
        ],
        "summary": "40 long-form dossiers (Public housing: from disaster relief to an ownership ladder; How epidemics remade the city; Crossing the harbour: from ferries to high-speed rail; Water: from reservoirs to the East River; Education: from a few English colleges to universal compulsory schooling; School curriculum: from prescribed book lists to learning to learn; Subject by subject: Chinese, mathematics, science and Chinese history syllabuses; Typhoons: from the Jiaxu disaster to climate adaptation; Reclamation: from Bonham Strand to 70.27 square kilometres; Border and population: from free movement to managed quotas; Industrialisation: from entrepôt to factory city, then service economy; Healthcare: from charitable hospitals to the Hospital Authority; Port and shipping: from dockyards to container terminals; Finance: from note-issuing banks to the linked exchange rate; Food supply: from local rice fields to imported rice and regulation; The legal system: from consular jurisdiction to the Court of Final Appeal; Culture and media: from the Gazette to pay television; Sport: from racecourse and clubs to Olympic medals; Religion: from ancient temples and halls to federations; Land transport: from Castle Peak Road to a railway network; Postal service and communications: from the first post office to fibre and an open fixed network; Urban planning and new towns: from an outline plan to new development areas; Social welfare and voluntary bodies: charities before departments; Tourism: from grand hotels to the Individual Visit Scheme; Environmental protection and waste: from drains to charges; Aviation and airports: from Kai Tak to Chek Lap Kok; Labour and employment: from strikes to a statutory floor; Electricity and energy: from street lamps to the Scheme of Control; Mass transit and railway expansion: from consultancy report to high-speed rail; Markets and dining: from street hawkers to the Centre for Food Safety; Securities markets and financial regulation: from four exchanges to one framework; Police and public order: from twenty-eight officers to the ICAC; The Urban Council: from the Sanitary Board to two councils, and abolition; Fire and ambulance services: from blowing up buildings to five-alarm fires; Customs and excise: from a preventive service to Hong Kong Customs; Taxation and public finance: from rates to stamp duty; Slope safety: from one rainstorm to an entire system; Corrections and prisons: from a police-run jail to rehabilitation centres; Pets: from the dog-meat ban to stray animals; When were Hong Kong’s temples built? A chronology from the Song to the eighteenth century) that stitch registered archive entries into an argument: each has a sourced timeline with page references, a source-reading guide and explicit gaps. Use this when the question needs causes and consequences, not a single atomic fact; every number in the prose is constrained to the timeline text by audit:dossiers",
        "description": "40 篇長文（公營房屋：由安置災民到產權階梯、疫症如何改寫香港城市、跨越維港：由渡輪到高鐵、食水：由水塘到東江、教育：由少數人的英文書院到全民強迫教育、中小學課程：由指定書目到「學會學習」、逐科課程：中文、數學、科學與中史的綱要、颱風：由甲戌風災到氣候適應、填海：由文咸東街到 70.27 平方公里、邊境與人口：由自由往來到配額管理、工業化：由轉口港到世界工廠，再到服務業城市、醫療：由慈善醫院到醫院管理局、港口與航運：由船塢到貨櫃碼頭、金融：由發鈔銀行到聯繫匯率、食物供應：由本地稻田到進口米與監管、法律制度：由領事裁判權到終審法院、文化與媒體：由《憲報》到收費電視、體育：由馬場與球會到奧運獎牌、宗教：由古剎祠堂到聯合組織、陸路交通：由青山公路到鐵路網絡、郵政與通訊：由第一所郵局到光纖與固網開放、城市規劃與新市鎮：由一幅大綱圖到新發展區、社會福利與志願團體：先有善堂，後有部門、旅遊業：由大酒店到自由行、環境保護與廢物管理：由渠道到徵費、航空與機場：由啟德到赤鱲角、勞工與就業：由罷工到法定底線、電力與能源：由街燈到管制協議、集體運輸與鐵路擴展：由顧問報告到高鐵、飲食業與街市：由街邊擔挑到食物安全中心、證券市場與金融監管：由四間交易所到一個架構、警隊與治安：由二十八人到廉政公署、市政局：由潔淨局到兩個市政局，再到廢除、消防與救護：由炸樓救火到五級火、海關與緝私：由緝私隊到香港海關、稅收與公共財政：由差餉到印花稅、斜坡安全：由一場雨到一套制度、懲教與監獄：由警察司管監倉到更生中心、寵物：由禁屠狗到流浪動物、廟宇幾時建：由宋元到十八世紀的建立時序），把已登記志錄條目串成有論點嘅敘述：每篇有附頁碼嘅時間線、文獻讀法同明確缺口。問題要前因後果而唔係一條原子事實時用呢個檔；正文數字受 audit:dossiers 約束，必須喺同一篇時間線原文出現。\n\n深度專題 / In-depth dossiers",
        "responses": {
          "200": {
            "description": "OK — JSON body as documented on the canonical page for this collection.",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/annals.json": {
      "get": {
        "operationId": "getAnnals",
        "tags": [
          "data"
        ],
        "summary": "167 year pages — one row per year with event, milestone and figure counts plus Observatory climate values",
        "description": "167 個逐年頁：每年一行，附事件、里程碑同數字條數，以及天文台氣候數值。\n\n年鑑逐年 / Yearbook by year",
        "responses": {
          "200": {
            "description": "OK — JSON body as documented on the canonical page for this collection.",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/series.json": {
      "get": {
        "operationId": "getSeries",
        "tags": [
          "data"
        ],
        "summary": "9 fetched series (Observatory annual temperature and threshold-day counts since 1885; Wikimedia pageviews as a demand signal). Temperature series are aggregated from official daily data by a stated rule; demand series are readership signals and must never be quoted as Hong Kong statistics",
        "description": "9 條已抓取序列（天文台 1885 年起年度氣溫同閾值日數；Wikimedia 瀏覽量屬需求訊號）。氣溫序列按既定規則由官方逐日數據匯總；需求序列只可當閱讀興趣訊號，唔可以當香港統計數字引用。\n\n長期趨勢序列 / Trend series",
        "responses": {
          "200": {
            "description": "OK — JSON body as documented on the canonical page for this collection.",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object"
                }
              }
            }
          }
        }
      }
    },
    "/api/v1/index.json": {
      "get": {
        "operationId": "getApiIndex",
        "tags": [
          "directory"
        ],
        "summary": "Every machine-readable endpoint with live counts — start here when you do not know which file to fetch",
        "description": "全部機器可讀端點同即時數量；唔知應該抓邊個檔就由呢個開始。\n\n端點目錄 / API index",
        "responses": {
          "200": {
            "description": "OK — JSON body as documented on the canonical page for this collection.",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object"
                }
              }
            }
          }
        }
      }
    }
  }
}