UpdateQuizRequest

A request or response body; the type column links to the schemas it refers to.

UpdateQuizRequest

FieldTypeRequiredDescription
slugstringno

1–100 characters · matches ^[a-z0-9]+(-[a-z0-9]+)*$

namestringno

1–200 characters

descriptionstring | nullno

Send null to clear the description.

at most 2000 characters

footer_markdownstring | nullno

Send null or empty to clear the closing note.

at most 50000 characters

delivery_kindstringno

live: takeable only while one of the quiz's scheduled sittings (scheduled_quizzes) is open — the same quiz can be scheduled year after year. async: self-scheduled, takeable whenever the quiz is published; sittings do not apply.

one of "live" | "async"

time_limit_secondsinteger | nullno

Send null to remove the time limit.

selection_modestringno

fixed: every question in authored order, the same for everyone. shuffle: every question, order and options shuffled per attempt. random_draw: each bank link contributes draw_count randomly chosen questions (all when null), shuffled.

one of "fixed" | "shuffle" | "random_draw"

pass_percentagenumberno

Score required to pass, as a percentage of the questions presented.

minimum 0 · maximum 100

max_attemptsinteger | nullno

Send null for unlimited attempts.

show_results_immediatelybooleanno—
show_correct_answersbooleanno—
jsonExample
{
  "slug": "string",
  "name": "string",
  "description": "string",
  "footer_markdown": "**Before you submit:** review every answer. Submission cannot be undone.",
  "delivery_kind": "live",
  "time_limit_seconds": 1200,
  "selection_mode": "fixed",
  "pass_percentage": 80,
  "max_attempts": 3,
  "show_results_immediately": true,
  "show_correct_answers": true
}