Convertir YAML a JSON en línea
Pegue una configuración YAML y obtenga los mismos datos como objetos y listas estructurados: en el ejemplo, los puertos 8080 y 8443 llegan como números reales y true y false siguen siendo valores de sí o no. Una sangría rota se avisa, nunca se adivina. Gratis en su navegador.
- Gratis
- Funciona en su navegador
- Sin registro
- Sus datos no salen de su equipo
Ejecutar — gratis
Convierta configuraciones estructuradas sin alterar su significado
YAML es habitual en archivos de configuración porque la sangría y la sintaxis concisa de las listas facilitan que las personas editen documentos extensos. La conversión es determinista: una entrada idéntica siempre genera el mismo objeto y orden de claves. Esta estabilidad resulta útil al revisar la salida en una solicitud de cambios o compararla mediante una prueba.
Si el origen contiene sangría incorrecta, una colección de flujo sin cerrar, un valor entrecomillado defectuoso u otro problema de sintaxis, la operación falla con claridad en vez de inventar silenciosamente una estructura que podría llegar a desplegarse.
Prepare bien el YAML y comprenda los tipos resultantes
Comience con un único documento YAML que contenga un mapa, una secuencia o combinaciones anidadas de ambos. La sangría debe usar espacios, no tabulaciones, y las entradas del mismo nivel deben quedar alineadas. Encierre un valor entre comillas cuando deba seguir siendo texto, sobre todo si un identificador con apariencia numérica o una palabra como true no debe transformarse en número o booleano.
Se aceptan tanto las colecciones en bloque como formas de flujo habituales, por ejemplo [one, two] y {name: api, enabled: true}. El texto de bloque literal y plegado permite representar contenido de varias líneas, mientras que los comentarios en línea se ignoran durante la conversión de datos. Si un archivo contiene separadores para varios documentos independientes, divídalo primero y convierta cada documento por separado.
Revise a mano o intégrelo en sus procesos
Pegue el contenido de origen, ejecute el convertidor y copie el resultado estructurado en la herramienta de destino. Una herramienta de soporte puede presentar la configuración analizada en un inspector seguro de objetos sin mantener una segunda implementación del convertidor. En todos los casos, trate una respuesta de entrada inválida como una señal para detener el proceso y devolver el mensaje del analizador a la persona responsable del archivo.
No reintente un YAML inválido sin modificarlo, pues el análisis es determinista. Como el algoritmo no utiliza red, reloj, valores aleatorios ni modelos, se adapta a compilaciones y pruebas repetibles en las que el mismo origen siempre debe producir el mismo resultado.
Preguntas frecuentes
¿Se conservan los números y los booleanos?
Use comillas en YAML cuando un valor deba permanecer como texto.
¿Por qué falla la conversión de mi YAML?
Lo habitual es una sangría con tabulaciones en lugar de espacios, elementos hermanos desalineados, un corchete o una llave sin cerrar o un valor entre comillas roto. El mensaje señala el problema, y repetir sin cambiar nada da el mismo error, porque el resultado no varía.
¿Cómo mantengo como texto un código numérico o la palabra true?
Póngalo entre comillas. Sin comillas, true y false pasan a ser valores de sí o no y las cifras se convierten en números. Entre comillas, un identificador que solo parece numérico, o la propia palabra true, se queda como texto.
¿Qué pasa con los comentarios del YAML?
Se ignoran al convertir. El formato de destino no tiene un lugar estándar para comentarios, así que no aparecen en el resultado, pero tampoco alteran ningún dato de los que tienen alrededor.
¿Se admiten anclas o varios documentos en un mismo archivo?
No. Las anclas, las referencias a ellas y las etiquetas explícitas se rechazan en lugar de resolverse mal, y cada conversión acepta un solo documento. Si su archivo contiene varios, divídalo en los separadores de documento y convierta cada parte.
Herramientas relacionadas
Para desarrolladores — acceso por API
Todo lo de esta página está disponible por programación. Esta sección es para equipos que quieren integrarlo en sus sistemas; el resto puede usar la herramienta de arriba sin más.
Endpoint de API
¿Prefiere automatizarlo? Un POST autenticado crea la tarea; el resultado llega por webhook o enlace firmado. La misma capacidad también se ejecuta aquí en la web, por email y desde Telegram — y pronto también desde nuestra app.
Llámela desde su stack
curl -X POST https://api.kit.forhosting.com/web/yaml-to-json \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"text":"service:\n name: api\n ports:\n - 8080\n - 8443\nenabled: true"}'const res = await fetch("https://api.kit.forhosting.com/web/yaml-to-json", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"text": "service:\n name: api\n ports:\n - 8080\n - 8443\nenabled: true"
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/web/yaml-to-json",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"text": "service:\n name: api\n ports:\n - 8080\n - 8443\nenabled: true"
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/web/yaml-to-json", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"text":"service:\\n name: api\\n ports:\\n - 8080\\n - 8443\\nenabled: true"}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"text":"service:\n name: api\n ports:\n - 8080\n - 8443\nenabled: true"}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/web/yaml-to-json", body)
req.Header.Set("Authorization", "Bearer "+os.Getenv("KIT_KEY"))
req.Header.Set("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)Ejemplo de solicitud
{
"text": "service:\n name: api\n ports:\n - 8080\n - 8443\nenabled: true"
}Ejemplo de respuesta
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "web.yaml_to_json",
"status": "queued",
"_links": {
"result": "/tasks/tsk_…/result"
}
}La API es asíncrona: la llamada devuelve un task_id al instante y el resultado llega por webhook. El polling está limitado a 1 req/s por tarea.
Precio
Precio publicado — sin tokens ni créditos inventados. Una tarea fallida no se cobra.
Límites
timeout_sec | 30 |
max_crawl_pages | 25 |
Errores
| HTTP | Código | Significado |
|---|---|---|
401 | unauthorized | API key ausente o inválida. |
402 | insufficient_balance | El saldo no cubre el precio de la tarea. |
404 | unknown_type | El tipo de tarea no existe. |
429 | rate_limited | Demasiadas peticiones. Use el webhook en vez de sondear. |
Notas técnicas
Convierta un documento YAML en JSON equivalente sin reescribir manualmente la sangría, las listas, los booleanos, los números ni los objetos de configuración anidados. Pegue YAML en la herramienta del navegador para obtener un resultado inmediato o llame a la API cuando la conversión forme parte de un proceso de compilación, validación, migración o despliegue. El analizador genera datos deterministas compatibles con JSON y notifica el YAML inválido como un error de entrada, en lugar de devolver un documento supuesto o convertido solo en parte. Por ello, el resultado sirve tanto para una inspección rápida como para una automatización repetible.
Convierta configuraciones estructuradas sin alterar su significado
Sin embargo, muchas API, herramientas web, validadores y entornos de programación requieren JSON. Este convertidor conecta ambos formatos y conserva el modelo de datos subyacente: los mapas se convierten en objetos JSON, las secuencias en matrices y los booleanos, números, textos y valores nulos reconocidos mantienen el tipo apropiado. Por tanto, los servicios anidados, los ajustes de entorno, las listas de puertos, los indicadores de funciones y los metadatos siguen estructurados en lugar de quedar aplanados como texto. Los comentarios no aparecen en el resultado JSON porque este formato no posee un tipo estándar para ellos, aunque un comentario tampoco modifica los datos analizados.
Prepare bien el YAML y comprenda los tipos resultantes
Los valores simples como true, false, null, enteros, decimales y notación científica se convierten a sus tipos JSON correspondientes. La capacidad rechaza deliberadamente anclas, alias y etiquetas explícitas de YAML, en lugar de fingir que interpreta correctamente esas funciones avanzadas. También admite un solo documento YAML por solicitud. Estos límites facilitan la comprensión de los errores y permiten que cada valor devuelto se serialice directamente como JSON estándar.
Use el navegador para inspeccionar y la API para automatizar
La experiencia en el navegador resulta práctica para revisar un archivo de configuración, preparar una solicitud de API, depurar un manifiesto de despliegue o mostrar a otra persona cómo se representa exactamente una jerarquía YAML en JSON. Para trabajos repetidos, envíe el mismo campo de texto mediante la API por $0.002 por elemento. Un proceso de integración continua puede convertir una configuración guardada en el repositorio antes de pasarla a un validador de JSON Schema. Un script de migración puede normalizar el YAML entrante antes de almacenar los datos en un sistema orientado a JSON.
Casos de integración
Validar una configuración de despliegue
Convierta un archivo YAML de servicio o despliegue a JSON antes de aplicarle un validador de JSON Schema durante la integración continua.
Preparar datos para una API que solo acepta JSON
Transforme una plantilla de solicitud YAML mantenida por personas en el objeto JSON exigido por una integración o un servicio interno.
Inspeccionar ajustes anidados
Convierta un YAML desconocido a JSON para que un inspector web, una herramienta de diferencias o una utilidad de depuración muestre su estructura y sus tipos exactos.
Preguntas técnicas
¿Cuánto cuesta convertir YAML a JSON?
Cada conversión mediante la API cuesta $0.002 por elemento. La herramienta del navegador permite realizar conversiones interactivas directamente.
¿Qué sucede si la sintaxis de YAML no es válida?
La capacidad devuelve un error invalid_input con un mensaje que describe el problema detectado de sintaxis o sangría; nunca entrega un JSON parcial.
¿Se incluyen los comentarios de YAML en JSON?
No. JSON no posee una representación estándar para los comentarios de YAML, por lo que se ignoran mientras se conservan los valores de datos subyacentes.
¿Puedo convertir varios documentos YAML en una solicitud?
No. Envíe un documento YAML por solicitud para que el resultado sea un único valor JSON inequívoco.