Validar sintaxis JSON
Pegue un documento de datos y sepa al instante si se puede leer: un registro de Ada con sus roles pasa, y una coma que falta se señala con su línea, su columna y su posición. Nada se corrige ni se reformatea a sus espaldas. Gratis en su navegador.
- Gratis
- Funciona en su navegador
- Sin registro
- Sus datos no salen de su equipo
Ejecutar — gratis
El validador siempre devuelve un resultado estructurado: una entrada válida genera un indicador verdadero sencillo, mientras que una entrada no válida genera falso junto con el mensaje del analizador y la posición, línea y columna donde se detuvo el análisis.
Compruebe la sintaxis sin modificar el documento
Un validador de sintaxis debe responder una pregunta precisa: ¿puede un analizador compatible con el estándar leer exactamente esta cadena? No recorta el contenido, sustituye comillas, elimina comentarios, inserta comas, reordena claves ni reinterpreta valores. Un resultado no válido conserva el fallo en la salida normal en vez de convertirlo en una excepción.
Por ello, usted puede mostrar la respuesta inmediatamente o evaluar el indicador de validez mediante código.
Interprete la ubicación del error
Cuando el análisis falla, el resultado incluye un objeto de error con un mensaje y tres coordenadas. La posición es un desplazamiento de caracteres, iniciado en cero, desde el comienzo de la cadena JavaScript. La línea y la columna comienzan en uno, por lo que son prácticas para mostrarlas en un editor o aviso de validación.
Cada salto de línea incrementa la línea y reinicia la columna. La ubicación señala el punto donde el analizador detectó que no podía continuar; el error real puede estar justo antes. Por ejemplo, una coma ausente entre dos propiedades suele señalarse en la comilla inicial de la segunda, pues allí el analizador descubre que la primera no terminó correctamente.
Un objeto o una matriz incompletos se señalan al final del texto. La redacción del analizador puede variar entre entornos JavaScript; use los campos numéricos para navegar y muestre el mensaje a las personas, en vez de depender de su texto completo como categoría estable.
Qué puede hacer con ella
Ofrezca indicaciones precisas en un editor
Use el desplazamiento, la línea y la columna devueltos para guiar al usuario hasta el punto donde falló el análisis.
Preguntas frecuentes
¿Por qué el error aparece después de la equivocación real?
La ubicación marca el punto en el que la lectura ya no pudo continuar, y el error real suele estar justo antes. Una coma que falta entre dos entradas se señala casi siempre en la comilla de apertura de la segunda.
¿Se aceptan comentarios, comillas simples o una coma final?
No. Los comentarios, los textos entre comillas simples, una coma sobrante tras el último elemento, el contenido adicional después del documento y el texto vacío se rechazan, porque el formato estándar no los permite.
¿El validador corrige o reformatea mi texto?
No. El texto se comprueba exactamente como usted lo pegó: no se recortan espacios, no se cambian comillas, no se añaden comas ni se quitan comentarios, así que ninguna limpieza automática oculta un defecto.
¿Desde dónde se cuentan la línea, la columna y la posición?
La línea y la columna empiezan en 1, como muestran la mayoría de los editores. La posición empieza en 0 y cuenta caracteres desde el inicio del texto. Cada salto de línea pasa a la línea siguiente y reinicia la columna.
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/json-validate \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"text":"{\"name\":\"Ada\",\"active\":true}"}'const res = await fetch("https://api.kit.forhosting.com/web/json-validate", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"text": "{\"name\":\"Ada\",\"active\":true}"
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/web/json-validate",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"text": "{\"name\":\"Ada\",\"active\":true}"
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/web/json-validate", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"text":"{\\"name\\":\\"Ada\\",\\"active\\":true}"}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"text":"{\"name\":\"Ada\",\"active\":true}"}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/web/json-validate", 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": "{\"name\":\"Ada\",\"active\":true}"
}Ejemplo de respuesta
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "web.json_validate",
"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
Pegue o envíe una cadena JSON para comprobar si su sintaxis es válida sin modificar, formatear ni reparar el contenido original. Esta respuesta predecible resulta útil en editores, formularios de carga, comprobaciones de despliegue, conjuntos de pruebas y cualquier flujo que deba explicar un documento JSON defectuoso sin interrumpirse.
Compruebe la sintaxis sin modificar el documento
Esta herramienta entrega el texto proporcionado directamente al analizador JSON de la plataforma. Esta cautela es importante al probar configuraciones o cargas de API, porque una corrección automática podría ocultar el defecto que seguirá fallando en producción. Un resultado válido significa que se aceptó la cadena completa como un solo valor JSON, incluidos objetos, matrices, cadenas, números, booleanos y null. El texto vacío, el contenido sobrante, los comentarios, las cadenas con comillas simples, las comas finales y los caracteres de control sin escapar siguen siendo inválidos porque no pertenecen a la sintaxis JSON.
Utilice el resultado con seguridad en formularios y controles
En un formulario del navegador, ejecute la validación antes de enviar una configuración y desplace el cursor a la posición indicada cuando el resultado sea falso. El algoritmo es determinista, no usa red, modelos, valores aleatorios, reloj ni estado persistente. Su ejecución crece linealmente con el tamaño del documento en el análisis y el cálculo de la ubicación habituales. En un flujo de API, trate la respuesta como datos: continúe únicamente cuando sea válida; de lo contrario, adjunte la línea, la columna y el mensaje a un informe de compilación, una incidencia de soporte o una carga rechazada. Un JSON mal formado es contenido esperado del usuario, por lo que produce un resultado correcto con el indicador en falso, no un fallo de entrada inválida. La solicitud solo se rechaza cuando falta el campo de texto obligatorio o este no es una cadena, ya que entonces no existe contenido JSON que examinar. La API cuesta $0.002 por solicitud, mientras que la versión del navegador realiza la misma comprobación localmente.
Casos de integración
Valide la configuración antes del despliegue
Detenga una versión cuando un archivo de configuración JSON contenga una coma ausente, un corchete sin pareja, un escape inválido u otro defecto de análisis.
Rechace ejemplos de carga API defectuosos
Compruebe cadenas JSON capturadas o generadas en pruebas sin permitir que una excepción interrumpa el ejecutor.
Preguntas técnicas
¿Qué devuelve el validador de sintaxis JSON?
Un JSON válido devuelve un objeto con valid en true. Uno no válido devuelve valid en false, un mensaje, una posición iniciada en cero y una línea y columna iniciadas en uno.
¿Repara o formatea un JSON no válido?
No. Valida la cadena original exacta e informa del fallo sin modificar el documento.
¿Admite comentarios y comas finales?
No. El estándar JSON no admite comentarios ni comas finales, por lo que se informan como errores de sintaxis.
¿Puede un valor primitivo ser JSON válido?
Sí. Un documento JSON puede contener como valor superior un objeto, una matriz, una cadena, un número, un booleano o null.
¿Cuánto cuesta una validación mediante API?
Cada solicitud de API cuesta $0.002. La herramienta interactiva del navegador puede ejecutar localmente la misma validación determinista.