JSON a YAML
Convierte JSON a YAML y viceversa, con inferencia de tipos y formato limpio.
Entrada JSON
Salida YAML
Escribe JSON a la izquierda para convertirlo.
¿Qué es JSON a YAML?
Un conversor de JSON a YAML (y de YAML a JSON) traduce entre dos de los formatos de serialización de datos más populares. JSON es la lengua franca de las APIs web y las aplicaciones modernas — conciso, sin ambigüedades y soportado en todas partes. YAML es un superconjunto amigable para humanos muy usado en archivos de configuración (Kubernetes, Docker Compose, GitHub Actions, pipelines de CI/CD) porque permite comentarios, cadenas multilínea y es en general más fácil de leer de un vistazo. Convertir entre ellos surge constantemente: extraer valores de una respuesta de API JSON a una configuración YAML, portar ajustes de aplicación de JSON a YAML, o depurar un archivo YAML convirtiéndolo a JSON para inspeccionarlo más fácilmente. La conversión es sin pérdida para los tipos de datos núcleo que ambos formatos comparten (objetos, arrays, cadenas, números, booleanos y null), pero las características de YAML como anclas, alias, etiquetas personalizadas y palabras sin comillas con aspecto booleano (yes/no, on/off) se normalizan a equivalentes JSON.
Cómo usar JSON a YAML
- Elige una dirección con el conmutador JSON ⇄ YAML de arriba (o pulsa el botón de intercambio para invertirla, llevando la salida de hoy al otro lado como nueva entrada).
- Para JSON → YAML, pega cualquier valor JSON — objeto, array o escalar — en el panel izquierdo. Las estructuras anidadas se convierten en mapeos y secuencias YAML indentados.
- Para YAML → JSON, pega contenido YAML en el panel izquierdo. El parser sigue solo reglas compatibles con JSON (sin etiquetas personalizadas, sin anclas/alias, las etiquetas !!str/!!int/!!bool se ignoran).
- El resultado convertido aparece al instante a la derecha; cópialo en cuanto estés conforme.
Ejemplos
Objeto JSON simple → YAML
Entrada
{ "name": "Production", "replicas": 3, "enabled": true, "metadata": null }
Salida
name: Production replicas: 3 enabled: true metadata: null
Array anidado → YAML
Entrada
{ "services": [ { "name": "web", "port": 8080 }, { "name": "api", "port": 3000 } ] }
Salida
services: - name: web port: 8080 - name: api port: 3000
YAML → JSON (con inferencia de tipos)
Entrada
database: host: localhost port: 5432 ssl: true pool: null
Salida
{ "database": { "host": "localhost", "port": 5432, "ssl": true, "pool": null } }
Errores comunes
- Asumir que yes/no de YAML se mapean a las cadenas JSON 'yes'/'no' — YAML trata yes/no como valores booleanos, no cadenas, así que convertirlos a JSON produce true/false. Si necesitas valores de cadena, entrecomíllalos en tu YAML: 'yes', 'no'.
- Esperar que los comentarios YAML sobrevivan a una conversión de ida y vuelta — JSON no tiene sintaxis de comentarios, así que los comentarios YAML (# esto es un comentario) se descartan al convertir a JSON, y convertir el JSON de vuelta a YAML no los restaurará.
- Usar valores sin comillas como 1234 y asumir que permanecerán como cadenas — en YAML, un valor sin comillas con aspecto de número se convierte en número JSON. Si lo necesitas como cadena en JSON, entrecomíllalo en YAML: '1234'. Es especialmente común con IDs y códigos postales.
Por qué usar esta herramienta
- Sin pérdida para los tipos núcleo — objetos, arrays, cadenas, números, booleanos y null convierten bidireccionalmente sin pérdida de datos para el subconjunto de YAML compatible con JSON.
- Salida legible por humanos — la salida de JSON a YAML es limpia e indentada, fácil de leer y editar a mano, útil para generar archivos de configuración a partir de respuestas de API.
- Conversión consciente de tipos — la inferencia de tipos de YAML (números, booleanos, null) se aplica al convertir YAML a JSON, de modo que obtienes JSON correctamente tipado en lugar de todo como cadenas.