Formato de fichero

El fichero .json de un test: qué lleva y cómo abrirlo

Un test de CanQuiz se exporta como un fichero .json: texto con las preguntas, las opciones y las respuestas dentro. Aquí está su formato campo a campo, con un ejemplo que se abre en el navegador sin crear cuenta.

Se abre en app.canquiz.com/abrir. El fichero se lee en tu navegador.

Qué es y de dónde sale

Es lo que descargas con el botón de exportar de un test, eligiendo «JSON (para reimportar)». Pesa unos pocos kilobytes, viaja por WhatsApp o por correo como cualquier adjunto y no caduca. Por eso los tests pasan de mano en mano así.

Si alguien te lo ha pasado, no hace falta entender nada de lo que sigue: suéltalo en app.canquiz.com/abrir y haz el test. Esta página es para quien quiere saber qué hay dentro, escribir uno a mano o hacer que otra herramienta los genere.

El nivel superior

El fichero es un objeto JSON. Lo único imprescindible es la lista de preguntas y el objeto de ajustes, aunque vaya vacío.

questionslistaobligatorio
Las preguntas, en el orden en que salen. Al menos una. Cada una se describe más abajo.
settingsobjetoobligatorio
Cómo se juega el test: barajar, nota para aprobar, explicaciones. Tiene que estar aunque sea vacío; todos sus campos son opcionales.
metadataobjeto
Datos del test. El que usa CanQuiz al abrirlo es title_suggestion, el título que se propone si el fichero no trae otro, de hasta 120 caracteres. El resto se conserva tal cual.
_canquiz_urltexto
Lo añade la exportación junto a _canquiz: el enlace al test original y una nota de una línea. Al abrir el fichero se quitan, así que puedes borrarlos o dejarlos.

También se abre el mismo contenido envuelto en otro objeto con dos campos, title y content: title pasa a ser el título del test y content lleva questions, settings y metadata.

Cada pregunta

Los mismos campos para todos los tipos. Las respuestas se comparan por texto exacto, así que lo que pongas en correct_answer tiene que estar escrito igual que en options.

idtextoobligatorio
Un identificador corto, como q1, q2, q3. No se enseña, pero no puede repetirse dentro del test: importar a una cuenta rechaza los repetidos.
typetextoobligatorio
El tipo de pregunta, tal cual: single_choice, multiple_choice, true_false, question_answer, short_answer o code_recall. Están explicados en la sección siguiente.
questiontextoobligatorio
El enunciado, hasta 2000 caracteres. Solo texto: el formato no lleva imágenes.
optionslista
Las opciones, cada una de hasta 1000 caracteres. Obligatorias en las de elegir; las preguntas abiertas no llevan este campo.
correct_answertexto o listaobligatorio
El texto exacto de la opción correcta, o una lista de textos en multiple_choice. En las abiertas, la respuesta esperada. Hasta 2000 caracteres.
explanationtexto
Por qué es correcta, hasta 20000 caracteres. Se enseña al corregir si el test tiene activadas las explicaciones.

Tipos de pregunta

El valor de type decide qué campos hacen falta y cómo se corrige la respuesta.

single_choiceuna correcta
Una sola opción correcta entre varias. correct_answer es un texto que tiene que coincidir con una de las options.
multiple_choicevarias correctas
Al menos dos opciones, y una o más correctas. correct_answer es una lista con el texto de cada opción correcta.
true_falseverdadero o falso
Exactamente dos opciones, en el idioma que quieras (Verdadero y Falso, True y False). correct_answer es una de las dos.
question_answerabierta
Sin options. Se contesta escribiendo y la corrige la IA comparando con correct_answer, que es la respuesta modelo. Esa corrección necesita cuenta.
short_answerrespuesta corta
Sin options. Se contesta con una palabra o una frase breve, y se corrige en el propio dispositivo sin tener en cuenta mayúsculas, tildes, signos ni un artículo delante. correct_answer puede ser una lista de respuestas válidas.
code_recallejercicio de código
Los ejercicios de programación de CanQuiz. Llevan un campo drill con un formato propio y largo que se genera en la aplicación; no está pensado para escribirse a mano y no se detalla aquí.

Los ajustes

Todos opcionales. Si falta uno, se entiende que está apagado o que vale lo de siempre.

shuffle_questionstrue o false
Baraja el orden de las preguntas cada vez que se hace el test.
shuffle_optionstrue o false
Baraja el orden de las opciones dentro de cada pregunta.
passing_scorenúmero
El porcentaje para aprobar, de 0 a 100.
show_explanationtrue o false
Enseña la explicación al corregir cada pregunta.
show_progresstrue o false
Enseña cuántas preguntas llevas y cuántas quedan.
time_limitnúmero
Un límite en segundos, mayor que 0. Se acepta y se conserva, pero hoy CanQuiz no lo aplica: no hay cuenta atrás.
ai_strictness_levelnúmero
De 1 a 10: lo exigente que es la corrección con IA de las preguntas abiertas.

Un ejemplo completo

Cuatro preguntas de cuatro tipos distintos, con sus ajustes, y todas se corrigen sin cuenta. Cópialo o descárgalo y ábrelo en app.canquiz.com/abrir para ver cómo queda.

{
  "metadata": {
    "title_suggestion": "El agua (ejemplo)"
  },
  "settings": {
    "shuffle_questions": false,
    "shuffle_options": true,
    "passing_score": 70,
    "show_explanation": true,
    "show_progress": true
  },
  "questions": [
    {
      "id": "q1",
      "type": "single_choice",
      "question": "¿A qué temperatura hierve el agua pura a nivel del mar?",
      "options": [
        "90 °C",
        "100 °C",
        "110 °C",
        "120 °C"
      ],
      "correct_answer": "100 °C",
      "explanation": "A una atmósfera de presión, el agua pura hierve a 100 °C."
    },
    {
      "id": "q2",
      "type": "multiple_choice",
      "question": "¿Qué elementos forman una molécula de agua?",
      "options": [
        "Hidrógeno",
        "Oxígeno",
        "Carbono",
        "Nitrógeno"
      ],
      "correct_answer": [
        "Hidrógeno",
        "Oxígeno"
      ],
      "explanation": "H₂O: dos átomos de hidrógeno y uno de oxígeno."
    },
    {
      "id": "q3",
      "type": "true_false",
      "question": "El hielo flota en el agua líquida porque es menos denso que ella.",
      "options": [
        "Verdadero",
        "Falso"
      ],
      "correct_answer": "Verdadero",
      "explanation": "Al congelarse, el agua se expande y su densidad baja a unos 0,92 g/cm³."
    },
    {
      "id": "q4",
      "type": "short_answer",
      "question": "¿Cómo se llama el paso del agua de líquido a gas por debajo de su punto de ebullición?",
      "correct_answer": "Evaporación",
      "explanation": "Ocurre en la superficie a cualquier temperatura: por eso la ropa tendida se seca sin llegar a 100 °C."
    }
  ]
}

Si lo editas, guárdalo como texto con la extensión .json. Un editor de código avisa si se te escapa una coma o unas comillas.

Por qué un fichero no se abre

Al abrir un fichero, CanQuiz no adivina: o cumple el formato o avisa. Estos son los fallos de siempre.

La correcta como letra

«B» o «2» en correct_answer no valen en un fichero: tiene que ir el texto de la opción, escrito igual.

Falta settings

Aunque no quieras cambiar nada, el objeto settings tiene que estar. Vacío vale.

Un verdadero o falso con más de dos opciones

true_false lleva exactamente dos. Para tres o más, usa single_choice.

Una abierta con opciones

question_answer no puede llevar options. Si tiene opciones, es una de elegir.

Un tipo mal escrito

multiple-choice con guion o MultipleChoice no son tipos: se escriben en minúsculas y con guion bajo.

Un texto demasiado largo

Cada campo tiene su tope de caracteres, puesto para parar ficheros absurdos: un enunciado de más de dos mil caracteres ya no se abre.

Ids repetidos

Dos preguntas con el mismo id se pueden hacer sin cuenta, pero no se pueden importar a una cuenta.

Si lo que tienes es la respuesta de una IA

Para abrir la respuesta de ChatGPT o de otra IA no hace falta que cumpla todo esto. «Pegar texto», en app.canquiz.com/abrir, es mucho más tolerante: busca el test dentro de todo lo que pegues, entiende la correcta dada por su letra, arregla comillas y abre lo que llegó entero de una respuesta cortada. La instrucción para pedírselo está en cómo hacer preguntas tipo test con ChatGPT.

Preguntas frecuentes

¿Necesito cuenta para abrir un .json?

No. En app.canquiz.com/abrir lo sueltas o lo eliges, y haces el test entero, con correcciones y explicaciones. La cuenta solo hace falta para guardarlo, repasarlo más adelante o editarlo: al entrar, lo importas otra vez desde «Mis tests», porque lo abierto sin cuenta no se guarda solo. Entonces el test pasa a ser tuyo y quien te lo pasó ya no puede cambiarlo.

¿El fichero se sube a algún servidor?

Mientras no entres en una cuenta, no. El navegador lee el fichero en tu dispositivo y el test se hace ahí. Si decides guardarlo, entonces sí se guarda en tu cuenta de CanQuiz.

¿Cómo exporto un test mío a JSON?

Abre el test en la aplicación, pulsa el botón de exportar y elige «JSON (para reimportar)». Desde el mismo menú salen también CSV, para una hoja de cálculo, y un fichero de texto para importar en Anki.

¿Puedo escribir un test a mano en este formato?

Sí. Parte del ejemplo de esta página, cambia preguntas y respuestas con cualquier editor de texto y guárdalo con la extensión .json. Si al abrirlo no va, revisa primero que cada correct_answer esté escrito exactamente igual que su opción.

¿Puede generarlo otra IA o un programa mío?

Sí, es JSON normal. Si lo genera un programa, sigue los campos de esta página y el fichero se abrirá como uno exportado. Si lo genera un chat de IA, es más cómodo pegar su respuesta en «Pegar texto», que perdona los descuidos típicos.

¿Abre ficheros de Quizlet, Kahoot o un CSV?

No. CanQuiz solo importa su propio JSON. Exporta a JSON, CSV y Anki, pero no importa desde esas herramientas ni exporta a Quizlet o Kahoot. Si tienes las preguntas en otro sitio, puedes pegarlas como texto y dejar que la IA monte el test.

¿Cuántas preguntas caben en un fichero?

Al abrirlo, CanQuiz no fija un número máximo de preguntas: lo que tiene tope es el texto de cada campo, de dos mil caracteres en el enunciado a veinte mil en la explicación. Un test largo sigue pesando poco, unos pocos kilobytes de texto.

¿Te han pasado un .json?

Suéltalo en CanQuiz y haz el test ahora, en tu navegador y sin crear cuenta.