Datos

Conversor de JSON

Pega un objeto o un array JSON y conviértelo en YAML para un archivo de configuración, XML para una integración heredada, CSV para una hoja de cálculo, TOML para un documento de ajustes, sintaxis de objeto de JavaScript para un fixture, o un archivo PHP con return [...]. Cada formato de salida tiene sus propias opciones —delimitador, carácter de comillas, nombre del elemento raíz, modo de atributos, tamaño de indentación, ordenación de claves— para que el resultado pase a la siguiente herramienta sin una segunda ronda de limpieza. La conversión, el resaltado de sintaxis y la copia ocurren dentro de tu pestaña del navegador.

  • Seis formatos de destino: YAML, XML, CSV, TOML, objeto literal de JavaScript y array PHP con return [...]
  • Opciones propias de cada formato: delimitador / comillas / encabezado / aplanado / expansión de arrays en CSV, nombres de elemento raíz e hijo, declaración y modo de atributos en XML, indentación y ordenación de claves en YAML, ordenación de claves en TOML
  • Valida el JSON en tiempo real, con error en línea y una pista clara cuando la entrada no es JSON estricto
  • Vista previa con resaltado de sintaxis gracias a Shiki, además de copiar el resultado con un clic y pantalla completa para payloads grandes
  • Conversión solo local: sin subidas ni telemetría; segura para respuestas de API, configuraciones internas, fixtures y datos semilla
tools/Conversor de JSON
0 caracteres
Esperando el JSON
El resultado de la conversión aparecerá aquí...
Opciones de formato

Resumen

JSON es estupendo para el transporte de datos, pero el lugar al que van después suele querer otra cosa: un archivo de configuración, una hoja de cálculo, un fixture, una integración heredada. Aquí se reúnen en una sola herramienta los 6 destinos de conversión que los desarrolladores usan más a menudo.

  1. 01

    JSON → YAML

    Genera YAML listo para configuración en herramientas como Helm charts, GitHub Actions, Docker Compose, especificaciones OpenAPI y pipelines de CI. Ajusta el tamaño de indentación, ordena las claves para diffs estables y entrecomilla las cadenas cuando el consumidor es estricto con los tipos.

  2. 02

    JSON → XML

    Produce XML para integraciones con socios, feeds RSS, servicios SOAP y flujos de documentación. Define los nombres de los elementos raíz e hijo, activa el pretty print, incluye o quita la declaración <?xml ?> y activa el modo de atributos, donde claves como @id se convierten en atributos.

  3. 03

    JSON → CSV

    Convierte un array de objetos en un CSV que se abre sin problemas en Excel, Google Sheets, BigQuery o DuckDB. Aplana las claves anidadas a rutas con puntos, elige el delimitador coma / punto y coma / tabulación / barra vertical, cambia entre comillas dobles y simples, decide cómo aparecen los arrays y define el carácter de las celdas vacías.

  4. 04

    JSON → TOML

    Genera TOML para Rust, Hugo, Cargo, Poetry y otras herramientas que prefieren configuraciones en TOML. La raíz debe ser un objeto: el conversor explica la restricción cuando no se cumple.

  5. 05

    JSON → Objeto JS

    Emite sintaxis de objeto literal de JavaScript (claves entre comillas dobles, indentación cómoda para JS) para fixtures, Storybook stories, fragmentos de revisión de código y mocks en línea donde no se necesita JSON estricto.

  6. 06

    JSON → Array PHP

    Genera un archivo completo <?php return [...]; listo para colocar en la configuración de Laravel, ejemplos de WordPress, fixtures de Symfony o cualquier proyecto PHP que prefiera la sintaxis de array a un include de JSON en crudo.

  7. 07

    Validación de JSON en tiempo real

    Cada pulsación se vuelve a analizar. Una insignia verde confirma que el JSON es válido; una insignia roja con una pista en línea señala problemas de corchetes, comas o comillas. Así descartas primero la sintaxis de la entrada antes de perseguir un fallo del conversor que no existe.

  8. 08

    Vista previa con resaltado de sintaxis

    La salida se representa con Shiki y un resaltado según el lenguaje para YAML, XML, CSV, TOML, JavaScript y PHP, de modo que los problemas estructurales —etiquetas de cierre que faltan, claves mal indentadas— se ven a simple vista.

Cómo usarla

El flujo básico son solo 4 pasos. El resultado se recalcula en tiempo real a medida que ajustas el formato de destino o sus opciones.

  1. 01

    Pega un objeto, array, valor primitivo o null JSON válido en el área de entrada de la izquierda.

  2. 02

    Elige el formato de destino —YAML, XML, CSV, TOML, Objeto JS o Array PHP— en el control segmentado de la parte inferior del espacio de trabajo.

  3. 03

    Ajusta las opciones propias del formato elegido, como el delimitador y el aplanado en CSV, los nombres de elemento raíz e hijo en XML, la indentación y la ordenación en YAML o la ordenación de claves en TOML.

  4. 04

    Consulta a la derecha el resultado con resaltado de sintaxis. Pulsa «Copiar resultado» para pegar el contenido en un archivo de configuración, una hoja de cálculo, un fixture o un servicio posterior.

Detalles

Cada formato de salida tiene su escenario ideal. Al elegir formato, no te fijes solo en cuál es más corto, sino en quién usará los datos a continuación y dónde.

  • Para configuraciones que las personas leen —pipelines de CI, valores de Helm, especificaciones OpenAPI, Docker Compose, playbooks de Ansible, ejemplos de documentación—, suele ir bien YAML.
  • Usa XML cuando una integración, una API de un socio, un servicio SOAP, un feed RSS o un ERP heredado todavía exigen un lenguaje de marcado basado en elementos.
  • Para importar en hojas de cálculo, hacer análisis puntual en BigQuery / DuckDB / Pandas, preparar datos para una herramienta de BI o entregarlos a compañeros no técnicos, encaja mejor el CSV.
  • Para archivos de configuración modernos como los de Rust, Cargo, Poetry o Hugo, que quieren claves tipadas con una raíz de objeto, suele ir bien TOML.
  • Para fixtures de JavaScript, Storybook stories, fragmentos de código en documentos MDX, mocks en línea y ejemplos en comentarios de PR, encaja el Objeto JS.
  • Para archivos de configuración de Laravel, ejemplos de WordPress, fixtures de Symfony o cualquier proyecto PHP que prefiera arrays con return [...], encaja el Array PHP.
  • Si el objetivo es solo que otro desarrollador lea estos datos en un ticket, YAML o el JSON formateado suelen ser más claros que otros formatos.

Casos de uso

Este conversor está pensado para las tareas de conversión que se repiten. El mismo flujo —pegar → elegir formato → ajustar opciones → copiar— sirve a distintos flujos de trabajo posteriores.

  1. Respuesta de API → compartir en hoja de cálculo

    Convierte una respuesta JSON paginada en un CSV con encabezado y las claves ya aplanadas, para que un PM, un analista o QA lo abran en Excel o Google Sheets sin escribir un script.

  2. Configuración JSON → migración a YAML

    Migra los ajustes del proyecto, los feature flags o las configuraciones de servicio de JSON a YAML cuando una herramienta posterior (CI, Kubernetes, OpenAPI) prefiere YAML con comentarios y anclas.

  3. JSON → TOML para Rust / Hugo / Poetry

    Usa un objeto JSON como fuente de verdad para generar Cargo.toml, pyproject.toml o bloques de configuración de Hugo, y pega el resultado directamente en la herramienta que lo consume.

  4. Integración con XML heredado

    Convierte payloads JSON a XML al integrarte con un servicio SOAP, un sistema de facturación, un SIS o una API de socio que todavía exige un marcado basado en elementos con atributos.

  5. Generar fixtures PHP / configuración de Laravel

    Genera un archivo <?php return [...]; a partir de respuestas de API o datos de ejemplo y colócalo en una configuración de Laravel, un fixture de Symfony o un ejemplo de WordPress sin escapar las comillas a mano.

  6. Fixtures para Storybook / documentación MDX

    Convierte un ejemplo JSON en un objeto literal de JavaScript para mocks en línea, args de Storybook, bloques de código MDX y ejemplos en comentarios de PR que no necesitan JSON estricto.

  7. Preparación para BigQuery / DuckDB / Pandas

    Aplana el JSON anidado en filas CSV anchas, listas para cargarse en BigQuery, DuckDB o un DataFrame de Pandas para análisis puntual o para preparar datos hacia una herramienta de BI.

  8. Ejemplos de documentación OpenAPI / JSON Schema

    Genera ejemplos en YAML o XML para la documentación de API directamente a partir de fixtures JSON, manteniendo los ejemplos coherentes entre formatos sin reescribirlos a mano.

  9. Comparar formatos antes de decidir el destino

    Alterna entre YAML, XML, CSV, TOML, Objeto JS y Array PHP con la misma entrada para ver qué formato expresa los datos de forma más natural antes de decidirte por uno.

  10. Payload de webhook → post-mortem legible

    Convierte a YAML un payload de webhook capturado de Stripe / GitHub / Slack para que se lea con claridad en un documento de incidencia, sin una línea de JSON tan ancha como la pantalla.

Ver también

Si la entrada procede de una respuesta de API minificada o de un fragmento de log, pásala primero por Formateador de JSON para ver los errores de sintaxis y la estructura anidada antes de convertir. Si el destino es un flujo de tablas y además quieres afinar el resultado, entrega el CSV a Herramientas CSV , para seguir revisando el delimitador, previsualizar la tabla, renombrar columnas, ordenar, filtrar y exportar a CSV / TSV / JSON / Markdown.Si quieres ver con claridad las diferencias de JSON antes y después de la conversión o entre distintos entornos, abre Diferencias de JSON , para comparar en paralelo con un diff al estilo de git y ver cada cambio estructural listado por JSON Path.A la inversa, si la fuente que tienes es un YAML, como un manifiesto de Kubernetes, un GitHub Actions o una descripción OpenAPI, abre Conversor de YAML , que convierte el YAML a JSON, TOML, XML, objetos JS o arrays PHP, expande por defecto los documentos múltiples y las anclas, y detecta trampas habituales como el problema de Noruega o el truncamiento de números de versión.Si solo necesitas convertir un subárbol del JSON, o filtrar primero el arreglo objetivo con jq, usa el Evaluador de JSONPath y jq para extraer la parte necesaria antes de elegir aquí el formato de salida.

Buenas prácticas

Cuanto más grande es el JSON y más estricto el formato de destino, más ayudan estos hábitos a que la conversión sea estable y predecible.

  • Valida y formatea primero el JSON. Si la fuente es una respuesta de API minificada, una línea de log o una cadena copiada de la consola de JS, pásala una vez por el formateador de JSON antes de convertir.
  • El CSV encaja mejor con arrays de objetos de estructura homogénea. Los objetos de forma mixta producen un conjunto de columnas muy ancho; si puedes, normaliza antes los datos a una única estructura.
  • Activa «Aplanar objetos anidados» cuando quieras que los campos anidados se conviertan en columnas con puntos como user.email, address.city o metadata.region.
  • Activa «Expandir arrays» solo cuando las posiciones fijas del array tengan significado, por ejemplo tags.0, tags.1. Si la longitud del array es variable, suele ser mejor volcar todo el array como cadena en una sola celda.
  • En XML, elige nombres de elemento raíz e hijo que coincidan con la API o el esquema del destino. Las claves que empiezan por un dígito o contienen espacios se convierten en nombres XML válidos.
  • Al convertir a TOML, asegúrate de que la raíz del JSON sea un objeto. Un array o un valor primitivo en la raíz no son un documento válido, ni en este conversor ni en la semántica de TOML.
  • Al comparar dos salidas YAML / TOML, activa la ordenación de claves. Un orden estable hace que el diff refleje los cambios reales y no las variaciones en el orden de las claves.
  • Antes de pegar el resultado de Objeto JS o Array PHP en un proyecto, revisa el contenido especial de las cadenas, como comillas, barras invertidas y etiquetas HTML.

Limitaciones

No todas las estructuras que puede representar el JSON se asignan de forma natural a cada formato de destino. Conocer los límites de antemano reduce la confusión de «por qué se ha convertido así».

  • El CSV es tabular por naturaleza. Los objetos y arrays anidados deben aplanarse, convertirse en cadena o expandirse en columnas con índice; siempre se pierde parte de la jerarquía o se codifica como cadena.
  • Si las claves JSON contienen espacios, puntuación o caracteres que no pueden iniciar un nombre de elemento XML, el nombre del elemento XML se convierte en un nombre seguro. Por ejemplo, "first name" pasa a ser first_name.
  • El modo de atributos de XML solo asciende a atributo de elemento las claves que empiezan por @ o que están bajo _attr. El resto de claves se siguen emitiendo como elementos hijos.
  • La conversión a TOML solo acepta objetos como raíz. Si en la raíz hay un array, un valor primitivo o null, se rechaza. Un archivo TOML es un documento de clave-valor, no un formato de valores desnudos.
  • La salida YAML es un punto de partida práctico. Pero el YAML de producción puede necesitar aún comentarios, anclas o sintaxis de bloques multilínea añadidos a mano. Trata el resultado como un buen borrador, no como el archivo final.
  • La salida de Objeto JS conserva las claves entre comillas dobles por seguridad y coherencia. Es sintaxis de JavaScript, no JSON estricto; no la vuelvas a pasar por un analizador de JSON.
  • La salida de Array PHP genera un archivo completo que empieza por <?php e incluye return [...];. Conviene revisar de nuevo las cadenas que contienen barras invertidas o comillas simples antes de llevarlas a un proyecto real.
  • Las entradas JSON muy grandes, de varios MB, pueden ralentizar la conversión y el resaltado de sintaxis en el navegador. En ese caso, verifica primero las opciones con un fragmento representativo antes de procesar el conjunto completo.

Preguntas frecuentes

Aquí reunimos preguntas prácticas sobre formatos, opciones, privacidad, validación y cómo elegir entre los distintos destinos de salida.

¿A qué formatos se puede convertir?

A seis formatos de destino: YAML, XML, CSV, TOML, objeto literal de JavaScript y un archivo de array PHP con <?php return [...];. Cada formato tiene sus propias opciones, como el delimitador, la indentación, el nombre del elemento raíz o la ordenación de claves.

¿Se sube mi JSON a algún sitio?

No. El análisis, la conversión, el resaltado de sintaxis y la copia ocurren dentro de tu pestaña actual del navegador; el payload no se envía a ningún servidor. Puedes procesar en local respuestas de producción, configuraciones internas o datos de ejemplo con PII.

¿Qué significa «Aplanar objetos anidados» en CSV?

Al activarlo, las claves anidadas se unen con puntos para formar columnas individuales. Por ejemplo, { "user": { "city": "Tokyo" } } genera una columna user.city. Al desactivarlo, el objeto anidado se guarda como cadena JSON en una sola celda.

¿Qué significa «Expandir arrays» en CSV?

Al activarlo, los elementos del array se despliegan en columnas con índice. Por ejemplo, tags: ["a", "b"] pasa a ser las columnas tags.0 y tags.1. Al desactivarlo, todo el array se convierte en cadena dentro de una sola celda, conservando así su estructura completa.

¿Se puede personalizar la salida XML?

Sí. Puedes definir el nombre del elemento raíz (por defecto root), el nombre del elemento hijo (por defecto item), si se usa pretty print, si se incluye la declaración <?xml version=...?> y si se activa el modo de atributos que convierte las claves con @ en atributos.

¿Por qué la conversión a TOML exige que la raíz sea un objeto?

Un documento TOML es, en esencia, una tabla de clave-valor. Un array, un valor primitivo o null en la raíz no tienen una forma natural de expresarse en TOML. Por eso la herramienta muestra un error claro en lugar de generar un TOML no válido.

¿La salida de Objeto JS es JSON válido?

No. La salida de Objeto JS es sintaxis de objeto literal de JavaScript, pensada para fixtures, Storybook stories, mocks en línea y fragmentos de código. Si necesitas JSON estricto, usa el JSON original.

¿La salida de Array PHP es un archivo PHP completo?

Sí. La salida empieza por <?php e incluye return [...];, de modo que el archivo se puede incluir con require directamente desde una configuración de Laravel, un fixture de Symfony o un ejemplo de WordPress. Conviene revisarlo un momento antes de llevarlo al proyecto.

¿La ordenación de claves de YAML cambia los datos?

No, solo cambia el orden de las claves en la salida YAML. Actívala al comparar varios resultados de conversión: un orden estable hace que el diff se centre en las diferencias reales de contenido y no en las variaciones de orden.

¿Se pueden usar como entrada JSON5, JSONC o NDJSON?

El analizador de entrada usa JSON estricto (RFC 8259). Para JSON5 / JSONC (comentarios, comas finales, comillas simples, etc.), pásalo primero por la opción de intentar reparar del formateador de JSON. El NDJSON hay que dividirlo por líneas y convertir cada una por separado.

¿Por qué los nombres de elemento XML no coinciden con las claves JSON?

Los nombres de elemento XML no pueden empezar por un dígito ni contener espacios ni la mayoría de los signos de puntuación. Las claves que incumplen esas reglas se convierten en nombres seguros: "first name" pasa a ser first_name y "2items" pasa a ser _2items, para que el XML resultante sea válido.

¿Puede procesar archivos JSON muy grandes?

Las respuestas de API y los archivos de configuración habituales, de unos cientos de KB a algún MB, se convierten con fluidez. Decenas de MB de JSON ralentizan el navegador; para entradas muy grandes, verifica primero las opciones con un fragmento representativo antes de procesar el archivo completo.

Herramientas relacionadas

Continúa el flujo de trabajo con JSON sin salir de la colección de herramientas de datos: valida el payload de origen, ajusta el CSV resultante o realiza otra pasada de conversión.