POST tests

Creates a new test definition.

Resource URL

https://www.drillster.com/api/2.1.1/tests

Parameters

Field Type Description
drills
required, repeatable
String The IDs of the drills that are referenced in the test.

Example value: 7OuHq7RcQOCsnGWR58TnBw
name
required
String The name of the test.
instructions
optional
String An optional instruction shown to testees before the test starts.
disclosures
optional
String array A set of test result disclosure options. These options determine to what extent the end user is made privy to the test results.

Valid options are:

  • OVERALL_SCORE
  • COMPONENT_SCORES
  • CORRECTIONS
  • FEEDBACK
Please note: not supplying any disclosure options will cause no options to be selected!
direction
optional
String constant Valid values are: PRODUCTIVE, RECEPTIVE, BIDIRECTIONAL.
style
optional
String constant Valid values are: MULTIPLE_CHOICE and OPEN_ENDED.
questions
optional, repeatable
Integer The number of questions in the test, either for the entire test, or per drill.
columns
optional, repeatable
String
tags
optional, repeatable
String
weights
optional, repeatable
Integer An optional array of weights (between 0 and 100) for weighting the score for each underlying drill.
adaptive
optional
Boolean Whether this will be an adaptive test. The default value is FALSE.
timeLimit
optional
Duration An optional time limit within which the test needs to be completed.
startDrill
optional
Integer The start level for adaptive tests. This is an optional 1-based integer. If no start level is given, the adaptive test will start in the middle.
allowQuestionNavigation
optional
Boolean Whether to allow question navigation. Note that for adaptive tests, question navigation is never allowed. Also, for tests containing questions with individual time limits, question navigation is also not allowed.
allowUnansweredQuestions
optional
Boolean Whether to allow a navigable test to be submitted with unanswered questions. Please note that by definition it is possible for tests with a time limit to have unanswered questions.
testScoreTransformers
optional
String array The ID of one or more test score transformers can be configured that transform the standard test score (0-100) into some other value. A list of all possible test score transformer IDs can be retrieved through the GET /api/2.1.1/test-score-transformers endpoint.

Example value: one-to-ten

Response

A 2.1.1 Test object, with details about the test that was just created.

Error responses

The following error situations are possible:

ID Response code Description
drills_missing 400 (Bad request) No drills specified.
drill_not_released 400 (Bad request) Not all of the specified drills have been released.
empty_drill 400 (Bad request) The specified drills do not have any entries.
invalid_disclosure 400 (Bad request) Invalid disclosure specified.
invalid_direction 400 (Bad request) Invalid direction specified.
invalid_nr_of_questions 400 (Bad request) The given number of questions is not valid. Possible causes are:

  • No number of questions specified;
  • Exactly one number of questions can be specified for an adaptive test;
  • Not all drills have sufficient questions available for this test setup;
  • The specified number of questions is invalid, or exceeds the number of available questions;
  • The number of drills does not match the number of question counts.
inaccessible_drill 400 (Bad request) Caller has no access to reference drill.
insufficient_questions 400 (Bad request) Insufficient questions available that meet the specified entry tag filters.
invalid_tags 400 (Bad request) The specified drill does not contain any of the specified entry tags.
invalid_nr_of_weights 400 (Bad request) The number of specified drills does not match the number of given weights.
invalid_weight 400 (Bad request) The specified weight is invalid. Weights must be 0-100.
invalid_style 400 (Bad request) The specified style is invalid.
invalid_time_limit 400 (Bad request) The specified time limit is invalid..
invalid_allow_question_navigation 400 (Bad request) Question navigation is not allowed for adaptive tests or for tests that have answer time limits.
missing_unknown_columns 400 (Bad request) No unknown column names are specified, while the drills have more than one unknown columns.
unable_to_set_time_limit 400 (Bad request) A time limit cannot be configured for this test, since one or more drills have configured answer time limits.
unknown_test_score_transformer 400 (Bad request) The specified transformer is unknown.
unknown_start_drill 400 (Bad request) The specified start drill is not part of the test.
unknown_column_not_found 400 (Bad request) The specified drills do not have an unknown column with the specified name.
unknown_drill 400 (Bad request) Specified drill is unknown.