/ocr/medical/v2/medical_detail
1.接口描述
该 API 用于识别提取医疗费用清单上的文字信息。
- 图片要求:
- 格式为 JPG(JPEG), PNG
- 宽和高大于 128px, 小于等于 6000px
- 小于等于 5 MB
请求方式
POST
https://cloudapi.deepfinch.com/ocr/medical/v2/medical_detail/basic
调试工具
Debugging Tool
2.请求参数
2.1 请求头域
| 字段 |
类型 |
必需 |
描述 |
| X-DF-API-ID |
string |
是 |
API调用凭证信息,详细信息请参考API调用 |
| X-DF-API-SECRET |
string |
是 |
API调用凭证信息,详细信息请参考API调用 |
2.2 请求体
| 字段 |
类型 |
必需 |
描述 |
| file |
file |
见下方注释 |
需上传的图片文件,上传本地图片进行检测时选取此参数 |
| url |
string |
见下方注释 |
图片网络地址,采用抓取网络图片方式时需选取此参数 |
| org_code |
string |
否 |
组织机构代码;填写机构代码可查询该机构码对应城市医保库,如匹配到,则返回自付比例数据;如不填写则默认查询国家甲类药品医保库;机构代码与城市对应表 见下方 |
| auto_rotate |
boolean |
否 |
是否开启图片自动旋转, 默认:false |
请求参数 file 与 url 二选一。
url 中若含有特殊字符,则需要对这些字符进行转义,所有中文和特殊字符必需以UTF-8编码转义。
目前支持 http/https 协议的网络地址。下载限时 5s,超时后仍未下载完成则属于失败。
参数 file 需把图片文件以 multipart/form-data 的形式放到 POST 消息体中。
组织机构代码取值范围:
*当前仅支持查询山东和广东医保库
| 城市 |
组织机构 |
| 潍坊市 |
863401 |
| 枣庄市 |
860612 |
| 烟台市 |
860603 |
| 济南市 |
860601 |
| 泰安市 |
860605 |
| 日照市 |
860613 |
| 临沂市 |
860609 |
| 济宁市 |
860604 |
| 聊城市 |
860610 |
| 菏泽市 |
860614 |
| 德州市 |
860602 |
| 淄博市 |
860608 |
| 东营市 |
860607 |
| 威海市 |
860611 |
| 青岛市 |
862001 |
| 广州市 |
860501 |
| 惠州市 |
860502 |
| 茂名市 |
860503 |
| 江门市 |
860504 |
| 东莞市 |
860505 |
| 佛山市 |
860506 |
| 湛江市 |
860507 |
| 汕头市 |
860508 |
| 潮州市 |
860509 |
| 阳江市 |
860510 |
| 珠海市 |
860511 |
| 梅州市 |
860512 |
| 中山市 |
860513 |
| 揭阳市 |
860514 |
| 深圳市 |
861901 |
3.返回参数
| 字段 |
类型 |
说明 |
| request_id |
string |
本次请求的id |
| status |
string |
状态,正常为 OK |
| degree |
int |
图片旋转角度 |
| medical_result |
object |
票据信息提取结果 |
3.1 medical_result 字段的参数:
| 字段 |
类型 |
说明 |
| note_title |
string |
票据标题 |
| patient_name |
string |
患者姓名 |
| patient_gender |
int |
性别:0-未知,1-男, 2-女 |
| hospital_name |
string |
医院名称 |
| start_hospital_date |
string |
入院日期 |
| end_hospital_date |
string |
出院日期 |
| hospital_days |
float |
住院天数 |
| total_cost |
float |
总金额 |
| cost_detail_list |
array |
细类项目 |
3.1.2 cost_detail_list 字段的参数:
| 字段 |
类型 |
说明 |
| ocr_name |
string |
细目名称,基于票面名称拆解后细目名称,建议细目名称用此条 |
| cost |
float |
细目金额 |
| amount |
float |
细目数量 |
| unit_price |
float |
细目单价 |
| spec |
string |
规格 |
| unit |
string |
单位 |
| medical_level |
string |
医保等级,根据票面内容提取 |
| selfpay_ratio |
float |
自付比例,取值范围:[0-1],从票面提取 |
| selfpay |
float |
自付金额,从票面提取或通过细目金额 * 自付比例计算 |
| medical_type |
int |
项目类型:0-未知,1-西药,2-中药,3-诊疗项目 |
| class |
string |
细目所属大类,根据票面内容提取 |
| item_coding |
string |
项目编码,根据票面内容提取 |
| origin_ocr_name |
string |
票面上原始打印的细目名称 |
| name |
string |
通过细目名称匹配的医保库名称 |
| check_amount_unitprice_cost |
int |
细目校验规则:单价(unit_price)*数量(amount)=金额(cost),1-成立,0-不成立,-1-缺失规则字段 |
返回结果示例
{
"degree": 0,
"medical_result": {
"cost_detail_list": [
{
"amount": 2,
"class": null,
"cost": null,
"item_coding": "330100015a",
"medical_level": null,
"medical_type": null,
"name": null,
"ocr_name": "麻醉中监测",
"origin_ocr_name": "麻醉中监测",
"selfpay": null,
"selfpay_ratio": null,
"spec": null,
"unit": "小时",
"unit_price": 55
},
{
"amount": 2,
"class": null,
"cost": null,
"item_coding": "330100015b",
"medical_level": null,
"medical_type": null,
"name": null,
"ocr_name": "麻醉中监测(脑电双谱指数)",
"origin_ocr_name": "麻醉中监测(脑电双谱指数)",
"selfpay": null,
"selfpay_ratio": null,
"spec": null,
"unit": "次",
"unit_price": 70
},
{
"amount": 1,
"class": null,
"cost": null,
"item_coding": "330100016",
"medical_level": null,
"medical_type": null,
"name": null,
"ocr_name": "控制性降压",
"origin_ocr_name": "控制性降压",
"selfpay": null,
"selfpay_ratio": null,
"spec": null,
"unit": "次",
"unit_price": 80
},
{
"amount": 5.5,
"class": null,
"cost": null,
"item_coding": "88",
"medical_level": null,
"medical_type": null,
"name": null,
"ocr_name": "伙食费",
"origin_ocr_name": "伙食费",
"selfpay": null,
"selfpay_ratio": null,
"spec": null,
"unit": "日",
"unit_price": 20
},
{
"amount": 5.5,
"class": null,
"cost": null,
"item_coding": "110200005c",
"medical_level": null,
"medical_type": null,
"name": null,
"ocr_name": "诊查费",
"origin_ocr_name": "诊查费",
"selfpay": null,
"selfpay_ratio": null,
"spec": null,
"unit": "日",
"unit_price": 50
}
],
"end_hospital_date": null,
"hospital_days": null,
"hospital_name": "XXX人民医院",
"note_title": null,
"patient_gender":1,
"patient_name": "XXX",
"start_hospital_date": null,
"total_cost": null
},
"status": "OK"
}
4.错误码
| 状态码 |
status 字段 |
说明 |
400 |
INVALID_ARGUMENT |
请求参数错误 |
400 |
DETETION_FAILED |
图片检测失败 |
400 |
DOWNLOAD_ERROR |
网络地址图片获取失败 |
401 |
UNAUTHORIZED |
未授权或授权失败 |
401 |
KEY_EXPIRED |
账号过期 |
403 |
NO_PERMISSION |
无调用权限 |
403 |
OUT_OF_QUOTA |
调用次数超出限额 |
403 |
RATE_LIMIT_EXCEEDED |
调用频率超出限额 |
404 |
NOT_FOUND |
请求路径错误 |
500 |
INTERNAL_ERROR |
服务器内部错误 |
备注: 以上40X系列错误描述请参考reason字段
输出样例
{
"status": "INVALID_ARGUMENT",
"reason": "must specify 'file' or 'url' argument",
"request_id": "TID8bf47ab6eda64476973cc5f5b6ebf57e"
}
5.输入示例