📡 百川条码查询 API 使用说明
接口概述
本API提供商品条码、图书ISBN和UDI医疗器械条码查询功能。支持13位商品条码如6978730640985、13位ISBN图书条码如9787122107985、UDI医疗器械唯一标识如0106953122702434的查询。通过三合一的API接口,您可以快速查询产品信息,并按套餐内查询量扣减使用次数。
💡 使用前提:您需要先在用户中心购买API套餐,获取API Key和Secret Key后方可使用本接口。
请求地址
https://tiaoma.cnaidc.com/api/api_query.php?api_key=***&secret_key=***&code_sn=**
请求方式
支持 GET 和 POST 两种请求方式
请求参数
| 参数名 | 类型 | 必填 | 说明 |
|---|---|---|---|
api_key |
string | 是 | 您的API Key,从用户中心API服务页面获取 |
secret_key |
string | 是 | 您的Secret Key,从用户中心API服务页面获取 |
code_sn |
string | 是 | 要查询的条形码号码,支持: • EAN-13(如:6974382527285) • ISBN-13图书条码(9787542687050) • UDI医疗器械唯一标识(如 (01)06953010988667或 14位纯数字无括号的产品标识) • MA码(如:MA.156.M0.100127.00002749) |
响应参数
| 参数名 | 说明 |
|---|---|
code |
状态码,1 表示成功,0 表示失败 |
msg |
返回信息,描述请求结果 |
data |
查询到的产品信息对象(查询成功时返回),包含以下公共字段: • code_sn - 查询的条码/UDI码• code_type - 类型(EAN-13/EAN-8/图书/UDI)• code_name - 产品/图书/医疗器械名称• code_company - 厂商/出版社/企业名称 |
UDI响应字段详解
当 code_type 为 UDI 时,data 中包含以下分组对象:
1. 产品信息 (product_info)
| 字段名 | 说明 |
|---|---|
udi | 产品标识(14位数字) |
cpbc | 产品标识(DI) |
cpmc | 产品名称 |
spmc | 商品名称 |
ggxh | 规格型号 |
cphhhbh | 产品注册号/备案号 |
cpms | 产品描述 |
zcbazh | 注册/备案证号 |
ylqxgllb | 医疗器械管理类别(第一类/第二类/第三类) |
ylqxwybsbmtxmc | 编码体系名称(如GS1) |
flbm | 分类编码 |
yflbm | 原分类编码 |
yflbm_name | 原分类编码名称 |
cplb | 产品类别 |
qxlb | 器械类别 |
zcrbar | 医疗器械注册备案人名称 |
ybbm | 医保编码 |
sfbjwycxsy | 是否体外诊断试剂(0=否,1=是) |
sfbjwycxsy_text | 是否体外诊断试剂(中文文本) |
zdcfsycs | 最大使用次数 |
sfwwjbz | 是否无菌包装(0=否,1=是) |
sfwwjbz_text | 是否无菌包装(中文文本) |
syqsfxyjxmj | 使用前是否需要灭菌(0=否,1=是) |
syqsfxyjxmj_text | 使用前是否需要灭菌(中文文本) |
mjfs | 灭菌方式 |
cgzmraqxgxx | 磁共振安全信息(0=MR安全,1=MR条件安全,2=MR不安全,3=无信息) |
cgzmraqxgxx_text | 磁共振安全信息(中文文本) |
tscchcztj | 特殊储存条件 |
tsccsm | 特殊说明 |
dversion | 标识更新日期 |
bszt | 标识载体 |
cpbsfbrq | 产品标识发布日期 |
zxxsdycpbs | 最小销售单元产品标识 |
2. 包装标识信息 (packaging_info)
| 字段名 | 说明 |
|---|---|
bz1_jb | 包装1级别 |
bz1_cpbs | 包装1产品标识 |
bz1_sl | 包装1内数量 |
bz1_xjycpbs | 包装1下级包装产品标识 |
bz2_jb | 包装2级别 |
bz2_cpbs | 包装2产品标识 |
bz2_sl | 包装2内数量 |
bz2_xjycpbs | 包装2下级包装产品标识 |
bz3_jb | 包装3级别 |
bz3_cpbs | 包装3产品标识 |
bz3_sl | 包装3内数量 |
bz3_xjycpbs | 包装3下级包装产品标识 |
3. 企业信息 (enterprise_info)
| 字段名 | 说明 |
|---|---|
qymc | 企业名称 |
zcqylx | 注册企业类型 |
tyshxydm | 统一社会信用代码 |
响应示例
查询成功
{
"code": 1,
"msg": "查询成功",
"data": {
"code_sn": "6901234567890",
"code_name": "产品名称",
"code_type": "EAN-13",
"code_company": "xxx公司",
"code_price": "29.90",
"code_spec": "500g",
"code_unit": "克",
"code_pinpai": "品牌名称",
"code_country": "中国"
"code_img": "https://example.com/img.jpg"
}
}
条码不存在(返回国家信息)
{
"code": 0,
"msg": "未找到该条形码对应的产品信息",
"data": {
"country": "中国"
}
}
余额不足
{
"code": 0,
"msg": "套餐查询次数已用完"
}
API Key错误
{
"code": 0,
"msg": "API Key或Secret Key错误"
}
UDI医疗器械查询成功
{
"code": 1,
"msg": "查询成功",
"data": {
"code_sn": "(01)06953010988667(11)260509",
"code_type": "UDI",
"code_name": "一次性使用无菌注射器",
"code_company": "某医疗器械有限公司",
"product_info": {
"udi": "06953010988667",
"cpbc": "06953010988667",
"cpmc": "一次性使用无菌注射器",
"spmc": "一次性使用无菌注射器",
"ggxh": "5ml",
"cphhhbh": "国械注准20203150123",
"cpms": "用于注射药物",
"zcbazh": "国械注准20203150123",
"ylqxgllb": "第三类",
"ylqxwybsbmtxmc": "GS1",
"flbm": "6815",
"yflbm": "6815",
"yflbm_name": "注射穿刺器械",
"cplb": "无源医疗器械",
"qxlb": "一次性使用",
"zcrbar": "某医疗器械有限公司",
"ybbm": "681500001",
"sfbjwycxsy": 0,
"sfbjwycxsy_text": "否",
"zdcfsycs": null,
"sfwwjbz": 1,
"sfwwjbz_text": "是",
"syqsfxyjxmj": 0,
"syqsfxyjxmj_text": "否",
"mjfs": "环氧乙烷灭菌",
"cgzmraqxgxx": 0,
"cgzmraqxgxx_text": "MR安全",
"tscchcztj": "",
"tsccsm": "",
"dversion": "2021-07-14",
"bszt": "标签",
"status": "有效",
"cpbsfbrq": "2024-01-01",
"zxxsdycpbs": "06953010988667"
},
"packaging_info": {
"bz1_jb": "最小销售包装",
"bz1_cpbs": "(01)06953010988667",
"bz1_sl": "1",
"bz1_xjycpbs": "",
"bz2_jb": "中包装",
"bz2_cpbs": "(01)06953010988668",
"bz2_sl": "10",
"bz2_xjycpbs": "(01)06953010988667",
"bz3_jb": "运输包装",
"bz3_cpbs": "(01)06953010988669",
"bz3_sl": "100",
"bz3_xjycpbs": "(01)06953010988668"
},
"enterprise_info": {
"qymc": "某医疗器械有限公司",
"zcqylx": "有限责任公司",
"tyshxydm": "911100001234567890"
},
"source": "local"
}
}
UDI医疗器械不存在
{
"code": 0,
"msg": "未找到该UDI对应的医疗器械信息",
"data": {
"type": "udi"
}
}
代码示例
PHP 示例
$url = 'https://tiaoma.cnaidc.com/api/api_query.php';
$data = [
'api_key' => '您的API Key',
'secret_key' => '您的Secret Key',
'code_sn' => '6901234567890'
];
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_POST, true);
curl_setopt($ch, CURLOPT_POSTFIELDS, http_build_query($data));
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
$response = curl_exec($ch);
curl_close($ch);
$result = json_decode($response, true);
if ($result['code'] == 1) {
echo "产品名称:" . $result['data']['code_name'];
echo "品牌:" . $result['data']['code_pinpai'];
echo "价格:" . $result['data']['code_price'];
} else {
echo "查询失败:" . $result['msg'];
}
Python 示例
import requests
url = 'https://tiaoma.cnaidc.com/api/api_query.php'
data = {
'api_key': '您的API Key',
'secret_key': '您的Secret Key',
'code_sn': '6901234567890'
}
response = requests.post(url, data=data)
result = response.json()
if result['code'] == 1:
print(f"产品名称:{result['data']['code_name']}")
print(f"品牌:{result['data']['code_pinpai']}")
print(f"价格:{result['data']['code_price']}")
else:
print(f"查询失败:{result['msg']}")
JavaScript (jQuery) 示例
$.ajax({
url: 'https://tiaoma.cnaidc.com/api/api_query.php',
type: 'POST',
data: {
api_key: '您的API Key',
secret_key: '您的Secret Key',
code_sn: '6901234567890'
},
success: function(result) {
if (result.code == 1) {
console.log('产品名称:' + result.data.code_name);
console.log('品牌:' + result.data.code_pinpai);
console.log('价格:' + result.data.code_price);
} else {
console.log('查询失败:' + result.msg);
}
}
});
JavaScript (Fetch) 示例
const response = await fetch('https://tiaoma.cnaidc.com/api/api_query.php', {
method: 'POST',
headers: {
'Content-Type': 'application/x-www-form-urlencoded',
},
body: new URLSearchParams({
api_key: '您的API Key',
secret_key: '您的Secret Key',
code_sn: '6901234567890'
})
});
const result = await response.json();
if (result.code == 1) {
console.log('产品名称:' + result.data.code_name);
} else {
console.log('查询失败:' + result.msg);
}
错误码说明
| 错误信息 | 说明 |
|---|---|
参数不完整 |
缺少必填参数 api_key、secret_key 或 code_sn |
API Key或Secret Key错误 |
密钥验证失败,请检查Key是否正确 |
API Key已被禁用 |
您的API Key已被管理员禁用 |
无可用的套餐 |
您还没有购买套餐或套餐已过期 |
套餐查询次数已用完 |
当前套餐的总查询次数已用完,请购买新套餐 |
今日查询次数已用完 |
今日查询次数已达上限,请明天再试 |
注意事项
- 请妥善保管您的
api_key和secret_key,不要泄露给他人 - API采用按套餐扣量模式,按提交的号码数量扣减次数
- 支持 EAN-(13位)格式的商品条码
- 支持 ISBN-13 格式的图书条码
- 支持 UDI 医疗器械唯一标识,格式如
(01)06953010988667或14位纯数字产品标识 - 支持 MA码 MA.156.M0.100525.077M6VN1
- 部分条码可能不存在于数据库中,返回时会附带条码前缀对应的国家信息
- 查询频率建议控制在合理范围内,避免触发风控
⚠️ 免责声明:本API仅提供已有的商品条码、图书ISBN和UDI医疗器械唯一标识信息查询服务,不对查询结果的准确性做任何承诺。如有疑问,请联系管理员。
获取API Key
如果您还没有API Key,请按以下步骤操作:
- 注册并登录商品条码查询系统
- 进入 用户中心 → API服务
- 创建API Key并购买相应的查询套餐
- 购买后联系管理员启用套餐