Bundesanzeiger APIbundesanzeiger.de ↗
Search and retrieve German company filings, financial disclosures, and official government announcements from Bundesanzeiger via 4 structured endpoints.
What is the Bundesanzeiger API?
The Bundesanzeiger API provides access to official German public announcements and company filings across 4 endpoints, returning structured data including company names, publication dates, categories, full text, and PDF links. The search_publications endpoint accepts keyword and category filters and returns paginated results, while get_publication_detail fetches the complete text and metadata of any individual filing.
curl -X GET 'https://api.parse.bot/scraper/7f977f15-eb7e-4e40-a878-b2bbf375069a/search_publications?limit=5&query=Siemens&category=1' \ -H 'X-API-Key: $PARSE_API_KEY'
Typed, relational, agent-ready
A generated client with real types, enums, and the links between objects — the structure a flat JSON response can't carry. Autocompletes in your editor and reads cleanly to coding agents.
- Fully typed · autocompletes
- Objects link to objects
- Typed errors & pagination
Typed Python client. Set up the SDK in your uv project, then pull this API’s typed client:
uv add parse-sdk uv run parse init uv run parse add --marketplace bundesanzeiger-de-api
uv run parse add --marketplace pulls a pinned snapshot of this canonical API — it won’t change underneath you. To customize it, subscribe and swap to your own copy.
"""Walkthrough: Bundesanzeiger SDK — search publications, drill into details, browse announcements."""
from parse_apis.bundesanzeiger_api import Bundesanzeiger, Category, PublicationNotFound
client = Bundesanzeiger()
# Search for publications by company name, capped at 5 results.
for pub in client.publications.search(query="Siemens", limit=5):
print(pub.company, pub.date, pub.title)
# Filter by category using the Category enum.
for pub in client.publications.search(query="Siemens", category=Category.RECHNUNGSLEGUNG, limit=3):
print(pub.company, pub.category, pub.date)
# Drill into a single publication's full content.
pub = client.publications.search(query="Siemens", limit=1).first()
if pub:
detail = pub.detail()
print(detail.url, detail.content_text[:200])
# Browse today's official government announcements.
announcement = client.announcements.list(limit=1).first()
if announcement:
print(announcement.authority, announcement.title, announcement.reference)
# Search financial reports — typed error handling.
try:
report = client.financialreports.search(query="Deutsche Bank", limit=1).first()
if report:
print(report.company, report.date, report.title)
except PublicationNotFound as exc:
print(f"Not found: {exc}")
print("exercised: publications.search / Publication.detail / announcements.list / financialreports.search / Category enum / PublicationNotFound error")
Search for publications in the Bundesanzeiger by keyword. Optionally filter by category. Returns paginated results with company name, category, date, title, and detail URL. Results are ordered by date descending.
| Param | Type | Description |
|---|---|---|
| limit | integer | Maximum number of results to return. |
| queryrequired | string | Search keyword (e.g. company name or topic). |
| category | string | Category ID to filter results. Known values: 1=Amtlicher Teil, 22=Rechnungslegung/Finanzberichte. |
{
"type": "object",
"fields": {
"items": "array of publication objects with keys: company, category, date, title, detail_url",
"query": "string echo of the search query",
"total": "integer total number of results returned"
},
"sample": {
"data": {
"items": [
{
"date": "01.06.2026",
"title": "Aufsichtsrat",
"company": "Siemens Mobility GmbH München",
"category": "Gesellschafts- bekanntmachungen",
"detail_url": "https://www.bundesanzeiger.de/pub/de/suchen2?3-1.-search~table~panel-rows-0-search~table~row~panel-publication~link"
}
],
"query": "Siemens",
"total": 10
},
"status": "success"
}
}About the Bundesanzeiger API
What the API covers
The Bundesanzeiger is Germany's official public gazette, publishing legally mandated corporate disclosures, financial statements, and government notices. This API exposes four endpoints covering the main content types: full-text keyword search, individual publication retrieval, official government announcements (Amtlicher Teil), and financial report search. Response fields include company, category, date, title, and detail_url on list results, and content_text, content_html, metadata, and pdf_links on detail pages.
Searching and filtering publications
search_publications accepts a required query string and an optional category parameter. Known category values are 1 for Amtlicher Teil (official government notices) and 22 for Rechnungslegung/Finanzberichte (accounting and financial reports). The limit parameter controls result count. get_financial_reports is a focused variant that targets category 22 directly, accepting query and limit and returning the same item shape: company, category, date, title, and detail_url.
Retrieving publication details
get_publication_detail retrieves the full content of a single publication. Pass a url taken from the detail_url field in search results, or supply a query plus item_index to locate and fetch a result by position. The response includes content_text (plain text), content_html (raw HTML), a metadata object with a summary field containing header information, and pdf_links listing any attached PDF documents.
Browsing official government notices
get_amtlicher_teil_listings takes no inputs and returns the current listings in the Amtlicher Teil section. Each item includes authority (the issuing body), title, reference, and detail_url. This endpoint is useful for monitoring recent regulatory and judicial notices without needing a specific search term.
The Bundesanzeiger API is a managed, monitored endpoint for bundesanzeiger.de — not a raw scraper you maintain. Every endpoint is automatically health-checked on a schedule, and when bundesanzeiger.de changes and a check fails, the API is automatically queued for repair and re-verified. It is built to keep working as the site underneath it changes.
This isn't an official bundesanzeiger.de API — it's an independent, maintained REST wrapper over public data. Where the source has no official API (or only a limited one), Parse gives you a stable contract over a source that never promised one, and keeps it current. Need a new endpoint or field? You can revise it yourself in plain English and the agent rebuilds it against the live site in minutes — contributing the change back to the shared API is free.
Will this API break when the source site changes?+
Is this an official API from the source site?+
Can I fix or extend this API myself if I need a new endpoint or field?+
What happens if I call an endpoint that has an issue?+
- Monitor annual financial statements filed by German GmbHs and AGs using
get_financial_reportswith a company name query. - Track new official government notices from specific authorities by polling
get_amtlicher_teil_listingsand filtering by theauthorityfield. - Build a corporate due-diligence tool that retrieves full filing text via
get_publication_detailusingdetail_urlreferences from search results. - Alert on insolvency proceedings or liquidation notices by searching
search_publicationswith relevant keywords. - Download PDF versions of balance sheets and annual reports by extracting
pdf_linksfrom publication detail responses. - Aggregate disclosure timelines for a company by querying
search_publicationswith the company name and sorting results by thedatefield. - Research regulatory activity from specific German authorities using
get_amtlicher_teil_listingsand cross-referencing thereferencefield.
| Tier | Price | Credits/month | Rate limit |
|---|---|---|---|
| Free | $0/mo | 100 | 5 req/min |
| Hobby | $30/mo | 1,000 | 20 req/min |
| Developer | $100/mo | 5,000 | 100 req/min |
One credit = one API call regardless of which marketplace API you call. Exceeding the rate limit returns a 429 response. Authenticate with the X-API-Key header.
Does Bundesanzeiger provide an official developer API?+
What does `get_publication_detail` return beyond the text of a filing?+
get_publication_detail returns four distinct fields: content_text (plain text of the filing), content_html (the HTML version), metadata (an object with a summary field containing header-level information such as publisher and date context), and pdf_links (an array of URLs pointing to any attached PDF documents). The url field echoes the resolved address of the fetched page.Does the API cover historical filings going back many years?+
Can I retrieve filings for a specific federal state (Bundesland) or court district?+
search_publications supports keyword and category filtering only. You can fork this API on Parse and revise it to add region or court-district filtering if those parameters are supported by the source.What categories are available for filtering in `search_publications`?+
1 for Amtlicher Teil (official government notices) and 22 for Rechnungslegung/Finanzberichte (accounting and financial disclosures). Bundesanzeiger publishes additional categories such as Bekanntmachungen, Insolvenzbekanntmachungen, and others, but their category IDs are not currently mapped in this API. You can fork it on Parse and revise to add additional category values.