腎臓の働き(ろ過能力)の指標であるeGFR (estimated Glomerular Filtration Rate:推算糸球体濾過量) を、値により6区分にするものです。区分はG1(正常または高値)、G2、G3atoG3b、G4、G5(高度低下~末期腎不全)に分けられ、GFR区分としています。
判定
egfr判定
ノード: egfr_level
概要
禁忌・注意:
慢性腎臓病(CKD)は、eGFRによる腎機能の判定と、蛋白尿や画像の異常など腎障害を示唆する所見が3か月以上継続する状態と定義されています。腎機能の評価は、GFR区分単独だけではなく、経時的な観察および尿所見と合わせて評価する必要があります。腎機能は加齢とともに低下するため、GFR区分により専門医療機関を紹介するかどうかは年齢により値が異なります。
利用対象・利用前提:
成人(18歳以上)
算出元データ:
※他のノードのデータで代用可能な場合があります。上記の算出元ノードから遡って確認できます。
算出規則:
・egfrが15未満の場合は、9を返却します。
・egfrが15以上30未満の場合は、8を返却します。
・egfrが30以上45未満の場合は、7を返却します。
・egfrが45以上60未満の場合は、4を返却します。
・egfrが60以上90未満の場合は、2を返却します。
・egfrが90以上の場合は、1を返却します。
・egfrが無い場合は、エラーとなります。
・egfrが15以上30未満の場合は、8を返却します。
・egfrが30以上45未満の場合は、7を返却します。
・egfrが45以上60未満の場合は、4を返却します。
・egfrが60以上90未満の場合は、2を返却します。
・egfrが90以上の場合は、1を返却します。
・egfrが無い場合は、エラーとなります。
エビデンス・出典:
CKD診療ガイド2024
※本ノードの判定基準は、上記ガイドラインなど公的資料に基づいて作成しておりますが、すべての個別条件を反映できるものではありません。
APIリファレンス:
リクエスト例
https://myw-api.wellcle.com/inout/{ノード ID}/
| メソッド | リクエスト URL | 備考 |
|---|---|---|
| POST | https://myw-api.wellcle.com/inout/egfr_level/ | httpsのみ有効 |
| キー | 値 | 備考 |
|---|---|---|
| Content-Type | application/json | - |
| X-Wellcleapi-Key | {API キー} | {API キー}は、利用登録後に提供するキーを使用する。 |
パラメータ構造
リクエストのボディー部に、JSON形式で下記例のようにphdパラメータを渡す。
phdパラメータは、配列オブジェクトとして、健診データなどの各種データを設定して渡す。
本来数値であるデータ含め、全て文字列データ(JSON においてダブルクォーテーションで囲む)として渡す。
例:BMIノード
{
"phd":{
"height":"171.2",
"weight":"93.4"
}
}
phdパラメータ(egfr判定ノード)
| パラメータ | 型 | 内容 | 有効値範囲 |
|---|---|---|---|
| egfr | number | eGFR | min: 0 ~ max: 999.9 |
レスポンスパラメータ
| パラメータ | 内容 |
|---|---|
| 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/egfr_level/": {
"post": {
"summary": "egfr_levelノードを実行し、算出結果を返す",
"operationId": "egfr_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": {
"egfr": {
"type": "number",
"minimum": 0,
"maximum": 999.9,
"description": "eGFR"
}
},
"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
}
}
}
}
}
}
}
}
}