API 文档

Germany Insolvencies API 将德国官方发布的每一条破产公告以结构化数据提供:每日更新,可按公告类型、联邦州和法院筛选,并关联企业档案与已公布的资产负债表。仅需 HTTPS 和 JSON,也可按需提供 CSV。

最后更新: 2026-09-29

申请访问权限

密钥由人工开通。请简要告诉我们您想构建什么以及预计的调用量,通常一个工作日内即可开通。

申请访问权限

简介

德国破产法院在官方门户 insolvenzbekanntmachungen.de 上公布破产程序的每一个步骤:Sicherungsmaßnahmen(保全措施)、程序开始、因无财产而驳回、分配清单、剩余债务免除。该门户是为查询单个案件而设计的,并不适合数据处理:它没有接口、没有导出功能,并且会在法定期限届满后删除公告。

API 正是为填补这一空白而生。我们在公告发布当天收集每一条新公告,对法院、联邦州、登记号和公告类型做标准化处理,将其关联到企业档案,并以 JSON 或 CSV 提供。信用保险公司、催收机构、律师事务所、贸易信贷团队和数据新闻记者都用它为自己的系统提供数据。

所有请求都发往 https://germanyinsolvencies.com/api/v1。API 仅支持 HTTPS,接收 JSON 并以 JSON 应答。无需强制使用 SDK:任何能发送 HTTP 请求的语言都可以。本页示例使用 curl、Python 和 Node。

API 属于已开通 API 权限的 Germany Insolvencies 订阅服务。具体条款取决于调用量和使用场景,单独约定。

获取访问权限

我们有意不提供自助注册。密钥由人工开通,因为破产数据包含个人数据,我们希望了解每个集成的用途。实际操作只需一条简短的消息和一个工作日。

请使用联系表单,或写邮件至 [email protected],并说明以下四点:

  • 您想构建什么,两三句话即可。
  • 您需要哪些公告类型和地区。
  • 每月大致的请求数量或核查的企业数量。
  • 您能否接收 Webhook,还是更愿意轮询。

随后您会收到一个个人密钥,可立即用于合同涵盖的所有端点。一个账户可以同时持有多个有效密钥,因此可以在不中断服务的情况下轮换密钥。

身份验证

每个请求都在 X-API-Key 请求头中携带密钥。此外,API 也接受将同一个密钥作为 Bearer 令牌放在 Authorization 请求头中,方便只支持该请求头的工具使用。

http 两种等效的请求头
X-API-Key: YOUR_API_KEY

# equivalent
Authorization: Bearer YOUR_API_KEY

没有密钥时,API 返回 401 missing_api_key。密钥未知或已停用时返回 403 invalid_api_key,订阅已过期时返回 403 subscription_expired。原因始终写在响应的 error 字段中。

请像对待密码一样对待密钥:只在服务端使用,绝不要放进前端代码,也绝不要提交到公开仓库。如果密钥泄露,请告知我们,我们会立即吊销并签发新密钥。

快速开始

最常见的请求也是最简单的:获取某一天的全部程序开始、保全措施和驳回公告。一次调用,无需分页,一秒内即可返回。

bash 获取某一天的公告
curl -H "X-API-Key: $INSOLVENCY_API_KEY" \
  "https://germanyinsolvencies.com/api/v1/filings?date=2026-09-28&types=eroeffnung,sicherung,abweisung"

不指定日期时,API 返回前一天的数据。这让每日任务变得非常简单:在早上 6 点过后不久用一条 cron 任务拉取昨天的公告并写入您的系统即可。法院只在工作日发布公告,因此星期日和法定节假日的结果通常为空或很短。

如需回填历史数据,请按每段最多 31 天的窗口逐段遍历时间范围:

python 以 31 天为窗口回填(Python)
import os, datetime, requests

API = "https://germanyinsolvencies.com/api/v1"
HEAD = {"X-API-Key": os.environ["INSOLVENCY_API_KEY"]}

# Backfill a quarter in 31-day windows, then keep running daily.
start, end = datetime.date(2026, 7, 1), datetime.date(2026, 9, 28)
day = start
while day <= end:
    stop = min(day + datetime.timedelta(days=30), end)
    r = requests.get(API + "/filings", headers=HEAD, params={
        "date_from": day.isoformat(),
        "date_to": stop.isoformat(),
        "types": "eroeffnung,abweisung",
    }, timeout=60)
    r.raise_for_status()
    for f in r.json()["filings"]:
        print(f["date"], f["aktenzeichen"], f["name"])
    day = stop + datetime.timedelta(days=1)

端点一览

方法路径用途
GET/v1/filings某一天或某一时间段的公告,可按类型、联邦州、法院和名称筛选。
GET/v1/filings/{id}单条公告及其全文。
GET/v1/companies搜索至少出现在一条公告中的企业。
GET/v1/companies/{id}企业档案及当前程序状态。
GET/v1/companies/{id}/filings某企业的全部公告,按时间顺序排列。
GET/v1/companies/{id}/financials最近几个会计年度已公布的资产负债表数据。
POST/v1/check一次调用核查最多 500 个债务人或供应商。
GET/v1/watchlist列出被监控的企业。
POST/v1/watchlist将企业加入监控名单。
DELETE/v1/watchlist/{id}将企业从监控名单中移除。
POST/v1/webhooks注册用于接收推送通知的端点。
GET/v1/stats按日、月、联邦州、法院或类型汇总的统计数量。
GET/v1/types全部公告类型,含代码、别名和官方名称。
GET/v1/courts全部破产法院及其所在联邦州。
GET/v1/account密钥、合同范围、限额和当前用量。

路径相对于 https://germanyinsolvencies.com/api。因此第一个端点的完整地址是 https://germanyinsolvencies.com/api/v1/filings。

获取公告

GET /v1/filings 是 API 的核心。它返回请求时间段内发布的每一条公告,按发布日期排序,同一天内按发布顺序排列。

参数格式说明
dateYYYY-MM-DD单个日期。如果既没有提供 date 也没有提供 date_from/date_to,则默认为昨天。
date_fromYYYY-MM-DD时间段的起点(含)。优先于 date。
date_toYYYY-MM-DD时间段的终点(含)。最多比 date_from 晚 31 天。如果两个日期颠倒,API 会自动换回。
typescsv以逗号分隔的类型别名或代码列表,见下一节。省略则表示所有类型。
bundeslandcsv以逗号分隔的联邦州列表,写法与响应中一致,例如 Bayern,Hessen。
courtstring破产法院名称,例如 Charlottenburg (Berlin)。有效取值列表来自 /v1/courts。
qstring在债务人名称和公告正文中全文搜索,至少三个字符。
formatjson | csvjson(默认)或 csv。

响应包含实际生效的时间段、请求的类型代码、命中数量以及公告数组。一个时间段总是一次性完整返回,此端点没有分页。即使是最繁忙的日子,数据量也远低于 1 MB。

json 响应
{
  "date_from": "2026-09-28",
  "date_to": "2026-09-28",
  "types": ["0", "1", "2"],
  "count": 142,
  "filings": [
    {
      "id": "fil_8Kq2Zp4RwT",
      "date": "2026-09-28",
      "type": "Eröffnungen",
      "type_code": "2",
      "name": "Musterbau GmbH",
      "sitz": "Berlin",
      "court": "Charlottenburg (Berlin)",
      "aktenzeichen": "36a IN 4711/26",
      "bundesland": "Berlin",
      "register": "HRB 123456 B",
      "company_id": "cmp_3n8Kd2ZpQv",
      "text": "Amtsgericht Charlottenburg (Berlin), Aktenzeichen: 36a IN 4711/26 ..."
    }
  ]
}

同样的请求用 Node 编写,并筛选巴伐利亚州:

javascript Node.js
const url = new URL("https://germanyinsolvencies.com/api/v1/filings");
url.searchParams.set("types", "eroeffnung");
url.searchParams.set("bundesland", "Bayern");

const res = await fetch(url, {
  headers: { "X-API-Key": process.env.INSOLVENCY_API_KEY },
});
if (!res.ok) throw new Error((await res.json()).error);

const { count, filings } = await res.json();
console.log(count, "openings in Bavaria yesterday");

GET /v1/filings/{id} 返回带全文的单条公告。ID 保持稳定,因此您可以存储它,之后用来检查某条公告是否已处理过。

bash 单条公告
curl -H "X-API-Key: $INSOLVENCY_API_KEY" \
  https://germanyinsolvencies.com/api/v1/filings/fil_8Kq2Zp4RwT

公告类型

破产法院将公告分为九个主题。在 types 参数中,API 既接受数字代码,也接受易读的别名。复数形式以及带变音符号的写法同样被接受(eroeffnungen、eröffnung)。

别名代码含义
sicherung0Sicherungsmaßnahmen。保全措施,通常是指定临时管理人。这是最早的信号,一般出现在申请提出后几天。
abweisung1Abweisungen mangels Masse。因财产甚至不足以支付程序费用而驳回申请。此后公司通常会被解散。
eroeffnung2Eröffnungen。破产程序开始。从此时起,债权需向管理人申报。
entscheidung3Entscheidungen im Verfahren。程序进行中的裁定,例如关于债权人会议或审核期日的裁定。
sonstiges4Sonstiges。不属于其他任何主题的其他公告。
entscheidung_aufhebung5Entscheidungen nach Aufhebung。程序终止或中止之后的裁定。
verteilungsverzeichnis6Verteilungsverzeichnisse。依据德国《破产法》(Insolvenzordnung)第 188 条编制的分配清单,与期待获得分配的债权人相关。
restschuldbefreiung7Restschuldbefreiung。剩余债务免除,几乎只涉及自然人。
insolvenzplan8Überwachte Insolvenzpläne。对破产计划的监督,企业继续经营。

类型的官方名称以德语在 type 字段中返回,与法院发布的完全一致。用于机器处理时请使用永不改变的 type_code。types 中出现未知值时,会返回 400 bad_type 以及允许使用的代码列表。

公告对象

字段类型说明
idstring公告的稳定 ID,前缀为 fil_。
datestring在官方门户上的发布日期,格式为 YYYY-MM-DD。
typestring公告类型的官方名称,德语。
type_codestring代码 0 至 8,见公告类型。
namestring债务人的公布名称,包含法律形式。
sitzstring注册住所地或居住地。
courtstring有管辖权的破产法院。
aktenzeichenstring法院案号,例如 36a IN 4711/26。“IN”表示普通程序,“IK”表示消费者程序。
bundeslandstring法院所在的联邦州。
registerstring | null商业登记册条目(如果公告中有提及)。自然人和许多个体经营者没有此项。
company_idstring | null指向企业档案的链接(如果债务人能匹配到某家企业)。否则为 null。
textstring公告全文,保持原样。

所有文本字段均为 UTF-8。名称和正文完全按法院书写的内容传递,包括笔误。只有明确做过标准化的字段才是标准化值:type_code、bundesland 和 company_id。

法院与案号的组合可唯一标识一个程序。一个程序通常会在数月或数年间产生多条公告:保全措施、程序开始、裁定、分配清单、程序终止。如果要跟踪某个程序,请按 court 加 aktenzeichen 分组。

CSV 导出

使用 format=csv 时,API 以 CSV 文件代替 JSON 返回相同的数据:每条公告一行,带表头,以逗号分隔,UTF-8 编码。文件带有 Content-Disposition: attachment,文件名中包含时间段。

bash 以 CSV 下载一个月的数据
curl -H "X-API-Key: $INSOLVENCY_API_KEY" \
  -o filings.csv \
  "https://germanyinsolvencies.com/api/v1/filings?date_from=2026-09-01&date_to=2026-09-28&format=csv"
csv 前几行
date,type,type_code,name,sitz,court,aktenzeichen,bundesland,register,text
2026-09-28,Eröffnungen,2,Musterbau GmbH,Berlin,Charlottenburg (Berlin),36a IN 4711/26,Berlin,HRB 123456 B,"Amtsgericht Charlottenburg ..."
2026-09-28,Sicherungsmaßnahmen,0,Beispiel Logistik UG (haftungsbeschränkt),Hamburg,Hamburg,67c IN 812/26,Hamburg,HRB 98765,"Amtsgericht Hamburg ..."

text 列中的全文包含换行,因此用引号括起。在 Excel 中请通过“数据,从文本/CSV”并选择 UTF-8 编码打开,才能正确显示;直接双击打开时,根据系统设置,变音符号可能出现乱码。

企业

公告针对的是程序,但大多数使用场景关心的是企业。因此,每条公告都会尽可能根据登记号、名称和注册住所地匹配到一个企业档案。GET /v1/companies 用于搜索这些档案。

bash 按名称和联邦州搜索
curl -G -H "X-API-Key: $INSOLVENCY_API_KEY" \
  https://germanyinsolvencies.com/api/v1/companies \
  --data-urlencode "q=Musterbau" \
  --data-urlencode "bundesland=Berlin" \
  -d limit=20

搜索参数有 q(名称,至少三个字符)、register、city、bundesland、status 和 industry。列表以游标方式分页返回,每页最多 100 条:

json 列表封装结构
{
  "object": "list",
  "data": [ { "id": "cmp_3n8Kd2ZpQv", "object": "company", "...": "..." } ],
  "has_more": true,
  "next_cursor": "eyJpZCI6ImNtcF8zbjhLZDJacFF2In0"
}

只要 has_more 为 true,就把 next_cursor 作为下一次请求的 cursor 参数传入。游标的有效期为 24 小时。

企业对象

json GET /v1/companies/cmp_3n8Kd2ZpQv
{
  "id": "cmp_3n8Kd2ZpQv",
  "object": "company",
  "name": "Musterbau GmbH",
  "legal_form": "GmbH",
  "register": "HRB 123456 B",
  "register_court": "Charlottenburg (Berlin)",
  "city": "Berlin",
  "bundesland": "Berlin",
  "industry": "Hochbau",
  "status": "opened",
  "first_filing": "2026-08-14",
  "last_filing": "2026-09-28",
  "filings_count": 3,
  "website": "https://musterbau.example",
  "url": "https://germanyinsolvencies.com/company/musterbau-gmbh-berlin/"
}
字段类型说明
idstring稳定 ID,前缀为 cmp_。
namestring按最新一条公告确定的名称。
legal_formstring标准化的法律形式,例如 GmbH、UG、AG、KG、e.K.。
registerstring | null商业登记号。登记法院见 register_court。
citystring注册住所地。
bundeslandstring注册住所地所在的联邦州。
industrystring | null按我们的分类得出的行业(如果能够确定)。
statusstring程序当前所处的阶段,见下文。
first_filingstring已知最早一条公告的日期。
last_filingstring最新一条公告的日期。
filings_countinteger关联到该企业的公告数量。
urlstringgermanyinsolvencies.com 上的企业公开页面。

状态值

状态由该程序最近一条相关公告推导而来。它是实用的概括,而不是法律评估:如有疑问,以公告全文为准。

状态类型代码含义
preliminary0预备程序,已下达保全措施。
dismissed1因无财产而驳回申请。
opened2程序已开始。
plan8破产计划已获确认,监督进行中。
closed3, 5, 6程序已终止或中止。
discharged7已批准免除剩余债务。

GET /v1/companies/{id}/filings 返回某企业的全部公告,最早的在前。这样您无需自己按案号搜索,就能得到一个程序的完整历史。

资产负债表数据

对于公司法人,通常可以获得其向公司登记册提交的年度财务报表。GET /v1/companies/{id}/financials 返回最近几个会计年度的关键数据,最新的在前。金额以整欧元为单位。

json 响应
{
  "company_id": "cmp_3n8Kd2ZpQv",
  "currency": "EUR",
  "statements": [
    {
      "fiscal_year_to": "2024-12-31",
      "bilanzsumme": 4820000,
      "eigenkapital": -310000,
      "verbindlichkeiten": 5130000,
      "jahresueberschuss": -1240000,
      "source": "Unternehmensregister"
    },
    {
      "fiscal_year_to": "2023-12-31",
      "bilanzsumme": 5410000,
      "eigenkapital": 930000,
      "verbindlichkeiten": 4480000,
      "jahresueberschuss": 85000,
      "source": "Unternehmensregister"
    }
  ]
}

小型企业只需公布简化的资产负债表。备案中未包含的字段为 null,绝不会做估算。年度净利润常常因此缺失。

典型用法:在做信贷决策时,最近两三个会计年度的权益变化,比单独一条破产公告更能说明问题。权益为负再加上保全措施,情况就非常清楚了。

交易对手核查

POST /v1/check 一次调用即可核查整份客户或供应商清单。您发送自己的引用编号以及您所知道的企业信息:名称、城市、登记号。API 为每一条返回匹配结果和程序状态。

bash 核查三个债务人
curl https://germanyinsolvencies.com/api/v1/check \
  -H "X-API-Key: $INSOLVENCY_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "since": "2025-01-01",
    "items": [
      { "ref": "D-10023", "name": "Musterbau GmbH", "city": "Berlin" },
      { "ref": "D-10024", "register": "HRB 98765", "register_court": "Hamburg" },
      { "ref": "D-10025", "name": "Nordlicht Handels GmbH" }
    ]
  }' 
json 响应
{
  "checked": 3,
  "hits": 1,
  "results": [
    {
      "ref": "D-10023",
      "match": "exact",
      "company_id": "cmp_3n8Kd2ZpQv",
      "status": "opened",
      "last_filing": { "id": "fil_8Kq2Zp4RwT", "date": "2026-09-28", "type_code": "2" }
    },
    { "ref": "D-10024", "match": "none" },
    { "ref": "D-10025", "match": "ambiguous", "candidates": 2 }
  ]
}
match含义
exact登记号一致,或名称与住所地明确一致。
probable名称在标准化(法律形式、拼写)之后一致,住所地合理。采取行动前请先核实。
ambiguous有多家企业符合。响应中包含候选数量;请补充城市或登记号。
none该时间段内没有公告。这是好消息,但不等于信用评级。

一次调用最多接受 500 条记录。since 将搜索限定在该日期之后的公告,默认回溯三年。对于较大的组合,我们建议使用监控名单:核查一次,之后只接收变更。

监控名单

监控名单把一次性核查变成持续监控。您添加企业后,只要其中某家企业出现新公告,您就会通过 Webhook 收到 watchlist.match 事件。条目可以通过 company_id、登记号加法院,或名称加城市来标识。

bash 添加企业
curl https://germanyinsolvencies.com/api/v1/watchlist \
  -H "X-API-Key: $INSOLVENCY_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{ "register": "HRB 123456 B", "register_court": "Charlottenburg (Berlin)", "ref": "D-10023" }' 
json 响应
{
  "id": "wl_Q7m2Lx9Pd",
  "object": "watchlist_entry",
  "ref": "D-10023",
  "company_id": "cmp_3n8Kd2ZpQv",
  "name": "Musterbau GmbH",
  "created_at": "2026-09-29T08:12:44Z",
  "last_match": null
}

从未破产过的企业也可以被监控。此时该条目会一直等待,直到第一条公告出现,而这正是其意义所在。您在 ref 中填写的自有引用编号会在每个事件中原样返回,因此无需额外查询,就能把一次命中对应到您的客户编号。

GET /v1/watchlist 列出所有条目及最近一次命中的日期,DELETE /v1/watchlist/{id} 删除一个条目。同一份监控名单也显示在您的 Germany Insolvencies 控制台中,两边的更改双向同步。

Webhook

您可以让事件主动推送给您,而不必轮询。注册一个 HTTPS 端点并选择事件,也可以选择使用与 /v1/filings 相同的筛选条件。

bash 注册端点
curl https://germanyinsolvencies.com/api/v1/webhooks \
  -H "X-API-Key: $INSOLVENCY_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "url": "https://example.com/hooks/insolvency",
    "events": ["watchlist.match", "filing.published"],
    "filter": { "types": ["eroeffnung", "sicherung"], "bundesland": ["Bayern", "Hessen"] }
  }' 
事件触发时机
filing.published有新公告符合您的筛选条件。在我们收集到之后不久送达,通常在早晨。
watchlist.match有新公告涉及您监控名单中的某家企业。
stats.daily_ready前一天的每日统计数据已全部就绪。
json 事件负载
{
  "id": "evt_5Tg8Nw2Ka",
  "type": "watchlist.match",
  "created_at": "2026-09-29T06:05:11Z",
  "data": {
    "watchlist_entry": { "id": "wl_Q7m2Lx9Pd", "ref": "D-10023" },
    "filing": {
      "id": "fil_8Kq2Zp4RwT",
      "date": "2026-09-28",
      "type": "Eröffnungen",
      "type_code": "2",
      "name": "Musterbau GmbH",
      "court": "Charlottenburg (Berlin)",
      "aktenzeichen": "36a IN 4711/26"
    }
  }
}

每次调用都带有签名。X-Webhook-Signature 请求头包含一个时间戳,以及基于时间戳和原始请求体计算的 HMAC-SHA256,所用密钥是您注册时获得的 secret。

http 签名请求头
X-Webhook-Signature: t=1790661911,v1=7f2c1d9a4b6e8035c1f7a29d4e5b0c8371a6d2f94e8b3c07a15d9e2f6b4c8a01
python 验证签名(Python、Flask)
import hashlib, hmac, os, time
from flask import Flask, request, abort

app = Flask(__name__)
SECRET = os.environ["INSOLVENCY_WEBHOOK_SECRET"].encode()

@app.post("/hooks/insolvency")
def hook():
    header = request.headers.get("X-Webhook-Signature", "")
    parts = dict(p.split("=", 1) for p in header.split(",") if "=" in p)
    signed = parts.get("t", "") + "." + request.get_data(as_text=True)
    expected = hmac.new(SECRET, signed.encode(), hashlib.sha256).hexdigest()
    if not hmac.compare_digest(expected, parts.get("v1", "")):
        abort(400)
    if abs(time.time() - int(parts["t"])) > 300:
        abort(400)  # replay protection

    event = request.get_json()
    if event["type"] == "watchlist.match":
        ref = event["data"]["watchlist_entry"]["ref"]
        print("Customer", ref, "has a new insolvency filing")
    return "", 204

请在十秒内返回 2xx 状态码。如果失败,我们会在 24 小时内以递增的间隔重试,共八次。事件可能重复送达,所以请使用事件的 id 去重。

统计

GET /v1/stats 返回的是数量,而不是单条公告。这是用于仪表盘、报告和新闻分析的端点,因为它不需要下载并统计成千上万条记录。

bash 按月和联邦州统计程序开始数量
curl -G -H "X-API-Key: $INSOLVENCY_API_KEY" \
  https://germanyinsolvencies.com/api/v1/stats \
  -d date_from=2026-07-01 -d date_to=2026-09-28 \
  -d group_by=month,bundesland -d types=eroeffnung
json 响应
{
  "date_from": "2026-07-01",
  "date_to": "2026-09-28",
  "group_by": ["month", "bundesland"],
  "rows": [
    { "month": "2026-07", "bundesland": "Bayern",  "count": 318 },
    { "month": "2026-07", "bundesland": "Berlin",  "count": 204 },
    { "month": "2026-08", "bundesland": "Bayern",  "count": 297 }
  ],
  "total": 8412
}

group_by 接受 day、week、month、bundesland、court、type 和 legal_form,最多可同时使用两个。适用与 /v1/filings 相同的筛选条件。与公告不同的是,这里的时间段最长可达 24 个月。

我们的数据统计的是公告,而不是程序或企业。它们比德国联邦统计局(Destatis)的官方统计早几周,但并不完全相同,因为 Destatis 统计的是申请和裁定。

参考数据

有两个小端点返回筛选条件的有效取值。它们很少变化,可以缓存一天。

json GET /v1/types(节选)
[
  { "code": "0", "alias": "sicherung",   "name": "Sicherungsmaßnahmen" },
  { "code": "1", "alias": "abweisung",   "name": "Abweisungen mangels Masse" },
  { "code": "2", "alias": "eroeffnung",  "name": "Eröffnungen" }
]

GET /v1/courts 返回所有破产法院,含 court 筛选条件所要求的准确写法及其联邦州。GET /v1/account 显示您的合同范围、当前生效的限额以及本月的用量。

错误

错误以 JSON 形式返回,并带有对应的 HTTP 状态码。error 字段可供机器读取且保持稳定,message 则用于向人解释问题,可能会变化。

json 错误响应
{
  "error": "range_too_large",
  "message": "Maximum range is 31 days per request."
}
errorHTTP含义
bad_date400日期不符合 YYYY-MM-DD 格式。
bad_type400types 中有未知值。响应中还会包含 allowed。
range_too_large400时间段超过 31 天。
invalid_request400其他无效参数或格式错误的 JSON 请求体。
missing_api_key401未发送密钥。
invalid_api_key403密钥未知或 API 权限已停用。
subscription_expired403密钥所属的订阅已过期。
insufficient_scope403该密钥未开通此端点的权限。
not_found404ID 未知,或该公告已在保留期届满后被删除。
rate_limited429请求过多,见限额。
server_error500我们这一侧出现错误。请稍等片刻后重试,如果问题持续,请告知我们。
json 带有允许值的 bad_type
{
  "error": "bad_type",
  "message": "Unknown type 'eroffnung'.",
  "allowed": ["0", "1", "2", "3", "4", "5", "6", "7", "8"]
}

限额

值限额
120 / min每个密钥每分钟的请求数。可按需提高。
31/v1/filings 每次请求的最大天数。/v1/stats 允许 24 个月。
100列表端点每页的最大条目数。
500/v1/check 每次调用的最大条目数。
10000标准合同下每个账户可监控的企业数。
5每个账户可注册的 Webhook 端点数。

每个响应的请求头中都带有当前的速率限制状态。如果超出限制,您会收到 429 rate_limited 以及以秒为单位的 Retry-After 请求头。

http 速率限制请求头
X-RateLimit-Limit: 120
X-RateLimit-Remaining: 117
X-RateLimit-Reset: 1790661960
Retry-After: 12

版本管理

主版本号是路径的一部分(/v1/)。在同一主版本内,我们只做增量式变更:新的端点、新的可选参数、响应中新增字段。因此您的客户端应当忽略未知字段,而不是因此报错。

可能破坏现有集成的变更只会出现在新的主版本中。此时旧版本至少还会继续运行十二个月,并且我们会事先通过邮件通知每一位密钥持有人。响应的版本日期在 X-API-Version 请求头中。

http 响应头
X-API-Version: 2026-09-01

数据来源与时效性

公告的唯一来源是各联邦州共同运营的官方门户 insolvenzbekanntmachungen.de,德国所有破产法院都依据德国《破产法》第 9 条在其上发布公告。我们不会添加其他来源的公告,也不会改动其内容。

法院在工作日发布公告,多数在夜间和早晨。新公告通常在次日早上 7 点前即可通过 API 获取。企业档案和登记号来自公司登记册的补充;资产负债表数据来自其上公布的年度财务报表。

公告与企业的匹配是自动完成的。有登记号时是可靠的;没有登记号时(个体经营者、非常常见的名称)可能出错。所以 company_id 可以为 null,交易对手核查也因此区分 exact 和 probable。

数据保护与允许的用途

破产公告是公开的,但其中含有个人数据,在消费者程序中尤其如此。对它们的使用须遵守 GDPR 以及《破产公告条例》(Insolvency Announcement Ordinance)规定的删除期限。因此,最迟在官方门户必须删除公告时,我们就会从 API 中删除,此后 GET /v1/filings/{id} 会返回 404 not_found。

请在您自己的系统中同步这一删除操作。定期用您已存储的 ID 做一次比对就够了:API 不再认识的内容,也不应再保留在您的数据库中。

允许的用途包括商业风险评估、应收账款管理、法律咨询、研究和新闻报道。不允许的用途:公布涉及私人个人的公告、转售原始数据,以及仅依据这些数据对自然人作出决定。如果您代表我们处理个人数据,我们可提供数据处理协议。

支持

关于集成、更高限额或额外字段的问题:请写邮件至 [email protected] 或使用联系表单。遇到技术问题时,请附上请求的时间以及密钥的前几个字符,这样我们就能立刻在日志中找到该请求。

如果您想接入 AI 智能体,而不是编写 HTTP 客户端,可以通过 Model Context Protocol 服务器获取同样的数据,文档见 MCP 服务器。两者共用密钥、限额和合同。

申请访问权限

密钥由人工开通。请简要告诉我们您想构建什么以及预计的调用量,通常一个工作日内即可开通。

申请访问权限