Nutzung der Bundesbank SDMX Web Service API

1. Was ist die Bundesbank SDMX Web Service API?

Bundesbank SDMX Web Service API

Die Bundesbank stellt mit dieser API eine technische Schnittstelle bereit, über die statistische Daten automatisiert abgerufen werden können. Die Daten werden über einfache Webadressen (URLs) bereitgestellt und können direkt in Anwendungen eingebunden werden.

Bereitgestellte Inhalte:

  • Statistische Daten (z. B. makroökonomische Zeitreihen,Echtzeitdaten)
    Metadaten zu den Daten

  • Datenformate: SDMX-ML 2.1, SDMX-JSON, CSV
    Metadaten nur als SDMX-ML

Technische Grundlagen:

  • REST-API (d. h. Kommunikation über standardisierte Webadressen)

  • Standardformat: JSON

  • Übertragung per HTTPS (verschlüsselt)

Die API wird regelmäßig aktualisiert

Weitere Infos zu SDMX: sdmx.org

2. Daten abrufen

2.1. Einzelne Zeitreihen abrufen

Endpunkt:  
/data/{flowRef}/{key}

flowRef: Kennung des Datenflusses (z. B. BBEX3)
key: Zeitreihenschlüssel (z. B. D.USD.EUR.BB.AC.000)

Beispiel:  
https://api.statistiken.bundesbank.de/rest/data/BBEX3/D.USD.EUR.BB.AC.000

Wildcards und ODER-Operator

Wildcard: Teile des Schlüssels können leer gelassen werden, um mehrere Zeitreihen abzufragen.
 Beispiel: D..EUR.BB.AC.000 (alle Währungen gegen Euro)
ODER-Operator: Mit + lassen sich mehrere Werte in einer Komponente angeben.
 Beispiel: M.ISK.EUR+USD.CA.AC.A01 (ISK/EUR und ISK/USD)

2.2. Alle Zeitreihen eines Datenflusses abrufen

Endpunkt:  
/data/{flowRef}

Beispiel:  
https://api.statistiken.bundesbank.de/rest/data/BBBZ1

Hinweis: Je nach Datenmenge kann die Antwort länger dauern.

2.3. Mehrere Zeitreihen auf einmal abrufen

Endpunkt:  
/data/tsIdList (POST-Anfrage)

Beispiel-Request:
[
 "BBEX3.M.DKK.EUR.BB.AC.A01",
 "BBEX3.M.DKK.EUR.BB.AC.A02"
]

2.4. Formate für Datenabfragen: siehe Kapitel 4

3. Metadaten abrufen

Auch Metadaten zu Datenstrukturen, Dataflows, Codelisten und Conceptschemes können abgefragt werden.

Datastructure:
 /metadata/datastructure/BBK/{resourceID}  
 z. B. https://api.statistiken.bundesbank.de/rest/metadata/datastructure/BBK/BBK_DOES

Dataflow:
 /metadata/dataflow/BBK/{resourceID}  
 z. B. https://api.statistiken.bundesbank.de/rest/metadata/dataflow/BBK/BBEX3

Codelist:
 /metadata/codelist/BBK/{resourceID}  
 z. B. https://api.statistiken.bundesbank.de/rest/metadata/codelist/BBK/CL_BBK_ERX_RATE_TYPE

Conceptscheme:
 /metadata/conceptscheme/BBK/{resourceID}  
 z. B. https://api.statistiken.bundesbank.de/rest/metadata/conceptscheme/BBK/CS_BBK_ERX

Parameter:  
Auch hier lässt sich mit format, detail und references steuern, wie viele und welche Informationen bereitgestellt werden.

Alle Daten zu Datenstrukturen, Dataflows, Codelisten und Conceptschemes können abgefragt werden, indem {resourceID} weggelassen wird.

4. Datenabfrage Parameter

Abfrageparameter

Beschreibung

startPeriod

endPeriod

Mit der Übergabe eines Datumsbereichs mit dem Abfrageparameter "startPeriod"/"endPeriod" ist es möglich den Zeitraum der Beobachtungen einzugrenzen. Die unterstützten Formate sind:

YYYY für Jahresdaten (z. B. 2016)

Beispiel

https://api.statistiken.bundesbank.de/rest/data/BBBZ1/A.ZV00.INET.A00.A12.000.IN.DE.N?startPeriod=2012&endPeriod=2016

 

YYYY-S[1-2] für halbjährliche Daten (z.B. 2019-S1)

Beispiel

https://api.statistiken.bundesbank.de/rest/data/BBDB2/H.DE.Y.A.C.IFRS.B.A.K.E.E001.VGH.A?startPeriod=2017-S1&endPeriod=2019-S1

 

YYYY-Q [1-4] für vierteljährliche Daten (z. B. 2020-Q2)

Beispiel

https://api.statistiken.bundesbank.de/rest/data/BBEE1/Q.DE.AAA.XY0AAA.R.AADTB.M00?startPeriod=2019-Q4&endPeriod=2020-Q2

 

YYYY-MM für monatliche Daten (z. B. 2019-01)

Beispiel

https://api.statistiken.bundesbank.de/rest/data/BBDP1/M.DE.N.HVPI.C.A00000.VGJ.LV?format=sdmx_generic_xml&lang=de&startPeriod=2018-06&endPeriod=2020-06

 

YYYY-W[01-53] für wöchentliche Daten (z.B. 2019-W01)

Beispiel

https://api.statistiken.bundesbank.de/rest/data/BBDE1/W.DE.Y.WAI.A2N400000.A.N.R00.A?format=bbk_csv&startPeriod=2025-W45

 

YYYY-MM-DD für Tages- und Geschäftsdaten (z. B. 2019-01-01)

Beispiel

https://api.statistiken.bundesbank.de/rest/data/BBEX3/D.USD.EUR.BB.AC.000?startPeriod=2020-11-05&endPeriod=2020-11-10

preparedAfter

Mit dem Parameter preparedAfter können alle seit einem bestimmten Zeitpunkt aktualisierten Zeitreihen abgefragt werden.

Der preparedAfter-Parameter  muss im Format YYYY-MM-DD'T'hh:mm:ss±hh:mm angegeben werden, z. B. 2009-05-15T14:15:00+01:00.

Beispiel

https://api.statistiken.bundesbank.de/rest/data/bbex3/D..EUR.BB.AC.000?preparedAfter=2026-01-01T16:30:00+01:00

detail

Mit dem Parameter detail kann die gewünschte Informationsmenge festgelegt werden, die vom Webservice zurückgegeben wird. Mögliche Optionen sind:

full: Alle Datenwerte und Attribute werden zurückgegeben (Voreinstellung).

Beispiel

https:/​/​api.statistiken.bundesbank.de/​rest/​data/​BBEX3​/​D.USD.EUR.BB.AC.0​0​0​?detail=full

 

dataonly: Nur Datenwerte werden zurückgegeben, ohne Attribute.

Beispiel

https:/​/​api.statistiken.bundesbank.de/​rest/​data/​BBEX3​/​D.USD.EUR.BB.AC.0​0​0​?detail=dataonly

 

serieskeyonly: Zeitreihenschlüssel, ohne Attribute und Datenwerte.

Bespiel

https:/​/​api.statistiken.bundesbank.de/​rest/​data/​BBEX3​/​D.USD.EUR.BB.AC.0​0​0​?detail=serieskeyonly

 

nodata: Zeitreihenschlüssel, einschließlich der Attribute, aber ohne Datenwerte.

Beispiel

https:/​/​api.statistiken.bundesbank.de/​rest/​data/​BBEX3​/​D.USD.EUR.BB.AC.0​0​0​?detail=nodata

firstNObservations

Der Parameter firstNObservations ermöglicht es, die maximale Anzahl der zurückzugebenden Beobachtungen je angefragter Zeitreihe festzulegen, beginnend mit der ersten Beobachtung.

Beispiel

https:/​/​api.statistiken.bundesbank.de/​rest/​data/​BBEX3​/​D.USD.EUR.BB.AC.0​0​0​?detail=full&firstNObservations=2​7​

lastNObservations

Der Parameter lastNObservations ermöglicht es, die maximale Anzahl der zurückzugebenden Beobachtungen je angefragter Zeitreihe festzulegen, ausgehend von der letzten Beobachtung (rückwärts).

Beispiel

https:/​/​api.statistiken.bundesbank.de/​rest/​data/​BBEX3​/​D.USD.EUR.BB.AC.0​0​0​?detail=full&lastNObservations=1​2​

firstNVintages

Mit dem Parameter firstNVintages wird festgelegt, wie viele der ersten verfügbaren Rechenstände pro Indikator zurückgegeben werden.

Dieser Parameter betrifft nur die makroökonomischen Echtzeitdaten.

Beispiel

https://api.statistiken.bundesbank.de/rest/data/BBKRT/M.DE.S.P.CM1.PP000.R.I?firstNVintages=3

lastNVintages

Mit dem Parameter lastNVintages wird festgelegt, wie viele der letzten verfügbaren Rechenstände pro Indikator zurückgegeben werden.

Dieser Parameter betrifft nur die makroökonomischen Echtzeitdaten.

Beispiel

https://api.statistiken.bundesbank.de/rest/data/BBKRT/M.DE.S.P.CM1.PP000.R.I?lastNVintages=8

startVintage

endVintage

Mit den Parametern startVintage und endVintage wird ein Zeitraum festgelegt, aus dem die Rechenstände für Echtzeitdaten zurückgegeben werden sollen.

Die unterstützten Formate sind: YYYYYYYY-MM-DD

Diese Parameter betreffen nur die makroökonomischen Echtzeitdaten.

Beispiel

https://api.statistiken.bundesbank.de/rest/data/BBKRT/M.DE.S.P.CM1.PP000.R.I?startVintage=2020&endVintage=2023

Hinweis:  
Bei mehr als 200 Zeitreihen oder verschiedenen Periodizitäten im CSV-Format wird eine ZIP-Datei zurückgegeben.

5. Rückgabe Parameter

Das Antwortformat ist wählbar.

Format

Parameterwert / Accept-HeaderBeschreibung

SDMX-ML 2.1

sdmx_generic_xml / application/xmlXML-Format 

SDMX-JSON

sdmx_json / application/jsonJSON-Format  

SDMX-CSV 

sdmx_csv / text/csv  CSV-Format (max. 200 Zeitreihen pro Anfrage)

BBK-CSV

bbk_csv / application/vnd.bbk.data+csv CSV-Format der Bundesbank

BBK-CSV-ZIP

bbk_csv_zip / application/vnd.bbk.data+csv-zipZIP mit mehreren CSV-Dateien

6. Sprache der Rückgabe

  • de (z. B. "de-DE"): Deutsche Attribute, sonst englisch als Fallback

  • en (z. B. "en-US"): Englische Attribute, sonst deutsch als Fallback

  • Keine Angabe: Vollständiges Dokument

7. Statuscodes (Antworten des Servers)

Status-Code 

Bedeutung

200

Anfrage erfolgreich, Daten werden geliefert

400

Fehlerhafte Anfrage (z. B. ungültige Parameter) 

404

Keine passenden Ergebnisse gefunden

406

Angefragtes Format wird nicht unterstützt

410

Angefragte Ressource wird nicht mehr unterstützt

413

Zu große Datenmengen. Die Daten werden im Hintergrund generiert und können später erneut angefragt werden.

500

Interner Fehler, bitte später erneut versuchen

501

Funktion noch nicht implementiert

503

Webservice zeitweise nicht erreichbar

8. Weitere Hinweise

Die API ist sehr flexibel und bietet viele Möglichkeiten, Daten und Metadaten gezielt abzufragen.
Für große Datenmengen kann die Antwortzeit länger sein.
Für Details zu SDMX siehe sdmx.org .

Tipp:  
Nutzen Sie die Beispiele aus dieser Anleitung und passen Sie sie an Ihre Bedürfnisse an. So können Sie schnell und einfach die gewünschten Daten abrufen.

Bei Fragen oder Problemen wenden Sie sich an die Support-Hotline der Bundesbank.

Alle Artikel