DACH
SDB-Digitalisierung und Gefahrstoffverzeichnis
Wie aus einem Ordner voller SDB-PDFs eine Datengrundlage für das Gefahrstoffverzeichnis wird, und was das SDB dafür nicht liefern kann.
Letzte Aktualisierung: 2026-10-24
Hinweis. Diese Seite ist keine Rechtsberatung. Maßgeblich ist jeweils der aktuelle Wortlaut der genannten Vorschriften; klären Sie nationale Anforderungen mit der zuständigen Behörde oder einer fachkundigen Person.
Was ein Gefahrstoffverzeichnis enthält
Nach der Gefahrstoffverordnung (§ 6, in der jeweils geltenden Fassung) führen Arbeitgeber ein Verzeichnis der Gefahrstoffe, die im Betrieb verwendet werden. Es enthält im Kern die Bezeichnung des Gefahrstoffs, seine Einstufung oder Angaben zu den gefährlichen Eigenschaften, die im Betrieb verwendeten Mengenbereiche und die Arbeitsbereiche, in denen Beschäftigte exponiert sein können. Den genauen Umfang entnehmen Sie dem aktuellen Verordnungstext.
Was das Sicherheitsdatenblatt dazu beiträgt
| Angabe im Verzeichnis | Quelle | Hinweis |
|---|---|---|
| Bezeichnung | SDB, product_identification | Handelsname und Lieferant. |
| Einstufung, gefährliche Eigenschaften | SDB, hazards_identification | Einstufung, Signalwort, H- und P-Sätze. |
| Bestandteile (CAS-Nummern) | SDB, composition | Nützlich zum Abgleich mit Stoffdaten; Konzentrationen sind Bereiche als Text. |
| Mengenbereiche | Nicht im SDB | Aus Einkauf oder Lagerhaltung. |
| Arbeitsbereiche | Nicht im SDB | Aus Ihrer Gefährdungsbeurteilung. |
Die Digitalisierung der SDB deckt also nur einen Teil des Verzeichnisses ab. Der Rest kommt aus Ihren eigenen Prozessen.
Vom Archiv zur Tabelle
- Wandeln Sie die SDB-PDFs in JSON-Dateien um, zum Beispiel mit dem Stapelskript auf der Seite MSDS to JSON (englisch).
- Prüfen Sie markierte Dokumente (Warnungen, niedrige Konfidenz) gegen das Original.
- Erzeugen Sie die Verzeichnistabelle mit dem Skript unten und ergänzen Sie Mengenbereiche und Arbeitsbereiche.
- Pflegen Sie das Verzeichnis, wenn Lieferanten neue SDB-Revisionen schicken.
Skript: Verzeichnistabelle vorbereiten
Das Skript liest die JSON-Dateien aus dem Ordner json-out und schreibt eine CSV-Datei, die Excel im deutschen Format öffnet (Semikolon, UTF-8). Die Spalten für Mengen und Arbeitsbereiche bleiben bewusst leer. Werte, die mit =, +, - oder @ beginnen, werden entschärft.
import csv
import json
import pathlib
def sicher(wert):
"""Verhindert, dass Tabellenkalkulationen Werte mit = + - @ am Anfang als Formel auswerten."""
text = str(wert or "")
return "'" + text if text[:1] in ("=", "+", "-", "@") else text
eintraege = []
for datei in sorted(pathlib.Path("json-out").glob("*.json")):
sdb = json.loads(datei.read_text(encoding="utf-8"))
ident = sdb.get("product_identification") or {}
gefahren = sdb.get("hazards_identification") or {}
stoffe = sdb.get("composition") or []
eintraege.append({
"Bezeichnung": sicher(ident.get("product_name")),
"Lieferant": sicher(ident.get("supplier_name")),
"Einstufung": sicher("; ".join(gefahren.get("ghs_classification") or [])),
"H-Sätze": sicher("; ".join(gefahren.get("h_statements") or [])),
"CAS-Nummern": sicher("; ".join(s["cas_number"] for s in stoffe if s.get("cas_number"))),
"Mengenbereich": "", # steht nicht im SDB: aus Einkauf oder Lagerhaltung
"Arbeitsbereiche": "", # steht nicht im SDB: aus Ihrer Gefährdungsbeurteilung
"Quelle": datei.name,
})
spalten = list(eintraege[0]) if eintraege else ["Bezeichnung"]
with open("gefahrstoffverzeichnis.csv", "w", newline="", encoding="utf-8-sig") as ziel:
schreiber = csv.DictWriter(ziel, fieldnames=spalten, delimiter=";")
schreiber.writeheader()
schreiber.writerows(eintraege)
print(f"{len(eintraege)} Einträge geschrieben")
Die Feldnamen innerhalb der Abschnitte stammen aus einer Beispielantwort. Prüfen Sie an Ihren eigenen Dokumenten, welche Felder tatsächlich geliefert werden.
So kommen Sie zum Zugang: Der kostenlose Beispiel-Upload auf der Startseite braucht keinen Schlüssel, im Self-Serve-Tarif erhalten Sie nach der Anmeldung einen eigenen API-Schlüssel, und Enterprise-Kunden erhalten ein dediziertes Deployment mit eigener Basis-URL. Siehe Preise.
Häufige Fragen
Ersetzt die API das Gefahrstoffverzeichnis?
Nein. Sie liefert Daten aus dem Sicherheitsdatenblatt. Mengenbereiche und Arbeitsbereiche stehen nicht im SDB und kommen aus Ihren Prozessen.
Wie gehe ich mit neuen SDB-Revisionen um?
Verarbeiten Sie die neue Version erneut und vergleichen Sie sie mit dem gespeicherten Datensatz, zum Beispiel auf geänderte H-Sätze. Das Revisionsdatum steht, wenn vorhanden, in revision_metadata.
Sind die Ergebnisse geprüft?
Nein. Sie sind maschinell erzeugt. Prüfen Sie Dokumente mit Warnungen oder niedriger Konfidenz, bevor die Daten ins Verzeichnis übernommen werden.
Verwandte Seiten
- SDB-Plausibilitätsprüfung und TRGS 400
- SDB-Erfassung automatisieren
- DACH Übersicht
- Field coverage matrix (English)