Quiz

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

Quiz

FieldTypeRequiredDescription
idstring (uuid)yes—
owner_organization_idstring (uuid)yes—
owner_department_idstring (uuid) | nullyes

Null when the organization itself owns the quiz.

slugstringyes—
namestringyes—
descriptionstring | nullyes—
footer_markdownstring | nullyes

Markdown rendered beneath the last question of a sitting, above the submit button; null shows nothing.

statusstringyes

Draft quizzes are invisible to assignees; published ones are takeable.

one of "draft" | "published"

delivery_kindstringyes

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 | nullyes—
selection_modestringyes

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_percentagenumberyes—
max_attemptsinteger | nullyes

Null means unlimited attempts.

show_results_immediatelybooleanyes

Whether a taker sees score and pass/fail right after submitting.

show_correct_answersbooleanyes

Whether answer review (your answer vs. correct) is ever shown to takers.

results_released_atstring (date-time) | nullyes

Manual release stamp for held-back results. An attempt's results are visible to its taker when show_results_immediately, once the sitting it was sat in has closed, or once this is set.

archived_atstring (date-time) | nullyes

When set, the record is retired; it stays readable but should not grow.

created_atstring (date-time)yes—
jsonExample
{
  "id": "1b671a64-40d5-491e-99b0-da01ff1f3341",
  "owner_organization_id": "1b671a64-40d5-491e-99b0-da01ff1f3341",
  "owner_department_id": "1b671a64-40d5-491e-99b0-da01ff1f3341",
  "slug": "string",
  "name": "string",
  "description": "string",
  "footer_markdown": "string",
  "status": "draft",
  "delivery_kind": "live",
  "time_limit_seconds": 0,
  "selection_mode": "fixed",
  "pass_percentage": 0,
  "max_attempts": 0,
  "show_results_immediately": true,
  "show_correct_answers": true,
  "results_released_at": "2026-01-01T00:00:00.000Z",
  "archived_at": "2026-01-01T00:00:00.000Z",
  "created_at": "2026-01-01T00:00:00.000Z"
}