内臓脂肪の蓄積に着目し心血管疾患などの発症予防を目的として作成されたメタボリックシンドロームは、内臓脂肪の蓄積に加えて、複数の生活習慣病のリスク要因を併せ持つ状態を指します。内臓脂肪の蓄積とリスクの重なりを判定し、メタボ該当および予備群該当の判定をするものです。
概要
利用対象・利用前提:
成人(16歳以上)
算出元データ:
shg_metabo_step1(メタボ判定の内臓脂肪蓄積部分(特定保健指導)) shg_metabo_bg(メタボ判定の血糖部分(特定保健指導)) shg_metabo_fat(メタボ判定の脂質部分(特定保健指導)) shg_metabo_bp(メタボ判定の血圧部分(特定保健指導))
※他のノードのデータで代用可能な場合があります。上記の算出元ノードから遡って確認できます。
エビデンス・出典:
メタボリックシンドローム診断基準
※本ノードの判定基準は、上記ガイドラインなど公的資料に基づいて作成しておりますが、すべての個別条件を反映できるものではありません。
APIリファレンス:
リクエスト例
https://myw-api.wellcle.com/inout/{ノード ID}/
| メソッド | リクエスト URL | 備考 |
|---|---|---|
| POST | https://myw-api.wellcle.com/inout/shg_metabo_level/ | httpsのみ有効 |
| キー | 値 | 備考 |
|---|---|---|
| Content-Type | application/json | - |
| X-Wellcleapi-Key | {API キー} | {API キー}は、利用登録後に提供するキーを使用する。 |
パラメータ構造
リクエストのボディー部に、JSON形式で下記例のようにphdパラメータを渡す。
phdパラメータは、配列オブジェクトとして、健診データなどの各種データを設定して渡す。
本来数値であるデータ含め、全て文字列データ(JSON においてダブルクォーテーションで囲む)として渡す。
例:BMIノード
{
"phd":{
"height":"171.2",
"weight":"93.4"
}
}
phdパラメータ(メタボリックシンドローム判定(特定保健指導)ノード)
| パラメータ | 型 | 内容 | 有効値範囲 |
|---|---|---|---|
| shg_metabo_level | string | メタボリックシンドローム判定(特定保健指導) - 1: 基準該当 - 2: 予備群該当 - 3: 非該当 - 4: 判定不能 | - |
| vfat | number | 内臓脂肪面積 | min: 0 ~ max: 999.9 |
| waist | number | 腹囲 | min: 0 ~ max: 999.9 |
| sex | string | 性別 - 1: 男 - 2: 女 | - |
| waist_actual | number | 腹囲(実測) | min: 0 ~ max: 999.9 |
| waist_selfassess | number | 腹囲(自己測定) | min: 0 ~ max: 999.9 |
| waist_selfreport | number | 腹囲(自己申告) | min: 0 ~ max: 999.9 |
| bmi | number | BMI | min: 0 ~ max: 99.9 |
| height | number | 身長 | min: 0 ~ max: 999.9 |
| weight | number | 体重 | min: 0 ~ max: 999.9 |
| fbg | integer | 空腹時血糖 | min: 0 ~ max: 9999 |
| hba1c | number | HbA1c | min: 0 ~ max: 99.9 |
| qsn_medicine_bg | string | 服薬2(血糖) - 1: 服薬あり - 2: 服薬なし | - |
| fnfat | integer | 空腹時中性脂肪 | min: 0 ~ max: 99999 |
| cnfat | integer | 随時中性脂肪 | min: 0 ~ max: 99999 |
| hdl | integer | HDLコレステロール | min: 0 ~ max: 99999 |
| qsn_medicine_fat | string | 服薬3(脂質) - 1: 服薬あり - 2: 服薬なし | - |
| sbp | integer | 収縮期血圧 | min: 0 ~ max: 999 |
| dbp | integer | 拡張期血圧 | min: 0 ~ max: 999 |
| qsn_medicine_bp | string | 服薬1(血圧) - 1: 服薬あり - 2: 服薬なし | - |
レスポンスパラメータ
| パラメータ | 内容 |
|---|---|
| node | ノードID |
| name | ノード名 |
| status | ステータスコード(下表参照) |
| msg | メッセージ |
| value | 結果値 |
| base | 当該健康情報を算出するにあたり元となった健康情報・健診データのレスポンスを配列で出力する。 ※当該レスポンスを base パラメーター内で再帰的に出力する。 |
上記以外に健康情報に付属する解説等を出力する場合があります。
ステータスコード
| httpステータス | ステータスコード(status) | 内容 |
|---|---|---|
| 200 | 1 | 正常 |
| 220 | 2 | ワーニング (結果値を出力したが注釈がある) |
| 430 | 3 | 通常エラー (結果値を出力するための計算に失敗した) |
| 440 | 4 | 設定エラー (リクエスト時のAPIキーの不整合やroleパラメーターの誤り等) |
| 450 | 5 | 内部エラー (システム内部の問題が発生した) |
上記以外に、200番台、400番台における標準的なhttpステータスコードを出力する場合があります。
{
"openapi": "3.1.0",
"info": {
"title": "WellcleAPI",
"description": "健診結果から健康情報を提供するAPI",
"version": "v1.1"
},
"servers": [
{
"url": "https://myw-api.wellcle.com"
}
],
"paths": {
"/inout/shg_metabo_level/": {
"post": {
"summary": "shg_metabo_levelノードを実行し、算出結果を返す",
"operationId": "shg_metabo_level",
"requestBody": {
"content": {
"application/json": {
"schema": {
"type": "object",
"properties": {
"role": {
"type": "object",
"description": "ロール情報",
"properties": {
"revision": {
"type": "string",
"enum": [
"2"
],
"description": "リビジョン指定"
},
"mode": {
"type": "string",
"enum": [
"1"
],
"description": "選択肢のコード指定\n- 0: 自動判定\n- 1: コード指定"
}
},
"additionalProperties": true
},
"phd": {
"type": "object",
"description": "PHR",
"properties": {
"shg_metabo_level": {
"type": "string",
"enum": [
"",
"1",
"2",
"3",
"4"
],
"description": "メタボリックシンドローム判定(特定保健指導)\n- 1: 基準該当\n- 2: 予備群該当\n- 3: 非該当\n- 4: 判定不能"
},
"vfat": {
"type": "number",
"minimum": 0,
"maximum": 999.9,
"description": "内臓脂肪面積"
},
"waist": {
"type": "number",
"minimum": 0,
"maximum": 999.9,
"description": "腹囲"
},
"sex": {
"type": "string",
"enum": [
"",
"1",
"2"
],
"description": "性別\n- 1: 男\n- 2: 女"
},
"waist_actual": {
"type": "number",
"minimum": 0,
"maximum": 999.9,
"description": "腹囲(実測)"
},
"waist_selfassess": {
"type": "number",
"minimum": 0,
"maximum": 999.9,
"description": "腹囲(自己測定)"
},
"waist_selfreport": {
"type": "number",
"minimum": 0,
"maximum": 999.9,
"description": "腹囲(自己申告)"
},
"bmi": {
"type": "number",
"minimum": 0,
"maximum": 99.9,
"description": "BMI"
},
"height": {
"type": "number",
"minimum": 0,
"maximum": 999.9,
"description": "身長"
},
"weight": {
"type": "number",
"minimum": 0,
"maximum": 999.9,
"description": "体重"
},
"fbg": {
"type": "integer",
"minimum": 0,
"maximum": 9999,
"description": "空腹時血糖"
},
"hba1c": {
"type": "number",
"minimum": 0,
"maximum": 99.9,
"description": "HbA1c"
},
"qsn_medicine_bg": {
"type": "string",
"enum": [
"",
"1",
"2"
],
"description": "服薬2(血糖)\n- 1: 服薬あり\n- 2: 服薬なし"
},
"fnfat": {
"type": "integer",
"minimum": 0,
"maximum": 99999,
"description": "空腹時中性脂肪"
},
"cnfat": {
"type": "integer",
"minimum": 0,
"maximum": 99999,
"description": "随時中性脂肪"
},
"hdl": {
"type": "integer",
"minimum": 0,
"maximum": 99999,
"description": "HDLコレステロール"
},
"qsn_medicine_fat": {
"type": "string",
"enum": [
"",
"1",
"2"
],
"description": "服薬3(脂質)\n- 1: 服薬あり\n- 2: 服薬なし"
},
"sbp": {
"type": "integer",
"minimum": 0,
"maximum": 999,
"description": "収縮期血圧"
},
"dbp": {
"type": "integer",
"minimum": 0,
"maximum": 999,
"description": "拡張期血圧"
},
"qsn_medicine_bp": {
"type": "string",
"enum": [
"",
"1",
"2"
],
"description": "服薬1(血圧)\n- 1: 服薬あり\n- 2: 服薬なし"
}
},
"additionalProperties": true
}
},
"required": [
"phd"
]
}
}
}
},
"responses": {
"200": {
"description": "正常",
"content": {
"application/json": {
"schema": {
"type": "object",
"properties": {
"status": {
"type": "integer",
"enum": [
1,
2
],
"description": "出力ステータス\n- 1: 正常\n- 2: 正常(注釈あり)"
},
"value": {
"type": "string",
"description": "結果値"
},
"url": {
"type": "string",
"description": "結果URL"
},
"msg": {
"type": "string",
"description": "メッセージ"
},
"validation": {
"type": "array",
"items": {
"type": "object",
"properties": {
"node": {
"type": "string"
},
"status": {
"type": "integer",
"enum": [
1,
2,
3,
4,
5
],
"description": "入力ステータス\n- 1: 正常\n- 2: 正常(注釈あり)\n- 3: 入力エラー\n- 4: 設定エラー\n- 5: 内部エラー"
},
"msg": {
"type": "string",
"description": "メッセージ"
}
},
"description": "入力値判定"
}
}
},
"required": [
"status"
],
"additionalProperties": true
}
}
}
},
"422": {
"description": "算出エラー",
"content": {
"application/json": {
"schema": {
"type": "object",
"properties": {
"status": {
"type": "integer",
"enum": [
3
],
"description": "出力ステータス\n- 3: 算出エラー"
},
"msg": {
"type": "string",
"description": "メッセージ"
},
"validation": {
"type": "array",
"items": {
"type": "object",
"properties": {
"node": {
"type": "string"
},
"status": {
"type": "integer",
"enum": [
1,
2,
3,
4,
5
],
"description": "入力ステータス\n- 1: 正常\n- 2: 正常(注釈あり)\n- 3: 入力エラー\n- 4: 設定エラー\n- 5: 内部エラー"
},
"msg": {
"type": "string",
"description": "メッセージ"
}
},
"description": "入力値判定"
}
}
},
"required": [
"status"
],
"additionalProperties": true
}
}
}
},
"400": {
"description": "設定エラー",
"content": {
"application/json": {
"schema": {
"type": "object",
"properties": {
"status": {
"type": "integer",
"enum": [
4
],
"description": "出力ステータス\n- 4: 設定エラー"
},
"msg": {
"type": "string",
"description": "メッセージ"
},
"validation": {
"type": "array",
"items": {
"type": "object",
"properties": {
"node": {
"type": "string"
},
"status": {
"type": "integer",
"enum": [
1,
2,
3,
4,
5
],
"description": "入力ステータス\n- 1: 正常\n- 2: 正常(注釈あり)\n- 3: 入力エラー\n- 4: 設定エラー\n- 5: 内部エラー"
},
"msg": {
"type": "string",
"description": "メッセージ"
}
},
"description": "入力値判定"
}
}
},
"required": [
"status"
],
"additionalProperties": true
}
}
}
},
"500": {
"description": "内部エラー",
"content": {
"application/json": {
"schema": {
"type": "object",
"properties": {
"status": {
"type": "integer",
"enum": [
5
],
"description": "出力ステータス\n- 5: 内部エラー"
},
"msg": {
"type": "string",
"description": "メッセージ"
},
"validation": {
"type": "array",
"items": {
"type": "object",
"properties": {
"node": {
"type": "string"
},
"status": {
"type": "integer",
"enum": [
1,
2,
3,
4,
5
],
"description": "入力ステータス\n- 1: 正常\n- 2: 正常(注釈あり)\n- 3: 入力エラー\n- 4: 設定エラー\n- 5: 内部エラー"
},
"msg": {
"type": "string",
"description": "メッセージ"
}
},
"description": "入力値判定"
}
}
},
"required": [
"status"
],
"additionalProperties": true
}
}
}
}
}
}
}
}
}