Quizzes

This endpoint provides comprehensive quiz management functionality.

Overview

The Quizzes API allows you to create, update, and manage assessment quizzes within the system. Each quiz consists of a collection of questions that can be used to evaluate candidates’ knowledge, skills, and abilities in specific domains.

Quiz Lifecycle

  1. Creation: Administrators create quizzes and define their questions
  2. Assignment: Quizzes are assigned to sessions for specific purposes
  3. Distribution: Sessions are shared with candidates for completion
  4. Evaluation: Results are collected and analyzed

Key Features

Endpoints


get/api/v3/quiz/quizzes

Return a paginated list of quiz/quizzes

Input Schema

object
page?:
object
The page number, default to 1
number?: integer
The number of items per page, default to 1000
size?: integer
The sort order, comma separated list of fields. See sorting section for more details
sort?: string
Set to true to return the total number of items in the collection
count?: boolean
filter?:
object
id?: unknown
enabled?: unknown
name?: unknown
instruction_md?: unknown
topic?: unknown
organizational_unit?: unknown
pass_score?: unknown
max_score?: unknown
has_instance?: unknown
duration?: unknown
id?: unknown
name__match?: unknown
enabled?: unknown
with_instance_counter?: unknown
The related resources to include in the response. Allowed resources are:
- `questions`
included?:
array
Elements: string
The fields to include in the response.
The key is the resource type and the value is an array of fields.
fields?:
dictionary
Values: array

Typescript

type InputSchema = {
  page?: {
    // The page number, default to 1
    number?: number;
    // The number of items per page, default to 1000
    size?: number;
  };
  // The sort order, comma separated list of fields. See sorting section for more details
  sort?: string;
  // Set to true to return the total number of items in the collection
  count?: boolean;
  filter?: {
    id?: any;
    enabled?: any;
    name?: any;
    instruction_md?: any;
    topic?: any;
    organizational_unit?: any;
    pass_score?: any;
    max_score?: any;
    has_instance?: any;
    duration?: any;
    id?: any;
    name__match?: any;
    enabled?: any;
    with_instance_counter?: any;
  };
  // The related resources to include in the response. Allowed resources are:
  // - `questions`
  included?: Array<string>;
  // The fields to include in the response.
  // The key is the resource type and the value is an array of fields.
  fields?: { [key: string]: Array<any> };
};

Output Schema

object
data:
array
Elements:
object
type: string
id?: string
attributes?:
object
id?: integer
enabled?: boolean
name?: string
instruction_md?: string
topic?: string
organizational_unit?: string
pass_score?: number
max_score?: number
has_instance?: boolean
duration?: integer
relationships?: open struct
included?:
array
Elements: open struct

Typescript

type OutputSchema = {
  data: Array<{
    type: string;
    id?: string;
    attributes?: {
      id?: number;
      enabled?: boolean;
      name?: string;
      instruction_md?: string;
      topic?: string;
      organizational_unit?: string;
      pass_score?: number;
      max_score?: number;
      has_instance?: boolean;
      duration?: number;
    };
    relationships?: Record<string, any>;
  }>;
  included?: Array<Record<string, any>>;
};


post/api/v3/quiz/quizzes

Create a new quiz/quizzes

Input Schema

object
data:
object
type: string
attributes:
object
id?: integer
enabled?: boolean
name?: string
instruction_md?: string
topic?: string
organizational_unit?: string
pass_score?: number
max_score?: number
has_instance?: boolean
duration?: integer

Typescript

type InputSchema = {
  data: {
    type: string;
    attributes: {
      id?: number;
      enabled?: boolean;
      name?: string;
      instruction_md?: string;
      topic?: string;
      organizational_unit?: string;
      pass_score?: number;
      max_score?: number;
      has_instance?: boolean;
      duration?: number;
    };
  };
};


post/api/v3/quiz/quizzes/:id/duplicate

Create a duplicate copy of an existing quiz.

This endpoint allows you to create an exact copy of an existing quiz, including all its questions and configuration settings. This is useful when you need to create variations of a quiz or when you want to use an existing quiz as a template for a new one.

Behavior

Response

Returns the newly created quiz record with its questions included in the response. The response has a 201 Created status code.

Input Schema

object
id: integer

Typescript

type InputSchema = { id: number };


delete/api/v3/quiz/quizzes/:resource_id

Delete the quiz/quizzes

Input Schema

object
resource_id: integer

Typescript

type InputSchema = { resource_id: number };


get/api/v3/quiz/quizzes/:resource_id

Show a specific quiz/quizzes

Input Schema

object
resource_id: integer
included?:
array
Elements: string
fields?:
dictionary
Values: array

Typescript

type InputSchema = {
  resource_id: number;
  included?: Array<string>;
  fields?: { [key: string]: Array<any> };
};

Output Schema

object
data:
object
type: string
id?: string
attributes?:
object
id?: integer
enabled?: boolean
name?: string
instruction_md?: string
topic?: string
organizational_unit?: string
pass_score?: number
max_score?: number
has_instance?: boolean
duration?: integer
relationships?: open struct
included?:
array
Elements: open struct

Typescript

type OutputSchema = {
  data: {
    type: string;
    id?: string;
    attributes?: {
      id?: number;
      enabled?: boolean;
      name?: string;
      instruction_md?: string;
      topic?: string;
      organizational_unit?: string;
      pass_score?: number;
      max_score?: number;
      has_instance?: boolean;
      duration?: number;
    };
    relationships?: Record<string, any>;
  };
  included?: Array<Record<string, any>>;
};


patch/api/v3/quiz/quizzes/:resource_id

Update a quiz/quizzes

Input Schema

object
resource_id: integer
data:
object
type: string
attributes:
object
id?: integer
enabled?: boolean
name?: string
instruction_md?: string
topic?: string
organizational_unit?: string
pass_score?: number
max_score?: number
duration?: integer

Typescript

type InputSchema = {
  resource_id: number;
  data: {
    type: string;
    attributes: {
      id?: number;
      enabled?: boolean;
      name?: string;
      instruction_md?: string;
      topic?: string;
      organizational_unit?: string;
      pass_score?: number;
      max_score?: number;
      duration?: number;
    };
  };
};