Help center

Importing content

CSV and JSON formats, header aliases, and safe apply for question import.

Use Content › Import to upload a question bank. The ingest engine diffs against what you already have: new, modified, unchanged, or removed (soft-deprecate when you apply a full replace).

Supported files

  • CSV with a header row
  • JSON array of question objects (same fields as CSV columns)

Domain codes in the file must match domains that already exist on the tenant.

Header aliases (CSV)

Any of these names work (spaces, underscores, and case are ignored):

Field Accepted headers
External id (optional) id, externalId, questionId
Domain code (required) domain, domainCode, pillar
Type (required) type, questionType
Cognitive tier cognitiveTier, tier
Scenario scenario, miniScenario
Prompt (required) prompt, question
Options options
Correct keys correctAnswer, correctKeys, answer
Explanation explanation, standardRationale, rationale
Distractor rationales distractorRationales
Exam trap note examTrapNote, trapNote

Options DSL

Prefer a semicolon list of key:label pairs:

a:Relaxed display;b:Threat display;c:Neutral

Or a JSON array: [{"key":"a","label":"Relaxed display"},...].

Correct keys

Comma-separated option keys, for example a or a,c.

Distractor rationales

Semicolon key:text pairs, or a JSON object. Keys should match wrong options you want to explain.

Question types

Use the same type strings as the editor: multiple_choice, multi_select, true_false, sequencing, hotspot, build_list, matching, numeric_entry, short_answer, and case-set variants when configured.

Apply safely

  1. Upload and review the preview counts.
  2. Confirm domain codes match.
  3. Apply. Absent questions in a full-file apply are soft-deprecated, not hard-deleted.

Need a walkthrough? hello@korlea.com.