ForHosting KIT · Daten & Dateien

Punkt-Schlüssel in verschachteltes JSON umwandeln

Bauen Sie aus flachen Punktnamen wieder einen verschachtelten Datensatz: user.contact.email kommt zurück in contact, das in user liegt, während active und die Punktzahl 42 auf oberster Ebene bleiben. Im Beispiel werden 5 flache Einträge verarbeitet. Kostenlos in Ihrem Browser.

  • Kostenlos
  • Läuft in Ihrem Browser
  • Ohne Anmeldung
  • Ihre Daten bleiben auf Ihrem Gerät
Nutzen Sie es über WebAPIE-MailTelegramApp bald

Läuft direkt in Ihrem Browser – kostenlos. Ihre Datei verlässt Ihren Browser nicht und wird an keinen Server übertragen.

Es eignet sich für Umgebungsvariablen, Formulare, Konfigurationen, Analysewerkzeuge und Datenbankabfragen, deren flache Datensätze vor der Validierung oder Verarbeitung wiederhergestellt werden müssen.

Punktpfade in ein verschachteltes Dokument umwandeln

Jeder Eigenschaftsname gilt als Pfad, dessen Abschnitte durch Punkte getrennt sind. Beispielsweise wird account.profile.name zur Eigenschaft name innerhalb von profile und account. Ein Schlüssel ohne Punkt bleibt auf der obersten Ebene.

Werte werden nicht umgewandelt: Eine Zahl bleibt eine Zahl, false bleibt ein Wahrheitswert, null bleibt null und Arrays behalten Reihenfolge und Inhalt. Das Ergebnis enthält das rekonstruierte Dokument unter json und unter keys die Anzahl verarbeiteter flacher Eigenschaften. Numerisch aussehende Abschnitte werden als gewöhnliche Objektschlüssel behandelt, nicht als Array-Indizes.

Daher errät die Umwandlung keine Sammlungsform, die nicht ausdrücklich angegeben wurde. Dies sorgt bei Konfigurationen, Datenbankaliasen und Formularen für stabile Ausgaben. Die Verarbeitung ist deterministisch, greift nicht auf das Netzwerk zu und hängt weder von Spracheinstellungen noch Uhrzeit oder Einfügereihenfolge ab.

Widersprüchliche Pfade vor einem Datenverlust erkennen

Das Auflösen wird gefährlich, wenn ein Schlüssel einen Pfad als Endwert festlegt, während ein anderer denselben Pfad als Objekt benötigt. Die Fähigkeit weist sie mit einem Fehler für ungültige Eingaben zurück, statt willkürlich die zuletzt besuchte Eigenschaft zu übernehmen. Auch Kollisionen innerhalb ausdrücklich übergebener Objekte werden abgelehnt.

Ein solches Objekt darf durch gepunktete Unterpfade ergänzt werden, solange keine vorhandene Eigenschaft kollidiert; settings als Objekt kann somit um settings.theme erweitert werden. Leere Schlüssel, führende oder abschließende Punkte und Doppelpunkte erzeugen namenlose Abschnitte und sind unzulässig. Die besonderen Namen __proto__, prototype und constructor werden auf jeder Ebene, auch in übergebenen Objekten, gesperrt.

Diese Prüfungen machen Fehler früh sichtbar und garantieren für jede Stelle einer erfolgreichen Ausgabe eine eindeutige Quelle.

Das Ergebnis in Migrationen und Abläufen einsetzen

Flache Schlüssel treten häufig an Systemgrenzen auf. SQL-Abfragen liefern Aliase wie customer.address.city, Protokoll- und Analyseplattformen verflachen Ereignisse zur Indizierung, HTML-Formulare kennzeichnen Gruppen mit gepunkteten Namen und Bereitstellungssysteme stellen strukturierte Einstellungen als einzelne Variablen dar. Ein Validierungsfehler verweist dann auf den Ursprungsdatensatz, statt eine unvollständige Struktur weiterzugeben.

Rufen Sie die Fähigkeit bei Stapeln einmal je flachem Datensatz auf, da ein Element die Abrechnungseinheit bildet und jede Antwort genau ein Dokument beschreibt. Punkte innerhalb eines Textwertes sind unproblematisch; nur Eigenschaftsnamen werden als Pfade gelesen.

Was kostet die Nutzung?

Sie können die Umwandlung auf dieser Seite auch im Browser ausführen.

Werden numerische Pfadteile in Arrays umgewandelt?

Nein. Jeder Abschnitt bleibt ein Objektschlüssel, sodass keine Annahmen über Indizes oder Kennungen entstehen.

Bleiben die Werttypen erhalten?

Ja. Zeichenfolgen, endliche Zahlen, Wahrheitswerte, null, Arrays und Objekte werden ohne Typumwandlung kopiert.

Darf ein Schlüssel einen leeren Pfadteil enthalten?

Nein. Leere Schlüssel sowie doppelte, führende oder abschließende Punkte werden als mehrdeutig abgelehnt.

Was passiert, wenn zwei Namen kollidieren, etwa user und user.name?

Die Eingabe wird mit einer klaren Fehlermeldung abgewiesen, statt den zuletzt gelesenen Namen zu behalten. Eine Stelle kann nicht zugleich Endwert und Gruppe sein, deshalb hat jede Position in einem erfolgreichen Ergebnis genau eine Quelle.

Bleiben die Typen der Werte erhalten?

Ja, nichts wird eigenmächtig umgewandelt: Eine Zahl bleibt eine Zahl, falsch bleibt falsch, ein leerer Wert bleibt leer, und Listen behalten Reihenfolge und Inhalt. Auch ein Text mit Punkten wird nicht zerlegt, sodass Ihre Werte unverändert bleiben.

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.

POSThttps://api.kit.forhosting.com/data/unflatten-to-json

Authentifizierung per Bearer-Token. Ein einziger POST stellt die Aufgabe in die Warteschlange; das Ergebnis erhalten Sie per Webhook oder über einen signierten Link.

curl -X POST https://api.kit.forhosting.com/data/unflatten-to-json \
  -H "Authorization: Bearer $KIT_KEY" \
  -H "Content-Type: application/json" \
  -d '{"flat":{"user.name":"Ada","user.contact.email":"ada@example.com","active":true}}'
{
  "flat": {
    "user.name": "Ada",
    "user.contact.email": "ada@example.com",
    "active": true
  }
}
{
  "task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
  "type": "data.unflatten_to_json",
  "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.

pro Anfrage$0.002

Der Preis steht auf der Seite – keine Tokens, keine Credits. Fehlgeschlagene Aufgaben werden nicht berechnet.

max_mb25
HTTPCodeBedeutung
401unauthorizedDer API-Schlüssel fehlt oder ist ungültig – prüfen Sie den Authorization-Header (Bearer).
402insufficient_balanceIhr Guthaben reicht für diese Aufgabe nicht aus – Aufladungen verfallen nicht.
404unknown_typeUnbekannter Aufgabentyp – prüfen Sie das Feld „type“ gegen den Katalog.
429rate_limitedZu viele Anfragen – warten Sie kurz; Polling ist mit 1 Anfrage pro Sekunde erlaubt.

Wandeln Sie ein flaches JSON-Objekt wie {"account.name":"Ada"} in die verschachtelte Struktur um, die Ihre Anwendung tatsächlich erwartet. Dieses deterministische Werkzeug erweitert jeden durch Punkte getrennten Schlüssel, bewahrt Zeichenfolgen, Zahlen, Wahrheitswerte, null, Arrays und Objekte und meldet mehrdeutige Pfade, anstatt Daten still zu überschreiben.

Punktpfade in ein gewöhnliches JSON-Dokument umwandeln

Übergeben Sie ein JSON-Objekt im Feld flat. Verwenden Sie gültige JSON-Werte und setzen Sie Eigenschaftsnamen in Anführungszeichen.

Widersprüchliche Pfade vor einem Datenverlust erkennen

Eine Eingabe mit user als Zeichenfolge und user.name als weiterem Wert kann beide Angaben nicht in einer einzigen JSON-Struktur darstellen.

Das Ergebnis in Migrationen und Abläufen einsetzen

Führen Sie diese Umwandlung direkt nach dem Einlesen des Grenzformats und vor der Prüfung gegen ein verschachteltes JSON-Schema aus. Der Browser eignet sich zur schnellen Prüfung, die API beginnt für automatisierte Abläufe bei $0.002. Da Werte ohne Analyse von Zeichenfolgen oder Typableitung kopiert werden, müssen absichtlich als Text gespeicherte JSON-Inhalte vorher geparst werden.

Abfragealiase wiederherstellen

Wandeln Sie customer.name und customer.address.city in das von einer API erwartete verschachtelte customer-Objekt um.

Konfigurationen zur Prüfung vorbereiten

Rekonstruieren Sie Einstellungen, bevor Sie ein JSON-Schema oder Standardwerte anwenden.

Formulare und Ereignisse normalisieren

Überführen Sie gepunktete Namen aus Formularen, Protokollen oder Analyseexporten in gewöhnliches JSON.

Was geschieht, wenn ein Schlüssel Präfix eines anderen ist?

Enthält das Präfix einen Nicht-Objektwert, schlägt die Anfrage mit invalid_input fehl, weil beide Pfade unvereinbar sind.

Vollständige KIT-Dokumentation lesen →