企业年报详情

根据企业名称、社会统一信用代码查询企业年报信息,返回年报详情,包括企业基本信息如企业名称、电话、地址、经营状态等;企业资产状况,对外投资信息,股东发起人出资信息,对外担保信息,股权变更信息,网站信息,社保信息等。

  • 企业实名
  • 低延迟
  • 免费试用 5 次

个人用户无法使用该接口,需完成企业认证

官网购买的套餐通过API调用时请使用“扣套餐次数”密钥进行调用

请求地址

GEThttps://api.shuxuntech.com/v1/enterprise_report/query

  • x-www-form-urlencoded
  • 200ms
  • 99.9%

¥0.16元 / 次

阶梯计价,用量越大单价越低

企业认证后额外赠送 666 次调用额度

01 — 接口说明

请求参数与返回结果

所有请求需在 header 中携带签名信息,body 参数按 x-www-form-urlencoded 提交

名称位置类型必填说明
appKeyheadstring是数勋分配appKey
timestampheadstring是当前时间的毫秒数
signheadstring是签名,说明
keywordquerystring是企业名称或统一社会信用代码或注册号

签名算法说明

数勋分配的appKey、当前unix时间毫秒数timestamp、数勋分配的appSecret、 按顺序拼接sha256加密得到sign,查看如下示例

appKey = aaa;timestamp = 1682476904289;appSecret = bbb;sign = sha256(appKey+timestamp+appSecret)

02 — 返回说明

返回结构与字段含义

顶层返回 code 与 msg,业务数据在 data 对象内,各字段含义见下方表格

返回字段描述

字段名类型描述
codestring错误码
msgstring错误描述
isFeeint是否计费(1:计费,0:不计费)
seqNostring调用流水号
dataobject返回数据

data对象说明

字段名类型描述
totalint总年报记录数
itemsarray记录列表详情

items对象说明

字段名类型描述
yearstring报送年度
hasDetailInfoboolean是否有详细信息
publishDatestring发布日期
basicInfoDataobject企业基本信息
changeListarray修改记录
investInfoListarray对外投资信息
partnerListarray股东(发起人)及出资信息
provideAssuranceListarray对外提供保证担保信息
stockChangeListarray股权变更信息
webSiteListarray网站或网店信息
assetsDataobject企业资产状况信息
socialSecurityarray社保信息

provideAssuranceList对外提供保证担保信息

字段名类型描述
assuranceDurnstring保证的期间
assuranceTypestring保证的方式
assuranceScopestring保证担保的范围
creditorstring债权人
debtorstring债务人
creditorCategorystring主债权种类
creditorAmountstring主债权数额
fulfillObligationstring履行债务的期限

stockChangeList股权变更信息

字段名类型描述
afterstring变更后股权比例
changeDatestring股权变更日期
namestring股东
beforestring变更前股权比例

socialSecurity社保信息

字段名类型描述
insuranceNamestring保险种类、名称
insuranceBasestring保险缴费基数
insuranceRealCapitalstring实际缴费金额
insuranceArrearagestring累计欠缴金额
insuranceAmountstring参保人数

webSiteList网站信息

字段名类型描述
typestring网站类型
namestring名称
webSitestring网址

basicInfoData企业基本信息

字段名类型描述
hasProvideAssurancestring是否有对外担保信息
operationPlacesstring经营场所
mainTypestring主体类型
regNostring注册号
companyNamestring企业名称
operatorNamestring经营者姓名
contactNostring企业联系电话
postCodestring邮政编码
addressstring企业通信地址
emailAddressstring电子邮箱
isStockRightTransferstring有限责任公司本年度是否发生股东股权转让
statusstring企业经营状态
hasWebSitestring是否有网站或网店
hasNewStockOrByStockstring企业是否有投资信息或购买其他公司股权
employeeCountstring从业人数
belongTostring隶属关系
capitalAmountstring资金数额
operationDurationstring经营期限

assetsData企业资产状况信息

字段名类型描述
totalProfitstring利润总额
mainBusinessIncomestring主营业务收入
netProfitstring净利润
totalTaxAmountstring纳税总额
totalLiabilitiesstring负债总额
bankingCreditstring金融贷款
governmentSubsidystring获得政府扶持资金、补助
totalAssetsstring资产总额
totalOwnersEquitystring所有者权益合计
grossTradingIncomestring营业总收入

changeList修改记录

字段名类型描述
changeNamestring修改事项
beforestring变更前内容
afterstring变更后内容
changeDatestring变更日期

investInfoList对外投资信息

字段名类型描述
namestring投资设立企业或购买股权企业名称
regNostring注册号
creditCodestring信用代码

investInfoList对外投资信息

字段名类型描述
namestring股东/发起人
shouldCapistring认缴出资额
shouldDatestring认缴出资时间
shouldTypestring认缴出资方式
realCapistring实缴出资额
realDatestring实缴出资时间
realTypestring实缴出资方式

code错误码说明

code说明
0成功
1参数错误
2无记录
3第三方服务异常
4签名错误
5余额不足
6调用频率超限
7账号停用
8接口已停用
9联系服务商开通接口权限
10ip不在白名单
11系统异常
12实名状态错误
99其他异常,具体返回为准

返回示例

正确返回

{  "code": "0",  "msg": "成功",  "isFee": 1,  "seqNo": "lu1nynin07jkahmwztnivuddiz1kfngh",  "data": {    "total": 11,    "items": [      {        "stockChangList": null,        "investInfoList": [          {            "regNo": "20312845",            "creditCode": "",            "name": "中国***(控股)有限公司"          }        ],        "partnerList": [          {            "shouldDate": "2023-12-31",            "realType": "货币",            "shouldType": "货币",            "realCapi": "48578.914",            "name": "香港中央结算有限公司",            "shouldCapi": "48578.914",            "realDate": "2023-12-31"          }        ],        "year": "2023",        "provideAssuranceList": [],        "hasDetailInfo": true,        "changeList": [],        "publishDate": "2024-05-21",        "assetsData": [          {            "bankingCredit": null,            "mainBusinessIncome": "企业选择不公示",            "governmentSubsidy": null,            "totalProfit": "企业选择不公示",            "totalAssets": "企业选择不公示",            "totalLiabilities": "企业选择不公示",            "totalOwnersEquity": "企业选择不公示",            "grossTradingIncome": "企业选择不公示",            "totalTaxAmount": "企业选择不公示",            "netProfit": "企业选择不公示"          }        ],        "webSiteList": [          {            "webSite": "http://www.***.cn/",            "name": "中国***官网",            "type": "网站"          }        ],        "socialSecurity": [          {            "insuranceAmount": "305人",            "insuranceRealCapital": "企业选择不公示",            "insuranceName": "城镇职工基本养老保险",            "insuranceBase": "企业选择不公示",            "insuranceArrearage": "企业选择不公示"          }        ],        "basicInfoData": {          "regNo": "100000000012314",          "address": "深圳市福田区***路***号***金融中心47、48、109、110、111、112层",          "hasProvideAssurance": "否",          "operationDuration": null,          "companyName": "中国***(集团)股份有限公司",          "mainType": null,          "operatorName": "",          "employeeCount": "企业选择不公示",          "hasWebSite": "是",          "emailAddress": "IR@***.com.cn",          "belongTo": "",          "postCode": "518033",          "hasNewStockOrByStock": "是",          "isStockRightTransfer": "是",          "capitalAmount": null,          "contactNo": "4008***38",          "status": "开业",          "operationPlaces": "深圳市福田区***路***号***中心47、48、109、110、111、112层"        }      }    ]  }}

错误返回

{    "code": "1",    "msg": "参数不能为空",    "isFee": 0,    "seqNo": null,    "data": null}

03 — 代码示例

七种语言,复制即用

签名规则:sha256(appKey + timestamp + appSecret),下列示例已包含完整签名流程

EnterpriseReportQueryDemo.java
import java.io.BufferedReader;
import java.io.InputStream;
import java.io.InputStreamReader;
import java.net.HttpURLConnection;
import java.net.URL;
import java.net.URLEncoder;
import java.security.MessageDigest;

/**
 * 企业工商年报详情查询 - Java 示例代码
 * 接口地址:https://api.shuxuntech.com/v1/enterprise_report/query
 *
 * 说明:本示例只使用 JDK 原生 API(java.net / java.security),不依赖任何第三方 jar 包,
 *      也不需要本项目的工具类,复制到本地即可编译运行:
 *          javac EnterpriseReportQueryDemo.java
 *          java EnterpriseReportQueryDemo
 */
public class EnterpriseReportQueryDemo {

    /** 数勋分配的 appKey,请替换为您自己的 appKey */
    private static final String APP_KEY = "您的appKey";
    /** 数勋分配的 appSecret,请替换为您自己的 appSecret */
    private static final String APP_SECRET = "您的appSecret";
    /** 接口地址 */
    private static final String API_URL = "https://api.shuxuntech.com/v1/enterprise_report/query";
    /** 企业名称或统一社会信用代码或注册号 */
    private static final String KEYWORD = "";

    public static void main(String[] args) throws Exception {
        // 1、当前 unix 时间毫秒值,服务端要求与服务器时间相差不能超过 5 分钟
        String timestamp = String.valueOf(System.currentTimeMillis());

        // 2、签名:按顺序拼接 appKey + timestamp + appSecret 后做 sha256,得到小写十六进制字符串
        String sign = sha256Hex(APP_KEY + timestamp + APP_SECRET);

        // 3、业务参数,拼到 url 的 query 里
        String query = "keyword=" + urlEncode(KEYWORD);
        String url = API_URL + (query.isEmpty() ? "" : "?" + query);

        // 4、发起 GET 请求,appKey、timestamp、sign 放在请求头
        HttpURLConnection conn = (HttpURLConnection) new URL(url).openConnection();
        conn.setRequestMethod("GET");
        conn.setRequestProperty("appKey", APP_KEY);
        conn.setRequestProperty("timestamp", timestamp);
        conn.setRequestProperty("sign", sign);
        conn.setConnectTimeout(10000);
        conn.setReadTimeout(20000);

        int status = conn.getResponseCode();
        // 5、读取返回内容:报错时读错误流,避免只拿到一个异常看不到原因
        InputStream in = (status >= 200 && status < 300) ? conn.getInputStream() : conn.getErrorStream();
        String result = readAll(in);
        conn.disconnect();

        System.out.println("HTTP状态码=" + status);
        System.out.println("返回结果=" + result);
    }

    /**
     * sha256 加密,返回小写十六进制字符串
     * 服务端校验签名用的就是这个算法(小写十六进制)
     */
    private static String sha256Hex(String content) throws Exception {
        byte[] bytes = MessageDigest.getInstance("SHA-256").digest(content.getBytes("UTF-8"));
        StringBuilder sb = new StringBuilder(bytes.length * 2);
        for (byte b : bytes) {
            sb.append(Character.forDigit((b >> 4) & 0xF, 16));
            sb.append(Character.forDigit(b & 0xF, 16));
        }
        return sb.toString();
    }

    /** url 编码,中文参数需要编码 */
    private static String urlEncode(String value) throws Exception {
        return URLEncoder.encode(value, "UTF-8");
    }

    /** 读取输入流内容 */
    private static String readAll(InputStream in) throws Exception {
        if (in == null) {
            return "";
        }
        StringBuilder sb = new StringBuilder();
        BufferedReader reader = new BufferedReader(new InputStreamReader(in, "UTF-8"));
        try {
            String line;
            while ((line = reader.readLine()) != null) {
                sb.append(line);
            }
        } finally {
            reader.close();
        }
        return sb.toString();
    }
}

04 — 在线调试

先调通,再决定

用你自己的数据发一次真实请求,表单字段随接口定义自动生成,返回结果附字段注释

GEThttps://api.shuxuntech.com/v1/enterprise_report/query按次计费 · 优先扣套餐次数

请求参数

按接口定义自动生成

  • keyword*企业名称或统一社会信用代码或注册号

appKey / timestamp / sign调用时自动按 sha256 生成,无需手填

appKey=未获取 · timestamp=实时生成 · sign=自动生成

这是真实调用,会消耗套餐次数或账户余额; 请勿用真实证件信息反复试调

调不通时先看这里错误码与返回字段的完整说明见上方「02 — 返回说明」;签名口径与「03 — 代码示例」完全一致,可直接复制使用。

返回结果

点击左侧「提交并调用接口」,参数会就地组装、按文档口径签名后直接请求接口, 返回的 JSON 显示在这里。
在线调试使用你自己的 appKey,按实际调用计费。

返回结果是纯 JSON,字段含义见上方「02 — 返回说明」字段类型与取值说明以「02 — 返回说明」的字段表为准;错误码的完整定义同样在那一节。

05 — 产品价格

阶梯计价,用多少买多少

单次价格随调用量阶梯下降,大档位单价最低

调用量价格单价
5 次¥ 0¥ 0
15 次¥ 5¥ 0.333333
500 次¥ 120¥ 0.24
1,000 次¥ 220¥ 0.22
5,000 次¥ 1,000¥ 0.2
10,000 次¥ 1,900¥ 0.19
30,000 次¥ 5,500¥ 0.183333
50,000 次¥ 8,000¥ 0.16