企业失信被执行人查询 API(enterprise.dishonesty)

输入企业名称或统一社会信用代码,查询失信被执行人名单, 返回案号、执行依据文号、执行法院、执行标的、立案与发布日期、履行情况、 失信被执行人行为具体情形等信息。接口编码 enterprise.dishonesty, 仅需请求头 X-API-Key,无需签名、时间戳或加密。

0.2000 元/次 GET JSON / UTF-8 免签名 司法数据 查不到不收费

当前收费方式:PER_CALL(按次计费,0.2000 元/次)(后台「接口管理」可随时调整)

最后更新: · 接口版本 v1

接口概述

一句话说明

enterprise.dishonesty 是企业准入与风控环节最常用的一道免疫检查: 合作前查一次,能直接识别出已进入失信被执行人名单的合作方。 由于采用查得计费,查不到记录(即无失信)同样不收费, 因此可以放心把批量名单整体跑一遍。

接口规格
请求地址https://api.xujian.tech/openapi/enterprise/dishonesty
请求方式GET(keyword 放 Query String)
鉴权方式请求头 X-API-Key
接口编码enterprise.dishonesty
收费类型PER_CALL(按次计费,0.2000 元/次)
计费特殊规则 查得计费:关键词非法、上游不可用、无失信记录时返回失败且不扣费
响应格式JSON,Content-Type: application/json;charset=UTF-8
是否需要授权 否(无需授权,API Key 有效且余额充足即可调用)
关键词长度2 ~ 50 个字符
数据更新频率数据源最快当日更新、最晚七日内更新

快速开始

cURL
curl -s -G "https://api.xujian.tech/openapi/enterprise/dishonesty" \
  --data-urlencode "keyword=重庆某某建筑工程有限公司" \
  -H "X-API-Key: 你的APIKey"

判定建议

业务上请只看 disabled = 0 的记录: 0 表示当前仍有效的失信信息,1 表示已转为历史信息(如义务履行完毕后被屏蔽)。 仅凭历史记录做「一票否决」容易误伤。

请求参数

请求头(Header)
参数名类型必填说明
X-API-KeyString是开发者 API Key
业务参数(Query String)
参数名类型必填示例说明
keywordString是重庆某某建筑工程有限公司 企业全称或统一社会信用代码,长度 2 ~ 50 个字符;为空或超长返回失败且不计费

响应参数

data 字段
字段类型说明
keywordString本次查询关键词
totalint失信记录条数
listArray失信记录数组;字段见下表
apiCodeString接口编码
apiNameString接口名称
chargeTypeString计费类型
balanceBigDecimal 调用完成后(已扣费)的账户余额(元)
costMsLong本次调用耗时(毫秒)

list[] 失信记录字段

字段类型示例说明
provinceString重庆省份,反映案件管辖地域
dateString2023-05-18立案时间
docNumberString(2023)渝0113执1234号执行依据文号
finalDutyString给付申请执行标的783,500.00元生效法律文书确定的义务
executionStatusString全部未履行被执行人履行情况
caseNumberString(2023)渝0113执1234号案号
amountString783500.00执行标的(金额)
publishDateString2023-11-20发布日期
courtString重庆市巴南区人民法院执行法院全称
executionDescString有履行能力而拒不履行生效法律文书确定义务失信被执行人行为具体情形
disabledString00-当前有效信息,1-历史信息
operNameString李伦智法定代表人姓名
numberString91500113MAABRA7D0H组织机构号 / 企业标识号
exDepartmentString重庆市巴南区人民法院做出执行依据单位

响应示例

成功(命中失信记录,code = 0)

JSON
{
  "code": 0,
  "msg": "success",
  "data": {
    "keyword": "重庆某某建筑工程有限公司",
    "total": 1,
    "list": [
      {
        "province": "重庆",
        "date": "2023-05-18",
        "docNumber": "(2023)渝0113民初1234号",
        "finalDuty": "给付申请执行标的783500.00元",
        "executionStatus": "全部未履行",
        "caseNumber": "(2023)渝0113执1234号",
        "amount": "783500.00",
        "publishDate": "2023-11-20",
        "court": "重庆市巴南区人民法院",
        "executionDesc": "有履行能力而拒不履行生效法律文书确定义务",
        "disabled": "0",
        "operName": "李伦智",
        "number": "91500113MAABRA7D0H",
        "exDepartment": "重庆市巴南区人民法院"
      }
    ],
    "apiCode": "enterprise.dishonesty",
    "apiName": "企业失信被执行人查询",
    "chargeType": "PER_CALL",
    "balance": 99.8000,
    "costMs": 640
  }
}

失败(无失信记录)—— 不收费

JSON
{
  "code": 500,
  "msg": "未查询到该企业的失信被执行人记录(无记录也是一种结论),本次调用不计费",
  "data": null
}

错误码与常见失败原因

codemsg(示例)处理建议
0success调用成功
500缺少请求头 X-API-Key补充 X-API-Key
500API Key 无效 / API Key 已停用检查 Key 或重新启用
500客户不存在或已停用联系平台(可联系微信xujian_cq)
500 余额不足,请先充值。可联系微信xujian_cq 充值后重试,余额不足不扣费
500keyword 不能为空补充 keyword;不计费
500keyword 至少需要 2 个字符(建议使用企业全称或统一社会信用代码)换更准确的关键词;不计费
500keyword 长度不能超过 50 个字符缩短关键词;不计费
500未查询到该企业的失信被执行人记录(无记录也是一种结论),本次调用不计费可作为「未命中失信名单」处理;不计费
500数据服务暂时不可用(请求上游超时或网络异常),本次调用不计费稍后重试;不计费

多语言代码示例

Java(Hutool)

Java
String body = HttpRequest.get("https://api.xujian.tech/openapi/enterprise/dishonesty")
        .form("keyword", "重庆某某建筑工程有限公司")
        .header("X-API-Key", apiKey)
        .timeout(15000)
        .execute()
        .body();

JSONObject json = JSONUtil.parseObj(body);
if (json.getInt("code") != 0) {
    // 500 且 msg 含「未查询到」= 无失信记录,业务上按未命中处理
    System.out.println("未命中或服务异常:" + json.getStr("msg"));
    return;
}
JSONObject data = json.getJSONObject("data");
System.out.println("命中 " + data.getInt("total") + " 条失信记录");
data.getJSONArray("list").forEach(o -> {
    JSONObject r = (JSONObject) o;
    if ("0".equals(r.getStr("disabled"))) {
        System.out.println(r.getStr("caseNumber") + " " + r.getStr("court") + " " + r.getStr("amount"));
    }
});

Python

Python
import requests


def query_dishonesty(api_key: str, keyword: str):
    """查询失信被执行人;无记录返回空列表且不扣费"""
    resp = requests.get(
        "https://api.xujian.tech/openapi/enterprise/dishonesty",
        params={"keyword": keyword},
        headers={"X-API-Key": api_key},
        timeout=20,
    )
    result = resp.json()
    if result.get("code") != 0:
        return []          # 多为「未命中失信名单」,可安全按无记录处理
    return result["data"]["list"]


def risk_hit(api_key: str, keyword: str) -> bool:
    """只看仍然生效的失信记录"""
    return any(r.get("disabled") == "0" for r in query_dishonesty(api_key, keyword))


if __name__ == "__main__":
    print("是否命中有效失信:", risk_hit("你的APIKey", "重庆某某建筑工程有限公司"))

JavaScript(浏览器 / Node 18+)

JavaScript
const resp = await fetch(
  "https://api.xujian.tech/openapi/enterprise/dishonesty?keyword=" + encodeURIComponent("重庆某某建筑工程有限公司"),
  { headers: { "X-API-Key": API_KEY } }
);

const { code, msg, data } = await resp.json();
if (code === 0) {
  const effective = data.list.filter((r) => r.disabled === "0");
  console.log("有效失信记录:", effective.length);
} else {
  console.info("未命中失信名单(不收费):", msg);
}

常见问题(FAQ)

enterprise.dishonesty 接口怎么收费?

enterprise.dishonesty 的收费类型为 PER_CALL(按次计费),当前单价 0.2000 元/次,调用前校验余额,余额不足返回「余额不足,请先充值。可联系微信xujian_cq」且不扣费;充值可可联系微信xujian_cq。扣费金额、交易前后余额均记录于交易流水中。

查出来是空的,一定代表没有失信吗?

接口按「查得计费」设计:查不到记录时同样返回失败提示且不收费, 业务上通常可解读为「未命中失信名单」。但如果关键词不是工商登记全称, 可能只是没匹配上——建议先用 enterprise.query 校正全称后重查。

disabled 字段怎么用?

disabled 为 0 表示当前仍有效的失信信息, 1 表示已转为历史信息(如义务已履行后被屏蔽)。 做准入规则时重点看 disabled = 0 的记录,避免误伤已履约企业。

数据多久更新一次?

数据源最快当日更新、最晚七日内更新。对时效性要求高的准入场景, 建议在签署关键合同或放款前重查一次。

可以查自然人吗?

当前接口按企业名称匹配失信名单。若要核验法定代表人个人的失信情况, 建议结合 enterprise.detail 返回的法人信息做交叉判断,但对个人的失信查询请另行确认产品支持范围。

批量核验成本怎么控制?

因「查不到不收费」,干净名单的核验成本极低;建议本地缓存历史结论 (建议 7 天内复用),控制并发即可。

调用需要签名或加密吗?

不需要。XAPI 的接口仅校验请求头 X-API-Key,不做签名、时间戳或加密。

扫码添加微信
联系作者 · 微信二维码

微信号:xujian_cq

接口对接、充值 / 授权、定制需求都可以直接聊