← Todas las herramientas

Convertidor de JSON a YAML

Convierte JSON a YAML y YAML a JSON al instante en tu navegador. Solo en local y privado, con notas sobre comentarios, tipos, indentación y anclas.

Convierte JSON a YAML y YAML a JSON en tu navegador

JSON y YAML describen el mismo tipo de datos — mapas anidados, listas, cadenas, números y booleanos — pero se ven muy distintos y se usan en lugares diferentes. Si pasas algo de tiempo cerca de APIs, archivos de contenedores o pipelines de CI, tarde o temprano necesitas convertir uno en otro. Esta página hace esa conversión en ambos sentidos, por completo dentro de tu navegador, así que los datos que pegues nunca salen de tu máquina.

Llaves abstractas de luz transformándose en capas de configuración con sangría limpia sobre un fondo índigo oscuro
La estructura JSON desplegándose en YAML basado en sangría.

Qué es JSON y dónde vive

JSON (JavaScript Object Notation) es un formato estricto de corchetes y llaves construido pensando primero en las máquinas. Cada objeto se envuelve en {}, cada array en [], las claves y los valores de cadena van entre comillas dobles, y los elementos se separan con comas. Es el formato de transmisión predeterminado para las APIs REST y GraphQL, el cuerpo de la mayoría de los webhooks, la forma de los documentos NoSQL y lo que devuelve tu llamada fetch. Casi todos los lenguajes lo analizan de fábrica, que es justo por lo que ganó la capa de API: JSON.parse en JavaScript, json en la biblioteca estándar de Python y equivalentes en todos los demás. El inconveniente es que JSON resulta verboso de escribir a mano y prohíbe los comentarios, así que es un mal formato para archivos que un humano edita todo el día.

Qué es YAML y dónde vive

YAML (YAML Ain't Markup Language) se diseñó con la prioridad opuesta: los humanos primero. Prescinde de las llaves y las comillas, usa la sangría para expresar el anidamiento y te permite escribir comentarios con #. Esa legibilidad es la razón por la que se convirtió en la lengua franca de la configuración. Los archivos de Docker Compose, los manifiestos de Kubernetes, los flujos de GitHub Actions y GitLab CI, los playbooks de Ansible e incontables archivos de configuración de aplicaciones son todos YAML. Un documento YAML típico es notablemente más corto que el JSON equivalente y mucho más fácil de comparar en una pull request. El coste de esa elegancia es la fragilidad, que es donde la conversión se pone interesante.

Las diferencias clave que importan

Tres diferencias guían casi toda decisión de conversión. Primera, el espacio en blanco es significativo en YAML y carece de sentido en JSON. YAML usa espacios — nunca tabuladores — para denotar la estructura, así que un solo espacio mal alineado puede cambiar en silencio el significado de un documento. A JSON no le importa nada la sangría. Segunda, YAML admite comentarios y JSON no. Cualquier comentario # de YAML simplemente desaparece cuando produces JSON, porque no hay dónde ponerlo. Tercera, YAML tiene un tipado más rico e implícito. Lee con gusto fechas, marcas de tiempo y null en varias formas de escritura, y adivina los tipos a partir de valores sin comillas. JSON tiene un conjunto de tipos pequeño y explícito, sin ambigüedad. Ten en cuenta también que JSON es técnicamente un subconjunto de YAML 1.2, que es por lo que un JSON válido suele analizarse limpiamente como YAML, pero lo contrario no está garantizado.

Un árbol de datos anidado convirtiéndose entre dos formatos estructurados luminosos en cian y dorado
Los mismos datos en árbol expresados como dos formatos.

Detalles de conversión a vigilar

El viaje de ida y vuelta no siempre es sin pérdida, y conviene saber dónde se rompen las cosas:

  • El problema de Noruega. Bajo las reglas de YAML 1.1, un NO sin comillas se analiza como el booleano false, y yes, on y off también se vuelven booleanos. Un código de país o una etiqueta de interruptor puede cambiar a true/false antes de que te des cuenta. Pon entre comillas los valores que quieras como cadenas.
  • Coerción de números. Una versión como 3.10 puede perder su cero final y convertirse en 3.1, y 1.0 se vuelve un número incluso cuando querías texto. Pon entre comillas las cadenas de versión y los identificadores.
  • Las anclas y los alias desaparecen. Las referencias &ancla y *alias de YAML no tienen equivalente en JSON. Un buen conversor las expande a su valor completo, así que los datos son correctos pero la deduplicación se pierde — de JSON a YAML a JSON no se reconstruirán las anclas originales.
  • Comentarios y escalares de bloque. Los comentarios se descartan al pasar a JSON. Los escalares de bloque multilínea (| y >) se colapsan en cadenas JSON ordinarias con escapes \n, así que se pierde la intención del formato visual.
  • Sangría al volver a YAML. JSON no codifica la sangría, así que el conversor elige un estilo consistente. Revísalo antes de pegarlo en una herramienta sensible a los tabuladores.

Por qué importa que sea solo local

Los archivos de configuración y las cargas útiles de API son exactamente el tipo de cosa que no debería subirse a un servidor cualquiera: a menudo llevan nombres de host, tokens, nombres de servicios internos o datos de clientes. Este conversor ejecuta el paso de analizar y emitir en tu navegador con JavaScript. Nada se envía a un backend, nada se registra y la herramienta funciona sin conexión una vez cargada la página. Pega un secreto de Kubernetes o un flujo de CI con la confianza de que se queda en tu máquina.

¿Necesitas herramientas relacionadas? Explora el conjunto completo de conversores de datos, limpia una entrada desordenada con el formateador de JSON y vuelve aquí siempre que necesites moverte entre el mundo de las APIs y el mundo de la configuración.

Preguntas frecuentes

¿Mis datos se suben a algún sitio?

No. La conversión ocurre por completo en tu navegador usando JavaScript local. Tu JSON o YAML nunca se envía a un servidor, así que los secretos y los archivos de configuración permanecen privados.

¿Por qué mi valor YAML true o false cambió inesperadamente?

YAML 1.1 trata palabras sin comillas como yes, no, on y off como booleanos: el problema de Noruega. Envuelve entre comillas cualquier valor que quieras como cadena para que sobreviva la conversión como texto.

¿Qué les pasa a mis comentarios cuando convierto YAML a JSON?

JSON no tiene sintaxis de comentarios, así que todos los comentarios con almohadilla se eliminan durante la conversión. Si necesitas conservar las notas, mantén tu copia de referencia en YAML.

¿Se conservan las anclas y los alias de YAML?

Se expanden a sus valores completos porque JSON no tiene mecanismo de referencia. Los datos siguen siendo correctos, pero la deduplicación no es recuperable cuando vuelves a convertir a YAML.

¿Puedo convertir tanto JSON a YAML como YAML a JSON?

Sí, la herramienta funciona en ambas direcciones. Pega JSON para obtener YAML, o pega YAML para obtener JSON, y el conversor detecta y emite el otro formato.

¿Por qué se rompe YAML cuando uso tabuladores?

YAML requiere espacios para la sangría y rechaza los tabuladores. Si un pegado no se analiza, reemplaza los tabuladores por espacios y mantén la sangría consistente.