本 API 提供香港自殺報道資料庫 (HKSPD) 的公開查詢服務。系統基於 Cloudflare Workers 構建,支援高併發請求,具備智慧快取、跨域資源共享 (CORS) 及多維度數據篩選功能。
https://hkspd.siuyeong.com/api_v2GETapplication/jsonAccess-Control-Allow-Origin: * (允許所有前端直接調用)max-age=1800)在調用 API 時,系統會依照以下優先級順序處理參數:
caseID)caseID,系統將忽略所有其他參數 (如 page, limit, year 等),僅回傳該單一案件。caseID,系統會執行篩選。Unit 與 subUnit 採用 模糊匹配 (Partial Match)。minAge/maxAge 會自動剔除無效年齡數據。order) 和分頁裁切 (page, limit)。所有參數均為 可選 (Optional)。 注意:篩選參數名稱必須與數據欄位名稱完全一致 (區分大小寫)。
| 參數名稱 | 類型 | 預設值 | 說明 |
|---|---|---|---|
caseID |
String | - | 唯一個案編號 (如 2025011002)。排他性參數。 |
page |
Integer | 1 |
頁碼。 |
limit |
Integer | - | 每頁筆數。若未提供,則回傳所有符合條件的記錄 (不分頁)。 |
order |
String | - | 排序方式 (依 caseID)。 • asc: 升序 (舊 → 新)• desc: 降序 (新 → 舊) |
| 參數名稱 | 格式/類型 | 範例 | 詳細說明 |
|---|---|---|---|
startDate |
YYYY-MM-DD |
2024-01-01 |
篩選發現日期 (caseDate) 大於或等於 此日期。 |
endDate |
YYYY-MM-DD |
2024-12-31 |
篩選發現日期 (caseDate) 小於或等於 此日期。 |
minAge |
Integer | 18 |
篩選年齡 (Age) 大於或等於 此值。⚠️ 自動過濾:使用此參數時, 會自動剔除年齡為「不詳」或非數字的記錄。 |
maxAge |
Integer | 60 |
篩選年齡 (Age) 小於或等於 此值。⚠️ 自動過濾:同上。 |
year |
Integer | 2024 |
輔助參數,比對 caseDate 的年份。 |
此類參數支援部份匹配,只要包含關鍵字即符合條件。
| 參數名稱 | 對應欄位 | 範例 | 說明 |
|---|---|---|---|
Unit |
Unit |
彌敦道, 花園 |
搜尋屋苑、街道或大廈名稱。 輸入 彌敦道 可匹配 彌敦道、彌敦道1號、彌敦道700號。 |
subUnit |
subUnit |
3座, 後巷 |
搜尋詳細位置 (座數、樓層等)。 |
需完全匹配資料庫中的內容,參數名稱需與欄位名稱完全一致。
| 參數名稱 | 對應欄位 | 說明 | 範例 |
|---|---|---|---|
newsDate |
newsDate |
報道日期 | 2024-05-20 |
caseDate |
caseDate |
發現日期 | 2024-05-20 |
Area |
Area |
區域 | 新界 |
District |
District |
18區 | 屯門區 (必須含「區」字) |
subDistrict |
subDistrict |
分區 | 馬鞍山 |
House |
House |
房屋類型 | 公共屋邨 |
Gender |
Gender |
性別 | 男, 女 |
Age |
Age |
年齡 (字串) | 25 (範圍查詢請用 minAge/maxAge) |
State |
State |
綜合狀態 | 身亡 |
| 參數名稱 | 對應欄位 | 選項 | 說明 |
|---|---|---|---|
suicideNote |
suicideNote |
有, 沒有 |
現場有沒有遺書 |
Hospitalized |
Hospitalized |
有, 沒有 |
事主有沒有送院 |
mental_illness |
mental_illness |
有, 沒有 |
精神病患記錄 |
emotional_illness |
emotional_illness |
有, 沒有 |
情緒病患記錄 |
missingRecord |
missingRecord |
有, 沒有 |
失蹤記錄 |
newsHelp |
newsHelp |
有, 沒有 |
報道有沒有求助熱線 |
| 參數名稱 | 邏輯 | 說明 |
|---|---|---|
reason |
OR (或) | 自動搜尋 reason1, reason2, reason3。範例: 感情, 財政。 |
type |
OR (或) | 自動搜尋 type1, type2, type3。範例: 跳落, 燒炭。 |
{
"meta": {
"totalRecords": 100, // 符合篩選條件的總記錄數
"totalPages": 5, // 總頁數 (僅在設定 limit 時出現)
"currentPage": 1, // 當前頁碼 (僅在設定 limit 時出現)
"pageSize": 20, // 每頁筆數 (僅在設定 limit 時出現)
"mode": "all_records" // 若無 limit,則顯示此模式
},
"records": [
// 案件列表 (Array),詳見下方數據字典
{ ... },
{ ... }
]
}
此表列出 records 物件中的所有欄位及其完整選項 (Enum)。請注意,這些欄位名稱即為上述的請求參數名稱。
| 欄位名稱 (Key) | 類型 | 說明 | 選項與格式 (完整列表) |
|---|---|---|---|
caseID |
String | 唯一個案編號 | 格式:YYYYMMDDXX |
newsDate |
String | 報道日期 | 格式:YYYY-MM-DD |
newsTime |
String | 報道時間 | 格式:HH:MM |
newsHelp |
String | 有沒有求助熱線 | 有, 沒有 |
newsURL |
String | 新聞網址 | URL |
caseDate |
String | 發現日期 | 格式:YYYY-MM-DD |
caseTime |
String | 發現時間 | 格式:HH:MM |
Area |
String | 區域 | 港島, 九龍, 新界 |
District |
String | 地區 (18區) | 中西區, 灣仔區, 東區, 南區,油尖旺區, 深水埗區, 九龍城區, 黃大仙區,觀塘區, 葵青區, 荃灣區, 屯門區,元朗區, 北區, 大埔區, 沙田區,西貢區, 離島區 |
subDistrict |
String | 分區 | (自定義文字,如 尖沙咀, 馬鞍山) |
Unit |
String | 街道 / 屋邨 / 建築 | (自定義文字,如 怡樂花園, 彌敦道) |
subUnit |
String | 門牌 / 樓宇 / 地點 | (自定義文字,如 3座, 後巷) |
Latitude |
String | 緯度 | WGS84 格式 |
Longitude |
String | 經度 | WGS84 格式 |
House |
String | 房屋類型 | 公共屋邨, 居屋, 豪宅, 私人屋苑,洋樓, 唐樓, 村屋, 服務式住宅,非住宅 |
firstName |
String | 事主姓氏 | (自定義文字,若未知則為 不詳) |
Gender |
String | 性別 | 男, 女 |
Age |
String | 年齡 | 數字字串 (如 16) 或 不詳 |
Hospitalized |
String | 有沒有送院 | 有, 沒有 |
State |
String | 綜合狀態 | 身亡, 昏迷, 紊亂, 迷糊, 清醒, 不詳 |
suicideNote |
String | 有沒有遺書 | 有, 沒有 |
mental_illness |
String | 精神病記錄 | 有, 沒有 |
emotional_illness |
String | 情緒病記錄 | 有, 沒有 |
missingRecord |
String | 失蹤記錄 | 有, 沒有 |
reason1reason2reason3 |
String | 懷疑原因 | 感情, 工作, 生活, 健康,家庭, 學業, 財政, 要脅,畏罪, 酒精, 藥品, 不詳 |
type1type2type3 |
String | 個案類別 | 跳落, 淹溺, 燒炭, 自縊,氣體, 窒息, 交通, 出血,藥品, 自焚, 液體, 槍械, 不詳 |
1. 模糊搜尋地址 (注意參數大小寫)
搜尋所有發生在「彌敦道」的案件:
https://hkspd.siuyeong.com/api_v2?Unit=彌敦道
2. 日期範圍查詢
搜尋 2024 年上半年發生的案件:
https://hkspd.siuyeong.com/api_v2?startDate=2024-01-01&endDate=2024-06-30
3. 年齡與地區篩選
搜尋發生在「新界」,且事主年齡為「65歲或以上」的案件:
https://hkspd.siuyeong.com/api_v2?Area=新界&minAge=65
4. 複雜條件 (房屋類型+原因+狀態)
搜尋發生在「公共屋邨」,原因涉及「健康」,且最終狀態為「身亡」的案件:
https://hkspd.siuyeong.com/api_v2?House=公共屋邨&reason=健康&State=身亡
5. 完整分頁
搜尋「男性」案件,每頁顯示 50 筆,查看第 2 頁,按最新排序:
https://hkspd.siuyeong.com/api_v2?Gender=男&page=2&limit=50&order=desc
6. 精神病與情緒病篩選
搜尋有精神病及有情緒病記錄的案件:
https://hkspd.siuyeong.com/api_v2?mental_illness=有&emotional_illness=有
以下為呼叫 https://hkspd.siuyeong.com/api_v2?limit=1 時的標準 JSON 回傳格式:
{
"meta": {
"totalRecords": 7392,
"totalPages": 7392,
"currentPage": 1,
"pageSize": 1
},
"records": [
{
"caseID": "2026011501",
"newsDate": "2026-01-15",
"newsTime": "07:35",
"newsHelp": "有",
"newsURL": "https://siuyeo.ng/hkspd202601150701",
"caseDate": "2026-01-15",
"caseTime": "07:01",
"Area": "九龍",
"District": "九龍城區",
"subDistrict": "紅磡",
"Unit": "黃埔花園百合苑",
"subUnit": "7座",
"Latitude": "22.3026073684034",
"Longitude": "114.190030959299",
"House": "私人屋苑",
"firstName": "胡",
"Gender": "男",
"Age": "25",
"Hospitalized": "沒有",
"State": "身亡",
"suicideNote": "沒有",
"mental_illness": "沒有",
"emotional_illness": "沒有",
"missingRecord": "沒有",
"reason1": "生活",
"type1": "跳落"
}
]
}