So wird aus JSON eine HTML-Tabelle
Ein Werkzeug, das ein JSON-Array in eine fertige HTML-Tabelle umwandelt: Die Feldnamen werden zu Spaltenüberschriften, jedes Objekt zu einer Zeile, bereit zum direkten Einfügen auf einer Webseite. Gedacht für alle, die JSON-Daten ohne eigenes Skript auf einer Webseite als Tabelle darstellen möchten.
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.
Aus JSON-Feldern werden Tabellenspalten
Die Feldnamen der JSON-Objekte werden automatisch zur Kopfzeile der Tabelle, jedes Objekt füllt eine eigene Zeile mit den passenden Zellen. Fehlt ein Feld bei einem einzelnen Objekt, bleibt die entsprechende Zelle einfach leer, statt die Spaltenstruktur der übrigen Zeilen zu verändern oder die Umwandlung ganz abzubrechen, nur weil ein einzelner Wert fehlt. Die Reihenfolge der Zeilen entspricht dabei der Reihenfolge im JSON-Array.
Verschachtelte Werte in der Tabelle
Enthält ein Feld selbst eine Liste oder ein Objekt, wird der Wert lesbar in der Zelle dargestellt, etwa mehrere Einträge durch Kommas getrennt, statt eine unlesbare technische Darstellung auszugeben. So bleibt die Tabelle auch bei etwas komplexeren JSON-Strukturen auf einen Blick verständlich, ohne dass einzelne Zellen unübersichtlich oder überladen wirken und Leser abschrecken. Das gilt auch für längere Texte innerhalb eines Feldes.
Fertiges Markup zum Einfügen
Das Ergebnis ist reines HTML-Tabellen-Markup mit `table`, `tr` und `td`, ohne eigenes Stylesheet. Es lässt sich direkt in eine bestehende Webseite einfügen und übernimmt dort die vorhandene Formatierung der Seite, statt ein eigenes, abweichendes Erscheinungsbild mitzubringen, das erst manuell angepasst werden müsste, bevor es wirklich passt und zur Seite passt, ohne Bruch im Design oder in der Typografie der übrigen Seite.
Direkt im Browser oder per API
Die Umwandlung läuft im Browser, kostenlos und ohne Limit, ohne dass die Daten übertragen werden. Über die API lässt sich dieselbe Umwandlung automatisieren, etwa um bei jeder Aktualisierung eines JSON-Exports automatisch die passende HTML-Tabelle für eine Webseite neu zu erzeugen und einzubinden, ohne manuellen Zwischenschritt und ohne spürbare Verzögerung im Ablauf, selbst bei mehreren täglichen Aktualisierungen kurz hintereinander und ohne zusätzlichen Aufwand.
Anwendungsfälle
Preistabelle auf einer statischen Webseite
Anna Hoffmann wandelt einen JSON-Export ihrer Preisliste in eine HTML-Tabelle um, um sie direkt in eine statische Webseite einzufügen.
Artikelübersicht ohne eigenes CMS
Weber Metallbau GmbH veröffentlicht eine Artikelübersicht als HTML-Tabelle, erzeugt aus dem JSON-Export des Warenwirtschaftssystems, ohne dafür ein eigenes CMS zu pflegen.
Einfache Übersichtsseite ohne Programmierung
Katrin Baumann erstellt aus einer JSON-Liste eine Übersichtsseite mit einer HTML-Tabelle, ohne selbst eine Zeile Code schreiben zu müssen.
Häufige Fragen
Enthält die Tabelle eigene CSS-Formatierung?
Nein, ausgegeben wird reines HTML-Tabellen-Markup ohne Stylesheet, das die Formatierung der Zielseite übernimmt.
Was passiert mit verschachtelten Feldern in einer Zelle?
Sie werden lesbar innerhalb der Zelle dargestellt, etwa mehrere Werte durch Kommas getrennt.
Gibt es ein Limit für die Dateigröße?
Die JSON-Datei darf bis zu 25 MB groß sein.
Ist die Umwandlung kostenlos?
Ja, im Browser läuft sie kostenlos und ohne Limit. Nur die Nutzung über die API kostet $0.002 pro Anfrage.
Brauche ich ein Konto?
Nein, weder im Browser noch über die API ist ein Konto erforderlich.
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-html \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"input":"…"}'const res = await fetch("https://api.kit.forhosting.com/data/json-to-html", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"input": "…"
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/data/json-to-html",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"input": "…"
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/data/json-to-html", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"input":"…"}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"input":"…"}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/data/json-to-html", body)
req.Header.Set("Authorization", "Bearer "+os.Getenv("KIT_KEY"))
req.Header.Set("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)Beispiel-Anfrage
{
"input": "…"
}Beispiel-Antwort
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "data.json_to_html",
"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. |