Convertidor de JSON a YAML

Convierte JSON en YAML limpio y fácil de leer para Kubernetes, Docker Compose, GitHub Actions o Ansible, con control total sobre la indentación, el estilo y las comillas.

Funciona en tu navegadorSin registroNo se sube nada

JSON de salida

Cómo usar: JSON a YAML

  1. Pega JSON en el cuadro izquierdo o abre un archivo .json.
  2. El YAML aparece a la derecha mientras escribes.
  3. Elige la indentación (2 o 4 espacios) y el estilo: bloque (una clave por línea) o flujo ({a: 1}/[x, y]) a partir de cierto nivel de anidamiento.
  4. Elige un estilo de comillas y marca Ordenar claves si quieres orden alfabético.
  5. Copia o descarga el YAML. El JSON no válido se indica con su línea, columna y causa probable.

¿Por qué convertir JSON a YAML?

JSON es ideal para máquinas y APIs, pero YAML es más fácil de leer y editar para las personas: sin llaves, sin comillas obligatorias y con soporte para comentarios. La mayoría de herramientas de infraestructura, como Kubernetes, Helm, Docker Compose, GitHub Actions, GitLab CI y Ansible, se configuran en YAML, mientras que los datos de partida (salida de APIs, kubectl get -o json, estado de Terraform) suelen estar en JSON.

Estilo de bloque frente a estilo de flujo

El estilo de bloque coloca cada clave y elemento de lista en su propia línea y es la opción habitual para archivos de configuración. El estilo de flujo usa {} y [] en línea, como JSON, y mantiene compactas las estructuras hoja cortas. «Flujo desde el nivel 2» mantiene los dos niveles superiores en estilo de bloque y pone en línea todo lo más profundo, lo que funciona bien para listas largas de objetos pequeños, como puertos o variables de entorno.

Comillas seguras

Las cadenas que un parser de YAML podría malinterpretar se citan automáticamente: valores como 'no', 'on', '1.0', 'null', cadenas que empiezan por * o & y cadenas que contienen : . Elige Siempre simples o Siempre dobles si tu guía de estilo exige citar todas las cadenas.

Trampas de YAML 1.1 frente a 1.2

Este convertidor sigue YAML 1.2, la especificación actual. Muchas herramientas antiguas (PyYAML, Psych de Ruby, algunas versiones de Kubernetes y Ansible) aún leen YAML 1.1, donde las reglas son distintas:

  • El problema de Noruega: en YAML 1.1, country: no significa false, así que el código de país de Noruega, NO, desaparece. Lo mismo ocurre con yes, on, off, y y n. YAML 1.2 solo trata true y false como booleanos.
  • Números octales: 0755 es octal en 1.1, pero un decimal normal en 1.2, que usa 0o755. Cita los permisos de archivo para ir sobre seguro.
  • Números sexagesimales: en 1.1, 22:30 puede interpretarse como el número 1350. Cita las horas y los mapeos de puertos como "8080:80".

La conversión JSON → YAML cita automáticamente las cadenas ambiguas ('no', 'on', 'y'), así que el YAML generado se lee igual en ambas versiones.

Preguntas frecuentes

¿La conversión es sin pérdidas?
Sí. Todo documento JSON es YAML 1.2 válido, y el YAML generado se vuelve a analizar exactamente en los mismos datos. Puedes comprobarlo pulsando Intercambiar.
¿Por qué algunas cadenas llevan comillas y otras no?
Con Solo cuando haga falta, las comillas se añaden únicamente donde un valor sin comillas cambiaría de significado, por ejemplo 'yes', '123' o cadenas con caracteres especiales. Todo lo demás se deja sin comillas para que sea más legible.
¿Puedo añadir comentarios a la salida?
JSON no tiene comentarios, así que no hay ninguno que convertir, pero puedes añadir # comments al YAML después de copiarlo.
¿Cambia el orden de las claves?
No. Las claves mantienen su orden del JSON salvo que marques Ordenar claves.
¿Mis datos son privados?
Sí. El convertidor se ejecuta en tu navegador y no hace ninguna petición de red con tu entrada.

Herramientas relacionadas