Skip to content

Question Info

Source: infoQuestion.json

Info files for questions.

Properties

  • uuid (string, required): Unique identifier (UUID v4). Must match pattern: ^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$.
  • type (string, required): Type of the question. Must be one of: ["Calculation", "MultipleChoice", "Checkbox", "File", "MultipleTrueFalse", "v3"].
  • title (string, required): The title of the question (e.g., 'Addition of vectors in Cartesian coordinates').
  • topic (string, required): The category of question (e.g., 'Vectors', 'Energy').
  • tags (array): Extra tags associated with the question (e.g., 'Exam Only', 'Broken').
    • Items (string): A tag associated with a question.
  • clientFiles (array): The list of question files accessible by the client (defaults to ["client.js"]).
    • Items (string): A single file accessible by the client.
  • clientTemplates (array): List of client-accessible templates to render server-side.
    • Items (string): A single template file accessible by the client.
  • template (string): The QID of a question that serves at the template for this question.
  • gradingMethod (string): The grading method used for this question. Must be one of: ["Internal", "External", "Manual"].
  • singleVariant (boolean): Whether the question is not randomized and only generates a single variant. Default: false.
  • showCorrectAnswer (boolean): Whether to show the correct answer panel. Default: true.
  • partialCredit (boolean): Whether the question will give partial points for fractional scores (defaults to "false" for v2 questions and "true" for v3.).
  • options (object): Options that define how the question will work, specific to the individual question type. Cannot contain additional properties.
    • Additional properties
  • externalGradingOptions (object): Options for externally graded questions. Cannot contain additional properties.
    • enabled (boolean): Whether the external grader is currently enabled. Useful if it is breaking, for example.
    • image (string, required): The Docker image that will be used to grade this question. Should be specified as Dockerhub image.
    • entrypoint: Program or command to run as the entrypoint to your grader. If not provided, the default entrypoint for the image will be used.
      • Any of
        • string
        • array
          • Items (string)
    • serverFilesCourse (array): The list of files or directories that will be copied from course/externalGradingFiles/ to /grade/shared/.
      • Items (string): A single file or directory that will be copied to the external grader.
    • timeout (integer): The number of seconds after which the grading job will timeout.
    • enableNetworking (boolean): Whether the grading containers should have network access. Access is disabled by default. Default: false.
    • environment (object): Environment variables to set inside the grading container.
      • Additional properties (string)
  • dependencies (object): The question's client-side dependencies. Cannot contain additional properties.
    • nodeModulesStyles (array): The styles required by this question from /node_modules.
      • Items (string): A .css file located in /node_modules.
    • nodeModulesScripts (array): The scripts required by this question from /node_modules.
      • Items (string): A .js file located in /node_modules.
    • clientFilesCourseStyles (array): The styles required by this question from clientFilesCourse.
      • Items (string): A .css file located in clientFilesCourse.
    • clientFilesCourseScripts (array): The scripts required by this question from clientFilesCourse.
      • Items (string): A .js file located in clientFilesCourse.
    • clientFilesQuestionStyles (array): The styles required by this question from clientFilesQuestion.
      • Items (string): A .css file located in the clientFilesQuestion.
    • clientFilesQuestionScripts (array): The scripts required by this question from clientFilesQuestion.
      • Items (string): A .js file located in the clientFilesQuestion.
  • workspaceOptions (object): Options for workspace questions. Cannot contain additional properties.
    • image (string, required): The Docker image that will be used to serve this question. Should be specified as Dockerhub image.
    • port (integer, required): The port number used in the Docker image.
    • home (string, required): The home directory of the workspace container.
    • args: Command line arguments to pass to the Docker container.
      • Any of
        • string
        • array
          • Items (string)
    • rewriteUrl (boolean): If true, the URL will be rewritten such that the workspace container will see all requests as originating from /.
    • gradedFiles (array): The list of files or directories that will be copied out of the workspace container when saving a submission.
      • Items (string): A single file or directory that will be copied out of the workspace container when saving a submission.
    • enableNetworking (boolean): Whether the workspace should have network access. Access is disabled by default. Default: false.
    • environment (object): Environment variables to set inside the workspace container.
      • Additional properties (string)
  • sharingSets (array): The list of sharing sets that this question belongs to.
    • Items (string): The name of a sharing set.
  • sharePublicly (boolean): Whether this question is publicly shared.
  • shareSourcePublicly (boolean): Whether this questions's source code is publicly shared.

Definitions

  • CommentJsonSchema: Arbitrary comment for reference purposes.
    • Any of
      • string
      • array
      • object: Cannot contain additional properties.
        • Additional properties