YAML oder JSON
Ein Werkzeug, das YAML in JSON umwandelt und ebenso den umgekehrten Weg beherrscht, ohne dass Sie vorher angeben müssen, welches Format Sie einfügen. Gedacht für alle, die mit Konfigurationsdateien arbeiten, etwa in einer Automatisierungs-Pipeline, einem Container-Setup oder einem eigenen Programmierprojekt.
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.
Beide Richtungen, ein Werkzeug
Sie fügen entweder YAML oder JSON ein, das Werkzeug erkennt automatisch, welches Format vorliegt, und gibt das jeweils andere zurück. Für beide Richtungen gilt derselbe Ablauf: einfügen, Ergebnis kopieren oder herunterladen, ohne dass Sie vorher ein eigenes Umwandlungswerkzeug für die jeweilige Richtung suchen müssen oder selbst festlegen, welches Format vorliegt und welches Sie erwarten. Ein zweites, separates Werkzeug für die Gegenrichtung ist damit überflüssig.
Kommentare in YAML gehen verloren
YAML erlaubt Kommentare mit einer Raute, JSON kennt dieses Konzept nicht. Wandeln Sie YAML mit Kommentaren in JSON um, gehen diese Kommentare in der Ausgabe verloren, da es dafür keine Entsprechung gibt. Wichtige Erklärungen zu einzelnen Einstellungen sollten Sie deshalb vor der Umwandlung separat notieren, wenn Sie sie weiterhin benötigen und später nicht neu erfinden möchten. Alle übrigen Werte und die Struktur selbst bleiben davon unberührt.
Typische Konfigurationsdateien
YAML ist die verbreitete Sprache für Konfigurationsdateien in der Softwareentwicklung, etwa für Container-Definitionen, Automatisierungs-Pipelines oder Anwendungseinstellungen. Wer eine solche Datei in einem Werkzeug prüfen möchte, das nur JSON versteht, etwa einen JSON-Schema-Validator, wandelt sie hier zunächst um, statt die Struktur von Hand in JSON nachzubauen und zu pflegen. Das spart gerade bei umfangreichen, mehrfach verschachtelten Konfigurationsdateien spürbar Zeit, auch bei häufigen kleinen Änderungen im laufenden Betrieb.
Direkt im Browser oder per API
Die Umwandlung läuft im Browser, kostenlos und ohne Limit, ohne dass die Datei übertragen wird. Über die API lässt sich dieselbe Umwandlung in einen automatisierten Ablauf einbinden, etwa um bei jeder Änderung einer Konfigurationsdatei automatisch die JSON-Fassung für ein anderes System im Unternehmen neu zu erzeugen, ohne manuellen Eingriff bei jeder Aktualisierung oder Veröffentlichung einer neuen Version. Der Preis pro Anfrage bleibt dabei unabhängig von der Dateigröße stets gleich.
Anwendungsfälle
Container-Konfiguration prüfen
Lukas Fischer wandelt eine YAML-Konfigurationsdatei für ein Container-Setup in JSON um, um sie gegen ein bestehendes JSON-Schema zu validieren.
Pipeline-Definition für einen Kunden dokumentieren
Schneider IT-Systeme GmbH & Co. KG wandelt eine YAML-Pipeline-Datei in JSON um, um die Struktur in einem internen Dokumentationswerkzeug darzustellen.
Einstellungen eines Website-Generators anpassen
Jonas Weber wandelt die YAML-Konfiguration eines Website-Generators in JSON um, um sie per Skript automatisiert anzupassen.
Häufige Fragen
Bleiben Kommentare aus der YAML-Datei im JSON erhalten?
Nein, JSON kennt keine Kommentare. Kommentare aus der YAML-Datei gehen bei der Umwandlung verloren.
Muss ich angeben, ob ich YAML oder JSON einfüge?
Nein, das Format wird automatisch erkannt, die Umwandlung läuft immer in die jeweils andere Richtung.
Bleibt die Struktur beim Hin- und Herwandeln exakt gleich?
Ja, abgesehen von Kommentaren bleibt die Struktur bei der Umwandlung in beide Richtungen erhalten.
Gibt es ein Limit für die Dateigröße?
Die Datei darf bis zu 25 MB groß sein, was für Konfigurationsdateien in aller Regel weit ausreicht.
Ist die Umwandlung wirklich 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, es gibt derzeit keine Konten – die Nutzung im Browser ist ohne Anmeldung möglich.
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/yaml-json \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"input":"…"}'const res = await fetch("https://api.kit.forhosting.com/data/yaml-json", {
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/yaml-json",
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/yaml-json", 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/yaml-json", 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.yaml_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.
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. |