# 風險評估 --- API 清單 - [最近評估結果](#最近評估結果) - [評估準備](#評估準備) - [進行評估](#進行評估) - [取得評估](#取得評估) --- ## 最近評估結果 ```url GET /risk-assessment/latest ``` #### Request 欄位 | 型態 | 必填 | 預設 | 說明 ---|---|---|---|--- ```javascript ``` #### Response 欄位 | 型態 | 說明 --- | --- | --- id | string | 評估id householdMemberId | string | householdMember ID assessDate | Date | 評估日期 previousId | string | 前一份評估id nextId | string | 後一份評估id assessData | json | 評估設定資料 assessResults | Array [...assessResult] | 評估結果列表 * assessData(Object) 欄位 | 型態 | 說明 --- | --- | --- gender | int | 性別, 0:女性, 1:男性 age | int | 年齡 glu | int | 空腹血糖(mg/dl), <br/>評估類型[綜合健康年齡, 糖尿病] got | int | 肝功能指數, <br/>評估類型[綜合健康年齡] sbp | int | 收縮壓, <br/>評估類型[綜合健康年齡-限男性, 心血管疾病] ratio | float | 腰臀比, <br/>評估類型[綜合健康年齡-限男性] hbp | int | 罹患高血壓,(0:無、1:有), <br/>評估類型[綜合健康年齡-限女性] smoke | int | 吸菸習慣,(0:無、1:有), <br/>評估類型[綜合健康年齡] tg | int | 三酸甘油脂 (mg/dl), <br/>評估類型[心血管疾病, 糖尿病] ua | float | 尿酸 (mg/dl), <br/>評估類型[心血管疾病] cho | int | 總膽固醇 (mg/dl), <br/>評估類型[心血管疾病] hdlc | int | 高密度膽固醇 (mg/dl), <br/>評估類型[心血管疾病] bmi | float | 身體組成, <br/>評估類型[心血管疾病] waist | int | 腰圍 (公分), <br/>評估類型[糖尿病] * assessResult(Object) 欄位 | 型態 | 說明 --- | --- | --- assessType | string | 評估類型, HEALTH_AGE:綜合健康年齡, CARDIO:心血管疾病, DIABETES:糖尿病 risk | float | 個人十年內可能罹此疾病之風險值(%) populationAvg | float | 相同年齡/性別的族群發生此疾病的平均風險值(%) multipleDiff | float | 個人與該年齡全體人口平均值之差異 healthAge | float | 綜合健康年齡 ```javascript { "httpCode": 200, "result": { "data": { "id": "33c6fa92-327e-45be-9897-3bd62a98f638", "householdMemberId": "fdba6e30-ffda-47e4-b378-be7f9de7ba15", "assessDate": 1634832000000, "previousId": null, "nextId": null, "assessData": { "gender": 1, "age": 75, "glu": 263, "got": 255, "sbp": 53, "ratio": 0.91, "hbp": 0, "smoke": 1, "tg": 287, "ua": 29.13, "cho": 61, "hdlc": 103, "bmi": 11.21, "waist": 76 }, "assessResults": [ { "assessType": "HEALTH_AGE", "healthAge": 27.19 }, { "assessType": "CARDIO", "risk": 2.92, "populationAvg": 74.88, "multipleDiff": 82.89 } ] } } } ``` ## 評估準備 ```url GET /risk-assessment/prepare ``` #### Request 欄位 | 型態 | 必填 | 預設 | 說明 ---|---|---|---|--- ```javascript ``` #### Response 欄位 | 型態 | 說明 --- | --- | --- gender | int | 性別, 0:女性, 1:男性 age | int | 年齡 glu | int | 空腹血糖(mg/dl), <br/>評估類型[綜合健康年齡, 糖尿病] got | int | 肝功能指數, <br/>評估類型[綜合健康年齡] sbp | int | 收縮壓, <br/>評估類型[綜合健康年齡-限男性, 心血管疾病] ratio | float | 腰臀比, <br/>評估類型[綜合健康年齡-限男性] hbp | int | 罹患高血壓,(0:無、1:有), <br/>評估類型[綜合健康年齡-限女性] smoke | int | 吸菸習慣,(0:無、1:有), <br/>評估類型[綜合健康年齡] tg | int | 三酸甘油脂 (mg/dl), <br/>評估類型[心血管疾病, 糖尿病] ua | float | 尿酸 (mg/dl), <br/>評估類型[心血管疾病] cho | int | 總膽固醇 (mg/dl), <br/>評估類型[心血管疾病] hdlc | int | 高密度膽固醇 (mg/dl), <br/>評估類型[心血管疾病] bmi | float | 身體組成, <br/>評估類型[心血管疾病] waist | int | 腰圍 (公分), <br/>評估類型[糖尿病] ```javascript // HttpStatus:422, 3個月內已有評估過 { "errorMsg": "SERVICE_ERROR.RISK_ASSESSMENT_OVER_TIMES", "httpCode": 422 } // HttpStatus:200 { "httpCode": 200, "result": { "data": { "gender": 1, "age": 24, "glu": 88, "got": 233, "sbp": 141, "ratio": 0.59, "hbp": 0, "smoke": 1, "tg": 160, "ua": 136.1, "cho": 138, "hdlc": 76, "bmi": 40.07, "waist": 270 } } } ``` ## 進行評估 ```url POST /risk-assessment/assess ``` #### Request 欄位 | 型態 | 必填 | 預設 | 說明 ---|---|---|---|--- assessTypes | Array[...string] | Y | | 評估類型列表, HEALTH_AGE:綜合健康年齡, CARDIO:心血管疾病, DIABETES:糖尿病 glu | int | Y | | 空腹血糖(mg/dl), <br/>評估類型[綜合健康年齡, 糖尿病] got | int | Y | | 肝功能指數, <br/>評估類型[綜合健康年齡] sbp | int | Y | | 收縮壓, <br/>評估類型[綜合健康年齡-限男性, 心血管疾病] ratio | float | Y | | 腰臀比, <br/>評估類型[綜合健康年齡-限男性] hbp | int | Y | | 罹患高血壓,(0:無、1:有), <br/>評估類型[綜合健康年齡-限女性] smoke | int | Y | | 吸菸習慣,(0:無、1:有), <br/>評估類型[綜合健康年齡] tg | int | Y | | 三酸甘油脂 (mg/dl), <br/>評估類型[心血管疾病, 糖尿病] ua | float | Y | | 尿酸 (mg/dl), <br/>評估類型[心血管疾病] cho | int | Y | | 總膽固醇 (mg/dl), <br/>評估類型[心血管疾病] hdlc | int | Y | | 高密度膽固醇 (mg/dl), <br/>評估類型[心血管疾病] bmi | float | Y | | 身體組成, <br/>評估類型[心血管疾病] waist | int | Y | | 腰圍 (公分), <br/>評估類型[糖尿病] * 各評估類型所需必填欄位 - 綜合健康年齡 - glu, 空腹血糖(mg/dl) - got, 肝功能指數 - sbp, 收縮壓-限男性 - ratio, 腰臀比-限男性 - hbp, 罹患高血壓,(0:無、1:有)-限女性 - smoke, 吸菸習慣,(0:無、1:有) - 心血管疾病 - sbp, 收縮壓 - tg, 三酸甘油脂 (mg/dl) - ua, 尿酸 (mg/dl) - cho, 總膽固醇 (mg/dl) - hdlc, 高密度膽固醇 (mg/dl) - bmi, 身體組成 - 糖尿病 - glu, 空腹血糖(mg/dl) - tg, 三酸甘油脂 (mg/dl) - waist, 腰圍 (公分) ```javascript { "assessTypes": [ "HEALTH_AGE", "CARDIO", "DIABETES" ], "glu": 263, "got": 79, "sbp": 116, "ratio": 0.64, "hbp": 1, "smoke": 0, "tg": 152, "ua": 179.2, "cho": 169, "hdlc": 96, "bmi": 19.6, "waist": 110 } ``` #### Response 欄位 | 型態 | 說明 --- | --- | --- id | string | 評估id householdMemberId | string | householdMember ID assessDate | Date | 評估日期 previousId | string | 前一份評估id nextId | string | 後一份評估id assessData | json | 評估設定資料 assessResults | Array [...assessResult] | 評估結果列表 * assessData(Object) 欄位 | 型態 | 說明 --- | --- | --- gender | int | 性別, 0:女性, 1:男性 age | int | 年齡 glu | int | 空腹血糖(mg/dl), <br/>評估類型[綜合健康年齡, 糖尿病] got | int | 肝功能指數, <br/>評估類型[綜合健康年齡] sbp | int | 收縮壓, <br/>評估類型[綜合健康年齡-限男性, 心血管疾病] ratio | float | 腰臀比, <br/>評估類型[綜合健康年齡-限男性] hbp | int | 罹患高血壓,(0:無、1:有), <br/>評估類型[綜合健康年齡-限女性] smoke | int | 吸菸習慣,(0:無、1:有), <br/>評估類型[綜合健康年齡] tg | int | 三酸甘油脂 (mg/dl), <br/>評估類型[心血管疾病, 糖尿病] ua | float | 尿酸 (mg/dl), <br/>評估類型[心血管疾病] cho | int | 總膽固醇 (mg/dl), <br/>評估類型[心血管疾病] hdlc | int | 高密度膽固醇 (mg/dl), <br/>評估類型[心血管疾病] bmi | float | 身體組成, <br/>評估類型[心血管疾病] waist | int | 腰圍 (公分), <br/>評估類型[糖尿病] * assessResult(Object) 欄位 | 型態 | 說明 --- | --- | --- assessType | string | 評估類型, HEALTH_AGE:綜合健康年齡, CARDIO:心血管疾病, DIABETES:糖尿病 risk | float | 個人十年內可能罹此疾病之風險值(%) populationAvg | float | 相同年齡/性別的族群發生此疾病的平均風險值(%) multipleDiff | float | 個人與該年齡全體人口平均值之差異 healthAge | float | 綜合健康年齡 ```javascript // HttpStatus:422, 3個月內已有評估過 { "errorMsg": "SERVICE_ERROR.RISK_ASSESSMENT_OVER_TIMES", "httpCode": 422 } // HttpStatus:422, 風險評估API執行失敗 { "errorMsg": "SERVICE_ERROR.RISK_ASSESSMENT_SERVICE_FAIL", "httpCode": 422 } // HttpStatus:200 { "httpCode": 200, "result": { "data": { "previousId": null, "nextId": null, "assessData": { "gender": 1, "age": 24, "glu": 263, "got": 79, "sbp": 116, "ratio": 0.64, "hbp": 1, "smoke": 0, "tg": 152, "ua": 179.2, "cho": 169, "hdlc": 96, "bmi": 19.6, "waist": 110 }, "assessResults": [ { "assessType": "HEALTH_AGE", "healthAge": 58.9 }, { "assessType": "CARDIO", "risk": 92.48, "populationAvg": 58.46, "multipleDiff": 15.14 }, { "assessType": "DIABETES", "risk": 75.09, "populationAvg": 20.33, "multipleDiff": 45.83 } ] } } } ``` ## 取得評估 ```url POST /risk-assessment/detail ``` #### Request 欄位 | 型態 | 必填 | 預設 | 說明 ---|---|---|---|--- id | string | Y | | 評估id ```javascript { "id": "277fa568-cd35-4b89-899b-bffd1ed85081" } ``` #### Response 欄位 | 型態 | 說明 --- | --- | --- id | string | 評估id householdMemberId | string | householdMember ID assessDate | Date | 評估日期 previousId | string | 前一份評估id nextId | string | 後一份評估id assessData | json | 評估設定資料 assessResults | Array [...assessResult] | 評估結果列表 * assessData(Object) 欄位 | 型態 | 說明 --- | --- | --- gender | int | 性別, 0:女性, 1:男性 age | int | 年齡 glu | int | 空腹血糖(mg/dl), <br/>評估類型[綜合健康年齡, 糖尿病] got | int | 肝功能指數, <br/>評估類型[綜合健康年齡] sbp | int | 收縮壓, <br/>評估類型[綜合健康年齡-限男性, 心血管疾病] ratio | float | 腰臀比, <br/>評估類型[綜合健康年齡-限男性] hbp | int | 罹患高血壓,(0:無、1:有), <br/>評估類型[綜合健康年齡-限女性] smoke | int | 吸菸習慣,(0:無、1:有), <br/>評估類型[綜合健康年齡] tg | int | 三酸甘油脂 (mg/dl), <br/>評估類型[心血管疾病, 糖尿病] ua | float | 尿酸 (mg/dl), <br/>評估類型[心血管疾病] cho | int | 總膽固醇 (mg/dl), <br/>評估類型[心血管疾病] hdlc | int | 高密度膽固醇 (mg/dl), <br/>評估類型[心血管疾病] bmi | float | 身體組成, <br/>評估類型[心血管疾病] waist | int | 腰圍 (公分), <br/>評估類型[糖尿病] * assessResult(Object) 欄位 | 型態 | 說明 --- | --- | --- assessType | string | 評估類型, HEALTH_AGE:綜合健康年齡, CARDIO:心血管疾病, DIABETES:糖尿病 risk | float | 個人十年內可能罹此疾病之風險值(%) populationAvg | float | 相同年齡/性別的族群發生此疾病的平均風險值(%) multipleDiff | float | 個人與該年齡全體人口平均值之差異 healthAge | float | 綜合健康年齡 ```javascript { "httpCode": 200, "result": { "data": { "id": "33c6fa92-327e-45be-9897-3bd62a98f638", "householdMemberId": "fdba6e30-ffda-47e4-b378-be7f9de7ba15", "assessDate": 1634832000000, "previousId": null, "nextId": null, "assessData": { "gender": 1, "age": 75, "glu": 263, "got": 255, "sbp": 53, "ratio": 0.91, "hbp": 0, "smoke": 1, "tg": 287, "ua": 29.13, "cho": 61, "hdlc": 103, "bmi": 11.21, "waist": 76 }, "assessResults": [ { "assessType": "HEALTH_AGE", "healthAge": 27.19 }, { "assessType": "CARDIO", "risk": 2.92, "populationAvg": 74.88, "multipleDiff": 82.89 } ] } } } ```