Update test library settings and publish

Updates a test library's settings — shuffle behavior, question count rules, skills, timing, and category — and publishes it once it has questions.

Publishing works automatically, based on question count: a library with no questions is always saved as DRAFT, and a library with at least one question is always saved as PUBLISHED. This happens regardless of the status value you send — you don't need to set it explicitly once questions have been added.

Other behavior to be aware of:

  • The test library must exist and belong to your organization.
  • Switching to question-level timing recalculates each question's duration and the overall time limit accordingly. Switching to test-level timing removes per-question time limits (except for question types that require one, such as audio/video answers).
  • skills cannot be submitted as an empty array. Removing a skill that's still used by an existing question is also rejected.
  • If testCategory is supplied, every id must reference an existing category — use List test categories to get valid options.
  • Any assessments already using this library have their time limits kept in sync automatically.
  • This endpoint returns no response body on success — fetch the library afterward to see the final state.
Recent Requests
Log in to see full request history
TimeStatusUser Agent
Retrieving recent requests…
LoadingLoading…
Path Params
string
required
^[0-9a-fA-F]{24}$

The test library's unique identifier.

Body Params

Test library settings to apply. Send the full set of fields you want retained — this replaces the library's settings rather than merging a partial update.

Fields you can set when creating or updating a test library.

string
required
length between 1 and 100

The library's name, 1–100 characters.

string
length between 0 and 4000

A short overview of the test, 0–4000 characters.

string
length between 0 and 10000

A longer description of the test, 0–10000 characters.

string
length between 0 and 10000

Instructions shown to candidates before taking the test.

boolean
Defaults to false

Whether the instructions above override the default instructions.

boolean
Defaults to false
string
length between 0 and 4000

Who this test is relevant for.

skills
array of objects
length ≥ 1

Skills covered by this test. At least one required. A skill still linked to an existing question cannot be removed.

skills
jobRoles
array of numbers
length between 1 and 50

Job role codes this test is associated with.

jobRoles
string

The test library type this test belongs to. Get valid values from List test library types.

testCategory
array of strings

Category identifiers for this test. Get valid values from List test categories.

testCategory
string
enum
Defaults to English Speaking

The language audience this test targets.

string
enum

Overall difficulty level of the test.

Allowed:
integer
≥ 0
Defaults to 20

Number of questions candidates will be given.

number
Defaults to 1200

Total time allowed for the test, in seconds. Ignored when timing is set per-question.

number
≥ 0

Additional time granted, in seconds.

string
enum

Publication status. On update, this is always recalculated from the library's current question count and any value you send is not used.

Allowed:
codingLanguages
array of strings

Coding languages available for coding questions in this library.

codingLanguages
boolean
Defaults to false
string
Defaults to English

Primary language of the test content.

boolean
Defaults to true

Whether question order is shuffled for each candidate.

boolean
Defaults to true

Whether answer option order is shuffled for each candidate.

string
enum

Whether the time limit applies to the overall test or to each question individually.

Allowed:
string
enum
Defaults to ALL

How the number of questions presented to a candidate is determined.

Allowed:
boolean
Defaults to false

Whether this test is used for 360-degree feedback reviews.

questionnaireIds
array of strings

Identifiers of the questions belonging to this library, in the order they should be presented.

questionnaireIds
Responses
204

Settings updated successfully. There is no response body — the resulting status reflects the library's question count as described above.

Language
Credentials
Bearer
JWT
LoadingLoading…
Response
Click Try It! to start a request and see the response here! Or choose an example:
application/json