JSON in CSV umwandeln
Machen Sie aus einer Liste von Datensätzen eine CSV für die Tabellenkalkulation: Im Beispiel werden Ada und Alan zu 2 Zeilen unter drei Spalten, die Notiz mit Komma bleibt in einer Zelle, und fehlende Werte bleiben leer. Kostenlos in Ihrem Browser.
- Kostenlos
- Läuft in Ihrem Browser
- Ohne Anmeldung
- Ihre Daten bleiben auf Ihrem Gerät
Im Browser ausführen – kostenlos
Läuft direkt in Ihrem Browser – kostenlos. Ihre Datei verlässt Ihren Browser nicht und wird an keinen Server übertragen.
ohne Excel oder eigenes Skript
Von Datensätzen zu Zeilen und Spalten
Eine Tabellenkalkulation ist ein Raster: ein Datensatz pro Zeile, ein Wert pro Zelle. Dieses Werkzeug gibt jedem Datensatz einer Liste eine eigene Zeile, und jeder Name, der in irgendeinem Datensatz vorkommt, wird zur Spalte, in der Reihenfolge seines ersten Auftretens. So geht nichts verloren, wenn die Datensätze nicht alle Felder teilen. Im Beispiel ergeben die Datensätze von Ada und Alan drei Spalten: nombre, nota und extra. Ada hat keinen Zusatzwert und Alan keine Notiz, diese Zellen bleiben leer.
Kommas, Trennzeichen und die Form Ihrer Daten
Ein Wert mit Trennzeichen, doppeltem Anführungszeichen oder Zeilenumbruch wird in doppelte Anführungszeichen gesetzt, damit eine Notiz wie im Beispiel in ihrer Zelle bleibt, statt den Rest der Zeile zu verschieben. Standard ist das Komma, Sie können aber ein anderes Trennzeichen wählen, etwa das Semikolon, wenn Ihre Tabellenkalkulation es erwartet. Das Werkzeug arbeitet mit flachen Datensätzen: Verschachtelte Abschnitte werden nicht in Spalten aufgefächert, glätten Sie sie also vorher.
Für deutsches Excel vorbereitet
Standardmäßig wird ein Komma als Trennzeichen verwendet. Da deutsches Excel meist ein Semikolon erwartet, lässt sich das Trennzeichen vor dem Herunterladen umstellen, damit die Datei beim Öffnen direkt in den richtigen Spalten erscheint, ohne den Import-Assistenten von Excel manuell durchlaufen zu müssen. Auch die Zeichenkodierung wird dabei automatisch passend für Excel gesetzt, sodass Umlaute und das ß korrekt angezeigt werden, statt als falsche Zeichen zu erscheinen.
Häufige Fragen
Nutzt die CSV-Ausgabe das Semikolon, wie es deutsches Excel erwartet?
Standardmäßig ein Komma; vor dem Herunterladen lässt sich auf Semikolon umstellen, damit deutsches Excel die Datei ohne Import-Assistent korrekt öffnet.
Was passiert, wenn meine Datensätze nicht alle dieselben Felder haben?
Jeder Name, der in irgendeinem Datensatz vorkommt, wird zu einer Spalte, und ein Datensatz ohne diesen Namen erhält dort eine leere Zelle. Im Beispiel hat Alan keine Notiz und Ada keinen Zusatzwert, also bleiben diese Zellen leer.
Was geschieht mit einem Wert, der ein Komma enthält?
Er wird in doppelte Anführungszeichen gesetzt, damit er in einer Zelle bleibt und nicht in die nächste Spalte rutscht. Deshalb erscheint die Notiz im Beispiel in Anführungszeichen, und doppelte Anführungszeichen im Wert werden verdoppelt.
In welcher Reihenfolge erscheinen die Spalten?
In der Reihenfolge, in der die Namen zum ersten Mal auftauchen, von oben gelesen. Im Beispiel bringt der erste Datensatz Name und Notiz mit, der zweite ergänzt extra, deshalb lautet die Kopfzeile nombre, nota, extra.
Welche Form müssen meine Daten haben?
Eine Liste flacher Datensätze, einer pro späterer Zeile. Ein verschachtelter Abschnitt in einem Datensatz wird nicht in eigene Spalten aufgeteilt. Wenn Ihre Daten verschachtelte Teile haben, glätten Sie diese zuerst und wandeln danach um.
Verwandte Tools
Für Entwickler — API-Zugang
Alles auf dieser Seite ist auch per API verfügbar. Dieser Abschnitt richtet sich an Teams, die es in ihre eigenen Systeme einbinden möchten; alle anderen nutzen einfach das Tool oben.
Endpunkt
Authentifizierung per Bearer-Token. Ein einziger POST stellt die Aufgabe in die Warteschlange; das Ergebnis erhalten Sie per Webhook oder über einen signierten Link.
Aufruf aus Ihrem Stack
curl -X POST https://api.kit.forhosting.com/data/json-to-csv \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"rows":[{"nombre":"Ada","edad":36}]}'const res = await fetch("https://api.kit.forhosting.com/data/json-to-csv", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"rows": [
{
"nombre": "Ada",
"edad": 36
}
]
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/data/json-to-csv",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"rows": [
{
"nombre": "Ada",
"edad": 36
}
]
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/data/json-to-csv", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"rows":[{"nombre":"Ada","edad":36}]}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"rows":[{"nombre":"Ada","edad":36}]}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/data/json-to-csv", body)
req.Header.Set("Authorization", "Bearer "+os.Getenv("KIT_KEY"))
req.Header.Set("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)Beispiel-Anfrage
{
"rows": [
{
"nombre": "Ada",
"edad": 36
}
]
}Beispiel-Antwort
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "data.json_to_csv",
"status": "queued",
"_links": {
"result": "/tasks/tsk_…/result"
}
}Die API arbeitet asynchron: Sie erhalten sofort eine task_id. Polling ist mit 1 Anfrage pro Sekunde erlaubt.
Preis
Der Preis steht auf der Seite – keine Tokens, keine Credits. Fehlgeschlagene Aufgaben werden nicht berechnet.
Limits
max_mb | 25 |
Fehler
| HTTP | Code | Bedeutung |
|---|---|---|
401 | unauthorized | Der API-Schlüssel fehlt oder ist ungültig – prüfen Sie den Authorization-Header (Bearer). |
402 | insufficient_balance | Ihr Guthaben reicht für diese Aufgabe nicht aus – Aufladungen verfallen nicht. |
404 | unknown_type | Unbekannter Aufgabentyp – prüfen Sie das Feld „type“ gegen den Katalog. |
429 | rate_limited | Zu viele Anfragen – warten Sie kurz; Polling ist mit 1 Anfrage pro Sekunde erlaubt. |
Technische Hinweise
Ein Werkzeug, das ein JSON-Array in eine CSV-Tabelle umwandelt: Jedes Objekt wird zu einer Zeile, jedes Feld zu einer Spalte, die Feldnamen bilden die Kopfzeile. Gedacht für alle, die eine API-Antwort oder einen Datenexport ohne eigenes Skript in Excel oder einer Buchhaltungssoftware weiterverarbeiten möchten.
Wie aus Objekten Zeilen werden
Fehlt ein Feld bei einem einzelnen Objekt, bleibt die entsprechende Zelle in dieser Zeile einfach leer, statt die ganze Umwandlung abzubrechen. Jedes Objekt im JSON-Array wird zu einer eigenen Zeile, die Feldnamen der Objekte werden zu den Spaltenüberschriften der ersten Zeile. So entsteht aus einer beliebig verschachtelten JSON-Struktur eine einzige, durchgängige Tabelle, die sich sofort öffnen und weiterbearbeiten lässt, ohne dass Sie die Spalten von Hand anlegen müssen.
Verschachtelte Felder in flache Spalten
So bleibt die Tabelle in einer Zeile pro Datensatz lesbar, ohne dass Informationen aus der Ausgangsstruktur verloren gehen oder in einer einzigen, unübersichtlichen Spalte zusammengefasst werden, die sich später nur schwer wieder auftrennen ließe. Enthält ein Objekt selbst wieder ein Objekt oder eine Liste, etwa mehrere Adressen zu einer Person, wird diese Verschachtelung in flache Spaltennamen aufgelöst, zum Beispiel `adresse.stadt` statt eines eigenen Unterobjekts.
Auch der umgekehrte Weg ist möglich
Beide Richtungen laufen im Browser, kostenlos und ohne Limit, sodass sich Daten je nach Bedarf zwischen den beiden Formaten hin- und herbewegen lassen, ohne dass dabei Spaltennamen oder Datentypen verloren gehen. Wer stattdessen eine vorhandene CSV-Tabelle in JSON umwandeln möchte, etwa um sie in eine Anwendung einzuspielen, findet die passende Umwandlung in die andere Richtung als eigene Funktion. Über die API lässt sich derselbe Wechsel zwischen beiden Formaten auch in einen automatisierten Ablauf einbinden, etwa für einen regelmäßigen Datenaustausch zwischen zwei unterschiedlichen Systemen.
Integrationsbeispiele
API-Antwort für einen Excel-Bericht
Anna Hoffmann wandelt die JSON-Antwort einer internen Schnittstelle in eine CSV-Tabelle um, um daraus einen wöchentlichen Bericht in Excel zu erstellen.
Export aus einer Buchhaltungssoftware
Katrin Baumann erhält einen JSON-Export ihrer Buchhaltungssoftware und wandelt ihn in CSV um, damit ihre Steuerberatung die Datei ohne Zusatzsoftware öffnen kann.
Kassendaten aus mehreren Filialen
Bäckerei Hoffmann e. K. wandelt den täglichen JSON-Export der Kassensysteme in CSV um, um die Umsätze aller Filialen in einer Tabelle auszuwerten.
Technische Fragen
Was passiert mit verschachtelten Objekten oder Listen im JSON?
Sie werden zu flachen Spaltennamen wie `adresse.stadt` aufgelöst, damit jede Zeile in der Tabelle einem vollständigen Datensatz entspricht.
Gibt es ein Limit für die Dateigröße?
Die JSON-Datei darf bis zu 25 MB groß sein, was für die meisten API-Exporte deutlich ausreicht.
Was kostet die Umwandlung über die API?
$0.002 pro Anfrage, unabhängig von der Anzahl der Zeilen in der Ausgabe.
Bleiben meine Daten irgendwo gespeichert?
Nein. Im Browser verlässt die Datei Ihr Gerät nicht; über die API wird sie nur zur Umwandlung verwendet und danach nicht aufbewahrt.
Brauche ich ein Konto?
Nein, weder im Browser noch bei Nutzung über die API ist ein Konto erforderlich.