Concept guide
Questionnaire JSON format
Import one question object, an array of questions, or an object containing an exercises array. Files must contain UTF-8 JSON and be no larger than 1 MB.
Recommended structure
{
"exercises": [
{
"id": "opening-choice",
"type": "multiple_choice",
"prompt": "Where should we begin?",
"options": ["Purpose", "People", "Plan"],
"anonymous": false,
"allow_revision": true
}
]
}
Fields used by every question
| Field | Expected value |
|---|---|
id | Unique lowercase kebab-case text, such as opening-choice. |
type | multiple_choice, multi_select, likert, free_text, or word_cloud. |
prompt | The question shown to participants. |
anonymous | true or false. |
allow_revision | true or false. |
Type-specific fields
- Multiple choice:
options. - Multi-select:
options,min_selections, andmax_selections. - Likert:
min,max,low_label, andhigh_label. - Free text:
max_lengthand optionalplaceholder. - Word cloud:
max_wordsandmax_word_length.
Option values may be plain strings. learnsai generates stable option IDs automatically.
Questionnaire block
A questionnaire shows several A–D multiple-choice questions on one screen with a single Submit. Answers are anonymous — no participant identity is stored — participants may leave some blank, and each question shows its own aggregate chart. In the module editor choose Add content → Questionnaire; the create form takes structured questions or this JSON in its “paste as JSON” box.
{
"title": "Quick pulse check",
"intro": "Answer any that apply.",
"questions": [
{
"prompt": "Where are you with AI adoption?",
"options": ["Not exploring", "Piloting", "Scaling", "Embedded"],
"trainer_note": "Read the room before revealing."
},
{
"prompt": "What is the main barrier?",
"options": ["Skills", "Budget", "Trust", "Time"]
}
]
}
- Provide at least two questions. Each is a
multiple_choicequestion — four options (A–D) is the usual shape. - Every child is forced
anonymous: trueandallow_revision: true; a questionnaire with an identified question is rejected. - Questionnaires are unscored, so there is no correct-answer field. An
answer_idis ignored. trainer_note(optional) is shown to you in the console and presenter and is never shown to participants.
Import workflow
- Open the course editor and choose an insertion position.
- Select Import Q&A JSON.
- Upload a
.jsonfile or paste the JSON text. - Select Validate and insert.
- Drag the imported questions into the required order.